;ELC   
;;; Compiled by nelhage@localhost.localdomain on Sun Dec 11 02:47:29 2005
;;; from file /home/nelhage/Desktop/vm-7.19/vm-imap.el
;;; in Emacs version 22.0.50.7
;;; with all optimizations.

;;; This file uses opcodes which do not exist in Emacs 18.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19")))
    (error "`vm-imap.el' was compiled for Emacs 19 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\203 \301\302\303\"\210\202 \304\302\305\306#\210\304\302\307\310#\210\300\207" [fboundp define-error vm-imap-protocol-error "IMAP protocol error" put error-conditions (vm-imap-protocol-error error) error-message "IMAP protocol error"] 4)
(defalias 'vm-imap-capability #[(cap &optional process) "\203 \212\303!q\210	\n>)\207	\n>\207" [process cap vm-imap-capabilities process-buffer] 2])
(defalias 'vm-imap-auth-method #[(auth) "	>\207" [auth vm-imap-auth-methods] 2])
(defalias 'vm-folder-imap-maildrop-spec #[nil "\301H\207" [vm-folder-access-data 0] 2])
(put 'vm-folder-imap-maildrop-spec 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-process #[nil "\301H\207" [vm-folder-access-data 1] 2])
(put 'vm-folder-imap-process 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-uid-validity #[nil "\301H\207" [vm-folder-access-data 2] 2])
(put 'vm-folder-imap-uid-validity 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-uid-list #[nil "\301H\207" [vm-folder-access-data 3] 2])
(put 'vm-folder-imap-uid-list 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-mailbox-count #[nil "\301H\207" [vm-folder-access-data 4] 2])
(put 'vm-folder-imap-mailbox-count 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-read-write #[nil "\301H\207" [vm-folder-access-data 5] 2])
(put 'vm-folder-imap-read-write 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-can-delete #[nil "\301H\207" [vm-folder-access-data 6] 2])
(put 'vm-folder-imap-can-delete 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-body-peek #[nil "\301H\207" [vm-folder-access-data 7] 2])
(put 'vm-folder-imap-body-peek 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-folder-imap-permanent-flags #[nil "\301H\207" [vm-folder-access-data 8] 2])
(put 'vm-folder-imap-permanent-flags 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-maildrop-spec #[(val) "\302	I\207" [vm-folder-access-data val 0] 3])
(put 'vm-set-folder-imap-maildrop-spec 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-process #[(val) "\302	I\207" [vm-folder-access-data val 1] 3])
(put 'vm-set-folder-imap-process 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-uid-validity #[(val) "\302	I\207" [vm-folder-access-data val 2] 3])
(put 'vm-set-folder-imap-uid-validity 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-uid-list #[(val) "\302	I\207" [vm-folder-access-data val 3] 3])
(put 'vm-set-folder-imap-uid-list 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-mailbox-count #[(val) "\302	I\207" [vm-folder-access-data val 4] 3])
(put 'vm-set-folder-imap-mailbox-count 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-read-write #[(val) "\302	I\207" [vm-folder-access-data val 5] 3])
(put 'vm-set-folder-imap-read-write 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-can-delete #[(val) "\302	I\207" [vm-folder-access-data val 6] 3])
(put 'vm-set-folder-imap-can-delete 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-body-peek #[(val) "\302	I\207" [vm-folder-access-data val 7] 3])
(put 'vm-set-folder-imap-body-peek 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-set-folder-imap-permanent-flags #[(val) "\302	I\207" [vm-folder-access-data val 8] 3])
(put 'vm-set-folder-imap-permanent-flags 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'vm-imap-move-mail #[(source destination) "\306	\307\310!\205 \306\311\312\217\313\n!\306\211\211\314\n!\315F\306\314\n!\306\211\211\211\211\211\211\211\211\211\211\211\211\211\316\306\211 !\"#$%&'()*\317\n+\"\211\203s A\202\210 \317\314\n!+\"\211\203\206 A\202\210 ,\320\216\321\322\215.\207" [vm-imap-messages-per-session vm-imap-bytes-per-session source vm-imap-retrieved-messages process-buffer retrieved-bytes nil fboundp find-file-name-handler (byte-code "\301\302\"\207" [source find-file-name-handler vm-imap-move-mail] 3) ((wrong-number-of-arguments (find-file-name-handler source))) vm-safe-imapdrop-string vm-imapdrop-sans-password uid 0 assoc ((byte-code "\n\306=\203 \307\232\204 \310 \210\f\203 \311\f!\210\203! \312!\210\306\207" [imap-retrieved-messages vm-imap-retrieved-messages vm-flush-interval retrieved statblob process t 0 vm-stuff-imap-retrieved vm-imap-stop-status-timer vm-imap-end-session] 2)) end-of-session (byte-code "\203 \306\307\310	\n#\"\210\311	!\211\204 \306\307\312\"\210\304!\212\fq\210\313	\314\"\3158\316\"\211@ A@!\3178\"\3158#\320\321!$\322%&!#&\323'\324(\325 )\326)*\"\210\327) \"\210' X\203\243 \330+!\203\207 ,+W\203\243 \330-!\203\226 (-W\203\243 \331\332\215\210'T\211'\202r .\203\261 \333\334\"\210\335!\210,\324\232)?\207" [handler source destination process process-buffer source-list throw end-of-session vm-imap-move-mail vm-imap-make-session nil vm-parse "\\([^:]+\\):?" 3 vm-imap-select-mailbox 2 vm-imap-capability IMAP4REV1 vm-imap-clear-invalid-retrieval-entries 1 0 vm-imap-start-status-timer vm-set-imap-stat-x-box vm-set-imap-stat-x-maxmsg natnump skip (byte-code "\306	\"\210\307\310	\211#\211@A\f\240\210A\240\210\235\2035  \2030 \311\312	!\"$\210\313\314\315\"\210)\316	\"#\317#\"\210$\250\203\245 #$V\203\245  \203^ \320#	#\202_ \314\211%\321=\204\245 &\203\210 '\203\210 %\322=\203\210 \311\323	\"\210\324	\"\210\315(\202\240  \203\225 \311\325	\"\210\202\240 \311\326	\"#$%\210\313\314\315\"\210\311\327	!\"$\210)\203\306 \330\331\332	\"\"\210\333*\315$\210\202\326 \330\331\334	\"\"\210\333*\307$\210+T+,\203\347 -#\\-.\204\367 \335!B\202	&\203	'\203	\324	\"\210\315(\307\207" [statblob n list process uid msgid vm-set-imap-stat-x-currmsg nil vm-imap-get-uid-list message "Skipping message %d (of %d) from %s (retrieved already)..." throw skip t vm-imap-get-message-size vm-set-imap-stat-x-need vm-imap-ask-about-large-message retrieve delete "Deleting message %d..." vm-imap-delete-message "Skipping message %d..." "Skipping message %d in %s, too large (%d > %d)..." "Retrieving message %d (of %d) from %s..." vm-imap-send-command format "FETCH %d (BODY.PEEK[])" vm-imap-retrieve-to-target "FETCH %d (RFC822.PEEK)" copy-sequence uid-validity imap-retrieved-messages vm-imap-ok-to-ask mailbox-count imapdrop message-size vm-imap-max-message-size response read-write can-delete did-delete use-body-peek destination retrieved b-per-session retrieved-bytes auto-expunge] 7) vm-imap-send-command "CLOSE" vm-imap-read-ok-response mailbox select mailbox-count uid-validity read-write can-delete use-body-peek source-nopwd imap-retrieved-messages n retrieved-bytes statblob imapdrop m-per-session retrieved b-per-session did-delete] 7) retrieved n response message-size mailbox-count mailbox uid-validity read-write can-delete source-list select x auto-expunge use-body-peek source-nopwd did-delete imap-retrieved-messages msgid statblob imapdrop handler b-per-session m-per-session process vm-imap-auto-expunge-alist vm-imap-expunge-after-retrieving] 27])
(defalias 'vm-imap-check-mail #[(source) "\306\307\310!\205 \306\311\312\217\313	!\314\306\211\211\211\211\211\211\315\216\212\316\317\215).\207" [vm-imap-retrieved-messages source source-list mailbox select response nil fboundp find-file-name-handler (byte-code "\301\302\"\207" [source find-file-name-handler vm-imap-check-mail] 3) ((wrong-number-of-arguments (find-file-name-handler source))) vm-imapdrop-sans-password 0 ((byte-code "\203 \301!\210\301\207" [process vm-imap-end-session] 2)) end-of-session (byte-code "\203\f \306\307\310	\"\"\210\311	!\211\204 \306\307\312\"\210\313\n!q\210\314	\315\"\3168\317\n\f\"\211@A@\320!\203F \321	\322\"\210\306\307\312\"\210\323#\324\n\325#\211\203\266 @\204o \321	\326\"\210\306\307\312\"\210\202\243 \203\243 \327@A\"\211 \203\225  A@\232\203\225 \330 8\331=\204\232 !T!A\211\204t \321	!\332\211\211F\"\210\306\307!\332=?\"\210@\332\232?\207" [handler source process source-list mailbox select throw end-of-session vm-imap-check-mail vm-imap-make-session nil process-buffer vm-parse "\\([^:]+\\):?" 3 vm-imap-select-mailbox zerop vm-store-folder-totals (0 0 0 0) vm-imap-clear-invalid-retrieval-entries vm-imap-get-uid-list 1 (0 0 0 0) assoc 2 uid 0 msg-count uid-validity imapdrop retrieved response x count] 7) x uid-validity msg-count count imapdrop retrieved handler process] 12])
(defalias 'vm-expunge-imap-messages #[nil "\306 \210\203 \307!\204 \310\311!\210q\210\202! 	\312>\204! \310\313!\210\314 \210	\315=\203/ \310\316\n\"\210\317\211\211\320\321\211\317\211\211\211\211\211\211\211\211\211\211\211\211-./0123456789:;<\322\216\212\323=\324\"\211=\f\203| \325\326\215\210\202q 6\203\214 \327<\330\"\210\331<!\210:\203\340 \332\333!q\210\317>\334 \210\335\336\3379!\203\251 \340\202\253 99\341U\203\266 \342\202\267 \343#c\210\344c\210:\237\210:\211\203\326 \345\f@\346\261\210\fA\211\204\310 \321>\347p!\210\202\375 \350\351\3379!\203\355 \352\202\357 99\341U\203\372 \353\202\373 \354#\210*:\206\317\211=.\207" [vm-mail-buffer major-mode this-command match mp data vm-follow-summary-cursor buffer-name error "Folder buffer has been killed." (vm-mode vm-virtual-mode) "No VM folder buffer associated with this buffer" vm-check-for-killed-summary vm-virtual-mode "%s cannot be applied to virtual folders." nil 0 t ((byte-code "\203 \301!\210\301\207" [process vm-imap-end-session] 2)) sort #[(a b) "\3028\302	8\231\203\f \303\207\302	8\3028\231\203 \304\207A@	A@\231\203$ \303\207	A@A@\231\2030 \304\207@	@\231\203: \303\207\304\207" [a b 2 t nil] 3] replay (byte-code "\301\302\303\217\210A\301\207" [mp error-data (byte-code "@\n\306	8\232\204U \203$ \f\203 \307\310\"\210\311!\210\312!\210\313\211\306	8\314\n!\315\316\317\217\210\320!\203M @A@\n\232\203H A\211\2029 \321\322\323\"\210\324\325#\326	@\"\211\203o \327@\"\210\323T\313\207" [mp data source process did-delete imapdrop 2 vm-imap-send-command "CLOSE" vm-imap-read-ok-response vm-imap-end-session nil vm-safe-imapdrop-string error-data (byte-code "\306\307\"\210\310	!\211\204 \311\312\313\"\210\314\n!q\210\315	\316\"\3178\320\n\f\"\211@A@\3218\3178\322	#@=\204O \323\324\325\"\210\204Y \312\326\f\"\210\204c \312\327\f\"\210\306\330\"\207" [imapdrop source process source-list mailbox select-response message "Opening IMAP session to %s..." vm-imap-make-session signal error nil process-buffer vm-parse "\\([^:]+\\):?" 3 vm-imap-select-mailbox 2 vm-imap-clear-invalid-retrieval-entries throw replay t "Can't delete messages in mailbox %s, skipping..." "Mailbox %s is read-only, skipping..." "Expunging messages in %s..." msg-count uid-validity read-write can-delete mp data] 5) ((error (byte-code "A\203 \305\306A\"\210\202 \306\307	\"\210	\nB\310\311!\210@A@\f\232\203+ A\211\202 \312\313\314\"\207" [error-data imapdrop trouble mp source apply message "Couldn't open IMAP session to %s, skipping..." sleep-for 2 throw replay t] 4))) zerop throw replay t vm-imap-get-uid-list 1 rassoc vm-imap-delete-message msg-count uid-alist match delete-count] 5) ((error (byte-code "	B\305\306\307\n!\"\210\310\311!\210\305\312\"\210\310\311!\210\311@8\f\232\203' A\202 \313\314\315\"\207" [imapdrop trouble error-data mp source message "Something signaled: %s" prin1-to-string sleep-for 2 "Skipping rest of mailbox %s..." throw replay t] 4)))] 3) vm-imap-send-command "CLOSE" vm-imap-read-ok-response get-buffer-create "*IMAP Expunge Trouble*" erase-buffer format "%s IMAP message%s expunged.\n\n" zerop "No" 1 "" "s" "VM had problems expunging messages from:\n" "   " "\n" display-buffer message "%s IMAP message%s expunged." "No" "" "s" mailbox uid-alist imapdrop source-list select-response uid-validity read-write can-delete msg-count did-delete vm-imap-ok-to-ask vm-global-block-new-mail delete-count trouble source process vm-imap-retrieved-messages buffer-read-only] 20 "\
Deletes all messages from IMAP mailbox that have already been retrieved
into the current folder.  VM sets the \\Deleted flag on all such messages
on all the relevant IMAP servers and then immediately expunges." nil])
(defalias 'vm-imap-make-session #[(source) "\306\306\211\307	!\n\203 \310\202 \203 \310\202 \311\n\203  \310\202) \203( \310\202) \311\306\211\312\306\211\211\211\211\211\211\211\211\211\211\211 !\313\216\314\315\215.\207" [vm-folder-type source vm-xemacs-mule-p vm-xemacs-file-coding-p source-nopwd-nombox process-buffer nil vm-safe-imapdrop-string binary no-conversion "IMAP" ((byte-code "\203	 \301\302\"\210\303 \207" [process-to-shutdown vm-imap-end-session t vm-tear-down-stunnel-random-data] 3)) end-of-session (byte-code "\306\307\"\211A@\310	8\311	8\312	8\313	8@\314!A\f\315\232\204T 	@\316\232\203> \317B\320CD\204T \321\322!\210\202T 	@\323\232\203T \317E\324CF\204T \321\325!\210\n\204] \321\326\"\210\204f \321\327\"\210\330\331\"\203q \332!\f\204z \321\333\"\210\204\203 \321\334\"\210@\204\215 \321\335\"\210@\336\232\203\304 \f\337\232\204\304 \340AG\"A@\211@\204\304 H\204\273 \341\342I\"\210\343\344\345\"\210\202\304 \346\347\350I\"!@\340AG\"\204\327 A@DGBG\351\347\352C\n#!J\212Jq\210K\206\355 LM\353J!\210\354\355!\210\356 \210\357\360!\203\360N\203\361\202O\203\361\202\362\317\"\210\f\363\232\203+\364\365\nP@&Q\366Q!\203;\367Qp\"\210\202\244\370C\371\372 \373\261\210\347\374\n#c\210B\203k\375 \210\376\377CJD\201a \n\"R\244%Q\202\222E\203\206\201b CJ\201c \201d \n\"$Q\202\222\201b CJ\n$QQ\204\234\343\344\345\"\210\201e \201f !\210`-\201g Q!\210\201h Q!\211S\204\306\201i Q!\210\343\344\345\"\210QT\354\201U !\210\345U\201j Q\201k \"\210\201l Q!\211V\204\356\343\344\345\"\210\354\201W !\210V@W\354\201X !\210VA@X\f\201m \232\203U\201j Q\347\201n \201o !\201o @!#\"\210\201p Q!\204\270\201q A@DG\"G\341\201r I\"\210H\203M\201s \310!\210\343\344\345\"\210\202\270\f\201t \232\203\207\201u \201v !\204m\321\201w !\210\201x \201y \201z \"\201x \201y \201{ \"\201| @\201x \201} \201y @GZ]\201} \"P\345\211\211\211YZ[\\]^_`\201j Q^\"\210\201~ Q!\\\201 \\\201\200 \201\201 #\203\325\321\201\202 ^\"\210\201 \\\201\200 \201\203 #\203\356\201\204 \201\205 ^\"\210\201 \\\201\206 \201\207 #\203\\A@A\211[@[A@{Z\201\210 Z!Z\202\321\201\211 !\210\201\212 \201\213 \201\214 ]_\"\201\215 \201\214 ]`\"ZP!P!QY\201\216 Y!Y\201j QY\345\317$\210\201p Q!\204\202\201q A@DG\"G\341\201\217 I\"\210H\203}\201s \310!\210\343\344\345\"\210.\202\270\f\201\220 \232\203\261S\201\221 =\204\270\341\201\222 !\210H\203\251\201s \310!\210\343\344\345\"\210\202\270\321\201\223 \f\"\210\345TQ)\207" [source source-list host port auth user vm-parse "\\([^:]+\\):?" 2 4 5 6 vm-imapdrop-sans-password-and-mailbox "preauth" "imap-ssl" t "IMAP over SSL" error "vm-stunnel-program must be non-nil to use IMAP over SSL." "imap-ssh" "IMAP over SSH" "vm-ssh-program must be non-nil to use IMAP over SSH." "No host in IMAP maildrop specification, \"%s\"" "No port in IMAP maildrop specification, \"%s\"" string-match "^[0-9]+$" string-to-int "No authentication method in IMAP maildrop specification, \"%s\"" "No user in IMAP maildrop specification, \"%s\"" "No password in IMAP maildrop specification, \"%s\"" "*" "preauth" assoc message "Need password for %s" throw end-of-session nil vm-read-password format "IMAP password for %s: " vm-make-work-buffer "trace of %s session to %s" buffer-disable-undo make-local-variable vm-imap-read-point erase-buffer fboundp set-buffer-file-coding-system binary no-conversion "preauth" run-hook-with-args-until-success vm-imap-session-preauth-hook processp set-process-buffer "starting " " session " current-time-string "\n" "connecting to %s:%s\n" vm-setup-stunnel-random-data-if-needed apply start-process pass source-nopwd-nombox use-ssl session-name vm-stunnel-program use-ssh vm-ssh-program vm-imap-passwords vm-imap-ok-to-ask imapdrop process-buffer folder-type vm-default-folder-type vm-folder-type vm-xemacs-mule-p vm-xemacs-file-coding-p mailbox process vm-stunnel-program-switches greeting process-to-shutdown vm-imap-session-done ooo vm-imap-capabilities vm-imap-auth-methods answer challenge p response secret command opad ipad vm-stunnel-configuration-args open-network-stream "127.0.0.1" vm-setup-ssh-tunnel insert-before-markers "connected\n" process-kill-without-query vm-imap-read-greeting delete-process vm-imap-send-command "CAPABILITY" vm-imap-read-capability-response "login" "LOGIN %s %s" vm-imap-quote-string vm-imap-read-ok-response delete "IMAP password for %s incorrect" sleep-for "cram-md5" vm-imap-auth-method CRAM-MD5 "CRAM-MD5 authentication unsupported by this server" make-string 64 54 92 "AUTHENTICATE CRAM-MD5" 0 vm-imap-read-response vm-imap-response-matches VM NO "server said NO to %s" BAD vm-imap-protocol-error "server said BAD to %s" + atom vm-mime-base64-decode-string "Don't understand AUTHENTICATE response" " " vm-md5-string vm-xor-string vm-md5-raw-string vm-mime-base64-encode-string "IMAP password for %s incorrect" "preauth" preauth "IMAP session was not pre-authenticated" "Don't know how to authenticate using %s"] 9) source-list pass user auth mailbox port host timestamp greeting process-connection-type session-name use-ssh use-ssl coding-system-for-write coding-system-for-read imapdrop ooo process folder-type process-to-shutdown] 22])
(defalias 'vm-imap-end-session #[(process &optional keep-buffer) "\305!\306>\205a \307\310!!\205a \212\310!q\210	?\205` \311\312\"\210\313\314!\210\n\2047 \2047 \315\310!!\210\202L \212\310!q\210\316\317\320 P\313\"\210\321p\322\f#\210)\323\324!\203Z \324\325\326#\202` \327\325\330\326$)\207" [process vm-imap-session-done vm-imap-keep-trace-buffer keep-buffer vm-imap-keep-failed-trace-buffers process-status (open run) buffer-live-p process-buffer vm-imap-send-command "LOGOUT" t vm-imap-read-ok-response kill-buffer rename-buffer "saved " buffer-name vm-keep-some-buffers vm-kept-imap-buffers fboundp add-async-timeout 2 delete-process run-at-time nil] 5])
(defalias 'vm-imap-stat-timer #[(o) "\301H\207" [o 0] 2])
(defalias 'vm-imap-stat-did-report #[(o) "\301H\207" [o 1] 2])
(defalias 'vm-imap-stat-x-box #[(o) "\301H\207" [o 2] 2])
(defalias 'vm-imap-stat-x-currmsg #[(o) "\301H\207" [o 3] 2])
(defalias 'vm-imap-stat-x-maxmsg #[(o) "\301H\207" [o 4] 2])
(defalias 'vm-imap-stat-x-got #[(o) "\301H\207" [o 5] 2])
(defalias 'vm-imap-stat-x-need #[(o) "\301H\207" [o 6] 2])
(defalias 'vm-imap-stat-y-box #[(o) "\301H\207" [o 7] 2])
(defalias 'vm-imap-stat-y-currmsg #[(o) "\301H\207" [o 8] 2])
(defalias 'vm-imap-stat-y-maxmsg #[(o) "\301H\207" [o 9] 2])
(defalias 'vm-imap-stat-y-got #[(o) "\301H\207" [o 10] 2])
(defalias 'vm-imap-stat-y-need #[(o) "\301H\207" [o 11] 2])
(defalias 'vm-set-imap-stat-timer #[(o val) "\302	I\207" [o val 0] 3])
(defalias 'vm-set-imap-stat-did-report #[(o val) "\302	I\207" [o val 1] 3])
(defalias 'vm-set-imap-stat-x-box #[(o val) "\302	I\207" [o val 2] 3])
(defalias 'vm-set-imap-stat-x-currmsg #[(o val) "\302	I\207" [o val 3] 3])
(defalias 'vm-set-imap-stat-x-maxmsg #[(o val) "\302	I\207" [o val 4] 3])
(defalias 'vm-set-imap-stat-x-got #[(o val) "\302	I\207" [o val 5] 3])
(defalias 'vm-set-imap-stat-x-need #[(o val) "\302	I\207" [o val 6] 3])
(defalias 'vm-set-imap-stat-y-box #[(o val) "\302	I\207" [o val 7] 3])
(defalias 'vm-set-imap-stat-y-currmsg #[(o val) "\302	I\207" [o val 8] 3])
(defalias 'vm-set-imap-stat-y-maxmsg #[(o val) "\302	I\207" [o val 9] 3])
(defalias 'vm-set-imap-stat-y-got #[(o val) "\302	I\207" [o val 10] 3])
(defalias 'vm-set-imap-stat-y-need #[(o val) "\302	I\207" [o val 11] 3])
(defalias 'vm-imap-start-status-timer #[nil "\302\303\304\"\304\305\306\307	\306$\310	\"\210	*\207" [timer blob make-vector 12 nil add-timeout 5 vm-imap-report-retrieval-status vm-set-imap-stat-timer] 5])
(defalias 'vm-imap-stop-status-timer #[(status-blob) "\301!\203\n \302\303!\210\304\305!\203 \305\306!!\207\307\306!!\207" [status-blob vm-imap-stat-did-report message "" fboundp disable-timeout vm-imap-stat-timer cancel-timer] 3])
(defalias 'vm-imap-report-retrieval-status #[(o) "\301\302\"\210\303!\203] \304!\305!=\203] \306!\307!=\203] \310\311\306!\312!\304!\313!\203Z \314\315\303!\303!\313!V\203C \316\202D \317\313!\303!\320!=\203U \321\202V \322%\202[ \323%\210\324\304!\"\210\325\306!\"\210\326\312!\"\210\327\303!\"\210\330\313!\"\207" [o vm-set-imap-stat-did-report t vm-imap-stat-x-got vm-imap-stat-x-box vm-imap-stat-y-box vm-imap-stat-x-currmsg vm-imap-stat-y-currmsg message "Retrieving message %d (of %d) from %s, %s..." vm-imap-stat-x-maxmsg vm-imap-stat-x-need format "%d%s of %d%s" "!" "" vm-imap-stat-y-got " (stalled)" "" "post processing" vm-set-imap-stat-y-box vm-set-imap-stat-y-currmsg vm-set-imap-stat-y-maxmsg vm-set-imap-stat-y-got vm-set-imap-stat-y-need] 13])
(defalias 'vm-imap-check-connection #[(process) "\301!\302>\204 \303\304\"\207\305\306!!?\205 \303\307\"\207" [process process-status (open run) error "IMAP connection not open: %s" buffer-live-p process-buffer "IMAP process %s's buffer has been killed"] 3])
(defalias 'vm-imap-send-command #[(process command &optional tag no-tag) "\306!\210db\210	\204 \307\n\206 \310\311\"\210\312\313\314\f\"\203$ \307\315!\210\202) \307\f\316\"\210)`	\2038 \317\320\321\f\"\"\207\317\320\322\n\206A \323\f#\"\207" [process no-tag tag case-fold-search command vm-imap-read-point vm-imap-check-connection insert-before-markers "VM" " " t string-match "^LOGIN" "LOGIN <parameters omitted>\n" "\n" process-send-string format "%s\n" "%s %s\n" "VM"] 6])
(defalias 'vm-imap-select-mailbox #[(process mailbox &optional just-examine) "p\203	 \306\202\n \307\310\211\211\211\211\211\211?\311\211()*+,-.\312/\313\314-0#\"\210	\203\373 \315/!+\316+\317\320#\203M \321\322-\"\210\316+\317\323#\203\\ \324\325-\"\210\316+\326\327\330$\203\232 \331+8A*\316*\332\333#\203\210 *A@\211,A@\331,8{\2024 \316*\334\335#\2034 *A@(\2024 \316+\326\336\335$\203\255 \331+8)\2024 \316+\326\333\337$\203\312 +A@\211,A@b\210\340.!\2024 \316+\317\327\341$\203\333 \310\311\2024 \316+\317\327\342$\203\354 \310\311\2024 \316+\317\327#\2034 \310\211\2048 )\204\324\343!\210\204\f\324\344!\210\f\204\324\345!\210\346)\347\"\f\n(\257.\f\207" [just-examine need-ok can-delete read-write uid-validity msg-count "EXAMINE" "SELECT" nil t vm-imap-send-command format "%s %s" vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to %s" BAD vm-imap-protocol-error "server said BAD to %s" * OK vector 2 UIDVALIDITY atom PERMANENTFLAGS list FLAGS EXISTS read (vector READ-WRITE) (vector READ-ONLY) "FLAGS missing from SELECT responses" "EXISTS missing from SELECT responses" "UIDVALIDITY missing from SELECT responses" vm-imap-scan-list-for-flag "\\Deleted" permanent-flags flags p response tok command imap-buffer process mailbox] 13])
(defalias 'vm-imap-get-uid-list #[(process first last) "\306p\306\211\211\211\211\307\310\311\312 !#\"\210\203\215 \313!\314\n\315\316#\2033 \317\320!\210\314\n\315\321#\203? \322\323!\210\314\n\324\325\326\327%\203 \330\n8A\314	\331\325#\204Z \322\332!\210\nA@\211A@b\210\333!	A@\211A@\3348{\fBB\202 \314\n\315\335#\203 \306\211\204\" \204\230 \306\211B\202\232 .\207" [need-ok p response uid msg-num tok nil t vm-imap-send-command format "FETCH %s:%s (UID)" vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to UID FETCH" BAD vm-imap-protocol-error "server said BAD to UID FETCH" * atom FETCH list 3 UID "expected (UID number) in FETCH response" read 2 OK imap-buffer process first last] 9])
(defalias 'vm-imap-get-flags-list #[(process first last) "\306p\306\211\211\211\211\211\307 \310!\311\312\"##\"\210\203\265 \313!!\314\n\315\316#\2036 \317\320!\210\314\n\315\321#\203B \322\323!\210\314\n\324\325\326\327%\203\247 \330\n8A\314	\331\327#\204] \322\332!\210\nA@\211A@b\210\333 !	A@A\306	\203\234 	@\314\325\"\204\207 \322\334!\210A@\3358{\211B	A\211\204w BB\202! \314\n\315\336#\203! \306\211\204% \204\300 \306\211B\202\302 .	\207" [need-ok p response flags flag msg-num nil t vm-imap-send-command format "FETCH %s:%s (FLAGS)" vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to FLAGS FETCH" BAD vm-imap-protocol-error "server said BAD to FLAGS FETCH" * atom FETCH list 3 FLAGS "expected (FLAGS list) in FETCH response" read "expected atom in FLAGS list in FETCH response" 2 OK tok imap-buffer process first last] 10])
(defalias 'vm-imap-ask-about-large-message #[(process size n) "\306p\307\211\306\211\211\211\211\211\n\f\310\216\212\311\213.\f\207" [end start p list fetch-response response nil t ((byte-code "\203 \301!\210\301\207" [work-buffer kill-buffer] 2)) ((byte-code "\306\307\310	\"\"\210\n\203G \311!\312\313\314#\203 \315\316!\210\312\313\317#\203( \320\321!\210\312\322\323\324\325%\2039 \326\202 \312\313\327#\203 \326\211\204\f \203O \320\330!\210\331 1\332\f8A\312\333\334#\204f \320\335!\210A@\2112A@3\336284\337\340!\2115q\210\341634#\210\342ed\"\210\3435!\210\344 7eb\210\345\346\326\347#\203\255 \350\224b\210\351\32689#\210\352\344 `\"\210\353\307\354	:#!\203\300 \355\207\353\307\356	:#!\203\315 \357\207\360\207" [process n need-ok response fetch-response need-header vm-imap-send-command format "FETCH %d (RFC822.HEADER)" vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to header FETCH" BAD vm-imap-protocol-error "server said BAD to header FETCH" * atom FETCH list nil OK "FETCH OK sent before FETCH response" point-marker 3 RFC822\.HEADER string "expected (RFC822.HEADER string) in FETCH response" 2 generate-new-buffer "*imap-glop*" insert-buffer-substring vm-imap-cleanup-region vm-display-buffer selected-window re-search-forward "^Received:" t 0 vm-reorder-message-headers set-window-point y-or-n-p "Message %d, size = %d, retrieve? " retrieve "Delete message %d from maildrop? " delete skip vm-imap-read-point p start end work-buffer imap-buffer minibuffer-scroll-window vm-visible-headers vm-invisible-header-regexp size] 7)) need-header need-ok imap-buffer work-buffer] 10])
(defalias 'vm-imap-retrieve-to-target #[(process target statblob bodypeek) "\306\307\211\211\211\2117b\210\3108\311\"\210\312\2119:B:\306;\307<;\203m \313=!<\314<\315\316#\203= \317\320!\210\314<\315\321#\203J \322\323!\210\314<\324\325\326\302%\203] <\307\202% \314<\315\327#\203% \307\211;\204* ,\203v \322\330!\210\331 \3328A>\203\234 \314\n\333\334\335$\204\220 \322\336!\210\337\n8\211A@7\202\261 \314\n\340\335#\204\250 \322\341!\210\nA@\211A@7\337	8b\210\331 \3428\307\"\210\3437\f\"\210\344?7\f#\2107b\210\3108\307\"\210?\345=\203!@;\203\371 \346@!\211A?\206\365 \347A8\311\232)\202\n\350@!\203!\212@q\210\351\352 !)\203!`B\353\307?\"\210B\2117b\210\354 \210)\355 c\210\214`\f}\210\356\357?\"\210)\fb\210\360\361 !\210`Sf\362=\204L?\363>\203L\360\364!\210@;\203f\306\307CD\3657\f@\306\311%\210*\202zpE\212@q\210\307F\366E7\f#\210+7\f|\210.\306\207" [vm-imap-read-point p list fetch-response end need-msg t nil vm-set-imap-stat-x-got 0 #[(beg end len) "\205 \304	\nZ\"\210\305\306 \307\246!\205 \310	!\207" [vm-imap-read-point statblob end start vm-set-imap-stat-x-got zerop random 10 vm-imap-report-retrieval-status] 4] vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to message FETCH" BAD vm-imap-protocol-error "server said BAD to message FETCH" * atom FETCH OK "FETCH OK sent before FETCH response" point-marker 3 BODY (vector) string "expected (BODY[] string) in FETCH response" 2 RFC822 "expected (RFC822 string) in FETCH response" vm-set-imap-stat-x-need vm-imap-cleanup-region vm-munge-message-separators babyl file-attributes 7 bufferp zerop buffer-size vm-convert-folder-header vm-skip-past-folder-header vm-leading-message-separator vm-convert-folder-type-headers baremessage insert-before-markers vm-trailing-message-separator 10 (From_-with-Content-Length BellFrom_) "\n" write-region insert-buffer-substring start statblob func after-change-functions need-ok response process bodypeek vm-folder-type target attrs opoint selective-display buffer-file-type b buffer-read-only] 7])
(defalias 'vm-imap-delete-message #[(process n) "\302\303\304	\"\"\210\305!?\205 \306\307!\207" [process n vm-imap-send-command format "STORE %d +FLAGS.SILENT (\\Deleted)" vm-imap-read-ok-response vm-imap-protocol-error "STORE ... +FLAGS.SILENT (\\Deleted) failed"] 5])
(defalias 'vm-imap-get-message-size #[(process n) "\306p\306\211\211\211\307\211\310\311\312\211#\"\210\203~ \313!\314\315\316#\2032 \317\320!\210\314\315\321#\203> \322\323!\210	\203p \314\324\325\326\327%\203p \306\3308A\314\n\331\325#\204_ \322\332!\210\nA@\211A@b\210\333!\202 \314\315\334#\203 \306\211\204! \f.\207" [need-ok need-size p response size tok nil t vm-imap-send-command format "FETCH %d:%d (RFC822.SIZE)" vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to size FETCH" BAD vm-imap-protocol-error "server said BAD to size FETCH" * atom FETCH list 3 RFC822\.SIZE "expected (RFC822.SIZE number) in FETCH response" read OK imap-buffer process n] 9])
(defalias 'vm-imap-read-capability-response #[(process) "\306\211\211\211\307\203\237 \310!\311\f\312\313#\203 \314\315!\210\311\f\312\316#\203* \317\320!\210\311\f\312\321#\2038 \306\211\202 \311\f\322\323#\203\n \fAA\211\203\n \f@\211@\324=\203\225 \212A@b\210\307\325\326\3278\307#A@\330\\*=\203~ \331A@\332\\\3278{\226!	B\202\225 \f@\211@\324=\203\225 \331A@\3278{\226!\nB\fA\211\204H \202\n \n\204\247 	\205\254 \n\237	\237D-\207" [need-ok auth-list cap-list r response process nil t vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to CAPABILITY" BAD vm-imap-protocol-error "server said BAD to CAPABILITY" OK * CAPABILITY atom re-search-forward "AUTH=." 2 6 intern 5 case-fold-search] 6])
(defalias 'vm-imap-read-greeting #[(process) "\302\303	!\304\305\306#\203 \307\202 \304\305\310#\203 \311\202 \302)\207" [response process nil vm-imap-read-response vm-imap-response-matches * OK t PREAUTH preauth] 4])
(defalias 'vm-imap-read-ok-response #[(process) "\304\211\211\204- \305!\306\n\307\"\204 \306\n\310\311#\203% \312\211\211\202 \304\312\211\203\n 	+\207" [done retval response process nil vm-imap-read-response vm-imap-response-matches * VM OK t] 5])
(defalias 'vm-imap-cleanup-region #[(start end) "\304\305 \n	\223*\212b\210`W\203& \306\307\310#\203& \311\312\310\211#\210\202 )\304\211\223\207" [end buffer pos start nil make-marker search-forward "\n" t replace-match "\n"] 4])
(defalias 'vm-imapdrop-sans-password #[(source) "\302\303	\304\"\211@\305A@\306\3078\310\3118\312\3138\314\3158\316\260\f)\207" [source-list source nil vm-parse "\\([^:]+\\):?" ":" ":" 2 ":" 3 ":" 4 ":" 5 ":*"] 13])
(defalias 'vm-imapdrop-sans-password-and-mailbox #[(source) "\302\303	\304\"\211@\305A@\306\3078\310\3118\312\3138\314\260\n)\207" [source-list source nil vm-parse "\\([^:]+\\):?" ":" ":" 2 ":*:" 4 ":" 5 ":*"] 11])
(defalias 'vm-imap-read-response #[(process) "\305\211\211b\210\306\f!\211@\307=\204- \n\204! \305B\211\202	 	\305B\241\210	A\202	 \n+\207" [obj tail list vm-imap-read-point process nil vm-imap-read-object end-of-line] 4])
(defalias 'vm-imap-read-object #[(process &optional skip-eol) "\306\211\211\n\204\372\307\306w\210d`Z\310W\203& `\311!\210\312!\210	b\210\202 \313\314!\2038 \310u\210\315\f?\211\202 \313\316!\203{ \317u\210\320C\211/\3060\321\322\"\2110@\323=\204s 0@\324=\203c \325\326!\210/0\306B\241\210/A/\202J \322+\202 \313\327!\203\214 \317u\210\330\322\211\202 \313\331!\203\317 \317u\210\305C\211/\3060\321\322\"\2110@\324=\204\307 0@\323=\203\267 \325\332!\210/0\306B\241\210/A/\202\236 \322+\202 \313\333!\203\340 \317u\210\334\322\211\202 \313\335!\203Z\317u\210\306\211\211102\321!\2110@\336=\204\325\337!\210\3400A@\31008{!1\321!\2110@\341=\204\325\342!\210\321!\2110@\343=\204/\325\344!\210`2d2Z1W\203G\311!\210\312!\210\202221\\b\210\3452`E\322+\202 \313\346!\203k\317u\210\347\322\211\202 \313\350!\203\255\317u\210``32\n\204\251\351\306w\210`3\313\352!\203\223\322\317u\210\202\237\311!\210\312!\2103b\210\34523E\202z*\202 \313\353!\203\274\325\354`f\"\210\202 ``\355\3564532\n\204\3665\306w\210`3\3134!\203\340\322\202\354\311!\210\312!\2103b\210\33623E\202\310,\202 `6+\207" [token opoint done process skip-eol list nil " 	" 2 vm-imap-check-connection accept-process-output looking-at "\n" (end-of-line) "\\[" 1 vector vm-imap-read-object t close-bracket close-paren vm-imap-protocol-error "unexpected )" "\\]" (close-bracket) "(" "unexpected ]" ")" (close-paren) "{" atom "number expected after {" string-to-int close-brace "} expected" end-of-line "CRLF expected" string "}" (close-brace) "\"" "^\"" "\"" "[ - ]" "unexpected char (%d)" "^ - ()[]{}" "[][ - (){}]" tail obj n-octets start curpoint not-word-regexp not-word-chars vm-imap-read-point] 5])
(defalias 'vm-imap-response-matches #[(response &rest expr) "\303\304\211\305\306\215+\207" [r e case-fold-search t nil done (byte-code "\203	\203@	@\n;\2037 @\304=\203/ \212A@b\210\305\n\3068\307#\3068)=\204\373 \310\311\312\"\210\202\373 \n\247\203b @\313=\203Z \212A@b\210\305\314\n!\3068\307#\3068)=\204\373 \310\311\312\"\210\202\373 \n:\203 \n@@=\204t \310\311\312\"\210\315\316A\nA#\210\202\373 \n\313=\203\224 @\313=\204\373 \310\311\312\"\210\202\373 \n\317=\203\251 @\317=\204\373 \310\311\312\"\210\202\373 \n\320=\203\276 @\320=\204\373 \310\311\312\"\210\202\373 \n\304=\203\323 @\304=\204\373 \310\311\312\"\210\202\373 \n9\203\373 @\313=\203\366 \212A@b\210\305\321\n!\3068\307#\3068)=\204\373 \310\311\312\"\210	AA\211\204 \307\207" [expr response e r string search-forward 2 t throw done nil atom int-to-string apply vm-imap-response-matches vector list symbol-name] 5)] 3])
(defalias 'vm-imap-bail-if-server-says-farewell #[(response) "\301\302\303#\205\f \304\305\306\"\207" [response vm-imap-response-matches * BYE throw end-of-session t] 4])
(defalias 'vm-imap-protocol-error #[(&rest args) "\302\300!\210\303\304\305\306\307	\"C\"\207" [vm-imap-keep-trace-buffer args make-local-variable t signal vm-imap-protocol-error apply format] 5])
(defalias 'vm-imap-scan-list-for-flag #[(list flag) "A\303\304\305\306\215*\207" [list e case-fold-search t nil done (byte-code "\203- @\211@\303=\203& 	A@b\210\304\n\305	8\306#\305	8=\203& \307\310\306\"\210A\211\204 \311\207" [list e flag atom search-forward 2 t throw done nil] 5)] 2])
(defalias 'vm-imap-plist-get #[(list name) "A\303\304\305\306\215*\207" [list e case-fold-search t nil done (byte-code "\2030 @\211@\303=\203( 	A@b\210\304\n\305	8\306#\305	8=\203( \307\310A@\"\210AA\211\204 \311\207" [list e name atom search-forward 2 t throw done nil] 5)] 2])
(defalias 'vm-imap-clear-invalid-retrieval-entries #[(source-nopwd retrieved uid-validity) "\305\211\2030 \306\n@8\232\203) \n@A@\f\232\204) 	\203& 	\nA\241\210\202) A\nA\211\204 *\207" [retrieved prev x source-nopwd uid-validity nil 2] 4])
(defalias 'vm-imap-quote-string #[(string) "\301\302\"\207" [string vm-with-string-as-temp-buffer vm-imap-quote-buffer] 3])
(defalias 'vm-imap-quote-buffer #[nil "eb\210\300c\210\301\302\303\304#\203 \305u\210\306c\210\307u\210\202 db\210\310c\207" ["\"" re-search-forward "[\"\\]" nil t -1 "\\" 1 "\""] 4])
(defalias 'vm-establish-new-folder-imap-session #[(&optional interactive) "\306H\307\211\211\211\211\211\211\211	\310!\203( \311!\210\312\313H!\211\306I\210)\314\313H!\3158\212\316!q\210\317\"\211@A@\3208\3158\3218\322\323!)\320I\210)\321I\210)\324I\210)\f\325I\210)\326I\210)\327I\210).\n\207" [vm-folder-access-data interactive vm-imap-ok-to-ask body-peek can-delete read-write 1 nil processp vm-imap-end-session vm-imap-make-session 0 vm-imap-parse-spec-to-list 3 process-buffer vm-imap-select-mailbox 2 4 vm-imap-capability IMAP4REV1 5 6 7 8 permanent-flags uid-validity mailbox-count select mailbox process val] 11])
(defalias 'vm-imap-get-uid-data #[nil "\305H\306=\203 \307\310\306\"\207\307\310\306\"\311H\305H\312\212\313!q\210\314\311\n#\211\203> \315	@A\f\"	@@L\210	A\211\204, \f-\207" [vm-folder-access-data list mailbox-count process there 4 0 make-vector 67 1 nil process-buffer vm-imap-get-uid-list intern] 5])
(defalias 'vm-imap-get-message-flags #[(process m &optional norecord) "\306\211\211\211\211\211\212\307)!q\210\310)\311\312*\211+\313H\314H)\"\"\210\315\205\363 \316)!\317	\320\321#\203< \322\323!\210\317	\320\324#\203H \325\326!\210\317	\327\330#\203T \325\331!\210\317	\320\332#\203b \306\211\202( \317	\327\333\334\335%\203' \313	\233\211@\336\337\"\211A\211\203\344 @\211@\333=\203\335 \fA@\340\f8{\227\211\341\230\203\243 \342*\315,#\210\202\335 \n\343\230\203\264 \344*\315,#\210\202\335 \n\345\230\203\317 \346*\306,#\210\347*\306,#\210\315\202\335 \n\350\230\203\335 \347*\315,#\210A\211\204 \204' \346*\315,#\210\202' .\207" [saw-seen response flag r p need-ok nil process-buffer vm-imap-send-command format "UID FETCH %s (FLAGS)" 3 23 t vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to UID FETCH (FLAGS)" BAD vm-imap-protocol-error "server said BAD to UID FETCH (FLAGS)" * BYE "server said BYE to UID FETCH (FLAGS)" OK atom FETCH list vm-imap-plist-get "FLAGS" 2 "\\answered" vm-set-replied-flag "\\deleted" vm-set-deleted-flag "\\seen" vm-set-unread-flag vm-set-new-flag "\\recent" process m message norecord] 7])
(defalias 'vm-imap-store-message-flags #[(process m perm-flags) "\306\211\211\212\307!q\210\f\211\310H\311H)\203% \312(\313\"\203% \314\315!	B\f\211\310H\316H)\204> \312(\317\"\203> \314\320!	B\f\211\310H\310H)\203W \312(\321\"\203W \314\322!	B\323\324\325\f\211\326H\327H)	\203k 	\202l \330#\"\210\331\n\203\253 \332!\333\334\335#\203\205 \336\337!\210\333\334\340#\203\221 \341\342!\210\333\343\344#\203\235 \341\345!\210\333\334\346#\203q \306\211\204u \f\306)\211\311H\347)I.\207" [response flags need-ok process m message nil process-buffer 2 4 vm-imap-scan-list-for-flag "\\Answered" intern "\\Answered" 1 "\\Seen" "\\Seen" "\\Deleted" "\\Deleted" vm-imap-send-command format "UID STORE %s FLAGS %s" 3 23 "()" t vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to UID FETCH (FLAGS)" BAD vm-imap-protocol-error "server said BAD to UID FETCH (FLAGS)" * BYE "server said BYE to UID FETCH (FLAGS)" OK 5 perm-flags flag] 7])
(defalias 'vm-imap-save-message #[(process m mailbox) "\306\211\211\211\211\211*\307H\310H)\203 \311\312!\nB\211*\307H\313H)\204. \311\314!\nB\212\211*\313H\315HJ)\211*\313H\316H)q\210\214~\210\211*\317H\313H)\211*\317H\310H){*\212\320+!q\210\306\321\322\217\210\323+\324\325\326,!\n\203x \n\202y \327G$\"\210\330\203\272 \331+!\332	\333\334#\203\225 \335\336!\210\332	\333\337#\203\241 \340\341!\210\332	\342\343#\203\255 \340\344!\210\332	\345\"\203\200 \306\211\204\204 \323+\306\330$\210\330\f\205 \331+!\332	\333\334#\203\331 \335\346!\210\332	\333\337#\203\345 \340\347!\210\332	\342\343#\203\361 \340\350!\210\332	\333\351#\203\304 \306\211\204\310 \306.\207" [string response flags need-plus need-ok m nil 2 4 intern "\\Answered" 1 "\\Seen" 5 9 0 process-buffer (vm-imap-create-mailbox process mailbox) ((error)) vm-imap-send-command format "APPEND %s %s {%d}" vm-imap-quote-string "()" t vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to APPEND command" BAD vm-imap-protocol-error "server said BAD to APPEND command" * BYE "server said BYE to APPEND command" + "server said NO to APPEND data" "server said BAD to APPEND data" "server said BYE to APPEND data" OK message process mailbox] 8])
(defalias 'vm-imap-get-synchronization-data #[nil "\306\307\310\"\311 \312H\313H\314\211\211\211\203l 	@\211\315H\316H)\203e 	@\211\315H\317H)\f\232\203e \320	@\211\315H\316H)\"	@L\210\321\320	@\211\315H\316H)\"!\204e 	@\nB	A\211\204 \322\323\"\210\n.D\207" [vm-folder-access-data mp expunge-list retrieve-list uid-validity process make-vector 67 0 vm-imap-get-uid-data 1 2 nil 3 23 24 intern boundp mapatoms #[(sym) "\304\305\306!	\"!?\205  \307\306!\n\"?\205  \306!JBB\211\207" [sym here vm-imap-retrieved-messages retrieve-list boundp intern symbol-name assoc] 4] there here vm-message-list message] 8])
(defalias 'vm-imap-synchronize-folder #[(&optional interactive do-remote-expunges do-local-expunges do-retrieves do-attributes) "\203\f 	\203\f \306\307!\210\n\206 \310!??\205\203\203 \311 \210\312 \211@\fA@/0\313H1\3132\31430\315H40\316H5\3174!60\320H7\314\21189\314\211:;p<\203\f\203\f\212\321 deZV\314\211=>\211?\203\212 \322 e\314\223\211>\203\212 \322 d\314\223=\323\216~\210db\210\324\325\326\217\2103\203\240 \3273!\210\314@\330\331 A\"\210BTB\332 \210\311\333!\2119:89\2039@8@@C\211D\334H\335CI\210*9@5C\211D\334H\336CI\210*\314\337\340\217\2109@\333C\211D\341H\316CI\210*9A98A8\202\275 -E\203<F0\342HG\2119\203;9@\211D\341H\343H)\2032\314\344\345\217\2109A\2119\204*H\203H\346\333\211/#\210I\203J\2030\313H1\3471!\203m\3501!\351>\203m\3521!\210\353\354J\"K\355 \210\353\356K\"J):.\207" [do-retrieves vm-block-new-mail vm-global-block-new-mail interactive sync-data retrieve-list error "Can't get new mail until you save this folder." vm-establish-new-folder-imap-session vm-assimilate-new-messages vm-imap-get-synchronization-data 1 nil 0 2 vm-safe-imapdrop-string 7 buffer-size make-marker ((byte-code "~\210\203 	\n}\210	\303\211\223\210\n\303\211\223\210\303\207" [#1=#:vm-sr-clip #2=#:vm-sr-min #3=#:vm-sr-max nil] 3)) error-data (byte-code "\212\306!q\210\307 \310	\n\"\210\311	G\"\210\f\203b \312	\"\210\313\f@A\"\314	\"\210\203G \315\316\317\f@A\"\"\210\320	\321$\210\202Y \315\316\322\f@A\"\"\210\320	\323$\210\fAT\202 )\323\207" [process statblob safe-imapdrop retrieve-list r-list n process-buffer vm-imap-start-status-timer vm-set-imap-stat-x-box vm-set-imap-stat-x-maxmsg vm-set-imap-stat-x-currmsg vm-imap-get-message-size vm-set-imap-stat-x-need vm-imap-send-command format "FETCH %s (BODY.PEEK[])" vm-imap-retrieve-to-target t "FETCH %s (RFC822.PEEK)" nil message-size use-body-peek folder-buffer] 5) ((error (message "Retrieval from %s signaled: %s" safe-imapdrop error-data)) (quit (message "Quit received during retrieval from %s" safe-imapdrop))) vm-imap-stop-status-timer intern buffer-name vm-update-summary-and-mode-line t 3 23 24 (byte-code "\302	@\303#\207" [process mp vm-imap-get-message-flags t] 4) ((error)) 4 8 5 (byte-code "\303	@\n#\207" [process mp perm-flags vm-imap-store-message-flags] 4) ((error)) vm-expunge-folder processp process-status (open run) vm-imap-end-session mapcar #[(x) "@A	\302F\207" [x imapdrop uid] 4] vm-expunge-imap-messages #[(x) "@A@B\207" [x] 2] local-expunge-list vm-folder-access-data process n statblob imapdrop uid-validity safe-imapdrop use-body-peek r-list mp got-some message-size folder-buffer #3# #2# #1# vm-spooled-mail-waiting vm-buffers-needing-display-update vm-modification-counter val message do-attributes vm-message-list perm-flags do-local-expunges do-remote-expunges vm-imap-messages-to-expunge vm-imap-retrieved-messages] 5])
(defalias 'vm-imap-folder-check-for-mail #[(&optional interactive) "\206 \304	!??\205 \305 @\306\307H!\210\n)\207" [vm-global-block-new-mail interactive result vm-folder-access-data vm-establish-new-folder-imap-session vm-imap-get-synchronization-data vm-imap-end-session 1] 3])
(defalias 'vm-imap-find-spec-for-buffer #[(buffer) "\304	\204# \n\203# \305\306\n@!!=\203 \307\211\202 \nA\202 \n\205) \n@*\207" [vm-imap-server-list done list buffer nil vm-get-file-buffer vm-imap-make-filename-for-spec t] 5])
(defalias 'vm-imap-make-filename-for-spec #[(spec) "\305\211\306\n!\307\n!\310\311	P\206 \f\206 \312\313!\"*\207" [list md5 spec vm-imap-folder-cache-directory vm-folder-directory nil vm-imap-normalize-spec vm-md5-string expand-file-name "imap-cache-" getenv "HOME"] 4])
(defalias 'vm-imap-normalize-spec #[(spec) "\302\303	!\304!\305\240\210\306\240\210AA\307\240\210\310\233\311\240\210\312\313\314#\211)\207" [list spec nil vm-imap-parse-spec-to-list vm-last "*" "imap" "*" 4 "*" mapconcat identity ":"] 5])
(defalias 'vm-imap-parse-spec-to-list #[(spec) "\301\302\303\304$\207" [spec vm-parse "\\([^:]+\\):?" 1 6] 5])
(defalias 'vm-imap-spec-list-to-host-alist #[(spec-list) "\302	\203 \303	@!A@	@BB	A\211\204 )\207" [host-alist spec-list nil vm-imap-parse-spec-to-list] 3])
(defalias 'vm-read-imap-folder-name #[(prompt spec-list selectable-only) "\306\211\211\211\211\211\307\310!	\204 \311\312!\210	A\203+ \313\314	\306\307$\202. 	@@\315	\"A\316!\211\205F \317\"\320!\210\306\321\")\322!\323\233\f\240\210\324\325\326#.\207" [spec-list host-alist vm-imap-ok-to-ask list mailbox process nil t vm-imap-spec-list-to-host-alist error "No known IMAP servers.  Please set vm-imap-server-list." completing-read "IMAP server: " assoc vm-imap-make-session vm-imap-mailbox-list vm-imap-end-session vm-read-string vm-imap-parse-spec-to-list 3 mapconcat identity ":" spec c-list host selectable-only use-dialog-box prompt] 10 "\
Read an IMAP server and mailbox, return an IMAP mailbox spec."])
(defalias 'vm-imap-directory-separator #[(process ref) "\306\211\211\211\211\211\307!\210\212\310!q\210\311\312\313\314 !\"\"\210\315\203\201 \316!\317	\320\321#\203; \322\323!\210\317	\320\324#\203G \325\326!\210\317	\320\327#\203U \306\211\202' \317	\330\331\332\333%\203q \334	\233\211@\211A@\3358{\202& \317	\330\331\332$\203& \325\336!\210\202& \f.\207" [need-ok response r p sep c-list nil vm-imap-check-connection process-buffer vm-imap-send-command format "LIST %s \"\"" vm-imap-quote-string t vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to LIST" BAD vm-imap-protocol-error "server said BAD to LIST" OK * LIST list string 3 2 "unexpedcted LIST response" process ref] 7])
(defalias 'vm-imap-mailbox-list #[(process selectable-only) "\306\211\211\211\211\307!\210\212\310!q\210\311\312\"\210\313\203\214 \314!\315	\316\317#\203/ \320\321!\210\315	\316\322#\203; \323\324!\210\315	\325\326#\203G \323\327!\210\315	\316\330#\203U \306\211\202 \315	\325\331\332$\203 	AA\211@ \203q \333\334\"\204 \335	\233\211@\211@\336>\203 A@\3378{\fB\202 \f.\207" [need-ok response r p c-list process nil vm-imap-check-connection process-buffer vm-imap-send-command "LIST \"\" \"*\"" t vm-imap-read-response vm-imap-response-matches VM NO error "server said NO to LIST" BAD vm-imap-protocol-error "server said BAD to LIST" * BYE "server said BYE to LIST" OK LIST list vm-imap-scan-list-for-flag "\\Noselect" 4 (atom string) 2 selectable-only] 6])
(defalias 'vm-imap-read-boolean-response #[(process) "\304\305\211\n\203N \306!\210\307!\310\311\312#\203! \305\304\202 \310\311\313#\2030 \305\211\202 \310\314\315#\203? \316\317!\210\202 \310\311\320#\203 \316\321!\210\202 	+\207" [response retval need-ok process t nil vm-imap-check-connection vm-imap-read-response vm-imap-response-matches VM OK NO * BYE vm-imap-protocol-error "server said BYE" BAD "server said BAD"] 5])
(defalias 'vm-imap-create-mailbox #[(process mailbox &optional dont-create-parent-directories) "\2048 \306\211\211\211\307\310\"\311!\312\313\n	#\2037 	\312\225O\314\f\315#\210\316!\210\312\225\202 ,\317\320\321\322!\"\"\210\316!?\205O \323\324\"\207" [dont-create-parent-directories i sep-regexp sep dir process nil vm-imap-directory-separator "" regexp-quote 0 string-match vm-imap-create-mailbox t vm-imap-read-boolean-response vm-imap-send-command format "CREATE %s" vm-imap-quote-string error "IMAP CREATE of %s failed" mailbox] 6])
(defalias 'vm-imap-delete-mailbox #[(process mailbox) "\302\303\304\305	!\"\"\210\306!?\205 \307\310	\"\207" [process mailbox vm-imap-send-command format "DELETE %s" vm-imap-quote-string vm-imap-read-boolean-response error "IMAP DELETE of %s failed"] 6])
(defalias 'vm-imap-rename-mailbox #[(process source dest) "\303\304\305\306	!\306\n!#\"\210\307!?\205 \310\311	\n#\207" [process source dest vm-imap-send-command format "RENAME %s %s" vm-imap-quote-string vm-imap-read-boolean-response error "IMAP RENAME of %s to %s failed"] 7])
(defalias 'vm-create-imap-folder #[(folder) "\304\305\211\212\306!\211\204 \307\310\311!\"\210\312	!q\210\313\314!8\315	\"\210\316\317\311!\",\207" [mailbox process vm-imap-ok-to-ask folder t nil vm-imap-make-session error "Couldn't open IMAP session for %s" vm-safe-imapdrop-string process-buffer 3 vm-imap-parse-spec-to-list vm-imap-create-mailbox message "Folder %s created"] 5 "\
Create a folder on an IMAP server.
First argument FOLDER is read from the minibuffer if called
interactively.  Non-interactive callers must provide an IMAP
maildrop specification for the folder as described in the
documentation for `vm-spool-files'." (save-excursion (vm-session-initialization) (vm-check-for-killed-folder) (vm-select-folder-buffer-if-possible) (let ((this-command this-command) (last-command last-command)) (list (vm-read-imap-folder-name "Create IMAP folder: " vm-imap-server-list nil))))])
(defalias 'vm-delete-imap-folder #[(folder) "\304\305\211\306!\211\204 \307\310\311!\"\210\212\312	!q\210\313\314!8\315	\"\210\316\317\311!\",\207" [mailbox process vm-imap-ok-to-ask folder t nil vm-imap-make-session error "Couldn't open IMAP session for %s" vm-safe-imapdrop-string process-buffer 3 vm-imap-parse-spec-to-list vm-imap-delete-mailbox message "Folder %s deleted"] 5 "\
Delete a folder on an IMAP server.
First argument FOLDER is read from the minibuffer if called
interactively.  Non-interactive callers must provide an IMAP
maildrop specification for the folder as described in the
documentation for `vm-spool-files'." (save-excursion (vm-session-initialization) (vm-check-for-killed-folder) (vm-select-folder-buffer-if-possible) (let ((this-command this-command) (last-command last-command)) (list (vm-read-imap-folder-name "Delete IMAP folder: " vm-imap-server-list nil))))])
(defalias 'vm-rename-imap-folder #[(source dest) "\306\307\211\211\310\f!\211\204 \311\312\313\f!\"\210\212\314\n!q\210\315\316\f!8\315\316!8\317\n	#\210\320\321\313\f!\313!#-\207" [mailbox-dest mailbox-source process vm-imap-ok-to-ask source dest t nil vm-imap-make-session error "Couldn't open IMAP session for %s" vm-safe-imapdrop-string process-buffer 3 vm-imap-parse-spec-to-list vm-imap-rename-mailbox message "Folder %s renamed to %s"] 6 "\
Rename a folder on an IMAP server.
Argument SOURCE and DEST are read from the minibuffer if called
interactively.  Non-interactive callers must provide full IMAP
maildrop specifications for SOURCE and DEST as described in the
documentation for `vm-spool-files'." (save-excursion (vm-session-initialization) (vm-check-for-killed-folder) (vm-select-folder-buffer-if-possible) (let ((this-command this-command) (last-command last-command) source dest) (setq source (vm-read-imap-folder-name "Rename IMAP folder: " vm-imap-server-list t)) (setq dest (vm-read-imap-folder-name (format "Rename %s to: " (vm-safe-imapdrop-string source)) (list source) nil)) (list source dest)))])
(provide 'vm-imap)
