;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:41:42 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/format.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 "`format.el' was compiled for Emacs 19.29 or later"))

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


(put 'buffer-file-format 'permanent-local t)
#@2014 List of information about understood file formats.
Elements are of the form (NAME DOC-STR REGEXP FROM-FN TO-FN MODIFY MODE-FN).

NAME    is a symbol, which is stored in `buffer-file-format'.

DOC-STR should be a single line providing more information about the
        format.  It is currently unused, but in the future will be shown to
        the user if they ask for more information.

REGEXP  is a regular expression to match against the beginning of the file;
        it should match only files in that format.  Use nil to avoid
        matching at all for formats for which this isn't appropriate to
        require explicit encoding/decoding.

FROM-FN is called to decode files in that format; it gets two args, BEGIN
        and END, and can make any modifications it likes, returning the new
        end.  It must make sure that the beginning of the file no longer
        matches REGEXP, or else it will get called again.
	Alternatively, FROM-FN can be a string, which specifies a shell command
	(including options) to be used as a filter to perform the conversion.

TO-FN   is called to encode a region into that format; it is passed three
        arguments: BEGIN, END, and BUFFER.  BUFFER is the original buffer that
        the data being written came from, which the function could use, for
        example, to find the values of local variables.  TO-FN should either
        return a list of annotations like `write-region-annotate-functions',
        or modify the region and return the new end.
	Alternatively, TO-FN can be a string, which specifies a shell command
	(including options) to be used as a filter to perform the conversion.

MODIFY, if non-nil, means the TO-FN wants to modify the region.  If nil,
        TO-FN will not make any changes but will instead return a list of
        annotations.

MODE-FN, if specified, is called when visiting a file with that format.
         It is called with a single positive argument, on the assumption
         that it turns on some Emacs mode.
(defvar format-alist '((text/enriched "Extended MIME text/enriched format." "Content-[Tt]ype:[ 	]*text/enriched" enriched-decode enriched-encode t enriched-mode) (plain "ISO 8859-1 standard format, no text properties." nil nil nil nil nil) (ibm "IBM Code Page 850 (DOS)" nil "recode -f ibm-pc:latin1" "recode -f latin1:ibm-pc" t nil) (mac "Apple Macintosh" nil "recode -f mac:latin1" "recode -f latin1:mac" t nil) (hp "HP Roman8" nil "recode -f roman8:latin1" "recode -f latin1:roman8" t nil) (TeX "TeX (encoding)" nil iso-tex2iso iso-iso2tex t nil) (gtex "German TeX (encoding)" nil iso-gtex2iso iso-iso2gtex t nil) (html "HTML/SGML \"ISO 8879:1986//ENTITIES Added Latin 1//EN\" (encoding)" nil iso-sgml2iso iso-iso2sgml t nil) (rot13 "rot13" nil "tr a-mn-z n-za-m" "tr a-mn-z n-za-m" t nil) (duden "Duden Ersatzdarstellung" nil "diac" iso-iso2duden t nil) (de646 "German ASCII (ISO 646)" nil "recode -f iso646-ge:latin1" "recode -f latin1:iso646-ge" t nil) (denet "net German" nil iso-german iso-cvt-read-only t nil) (esnet "net Spanish" nil iso-spanish iso-cvt-read-only t nil)) (#$ . 661))
#@228 Translate using function or shell script METHOD the text from FROM to TO.
If METHOD is a string, it is a shell command;
otherwise, it should be a Lisp function.
BUFFER should be the buffer that the output originally came from.
(defalias 'format-encode-run-method #[(method from to &optional buffer) ";\2039 \306\307!\310\311rq\210~\210\312 \210)\313\314\213!\2030 \313rq\210\315 )!\2030 \316!\2027 \317!\210\320\321!+\207\f#\207" [method format-alist coding-system-for-read error-buff from to get-buffer-create "*Format Errors*" no-conversion nil erase-buffer zerop ((byte-code "\304	\n\305\211&\207" [from to method error-buff shell-command-on-region t] 7)) buffer-size bury-buffer switch-to-buffer-other-window error "Format encoding failed" buffer] 4 (#$ . 3775)])
#@199 Decode using function or shell script METHOD the text from FROM to TO.
If METHOD is a string, it is a shell command; otherwise, it should be
a Lisp function.  Decoding is done for the given BUFFER.
(defalias 'format-decode-run-method #[(method from to &optional buffer) ";\203< \306\307!\310\311rq\210~\210\312 \210)\313\314\213!\2031 \313rq\210\315 )!\2031 \316!\210\2029 \317!\210\320\321!\210`+\207\f\"\207" [method format-alist coding-system-for-write error-buff from to get-buffer-create "*Format Errors*" no-conversion nil erase-buffer zerop ((byte-code "\302ed\303\211	&\207" [method error-buff shell-command-on-region t] 7)) buffer-size bury-buffer switch-to-buffer-other-window error "Format decoding failed"] 3 (#$ . 4565)])
#@759 Return annotations for writing region as FORMAT.
FORMAT is a symbol naming one of the formats defined in `format-alist',
it must be a single symbol, not a list like `buffer-file-format'.
FROM and TO delimit the region to be operated on in the current buffer.
ORIG-BUF is the original buffer that the data came from.

FORMAT-COUNT is an integer specifying how many times this function has
been called in the process of decoding ORIG-BUF.

This function works like a function on `write-region-annotate-functions':
it either returns a list of annotations, or returns with a different buffer
current, which contains the modified text to write.  In the latter case,
this function's value is nil.

For most purposes, consider using `format-encode-region' instead.
(defalias 'format-annotate-function #[(format from to orig-buf format-count) "	\236\306\n8\307\n8\205E \f\203= \310\300\311\"!\312#\210q\210\313\"\210\314ed$\210)\315\202E #+\207" [format format-alist info to-fn modify format-count 4 5 get-buffer-create " *Format Temp %d*" copy-to-buffer format-insert-annotations format-encode-run-method nil copy-buf from to write-region-annotations-so-far orig-buf] 5 (#$ . 5319)])
#@704 Decode text from any known FORMAT.
FORMAT is a symbol appearing in `format-alist' or a list of such symbols,
or nil, in which case this function tries to guess the format of the data by
matching against the regular expressions in `format-alist'.  After a match is
found and the region decoded, the alist is searched again from the beginning
for another match.

Second arg LENGTH is the number of characters following point to operate on.
If optional third arg VISIT-FLAG is true, set `buffer-file-format'
to the list of formats used, and call any mode functions defined for those
formats.

Returns the new length of the decoded region.

For most purposes, consider using `format-decode-region' instead.
(defalias 'format-decode #[(format length &optional visit-flag) "\306 ``\\\307\216\f\204z \203v @\3108`\203m \311!\203m \312\225\n\\W\203m @\fB\3138\203P \314\3138\n	#\203c \3158\203c \3158\316!\210b\210\202r A+\202 )\202\313 \f<\204\202 \fC\f\317\211\203\312 @\236\211\204\236 \320\321@\"\210\3138\203\256 \314\3138\n	#\203\301 \3158\203\301 \3158\316!\210A\211\204\214 *\203\323 \f)	\nZ+\207" [length end begin mod format format-alist buffer-modified-p ((set-buffer-modified-p mod)) 2 looking-at 0 3 format-decode-run-method 6 1 nil error "Unknown format" try f regexp p visit-flag do buffer-file-format] 5 (#$ . 6533)])
#@203 Translate the buffer from some FORMAT.
If the format is not specified, this function attempts to guess.
`buffer-file-format' is set to the format used, and any mode-functions
for the format are called.
(defalias 'format-decode-buffer #[(&optional format) "\212eb\210\301\302 \303#)\207" [format format-decode buffer-size t] 4 (#$ . 7945) (list (format-read "Translate buffer from format (default: guess): "))])
#@181 Decode the region from some format.
Arg FORMAT is optional; if omitted the format will be determined by looking
for identifying regular expressions at the beginning of the region.
(defalias 'format-decode-region #[(from to &optional format) "\212b\210\303	\nZ\304#)\207" [from format to format-decode nil] 4 (#$ . 8364) (list (region-beginning) (region-end) (format-read "Translate region from format (default: guess): "))])
#@172 Translate the buffer into FORMAT.
FORMAT defaults to `buffer-file-format'.  It is a symbol naming one of the
formats defined in `format-alist', or a list of such symbols.
(defalias 'format-encode-buffer #[(&optional format) "\301ed#\207" [format format-encode-region] 4 (#$ . 8798) (list (format-read (format "Translate buffer to format (default %s): " buffer-file-format)))])
#@176 Translate the region into some FORMAT.
FORMAT defaults to `buffer-file-format', it is a symbol naming
one of the formats defined in `format-alist', or a list of such symbols.
(defalias 'format-encode-region #[(beg end &optional format) "\204 	9\203 C\212\nb\210p\306 \205T @\f\236\3078\f\3108\311\f\203M \203C \312\f\np$\202M \313\f\np#!\210A,\202 +\207" [format buffer-file-format end cur-buf format-alist info point-marker 4 5 nil format-encode-run-method format-insert-annotations to-fn modify result beg] 5 (#$ . 9183) (list (region-beginning) (region-end) (format-read (format "Translate region to format (default %s): " buffer-file-format)))])
#@287 Write current buffer into file FILENAME using some FORMAT.
Makes buffer visit that file and sets the format as the default for future
saves.  If the buffer is already visiting a file, you can specify a directory
name as FILENAME, to write a file of the same old name in that directory.
(defalias 'format-write-file #[(filename format) "\303\n!\207" [format buffer-file-format filename write-file] 2 (#$ . 9872) (let* ((file (if buffer-file-name (read-file-name "Write file: " nil nil nil nil) (read-file-name "Write file: " (cdr (assq 'default-directory (buffer-local-variables))) nil nil (buffer-name)))) (fmt (format-read (format "Write file `%s' in format: " (file-name-nondirectory file))))) (list file fmt))])
#@105 Find the file FILENAME using data format FORMAT.
If FORMAT is nil then do not do any format conversion.
(defalias 'format-find-file #[(filename format) "\303\304	!\210)\n\205 \305\n!\207" [format-alist filename format nil find-file format-decode-buffer] 2 (#$ . 10596) (let* ((file (read-file-name "Find file: ")) (fmt (format-read (format "Read file `%s' in format: " (file-name-nondirectory file))))) (list file fmt))])
#@308 Insert the contents of file FILENAME using data format FORMAT.
If FORMAT is nil then do not do any format conversion.
The optional third and fourth arguments BEG and END specify
the part of the file to read.

The return value is like the value of `insert-file-contents':
a list (ABSOLUTE-FILE-NAME . SIZE).
(defalias 'format-insert-file #[(filename format &optional beg end) "\306\211\306\307\306\f$\211A@)	\203\" \310	\"	@B	*\207" [size value format-alist filename beg end nil insert-file-contents format-decode format] 6 (#$ . 11027) (let* ((file (read-file-name "Find file: ")) (fmt (format-read (format "Read file `%s' in format: " (file-name-nondirectory file))))) (list file fmt))])
#@180 Read and return the name of a format.
Return value is a list, like `buffer-file-format'; it may be nil.
Formats are defined in `format-alist'.  Optional arg is the PROMPT to use.
(defalias 'format-read #[(&optional prompt) "\304\305\"\306\n\206 \307	\310\311$\211\312\232?\205 \313!C*\207" [format-alist table prompt ans mapcar #[(x) "\301@!C\207" [x symbol-name] 2] completing-read "Format: " nil t "" intern] 6 (#$ . 11736)])
#@405 Do multiple replacements on the buffer.
ALIST is a list of (from . to) pairs, which should be proper arguments to
`search-forward' and `replace-match' respectively.
Optional 2nd arg REVERSE, if non-nil, means the pairs are (to . from), so that
you can use the same list in both directions if it contains only literal
strings.
Optional args BEG and END specify a region of the buffer on which to operate.
(defalias 'format-replace-strings #[(alist &optional reverse beg end) "\212\214\204 e	\203 e	}\210\n\205a \203 \n@A\202! \n@@\203+ \n@@\202. \n@Ab\210\306\307\310#\203Z \311\224b\210\fc\210\312`\fGZ`\313`!#\210``\311\225\311\224Z\\|\210\2023 \nA*\202 *\207" [beg end alist reverse to from search-forward nil t 0 set-text-properties text-properties-at] 5 (#$ . 12178)])
#@213 Remove the given CONS from LIST by side effect and return the new LIST.
Since CONS could be the first element of LIST, write
`(setq foo (format-delq-cons element foo))' to be sure of changing
the value of `foo'.
(defalias 'format-delq-cons #[(cons list) "	=\203	 	A\207	\211A=\204! \n\204 \303\304!\210\nA\211\202\f \nA\241\210	)\207" [cons list p error "format-delq-cons: not an element"] 3 (#$ . 12971)])
#@82 Delete common elements of lists A and B, return as pair.
Compares using `equal'.
(defalias 'format-make-relatively-unique #[(a b) "\306!\306\n!	\f\203, \f@\235\fA\211\203& \307\f	\"\307\"*\202\n 	+B\207" [a acopy b bcopy tail next copy-sequence format-delq-cons dup] 4 (#$ . 13390)])
#@208 Given two lists that have a common tail, return it.
Compares with `equal', and returns the part of A that is equal to the
equivalent part of B.  If even the last items of the two are not equal,
returns nil.
(defalias 'format-common-tail #[(a b) "G	G\211\nV\203 \nZ\233\202 \nZ	\233*	\232\204+ A	A\202 \207" [a b lb la] 3 (#$ . 13697)])
#@101 Return t if LIST is a proper list.
A proper list is a list ending with a nil cdr, not with an atom 
(defalias 'format-proper-list-p #[(list) "<\205 :\203 A\211\202 ?\207" [list] 2 (#$ . 14056)])
#@159 Arrange ITEMS to following partial ORDER.
Elements of ITEMS equal to elements of ORDER will be rearranged to follow the
ORDER.  Unmatched items will go last.
(defalias 'format-reorder #[(items order) "\203\" @	\235\211\203 \n@\303\304\n	\"A\"B\202  \303	A\")\207	\207" [order items item format-reorder format-delq-cons] 6 (#$ . 14266)])
(byte-code "\300\301\302\303#\210\300\304\302\303#\210\300\305\306\303#\207" [put face format-list-valued t unknown display format-list-atomic-p] 4)
#@2526 Translate annotations in the region into text properties.
This sets text properties between FROM to TO as directed by the
TRANSLATIONS and NEXT-FN arguments.

NEXT-FN is a function that searches forward from point for an annotation.
It should return a list of 4 elements: (BEGIN END NAME POSITIVE).  BEGIN and
END are buffer positions bounding the annotation, NAME is the name searched
for in TRANSLATIONS, and POSITIVE should be non-nil if this annotation marks
the beginning of a region with some property, or nil if it ends the region.
NEXT-FN should return nil if there are no annotations after point.

The basic format of the TRANSLATIONS argument is described in the
documentation for the `format-annotate-region' function.  There are some
additional things to keep in mind for decoding, though:

When an annotation is found, the TRANSLATIONS list is searched for a
text-property name and value that corresponds to that annotation.  If the
text-property has several annotations associated with it, it will be used only
if the other annotations are also in effect at that point.  The first match
found whose annotations are all present is used.

The text property thus determined is set to the value over the region between
the opening and closing annotations.  However, if the text-property name has a
non-nil `format-list-valued' property, then the value will be consed onto the
surrounding value of the property, rather than replacing that value.

There are some special symbols that can be used in the "property" slot of
the TRANSLATIONS list: PARAMETER and FUNCTION (spelled in uppercase).
Annotations listed under the pseudo-property PARAMETER are considered to be
arguments of the immediately surrounding annotation; the text between the
opening and closing parameter annotations is deleted from the buffer but saved
as a string.  The surrounding annotation should be listed under the
pseudo-property FUNCTION.  Instead of inserting a text-property for this
annotation, the function listed in the VALUE slot is called to make whatever
changes are appropriate.  The function's first two arguments are the START and
END locations, and the rest of the arguments are any PARAMETERs found in that
region.

Any annotations that are found by NEXT-FN but not defined by TRANSLATIONS
are saved as values of the `unknown' text-property (which is list-valued).
The TRANSLATIONS list should usually contain an entry of the form
    (unknown (nil format-annotate-value))
to write these unknown annotations back into the file.
(defalias 'format-deannotate-region #[(from to translations next-fn) "\212\214e}\210	b\210\306\211\211\211\211 \211\203\333@A@\3078\3108 \306!|\210 \203L CCDB\202\327\311\"\204] \312\313\"\210\202\327!\204\327@\211\"@#\"A@$\"AA%&'\306(#\232\203\213 \314!\202\217 \312\315!\210'\203\221'@@'@A)*)\203\207)@@)@A+,#+\235\203}\306\316\317+\"\235\204}$@\241\210+\306\211-.\211/\203 \311/@\"\211.A@-.\"=\204\367 .A\320-$\"\240\210/A\211/\204\327 +\306)\306'\314(A$\211@@$@A0--\203|*\321=\203@\2038\322@0{C\"AB0|\210\202j*\323=\203_\324,0%$\2111\203[1\fB)\202j0*,F\fB-A\211-@@0-@A\202+*)A\211)\204\245 *'A\211'\204\224 (\204\322$\211@@$@A\206\2430--\203\321A0\325#F\fB\nB-A\211-@@0-@A\202\250+.\202] -\202 \f\203<\f@\2112@2A@\30728*\31028\2113\247\203	\326	*3\327%\210\2024\330	*\211\331N\2030\332	*\"434<\203(4\202+4C)B\20223$\210-\fA\211\204\337\n\205D\312\333\n\".\207" [to from unknown-ans loc todo open-ans nil 2 3 assoc message "Extra closing annotation (%s) in file" t "Improper nesting in file." mapcar #[(r) "\302	\"\207" [r open-ans assoc] 3] format-subtract-regions PARAMETER append FUNCTION apply unknown format-property-increment-region 0 put-text-property format-list-valued get-text-property "Unknown annotations: %s" next next-fn end name positive found top top-name top-extents params translations aalist matched alist prop ans value extents this-one to-split start rtn item val prev] 8 (#$ . 14766)])
#@411 Remove from the regions in MINUend the regions in SUBTRAhend.
A region is a dotted pair (from . to).  Both parameters are lists of
regions.  Each list must contain nonoverlapping, noncontiguous
regions, in descending order.  The result is also nonoverlapping,
noncontiguous, and in descending order.  The first element of MINUEND
can have a cdr of nil, indicating that the end of that region is not
yet known.
(defalias 'format-subtract-regions #[(minu subtra) "\306!\306\n!	@@\307	\203\201 \203\201 \f@AV\2030 \fB	A\211@\202 \fA\203= \fAAV\203P AT\fABB\fA\241\210\202 \fA@W\203a A\211@\202 \f@@Y\203r 	A\211@\202 \f@S\241\210A\211@\202 \237	\244-\207" [minu minuend subtra subtrahend m s copy-alist nil results] 3 (#$ . 18914)])
#@191 Over the region between FROM and TO increment property PROP by amount DELTA.
DELTA may be negative.  If property PROP is nil anywhere
in the region, it is treated as though it were DEFAULT.
(defalias 'format-property-increment-region #[(from to prop delta default) "\306\211\211\211\2056 \307\f\"\211\206 \n\\\310\f\f$\311\f	\206+ \f\n$\210	\211\204\f \306,\207" [from next newval val cur prop nil get-text-property text-property-not-all put-text-property default delta to] 6 (#$ . 19692)])
#@397 Apply list of annotations to buffer as `write-region' would.
Inserts each element of the given LIST of buffer annotations at its
appropriate place.  Use second arg OFFSET if the annotations' locations are
not relative to the beginning of the buffer: annotations will be inserted
at their location-OFFSET+1 (ie, the offset is treated as the character number
of the first character in the buffer).
(defalias 'format-insert-annotations #[(list &optional offset) "\204	 \303\202\f S\304	!\211\205( \n@@Zb\210\n@Ac\210\nA\211\204 \305)\207" [offset list l 0 reverse nil] 3 (#$ . 20209)])
#@239 Return OLD and NEW as a (close . open) annotation pair.
Useful as a default function for TRANSLATIONS alist when the value of the text
property is the name of the annotation that you want to use, as it is for the
`unknown' text property.
(defalias 'format-annotate-value #[(old new) "\205 C	\205\f 	CB\207" [old new] 2 (#$ . 20807)])
#@1732 Generate annotations for text properties in the region.
Searches for changes between FROM and TO, and describes them with a list of
annotations as defined by alist TRANSLATIONS and FORMAT-FN.  IGNORE lists text
properties not to consider; any text properties that are neither ignored nor
listed in TRANSLATIONS are warned about.
If you actually want to modify the region, give the return value of this
function to `format-insert-annotations'.

Format of the TRANSLATIONS argument:

Each element is a list whose car is a PROPERTY, and the following
elements are VALUES of that property followed by the names of zero or more
ANNOTATIONS.  Whenever the property takes on that value, the annotations
(as formatted by FORMAT-FN) are inserted into the file.
When the property stops having that value, the matching negated annotation
will be inserted (it may actually be closed earlier and reopened, if
necessary, to keep proper nesting).

If the property's value is a list, then each element of the list is dealt with
separately.

If a VALUE is numeric, then it is assumed that there is a single annotation
and each occurrence of it increments the value of the property by that number.
Thus, given the entry (left-margin (4 "indent")), if the left margin
changes from 4 to 12, two <indent> annotations will be generated.

If the VALUE is nil, then instead of annotations, a function should be
specified.  This function is used as a default: it is called for all
transitions not explicitly listed in the table.  The function is called with
two arguments, the OLD and NEW values of the property.  It should return
lists of annotations like `format-annotate-location' does.

    The same structure can be used in reverse for reading files.
(defalias 'format-annotate-region #[(from to translations format-fn ignore) "\306\211\211\211	\203 \307	\306\f#\211\203\311 	\fW\203\311 	\204\" \310	\211U$\311\312H\n\"\313H\314H\315\"\315\"\203\241 @\n\235\204h \316\317@\"\210\202\230 @\n@\232\204\211 \n@B	\n@\306\"BB\nA\202h \nA	@\306\"BBA\211\204V \203\305 @\nB	@\320\"BBA\211\204\252 -\202 \n\203\337 \f\n@\306\"BB\nA\211\204\315 \203\350 \316\321\"\210\237,\207" [not-found loc open-ans all-ans to from nil next-property-change format-annotate-location format-reorder 0 1 2 append message "Can't close %s: not open." t "These text properties could not be saved:\n    %s" ignore translations ans neg-ans pos-ans ignored format-fn p] 6 (#$ . 21152)])
#@505 Return annotation(s) needed at location LOC.
This includes any properties that change between LOC-1 and LOC.
If ALL is true, don't look at previous location, but generate annotations for
all non-nil properties.
Third argument IGNORE is a list of text-properties not to consider.
Use the TRANSLATIONS alist.

Return value is a vector of 3 elements:
1. List of names of the annotations to close
2. List of the names of annotations to open.
3. List of properties that were ignored or couldn't be annotated.
(defalias 'format-annotate-location #[(loc all ignore translations) "S\n?\205 \306	!\306!\307\307\n\307\307\f\307\307\211\203> @>\2046 @BAA\211\204' \f\211\203[ @>\204S @BAA\211\204D \203\275 @\fA\f>\204[ \n?\205} \f>A@\f\f>A@\211\232\204\271 \310\f$\211\204\250 \fB\202\270 \n@\244\nA\244)*\202[ \311\n#.	\207" [loc prev-loc all before-plist after-plist p text-properties-at nil format-annotate-single-property-change vector negatives positives prop props not-found ignore after before translations result] 6 (#$ . 23689)])
#@283 Return annotations for property PROP changing from OLD to NEW.
These are searched for in the translations alist TRANS.
If NEW does not appear in the list, but there is a default function, then that
function is called.
Annotations to open and to close are returned as a dotted pair.
(defalias 'format-annotate-single-property-change #[(prop old new trans) "\306	\"A\307\211\205\223 \f<\204 <\203\216 \310N\204\216 \311\f!\203( \311!\2040 \312\f#\202\223 \f<\2039 \f\202; \fC<\203E \202G C\313\f\"\307\307\f\203l \314\312\f@\307#@\"\fA\211\204X \203\204 \314\312\307@#A\"A\211\204p \315\"-\202\223 \312\f#*\207" [prop trans default prop-alist old new assoc nil format-list-atomic-p format-proper-list-p format-annotate-atomic-property-change format-common-tail append format-make-relatively-unique tail close open] 6 (#$ . 24813)])
#@141 Internal function annotate a single property change.
PROP-ALIST is the relevant segment of a TRANSLATIONS list.
OLD and NEW are the values.
(defalias 'format-annotate-atomic-property-change #[(prop-alist old new) "\306	\203 	\247\203( \n\203 \n\247\203( \211\203( @@\247\204( A\211\204 \203| 	\247\203: \n\204: \307\202E \n\247\203E 	\204E \307@\211@\310\311\n	Z!\311!\245!\fA@\307V\203o \306\312\"B\202x \312[\"\306B,\202\266 	\205\205 \313	\"A\n\205\216 \313\n\"A\211\204\233 \203\244 \314\"\202\265 \306\236\211\205\264 A@	\n\")*)\207" [num-ann old new prop-alist entry increment nil 0 ceiling float make-list assoc format-make-relatively-unique n anno open close default] 5 (#$ . 25692)])
(provide 'format)
