;ELC   
;;; compiled by amu@mit.edu on Sat Sep 13 16:19:26 1997
;;; from file /afs/sipb.mit.edu/contrib/emacs/packages/gnus-5.4.67/lisp/gnus-salt.el
;;; emacs version 19.30.1.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`gnus-salt.el' was compiled for Emacs 19.29 or later"))


(byte-code "ÀÁ!ˆÀÂ!‡" [require gnus gnus-sum] 2)
#@77 Minor mode for providing a pick-and-read interface in Gnus summary buffers.
(defvar gnus-pick-mode nil (#$ . 545))
(byte-code "ÀÁÂÃ\fÅÇ&ˆÀÈÂÉ\fÊÇ&ˆÀËÂÌ\fÅÇ&ˆÀÍÎÏ\fÅÇ&ˆÀÐÑÒ\fÓÇ&ˆÔÕ!„E ÂÕB„Y × ØÕÙ\"ˆÂ‡" [custom-declare-variable gnus-pick-display-summary nil "*Display summary while reading." :type boolean :group gnus-summary-pick gnus-pick-mode-hook "Hook run in summary pick mode buffers." hook gnus-mark-unpicked-articles-as-read "*If non-nil, mark all unpicked articles as read." gnus-pick-elegant-flow t "If non-nil, gnus-pick-start-reading will run gnus-summary-next-group when no articles have been picked." gnus-summary-pick-line-format "%-5P %U%R%z%I%(%[%4L: %-20,20n%]%) %s\n" "*The format specification of the lines in pick buffers.\nIt accepts the same format specs that `gnus-summary-line-format' does." string boundp gnus-pick-mode-map current-load-list make-sparse-keymap gnus-define-keys-1 ("t" gnus-uu-mark-thread "T" gnus-uu-unmark-thread " " gnus-pick-next-page "u" gnus-summary-unmark-as-processable "U" gnus-summary-unmark-all-processable "v" gnus-uu-mark-over "r" gnus-uu-mark-region "R" gnus-uu-unmark-region "e" gnus-uu-mark-by-regexp "E" gnus-uu-mark-by-regexp "b" gnus-uu-mark-buffer "B" gnus-uu-unmark-buffer "." gnus-pick-article gnus-down-mouse-2 gnus-pick-mouse-pick-region "X" gnus-pick-start-reading "" gnus-pick-start-reading)] 8)
(defalias 'gnus-pick-make-menu-bar #[nil "ÀÁ!?…  ÀÁ!„ ÂÁBÄÁÅÆ#ˆÇÁÆÉ$‡" [boundp gnus-pick-menu nil current-load-list put variable-documentation "" easy-menu-do-define gnus-pick-mode-map ("Pick" ("Pick" ["Article" gnus-summary-mark-as-processable t] ["Thread" gnus-uu-mark-thread t] ["Region" gnus-uu-mark-region t] ["Regexp" gnus-uu-mark-regexp t] ["Buffer" gnus-uu-mark-buffer t]) ("Unpick" ["Article" gnus-summary-unmark-as-processable t] ["Thread" gnus-uu-unmark-thread t] ["Region" gnus-uu-unmark-region t] ["Regexp" gnus-uu-unmark-regexp t] ["Buffer" gnus-uu-unmark-buffer t]) ["Start reading" gnus-pick-start-reading t] ["Switch pick mode off" gnus-pick-mode gnus-pick-mode])] 5])
#@100 Minor mode for providing a pick-and-read interface in Gnus summary buffers.

\{gnus-pick-mode-map}
(defalias 'gnus-pick-mode #[(&optional arg) "Á=…T ÂÃ!\f„ ?‚ Å\f!ÆVL„  ÇÈÉ\"‡ÂÊ!ËLˆ\fËÏËÐ\"ˆÑ ˆÒÈÉ\"ˆÂÓ!ÔLˆÕÖ×\"ƒJ Ø ˆÙÃÚ#ˆÜÝ!‡" [major-mode gnus-summary-mode make-local-variable gnus-pick-mode arg prefix-numeric-value 0 remove-hook gnus-message-setup-hook gnus-pick-setup-message gnus-auto-select-first nil gnus-summary-pick-line-format gnus-summary-line-format gnus-summary-line-format-spec gnus-update-format-specifications summary gnus-update-summary-mark-positions add-hook gnus-summary-goto-unread never gnus-visual-p pick-menu menu gnus-pick-make-menu-bar gnus-add-minor-mode " Pick" gnus-pick-mode-map run-hooks gnus-pick-mode-hook] 4 (#$ . 2632) "P"])
#@42 Make Message do the right thing on exit.
(defalias 'gnus-pick-setup-message #[nil "‰… Â	!… ÃÂ	!!)…% Šqˆ\f)…% ÅÆÇÈÉÊ%‡" [gnus-summary-buffer buffer get-buffer buffer-name gnus-pick-mode message-add-action (gnus-configure-windows (quote pick) t) send exit postpone kill] 7 (#$ . 3408)])
(byte-code "ÀÁ!„ ÂÁBÀ‡" [boundp gnus-pick-line-number 1 current-load-list] 2)
#@33 Return the current line number.
(defalias 'gnus-pick-line-number #[nil "oƒ À‰‡	T‰‡" [1 gnus-pick-line-number] 2 (#$ . 3786)])
#@91 Start reading the picked articles.
If given a prefix, mark all unpicked articles as read.
(defalias 'gnus-pick-start-reading #[(&optional catch-up) "ƒ$ ÁÂ!ˆ„ \fƒ Å ˆÆ ˆÇƒ  É‚! ÊË\"‡\fƒC „1 \fƒ6 ÍÂË\"ˆÎ!ƒ@ Ð ‡Ñ ‡ÒÓ!‡" [gnus-newsgroup-processable gnus-summary-limit-to-articles nil catch-up gnus-mark-unpicked-articles-as-read gnus-summary-limit-mark-excluded-as-read gnus-summary-first-article gnus-configure-windows gnus-pick-display-summary article pick t gnus-pick-elegant-flow gnus-summary-catchup gnus-group-quit-config gnus-newsgroup-name gnus-summary-exit gnus-summary-next-group error "No articles have been picked"] 3 (#$ . 3921) "P"])
#@86 Pick the article on the current line.
If ARG, pick the article on that line instead.
(defalias 'gnus-pick-article #[(&optional arg) "ƒ( ÁŠebˆÃ!SyÄUƒ `)\n„$ ÅÆÇ#ˆ‚' \nbˆ)ÈÉ!‡" [arg nil pos prefix-numeric-value 0 gnus-error 2 "No such line: %s" gnus-summary-mark-as-processable 1] 4 (#$ . 4581) "P"])
(defalias 'gnus-pick-mouse-pick #[(e) "À	!ˆŠÂÃ!)‡" [mouse-set-point e gnus-summary-mark-as-processable 1] 2 nil "e"])
#@96 Pick articles that the mouse is dragged over.
This must be bound to a button-down mouse event.
(defalias 'gnus-pick-mouse-pick-region #[(start-event) "À	!ˆÂ	‰A@)‰‰A@:ƒ A@@‚# A@)ÈÉ\"T\n‰@)Ì!Î!‰A@Ñ!ƒU Ò8‚Z Ò8S	Ô\f8¨ƒk Ô\f8‚l É)S‰pØ	!ˆ`Wƒ… bˆÙ ˆ`Ú‰‰‰`ß ˆ\f:…© àá\f@!!ˆÚ.‡" [mouse-minibuffer-check start-event 0 echo-keystrokes event start-posn position start-point count-lines 1 start-line start-window window-frame start-frame window-edges bounds top window-minibuffer-p 3 bottom 2 click-count mouse-selection-click-count mouse-selection-click-count-buffer mouse-set-point gnus-pick-article nil end-of-range last-end-point end-point end (lambda nil (track-mouse (byte-code "À ‰‰:… \n@Ã=)„ 	¢Ä=…ë 	¢Ä=„  	Å	8:ƒ- Å‚. Æ	8)‰‰A@:ƒE A@@‚I A@)‰	ƒT 	\n‰@)=ƒµ Ì	!ƒµ bˆ	bˆÎ ˆÏÆ	\"T‰^]Wƒ¡ Ô!ˆÎ ˆT‰‚Š +Ö¦×Uƒ  `‚  Ù AA‰ƒç WƒÔ ÜZ\"ˆ‚ç Yƒç ÜZT\"ˆ)‚  ‡" [read-event event object mouse-movement switch-frame 2 1 end position end-point last-end-point start-window integer-or-marker-p start-point gnus-pick-article count-lines this-line start-line min-line max-line goto-line click-count 3 0 end-of-range mouse-position mouse-row top mouse-scroll-subr bottom] 5))) key-binding vector] 6 (#$ . 5010) "e"])
#@76 Go to the next page.  If at the end of the buffer, start reading articles.
(defalias 'gnus-pick-next-page #[nil "ÀÀÂÃ�)‡" [nil scroll-in-place (scroll-up) ((end-of-buffer (gnus-pick-start-reading)))] 3 (#$ . 6340) nil])
#@76 Minor mode for providing a binary group interface in Gnus summary buffers.
(defvar gnus-binary-mode nil (#$ . 6567))
#@42 Hook run in summary binary mode buffers.
(defvar gnus-binary-mode-hook nil (#$ . 6690))
(byte-code "ÀÁ!„ ÂÁB	„ Ä ÅÁÆ\"ˆÂ‡" [boundp gnus-binary-mode-map nil current-load-list make-sparse-keymap gnus-define-keys-1 ("g" gnus-binary-show-article)] 3)
(defalias 'gnus-binary-make-menu-bar #[nil "ÀÁ!?…  ÀÁ!„ ÂÁBÄÁÅÆ#ˆÇÁÆÉ$‡" [boundp gnus-binary-menu nil current-load-list put variable-documentation "" easy-menu-do-define gnus-binary-mode-map ("Pick" ["Switch binary mode off" gnus-binary-mode t])] 5])
#@76 Minor mode for providing a binary group interface in Gnus summary buffers.
(defalias 'gnus-binary-mode #[(&optional arg) "Á=…? ÂÃ!ˆ\f„ ?‚ Å\f!ÆV‰…? ÂÇ!ˆÈÂÉ!ˆÊ	ËÌÍ\"ƒ5 Î ˆÏÃÐ#ˆÒÓ!‡" [major-mode gnus-summary-mode make-local-variable gnus-binary-mode arg prefix-numeric-value 0 gnus-auto-select-first nil gnus-summary-display-article-function gnus-binary-display-article gnus-visual-p binary-menu menu gnus-binary-make-menu-bar gnus-add-minor-mode " Binary" gnus-binary-mode-map run-hooks gnus-binary-mode-hook] 5 (#$ . 7206) "P"])
#@50 Run ARTICLE through the binary decode functions.
(defalias 'gnus-binary-display-article #[(article &optional all-header) "À	!… ÂÄ )‡" [gnus-summary-goto-subject article automatic gnus-view-pseudos gnus-uu-decode-uu] 2 (#$ . 7751)])
#@51 Bypass the binary functions and show the article.
(defalias 'gnus-binary-show-article #[(&optional arg) "ÀÂ!)‡" [nil gnus-summary-display-article-function gnus-summary-show-article arg] 2 (#$ . 7991) "P"])
(byte-code "ÀÁÂÃ\fÅÇ&ˆÀÈÉÊ\fËÇ&ˆÀÌÍÎ\fÏÇ&‡" [custom-declare-variable gnus-tree-line-format "%(%[%3,3n%]%)" "Format of tree elements." :type string :group gnus-summary-tree gnus-tree-minimize-window t "If non-nil, minimize the tree buffer window.\nIf a number, never let the tree buffer grow taller than that number of\nlines." boolean gnus-selected-tree-face (quote modeline) "*Face used for highlighting selected articles in the thread tree." face] 8)
#@30 Brackets used in tree nodes.
(defvar gnus-tree-brackets (quote ((91 . 93) (40 . 41) (123 . 125) (60 . 62))) (#$ . 8667))
#@51 Characters used to connect parents with children.
(defvar gnus-tree-parent-child-edges (quote (45 92 124)) (#$ . 8794))
(byte-code "ÀÁÂÃ\fÅÇ&ˆÀÈÉÊ\fËÇ&ˆÀÌÍÎ\fÏÇ&ˆÐÑ!„- ÒÑBÐÔ!„= ÔBÐÖ!„L ÍÖBÐ×!„[ Í×BÐØ!„j ÍØBÐÙ!„y ÍÙBÐÚ!„ˆ ÍÚBÐÛ!„— ÍÛBÜÝÞß#ˆ„½ à á!ˆâÛã\"ˆäåæ#ˆÍ‡" [custom-declare-variable gnus-tree-mode-line-format "Gnus: %%b %S %Z" "*The format specification for the tree mode line." :type string :group gnus-summary-tree gnus-generate-tree-function (quote gnus-generate-vertical-tree) "*Function for generating a thread tree.\nTwo predefined functions are available:\n`gnus-generate-horizontal-tree' and `gnus-generate-vertical-tree'." (radio (function-item gnus-generate-vertical-tree) (function-item gnus-generate-horizontal-tree) (function :tag "Other" nil)) gnus-tree-mode-hook nil "*Hook run in tree mode buffers." hook boundp gnus-tree-line-format-alist ((110 gnus-tmp-name 115) (102 gnus-tmp-from 115) (78 gnus-tmp-number 100) (91 gnus-tmp-open-bracket 99) (93 gnus-tmp-close-bracket 99) (115 gnus-tmp-subject 115)) current-load-list gnus-tree-mode-line-format-alist gnus-summary-mode-line-format-alist gnus-tree-mode-line-format-spec gnus-tree-line-format-spec gnus-tree-node-length gnus-selected-tree-overlay gnus-tree-displayed-thread gnus-tree-mode-map put gnus-tree-mode mode-class special make-keymap suppress-keymap gnus-define-keys-1 ("" gnus-tree-select-article gnus-mouse-2 gnus-tree-pick-article "" gnus-tree-read-summary-keys "h" gnus-tree-show-summary "	" gnus-info-find-node) substitute-key-definition undefined gnus-tree-read-summary-keys] 8)
(defalias 'gnus-tree-make-menu-bar #[nil "ÀÁ!?…  ÀÁ!„ ÂÁBÄÁÅÆ#ˆÇÁÆÉ$‡" [boundp gnus-tree-menu nil current-load-list put variable-documentation "" easy-menu-do-define gnus-tree-mode-map ("Tree" ["Select article" gnus-tree-select-article t])] 5])
#@41 Major mode for displaying thread trees.
(defalias 'gnus-tree-mode #[nil "À	\n\"À\fÆ#ÈÉÊ\"ƒ Ë ˆÌ ˆÍ ˆÎÐÒ!ˆÔp!ˆÆÆŠ× ˆØÙÚ!Û\"ˆ`S)ÝÞ!‡" [gnus-parse-format gnus-tree-mode-line-format gnus-summary-mode-line-format-alist gnus-tree-mode-line-format-spec gnus-tree-line-format gnus-tree-line-format-alist t gnus-tree-line-format-spec gnus-visual-p tree-menu menu gnus-tree-make-menu-bar kill-all-local-variables gnus-simplify-mode-line "Tree" mode-name gnus-tree-mode major-mode use-local-map gnus-tree-mode-map buffer-disable-undo buffer-read-only truncate-lines gnus-set-work-buffer gnus-tree-node-insert make-mail-header "" nil gnus-tree-node-length run-hooks gnus-tree-mode-hook] 4 (#$ . 10687) nil])
#@52 Read a summary buffer key sequence and execute it.
(defalias 'gnus-tree-read-summary-keys #[(&optional arg) "pÀÃ\fÀÅ#ˆÆ\n!‰…' Ç	!ˆƒ% É!†# ÊbˆË *‡" [nil win buf gnus-article-read-summary-keys arg t get-buffer-window select-window gnus-selected-tree-overlay gnus-overlay-end 1 gnus-tree-minimize] 4 (#$ . 11406) "P"])
#@45 Reconfigure windows to show summary buffer.
(defalias 'gnus-tree-show-summary #[nil "‰… Â	!… ÃÂ	!!)„ ÄÅ!‡ÆÇ!ˆÈ	!‡" [gnus-summary-buffer buffer get-buffer buffer-name error "There is no summary buffer for this tree buffer" gnus-configure-windows article gnus-summary-goto-subject gnus-current-article] 4 (#$ . 11735) nil])
#@41 Select the article under point, if any.
(defalias 'gnus-tree-select-article #[(article) "p	… Š\nqˆÃ	!ˆ)ÄÅ!!)‡" [buf article gnus-summary-buffer gnus-summary-goto-article select-window get-buffer-window] 3 (#$ . 12069) (list (gnus-tree-article-number))])
#@45 Select the article under the mouse pointer.
(defalias 'gnus-tree-pick-article #[(e) "À	!ˆÂÃ !‡" [mouse-set-point e gnus-tree-select-article gnus-tree-article-number] 2 (#$ . 12332) "e"])
(defalias 'gnus-tree-article-number #[nil "À`Á\"‡" [get-text-property gnus-number] 3])
#@55 Return a cons with BEG and END of the article region.
(defalias 'gnus-tree-article-region #[(article) "ÀedÁ\n$‰… ÄÁ\"B)‡" [text-property-any gnus-number article pos next-single-property-change] 6 (#$ . 12612)])
(defalias 'gnus-tree-goto-article #[(article) "ÀedÁ\n$‰… b)‡" [text-property-any gnus-number article pos] 6])
#@34 Center point in the tree window.
(defalias 'gnus-tree-recenter #[nil "À Á\nÃ\"\f…] Æ\f!ˆƒ È!† ÉbˆÊ ËWƒ* Ì‚6 Ê ÍWƒ5 É‚6 ÎÊ SŠdbˆ[yˆ`)Ò\fŠ[yˆ`)^\"ˆ+Æ!*‡" [selected-window get-buffer-window gnus-tree-buffer t tree-window selected select-window gnus-selected-tree-overlay gnus-overlay-end 1 window-height 4 0 7 2 top height bottom set-window-start] 4 (#$ . 12946)])
#@46 Return the tree buffer properly initialized.
(defalias 'gnus-get-tree-buffer #[nil "ŠÀ	!qˆ\nÃ=„ Ä ˆÃ ˆp)‡" [get-buffer-create gnus-tree-buffer major-mode gnus-tree-mode gnus-add-current-to-buffer-list] 2 (#$ . 13335)])
(defalias 'gnus-tree-minimize #[nil "…| Á ?…| ÂÃÆÇ!ˆÈ 	S_ZÊZÊ	Ëed\"\f	S\f]§ƒ: ^‚< Ïp!‰…L Ñ!S\f^…z =?…z Ó ÕÖ×�…y ØZ!ˆÙ!).‡" [gnus-tree-minimize-window one-window-p 0 nil tot-win-height windows walk-windows #[(window) "T‰‡" [windows] 2] frame-height window-min-height 2 count-lines height min tot get-buffer-window win window-height wh selected-window selected G77663 (select-window win) ((error)) enlarge-window select-window] 4])
(defalias 'gnus-tree-node-insert #[(header sparse &optional adopted) ";Â!ƒ ‚! ÃÄ!‰Å‰IˆÆÅIˆÇÅIˆ‰ÈH	ÊHÅH\fÍÎ	\"ƒE 	Å”TÅ•SO‚} ÍÏ	\"ƒo Å”ÍÑ	\"ƒe 	Å”TÅ•SO†k 	ÅO)‚} \f>ƒ{ Ó‚} 	\f>ƒ� A@@‚­ 	ƒœ AA@@‚­ ƒ© ×8@‚­ @@\f>ƒ¿ A@A‚Ý ƒÌ ×8A‚Ý 	ƒÙ AA@A‚Ý @AÚÚÚÝ`‰Þ!ˆ`‰à\fD#ˆá\f#.‡" [header dummy vectorp make-mail-header "*****" 0 7 6 2 gnus-tmp-from 1 gnus-tmp-subject gnus-tmp-number string-match "(.+)" "<[^>]+> *$" beg "^\"[^\"]*\"" sparse "***" gnus-tmp-name gnus-tree-brackets adopted 3 gnus-tmp-open-bracket gnus-tmp-close-bracket nil buffer-read-only end gnus-add-text-properties eval gnus-tree-line-format-spec gnus-number gnus-tree-highlight-node] 6])
#@63 Highlight current line according to `gnus-summary-highlight'.
(defalias 'gnus-tree-highlight-node #[(article beg end) "ÁŠ\fqˆžA† † È	\nžA@†' \fƒ< Î@@!„< A‰„- ,@A‰ÏÂ\"=?…_ ÑÂÓ\n!ƒ] \nJ‚^ \n$*‡" [gnus-summary-highlight nil face list gnus-summary-buffer article gnus-newsgroup-scored gnus-summary-default-score 0 score default gnus-newsgroup-data gnus-unread-mark mark eval get-text-property beg gnus-put-text-property end boundp] 7 (#$ . 14762)])
(defalias 'gnus-tree-indent #[(level) "À	T\n_SÃ\"c‡" [make-string gnus-tree-node-length level 32] 3])
(byte-code "À	BÂ	BÃ	BÀ‡" [gnus-tmp-limit current-load-list gnus-tmp-sparse gnus-tmp-indent] 2)
#@36 Generate a thread tree for THREAD.
(defalias 'gnus-generate-tree #[(thread) "ŠÀ qˆÁÂÅ ˆÂ\"ˆÈÉ!ˆebˆÊ ˆË ˆÌ ÎqÐ\"…= ÑÎqÐ\"!ˆÒ ˆÑ!,‡" [gnus-get-tree-buffer nil 0 gnus-tmp-indent buffer-read-only erase-buffer gnus-generate-tree-function thread gnus-set-mode-line tree gnus-tree-minimize gnus-tree-recenter selected-window selected get-buffer-window gnus-tree-buffer t select-window gnus-horizontal-recenter] 4 (#$ . 15445)])
#@29 Generate a horizontal tree.
(defalias 'gnus-generate-horizontal-tree #[(thread level &optional dummyp adopted) "@;‰† @… @ÂH>ÅÅ\f„$ A‚{ n„0 @cˆ‚l 	ÂU„l Ê	!ˆA@cˆ`‰Ë ZÌZÍyˆuˆgÎUƒh ÏÌ!ˆAA@cˆ‚M bˆÅÑ‰A@#ˆ„‰ n?…« Ôc‚« …« Õ‰A@\fƒ� 	T‚Ÿ 	†¥ 		$ˆ‚‰ ,‡" [thread dummy 0 gnus-tmp-limit do nil col beg gnus-tree-parent-child-edges level gnus-tree-indent gnus-point-at-bol 1 -1 32 delete-char dummyp gnus-tree-node-insert gnus-tmp-sparse adopted "\n" gnus-generate-horizontal-tree] 6 (#$ . 15886)])
(defalias 'gnus-tree-indent-vertical #[nil "T	_`Â ZZ‰ÄV… ÅÆ\"c)‡" [gnus-tree-node-length gnus-tmp-indent gnus-point-at-bol len 0 make-string 32] 4])
(put (quote gnus-tree-indent-vertical) (quote byte-optimizer) (quote byte-compile-inline-expand))
(defalias 'gnus-tree-forward-line #[(n) "S‰ÁYƒ ÂyÁU„  ÃˆÄcˆ‚  Ã‡" [n 0 1 nil "\n"] 2])
(put (quote gnus-tree-forward-line) (quote byte-optimizer) (quote byte-compile-inline-expand))
#@27 Generate a vertical tree.
(defalias 'gnus-generate-vertical-tree #[(thread level &optional dummyp adopted) "@;‰† @… @ÂH>Å\f„! A‚[ŠÂyˆo)„z T_`É ZZ‰\nÂV…C Ë\nÌ\"c)ˆËÍ¥Ì\"cˆAA@cˆÏS‰ÂYƒs ÏyÂU„X ÅˆÑcˆ‚X Åˆ)‚ÂU„‰\\SS‰ÂYƒ£ ÏyÂU„ˆ ÅˆÑcˆ‚ˆ Åˆ)T_`É ZZ‰\nÂV…À Ë\nÌ\"c)ˆÓÔ!ˆA@cˆ`Ôuˆ`SfÌUƒé ÓÔ!ˆ@cˆÔuˆ‚Ò bˆÏS‰ÂYƒÏyÂU„ð ÅˆÑcˆ‚ð Åˆ)ÅT_`É ZZ‰\nÂV…+Ë\nÌ\"c)ˆÖ‰A@#ˆÏS‰ÂYƒWÏyÂU„<ÅˆÑcˆ‚<Åˆ)„nebˆÅˆT‰‚�…�Ù‰A@\fƒ‚T‚„†Š		$ˆ‚n+‡" [thread dummy 0 gnus-tmp-limit do nil beg gnus-tree-node-length gnus-tmp-indent gnus-point-at-bol len make-string 32 2 gnus-tree-parent-child-edges 1 n "\n" level delete-char -1 dummyp gnus-tree-node-insert gnus-tmp-sparse adopted gnus-generate-vertical-tree] 6 (#$ . 16861)])
#@69 Generate the thread tree for ARTICLE if it isn't displayed already.
(defalias 'gnus-possibly-generate-tree #[(article &optional force) "Šqˆ	… \n… ÃÄž8!)…Õ ŠŠqˆÇÄž8ÈHÉ\"\nÌ=„? Ì=„? Î=ƒ¯ \nƒ¯ \n@ÏH>„Z \n@ÏH>ƒ¯ \nAGÒXƒx Ó\n@ÏH\"\nA@‰\n‚¬ Õ\nA!ƒ¯ \nA‰…« @@ÏH>ƒ¡ @\n×‰‚† A‰„‰ ×)„? \n*„Ê =?…Ô Ý!ˆ‰,‡" [gnus-summary-buffer gnus-use-trees gnus-show-threads vectorp 3 article gnus-newsgroup-data gnus-remove-thread 4 t thread gnus-fetch-old-headers some gnus-build-sparse-threads more 0 gnus-newsgroup-sparse gnus-newsgroup-ancient 1 delq gnus-newsgroup-limit gnus-invisible-cut-children th nil gnus-tmp-sparse gnus-tmp-limit top force gnus-tree-displayed-thread gnus-generate-tree] 5 (#$ . 17669)])
(defalias 'gnus-tree-open #[(group) "À ‡" [gnus-get-tree-buffer] 1])
(defalias 'gnus-tree-close #[(group) "À‡" [nil] 1])
#@45 Highlight the selected article in the tree.
(defalias 'gnus-highlight-selected-tree #[(article) "pÀqˆÄ!‰ƒU ƒ Ç!ƒ( ÈÉÊË\"‰Ì#ˆÎ	@b	A#ˆÏ ˆÐ ˆÑ ÓqÔ\"ƒT ÕÓqÔ\"!ˆÖ ˆÕ!ˆ)Šqˆ×Ø!ˆ)\nq*‡" [nil region buf gnus-tree-buffer gnus-tree-article-region article gnus-selected-tree-overlay gnus-extent-detached-p gnus-overlay-put gnus-make-overlay 1 2 face gnus-selected-tree-face gnus-move-overlay gnus-tree-minimize gnus-tree-recenter selected-window selected get-buffer-window t select-window gnus-horizontal-recenter gnus-set-mode-line tree] 4 (#$ . 18559)])
(defalias 'gnus-tree-highlight-article #[(article face) "ŠÀ qˆÁÃ\f!‰…! Å\n@\nAÆ$ˆÇÈpÉ\"\nA\"*‡" [gnus-get-tree-buffer nil region gnus-tree-article-region article gnus-put-text-property face set-window-point get-buffer-window t] 5])
(byte-code "ÀÁ!„ ÂÁBÀÄ!„ ÅÄBÀÆ!„! ÇÆBÀÈ!„. ÉÈBÀÊ!„; Ë\nÊBÀÌ!„H Í\fÌBÀÎ!„U ÏÎBÀÐ!„b ÑÐBÀÒ!„o ÓÒBÓ‡" [boundp gnus-carpal-group-buffer-buttons (("next" . gnus-group-next-unread-group) ("prev" . gnus-group-prev-unread-group) ("read" . gnus-group-read-group) ("select" . gnus-group-select-group) ("catch-up" . gnus-group-catchup-current) ("new-news" . gnus-group-get-new-news-this-group) ("toggle-sub" . gnus-group-unsubscribe-current-group) ("subscribe" . gnus-group-unsubscribe-group) ("kill" . gnus-group-kill-group) ("yank" . gnus-group-yank-group) ("describe" . gnus-group-describe-group) "list" ("subscribed" . gnus-group-list-groups) ("all" . gnus-group-list-all-groups) ("killed" . gnus-group-list-killed) ("zombies" . gnus-group-list-zombies) ("matching" . gnus-group-list-matching) ("post" . gnus-group-post-news) ("mail" . gnus-group-mail) ("rescan" . gnus-group-get-new-news) ("browse-foreign" . gnus-group-browse-foreign) ("exit" . gnus-group-exit)) current-load-list gnus-carpal-summary-buffer-buttons ("mark" ("read" . gnus-summary-mark-as-read-forward) ("tick" . gnus-summary-tick-article-forward) ("clear" . gnus-summary-clear-mark-forward) ("expirable" . gnus-summary-mark-as-expirable) "move" ("scroll" . gnus-summary-next-page) ("next-unread" . gnus-summary-next-unread-article) ("prev-unread" . gnus-summary-prev-unread-article) ("first" . gnus-summary-first-unread-article) ("best" . gnus-summary-best-unread-article) "article" ("headers" . gnus-summary-toggle-header) ("uudecode" . gnus-uu-decode-uu) ("enter-digest" . gnus-summary-enter-digest-group) ("fetch-parent" . gnus-summary-refer-parent-article) "mail" ("move" . gnus-summary-move-article) ("copy" . gnus-summary-copy-article) ("respool" . gnus-summary-respool-article) "threads" ("lower" . gnus-summary-lower-thread) ("kill" . gnus-summary-kill-thread) "post" ("post" . gnus-summary-post-news) ("mail" . gnus-summary-mail) ("followup" . gnus-summary-followup-with-original) ("reply" . gnus-summary-reply-with-original) ("cancel" . gnus-summary-cancel-article) "misc" ("exit" . gnus-summary-exit) ("fed-up" . gnus-summary-catchup-and-goto-next-group)) gnus-carpal-server-buffer-buttons (("add" . gnus-server-add-server) ("browse" . gnus-server-browse-server) ("list" . gnus-server-list-servers) ("kill" . gnus-server-kill-server) ("yank" . gnus-server-yank-server) ("copy" . gnus-server-copy-server) ("exit" . gnus-server-exit)) gnus-carpal-browse-buffer-buttons (("subscribe" . gnus-browse-unsubscribe-current-group) ("exit" . gnus-browse-exit)) gnus-carpal-group-buffer "*Carpal Group*" gnus-carpal-summary-buffer "*Carpal Summary*" gnus-carpal-server-buffer "*Carpal Server*" gnus-carpal-browse-buffer "*Carpal Browse*" gnus-carpal-attached-buffer nil] 2)
#@35 *Hook run in carpal mode buffers.
(defvar gnus-carpal-mode-hook nil (#$ . -22138))
#@31 *Face used on carpal buttons.
(defvar gnus-carpal-button-face (quote bold) (#$ . -22227))
#@38 *Face used on carpal buffer headers.
(defvar gnus-carpal-header-face (quote bold-italic) (#$ . -22323))
(byte-code "ÀÁ!„ ÂÁBÄÅÆÇ#ˆ	„0 È É	!ˆÊ	ËÌ#ˆÊ	ÍÌ#ˆÊ	Ï#ˆÂ‡" [boundp gnus-carpal-mode-map nil current-load-list put gnus-carpal-mode mode-class special make-keymap suppress-keymap define-key " " gnus-carpal-select "" gnus-mouse-2 gnus-carpal-mouse-select] 4)
#@168 Major mode for clicking buttons.

All normal editing commands are switched off.
\<gnus-carpal-mode-map>
The following commands are available:

\{gnus-carpal-mode-map}
(defalias 'gnus-carpal-mode #[nil "À ˆ	AÃÅÇÉ\n!ˆËp!ˆÌÎÏ!ˆÐÑ!‡" [kill-all-local-variables gnus-mode-line-modified mode-line-modified gnus-carpal-mode major-mode "Gnus Carpal" mode-name nil mode-line-process use-local-map gnus-carpal-mode-map buffer-disable-undo t buffer-read-only make-local-variable gnus-carpal-attached-buffer run-hooks gnus-carpal-mode-hook] 2 (#$ . 22697) nil])
(defalias 'gnus-carpal-setup-buffer #[(type) "ÀÁÂ\"!JÅ\f!?…‰ ŠÆ\f!qˆÇ ˆÀÁÈ\"!	Ê ˆÀÁË\"!JÌ‰ƒv @A;ƒZ Ð`cˆ`ÑcˆÒD#ˆ‚2 Ð`@cˆ`ÑcˆÔAÒ×¯#ˆ‚2 Ø ÙZÛed\"ˆ)ÜÝp!e\",)‡" [intern format "gnus-carpal-%s-buffer" type buffer get-buffer get-buffer-create gnus-carpal-mode "gnus-%s-buffer" gnus-carpal-attached-buffer gnus-add-current-to-buffer-list "gnus-carpal-%s-buffer-buttons" nil button buffer-read-only buttons gnus-set-text-properties " " face gnus-carpal-header-face gnus-callback gnus-carpal-button-face gnus-mouse-face-prop highlight window-width 2 fill-column fill-region set-window-point get-buffer-window] 9])
#@32 Select the button under point.
(defalias 'gnus-carpal-select #[nil "À`Á\"‰… Ã\fJ!ˆÅ\n!)‡" [get-text-property gnus-callback func pop-to-buffer gnus-carpal-attached-buffer call-interactively] 4 (#$ . 23903) nil])
#@44 Select the button under the mouse pointer.
(defalias 'gnus-carpal-mouse-select #[(event) "À	!ˆÂ ‡" [mouse-set-point event gnus-carpal-select] 2 (#$ . 24122) "e"])
(byte-code "À ˆÁÂ!‡" [gnus-ems-redefine provide gnus-salt] 2)
