;ELC   
;;; compiled by rms@mole.gnu.ai.mit.edu on Fri Jan 26 01:25:02 1996
;;; from file /home/fsf/rms/e19/lisp/cookie1.el
;;; emacs version 19.30.90.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 "`cookie1.el' was compiled for Emacs 19.29 or later"))


(random t)
#@49 Delimiter used to separate cookie file entries.
(defconst cookie-delimiter "\n%%\n\\| " (#$ . 483))
#@55 Cache of cookie files that have already been snarfed.
(defvar cookie-cache (make-vector 511 0) (#$ . 589))
#@130 Return a random phrase from PHRASE-FILE.  When the phrase file
is read in, display STARTMSG at beginning of load, ENDMSG at end.
(defalias 'cookie #[(phrase-file startmsg endmsg) "À	\n#Å\f!ˆ\fÆH)‡" [cookie-snarf phrase-file startmsg endmsg cookie-vector shuffle-vector 1] 4 (#$ . 703)])
#@144 Insert random phrases from PHRASE-FILE; COUNT of them.  When the phrase file
is read in, display STARTMSG at beginning of load, ENDMSG at end.
(defalias 'cookie-insert #[(phrase-file &optional count startmsg endmsg) "À	\n#Å\f!ˆ`ÇcˆÈ\fGÉZ\n† É^\f\"ˆÇcˆË`Ì#*‡" [cookie-snarf phrase-file startmsg endmsg cookie-vector shuffle-vector start 10 cookie1 1 count fill-region-as-paragraph nil] 4 (#$ . 999)])
#@36 Inserts a cookie phrase ARG times.
(defalias 'cookie1 #[(arg cookie-vec) "ÁUƒ Â‡HcˆÄcˆÅS\"‡" [arg 0 t cookie-vec " " cookie1] 3 (#$ . 1413)])
#@188 Reads in the PHRASE-FILE, returns it as a vector of strings.
Emit STARTMSG and ENDMSG before and after.  Caches the result; second
and subsequent calls on the same file won't go to disk.
(defalias 'cookie-snarf #[(phrase-file startmsg endmsg) "À	\n\"‰ƒ KÄÅ	!8š„ Æ	ÇP!ƒ Èƒ' J‚‚ É	\n\"ÊË\f\"ˆŠÍÎ!È‰qˆÄÅ	!8MˆÑÒ	!!ˆÓ!ˆÕÈwˆm„o `Ó!ˆ`S{B)‚Q ×!ˆÊË\"ˆÙÚ\"L+)‡" [intern-soft phrase-file cookie-cache sym 5 file-attributes yes-or-no-p " has changed.  Read new contents? " nil intern message "%s" startmsg generate-new-buffer "*cookie*" result buf insert-file-contents expand-file-name re-search-forward cookie-delimiter " 	\n\f" beg kill-buffer endmsg apply vector] 5 (#$ . 1568)])
#@198 Prompt with PROMPT and read with completion among cookies in PHRASE-FILE.
STARTMSG and ENDMSG are passed along to `cookie-snarf'.
Optional fifth arg REQUIRE-MATCH non-nil forces a matching cookie.
(defalias 'read-cookie #[(prompt phrase-file startmsg endmsg &optional require-match) "À	\n\"„ Ã	\f#ˆÆÈ	\n\"‰	ÊN†K Ë\fÃ	\f#‰GS‰ÏVƒC HC\fB\f‚* Ð	Ê\f#+)ËË‰&‡" [intern-soft phrase-file cookie-cache cookie-snarf startmsg endmsg completing-read prompt intern sym completion-alist nil alist vec i 0 put require-match] 8 (#$ . 2281)])
#@75 Randomly permute the elements of VECTOR (all permutations equally likely)
(defalias 'shuffle-vector #[(vector) "ÀÁ‰\nG‰Wƒ5 ÇZ!\\\nH\n\nHIˆ\n\fIˆT‰‚ ,\n‡" [0 nil vector len temp j i random] 5 (#$ . 2838)])
(provide (quote cookie1))
