;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:36:41 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/arc-mode.el
;;; in Emacs version 21.3
;;; with bytecomp version 2.85.4.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`arc-mode.el' was compiled for Emacs 19.29 or later"))

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


(byte-code "\300\301\302\303\304\305%\210\300\306\302\307\304\301%\210\300\310\302\311\304\301%\210\300\312\302\313\304\301%\210\300\314\302\315\304\301%\207" [custom-declare-group archive nil "Simple editing of archives." :group data archive-arc "ARC-specific options to archive." archive-lzh "LZH-specific options to archive." archive-zip "ZIP-specific options to archive." archive-zoo "ZOO-specific options to archive."] 6)
#@52 *Directory for temporary files made by arc-mode.el
(custom-declare-variable 'archive-tmpdir '(make-temp-name (expand-file-name (if (eq system-type 'ms-dos) "ar" "archive.tmp") temporary-file-directory)) '(#$ . -1045) :type 'directory :group 'archive)
#@186 *Regexp recognizing archive files names that are not local.
A non-local file is one whose file name is not proper outside Emacs.
A local copy of the archive will be used when updating.
(custom-declare-variable 'archive-remote-regexp '"^/[^/:]*[^/:.]:" '(#$ . -1303) :type 'regexp :group 'archive)
#@58 *Hooks to run when an archive member has been extracted.
(custom-declare-variable 'archive-extract-hooks 'nil '(#$ . -1606) :type 'hook :group 'archive)
#@164 *Program and its options to run in order to extract an arc file member.
Extraction should happen to the current directory.  Archive and member
name will be added.
(custom-declare-variable 'archive-arc-extract ''("arc" "x") '(#$ . -1766) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-arc)
#@110 *Program and its options to run in order to delete arc file members.
Archive and member names will be added.
(custom-declare-variable 'archive-arc-expunge ''("arc" "d") '(#$ . -2125) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-arc)
#@111 *Program and its options to run in order to update an arc file member.
Archive and member name will be added.
(custom-declare-variable 'archive-arc-write-file-member ''("arc" "u") '(#$ . -2430) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-arc)
#@158 *Program and its options to run in order to extract an lzh file member.
Extraction should happen to standard output.  Archive and member name will
be added.
(custom-declare-variable 'archive-lzh-extract ''("lha" "pq") '(#$ . -2746) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-lzh)
#@110 *Program and its options to run in order to delete lzh file members.
Archive and member names will be added.
(custom-declare-variable 'archive-lzh-expunge ''("lha" "d") '(#$ . -3100) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-lzh)
#@111 *Program and its options to run in order to update an lzh file member.
Archive and member name will be added.
(custom-declare-variable 'archive-lzh-write-file-member ''("lha" "a") '(#$ . -3405) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-lzh)
#@100 *If non-nil then pkzip option are used instead of zip options.
Only set to true for msdog systems!
(custom-declare-variable 'archive-zip-use-pkzip '(memq system-type '(ms-dos windows-nt)) '(#$ . -3721) :type 'boolean :group 'archive-zip)
#@287 *Program and its options to run in order to extract a zip file member.
Extraction should happen to standard output.  Archive and member name will
be added.  If `archive-zip-use-pkzip' is non-nil then this program is
expected to extract to a file junking the directory part of the name.
(custom-declare-variable 'archive-zip-extract '(if archive-zip-use-pkzip '("pkunzip" "-e" "-o-") '("unzip" "-qq" "-c")) '(#$ . -3966) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-zip)
#@110 *Program and its options to run in order to delete zip file members.
Archive and member names will be added.
(custom-declare-variable 'archive-zip-expunge '(if archive-zip-use-pkzip '("pkzip" "-d") '("zip" "-d" "-q")) '(#$ . -4508) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-zip)
#@189 *Program and its options to run in order to update a zip file member.
Options should ensure that specified directory will be put into the zip
file.  Archive and member name will be added.
(custom-declare-variable 'archive-zip-update '(if archive-zip-use-pkzip '("pkzip" "-u" "-P") '("zip" "-q")) '(#$ . -4862) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-zip)
#@196 *Program and its options to run in order to update a case fiddled zip member.
Options should ensure that specified directory will be put into the zip file.
Archive and member name will be added.
(custom-declare-variable 'archive-zip-update-case '(if archive-zip-use-pkzip archive-zip-update '("zip" "-q" "-k")) '(#$ . -5294) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-zip)
#@153 *If non-nil then zip file members may be down-cased.
This case fiddling will only happen for members created by a system
that uses caseless file names.
(custom-declare-variable 'archive-zip-case-fiddle 't '(#$ . -5741) :type 'boolean :group 'archive-zip)
#@157 *Program and its options to run in order to extract a zoo file member.
Extraction should happen to standard output.  Archive and member name will
be added.
(custom-declare-variable 'archive-zoo-extract ''("zoo" "xpq") '(#$ . -6003) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-zoo)
#@110 *Program and its options to run in order to delete zoo file members.
Archive and member names will be added.
(custom-declare-variable 'archive-zoo-expunge ''("zoo" "DqPP") '(#$ . -6357) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-zoo)
#@110 *Program and its options to run in order to update a zoo file member.
Archive and member name will be added.
(custom-declare-variable 'archive-zoo-write-file-member ''("zoo" "a") '(#$ . -6665) :type '(list (string :tag "Program") (repeat :tag "Options" :inline t (string :format "%v"))) :group 'archive-zoo)
#@34 *Symbol describing archive type.
(defvar archive-subtype nil (#$ . -6979))
#@35 *Position of first contents line.
(defvar archive-file-list-start nil (#$ . -7060))
#@42 *Position just after last contents line.
(defvar archive-file-list-end nil (#$ . -7150))
#@36 *Position of real archive's start.
(defvar archive-proper-file-start nil (#$ . -7245))
#@47 *Non-nil if the archive is read-only on disk.
(defvar archive-read-only nil (#$ . -7338))
#@40 *Name of local copy of remote archive.
(defvar archive-local-name nil (#$ . -7434))
#@42 *Local keymap for archive mode listings.
(defvar archive-mode-map nil (#$ . -7524))
#@33 *Column where file names start.
(defvar archive-file-name-indent nil (#$ . -7614))
#@49 *Non-nil if the archive is outside file system.
(defvar archive-remote nil (#$ . -7703))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local archive-remote put permanent-local t] 4)
#@34 Coding-system of archive member.
(defvar archive-member-coding-system nil (#$ . 7915))
(make-variable-buffer-local 'archive-member-coding-system)
#@47 *Non-nil when alternate information is shown.
(defvar archive-alternate-display nil (#$ . -8067))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local archive-alternate-display put permanent-local t] 4)
#@41 *In archive members, points to archive.
(defvar archive-superior-buffer nil (#$ . -8299))
(put 'archive-superior-buffer 'permanent-local t)
#@37 *Non-nil in archive member buffers.
(defvar archive-subfile-mode nil (#$ . -8445))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local archive-subfile-mode put permanent-local t] 4)
#@122 Vector of file descriptors.
Each descriptor is a vector of the form
 [EXT-FILE-NAME INT-FILE-NAME CASE-FIDDLED MODE ...]
(defvar archive-files nil (#$ . 8658))
(make-variable-buffer-local 'archive-files)
#@58 *Non-nil when running under under Lucid Emacs or Xemacs.
(defvar archive-lemacs (string-match "\\(Lucid\\|Xemacs\\)" emacs-version) (#$ . -8868))
(defalias 'archive-name #[(suffix) "\302\303\304!\305	R!\207" [archive-subtype suffix intern "archive-" symbol-name "-"] 5])
(put 'archive-name 'byte-optimizer 'byte-compile-inline-expand)
#@187 Convert little endian string/vector to integer.
Alternatively, first argument may be a buffer position in the current buffer
in which case a second argument, length, should be supplied.
(defalias 'archive-l-e #[(str &optional len) ";\203 G\202 \211	\\{\304\211\n	W\203, \nT\305\306\"	\nZH\\\202 *\207" [str len i result 0 ash 8] 4 (#$ . 9211)])
#@75 Turn an integer like 0700 (i.e., 448) into a mode string like -rwx------.
(defalias 'archive-int-to-mode #[(mode) "\301\302\303\304\"!\203 \302\303\305\"!\203 \306\202 \307\202 \310\302\303\311\"!\203) \306\202* \312\302\303\313\"!\2037 \306\2028 \314\302\303\315\"!\203R \302\303\316\"!\203N \306\202` \317\202` \302\303\316\"!\203_ \320\202` \321\302\303\322\"!\203m \306\202n \312\302\303\323\"!\203{ \306\202| \314\302\303\324\"!\203\226 \302\303\325\"!\203\222 \306\202\244 \317\202\244 \302\303\325\"!\203\243 \320\202\244 \321\302\303\326\"!\203\261 \306\202\262 \312\302\303\327\"!\203\277 \306\202\300 \314\302\303\330\"!\203\315 \306\202\316 \320&\n\207" [mode string zerop logand 8192 16384 45 100 99 256 114 128 119 64 1024 83 120 115 32 16 8 2048 4 2 1] 14 (#$ . 9577)])
#@461 From the integer OLDMODE and the string NEWMODE calculate a new file mode.
NEWMODE may be an octal number including a leading zero in which case it
will become the new mode.

NEWMODE may also be a relative specification like "og-rwx" in which case
OLDMODE will be modified accordingly just like chmod(2) would have done.

If optional third argument ERROR is non-nil an error will be signaled if
the mode is invalid.  If ERROR is nil then nil will be returned.
(defalias 'archive-calc-mode #[(oldmode newmode &optional error) "\306\307\"\203/ \310G\311	\nW\203& \312\313\"	H\\\314\\	T\211\202 \315\316\f\317\"\"+\207\306\320\"\203\310\f\321\224H\310\313\224)*	\313\225W\203\221 	H+\315+\322U\203_ \323\202\210 +\324U\203j \325\202\210 +\326U\203u \327\202\210 +\330U\203\200 \331\202\210 +\332U\205\210 \333\"	T)\202F *\311\225W\203 *H\211,\334U\203\251 \335\202\307 ,\336U\203\264 \337\202\307 ,\340U\203\277 \341\202\307 ,\342U\205\307 \343-)\344U\203\330 \316\345-!\")\346U\203\355 \316\345\316-\"!\"\202\366 \315\316-\"\"**T\211*\202\223 -\207'\205\f\347\350\"\207" [newmode i len result oldmode bits string-match "^0[0-7]*$" 0 1 lsh 3 -48 logior logand 65024 "^\\([agou]+\\)\\([---+=]\\)\\([rwxst]+\\)$" 2 114 292 119 146 120 73 115 3072 116 512 97 4095 117 1472 103 2104 111 7 61 lognot 45 error "Invalid mode specification: %s" op who rwx whoc whomask] 7 (#$ . 10387)])
#@35 Stringify dos packed DATE record.
(defalias 'archive-dosdate #[(date) "\304\305\306\"\307\"\310\\\304\305\311\"\312\"\304\313\"\n\314V\204# \n\315W\203' \316\2020 \317\320	\321\nSH$+\207" [date day month year logand ash -9 127 1980 -5 15 31 12 1 "" format "%2d-%s-%d" ["Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul" "Aug" "Sep" "Oct" "Nov" "Dec"]] 5 (#$ . 11827)])
#@35 Stringify dos packed TIME record.
(defalias 'archive-dostime #[(time) "\304\305\306\"\307\"\304\305\310\"\311\"\304\307\"\312_\313\314\n	$+\207" [time second minute hour logand ash -11 31 -5 63 2 format "%02d:%02d:%02d"] 5 (#$ . 12200)])
(defalias 'archive-get-lineno #[nil "`Y\203 \301\212\302 \210`)\"\207\303\207" [archive-file-list-start count-lines beginning-of-line 0] 3])
#@122 Return the descriptor vector for file at point.
Does not signal an error if optional second argument NOERROR is non-nil.
(defalias 'archive-get-descr #[(&optional noerror) "\305 `	Y\203* \nGW\203* \nH\306!\203 \202& \f?\205& \307\310!)\2022 \f?\2052 \307\311!)\207" [no archive-file-list-start archive-files item noerror archive-get-lineno vectorp error "Entry is not a regular member of the archive" "Line does not describe a member of the archive"] 2 (#$ . 12596)])
#@455 Major mode for viewing an archive file in a dired-like way.
You can move around using the usual cursor motion commands.
Letters no longer insert themselves.
Type `e' to pull a file out of the archive and into its own buffer;
or click mouse-2 on the file's line in the archive mode buffer.

If you edit a sub-file of this archive (as with the `e' command) and
save it, the contents of that buffer will be saved back into the
archive.

\{archive-mode-map}
(defalias 'archive-mode #[(&optional force) "\306\307 !\203\n  \207	?\205 \n?\205\301 \310 \311\312!!\313 \210\314\305!\210\314\315!\210\316\317\320!\210,\204? \314\321!\210\322\321\323\"\210\314\324!\210\325\314\326!\210\325\314\327!\210\330\314\331!\210\332\333 !?\206m -\205m \334.-\320H\"\314\335!\210,\204\211 \334/\333 \"\206\207 \334.\333 \",\3360\f\337P1\340\3412\342\343\312!\3442R!)\345\"\210\3463!\210*\314\347!\210\314\350!\210\314\351!\210\314\352!\210\353\325!\210\330\2114\207" [default-major-mode force archive-files type typename archive-subtype zerop buffer-size archive-find-type capitalize symbol-name kill-all-local-variables make-local-variable revert-buffer-function archive-mode-revert auto-save-mode 0 write-contents-hooks add-hook archive-write-file require-final-newline nil local-enable-local-variables file-precious-flag t archive-read-only file-writable-p buffer-file-name string-match archive-local-name archive-mode "-Archive" run-hooks "mode-hook" intern "archive-" "-" archive-mode-hook use-local-map archive-proper-file-start archive-file-list-start archive-file-list-end archive-file-name-indent archive-summarize archive-remote archive-subfile-mode file-name-invalid-regexp archive-remote-regexp major-mode mode-name suffix archive-mode-map buffer-read-only] 6 (#$ . 13078)])
(byte-code "\306\307\310\311#\210\204\257\312 \313!\210\314\315\316#\210\314\317\320#\210\314\321\322#\210\314\323\322#\210\314\324\325#\210\314\326\325#\210\314\327\325#\210\314\330\331#\210\314\332\333#\210\314\334\335#\210\314\336\316#\210\314\337\316#\210\314\340\316#\210\314\341\342#\210\314\343\344#\210\314\345\346#\210\314\347\344#\210\314\350\344#\210\314\351\352#\210\314\353\354#\210\314\355\356#\210\314\357\360#\210\314\361\362#\210\314\363\364#\210\314\365\342#\210\314\366\367#\210\314\370\371#\210\314\372\373#\210	\203\314 \314\374\375#\210\314\376\375#\210\202\325 \377\201@ \375\n$\210\314	\203\341 \201A \202\344 \201B \201C #\210	\204\257\314\201D \201E \201F \201E !B#\210\314\201G \201H #\210\314\201I \201J #\210\314\201K \201L #\210\314\201M \201N #\210\314\201O \201P #\210\314\201Q \201R \201F \201R !B#\210\314\201S \201T #\210\314\201U \201V #\210\314\201W \201X #\210\314\201Y \201Z #\210\314\201[ \201\\ \201F \201\\ !B#\210\314\201] \201^ #\210\314\201_ \201` #\210\314\201a \201b #\210\314\201c \201d #\210\314\201e \201f #\210\201g \201g C\235\204\305\201h \f\"*\306\207" [archive-mode-map archive-lemacs global-map item1 items minor-mode-alist put archive-mode mode-class special make-keymap suppress-keymap define-key " " archive-next-line "a" archive-alternate-display "d" archive-flag-deleted "" "e" archive-extract "f" "" "g" revert-buffer "h" describe-mode "m" archive-mark "n" "" [down] "o" archive-extract-other-window "p" archive-previous-line "q" quit-window "" [up] "r" archive-rename-entry "u" archive-unflag "\377" archive-unmark-all-files "v" archive-view "x" archive-expunge "" archive-unflag-backwards "E" "M" archive-chmod-entry "G" archive-chgrp-entry "O" archive-chown-entry "u" archive-undo "" substitute-key-definition undo button2 [mouse-2] archive-mouse-extract [menu-bar immediate] "Immediate" make-sparse-keymap [menu-bar immediate alternate] (menu-item "Alternate Display" archive-alternate-display :enable (boundp (archive-name "alternate-display")) :help "Toggle alternate file info display") [menu-bar immediate view] (menu-item "View This File" archive-view :help "Display file at cursor in View Mode") [menu-bar immediate display] (menu-item "Display in Other Window" archive-display-other-window :help "Display file at cursor in another window") [menu-bar immediate find-file-other-window] (menu-item "Find in Other Window" archive-extract-other-window :help "Edit file at cursor in another window") [menu-bar immediate find-file] (menu-item "Find This File" archive-extract :help "Extract file at cursor and edit it") [menu-bar mark] "Mark" [menu-bar mark unmark-all] (menu-item "Unmark All" archive-unmark-all-files :help "Unmark all marked files") [menu-bar mark deletion] (menu-item "Flag" archive-flag-deleted :help "Flag file at cursor for deletion") [menu-bar mark unmark] (menu-item "Unflag" archive-unflag :help "Unmark file at cursor") [menu-bar mark mark] (menu-item "Mark" archive-mark :help "Mark file at cursor") [menu-bar operate] "Operate" [menu-bar operate chown] (menu-item "Change Owner..." archive-chown-entry :enable (fboundp (archive-name "chown-entry")) :help "Change owner of marked files") [menu-bar operate chgrp] (menu-item "Change Group..." archive-chgrp-entry :enable (fboundp (archive-name "chgrp-entry")) :help "Change group ownership of marked files") [menu-bar operate chmod] (menu-item "Change Mode..." archive-chmod-entry :enable (fboundp (archive-name "chmod-entry")) :help "Change mode (permissions) of marked files") [menu-bar operate rename] (menu-item "Rename to..." archive-rename-entry :enable (fboundp (archive-name "rename-entry")) :help "Rename marked files") [menu-bar operate expunge] (menu-item "Expunge Marked Files" archive-expunge :help "Delete all flagged files from archive") (archive-subfile-mode " Archive") append] 6)
(defalias 'archive-find-type #[nil "~\210eb\210\302\303\304!\203 \305\202> \303\306!\203 \307\202> \303\310!\203% \311\202> \303\312!\203; \313\314	\2063 \315 \"\203; \316\202> \317\320!)\207" [case-fold-search buffer-file-name nil looking-at "[P]K" zip "..-l[hz][0-9ds]-" lzh "....................[\334]\247\304\375" zoo "" string-match "\\.[aA][rR][cC]$" buffer-name arc error "Buffer format not recognized"] 3])
#@297 Parse the contents of the archive file in the current buffer.
Place a dired-like listing on the front;
then narrow to it, so that only that listing
is visible (and the real data of the buffer is hidden).
Optional argument SHUT-UP, if non-nil, means don't print messages
when parsing the archive.
(defalias 'archive-summarize #[(&optional shut-up) "~\210\306\307!\210\307	\204 \310\311!\210\312p!\210\313\314\315\316!\317\nR!) 	\204* \310\320!\210\321 e`}\210\322\307!\210\323 \210)b\210\324\325!\207" [buffer-read-only shut-up suffix archive-subtype archive-files archive-proper-file-start set-buffer-multibyte nil message "Parsing archive file..." buffer-disable-undo "summarize" intern "archive-" symbol-name "-" "Parsing archive file...done." point-marker set-buffer-modified-p buffer-enable-undo archive-next-line 0 archive-file-list-start] 5 (#$ . 19214)])
#@46 Recreate the contents listing of an archive.
(defalias 'archive-resummarize #[nil "\305 \306 \307~\210e|\210\310\311!\210\312\n!\210\fb\210\313	!+\207" [buffer-read-only no modified archive-proper-file-start archive-file-list-start buffer-modified-p archive-get-lineno nil archive-summarize t set-buffer-modified-p archive-next-line] 3 (#$ . 20090)])
#@75 Insert a description of a list of files annotated with proper mouse face.
(defalias 'archive-summarize-files #[(files) "\304 	\203 	@\305H\202 \306\307\310\311\312	\"\"c\210\304 \211\207" [archive-file-list-start files archive-file-name-indent archive-file-list-end point-marker 1 0 apply concat mapcar #[(fil) "\303H\304P\n\204 \305\306H\307H\310	$\210	)\207" [fil text archive-lemacs 0 "\n" add-text-properties 1 2 (mouse-face highlight help-echo "mouse-2: extract this file into a buffer")] 5]] 5 (#$ . 20451)])
#@167 Toggle alternative display.
To avoid very long lines some archive mode don't show all information.
This function changes the set of information shown for each files.
(defalias 'archive-alternate-display #[nil "?\301 \207" [archive-alternate-display archive-resummarize] 1 (#$ . 20983) nil])
#@340 Make sure a file FNAME can be created uniquely in directory DIR.

If FNAME can be uniquely created in DIR, it is returned unaltered.
If FNAME is something our underlying filesystem can't grok, or if another
file by that name already exists in DIR, a unique new name is generated
using `make-temp-file', and the generated name is returned.
(defalias 'archive-unique-fname #[(fname dir) "\305	\"\306\n\"\204 \307\f!\203, \310\305\311\312!\203% \312 \204% \313\202& \314	\"!\202- \f*\207" [fname dir file-name-invalid-regexp alien fullname expand-file-name string-match file-exists-p make-temp-file fboundp msdos-long-file-names "am" "arc-mode."] 4 (#$ . 21283)])
(defalias 'archive-maybe-copy #[(archive) "\306	\2034 d\n\203 \n\307H\206 \310\311\"\210\312\f\"\214~\210\313d\314\315%\210)*\202= \316 \203< \317 \210)\207" [coding-system-for-write archive-remote archive-subfile-mode archive archive-name start no-conversion 0 make-directory t archive-unique-fname write-region nil nomessage buffer-modified-p save-buffer archive-tmpdir archive-local-name] 6])
(defalias 'archive-maybe-update #[(unchanged) "\205H 	\306 \307\310 \311\204- \311\312 \210\313!\210\314\315!\210b\210\316!\210\317!\210\204> \320\321\322p!\"\210\323\206F ?!-\207" [archive-remote archive-local-name buffer-read-only lno coding-system-for-read modified buffer-modified-p no-conversion archive-get-lineno nil erase-buffer insert-file-contents archive-mode t archive-next-line archive-delete-local message "Buffer `%s' must be saved for changes to take effect" buffer-name set-buffer-modified-p name unchanged archive-files archive-file-list-start] 5])
#@72 Delete file NAME and its parents up to and including `archive-tmpdir'.
(defalias 'archive-delete-local #[(name) "\304\305\306!!\307\310\311\217\210\n\205) \305\312!!\307\313\314\217\210	\230\203 \307\211\204 \307*\207" [archive-tmpdir top again name t directory-file-name file-name-as-directory nil (delete-file name) ((error)) file-name-directory (delete-directory name) ((error))] 5 (#$ . 22960)])
(defalias 'archive-file-name-handler #[(op &rest args) "\303=\206 \304\305\n\")\207" [op file-name-handler-alist args file-exists-p nil apply] 3])
#@57 Set the current buffer as if it were visiting FILENAME.
(defalias 'archive-set-buffer-as-visiting-file #[(filename) "\212eb\210\206  	\203 \212	\ndeZ\")\206  \306\307\310\n\311#@)\204. \204. \312\f\313\"\f\203A \f\314=\204A \315ed\f#\210\202D \f\316\317!\210\320\321!\210\322deZ!*\207" [coding-system-for-read set-auto-coding-function filename file-name-handler-alist coding enable-multibyte-characters (("" . archive-file-name-handler)) find-operation-coding-system insert-file-contents t coding-system-change-text-conversion raw-text no-conversion decode-coding-region set-buffer-modified-p nil kill-local-variable buffer-file-coding-system after-insert-file-set-buffer-file-coding-system last-coding-system-used] 4 (#$ . 23526)])
#@41 Extract a file whose name you click on.
(defalias 'archive-mouse-extract #[(event) "\301!\210\302\212\303 \210p)!\207" [event mouse-set-point switch-to-buffer archive-extract] 2 (#$ . 24274) "e"])
#@73 In archive mode, extract this entry of the archive into its own buffer.
(defalias 'archive-extract #[(&optional other-window-p) "\306=\307 \211\310H\n\311Hp:;\312 <\313<!=\313\f!\314=\315R>\316?\317\320\321@!\322?R!)AB\206H 	\206H \323C\"D\324>!E\325FE\204\377 \326<!<\327>!E\330F\212Eq\210\331=\332\fQ!\n\333\n!G;:\334\335!\210\334\336!\210\337\336\340\"\210\nHI\205\231 J\341KL\342\343\344\217*\204\267 F\203\267 \345\325!\210\346E!\210\202\372 \347!\210eb\210\350>!\210DM\325N\345\325!\210\351 O\352 \210P\353=\203\355 \330QD\203\347 \330B\354\355\356\330#\210\357\360!\210B\203\372 \361\362!\210)\363\330!\210\364E!?\2064	\203\365EF\205\346\"\2024\366=\203%\367E!\2024\2030\370E!\2024\371E!.\207" [other-window-p view-p descr ename iname archive-buffer view archive-get-descr 0 1 buffer-file-name file-name-nondirectory " (" ")" "extract" intern "archive-" symbol-name "-" string-match get-buffer nil archive-maybe-copy get-buffer-create t expand-file-name ":" abbreviate-file-name make-local-variable archive-superior-buffer local-write-file-hooks add-hook archive-write-file-member no-conversion err (byte-code "\303!\203 	\n\"\207\304	\nJ#\207" [extractor archive ename fboundp archive-*-extract] 4) ((error (byte-code "\301\302\303\304!\"!\210\305\207" [err ding message "%s" error-message-string nil] 5))) set-buffer-modified-p kill-buffer archive-set-buffer-as-visiting-file rename-buffer buffer-size normal-mode archive-mode remove-hook write-contents-hooks archive-write-file run-hooks archive-extract-hooks message "Note: altering this archive is not implemented." archive-maybe-update buffer-name view-buffer display display-buffer switch-to-buffer-other-window switch-to-buffer default-directory arcdir archive arcname bufname suffix archive-subtype extractor archive-read-only file-name-invalid-regexp read-only-p buffer just-created buffer-file-truename archive-subfile-mode enable-multibyte-characters file-name-coding-system coding-system-for-read coding-system-for-write buffer-read-only buffer-undo-list buffer-saved-size major-mode archive-remote] 6 (#$ . 24478) nil])
(defalias 'archive-*-extract #[(archive name command) "\306!\307\310\n!	\"\311\311\312\313	!\314\"\210\315\316@\311\211\211\317A\nD\"&\211\247\203N \f\320U\203N \321!\204E \322\323\324\"!\210\202{ \325!\210\314\202{ \f\247\203` \322\323\326@\f#!\210\202{ \f;\203r \322\323\327@\f#!\210\202{ \322\323\330@\"!\210\331!\210,\207" [archive-tmpdir default-directory name tmpfile exit-status success file-name-as-directory expand-file-name file-name-nondirectory nil make-directory directory-file-name t apply call-process append 0 file-exists-p ding message "`%s': no such file or directory" insert-file-contents "`%s' exited with status %d" "`%s' aborted: %s" "`%s' failed" archive-delete-local command archive] 11])
(defalias 'archive-extract-by-stdout #[(archive name command) "\303\304@\305\306\305\307A	\nD\"&\207" [command archive name apply call-process nil t append] 10])
#@54 In archive mode, find this member in another window.
(defalias 'archive-extract-other-window #[nil "\300\301!\207" [archive-extract t] 2 (#$ . 27560) nil])
#@57 In archive mode, display this member in another window.
(defalias 'archive-display-other-window #[nil "\300\301!\207" [archive-extract display] 2 (#$ . 27722) nil])
#@48 In archive mode, view the member on this line.
(defalias 'archive-view #[nil "\300\301!\207" [archive-extract view] 2 (#$ . 27893) nil])
#@61 Add current buffer to the archive in ARCBUF naming it NAME.
(defalias 'archive-add-new-member #[(arcbuf name) "\212q\210	\306=\204 \307\310!\210\n\203 \307\311!\210)p=\203! \307\312!\210\313\230\203+ \307\314!\210\212q\210\315\316\317\320!\321\fR!*p\322!\203W \212q\210#)\202Z \307\323!*\207" [arcbuf major-mode archive-read-only name suffix archive-subtype archive-mode error "Buffer is not an archive buffer" "Archive is read-only" "An archive buffer cannot be added to itself" "" "Archive members may not be given empty names" "add-new-member" intern "archive-" symbol-name "-" fboundp "Adding a new member is not supported for this archive type" membuf func buffer-file-name] 5 (#$ . 28036) (list (get-buffer (read-buffer "Buffer containing archive: " (let ((bufs (buffer-list))) (while (and bufs (not (eq (save-excursion (set-buffer (car bufs)) major-mode) 'archive-mode))) (setq bufs (cdr bufs))) (if bufs (car bufs) (error "There are no archive buffers"))) t)) (read-string "File name in archive: " (if buffer-file-name (file-name-nondirectory buffer-file-name) "")))])
(defalias 'archive-write-file-member #[nil "\212\214\306\307!\210~\210\212q\210\310\311\312\313\n!\314	R!*\212q\210\315\316 !)\317\f!\2031 \f\"\210\2028 \320\fJ#\210\321\322!\210\306\323!\210*q\210\204O \324 \210\202S \325\322!\210*\326\327!\203^ \330\207" [archive-superior-buffer suffix archive-subtype archive writer archive-subfile-mode message "Updating archive..." "write-file-member" intern "archive-" symbol-name "-" archive-maybe-copy buffer-file-name fboundp archive-*-write-file-member set-buffer-modified-p nil "Updating archive...done" revert-buffer archive-maybe-update local-variable-p archive-member-coding-system t archive-remote last-coding-system-used] 5])
(defalias 'archive-*-write-file-member #[(archive descr command) "\306H\307	\n\"\310\311\n!!\311\f!\312\216\313\314!\315\"\210\316=\203* \317!\210\2022 \320ed\321\322%\210\323H\203F \324\325\323H\326\"\"\210 \203Q \327	!\"\330\331\"@\321\211\211\332\"A#	D\"&\211$\306\232?\205r \333\334$\".\207" [descr ename archive-tmpdir tmpfile top default-directory 0 expand-file-name directory-file-name file-name-as-directory ((archive-delete-local tmpfile)) make-directory file-name-directory t archive-mode archive-write-file write-region nil nomessage 3 set-file-modes logior 256 encode-coding-string apply call-process append error "Updating was unsuccessful (%S)" major-mode last-coding-system-used archive-member-coding-system enable-multibyte-characters file-name-coding-system command archive exitcode] 11])
(defalias 'archive-write-file #[(&optional file) "\212\304\305	d\n\206 \306\307%\210\310\306!\210*\307\207" [coding-system-for-write archive-proper-file-start file buffer-file-name no-conversion write-region nil t set-buffer-modified-p] 6])
#@113 In archive mode, mark this member to be deleted from the archive.
With a prefix argument, mark that many files.
(defalias 'archive-flag-deleted #[(p &optional type) "\204 \305\306 \210	\307Y\203 \310\202 \311\312 \313\314	!\2047 \315\316!\203- \317\310!\210c\210\fy\210	\fZ\202 \320!\210+\321\307!\207" [type p buffer-read-only modified sign 68 beginning-of-line 0 1 -1 buffer-modified-p nil zerop archive-get-descr t delete-char set-buffer-modified-p archive-next-line] 3 (#$ . 30911) "p"])
#@126 In archive mode, un-mark this member if it is marked to be deleted.
With a prefix argument, un-mark that many files forward.
(defalias 'archive-unflag #[(p) "\301\302\"\207" [p archive-flag-deleted 32] 3 (#$ . 31422) "p"])
#@129 In archive mode, un-mark this member if it is marked to be deleted.
With a prefix argument, un-mark that many members backward.
(defalias 'archive-unflag-backwards #[(p) "\301[\302\"\207" [p archive-flag-deleted 32] 3 (#$ . 31653) "p"])
#@19 Remove all marks.
(defalias 'archive-unmark-all-files #[nil "\304 \305\212\nb\210`W\203\" g\306U\204 \307\310!\210\306c\210\310y\210\202	 )\311	!*\207" [buffer-read-only modified archive-file-list-start archive-file-list-end buffer-modified-p nil 32 delete-char 1 set-buffer-modified-p] 2 (#$ . 31897) nil])
#@158 In archive mode, mark this member for group operations.
With a prefix argument, mark that many members.
Use \[archive-unmark-all-files] to remove all marks.
(defalias 'archive-mark #[(p) "\301\302\"\207" [p archive-flag-deleted 42] 3 (#$ . 32216) "p"])
(defalias 'archive-get-marked #[(mark &optional default) "\305\212	b\210`\nW\203 gU\203 \306 B\307y\210\202 )\237\206* \f\205* \306 C)\207" [files archive-file-list-start archive-file-list-end mark default nil archive-get-descr 1] 2])
(defalias 'archive-next-line #[(p) "y\210m\206	 	u\207" [p archive-file-name-indent] 1 nil "p"])
(defalias 'archive-previous-line #[(p) "\301[!\207" [p archive-next-line] 2 nil "p"])
#@190 Change the protection bits associated with all marked or this member.
The new protection bits can either be specified as an octal number or
as a relative change like "g+rw" as for chmod(2)
(defalias 'archive-chmod-entry #[(new-mode) "\203 \305\306!\210\307\310\311\312\n!\313	R!)\314!\203( \f\315\316\317\"\"\210\320 \202+ \305\321!)\207" [archive-read-only suffix archive-subtype func new-mode error "Archive is read-only" "chmod-entry" intern "archive-" symbol-name "-" fboundp archive-get-marked 42 t archive-resummarize "Setting mode bits is not supported for this archive type"] 5 (#$ . 32905) "sNew mode (octal or relative): "])
#@48 Change the owner of all marked or this member.
(defalias 'archive-chown-entry #[(new-uid) "\203 \305\306!\210\307\310\311\312\n!\313	R!)\314!\203( \f\315\316\317\"\"\210\320 \202+ \305\321!)\207" [archive-read-only suffix archive-subtype func new-uid error "Archive is read-only" "chown-entry" intern "archive-" symbol-name "-" fboundp archive-get-marked 42 t archive-resummarize "Setting owner is not supported for this archive type"] 5 (#$ . 33552) "nNew uid: "])
#@48 Change the group of all marked or this member.
(defalias 'archive-chgrp-entry #[(new-gid) "\203 \305\306!\210\307\310\311\312\n!\313	R!)\314!\203( \f\315\316\317\"\"\210\320 \202+ \305\321!)\207" [archive-read-only suffix archive-subtype func new-gid error "Archive is read-only" "chgrp-entry" intern "archive-" symbol-name "-" fboundp archive-get-marked 42 t archive-resummarize "Setting group is not supported for this archive type"] 5 (#$ . 34030) "nNew gid: "])
#@27 Do the flagged deletions.
(defalias 'archive-expunge #[nil "\306\212	b\210`\nW\203 g\307U\203 \310 \311HB\312y\210\202 )\237\211\205\212 \2031 \313\314!\205\212 \315\316\317GA\204? \320\202@ \321#!\204K \313\322!\205\212 \323\324 !\325\326\327\330!\331\fR!) \332!\203p  \"\210\202y \333 J#\210\334\306!\210!\203\207 \335 \202\211 \336 *)\207" [files archive-file-list-start archive-file-list-end archive-read-only suffix archive-subtype nil 68 archive-get-descr 0 1 error "Archive is read-only" yes-or-no-p format "Really delete %d member%s? " "" "s" "Operation aborted" archive-maybe-copy buffer-file-name "expunge" intern "archive-" symbol-name "-" fboundp archive-*-expunge archive-maybe-update archive-resummarize revert-buffer expunger archive archive-remote] 7 (#$ . 34508) nil])
(defalias 'archive-*-expunge #[(archive files command) "\303\304@\305\211\211\306A	\nB\"&\207" [command archive files apply call-process nil append] 10])
#@61 Change the name associated with this entry in the tar file.
(defalias 'archive-rename-entry #[(newname) "\203 \306\307!\210	\310\230\203 \306\311!\210\312\313\314\315!\316\nR!)\317 \320!\203A \321 \2038 \322	\"\2029 	\f#\210\323 \202D \306\324!*\207" [archive-read-only newname suffix archive-subtype descr func error "Archive is read-only" "" "Archive members may not be given empty names" "rename-entry" intern "archive-" symbol-name "-" archive-get-descr fboundp buffer-file-name encode-coding-string archive-resummarize "Renaming is not supported for this archive type" enable-multibyte-characters file-name-coding-system] 5 (#$ . 35484) "sNew name: "])
(defalias 'archive-mode-revert #[(&optional no-auto-save no-confirm) "\305 \306\306\307\310\306!\210\311\312\211\"\210*\313 \210\fb\210\314!)\207" [no archive-files coding-system-for-read revert-buffer-function archive-file-list-start archive-get-lineno nil no-conversion set-buffer-multibyte revert-buffer t archive-mode archive-next-line] 3])
#@106 Undo in an archive buffer.
This doesn't recover lost files, it just undoes changes in the buffer itself.
(defalias 'archive-undo #[nil "\301\302 )\207" [buffer-read-only nil undo] 1 (#$ . 36512) nil])
(defalias 'archive-arc-summarize #[nil "\306\307\310\311\211\f\312\\dW\203\264 \ff\313U\203\264 \fTf\307V\203\264 \f\314\\\f\315\\{\316\317\"\2061 \320%\307%O&\321\f\315\\\322\"'\321\f\323\\\314\"(\321\f\324\\\314\")\321\f\325\\\322\"*&\211\226\230\211+\203k &\227\202m &,\326\327*\330(!\331)!,%-\n%]*\\\332-\211G,GZ-G#B\332&,+\311\fS%	B\f'\\\312\\.\n\202\n eb\210\333\334\n\335\"\336Q.\337.\261\210\340\237!\210.\326\341	G	G\306U\203\335 \342\202\336 \343$\336\261\210)\344\332	\237\"-\207" [visual files maxlen totalsize p namefld 1 0 8 nil 29 26 2 15 string-match " " 13 archive-l-e 4 19 21 25 format "  %8d  %-11s  %-8s  %s" archive-dosdate archive-dostime vector "- --------  -----------  --------  " make-string 45 "\n" "M   Length  Date         Time      File\n" archive-summarize-files "  %8d                         %d file%s" "" "s" apply fnlen efnname csize moddate modtime ucsize fiddle ifnname text dash] 8])
(defalias 'archive-arc-rename-entry #[(archive newname descr) "\305\306\"\203 \307\310!\210G\311V\203 \307\312!\210\313G\314OP\314\214\212~\210\315\314!\210\f\316H\\\317\\b\210\320\321!\210\nc,\207" [newname buffer-read-only name archive-proper-file-start descr string-match "[:\\\\/]" error "File names in arc files may not contain a path" 12 "File names in arc files are limited to 12 characters" "             " nil set-buffer-multibyte 4 2 delete-char 13] 4])
(defalias 'archive-lzh-summarize #[nil "\306\307\310\311\211\fb\210\312\313!\203\ff\314\f\315\\\316\"<\314\f\317\\\316\"=\314\f\320\\\321\">\314\f\322\\\321\"?\f\323\\f@\f\324\\fA\f\325\\\fA\\\325\\{BC\203\\ \326BC\"\202` \327B!)\211D\211\226\230\211E\203s D\227\202u DF\330F!G\fA\\\325\\HAZ\331Y\203\226 H\321\\f\202\227 \307I\311J\311K\311L\311M\311N\311O\311P@\307U\203\354 I\332U\203\306 \314H\310\\\321\"\202\307 \333JI\332U\205\327 \314H\334\\\321\"LI\332U\205\347 \314H\335\\\321\"M\202\210I\332U\203\210H\336\\Q\314Q\321\"Q\321\\fR\307U\204\207R\321U\203EQ\336\\\211SQ\\W\203AOSf\337U\2030\340\2025\341Sf!POST\211S\202)\202qR\342U\203X\314Q\336\\\321\"J\202qR\343U\203q\314Q\336\\\321\"L\314Q\344\\\321\"MQ\\Q\314Q\321\"Q\321\\fR\202+O\203\225OFP\202\227FPJ\203\245\345J!\202\246\346KT\203\303\347\350=L\206\267\351M\206\275\351F%\202\325\347\352K=\353?!\354>!F&N\nG]=\\\355N\211GFGZNG#B\355PFEJ\fS%	B\f\\<\\\321\\.\202\n eb\210\356U!\210T\203\357\202 \360\361\n\362\"\363QT\203/\364\2020\365T\2039\366\202:\367VWXWX\261\210\370\237!\210X\347V	G	G\306U\203_\371\202`\372$\363\261\210+\373\355	\237\"-\207" [visual files maxlen totalsize p hsize 1 0 8 nil looking-at "\\(.\\|\n\\)\\(.\\|\n\\)-l[hz][0-9ds]-" archive-l-e 7 4 11 15 2 17 20 21 22 decode-coding-string string-as-multibyte string-width 24 85 438 10 12 3 255 "/" char-to-string 80 81 5 archive-int-to-mode "??????????" format "  %8d  %5S  %5S  %s" "?" "  %10s  %8d  %-11s  %-8s  %s" archive-dosdate archive-dostime vector set-buffer-multibyte "- --------  -----  -----  " "- ----------  --------  -----------  --------  " make-string 45 "\n" "M   Length    Uid    Gid  File\n" "M   Filemode    Length  Date         Time      File\n" "  %8d                %d file%s" "              %8d                         %d file%s" archive-summarize-files "" "s" apply csize ucsize modtime moddate hdrlvl fnlen str file-name-coding-system efnname fiddle ifnname width p2 creator mode modestr uid gid text path prname p3 etype i archive-alternate-display default-enable-multibyte-characters sumline header dash] 8])
(byte-code "\301B\302\301\207" [current-load-list archive-lzh-alternate-display t] 2)
(defalias 'archive-lzh-extract #[(archive name) "\303	\n#\207" [archive name archive-lzh-extract archive-extract-by-stdout] 4])
(defalias 'archive-lzh-resum #[(p count) "\303	\303V\203 	S\nf\\\nT\202 \304\305\")\207" [sum count p 0 logand 255] 3])
(defalias 'archive-lzh-rename-entry #[(archive newname descr) "\214\212~\210\306\307!\210	\310H\\\211f\n\311\\fG\\\f[\\\307\312V\2031 \313\314!\210\n\311\\b\210\315\fT!\210\261\210\nb\210\315\316!\210\317\n\"\261.\207" [archive-proper-file-start descr p oldhsize oldfnlen newname set-buffer-multibyte nil 4 21 255 error "The file name is too long" delete-char 2 archive-lzh-resum newfnlen newhsize buffer-read-only] 5])
(defalias 'archive-lzh-ogm #[(newval files errtxt ofs) "\214\212~\210\306\307!\210\205\221 @\n	\310H\\\211f\311\\f\\\312\\\fZ\313Y\2034 \314\\f\2025 \315\307\316U\203~ \247\204T \317\\\314\"!\\b\210\320\314!\210\321\322\"\323\324\"\261\210Tb\210\320\325!\210\326T\f\"c\210\202\207 \327\330	\325H#\210.A\211\204\f \307*\207" [files fil archive-proper-file-start p hsize fnlen set-buffer-multibyte nil 4 21 22 24 2 0 85 archive-l-e delete-char logand 255 lsh -8 1 archive-lzh-resum message "Member %s does not have %s field" p2 creator buffer-read-only newval ofs errtxt] 5])
(defalias 'archive-lzh-chown-entry #[(newuid files) "\302	\303\304$\207" [newuid files archive-lzh-ogm "an uid" 10] 5])
(defalias 'archive-lzh-chgrp-entry #[(newgid files) "\302	\303\304$\207" [newgid files archive-lzh-ogm "a gid" 12] 5])
(defalias 'archive-lzh-chmod-entry #[(newmode files) "\301\302\303\304$\207" [files archive-lzh-ogm #[(old) "\302	\303#\207" [old newmode archive-calc-mode t] 4] "a unix-style mode" 8] 5])
(defalias 'archive-zip-summarize #[nil "d\306Zb\210\307\310!\210\311`\312\\\306\"T\313\314\315\211\f\211\306\\{\316\230\203`\f\317\\f\311\f\320\\\321\";\311\f\322\\\321\"<\311\f\323\\\321\"=\311\f\324\\\306\">\311\f\325\\\321\"?\311\f\326\\\321\"@\311\f\327\\\321\"A\311\f\330\\\306\"B\f\331\\\f?\\\331\\{CD\203\202 \332CD\"\202\206 \333C!)E>\314U\205\226 \334E!\335\230F\336>\203\247 \311\f\337\\\321\"\202\317 \340>\203\316 \341F\203\267 \342\202\270 \314\343\344\f\345\\f\346\"!\203\310 \347\202\311 \314\350#\202\317 \315\211G\203\334 \351G!\202\335 \352HI\205\362 \353>??\205\362 E\226E\230\211J\203\376 E\227\202 EK\354K!L\355\356H>\357=!\360<!K&ML]\n>\\\361M\211GKGZMG#BF?\205K\361EKJG\fSBD%	B\f?\\@\\A\\\331\\.\202 eb\210\362\363\364\"\365QN\366N\261\210\367\237!\210N\355\370\n	G	G\346U\203\211\335\202\212\371$\365\261\210)\372\361	\237\"-\207" [visual files totalsize maxlen p creator 4 search-backward-regexp "[P]K" archive-l-e 16 8 0 nil "PK" 5 10 2 12 14 24 28 30 32 42 46 decode-coding-string string-as-multibyte file-name-nondirectory "" (2 3) 40 (0 5 6 7 10 11 15) logior 16457 zerop logand 38 1 146 292 archive-int-to-mode "??????????" (0 2 4 5 9) string-width format "  %10s  %8d  %-11s  %-8s  %s" archive-dosdate archive-dostime vector "- ----------  --------  -----------  --------  " make-string 45 "\n" "M Filemode      Length  Date         Time      File\n" archive-summarize-files "              %8d                         %d file%s" "s" apply method modtime moddate ucsize fnlen exlen fclen lheader str file-name-coding-system efnname isdir mode modestr archive-zip-case-fiddle fiddle ifnname width text dash] 8])
(defalias 'archive-zip-extract #[(archive name) "\203\n \304	\n#\207\305	\n#\207" [archive-zip-use-pkzip archive name archive-zip-extract archive-*-extract archive-extract-by-stdout] 4])
(defalias 'archive-zip-write-file-member #[(archive descr) "\304	\211\305H\203 \n\202 #\207" [archive descr archive-zip-update-case archive-zip-update archive-*-write-file-member 2] 5])
(defalias 'archive-zip-chmod-entry #[(newmode files) "\214\212~\210\306\307!\210\205} @\n	\310H@\\\211\311\\f	\312H\313\314#\307 \f\315>\203I \316\\b\210\317\320!\210\321\322\"\323\324\"\261\210\202s \f\325>\203o \326\\b\210\327\321`f\330\"\321\331\323\332\"\333\"\333\"\"c\210\317\333!\210\202s \334\335!\210.A\211\204\f \307*\207" [files fil archive-proper-file-start p creator oldmode set-buffer-multibyte nil 4 5 3 archive-calc-mode t (2 3) 40 delete-char 2 logand 255 lsh -8 (0 5 6 7 10 11 15) 38 logior 254 logxor -7 1 message "Don't know how to change mode for this member" newmode newval buffer-read-only] 8])
(defalias 'archive-zoo-summarize #[nil "\306\307\310\"T\311\312\313\211\f\211\310\\{\314\230\203/\306\f\315\\\310\"\312V\203/\306\f\315\\\310\"T\306\f\316\\\317\".\306\f\320\\\317\"/\306\f\321\\\310\"0\f\322\\\f\323\\{1\f\310\\f\2112\317U\203_ \f\324\\f\202` \31232\317U\203p \f\325\\f\202q \3124\326\3271\"\206| \33054\312V\203\232 \f3\\\331\\\f3\\4\\\325\\{\332P\202\233 \3333\312V\203\257 \f\331\\\f3\\\325\\{\202\265 1\3125OP67\203\306 \33467\"\202\312 \3356!)83\312U\205\331 8\211\226\230\2119\203\345 8\227\202\347 8:\336:!;\337\3400\341.!\342/!:%<;]\n0\\\343<\211G:GZ<G#B\3438:9\313\fS%	B.\202 eb\210\344\345\346\"\347Q=\350=\261\210\351\237!\210=\337\352\n	G	G\353U\203X\333\202Y\354$\347\261\210)\355\343	\237\"-\207" [visual files totalsize maxlen p next archive-l-e 25 4 8 0 nil "\334\247\304\375" 6 14 2 16 20 38 51 56 57 string-match " " 13 58 "/" "" decode-coding-string string-as-multibyte string-width format "  %8d  %-11s  %-8s  %s" archive-dosdate archive-dostime vector "- --------  -----------  --------  " make-string 45 "\n" "M   Length  Date         Time      File\n" archive-summarize-files "  %8d                         %d file%s" 1 "s" apply moddate modtime ucsize namefld dirtype lfnlen ldirlen fnlen str file-name-coding-system efnname fiddle ifnname width text dash] 8])
(defalias 'archive-zoo-extract #[(archive name) "\303	\n#\207" [archive name archive-zoo-extract archive-extract-by-stdout] 4])
(byte-code "\300\301!\210\300\302!\207" [provide archive-mode arc-mode] 2)
