;ELC   
;;; compiled by kwzh@nutrimat.gnu.ai.mit.edu on Thu Jun 15 18:25:07 1995
;;; from file /gd/gnu/emacs/19.0/lisp/cl-seq.el
;;; emacs version 19.28.94.3.
;;; 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.28.90")))
    (error "`cl-seq.el' was compiled for Emacs 19.29 or later"))


(byte-code "À	>„\n ÂÃ!ˆÀ‡" [cl-19 features error "Tried to load `cl-seq' before `cl'!"] 2)
(defalias 'cl-push '(macro . #[(x place) "À	Â	EE‡" [setq place cons x] 5]))
(defalias 'cl-pop '(macro . #[(place) "ÀÁ\nÃ\nÄ\nDEED‡" [car prog1 place setq cdr] 7]))
(defalias 'cl-parsing-keywords '(macro . #[(kwords other-keys &rest body) "ÀÁÂ\"ÄÆ=?…% ÇÈÉÊËÌÍÎÁÏÄ\"\"DEÐÑFÒFEC\"BB‡" [let* mapcar #[(x) ":ƒ\n @‚ ÂÃÄÅ	DÆEDD	È=ƒ* ÉÊËEÌF	Í=ƒ< ÉÊÎEÌFÏÐÑÒ	!ÓÔO\"!:ƒV ÕA@E‚X *D‡" [x var car cdr memq quote cl-keys mem :test-not and setq cl-test t :if-not cl-if intern format "cl-%s" symbol-name 1 nil or] 6] kwords append other-keys t let ((cl-keys-temp cl-keys)) while cl-keys-temp or memq (car cl-keys-temp) quote #[(x) ":ƒ @‡‡" [x] 1] (car (cdr (memq (quote :allow-other-keys) cl-keys))) (error "Bad keyword argument %s" (car cl-keys-temp)) (setq cl-keys-temp (cdr (cdr cl-keys-temp))) body] 16]))
(byte-code "ÀÁÂÃ#ˆÀÁÄÅ#‡" [put cl-parsing-keywords lisp-indent-function 2 edebug-form-spec (sexp sexp &rest form)] 4)
(defalias 'cl-check-key '(macro . #[(x) "ÀÁÂÁEF‡" [if cl-key funcall x] 5]))
(defalias 'cl-check-test-nokey '(macro . #[(item x) "ÀÁÂÃÄÁFDÇEDÈÂÃÄÈEDÉEDÊËÌDÍEÂEFDF‡" [cond cl-test eq not funcall item x cl-test-not cl-if cl-if-not t if numberp equal] 10]))
(defalias 'cl-check-test '(macro . #[(item x) "À	ÂDE‡" [cl-check-test-nokey item cl-check-key x] 4]))
(defalias 'cl-check-match '(macro . #[(x y) "À	DÀ\nDÃÄÅÆÇÄ	\nFDÈEÃÉ	DÊ	\nEÅ	\nEFF‡" [cl-check-key x y if cl-test eq not funcall cl-test-not numberp equal] 9]))
(byte-code "ÀÁÂÃ#ˆÀÄÂÃ#ˆÀÅÂÃ#ˆÀÆÂÃ#ˆÇBÉBÊBËBÌBÀ‡" [put cl-check-key edebug-form-spec edebug-forms cl-check-test cl-check-test-nokey cl-check-match cl-test current-load-list cl-test-not cl-if cl-if-not cl-key] 4)
#@110 Reduce two-argument FUNCTION across SEQUENCE.
Keywords supported:  :start :end :from-end :initial-value :key
(defalias 'reduce #[(cl-func cl-seq &rest cl-keys) "À	>A@Ã	>A@† ÄÆ	>A@È	>A@	Ê	>A@	‰\fƒM \f@Í>„C Î	>A@„C ÏÐ\f@\"ˆ\fAA‰\f„, )<„[ ÒÓ\"Ô#\nƒm ŸÈ	>ƒx 	‚œ ƒ™ ƒ� ‰A@!‚œ ‰A@‚œ  \nƒÊ ƒò ƒ» ‰A@!‚Â ‰A@\"‚¢ ƒò ƒå ‰A@!‚ì ‰A@\"‚Ê .‡" [:from-end cl-keys cl-from-end :start 0 cl-start :end cl-end :initial-value cl-initial-value :key cl-key cl-keys-temp (:from-end :start :end :initial-value :key) :allow-other-keys error "Bad keyword argument %s" cl-seq append nil subseq cl-func cl-accum] 6 (#$ . 2284)])
#@70 Fill the elements of SEQ with ITEM.
Keywords supported:  :start :end
(defalias 'fill #[(seq item &rest cl-keys) "À	>A@†	 ÂÄ	>A@	‰ƒ8 @Ç>„. È	>A@„. ÉÊ@\"ˆAA‰„ )<ƒt ›ƒM Z‚N Ì‰ƒp S‰ÂYƒp  ˆA‰„V *‚¨ „| GÂUƒ” GUƒ” Ð\"ˆ‚¨ Wƒ¨ IˆT‰‚• *‡" [:start cl-keys 0 cl-start :end cl-end cl-keys-temp (:start :end) :allow-other-keys error "Bad keyword argument %s" seq 8000000 n p item fillarray] 4 (#$ . 2982)])
#@153 Replace the elements of SEQ1 with the elements of SEQ2.
SEQ1 is destructively modified, then returned.
Keywords supported:  :start1 :end1 :start2 :end2
(defalias 'replace #[(cl-seq1 cl-seq2 &rest cl-keys) "À	>A@†	 ÂÄ	>A@Æ	>A@† ÂÈ	>A@		‰\nƒJ \n@Ë>„@ Ì	>A@„@ ÍÎ\n@\"ˆ\nAA‰\n„) )=ƒž Xƒž U„˜G†l Z	†u Z^S‰ÂYƒš Ó\\\\œ#ˆ‚{ *‚˜<ƒ;›ƒ² Z‚³ Ô<ƒ›	ƒÑ 	Z‚Ò Ô^ƒ ƒ S‰ÂYƒ @ ˆAA‚× *‚7	†\fG\\^	ƒ7	Wƒ7H ˆAT‚*‚˜†BG	†KGZ\\^<ƒ|›Wƒx@IˆAT‰‚_)‚˜Wƒ˜HIˆTT‰‚},‡" [:start1 cl-keys 0 cl-start1 :end1 cl-end1 :start2 cl-start2 :end2 cl-end2 cl-keys-temp (:start1 :end1 :start2 :end2) :allow-other-keys error "Bad keyword argument %s" cl-seq1 cl-seq2 cl-len cl-n cl-set-elt 4000000 cl-n1 cl-p1 cl-p2] 7 (#$ . 3442)])
#@221 Remove all occurrences of ITEM in SEQ.
This is a non-destructive function; it makes a copy of SEQ if necessary
to avoid corrupting the original SEQ.
Keywords supported:  :test :test-not :key :count :start :end :from-end
(defalias 'remove* #[(cl-item cl-seq &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< ÄÌ	>A@Î	>A@Ð	>A@†U ÑÓ	>A@	‰ƒ† @Ö>„| ×	>A@„| ØÙ@\"ˆAA‰„e )†� Ú‰ÑXƒš ‚¨<ƒ¬ ƒÜWƒÝ%‰ƒþ àáâã\"âƒÕ ÓTD‚Ù ÐD	\"$$<ƒé $‚ú ;ƒö $°‚ú å$!)‚ )‚¨†\nÚZÑUƒ®ƒ®ÑVƒ®\nƒA\nƒ7@!‚:@\"?=‚’	ƒa	ƒV@!‚Y@!?=‚’§ƒ~ƒw@!‚z@š‚’ƒŽ@!‚‘@=ƒ®SA‰ƒ®S‰ÑV„ÑVƒ¦ÑVƒ¦ÑVƒË›‚ÓSA&&ƒaÑVƒa\nƒ \nƒö&@!‚ù&@\"?=‚Q	ƒ 	ƒ&@!‚&@!?=‚Q§ƒ=ƒ6&@!‚9&@š‚QƒM&@!‚P&@=„a&A&S‚Õ&ƒ ÑVƒ ç&\"èUƒ€&A‚œ&A…œàáé&A!ÐÑÓSÌS	&\n¤‚¢)‚¨.	‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not :count cl-count :from-end cl-from-end :start 0 cl-start :end cl-end cl-keys-temp (:test :test-not :key :if :if-not :count :from-end :start :end) :allow-other-keys error "Bad keyword argument %s" 8000000 cl-seq 4000000 cl-position cl-item cl-i apply delete* append nil cl-res vconcat cl-p ldiff 1 copy-sequence] 13 (#$ . 4330)])
#@212 Remove all items satisfying PREDICATE in SEQ.
This is a non-destructive function; it makes a copy of SEQ if necessary
to avoid corrupting the original SEQ.
Keywords supported:  :key :count :start :end :from-end
(defalias 'remove-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply remove* nil cl-list :if cl-pred cl-keys] 7 (#$ . 5722)])
#@216 Remove all items not satisfying PREDICATE in SEQ.
This is a non-destructive function; it makes a copy of SEQ if necessary
to avoid corrupting the original SEQ.
Keywords supported:  :key :count :start :end :from-end
(defalias 'remove-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply remove* nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 6073)])
#@191 Remove all occurrences of ITEM in SEQ.
This is a destructive function; it reuses the storage of SEQ whenever possible.
Keywords supported:  :test :test-not :key :count :start :end :from-end
(defalias 'delete* #[(cl-item cl-seq &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< ÄÌ	>A@Î	>A@Ð	>A@†U ÑÓ	>A@	‰ƒ† @Ö>„| ×	>A@„| ØÙ@\"ˆAA‰„e )†� Ú‰ÑXƒš ‚~<ƒvƒ÷ ÜWƒ÷ ÝS‰ÑYƒñ ß %‰ƒñ ÑUƒÛ A‚ê S›‰!‰AA¡ˆ)‚¯ )‚~†ý ÚZÑUƒ©ƒ¡ÑVƒ¡\nƒ4\n ƒ*@!‚-@\"?=‚…	ƒT	ƒI@!‚L@!?=‚… §ƒq ƒj@!‚m@š‚… ƒ�@!‚„@=ƒ¡SA‰ƒ¡S‰ÑV„	S‚®SÑVƒqÑVƒq›\"\"AƒpÑVƒp\nƒñ\n ƒæ\"A@!‚ê\"A@\"?=‚H	ƒ	ƒ\"A@!‚\"A@!?=‚H §ƒ2 ƒ*\"A@!‚.\"A@š‚H ƒC\"A@!‚G\"A@=ƒc\"‰AA¡ˆS‰ÑUƒhã‚h\"A\"S‚Ã)‚~äå 	$.	‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not :count cl-count :from-end cl-from-end :start 0 cl-start :end cl-end cl-keys-temp (:test :test-not :key :if :if-not :count :from-end :start :end) :allow-other-keys error "Bad keyword argument %s" 8000000 cl-seq 4000000 nil cl-i cl-position cl-item cl-tail cl-p 1 apply remove*] 7 (#$ . 6436)])
#@182 Remove all items satisfying PREDICATE in SEQ.
This is a destructive function; it reuses the storage of SEQ whenever possible.
Keywords supported:  :key :count :start :end :from-end
(defalias 'delete-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply delete* nil cl-list :if cl-pred cl-keys] 7 (#$ . 7729)])
#@186 Remove all items not satisfying PREDICATE in SEQ.
This is a destructive function; it reuses the storage of SEQ whenever possible.
Keywords supported:  :key :count :start :end :from-end
(defalias 'delete-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply delete* nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 8050)])
(byte-code "ÀÁ!ƒ ÂÁK!„ ÃÁÄ\"ˆÀ‡" [fboundp delete subrp defalias #[(x y) "À	\nÃÄ$‡" [delete* x y :test equal] 5]] 3)
(defalias 'remove #[(x y) "À	\nÃÄ$‡" [remove* x y :test equal] 5])
(defalias 'remq #[(x y) "	>ƒ ÂÃ	!\"‡	‡" [x y delq copy-list] 4])
#@123 Return a copy of SEQ with all duplicate elements removed.
Keywords supported:  :test :test-not :key :start :end :from-end
(defalias 'remove-duplicates #[(cl-seq &rest cl-keys) "À	\nÃ#‡" [cl-delete-duplicates cl-seq cl-keys t] 4 (#$ . 8636)])
#@121 Remove all duplicate elements from SEQ (destructively).
Keywords supported:  :test :test-not :key :start :end :from-end
(defalias 'delete-duplicates #[(cl-seq &rest cl-keys) "À	\nÃ#‡" [cl-delete-duplicates cl-seq cl-keys nil] 4 (#$ . 8885)])
(defalias 'cl-delete-duplicates #[(cl-seq cl-keys cl-copy) "<ƒ´Á\n>A@Ä\n>A@… Ä\n>A@‰… ÅÇ\n>A@É\n>A@†0 ÊÌ\n>A@Î\n>A@Ð\n>A@\n‰ƒo @Ó>„e Ô\n>A@„e ÕÖ@\"ˆAA‰„N )ƒô ›×†… GZÚVƒï ÊÛƒ£ @!‚¦ @AS$‰ƒÝ ƒÇ Ý!›×›‰‰AA¡ˆ)S‚” AST‚Š *‚±†û GZAƒ8ÊUƒ8ÚVƒ8Ûƒ!@!‚#@AÊS$ƒ8AS‚ ÊVƒGS›‚PSÚAAƒ¯ÚVƒ¯ÛƒpA@!‚tA@AAÊS$ƒ�ƒ“Ý!S›×‰AA¡ˆ‚¢AST‚R).‡ßà×\"\n×#!;ƒÊ!°‚Îâ!!)‡" [cl-seq :test cl-keys cl-test :test-not t cl-test-not :key cl-key :start 0 cl-start :end cl-end :from-end cl-from-end :if cl-if cl-keys-temp (:test :test-not :key :start :end :from-end :if) :allow-other-keys error "Bad keyword argument %s" nil cl-i cl-p 1 cl-position cl-copy copy-sequence cl-tail cl-delete-duplicates append cl-res vconcat] 6])
#@213 Substitute NEW for OLD in SEQ.
This is a non-destructive function; it makes a copy of SEQ if necessary
to avoid corrupting the original SEQ.
Keywords supported:  :test :test-not :key :count :start :end :from-end
(defalias 'substitute #[(cl-new cl-old cl-seq &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< ÄÌ	>A@Î	>A@†N ÏÑ	>A@Ó	>A@	‰ƒ† @Ö>„| ×	>A@„| ØÙ@\"ˆAA‰„e )=„  †› ÜÝ‰ÏXƒ¥ ‚ê ß$‰ „º ‚é á!„Ø â #ˆ T SãäÌÎ 	&	).	‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not :count cl-count :start 0 cl-start :end cl-end :from-end cl-from-end cl-keys-temp (:test :test-not :key :if :if-not :count :start :end :from-end) :allow-other-keys error "Bad keyword argument %s" cl-old cl-new nil 8000000 cl-seq cl-position cl-i copy-sequence cl-set-elt apply nsubstitute] 11 (#$ . 10019)])
#@224 Substitute NEW for all items satisfying PREDICATE in SEQ.
This is a non-destructive function; it makes a copy of SEQ if necessary
to avoid corrupting the original SEQ.
Keywords supported:  :key :count :start :end :from-end
(defalias 'substitute-if #[(cl-new cl-pred cl-list &rest cl-keys) "ÀÁ\nÃ\fÅ&‡" [apply substitute cl-new nil cl-list :if cl-pred cl-keys] 8 (#$ . 10934)])
#@228 Substitute NEW for all items not satisfying PREDICATE in SEQ.
This is a non-destructive function; it makes a copy of SEQ if necessary
to avoid corrupting the original SEQ.
Keywords supported:  :key :count :start :end :from-end
(defalias 'substitute-if-not #[(cl-new cl-pred cl-list &rest cl-keys) "ÀÁ\nÃ\fÅ&‡" [apply substitute cl-new nil cl-list :if-not cl-pred cl-keys] 8 (#$ . 11323)])
#@183 Substitute NEW for OLD in SEQ.
This is a destructive function; it reuses the storage of SEQ whenever possible.
Keywords supported:  :test :test-not :key :count :start :end :from-end
(defalias 'nsubstitute #[(cl-new cl-old cl-seq &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< ÄÌ	>A@Î	>A@†N ÏÑ	>A@Ó	>A@	‰ƒ† @Ö>„| ×	>A@„| ØÙ@\"ˆAA‰„e )=„Â†˜ Ü‰ÏX„Â<ƒcƒ¯ ÞVƒc›†¼ ÜZƒ_ÏVƒ_ÏVƒ_\nƒó \nƒé @!‚ì @\"?=‚D	ƒ	ƒ@!‚@!?=‚D§ƒ0ƒ)@!‚,@š‚Dƒ@@!‚C@=ƒR ˆSAS‚Á )‚Â„mGƒWƒÂÏVƒÂS\nƒ©\nƒ�œ!‚¢œ\"?=‚	ƒÍ	ƒÀœ!‚Åœ!?=‚§ƒîƒåœ!‚êœš‚ƒ œ!‚œ=ƒrà#ˆS‚rWƒÂÏVƒÂ\nƒL\nƒ@H!‚EH\"?=‚©	ƒp	ƒcH!‚hH!?=‚©§ƒ‘ƒˆH!‚�Hš‚©ƒ£H!‚¨H=ƒ¹IˆST‰‚.	‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not :count cl-count :start 0 cl-start :end cl-end :from-end cl-from-end cl-keys-temp (:test :test-not :key :if :if-not :count :start :end :from-end) :allow-other-keys error "Bad keyword argument %s" cl-old cl-new 8000000 cl-seq 4000000 cl-p cl-set-elt] 6 (#$ . 11724)])
#@194 Substitute NEW for all items satisfying PREDICATE in SEQ.
This is a destructive function; it reuses the storage of SEQ whenever possible.
Keywords supported:  :key :count :start :end :from-end
(defalias 'nsubstitute-if #[(cl-new cl-pred cl-list &rest cl-keys) "ÀÁ\nÃ\fÅ&‡" [apply nsubstitute cl-new nil cl-list :if cl-pred cl-keys] 8 (#$ . 13052)])
#@198 Substitute NEW for all items not satisfying PREDICATE in SEQ.
This is a destructive function; it reuses the storage of SEQ whenever possible.
Keywords supported:  :key :count :start :end :from-end
(defalias 'nsubstitute-if-not #[(cl-new cl-pred cl-list &rest cl-keys) "ÀÁ\nÃ\fÅ&‡" [apply nsubstitute cl-new nil cl-list :if-not cl-pred cl-keys] 8 (#$ . 13413)])
#@155 Find the first occurrence of ITEM in LIST.
Return the matching ITEM, or nil if not found.
Keywords supported:  :test :test-not :key :start :end :from-end
(defalias 'find #[(cl-item cl-seq &rest cl-keys) "ÀÁ\n\f$‰… œ)‡" [apply position cl-item cl-seq cl-keys cl-pos] 6 (#$ . 13786)])
#@146 Find the first item satisfying PREDICATE in LIST.
Return the matching ITEM, or nil if not found.
Keywords supported:  :key :start :end :from-end
(defalias 'find-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply find nil cl-list :if cl-pred cl-keys] 7 (#$ . 14081)])
#@150 Find the first item not satisfying PREDICATE in LIST.
Return the matching ITEM, or nil if not found.
Keywords supported:  :key :start :end :from-end
(defalias 'find-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply find nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 14362)])
#@168 Find the first occurrence of ITEM in LIST.
Return the index of the matching item, or nil if not found.
Keywords supported:  :test :test-not :key :start :end :from-end
(defalias 'position #[(cl-item cl-seq &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< ÄÌ	>A@†G ÍÏ	>A@Ñ	>A@	‰ƒ @Ô>„u Õ	>A@„u Ö×@\"ˆAA‰„^ )Ø%.‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not :start 0 cl-start :end cl-end :from-end cl-from-end cl-keys-temp (:test :test-not :key :if :if-not :start :end :from-end) :allow-other-keys error "Bad keyword argument %s" cl-position cl-item cl-seq] 7 (#$ . 14655)])
(defalias 'cl-position #[(cl-item cl-seq cl-start &optional cl-end cl-from-end) "<ƒ¤ 	›„ ÄÅ\nƒ  	Wƒ  ƒ& ƒ  ƒF 	\nƒ< \n\n@!‚> \n@\"?=‚‘ \fƒd \f\nƒZ \n\n@!‚\\ \n@!?=‚‘ 	§ƒ 	\nƒy \n\n@!‚{ \n@š‚‘ 	\nƒŽ \n\n@!‚� \n@=ƒ— 	\nA	T‚ *‡„« Gƒ7S‰	Yƒ/ƒÛ 	\nƒÐ \nH!‚Ó H\"?=‚,\fƒû \f\nƒð \nH!‚ó H!?=‚,	§ƒ	\nƒ\nH!‚Hš‚,	\nƒ(\nH!‚+H=ƒ° 	Y…Á‡	Wƒºƒ_	\nƒT\n	H!‚W	H\"?=‚°\fƒ\f\nƒt\n	H!‚w	H!?=‚°	§ƒœ	\nƒ•\n	H!‚˜	Hš‚°	\nƒ¬\n	H!‚¯	H=„º	T‰‚8	W…Á	‡" [cl-seq cl-start cl-p cl-end 8000000 nil cl-res cl-from-end cl-test cl-item cl-key cl-test-not cl-if cl-if-not] 6])
#@159 Find the first item satisfying PREDICATE in LIST.
Return the index of the matching item, or nil if not found.
Keywords supported:  :key :start :end :from-end
(defalias 'position-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply position nil cl-list :if cl-pred cl-keys] 7 (#$ . 16026)])
#@163 Find the first item not satisfying PREDICATE in LIST.
Return the index of the matching item, or nil if not found.
Keywords supported:  :key :start :end :from-end
(defalias 'position-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply position nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 16328)])
#@104 Count the number of occurrences of ITEM in LIST.
Keywords supported:  :test :test-not :key :start :end
(defalias 'count #[(cl-item cl-seq &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< ÄÌ	>A@†G ÍÏ	>A@	‰ƒx @Ò>„n Ó	>A@„n ÔÕ@\"ˆAA‰„W )ÍÖ„‰ G:ƒ– ›Wƒ.:ƒ® ‰A@‚³ H\nƒÒ \nƒÉ !‚Ë \"?=‚	ƒð 	ƒæ !‚è !?=‚§ƒƒ!‚š‚ƒ!‚=ƒ%TT‰‚˜ .	‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not :start 0 cl-start :end cl-end cl-keys-temp (:test :test-not :key :if :if-not :start :end) :allow-other-keys error "Bad keyword argument %s" nil cl-x cl-count cl-seq cl-item] 5 (#$ . 16642)])
#@95 Count the number of items satisfying PREDICATE in LIST.
Keywords supported:  :key :start :end
(defalias 'count-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply count nil cl-list :if cl-pred cl-keys] 7 (#$ . 17393)])
#@99 Count the number of items not satisfying PREDICATE in LIST.
Keywords supported:  :key :start :end
(defalias 'count-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply count nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 17624)])
#@286 Compare SEQ1 with SEQ2, return index of first mismatching element.
Return nil if the sequences match.  If one sequence is a prefix of the
other, the return value indicates the end of the shorted sequence.
Keywords supported:  :test :test-not :key :start1 :end1 :start2 :end2 :from-end
(defalias 'mismatch #[(cl-seq1 cl-seq2 &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@†1 Ë\fÍ	>A@Ï	>A@†C ËÑ	>A@	‰ƒt @Ô>„j Õ	>A@„j Ö×@\"ˆAA‰„S )„ G„‰ G	ƒz\fWƒdWƒd\nƒØ \nƒ´ Sœ!‚º SœƒË Sœ!‚Ñ Sœ\"?=‚Tƒé Sœ!‚ï Sœ§ƒ%ƒSœ!‚\nSœƒSœ!‚!Sœš‚Tƒ6Sœ!‚<SœƒMSœ!‚SSœ=ƒdSS‚Ž \fW„tW…S‚<……\f›<…�›\fWƒ Wƒ \nƒ\nƒÄƒ»@‚À\fH!‚ÔƒÏ@‚Ô\fHƒïƒæ@‚ëH!‚ÿƒú@‚ÿH\"?=‚æƒ!ƒ@‚\fH!‚1ƒ,@‚1\fH§ƒ�ƒPƒG@‚L\fH!‚`ƒ[@‚`\fHƒ{ƒr@‚wH!‚‹ƒ†@‚‹Hš‚æƒªƒ¡@‚¦\fH!‚ºƒµ@‚º\fHƒÕƒÌ@‚ÑH!‚åƒà@‚åH=ƒ AA\fT\fT‚”\fW„W…\f*.‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :from-end cl-from-end :start1 0 cl-start1 :end1 cl-end1 :start2 cl-start2 :end2 cl-end2 cl-keys-temp (:test :test-not :key :from-end :start1 :end1 :start2 :end2) :allow-other-keys error "Bad keyword argument %s" cl-seq1 cl-seq2 cl-p2 cl-p1] 6 (#$ . 17868)])
#@226 Search for SEQ1 as a subsequence of SEQ2.
Return the index of the leftmost element of the first match found;
return nil if there are no matches.
Keywords supported:  :test :test-not :key :start1 :end1 :start2 :end2 :from-end
(defalias 'search #[(cl-seq1 cl-seq2 &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@†1 Ë\fÍ	>A@Ï	>A@†C ËÑ	>A@	‰ƒt @Ô>„j Õ	>A@„j Ö×@\"ˆAA‰„S )„ G„‰ G\fYƒ  	ƒ› ‚%‚%\fZƒ· \fœ!‚¼ \fœÜÜSZWƒß	%‰ƒàáÊ\fTÍÏTÑ\\ÈÜ	&ƒ	ƒ‚Ì T‰‚Î W…$,.‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :from-end cl-from-end :start1 0 cl-start1 :end1 cl-end1 :start2 cl-start2 :end2 cl-end2 cl-keys-temp (:test :test-not :key :from-end :start1 :end1 :start2 :end2) :allow-other-keys error "Bad keyword argument %s" cl-seq1 cl-seq2 cl-len cl-first nil cl-if cl-pos cl-position apply mismatch] 16 (#$ . 19349)])
#@157 Sort the argument SEQUENCE according to PREDICATE.
This is a destructive function; it reuses the storage of SEQUENCE if possible.
Keywords supported:  :key
(defalias 'sort* #[(cl-seq cl-pred &rest cl-keys) "<„ ÁÂÃÄÅ\"$\"‡È>A@	‰\nƒF \n@Ë>„< Ì>A@„< ÍÎ\n@\"ˆ\nAA‰\n„$ )	Ï>ƒV Ð\"‚Z ÐÑ\")‡" [cl-seq replace apply sort* append nil cl-pred cl-keys :key cl-key cl-keys-temp (:key) :allow-other-keys error "Bad keyword argument %s" (nil identity) sort #[(cl-x cl-y) "	\n!	!\"‡" [cl-pred cl-key cl-x cl-y] 4]] 8 (#$ . 20306)])
#@164 Sort the argument SEQUENCE stably according to PREDICATE.
This is a destructive function; it reuses the storage of SEQUENCE if possible.
Keywords supported:  :key
(defalias 'stable-sort #[(cl-seq cl-pred &rest cl-keys) "ÀÁ\n\f$‡" [apply sort* cl-seq cl-pred cl-keys] 5 (#$ . 20857)])
#@228 Destructively merge the two sequences to produce a new sequence.
TYPE is the sequence type to return, SEQ1 and SEQ2 are the two
argument sequences, and PRED is a `less-than' predicate on the elements.
Keywords supported:  :key
(defalias 'merge #[(cl-type cl-seq1 cl-seq2 cl-pred &rest cl-keys) "<„\n ÁÂ\"<„ ÁÂ\"Ä>A@‰ƒC @È>„9 É>A@„9 ÊË@\"ˆAA‰„\" )Â\fƒ� ƒ� ƒ^ @!‚` @ƒm @!‚o @\"ƒ€ ‰A@\fB\f‚G ‰A@\fB\f‚G Î\fŸ¤¤\"*‡" [cl-seq1 append nil cl-seq2 :key cl-keys cl-key cl-keys-temp (:key) :allow-other-keys error "Bad keyword argument %s" cl-res cl-pred coerce cl-type] 5 (#$ . 21149)])
#@132 Find the first occurrence of ITEM in LIST.
Return the sublist of LIST whose car is ITEM.
Keywords supported:  :test :test-not :key
(defalias 'member* #[(cl-item cl-list &rest cl-keys) "ƒð Á>A@Ã>A@… Ã>A@‰… ÄÆ>A@È>A@	Ê>A@…@ Ê>A@‰	…@ Ä‰\fƒj \f@Í>„` Î>A@„` ÏÐ\f@\"ˆ\fAA‰\f„I )ƒì \nƒ� \nƒ… @!‚ˆ @\"?=‚à 	ƒ¯ 	ƒ¤ @!‚§ @!?=‚à §ƒÌ ƒÅ @!‚È @š‚à ƒÜ @!‚ß @=„ì A‰„p -‡§ƒ¨„�‡>‡" [cl-keys :test cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not cl-keys-temp (:test :test-not :key :if :if-not) :allow-other-keys error "Bad keyword argument %s" cl-list cl-item] 5 (#$ . 21786)])
#@123 Find the first item satisfying PREDICATE in LIST.
Return the sublist of LIST whose car matches.
Keywords supported:  :key
(defalias 'member-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply member* nil cl-list :if cl-pred cl-keys] 7 (#$ . 22472)])
#@127 Find the first item not satisfying PREDICATE in LIST.
Return the sublist of LIST whose car matches.
Keywords supported:  :key
(defalias 'member-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply member* nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 22735)])
(defalias 'cl-adjoin #[(cl-item cl-list &rest cl-keys) "À	>A@ÃÄ\nƒ \n!‚ 	$)ƒ ‡B‡" [:key cl-keys cl-key apply member* cl-item cl-list] 5])
#@95 Find the first item whose car matches ITEM in LIST.
Keywords supported:  :test :test-not :key
(defalias 'assoc* #[(cl-item cl-alist &rest cl-keys) "ƒÁ>A@Ã>A@… Ã>A@‰… ÄÆ>A@È>A@	Ê>A@…@ Ê>A@‰	…@ Ä‰\fƒj \f@Í>„` Î>A@„` ÏÐ\f@\"ˆ\fAA‰\f„I )ƒû @:ƒò \nƒ˜ \nƒ� @@!‚‘ @@\"?=‚ï 	ƒº 	ƒ® @@!‚² @@!?=‚ï §ƒÙ ƒÑ @@!‚Õ @@š‚ï ƒê @@!‚î @@=„û A‰„p …@-‡§ƒ¨„Ó\"‡ž‡" [cl-keys :test cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not cl-keys-temp (:test :test-not :key :if :if-not) :allow-other-keys error "Bad keyword argument %s" cl-alist cl-item assoc] 5 (#$ . 23160)])
#@86 Find the first item whose car satisfies PREDICATE in LIST.
Keywords supported:  :key
(defalias 'assoc-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply assoc* nil cl-list :if cl-pred cl-keys] 7 (#$ . 23838)])
#@93 Find the first item whose car does not satisfy PREDICATE in LIST.
Keywords supported:  :key
(defalias 'assoc-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply assoc* nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 24061)])
#@95 Find the first item whose cdr matches ITEM in LIST.
Keywords supported:  :test :test-not :key
(defalias 'rassoc* #[(cl-item cl-alist &rest cl-keys) "„	 	§ƒÂ>A@Ä>A@…\" Ä>A@‰…\" ÅÇ>A@É>A@\nË>A@…F Ë>A@‰\n…F Å\f‰ƒp @Î>„f Ï>A@„f ÐÑ@\"ˆAA‰„O )ƒþ @:ƒõ ƒž 	ƒ’ @A!‚– @A\"?=‚ò \nƒÀ \nƒ´ @A!‚¸ @A!?\f=‚ò 	§ƒÝ 	ƒÕ @A!‚Ù @Aš‚ò 	ƒí @A!‚ñ @A=„þ A‰„v …@-‡Ó	\"‡" [cl-keys cl-item :test cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not cl-keys-temp (:test :test-not :key :if :if-not) :allow-other-keys error "Bad keyword argument %s" cl-alist rassq] 5 (#$ . 24299)])
(defalias 'rassoc #[(item alist) "À	\nÃÄ$‡" [rassoc* item alist :test equal] 5])
#@86 Find the first item whose cdr satisfies PREDICATE in LIST.
Keywords supported:  :key
(defalias 'rassoc-if #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply rassoc* nil cl-list :if cl-pred cl-keys] 7 (#$ . 25044)])
#@93 Find the first item whose cdr does not satisfy PREDICATE in LIST.
Keywords supported:  :key
(defalias 'rassoc-if-not #[(cl-pred cl-list &rest cl-keys) "ÀÁÂÄ&‡" [apply rassoc* nil cl-list :if-not cl-pred cl-keys] 7 (#$ . 25269)])
#@296 Combine LIST1 and LIST2 using a set-union operation.
The result list contains all items that appear in either LIST1 or LIST2.
This is a non-destructive function; it makes a copy of the data if necessary
to avoid corrupting the original LIST1 and LIST2.
Keywords supported:  :test :test-not :key
(defalias 'union #[(cl-list1 cl-list2 &rest cl-keys) "„ 	‡	„\f ‡	šƒ ‡G	GY„  		ƒM \n„. 	@§ƒ9 ÃÄ	@\n$‚E 	@>„E 	@B	‰Aˆ‚  ‡" [cl-list1 cl-list2 cl-keys apply adjoin] 5 (#$ . 25510)])
#@261 Combine LIST1 and LIST2 using a set-union operation.
The result list contains all items that appear in either LIST1 or LIST2.
This is a destructive function; it reuses the storage of LIST1 and LIST2
whenever possible.
Keywords supported:  :test :test-not :key
(defalias 'nunion #[(cl-list1 cl-list2 &rest cl-keys) "„ 	‡	„\f ‡ÂÃ	\f$‡" [cl-list1 cl-list2 apply union cl-keys] 5 (#$ . 26008)])
#@302 Combine LIST1 and LIST2 using a set-intersection operation.
The result list contains all items that appear in both LIST1 and LIST2.
This is a non-destructive function; it makes a copy of the data if necessary
to avoid corrupting the original LIST1 and LIST2.
Keywords supported:  :test :test-not :key
(defalias 'intersection #[(cl-list1 cl-list2 &rest cl-keys) "…… 	…… 	šƒ ‡Â>A@‰ƒ9 @Æ>„1 Ç>A@„1 ÈÉ@\"ˆAA‰„ )ÊG	GY„I 		ƒ‚ „W 	@§ƒl ÌÍ\fƒd \f	@!‚f 	@$‚p 	@>ƒz 	@B	‰Aˆ‚I *‡" [cl-list1 cl-list2 :key cl-keys cl-key cl-keys-temp (:key :test :test-not) :allow-other-keys error "Bad keyword argument %s" nil cl-res apply member*] 6 (#$ . 26410)])
#@267 Combine LIST1 and LIST2 using a set-intersection operation.
The result list contains all items that appear in both LIST1 and LIST2.
This is a destructive function; it reuses the storage of LIST1 and LIST2
whenever possible.
Keywords supported:  :test :test-not :key
(defalias 'nintersection #[(cl-list1 cl-list2 &rest cl-keys) "… 	… ÂÃ	\f$‡" [cl-list1 cl-list2 apply intersection cl-keys] 5 (#$ . 27086)])
#@299 Combine LIST1 and LIST2 using a set-difference operation.
The result list contains all items that appear in LIST1 but not LIST2.
This is a non-destructive function; it makes a copy of the data if necessary
to avoid corrupting the original LIST1 and LIST2.
Keywords supported:  :test :test-not :key
(defalias 'set-difference #[(cl-list1 cl-list2 &rest cl-keys) "ƒ 	„\n ‡Â>A@‰ƒ3 @Æ>„+ Ç>A@„+ ÈÉ@\"ˆAA‰„ )Êƒp „E @§ƒZ ÌÍ\fƒR \f@!‚T @	$‚^ @	>„h @B‰Aˆ‚7 *‡" [cl-list1 cl-list2 :key cl-keys cl-key cl-keys-temp (:key :test :test-not) :allow-other-keys error "Bad keyword argument %s" nil cl-res apply member*] 6 (#$ . 27503)])
#@264 Combine LIST1 and LIST2 using a set-difference operation.
The result list contains all items that appear in LIST1 but not LIST2.
This is a destructive function; it reuses the storage of LIST1 and LIST2
whenever possible.
Keywords supported:  :test :test-not :key
(defalias 'nset-difference #[(cl-list1 cl-list2 &rest cl-keys) "ƒ 	„\n ‡ÂÃ	\f$‡" [cl-list1 cl-list2 apply set-difference cl-keys] 5 (#$ . 28161)])
#@309 Combine LIST1 and LIST2 using a set-exclusive-or operation.
The result list contains all items that appear in exactly one of LIST1, LIST2.
This is a non-destructive function; it makes a copy of the data if necessary
to avoid corrupting the original LIST1 and LIST2.
Keywords supported:  :test :test-not :key
(defalias 'set-exclusive-or #[(cl-list1 cl-list2 &rest cl-keys) "„ 	‡	„\f ‡	šƒ Â‡ÃÄÅ	$ÄÅ	$\"‡" [cl-list1 cl-list2 nil append apply set-difference cl-keys] 7 (#$ . 28582)])
#@274 Combine LIST1 and LIST2 using a set-exclusive-or operation.
The result list contains all items that appear in exactly one of LIST1, LIST2.
This is a destructive function; it reuses the storage of LIST1 and LIST2
whenever possible.
Keywords supported:  :test :test-not :key
(defalias 'nset-exclusive-or #[(cl-list1 cl-list2 &rest cl-keys) "„ 	‡	„\f ‡	šƒ Â‡ÃÄ	$ÃÄ	$¤‡" [cl-list1 cl-list2 nil apply nset-difference cl-keys] 6 (#$ . 29080)])
#@134 True if LIST1 is a subset of LIST2.
I.e., if every element of LIST1 also appears in LIST2.
Keywords supported:  :test :test-not :key
(defalias 'subsetp #[(cl-list1 cl-list2 &rest cl-keys) "„ Á‡\n„\f Ã‡\nšƒ Á‡Ä>A@‰ƒC @È>„9 É>A@„9 ÊË@\"ˆAA‰„\" )ƒg ÌÍƒW @!‚Y @\n$ƒg ‰Aˆ‚D )?‡" [cl-list1 t cl-list2 nil :key cl-keys cl-key cl-keys-temp (:key :test :test-not) :allow-other-keys error "Bad keyword argument %s" apply member*] 6 (#$ . 29534)])
#@169 Substitute NEW for elements matching PREDICATE in TREE (non-destructively).
Return a copy of TREE with all matching elements replaced by NEW.
Keywords supported:  :key
(defalias 'subst-if #[(cl-new cl-pred cl-tree &rest cl-keys) "ÀÁÂBC\fÅ&‡" [apply sublis nil cl-new cl-tree :if cl-pred cl-keys] 7 (#$ . 30008)])
#@173 Substitute NEW for elts not matching PREDICATE in TREE (non-destructively).
Return a copy of TREE with all non-matching elements replaced by NEW.
Keywords supported:  :key
(defalias 'subst-if-not #[(cl-new cl-pred cl-tree &rest cl-keys) "ÀÁÂBC\fÅ&‡" [apply sublis nil cl-new cl-tree :if-not cl-pred cl-keys] 7 (#$ . 30334)])
#@188 Substitute NEW for OLD everywhere in TREE (destructively).
Any element of TREE which is `eql' to OLD is changed to NEW (via a call
to `setcar').
Keywords supported:  :test :test-not :key
(defalias 'nsubst #[(cl-new cl-old cl-tree &rest cl-keys) "ÀÁ\nBC\f$‡" [apply nsublis cl-old cl-new cl-tree cl-keys] 5 (#$ . 30672)])
#@177 Substitute NEW for elements matching PREDICATE in TREE (destructively).
Any element of TREE which matches is changed to NEW (via a call to `setcar').
Keywords supported:  :key
(defalias 'nsubst-if #[(cl-new cl-pred cl-tree &rest cl-keys) "ÀÁÂBC\fÅ&‡" [apply nsublis nil cl-new cl-tree :if cl-pred cl-keys] 7 (#$ . 31002)])
#@181 Substitute NEW for elements not matching PREDICATE in TREE (destructively).
Any element of TREE which matches is changed to NEW (via a call to `setcar').
Keywords supported:  :key
(defalias 'nsubst-if-not #[(cl-new cl-pred cl-tree &rest cl-keys) "ÀÁÂBC\fÅ&‡" [apply nsublis nil cl-new cl-tree :if-not cl-pred cl-keys] 7 (#$ . 31338)])
#@172 Perform substitutions indicated by ALIST in TREE (non-destructively).
Return a copy of TREE with all matching elements replaced.
Keywords supported:  :test :test-not :key
(defalias 'sublis #[(cl-alist cl-tree &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< Ä	‰\fƒf \f@Í>„\\ Î	>A@„\\ ÏÐ\f@\"ˆ\fAA‰\f„E )Ñ!-‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not cl-keys-temp (:test :test-not :key :if :if-not) :allow-other-keys error "Bad keyword argument %s" cl-sublis-rec cl-tree] 4 (#$ . 31686)])
(byte-code "À	BÀ‡" [cl-alist current-load-list] 2)
(defalias 'cl-sublis-rec #[(cl-tree) "ƒ\n 	!‚ 	\nƒQ ƒ# @@\f\"?=‚G ƒ3 \f!?=‚G @@§ƒB @@\fš‚G @@\f=„Q A‰„ ƒ[ @A‚‰ 	:ƒˆ É	@!É	A!\n‰	@=ƒ \n	A=ƒ 	‚„ \nB*‚‰ 	*‡" [cl-key cl-tree cl-alist cl-p cl-temp cl-test cl-test-not cl-if cl-if-not cl-sublis-rec cl-d cl-a] 4])
#@173 Perform substitutions indicated by ALIST in TREE (destructively).
Any matching element of TREE is changed via a call to `setcar'.
Keywords supported:  :test :test-not :key
(defalias 'nsublis #[(cl-alist cl-tree &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@È	>A@	Ê	>A@…< Ê	>A@‰	…< Ä	‰\fƒf \f@Í>„\\ Î	>A@„\\ ÏÐ\f@\"ˆ\fAA‰\f„E )CÓ!ˆ@.‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key :if cl-if :if-not cl-if-not cl-keys-temp (:test :test-not :key :if :if-not) :allow-other-keys error "Bad keyword argument %s" cl-tree cl-hold cl-nsublis-rec] 4 (#$ . 32606)])
(defalias 'cl-nsublis-rec #[(cl-tree) ":…Ù 	ƒ 	@!‚ @\nƒX ƒ* @@\f\"?=‚N ƒ: \f!?=‚N @@§ƒI @@\fš‚N @@\f=„X A‰„ ƒe @A ˆ‚p @:ƒp É@!ˆ	ƒ{ 	A!‚} A\n‰ƒÃ ƒ• @@\f\"?=‚¹ ƒ¥ \f!?=‚¹ @@§ƒ´ @@\fš‚¹ @@\f=„Ã A‰„„ ƒÒ @A¡ˆÊ‚Õ A*‚  ‡" [cl-tree cl-key cl-alist cl-p cl-temp cl-test cl-test-not cl-if cl-if-not cl-nsublis-rec nil] 4])
#@147 T if trees X and Y have `eql' leaves.
Atoms are compared by `eql'; cons cells are compared recursively.
Keywords supported:  :test :test-not :key
(defalias 'tree-equal #[(cl-x cl-y &rest cl-keys) "À	>A@Ã	>A@… Ã	>A@‰… ÄÆ	>A@	‰ƒI @É>„? Ê	>A@„? ËÌ@\"ˆAA‰„( )Í\"+‡" [:test cl-keys cl-test :test-not t cl-test-not :key cl-key cl-keys-temp (:test :test-not :key) :allow-other-keys error "Bad keyword argument %s" cl-tree-equal-rec cl-x cl-y] 4 (#$ . 33572)])
(defalias 'cl-tree-equal-rec #[(cl-x cl-y) ":ƒ 	:ƒ Â@	@\"ƒ A	A‚  :?…† 	:?…† ƒH \fƒ7 \f!‚8 \fƒB \f	!‚C 	\"?=‡\fƒR \f!‚S §ƒo \fƒa \f!‚b \fƒl \f	!‚m 	š‡\fƒy \f!‚z \fƒ„ \f	!‚… 	=‡" [cl-x cl-y cl-tree-equal-rec cl-test cl-key cl-test-not] 4])
(run-hooks (quote cl-seq-load-hook))
