;ELC   
;;; compiled by gutnik@multics.mit.edu on Thu Jun 10 13:07:25 2004
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/xemacs-gnus-5.10.6/lisp/nnwarchive.el
;;; emacs version 21.4 (patch 4) "Artificial Intelligence" XEmacs Lucid.
;;; bytecomp version 2.27 XEmacs; 2000-09-12.
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 19.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "20")))
    (error "`nnwarchive.el' was compiled for Emacs 20"))

(or (boundp 'current-load-list) (setq current-load-list nil))


(byte-code "!!!!!!!!\"щFBD\nBB!B!ч" [nnwarchive-default-type nnwarchive-type-definition nnoo-state-alist nnoo-definition-alist current-load-list require nnoo message gnus-util gnus gnus-bcklg nnmail mm-util mm-url nnwarchive mapcar #[(p) "C" [p] 1] nil "*internal-non-initialized-backend*" boundp ((egroups (address . "www.egroups.com") (open-url "http://www.egroups.com/login.cgi?&login_email=%s&login_password=%s" nnwarchive-login nnwarchive-passwd) (list-url "http://www.egroups.com/mygroups") (list-dissect . nnwarchive-egroups-list) (list-groups . nnwarchive-egroups-list-groups) (xover-url "http://www.egroups.com/messages/%s/%d" group aux) (xover-last-url "http://www.egroups.com/messages/%s/" group) (xover-page-size . 13) (xover-dissect . nnwarchive-egroups-xover) (article-url "http://www.egroups.com/message/%s/%d?source=1" group article) (article-dissect . nnwarchive-egroups-article) (authentication . t) (article-offset . 0) (xover-files . nnwarchive-egroups-xover-files)) (mail-archive (address . "www.mail-archive.com") (open-url) (list-url "http://www.mail-archive.com/lists.html") (list-dissect . nnwarchive-mail-archive-list) (list-groups . nnwarchive-mail-archive-list-groups) (xover-url "http://www.mail-archive.com/%s/mail%d.html" group aux) (xover-last-url "http://www.mail-archive.com/%s/maillist.html" group) (xover-page-size) (xover-dissect . nnwarchive-mail-archive-xover) (article-url "http://www.mail-archive.com/%s/msg%05d.html" group article1) (article-dissect . nnwarchive-mail-archive-article) (xover-files . nnwarchive-mail-archive-xover-files) (authentication) (article-offset . 1))) egroups] 4)
#@111 Where nnwarchive will save its files.

This is a Gnus server variable.  See Info node `(gnus)Select Methods'.
(defvar nnwarchive-directory (nnheader-concat gnus-directory "warchive/") (#$ . 2313))
(nnoo-define 'nnwarchive-directory nil)
#@97 The type of nnwarchive.

This is a Gnus server variable.  See Info node `(gnus)Select Methods'.
(defvar nnwarchive-type nil (#$ . 2556))
(nnoo-define 'nnwarchive-type nil)
#@100 The address of nnwarchive.

This is a Gnus server variable.  See Info node `(gnus)Select Methods'.
(defvar nnwarchive-address "" (#$ . 2735))
(nnoo-define 'nnwarchive-address nil)
#@104 Your login name for the group.

This is a Gnus server variable.  See Info node `(gnus)Select Methods'.
(defvar nnwarchive-login nil (#$ . 2922))
(nnoo-define 'nnwarchive-login nil)
#@102 Your password for the group.

This is a Gnus server variable.  See Info node `(gnus)Select Methods'.
(defvar nnwarchive-passwd nil (#$ . 3110))
(byte-code "\"B!\"B!\"B!\"B!\"B\nB!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!\"B!B!B!\"!" [nnwarchive-nov-is-evil nnwarchive-authentication nnwarchive-headers-cache nnwarchive-groups nnwarchive-xover-files current-load-list nnoo-define nnwarchive-passwd nil boundp nnwarchive-version "nnwarchive 1.0" nnwarchive-open-url nnwarchive-open-dissect nnwarchive-list-url nnwarchive-list-dissect nnwarchive-list-groups nnwarchive-xover-url nnwarchive-xover-last-url nnwarchive-xover-dissect nnwarchive-xover-page-size nnwarchive-article-url nnwarchive-article-dissect nnwarchive-article-offset 0 nnwarchive-buffer nnwarchive-keep-backlog 300 nnwarchive-backlog-articles nnwarchive-backlog-hashtb nnwarchive-headers nnoo-define-basics-1 nnwarchive] 3)
(defalias 'nnwarchive-set-default #[(type) "\n	A@@!P!ALAk,Ň" [defs nnwarchive-type-definition type #1=#:--dolist-temp--12058 def nil intern "nnwarchive-" symbol-name] 6])
(defalias 'nnwarchive-backlog '(macro . #[(&rest form) "BBBE" [form let ((gnus-keep-backlog nnwarchive-keep-backlog) (gnus-backlog-buffer (format " *nnwarchive backlog %s*" nnwarchive-address)) (gnus-backlog-articles nnwarchive-backlog-articles) (gnus-backlog-hashtb nnwarchive-backlog-hashtb)) unwind-protect progn ((setq nnwarchive-backlog-articles gnus-backlog-articles nnwarchive-backlog-hashtb gnus-backlog-hashtb))] 5]))
(byte-code "##" [put nnwarchive-backlog lisp-indent-function 0 edebug-form-spec (form body)] 4)
(defalias 'nnwarchive-backlog-enter-article #[(group number buffer) "\"\n\nȎ#-" [gnus-backlog-articles gnus-backlog-hashtb nnwarchive-backlog-hashtb nnwarchive-backlog-articles nnwarchive-address nnwarchive-keep-backlog format " *nnwarchive backlog %s*" ((byte-code "	ć" [nnwarchive-backlog-hashtb gnus-backlog-hashtb nnwarchive-backlog-articles gnus-backlog-articles nil] 1)) gnus-backlog-enter-article gnus-backlog-buffer gnus-keep-backlog group number buffer] 4])
(defalias 'nnwarchive-get-article #[(article &optional group server buffer) "\"Ȏ\n	#-BqebZ!)\")\n	q cp##)B)" [nnwarchive-keep-backlog nntp-server-buffer buffer contents group article format " *nnwarchive backlog %s*" ((byte-code "	ć" [nnwarchive-backlog-hashtb gnus-backlog-hashtb nnwarchive-backlog-articles gnus-backlog-articles nil] 1)) gnus-backlog-request-article nil nnwarchive-url erase-buffer nnwarchive-backlog-enter-article nnheader-report nnwarchive "Fetched article %s" nnwarchive-address nnwarchive-backlog-articles nnwarchive-backlog-hashtb gnus-backlog-hashtb gnus-backlog-articles gnus-backlog-buffer gnus-keep-backlog nnwarchive-buffer nnwarchive-article-offset article1 nnwarchive-article-url nnwarchive-article-dissect] 4])
(defalias 'nnwarchive-retrieve-headers #[(articles &optional group server fetch-old) " \"#$!!!ʎr!qrq )p̉@ $eb#udb`rq\"c#c)A@.և\n\"A%q &\")q @	A!Ai,\n\"\"\"		B\nB)ه" [#1=#:--dolist-temp--12060 nnwarchive-headers nnwarchive-headers-cache #2=#:--dolist-temp--12059 art group nnwarchive-possibly-change-server get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "!!" [#3=#:temp-buffer buffer-name kill-buffer] 2)) erase-buffer nil nnwarchive-get-article search-forward "\n\n" t -1 format "221 %d Article retrieved.\n" insert-buffer-substring ".\n" headers assoc nnheader-insert-nov nov nntp-server-buffer e b buf articles header server #3# elem gnus-nov-is-evil nnwarchive-nov-is-evil nnwarchive-buffer nnwarchive-xover-files] 7])
(nnoo-register-function 'nnwarchive-retrieve-headers)
(defalias 'nnwarchive-request-group #[(group &optional server dont-check) "\n\"	C! \"\"#A@A@!%)" [nnwarchive-groups dont-check server nnwarchive-list-groups elem group nnwarchive-possibly-change-server nil nnwarchive-write-groups assoc nnheader-report nnwarchive "Group does not exist" "Opened group %s" nnheader-insert "211 %d %d %d %s\n" 0 1 prin1-to-string t] 8])
(nnoo-register-function 'nnwarchive-request-group)
(defalias 'nnwarchive-request-article #[(article &optional group server buffer) "\n\"	\n$" [buffer article server group nnwarchive-possibly-change-server nnwarchive-get-article] 5])
(nnoo-register-function 'nnwarchive-request-article)
(defalias 'nnwarchive-close-server #[(&optional server) "!!q!)\n\"	ˎ -\"" [nnwarchive-backlog-hashtb nnwarchive-backlog-articles nnwarchive-address nnwarchive-keep-backlog server nnwarchive-buffer nnwarchive-server-opened gnus-buffer-live-p kill-buffer format " *nnwarchive backlog %s*" ((byte-code "	ć" [nnwarchive-backlog-hashtb gnus-backlog-hashtb nnwarchive-backlog-articles gnus-backlog-articles nil] 1)) gnus-backlog-shutdown nnoo-close-server nnwarchive gnus-backlog-hashtb gnus-backlog-articles gnus-backlog-buffer gnus-keep-backlog] 4])
(nnoo-register-function 'nnwarchive-close-server)
(defalias 'nnwarchive-request-list #[(&optional server) "	\"q !\n\n   )ʇ" [nnwarchive-buffer server nnwarchive-list-dissect nnwarchive-list-url nnwarchive-possibly-change-server nil erase-buffer nnwarchive-url nnwarchive-write-groups nnwarchive-generate-active t] 3])
(nnoo-register-function 'nnwarchive-request-list)
(defalias 'nnwarchive-open-server #[(server &optional defs connectionless) "#!\"\"#! q \n\n!		 )ч" [defs nnwarchive-open-dissect nnwarchive-open-url nnwarchive-passwd nnwarchive-login server nnoo-change-server nnwarchive nnwarchive-init read-string format "Login at %s: " read-passwd "Password for %s at %s: " nnwarchive-read-groups erase-buffer nnwarchive-url t nnwarchive-authentication user-mail-address nnwarchive-groups nnwarchive-buffer] 5])
(byte-code "!!" [nnoo-register-function nnwarchive-open-server nnoo-define-skeleton-1 nnwarchive] 2)
(defalias 'nnwarchive-possibly-change-server #[(&optional group server) "!!?!" [server nnwarchive-init nnwarchive-server-opened nnwarchive-open-server] 2])
(defalias 'nnwarchive-read-groups #[nil "\nP	\"!!!ˎrq!ebp!+)" [nnwarchive-groups nnwarchive-directory nnwarchive-address #1=#:temp-buffer file expand-file-name "groups-" file-exists-p get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "!!" [#1# buffer-name kill-buffer] 2)) insert-file-contents read] 3])
(defalias 'nnwarchive-write-groups #[nil "\nP	\"!!ʎrqp\")rq~ed%," [nnwarchive-groups nnwarchive-directory nnwarchive-address #1=#:temp-file #2=#:temp-buffer expand-file-name "groups-" get-buffer-create generate-new-buffer-name " *temp file*" ((byte-code "!!" [#2# buffer-name kill-buffer] 2)) prin1 write-region nil 0] 7])
#@30 Initialize buffers and such.
(defalias 'nnwarchive-init #[(server) "!k\nA@AAkn@g\"+!!!	#!)	!" [nnwarchive-type-definition nnwarchive-type defs def server type intern nil "" address error "Undefined server %s" file-exists-p gnus-make-directory gnus-buffer-live-p nnheader-set-temp-buffer format " *nnwarchive %s %s*" nnwarchive-set-default nnwarchive-directory nnwarchive-buffer nnwarchive-default-type] 5 (#$ . 10495)])
(defalias 'nnwarchive-eval #[(expr) ":@!A!B9!" [expr nnwarchive-eval eval] 3])
(defalias 'nnwarchive-url #[(xurl) "	pƎ!@aA@A!\"!\"!.@aA@A!\"!\"!+" [enable-multibyte-characters mm-emacs-mule url-confirmation-func url-cookie-multiple-line default-enable-multibyte-characters xurl ((byte-code "	q!" [#1=#:multibyte #2=#:buffer set-buffer-multibyte] 2)) nil set-buffer-multibyte identity post mm-url-fetch-form nnwarchive-eval mm-url-insert apply format #2# #1#] 5])
(defalias 'nnwarchive-generate-active #[nil "	q \n@@!A@!ʱ\nAf+Ň" [nnwarchive-groups nntp-server-buffer #1=#:--dolist-temp--12061 elem erase-buffer nil prin1-to-string " " number-to-string 0 " 1 y\n"] 5])
(defalias 'nnwarchive-paged #[(articles) "Ɖ\nA@Yo	jB\\`+" [nnwarchive-xover-page-size nnwarchive-headers articles next narts art nil 0] 3])
(defalias 'nnwarchive-egroups-list-groups #[(groups) "q@ !eb#!!\"\nAEB)	\"A!	\"\nB	B)A&,Ƈ" [nnwarchive-groups nnwarchive-headers-cache elem #1=#:--dolist-temp--12062 articles group nil erase-buffer nnwarchive-url re-search-forward "of \\([0-9]+\\)[ 	\n]*</title>" t string-to-number match-string 1 assoc "" nnwarchive-egroups-xover nnwarchive-headers nnwarchive-buffer groups nnwarchive-xover-last-url] 5])
(defalias 'nnwarchive-egroups-list #[nil "ǉeb#!!\n\"AΠb	E\nBY-Ƈ" [case-fold-search articles nnwarchive-groups description elem group t nil re-search-forward "href=\"/group/\\([^/\"> ]+\\)" match-string 1 2 assoc 0] 5])
(defalias 'nnwarchive-egroups-xover #[(group) "Ɖeb#!!!!y\n	c!!y!!\n!!\n!հ׉&\n.\nB	B\n,	" [group nnwarchive-headers article subject from date nil re-search-forward "<a href=\"/group/\\([^/]+\\)/\\([0-9]+\\)[^>]+>\\([^<]+\\)<" t match-string 1 string-to-number 2 3 looking-at "<td[^>]+><font[^>]+>\\([^<]+\\)</font>" mm-url-decode-entities-string "<" "%" number-to-string "@egroup.com>" "" 0 vector extra xref lines chars references id number] 12])
(defalias 'nnwarchive-egroups-article #[(group articles) "eb#e`|db#`d|eb#!s  " [search-forward "<pre>" nil t search-backward "</pre>" re-search-forward "<a[^>]+>\\([^<]+\\)</a>" replace-match "\\1" mm-url-decode-entities buffer-string] 4])
(defalias 'nnwarchive-egroups-xover-files #[(group articles) "Ɖ\"!A@db\n!n	!*" [group nnwarchive-xover-dissect nnwarchive-xover-url articles aux auxs nil nnwarchive-paged sort < nnwarchive-url nnwarchive-egroups-xover] 4])
(defalias 'nnwarchive-mail-archive-list-groups #[(groups) "q@ !eb#!!T\"\nAEB)	\"A!	\"\nB	B)A%,Ƈ" [nnwarchive-groups nnwarchive-headers-cache elem #1=#:--dolist-temp--12063 articles group nil erase-buffer nnwarchive-url re-search-forward "msg\\([0-9]+\\)\\.html" t string-to-number match-string 1 assoc "" nnwarchive-mail-archive-xover nnwarchive-headers nnwarchive-buffer groups nnwarchive-xover-last-url] 5])
(defalias 'nnwarchive-mail-archive-list #[nil "ǉeb#!!y	\"A]\nE	BT-Ƈ" [case-fold-search nnwarchive-groups description elem group articles t nil re-search-forward "<a href=\"\\([^/]+\\)/\">\\([^>]+\\)<" match-string 1 2 0 assoc] 5])
(defalias 'nnwarchive-mail-archive-xover #[(group) "Ɖeb#!!T!y\n	f!!!Љ\n!!\nS#ԉ&\n.\nB	B,	" [extra nnwarchive-headers article subject from date nil re-search-forward "<A[^>]*HREF=\"msg\\([0-9]+\\)\\.html[^>]+>\\([^<]+\\)<" t string-to-number match-string 1 2 looking-at "<UL><LI><EM>From</EM>: *\\([^<]*[^< ]\\) *&lt;\\([^&]+\\)&gt;" "" mm-url-decode-entities-string format "<%05d%%%s>\n" 0 vector xref lines chars references id number group] 13])
(defalias 'nnwarchive-mail-archive-xover-files #[(group articles) " 	!eb!\"\"\"\nV !!\"\"e+" [articles nnwarchive-xover-last-url minart group min nnwarchive-headers erase-buffer nnwarchive-url nnwarchive-mail-archive-xover apply mapcar car 2 aux nnwarchive-xover-url] 7])
#@52 Modified rot13 table. tr/@A-Z[a-z/N-Z[@A-Mn-za-m/.
(defvar nnwarchive-caesar-translation-table nil (#$ . 15356))
#@59 Create modified rot13 table. tr/@A-Z[a-z/N-Z[@A-Mn-za-m/.
(defalias 'nnwarchive-make-caesar-translation-table #[nil "\"!!TWIq\nSO\n\\\n\\O\nS\n\\O\n\\	O	\\	\\O	\\O	\\O," [i a A table -1 make-string 256 0 mm-char-int ?a ?A 13 27 26 255] 9 (#$ . 15475)])
(defalias 'nnwarchive-from-r13 #[(from-r13) "!!ǎr\nqc	 ed\" ," [message-caesar-translation-table nnwarchive-caesar-translation-table #1=#:temp-buffer from-r13 get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "!!" [#1# buffer-name kill-buffer] 2)) nnwarchive-make-caesar-translation-table message-caesar-region buffer-string] 3])
(defalias 'nnwarchive-mail-archive-article #[(group article) "ƉDE@BAeb#ye`} eb#!seb#!s!!!@!!!db~#ye`|#e`}  eb @!db@ݱ!dbݱ\ndb\n	!db	ݱdb~c`#y`|#y`}ebwVe`|m!ʔʕ|`#ʔʕ|`}  db)!!ʔy`|\"\"!C#A`c#ʔdbcA`wV`|db)`#`By#B#!CBid|ebFSC#cG cH A@pcAI !ȁJ #K y`d}L M  ed|~)N  ." [subject date id url refs p nil t search-forward "X-Head-End" 0 mm-url-decode-entities "<!--X-" replace-match "" " -->" mail-fetch-field "from" nnwarchive-from-r13 "from-r13" "date" "message-id" "subject" "<ul>" "</ul>" mm-url-remove-markup delete-blank-lines message-remove-header "From: " "\n" "Subject: " "X-Message-ID: <" ">\n" "Date: " "X-Body-of-Message" "X-Body-of-Message-End" " \n	" looking-at "<PRE>?\n?" "</PRE>" "<P><A HREF=\"\\([^\"]+\\)" match-string 1 "<#external" " type=" string-match "\\.[^\\.]+$" mailcap-extension-to-mime "application/octet-stream" format " url=\"http://www.mail-archive.com/%s/%s\"" "<#/external>" "<#part type=\"text/html\" disposition=inline>" re-search-forward "[ \n	]*<PRE>\\|[ \n	]*<P><A HREF=\"" "<#/part>" "X-References-End" search-backward "X-References" "msg\\([0-9]+\\)\\.html" "<" "%" ">" "Message-ID: <%05d%%%s>\n" from mime e group case-fold-search done article "References:" " " "$" "\n\n" -1 "MIME-Version: 1.0\n" mml-generate-mime buffer-string] 11])
(provide 'nnwarchive)
