MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 18.117.158.174
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/gnus/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/gnus/nnmail.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:21 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/gnus/nnmail.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!\204
\302\301\303\304B\"\210\305\306!\210\305\307!\210\305\310!\210\305\311!\210\305\312!\210\305\313!\210\305\314!\210\315\316\317\"\210\315\320\317\"\210\321\322\323\324\325\306%\210\321\326\323\327\325\322%\210\321\330\323\331\325\322%\210\321\332\323\333\325\322%\210\321\334\323\335\325\322%\210\321\336\323\337\325\340\325\322&\210\321\341\323\342\325\322%\210\321\343\323\344\325\322%\210\321\345\323\346\325\322%\210\347\350\351\352\325\334\353\354&\210\347\355\356\357\325\334\353\360&\210\347\361\323\362\363\364\325\334\353\365&	\210\347\366\323\367\363\364\325\334\353\370&	\210\347\371\323\372\325\343\325\345\353\360&	\210\347\373\323\374\325\336\353\360&\210\347\375\376\377\325\336\353\201@&\210\347\201A\201B\201C\325\341\353\201D&\210\347\201E\323\201F\325\341\353\201G&\210\347\201H\201I\201J\363\201K\325\341\353\201L&	\210\347\201M\323\201N\363\364\325\341\353\201O&	\210\347\201P\323\201Q\325\322\353\360&\210\201R\201S\201T\201U#\210\347\201V\323\201W\325\343\353\360&\210\347\201X\323\201Y\363\201K\325\343\353\360&	\210\347\201Z\201[\201\\\325\336\353\201]&\210\347\201^\201_\201`\325\336\353\201a&\210\347\201b\201c\201d\325\330\353\201e&\210\347\201f\323\201g\325\330\353\201e&\210\347\201h\323\201i\325\330\353\201e&\210\347\201j\323\201k\325\330\353\201e&\210\347\201l\323\201m\325\330\353\201n&\210\347\201o\323\201p\325\326\353\201e&\210\347\201q\323\201r\325\326\353\201e&\210\347\201s\323\201t\325\334\353\201e&\210\347\201u\323\201v\363\364\325\322\353\201e&	\210\347\201w\201x\201y\325\345\353\201z&\210\201{\201|\201}\201~\201\201\200\201\201\201\202\201\203\201\204\201\205\201\206\201\207\201\210\201\211\201\212\201\213\201\214\201\215\201\216\201\217\201\220&\210\201{\201\221\201|\201\222\201\223\201\224\353\201\225&\210\347\201\221\201\226\201\227\325\334\353\201\221&\210\347\201\230\201\231\201\232\325\334\353\201\233&\210\347\201\234\201\235\201\236\325\332\353\201\237&\210\347\201\240\201\241\201\242\325\332\325\336\353\201\243&	\210\347\201\244\201\245\201\246\325\332\353\201\247&\210\347\201\250\201\251\201\252\363\201\253\325\322\353\201\254&	\210\347\201\255\201\256\201\257\363\201K\325\322\353\201@&	\210\347\201\260\323\201\261\363\364\325\322\353\201\262&	\210\347\201\263\323\201\264\363\364\325\322\353\360&	\210\347\201\265\323\201\266\363\364\325\322\353\360&	\210\347\201\267\356\201\270\363\364\325\322\353\360&	\207" [fboundp declare-function defalias macro #[(&rest r) "\300\207" [nil] 1] require gnus nnheader message gnus-util mail-source mm-util gnus-int autoload gnus-add-buffer "gnus" gnus-kill-buffer custom-declare-group nnmail nil "Reading mail with Gnus." :group nnmail-retrieve "Retrieving new mail." nnmail-prepare "Preparing (or mangling) new mail after retrieval." nnmail-duplicate "Handling of duplicate mail messages." nnmail-split "Organizing the incoming mail in folders." nnmail-files "Mail files." gnus-files nnmail-expire "Expiring old mail." nnmail-procmail "Interfacing with procmail and other mail agents." nnmail-various "Various mail options." custom-declare-variable nnmail-split-methods '(("mail.misc" #1="")) "*Incoming mail will be split according to this variable.\n\nIf you'd like, for instance, one mail group for mail from the\n\"4ad-l\" mailing list, one group for junk mail and one for everything\nelse, you could do something like this:\n\n (setq nnmail-split-methods\n       '((\"mail.4ad\" \"From:.*4ad\")\n	 (\"mail.junk\" \"From:.*Lars\\\\|Subject:.*buy\")\n	 (\"mail.misc\" \"\")))\n\nAs you can see, this variable is a list of lists, where the first\nelement in each \"rule\" is the name of the group (which, by the way,\ndoes not have to be called anything beginning with \"mail\",\n\"yonka.zow\" is a fine, fine name), and the second is a regexp that\nnnmail will try to match on the header to find a fit.\n\nThe second element can also be a function.  In that case, it will be\ncalled narrowed to the headers with the first element of the rule as\nthe argument.  It should return a non-nil value if it thinks that the\nmail belongs in that group.\n\nThe last element should always have \"\" as the regexp.\n\nThis variable can also have a function as its value, and it can\nalso have a fancy split method as its value.  See\n`nnmail-split-fancy' for an explanation of that syntax." :type (choice (repeat :tag "Alist" (group (string :tag "Name") (choice regexp function))) (function-item nnmail-split-fancy) (function :tag "Other")) nnmail-crosspost t "If non-nil, do crossposting if several split methods match the mail.\nIf nil, the first match found will be used." boolean nnmail-split-fancy-with-parent-ignore-groups "Regexp that matches group names to be ignored when applying `nnmail-split-fancy-with-parent'.\nThis can also be a list of regexps." :version "22.1" (choice (const :tag "none" nil) (regexp :value ".*") (repeat :value (".*") regexp)) nnmail-cache-ignore-groups "Regexp that matches group names to be ignored when inserting message ids into the cache (`nnmail-cache-insert').\nThis can also be a list of regexps." (choice (const :tag "none" nil) (regexp :value ".*") (repeat :value (".*") regexp)) nnmail-keep-last-article "If non-nil, nnmail will never delete/move a group's last article.\nIt can be marked expirable, so it will be deleted when it is no longer last.\n\nYou may need to set this variable if other programs are putting\nnew mail into folder numbers that Gnus has marked as expired." nnmail-use-long-file-names "If non-nil the mail backends will use long file and directory names.\nIf nil, groups like \"mail.misc\" will end up in directories like\n\"mail/misc/\"." nnmail-default-file-modes 384 "Set the mode bits of all new mail files to this integer." integer nnmail-expiry-wait 7 "*Expirable articles that are older than this will be expired.\nThis variable can either be a number (which will be interpreted as a\nnumber of days) -- this doesn't have to be an integer.  This variable\ncan also be `immediate' and `never'." (choice (const immediate) (number :tag "days") (const never)) nnmail-expiry-wait-function "Variable that holds function to specify how old articles should be before they are expired.\nThe function will be called with the name of the group that the expiry\nis to be performed in, and it should return an integer that says how\nmany days an article can be stored before it is considered \"old\".\nIt can also return the values `never' and `immediate'.\n\nE.g.:\n\n(setq nnmail-expiry-wait-function\n      (lambda (newsgroup)\n	(cond ((string-match \"private\" newsgroup) 31)\n	      ((string-match \"junk\" newsgroup) 1)\n	      ((string-match \"important\" newsgroup) 'never)\n	      (t 7))))" (choice (const :tag "nnmail-expiry-wait" nil) (function :format "%v" nnmail-)) nnmail-expiry-target 'delete "*Variable that says where expired messages should end up.\nThe default value is `delete' (which says to delete the messages),\nbut it can also be a string or a function.  If it is a string, expired\nmessages end up in that group.  If it is a function, the function is\ncalled in a buffer narrowed to the message in question.  The function\nreceives one argument, the name of the group the message comes from.\nThe return value should be `delete' or a group name (a string)." "21.1" (choice (const delete) function string) nnmail-fancy-expiry-targets "Determine expiry target based on articles using fancy techniques.\n\nThis is a list of (\"HEADER\" \"REGEXP\" \"TARGET\") entries.  If\n`nnmail-expiry-target' is set to the function\n`nnmail-fancy-expiry-target' and HEADER of the article matches REGEXP,\nthe message will be expired to a group determined by invoking\n`format-time-string' with TARGET used as the format string and the\ntime extracted from the articles' Date header (if missing the current\ntime is used).\n\nIn the special cases that HEADER is the symbol `to-from', the regexp\nwill try to match against both the From and the To header.\n\nExample:\n\n(setq nnmail-fancy-expiry-targets\n      '((to-from \"boss\" \"nnfolder:Work\")\n	(\"Subject\" \"IMPORTANT\" \"nnfolder:IMPORTANT.%Y.%b\")\n	(\"from\" \".*\" \"nnfolder:Archive-%Y\")))\n\nIn this case, articles containing the string \"boss\" in the To or the\nFrom header will be expired to the group \"nnfolder:Work\";\narticles containing the string \"IMPORTANT\" in the Subject header will\nbe expired to the group \"nnfolder:IMPORTANT.YYYY.MMM\"; and\neverything else will be expired to \"nnfolder:Archive-YYYY\"." (repeat (list (choice :tag "Match against" (string :tag "Header") (const to-from)) regexp (string :tag "Target group format string"))) nnmail-cache-accepted-message-ids "If non-nil, put Message-IDs of Gcc'd articles into the duplicate cache.\nIf non-nil, also update the cache when copy or move articles." make-obsolete-variable nnmail-spool-file mail-sources "Gnus 5.9 (Emacs 22.1)" nnmail-resplit-incoming "*If non-nil, re-split incoming procmail sorted mail." nnmail-scan-directory-mail-source-once "*If non-nil, scan all incoming procmail sorted mails once.\nIt scans low-level sorted spools even when not required." nnmail-delete-file-function 'delete-file "Function called to delete files in some mail backends." function nnmail-crosspost-link-function (if (string-match "windows-nt" (symbol-name system-type)) 'copy-file 'add-name-to-file) "*Function called to create a copy of a file.\nThis is `add-name-to-file' by default, which means that crossposts\nwill use hard links.  If your file system doesn't allow hard\nlinks, you could set this variable to `copy-file' instead." (radio (function-item add-name-to-file) (function-item copy-file) (function :tag "Other")) nnmail-read-incoming-hook (if (eq system-type 'windows-nt) '(nnheader-ms-strip-cr) nil) "*Hook that will be run after the incoming mail has been transferred.\nThe incoming mail is moved from the specified spool file (which normally is\nsomething like \"/usr/spool/mail/$user\") to the user's home\ndirectory.  This hook is called after the incoming mail box has been\nemptied, and can be used to call any mail box programs you have\nrunning (\"xwatch\", etc.)\n\nE.g.:\n\n(add-hook 'nnmail-read-incoming-hook\n	  (lambda ()\n	    (call-process \"/local/bin/mailsend\" nil nil nil\n			  \"read\"\n			  ;; The incoming mail box file.\n			  (expand-file-name (user-login-name)\n					    rmail-spool-directory))))\n\nIf you have xwatch running, this will alert it that mail has been\nread.\n\nIf you use `display-time', you could use something like this:\n\n(add-hook 'nnmail-read-incoming-hook\n	  (lambda ()\n	    ;; Update the displayed time, since that will clear out\n	    ;; the flag that says you have mail.\n	    (when (eq (process-status \"display-time\") 'run)\n	      (display-time-filter display-time-process \"\"))))" hook nnmail-prepare-incoming-hook "Hook called before treating incoming mail.\nThe hook is run in a buffer with all the new, incoming mail." nnmail-prepare-incoming-header-hook "Hook called narrowed to the headers of each message.\nThis can be used to remove excessive spaces (and stuff like\nthat) from the headers before splitting and saving the messages." nnmail-prepare-incoming-message-hook "Hook called narrowed to each message." nnmail-list-identifiers "Regexp that matches list identifiers to be removed.\nThis can also be a list of regexps." (choice (const :tag "none" nil) (regexp :value ".*") (repeat :value (".*") regexp)) nnmail-pre-get-new-mail-hook "Hook called just before starting to handle new incoming mail." nnmail-post-get-new-mail-hook "Hook called just after finishing handling new incoming mail." nnmail-split-hook "Hook called before deciding where to split an article.\nThe functions in this hook are free to modify the buffer\ncontents in any way they choose -- the buffer contents are\ndiscarded after running the split process." nnmail-spool-hook "*A hook called when a new article is spooled." nnmail-large-newsgroup 50 "*The number of articles which indicates a large newsgroup or nil.\nIf the number of articles is greater than the value, verbose\nmessages will be shown to indicate the current status." (choice (const :tag "infinite" nil) (number :tag "count")) define-widget nnmail-lazy default "Base widget for recursive datastructures.\n\nThis is copy of the `lazy' widget in Emacs 22.1 provided for compatibility." :format "%{%t%}: %v" :convert-widget widget-value-convert-widget :value-create #[(widget) "\303\304\"\303\305\"\306\307\310\311	!\n#C#*\207" [widget type value widget-get :value :type widget-put :children widget-create-child-value widget-convert] 7] :value-delete widget-children-value-delete :value-get #[(widget) "\301\302\303\"@!\207" [widget widget-value widget-get :children] 4] :value-inline #[(widget) "\301\302\303\"@\304\"\207" [widget widget-apply widget-get :children :value-inline] 4] :default-get #[(widget) "\301\302\303\304\"!!\207" [widget widget-default-get widget-convert widget-get :type] 5] :match #[(widget value) "\302\303\304\305\"!\306	#\207" [widget value widget-apply widget-convert widget-get :type :match] 5] :validate #[(widget) "\301\302\303\"@\304\"\207" [widget widget-apply widget-get :children :validate] 4] nnmail-split-fancy "Widget for customizing splits in the variable of the same name." :tag "Split" (menu-choice :value (any ".*value.*" "misc") :tag "Type" (string :tag "Destination") (list :tag "Use first match (|)" :value (|) (const :format #1# |) (editable-list :inline t nnmail-split-fancy)) (list :tag "Use all matches (&)" :value (&) (const :format #1# &) (editable-list :inline t nnmail-split-fancy)) (list :tag "Function with fixed arguments (:)" :value (:) (const :format #1# :value :) function (editable-list :inline t (sexp :tag "Arg"))) (list :tag "Function with split arguments (!)" :value (!) (const :format #1# !) function (editable-list :inline t nnmail-split-fancy)) (list :tag "Field match" (choice :tag "Field" regexp symbol) (choice :tag "Match" regexp (symbol :value mail)) (repeat :inline t :tag "Restrictions" (group :inline t (const :format #1# -) regexp)) nnmail-split-fancy) (const :tag "Junk (delete mail)" junk)) "mail.misc" "Incoming mail can be split according to this fancy variable.\nTo enable this, set `nnmail-split-methods' to `nnmail-split-fancy'.\n\nThe format of this variable is SPLIT, where SPLIT can be one of\nthe following:\n\nGROUP: Mail will be stored in GROUP (a string).\n\n(FIELD VALUE [- RESTRICT [- RESTRICT [...]]] SPLIT): If the message\n  field FIELD (a regexp) contains VALUE (a regexp), store the messages\n  as specified by SPLIT.  If RESTRICT (a regexp) matches some string\n  after FIELD and before the end of the matched VALUE, return nil,\n  otherwise process SPLIT.  Multiple RESTRICTs add up, further\n  restricting the possibility of processing SPLIT.\n\n(| SPLIT...): Process each SPLIT expression until one of them matches.\n  A SPLIT expression is said to match if it will cause the mail\n  message to be stored in one or more groups.\n\n(& SPLIT...): Process each SPLIT expression.\n\n(: FUNCTION optional args): Call FUNCTION with the optional args, in\n  the buffer containing the message headers.  The return value FUNCTION\n  should be a split, which is then recursively processed.\n\n(! FUNCTION SPLIT): Call FUNCTION with the result of SPLIT.  The\n  return value FUNCTION should be a split, which is then recursively\n  processed.\n\njunk: Mail will be deleted.  Use with care!  Do not submerge in water!\n  Example:\n  (setq nnmail-split-fancy\n	'(| (\"Subject\" \"MAKE MONEY FAST\" junk)\n	    ...other.rules.omitted...))\n\nFIELD must match a complete field name.  VALUE must match a complete\nword according to the `nnmail-split-fancy-syntax-table' syntax table.\nYou can use \".*\" in the regexps to match partial field names or words.\n\nFIELD and VALUE can also be Lisp symbols, in that case they are expanded\nas specified in `nnmail-split-abbrev-alist'.\n\nGROUP can contain \\& and \\N which will substitute from matching\n\\(\\) patterns in the previous VALUE.\n\nExample:\n\n(setq nnmail-split-methods 'nnmail-split-fancy\n      nnmail-split-fancy\n      ;; Messages from the mailer daemon are not crossposted to any of\n      ;; the ordinary groups.  Warnings are put in a separate group\n      ;; from real errors.\n      '(| (\"from\" mail (| (\"subject\" \"warn.*\" \"mail.warning\")\n			  \"mail.misc\"))\n	  ;; Non-error messages are crossposted to all relevant\n	  ;; groups, but we don't crosspost between the group for the\n	  ;; (ding) list and the group for other (ding) related mail.\n	  (& (| (any \"ding@ifi\\\\.uio\\\\.no\" \"ding.list\")\n		(\"subject\" \"ding\" \"ding.misc\"))\n	     ;; Other mailing lists...\n	     (any \"procmail@informatik\\\\.rwth-aachen\\\\.de\" \"procmail.list\")\n	     (any \"SmartList@informatik\\\\.rwth-aachen\\\\.de\" \"SmartList.list\")\n	     ;; Both lists below have the same suffix, so prevent\n	     ;; cross-posting to mkpkg.list of messages posted only to\n	     ;; the bugs- list, but allow cross-posting when the\n	     ;; message was really cross-posted.\n	     (any \"bugs-mypackage@somewhere\" \"mypkg.bugs\")\n	     (any \"mypackage@somewhere\" - \"bugs-mypackage\" \"mypkg.list\")\n	     ;;\n	     ;; People...\n	     (any \"larsi@ifi\\\\.uio\\\\.no\" \"people.Lars Magne Ingebrigtsen\"))\n	  ;; Unmatched mail goes to the catch all group.\n	  \"misc.misc\"))" nnmail-split-abbrev-alist '((any . "from\\|to\\|cc\\|sender\\|apparently-to\\|resent-from\\|resent-to\\|resent-cc") (mail . "mailer-daemon\\|postmaster\\|uucp") (to . "to\\|cc\\|apparently-to\\|resent-to\\|resent-cc") (from . "from\\|sender\\|resent-from") (nato . "to\\|cc\\|resent-to\\|resent-cc") (naany . "from\\|to\\|cc\\|sender\\|resent-from\\|resent-to\\|resent-cc")) "*Alist of abbreviations allowed in `nnmail-split-fancy'." (repeat (cons :format "%v" symbol regexp)) nnmail-message-id-cache-length 1000 "*The approximate number of Message-IDs nnmail will keep in its cache.\nIf this variable is nil, no checking on duplicate messages will be\nperformed." (choice (const :tag "disable" nil) (integer :format "%v")) nnmail-message-id-cache-file (nnheader-concat gnus-home-directory ".nnmail-cache") "The file name of the nnmail Message-ID cache." file nnmail-treat-duplicates 'warn "*If non-nil, nnmail keep a cache of Message-IDs to discover mail duplicates.\nThree values are valid: nil, which means that nnmail is not to keep a\nMessage-ID cache; `warn', which means that nnmail should insert extra\nheaders to warn the user about the duplication (this is the default);\nand `delete', which means that nnmail will delete duplicated mails.\n\nThis variable can also be a function.  It will be called from a buffer\nnarrowed to the article in question with the Message-ID as a\nparameter.  It should return nil, `warn' or `delete'." (choice (const :tag "off" nil) (const warn) (const delete)) nnmail-extra-headers '(To Newsgroups Cc) "Extra headers to parse.\nIn addition to the standard headers, these extra headers will be\nincluded in NOV headers (and the like) when backends parse headers." "24.3" (repeat symbol) nnmail-split-header-length-limit 2048 "Header lines longer than this limit are excluded from the split function." nnmail-mail-splitting-charset "Default charset to be used when splitting incoming mail." symbol nnmail-mail-splitting-decodes "Whether the nnmail splitting functionality should MIME decode headers." nnmail-split-fancy-match-partial-words "Whether to match partial words when fancy splitting.\nNormally, regexes given in `nnmail-split-fancy' are implicitly surrounded\nby \"\\=\\<...\\>\".  If this variable is true, they are not implicitly surrounded\nby anything." nnmail-split-lowercase-expanded "Whether to lowercase expanded entries (i.e. \\N) when splitting mails.\nThis avoids the creation of multiple groups when users send to an address\nusing different case (i.e. mailing-list@domain vs Mailing-List@Domain)."] 22)
#@47 The buffer used for splitting incoming mails.
(defvar nnmail-article-buffer " *nnmail incoming*" (#$ . 20682))
#@80 List of group/article elements that say where the previous split put messages.
(defvar nnmail-split-history nil (#$ . 20799))
#@44 Syntax table used by `nnmail-split-fancy'.
(defvar nnmail-split-fancy-syntax-table (byte-code "\301 \302\303\304#\210)\207" [table make-syntax-table modify-syntax-entry 37 "."] 4) (#$ . 20931))
#@33 Hook called before saving mail.
(defvar nnmail-prepare-save-mail-hook nil (#$ . 21134))
(defvar nnmail-split-tracing nil)
(defvar nnmail-split-trace nil)
(defvar nnmail-inhibit-default-split-group nil)
(defalias 'nnmail-request-post #[(&optional server) "\300\301!\207" [mail-send-and-exit nil] 2])
#@31 Coding system used in nnmail.
(defvar nnmail-file-coding-system 'raw-text (#$ . 21439))
#@37 Coding system used in reading inbox
(defvar nnmail-incoming-coding-system mm-text-coding-system (#$ . 21533))
#@31 *Coding system for file name.
(defvar nnmail-pathname-coding-system nil (#$ . -21649))
#@38 Insert FILE in server buffer safely.
(defalias 'nnmail-find-file #[(file) "q\210ed|\210\303\211\303\304\305\217*\207" [nntp-server-buffer after-insert-file-functions format-alist nil (byte-code "\306 	\307
!\210+\310\207" [nnmail-file-coding-system nnmail-pathname-coding-system file-name-coding-system auto-mode-alist coding-system-for-read file mm-auto-mode-alist insert-file-contents t] 3) ((file-error))] 3 (#$ . 21742)])
#@27 Make file name for GROUP.
(defalias 'nnmail-group-pathname #[(group dir &optional file) "\306\307!!\310	\311\312\313\n\f#+\314\312#\315	!\306
\204(\316	P!\203/\307	\"\202>\307	\314\311\313\n\f#+\"!)\206F\317P\207" [dir group to from string nnmail-use-long-file-names file-name-as-directory expand-file-name nnheader-replace-duplicate-chars-in-string 47 95 mm-subst-char-in-string 46 nnheader-translate-file-chars file-directory-p "" file] 6 (#$ . 22181)])
#@123 Returns an assoc of group names and active ranges.
nn*-request-list should have been called before calling this function.
(defalias 'nnmail-get-active #[nil "rq\210\301 )\207" [nntp-server-buffer nnmail-parse-active] 1 (#$ . 22665)])
#@66 Parse the active file in the current buffer and return an alist.
(defalias 'nnmail-parse-active #[nil "eb\210\305\306\307\310#\204db\210\311\312\307\310#\203\313c\210\202eb\210p\307\211\211\211m\204:\314\315\316\217\210~\210\317y\210\202)-\207" [min max group group-assoc buffer re-search-forward "[\\\"]" nil t re-search-backward "[][';?()#]" 92 err (byte-code "`\305 }\210\306!\211;\204\307	!\306!\211\247\203.\306!\211\247\203.\310	!\nBD\fB\305\207" [buffer group max min group-assoc point-at-eol read symbol-name mm-string-as-unibyte] 4) ((error)) 1] 5 (#$ . 22906)])
#@33 *Coding system for active file.
(defvar nnmail-active-file-coding-system 'raw-text (#$ . -23511))
#@34 Save GROUP-ASSOC in ACTIVE-FILE.
(defalias 'nnmail-save-active #[(group-assoc file-name) "\n\205(\n\306\307\310!!\311\216rq\210\312 \210\313
!)rq\210\314\315\211\f\315\316%\210,)\207" [nnmail-active-file-coding-system coding-system-for-write file-name #1=#:temp-buffer #2=#:temp-file group-assoc get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) mm-disable-multibyte nnmail-generate-active write-region nil 0] 7 (#$ . 23615)])
#@49 Generate an active file from group-alist ALIST.
(defalias 'nnmail-generate-active #[(alist) "\302 \210\303	\211A@\211\203#\304\305\306@!A@AA@@$c\210\202db\210\307\310\303\311#\2055\312\313!\210\202&)\207" [group alist erase-buffer nil format "%S %d %d y\n" intern search-backward "\\." t delete-char 1] 5 (#$ . 24143)])
#@131 Find out whether this FILE is to be split into GROUP only.
If SOURCE is a directory spec, try to return the group name component.
(defalias 'nnmail-get-split-group #[(file source) "@\306=\205/\307	!\310\211\310\211\310\211\311!\210\312\313!\314P	\"\205-	\315\211\224O.\207" [source file predicate suffix path postscript directory file-name-nondirectory nil mail-source-set-1 string-match regexp-quote "$" 0 prescript-delay prescript] 4 (#$ . 24481)])
(defalias 'nnmail-process-babyl-mail-format #[(func artnum-func) "\306\307\310\211\211\211\211'm\204eb\210\311\312\310\306#\210\307\225b\210\307\224\307\225|\210`\211\313\314\310\306#\204=\315\316\310\306#\204=\313\317!\210`}\210eb\210\320\321!\203M\322\323!\210\324\325!\210db\210\212\326\327\310\306#\203f\330\224\330\225{\202\202\212\326\331\310\306#\203u\332 \210\333c\210)\334y\210\335\336 \211\337\261\210)\212\326\340\f\306#\205\234\341\330\224\330\225{!\211\205\234\342c\210\306)\204\245\306\202\310~\210`\n\\dU\204\274\212`\n\\b\210\320\343!)\203\306`\n\\b\210\310\202\310\306~\210	\203\341\311\344\310\306#\203\335\307\224b\210\202\341dSb\210\345\330!\210\212\214\f`}\210eb\210\346()#\210
Td*b\210\202
.\207" [end do-search content-length message-id start count t 0 nil re-search-forward "\f\n0, *unseen,+\n\\(\\*\\*\\* EOOH \\*\\*\\*\n\\)?" search-forward "\n\n" search-forward-regexp "^[^:]*\\( .*\\|\\)$" "\f" looking-at ">From " replace-match "X-From-Line: " run-hooks nnmail-prepare-incoming-header-hook re-search-backward "^Message-ID[ 	]*:[ \n	]*\\(<[^>]*>\\)" 1 "^Message-ID[ 	]*:" beginning-of-line "Original-" -1 "Message-ID: " nnmail-message-id "\n" "^Content-Length:[ 	]*\\([0-9]+\\)" string-to-number "X-" "" "^" delete-char nnmail-check-duplication case-fold-search func artnum-func] 7])
#@59 Put point at the beginning of the next Unix mbox message.
(defalias 'nnmail-search-unix-mail-delim #[nil "\302\211\204G\303\304\302\305#\204\306\211\202\212\307 \210o\204*\212\310y\210\302f)\311=\203C\212\312y\210\313\314!\203:\312y\210\202.\313\315!)\203C\316)\202\307 \210*\316=\207" [found case-fold-search nil re-search-forward "^From " t no beginning-of-line -1 10 1 looking-at ">From \\|From " "[^ \n	:]+[ \n	]*:" yes] 5 (#$ . 26310)])
(put 'nnmail-search-unix-mail-delim 'byte-optimizer 'byte-compile-inline-expand)
#@62 Put point at the beginning of the current Unix mbox message.
(defalias 'nnmail-search-unix-mail-delim-backward #[nil "\302\211\204G\303\304\302\305#\204\306\211\202\212\307 \210o\204*\212\310y\210\302f)\311=\203C\212\312y\210\313\314!\203:\312y\210\202.\313\315!)\203C\316)\202\307 \210*\316=\207" [found case-fold-search nil re-search-backward "^From " t no beginning-of-line -1 10 1 looking-at ">From \\|From " "[^ \n	:]+[ \n	]*:" yes] 5 (#$ . 26857)])
(defalias 'nnmail-process-unix-mail-format #[(func artnum-func) "\306\307\310\211\211\211\211\211,-eb\210\311\312\310\306#\203#\307\224b\204;\313\314\315 \203.\316\202/\317\315 \2066\320 #\210\202xm\204x`\310
\321\322\310\306#\203Q`S\202b\323\324!\203am\204a\325y\210\202Q`}\210eb\210\311\326\310\306#\203v\327\325!\202\222\212\311\330\310\306#\203\205\331 \210\332c\210)\325y\210\333\334 \211\335\261\210eb\210\311\336\310\306#\204\242\310\202\256\337\327\325!!\331 \210\340c\210\341\342!\210db\210~\210`\203\362\325y\210`\\\211b\210	dU\204\324	TdU\203\331d\202\362\323\343!\203\344	\202\362\323\344!\203\360\325\224\202\362\310\n\203\374\nb\210\202Yb\210\310\211.-.\204K\311\312\310\306#\204\345\211.\202\212\331 \210o\204-\212\346y\210\310f)\347=\203G\212\325y\210\323\350!\203=\325y\210\2021\323\351!)\203G\352.)\202\331 \210.*\352=\204Ydb\210\212\214
`}\210eb\210,T,\353\f/0#\210d*\nb\210\202;,.\207" [head-end skip end content-length message-id start t 0 nil re-search-forward "^From " error "Error, unknown mail format! (Possibly corrupted %s `%s'.)" buffer-file-name "file" "buffer" buffer-name search-forward "\n\n" looking-at "From \\|[^ 	]+:" 1 "^Message-ID[ 	]*:[ \n	]*\\(<[^>]+>\\)" match-string "^Message-ID[ 	]*:" beginning-of-line "Original-" "Message-ID: " nnmail-message-id "\n" "^Content-Length:[ 	]*\\([0-9]+\\)" string-to-number "X-" run-hooks nnmail-prepare-incoming-header-hook "From " "[ 	]*\n\\(From \\)" no -1 10 ">From \\|From " "[^ \n	:]+[ \n	]*:" yes nnmail-check-duplication count case-fold-search found func artnum-func] 9])
(defalias 'nnmail-process-mmdf-mail-format #[(func artnum-func &optional junk-func) "\306\307\310\311\211\211eb\210\312
\311\307#\203\313y\204#\314\315!\210\202\264m\204\264`\211\316\317\311\307#\2037`S\202H\320\321!\203Gm\204G\313y\210\2027`}\210eb\210\312\322\311\307#\203\\\323\313!\202x\212\324\325\311\307#\203k\326 \210\327c\210)\313y\210\330\331 \211\332\261\210\333\334!\210db\210~\210\312
\311\307#\203\217\326 \210\202\222db\210\212\214\n`}\210eb\210T\335	 !$\210d*b\210\336y\210\202#.\207" [end message-id start count case-fold-search delim "^$" t 0 nil re-search-forward 1 error "Error, unknown mail format! (Possibly corrupted.)" search-forward "\n\n" looking-at "From \\|[^ 	]+:" "^Message-ID[ 	]*:[ \n	]*\\(<[^>]+>\\)" match-string re-search-backward "^Message-ID[ 	]*:" beginning-of-line "Original-" "Message-ID: " nnmail-message-id "\n" run-hooks nnmail-prepare-incoming-header-hook nnmail-check-duplication 2 func artnum-func junk-func] 7])
(defalias 'nnmail-process-maildir-mail-format #[(func artnum-func) "\304\305eb\210e\306\307\305\304#\203`S\202&\310\311!\203%m\204%\312y\210\202`}\210eb\210\313\314\305\304#\203:\315\312!\202V\212\316\317\305\304#\203I\320 \210\321c\210)\312y\210\322\323 \211\324\261\210\325\326!\210~\210\212eb\210\327\n#\210+\312\207" [message-id case-fold-search func artnum-func t nil search-forward "\n\n" looking-at "From \\|[^ 	]+:" 1 re-search-forward "^Message-ID:[ 	]*\\(<[^>]+>\\)" match-string re-search-backward "^Message-ID[ 	]*:" beginning-of-line "Original-" "Message-ID: " nnmail-message-id "\n" run-hooks nnmail-prepare-incoming-header-hook nnmail-check-duplication] 5])
#@44 Non-nil means group names are not encoded.
(defvar nnmail-group-names-not-encoded-p nil (#$ . 30659))
#@231 Go through the entire INCOMING file and pick out each individual mail.
FUNC will be called with the buffer narrowed to each mail.
INCOMING can also be a buffer object.  In that case, the mail
will be copied over from that buffer.
(defalias 'nnmail-split-incoming #[(incoming func &optional exit-func group artnum-func junk-func) "\203	\204\306DC\202\n\307r\310\f!q\210\311 \210\312
!\203)\313
!\210\2022\314
!\210)\315\316 !\203=\317\202\201eb\210\212\320\321!\210)\322\323!\204R\322\324!\203[\325\"\202\201\322\326!\203l\327 #\202\201\322\330!\203{\331\"\202\201\332\"!\203\212! \210\333p!\210+\207" [group nnmail-resplit-incoming nnmail-split-methods nnmail-group-names-not-encoded-p nnmail-article-buffer incoming "" t get-buffer-create erase-buffer bufferp insert-buffer-substring mm-insert-file-contents zerop buffer-size 0 run-hooks nnmail-prepare-incoming-hook looking-at "\f" "BABYL OPTIONS:" nnmail-process-babyl-mail-format "" nnmail-process-mmdf-mail-format "Return-Path:" nnmail-process-maildir-mail-format nnmail-process-unix-mail-format kill-buffer nnmail-incoming-coding-system coding-system-for-read func artnum-func junk-func exit-func] 4 (#$ . 30768)])
#@136 Look at the headers and return an alist of groups that match.
FUNC will be called with the group name to determine the article number.
(defalias 'nnmail-article-group #[(func &optional trace junk-func) "\206\306p\307\211\211\310
!\2038
G\311U\20380\2048
\2111@@)2
\2111@@)!BC\211\202\363r3q\210\312 \210\313\f!\210eb\314\315\307\316#\203R`\202Sd}\210eb\2104\203g56\317ed\"\210)eb\210\320\321\307\316#\203{\322\323\316\211#\210\202jeb\210m\204\227\3247!7W\204\221`\325 |\210\311y\210\202~eb\210\326\327!\2108\2119\203\251\307:9\203\264\330!\204\332\242:\203\332<\203\242\211;G\331U\205\326;@;\205\326;A@;)\2049\203\351\330!\203\351\202\352\332<\333\334\335\217=\336=!=\337=>\203	>\203	>\337!\210\340\337=\"\211=\203\341\342=\"*\202\214
\203{?\204+\204{db\210
\211A@\211@
\204C\nA@\343\232\204]\307\344\345\217\203\346	\"\204	2	!BB\202\204\nA@\343\232\204n0\204\n@2\n@!BC\202\204\2140\204\214\3472\347!BC8\203\320:\203\320p@\350\351!\210\352 \210:\237\3078\211A\203\303A@8\3538p\"\210\354c\210AA\211A\204\254*eb\210\355\356!\210@q\210)~\210\357\232?\205\362\307B\337>@\211B\203\357\340B\"\202\334\237))-\207" [nnmail-split-methods grp method group-art obuf methods (("bogus" #1="")) nil sequencep 1 erase-buffer insert-buffer-substring search-forward "\n\n" t mail-decode-encoded-word-region re-search-forward "\\(
?\n[ 	]+\\)+" replace-match " " move-to-column point-at-eol run-hooks nnmail-split-hook fboundp 2 nnmail-split-fancy error-info (byte-code " \206	?\205\302\207" [method-function nnmail-inhibit-default-split-group ("bogus")] 1) ((error (byte-code "\301\302\303#\210\304\305!\210\306\207" [error-info nnheader-message 5 "Error in `nnmail-split-methods'; using `bogus' mail group: %S" sit-for 1 ("bogus")] 4))) mm-delete-duplicates junk delq mapcar #[(group) "	!B\207" [group func] 3] #1# (byte-code "A@;\203\"\305\306	\"\307\211A@)\310\311#\211\203\312	!*\207A@	!\207" [method grp x pos expand string-match "\\\\[0-9&]" re-search-backward nil t nnmail-expand-newtext] 6) ((error)) assoc "bogus" nnheader-set-temp-buffer "*Split Trace*" gnus-add-buffer prin1 "\n" gnus-configure-windows split-trace (junk) nnmail-inhibit-default-split-group x func nntp-server-buffer nnmail-mail-splitting-decodes nnmail-mail-splitting-charset mail-parse-charset nnmail-split-header-length-limit trace nnmail-split-tracing nnmail-split-trace top-element method-function split junk-func nnmail-crosspost restore --dolist-tail-- elem] 6 (#$ . 31995)])
#@103 Insert how many lines there are in the body of the mail.
Return the number of characters in the body.
(defalias 'nnmail-insert-lines #[nil "\302\211\212eb\210\303\304\302\305#\204db\210\306c\210d`Z\307`d\"\310u\210\212\311\312\302\305#\2032`\313y\210`|\210)\314 \210\315\316	\317]\"c\210+\207" [chars lines nil search-forward "\n\n" t "\n" count-lines -1 re-search-backward "^Lines: " 1 beginning-of-line format "Lines: %d\n" 0] 4 (#$ . 34602)])
#@59 Insert an Xref line based on the (group . article) alist.
(defalias 'nnmail-insert-xref #[(group-alist) "\212eb\210\302\303\304\305#\204db\210\306c\210\307u\210\310\311\304\305#\203%\312\224\313y\210`|\210\314\315\316 \"c\210\203c\317 \203I\320\314\321\211@@)\211@A)#!\202Z\322\314\321\211@@)\211@A)#!c\210A\211\2040\306c)\207" [group-alist x search-forward "\n\n" nil t "\n" -1 re-search-backward "^Xref: " 0 1 format "Xref: %s" system-name mm-multibyte-p mm-string-as-multibyte " %s:%d" mm-string-as-unibyte] 6 (#$ . 35062)])
#@47 Remove excessive whitespace from all headers.
(defalias 'nnmail-remove-leading-whitespace #[nil "eb\210\300\301\302\303#\205\304\305\303\"\210\202\207" [re-search-forward "^\\([^ :]+: \\) +" nil t replace-match "\\1"] 4 (#$ . 35614)])
#@47 Remove list identifiers from Subject headers.
(defalias 'nnmail-remove-list-identifiers #[nil ":\203
\302\303\304#\202\211\205=eb\210\305\306	\307Q\310\311#\203-\312\224\313\225|\210\314 \210\202\305\315\310\311#\205=\316\224\316\225|\210\314 )\207" [nnmail-list-identifiers regexp mapconcat identity " *\\|" re-search-forward "^Subject: +\\(R[Ee]: +\\)*\\(" " *\\)" nil t 2 0 beginning-of-line "^Subject: +\\(\\(R[Ee]: +\\)+\\)R[Ee]: +" 1] 5 (#$ . 35859)])
#@49 Translate TAB characters into SPACE characters.
(defalias 'nnmail-remove-tabs #[nil "\300ed\301\302\303%\207" [subst-char-in-region 9 32 t] 6 (#$ . 36335)])
#@102 Header line matching mailer producing bogus References lines.
See `nnmail-ignore-broken-references'.
(custom-declare-variable 'nnmail-broken-references-mailers "^X-Mailer:.*\\(Eudora\\|Pegasus\\)" '(#$ . 36499) :group 'nnmail-prepare :version "23.1" :type 'regexp)
#@109 Ignore the References line and use In-Reply-To

Eudora has a broken References line, but an OK In-Reply-To.
(defalias 'nnmail-ignore-broken-references #[nil "eb\210\301\302\303#\205+eb\210\301\304\302\303#\203\305 \210\306c\210eb\210\301\307\302\303#\205+\310\311\303\"\207" [nnmail-broken-references-mailers re-search-forward nil t "^References:" beginning-of-line "X-Gnus-Broken-Eudora-" "^\\(In-Reply-To:[^\n]+\\)\n[ 	]+" replace-match "\\1"] 4 (#$ . 36771)])
(byte-code "\300\301\302\"\210\303\301\302\304#\210\305\306\302\"\207" [defalias nnmail-fix-eudora-headers nnmail-ignore-broken-references make-obsolete "Emacs 23.1" custom-add-option nnmail-prepare-incoming-header-hook] 4)
#@190 Utility function to directly post a message to an nnmail-derived group.
Calls ACCEPT-FUNC (which should be `nnchoke-request-accept-article')
to actually put the message in the right group.
(defalias 'nnmail-do-request-post #[(accept-func &optional server) "\306\307\310\311\312!\313\"!\314\211\203`\n@\315	\"\316\f
\"J\204L\317\f!\204L\320\321\322\f\"!\203G\323\f\"\203@\317\f\314\211$\204L\324\325\f\"\204L\324\326\f\"\210	A@\"\204X\314)\nA\211\204\314+\207" [success mbx --dolist-tail-- gnus-command-method to-newsgroup gnus-active-hashtb t message-unquote-tokens message-tokenize-header message-fetch-field "Newsgroups" ", " nil gnus-group-prefixed-name intern-soft gnus-activate-group gnus-y-or-n-p format "No such group: %s.  Create it? " gnus-request-create-group error "Couldn't create group %s" "No such group: %s" accept-func] 6 (#$ . 37470)])
#@98 Fancy splitting method.
See the documentation for the variable `nnmail-split-fancy' for details.
(defalias 'nnmail-split-fancy #[nil "\304 p\305\216\306\n!\210\307!+\207" [#1=#:buffer #2=#:table nnmail-split-fancy-syntax-table nnmail-split-fancy syntax-table ((byte-code "rq\210\302	!\210)\302\207" [#1# #2# set-syntax-table] 2)) set-syntax-table nnmail-split-it] 2 (#$ . 38354)])
(defvar nnmail-split-cache nil)
(defalias 'nnmail-split-it #[(split) "\306	\204\n\306\2029	;\203\n\203	B\307	!C\2029	\310=\2031\n\203,\311B\310C\2029	@\312=\203C\313\314\315\316	A\"\"\2029	@\317=\203b\306	A\203]	A\316	@!\211\203L\f)\2029	@\320=\203|\n\203q	B\316\212\321	A!)!\2029	@\322=\203\223	\211A@)\316	AA@!!\2029	\"\236\211\203t\306d	A@#$%#9\203\265#&\236A#$b\203n\323A\306\324#\203n\n\203\314	B	\211AA)\325\225\326\225\327\225'()*(S$*@\330=\203)b\210\323*\211A@)'\324#\203\325\225(V\203\306\211*\202\347*\211AA)\211*\202\347*\203j)b\210	A@\211#9\2037#&\236A#\323#(\"\210)\316*@!\306+\211,\203i,@\211+%\235\204`+%B%,A\211,\204M*,\202\265%+\2029	@	A@	\211AA)\306\211\211-./*#0#9\203\234#&\236A##G\327Y\203\270#\325\327O\331\230\203\270#\327\306O#\332/#G\327Y\203\324#\333\306O\331\230\203\324#\325\333O#\332.*@\330=\203\351*\211AA)\211*\202\326*\211A@)\203\3711?\202\3731\203\332\211/.\33409\2030&\236A\2020\335/\206\336\337#\340.\206'\341\260-	-B\"B\"\316	!.)\207" [cached-pair split nnmail-split-tracing nnmail-split-trace done x nil nnmail-expand-newtext junk "junk" & apply nconc mapcar nnmail-split-it | : eval ! re-search-backward t 0 1 2 - ".*" "" -2 "^\\(\\(" "\\):.*\\)" "\\<" "\\(" "\\)" "\\>" nnmail-split-cache value end-point split-result nnmail-split-abbrev-alist after-header-name start-of-value end split-rest sp --dolist-tail-- regexp partial-rear partial-front field nnmail-split-fancy-match-partial-words] 9])
(defalias 'nnmail-expand-newtext #[(newtext) "G\306\307\211\211\211\211W\203\247W\2036H\310U\2046T\211\202U\204EO\fBW\203\236\311TH\211\312U\204t
\313Y\203k
\314X\204t\315
!\fB\202\236
\312U\203\306\202\203
\316Z\n\224\203\236\203\226\n\224\n\225{\227\202\233\n\224\n\225{\fBT\211\202	\203\263\317\320\f\237\"\202\264.\207" [newtext did-expand N beg expanded c 0 nil 92 t 38 49 57 char-to-string 48 apply concat pos len nnmail-split-lowercase-expanded] 8])
(defalias 'nnmail-activate #[(backend &optional force) "\305 \210\306\211\211\307\310\311\"!J\203X\f\204X\306\312\313\217\211\203q\314\315\n!8\211\203q\306\316\317\217\211\203X	:\203X	\320\232\204X@	@V\204X@	@U\203qA@	A@V\203q\212	\321=\204h\307\310\322\"!L\210\307\310\323\"! \210)+\324\207" [file-time timestamp file backend force nnheader-init-server-buffer nil intern format "%s-group-alist" (byte-code "\301\302\303\"!J\207" [backend intern format "%s-active-file"] 4) ((error)) 5 file-attributes (byte-code "\301\302\303\"!J\207" [backend intern format "%s-active-timestamp"] 4) ((error 'none)) (0 0) none "%s-active-timestamp" "%s-request-list" t] 4])
(defalias 'nnmail-message-id #[nil "\300\301 \302Q\207" ["<" message-unique-id "@totally-fudged-out-message-id>"] 3])
(defvar nnmail-cache-buffer nil)
(defalias 'nnmail-cache-open #[nil "?\206\f	\205\f\303	!?\205+r\304\305!\211q\210\306 \210\307\n!\203%\310\n!\210\311\312!\210p)\207" [nnmail-treat-duplicates nnmail-cache-buffer nnmail-message-id-cache-file buffer-name get-buffer-create " *nnmail message-id cache*" gnus-add-buffer file-exists-p nnheader-insert-file-contents set-buffer-modified-p nil] 2])
(defalias 'nnmail-cache-close #[nil "\205m	\205m\306!\205m\307!\205mrq\210db\210\310\311\312\313\n$\203+\314 \210e`|\210\315\316!!\204:\317\316!\313\"\210\320ed\312\321%\210\322\312!\210\312p\211\211\205\\
;\203Y\323\202Z\306
!)\205l\324\323\f!\"\325\f!*\207" [nnmail-cache-buffer nnmail-treat-duplicates nnmail-message-id-cache-length nnmail-message-id-cache-file buf buffer buffer-name buffer-modified-p search-backward "\n" nil t beginning-of-line file-exists-p file-name-directory make-directory nnmail-write-region silent set-buffer-modified-p get-buffer delete kill-buffer gnus-buffers] 7])
(defalias 'nnmail-cache-insert #[(id grp &optional subject sender) ";\205{	\206\n\206\306\307\310	\f%\210)
\205{\211\205*\311\312!!)\2041\313 \210rq\210db\210	\203v	\314\230\204v\315\316 \"\203v:\203[\317\320\321#\202]\211\205h\322	\"?\205r\323	\324\261)\202z\324\261)\207" [id grp gnus-newsgroup-name subject sender nnmail-treat-duplicates "UNKNOWN" run-hook-with-args nnmail-spool-hook buffer-live-p get-buffer nnmail-cache-open "" gnus-methods-equal-p nnmail-cache-primary-mail-backend mapconcat identity "\\|" string-match "	" "\n" nnmail-cache-buffer buffer gnus-command-method nnmail-cache-ignore-groups regexp] 7])
(defalias 'nnmail-cache-primary-mail-backend #[nil "	B\306\211\211\204<
\203<
@
A\307\f\310\"\203\n\311\312\313\f@\"!\211\203\n\314\n!\203\n\nJ\203\n\f\211\203,\207" [gnus-select-method gnus-secondary-select-methods get-new-mail res be be-list nil gnus-method-option-p respool intern format "%s-get-new-mail" boundp] 5])
(defalias 'nnmail-cache-fetch-group #[(id) "\205-	\205-r	q\210db\210\303\n\304\305#\205,\306 \210\307\304w\210\310\311!?\205,\312u\210`\313 {)\207" [nnmail-treat-duplicates nnmail-cache-buffer id search-backward nil t beginning-of-line "^\n
	" looking-at "[
\n]" 1 point-at-eol] 4])
#@509 Split this message into the same group as its parent.
This function can be used as an entry in `nnmail-split-fancy', for
example like this: (: nnmail-split-fancy-with-parent)
For a message to be split, it looks for the parent message in the
References or In-Reply-To header and then looks in the message id
cache file (given by the variable `nnmail-message-id-cache-file') to
see which group that message was put in.  This group is returned.

See the Info node `(gnus)Fancy Mail Splitting' for more details.
(defalias 'nnmail-split-fancy-with-parent #[nil "\306\307!\206	\306\310!\311\211:\203\312\313\314#\202\205t\315!\237
\211\2053\316\317!!)\204:\320 \210	\311\211\203r@\321!\206Q\n\211\322\235\204g\f\203i\n\203i\323\f\n\"\203i\311A\211\204D*\n,\207" [refstr references res nnmail-split-fancy-with-parent-ignore-groups regexp nnmail-cache-buffer message-fetch-field "references" "in-reply-to" nil mapconcat #[(x) "\301\302\"\207" [x format "\\(%s\\)"] 3] "\\|" gnus-split-references buffer-live-p get-buffer nnmail-cache-open nnmail-cache-fetch-group ("delayed" "drafts" "queue") string-match buffer x --dolist-tail--] 5 (#$ . 43998)])
(defalias 'nnmail-cache-id-exists-p #[(id) "\205r	q\210db\210\303\n\304\305#)\207" [nnmail-treat-duplicates nnmail-cache-buffer id search-backward nil t] 4])
(defalias 'nnmail-fetch-field #[(header) "\212\214\301 \210\302!*\207" [header message-narrow-to-head message-fetch-field] 2])
(defalias 'nnmail-check-duplication #[(message-id func artnum-func &optional junk-func) "\306\307!\210\310!\311	\205%\312>\203\202%\313!\203$!\202%\314\311eb\210\315\316\314\311#\210\317 \210\320\321\"c\210)	\204^\322\314#\237\211!\210\323
\211@@)\"\210\202\235\f\324=\203i\314\202\235\f\325=\203\222\311eb\210\315\316\314\311#\210\317 \210\326\327\261\210\322!\237\211!\210)\202\235\322!\237\211!\210
\203\253
B\211\202\256ed|,\207" [message-id duplication case-fold-search nnmail-treat-duplicates action group-art run-hooks nnmail-prepare-incoming-message-hook nnmail-cache-id-exists-p t (warn delete) functionp nil re-search-forward "^message-id[ 	]*:" beginning-of-line format "X-Gnus-Mail-Source: %s\n" nnmail-article-group nnmail-cache-insert delete warn "Gnus-Warning: This is a duplicate of message " "\n" mail-source-string func artnum-func junk-func x nnmail-split-history] 6])
(defvar nnmail-fetched-sources nil)
(defalias 'nnmail-get-value #[(&rest args) "\302\303\304\"!\305	!\205	J)\207" [args sym intern apply format boundp] 4])
#@25 Read new incoming mail.
(defalias 'nnmail-get-new-mail #[(method exit-func temp &optional group spool-func) "\305	\n\306\f&\207" [method exit-func temp group spool-func nnmail-get-new-mail-1 nil] 7 (#$ . 46584)])
(defalias 'nnmail-get-new-mail-1 #[(method exit-func temp group in-group spool-func) "\306\307\211\307\306,\310\311-\"\203\260	\203\260	\211A@\211,\203\260,@\312=\203M\313\314-!\315\nQ\316\317#C\320-./\n\2110&\210)\306,,@\321=\203\2161\204\216\n\203\216\306\21123\306\21145\306\21167\322,!\210\323,\324\325\326\327\330\n3P\331BBE!D\",.8\203,8\235\203\241\306,\202,8B8,\nB\202\n\205\332-!\210\333\334!\210\335 \210\n\211A@\211,\203\336\336\337\340\217\211\203\300
\f\\T\202\300\341
!\203\3669\203\342\343\344-,@$\210\202\345\310\346-\"\310\347-\"\"\210.\203\f. \210\333\350!\210\342\343\351-
$\210\352 \210\333\353!.\207" [mail-sources sources fetching-sources i new total nil 0 nnmail-get-value "%s-get-new-mail" group gnus-group-find-parameter symbol-name ":" mail-source t nnmail-get-new-mail-1 directory mail-source-set-1 append :predicate gnus-byte-compile lambda (file) string-equal ((file-name-nondirectory file)) nnmail-activate run-hooks nnmail-pre-get-new-mail-hook nnmail-cache-open cond (byte-code "\303\304\305\306\307\310\311\312\313\314	\"!D\311\nD\315\316\317\320\321\322\323\311DEFE\311\312\313\324	\"!D\257E!\"\207" [source method spool-func mail-source-fetch gnus-byte-compile lambda (file orig-file) nnmail-split-incoming file quote intern format "%s-save-mail" or in-group if (equal file orig-file) nil nnmail-get-split-group orig-file "%s-active-number"] 18) (((error quit) (message "Mail source %s failed: %s" source cond) 0)) zerop nnheader-message 4 "%s: Reading incoming mail (no new mail)...done" nnmail-save-active "%s-group-alist" "%s-active-file" nnmail-read-incoming-hook "%s: Reading incoming mail (%d new)...done" nnmail-cache-close nnmail-post-get-new-mail-hook source method exit-func temp spool-func nnmail-scan-directory-mail-source-once predicate suffix path postscript prescript-delay prescript nnmail-fetched-sources mail-source-plugged] 10])
#@134 Say whether an article that is TIME old in GROUP should be expired.
If TIME is nil, then return the cutoff time for oldness instead.
(defalias 'nnmail-expired-article-p #[(group time force &optional inhibit) "\203
	\204\306 \207\307\207\n\203\n!\206\f\211\310=\204(\204,\203,\311\202b
\312=\203?	\204;\306 \202b\307\202b	\313\232\203I\311\202b
\247\205b\314
!	\204^\315\306 
\"\202b\311\316\317\217)\207" [force time nnmail-expiry-wait-function group nnmail-expiry-wait days current-time t never nil immediate (0 0) days-to-time time-subtract (byte-code "\302\303	!\"\207" [days time time-less-p time-since] 4) ((error)) inhibit] 4 (#$ . 48778)])
(defalias 'nnmail-expiry-target-group #[(target group) "\304\305	!\203\f	\n!	\306=?\2056\307	!\204\310	!\2056\311	\304\211\312$\211:\2055A\2055\313	A\"))\207" [nnmail-cache-accepted-message-ids target group group-art nil functionp delete gnus-request-group gnus-request-create-group gnus-request-accept-article t gnus-group-mark-article-read] 6])
#@76 Returns a target expiry group determined by `nnmail-fancy-expiry-targets'.
(defalias 'nnmail-fancy-expiry-target #[(group) "\306\211\307\310!\206\311\307\312!\206\311\307\313!\314\f\203%\315\316\317\217\202'\320 \321!\306\211\203\246@\211@\211\322\232\203z\323\211A@)\n\"\204n\323\211A@)\"\203z\324!\325\n!\311\232)\203z\326AA@\f\"\202\235\322\232\204\235\323\211A@)\307!\206\220\311\"\203\235\326AA@\f\"A\211\2045\306
.\207" [header case-fold-search from to date target nil message-fetch-field "from" "" "to" "date" delete err (date-to-time date) ((error (byte-code "\301\302\303!\"\210\304 \207" [err message "%s" error-message-string current-time] 4))) current-time reverse to-from string-match gmm-regexp-concat rmail-dont-reply-to format-time-string nnmail-fancy-expiry-targets regexp-target-pair --dolist-tail-- x message-dont-reply-to-names rmail-dont-reply-to-names] 5 (#$ . 49818)])
#@69 Check (and modify) the syntax of the message in the current buffer.
(defalias 'nnmail-check-syntax #[nil "\214\301 \210\302\303\304\305\302#?\205\306\307 \310\261*\207" [case-fold-search message-narrow-to-head t re-search-forward "^Message-ID[ 	]*:" nil "Message-ID: " nnmail-message-id "\n"] 4 (#$ . 50783)])
#@51 Do a `write-region', and then set the file modes.
(defalias 'nnmail-write-region #[(start end filename &optional append visit lockname) "	\306\f
	\n&\210\307\f\"*\207" [nnmail-file-coding-system nnmail-pathname-coding-system file-name-coding-system coding-system-for-write start end write-region set-file-modes filename append visit lockname nnmail-default-file-modes] 7 (#$ . 51103)])
#@61 Make status NAME and VALUE part of the current status line.
(defalias 'nnmail-replace-status #[(name value) "\214\303 \210\304 \305	\235\"\n\203	\nBB\306\307!\210db\210\310\311!\312\261*\207" [status name value message-narrow-to-head nnmail-decode-status delq message-remove-header "status" "Status: " nnmail-encode-status "\n"] 3 (#$ . 51508)])
#@42 Return a status-value alist from STATUS.
(defalias 'nnmail-decode-status #[nil "eb\210\303\304\305\306#\205n\305\211\211\214`\303\307\305\306#\203 `S\202!d}\210eb\210\303\310\305\306#\203k\311\312!\305f\313=\204>\314\202b\315u\210\305f\316=\204^\317\320!\204S\321\202b\311\312!\312\225b\210\202b\322p!\n	BB\202&)+\207" [status value name re-search-forward "^Status: " nil t "^[^ 	]" "[^ 	=]+" match-string 0 61 "yes" 1 34 looking-at "[^ 	]" "no" read] 5 (#$ . 51870)])
#@37 Return a status string from STATUS.
(defalias 'nnmail-encode-status #[(status) "\301\302\303#\207" [status mapconcat #[(elem) "@\301\302\303A\"\203\304A!\202AQ\207" [elem "=" string-match "[ 	]" prin1-to-string] 5] " "] 4 (#$ . 52367)])
#@65 Generate an overview of where the last mail split put articles.
(defalias 'nnmail-split-history #[nil "\204\306\307!\210	r\310\311!q\210p\312 \210\n\313\211\314\211\314\315 \210\316\317!\210+\211rq\210\320 \210)\313\211\205^@\321\322\323\324#!\210\321\325!\210A\211\204B\313*\326!\210+\207" [nnmail-split-history default-directory #1=#:old-dir buffer-read-only buffer-file-name buffer-undo-list error "No current split history" get-buffer-create "*nnmail split history*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook fundamental-mode princ mapconcat #[(ga) "@\301\302A!Q\207" [ga ":" int-to-string] 4] ", " "\n" internal-temp-output-buffer-show inhibit-modification-hooks inhibit-read-only #2=#:buf standard-output elem --dolist-tail--] 6 (#$ . 52619) nil])
#@60 Remove all instances of GROUP from `nnmail-split-history'.
(defalias 'nnmail-purge-split-history #[(group) "	\203	\302\303	@\"\240\210	\211A@\210\202\304\305\"\211)\207" [nnmail-split-history history gnus-remove-if #[(e) "@	\230\207" [e group] 2] delq nil] 4 (#$ . 53453)])
#@33 Say whether GROUP has new mail.
(defalias 'nnmail-new-mail-p #[(group) "\304\n\203\305\n\211A@\"\203\306\304\211\204	*\207" [nnmail-split-history found his group nil assoc t] 5 (#$ . 53743)])
#@91 Check to see if point is within the headers of a unix mail message.
Doesn't change point.
(defalias 'nnmail-within-headers-p #[nil "`\212\301 \205\302\303\304#?*\207" [pos nnmail-search-unix-mail-delim-backward search-forward "\n\n" t] 4 (#$ . 53954)])
(byte-code "\300\301!\210\302\303!\207" [run-hooks nnmail-load-hook provide nnmail] 2)

MMCT - 2023