;ELC   
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\207" [require reftex reftex-parse] 2)
#@169 Return the environment or macro which determines the label type at point.
If optional BOUND is an integer, limit backward searches to that point.

(fn &optional BOUND)
(defalias 'reftex-label-location #[256 "\304\"\305	\"\306\307\"A\206 \310A\206 \310A\206 \310]]\211U\203: @G\\@\206u \311\207U\203P \312\\@G\\@\206u \311\207U\203t @\262\204b \311\2079\203k \313!\207;\203r \207\311\207\311\207" [reftex-label-mac-list reftex-label-env-list reftex-location-start reftex-default-context-position reftex-what-macro reftex-what-environment reftex-what-special-env 1 0 "section" 8 symbol-name] 10 (#$ . 158)])
#@13 

(fn CELL)
(defalias 'reftex-label-info-update #[257 "\211@A@\3038\3048\3058\306\307=?\"\211\204$ \310\311\257\207r\211q\210\214~\210\312b\210\313\314	\315	!\"\316\307#\204J \313\314\n\315	!\"\316\307#\203Z \317u\210\320\321\"C\"\202b \310\311\257*\207" [reftex-keep-temporary-buffers reftex-find-label-regexp-format reftex-find-label-regexp-format2 3 4 5 reftex-get-file-buffer-force t "" "LOST LABEL.  RESCAN TO FIX." 1 re-search-forward format regexp-quote nil -1 append reftex-label-info] 13 (#$ . 810)])
#@53 

(fn LABEL &optional FILE BOUND DERIVE ENV-OR-MAC)
(defalias 'reftex-label-info #[1281 "\304\305\"\205 \306\307\"\310\"A\206 \311 	\312 \203R \313\267\202+ \202F \202R ;\2037 \304\"\202C <\203B \235\202C \314\203R 	\315\316 !\257\207\206Z \317!\310\n\"A@\320\310\n\"8\321$	\257\207" [reftex-prefix-to-typekey-alist reftex-trust-label-prefix reftex-env-or-mac-alist reftex-location-start string-match "^[a-zA-Z0-9]+:" match-string 0 assoc buffer-file-name reftex-in-comment #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (t 37 nil 40)) nil reftex-nicify-text reftex-context-substring reftex-label-location 2 reftex-short-context] 19 (#$ . 1351)])
#@512 Insert a unique label.  Return the label.
If ENVIRONMENT is given, don't bother to find out yourself.
If NO-INSERT is non-nil, do not insert label into buffer.
With prefix arg, force to rescan document first.
When you are prompted to enter or confirm a label, and you reply with
just the prefix or an empty string, no label at all will be inserted.
A new label is also recorded into the label list.
This function is controlled by the settings of reftex-insert-label-flags.

(fn &optional ENVIRONMENT NO-INSERT)
(defalias 'reftex-label #[512 "\306!\210\203 \307	\"\204 \310 \262\204 \311\312!\210\3132\365\307	\"\211A@\3148\315\316!\307@	\"\317\211\211\211\211\211\211\320\f8\204F \3208\203R h\321>\203R \322\262\323\262\n\307\n\"A\206_ \n\324P\262\325!\262\326@\"\203\302 \327\330\331 @\fJ#\332\333\334\335\317\211\322$8!\262\336\337\"\204\247 \336\340\"\204\247 \336\341\"\204\247 \336\342\"\204\247 \336\343\"\203\260 \262\322\262\202\330 ?!P\262\344\317\324#\262\202\330 \326A@\"\203\322 \262\202\330 \344\322\"\262\326A@\"\204\346 \203Q\204T\345\203\364 \346\202\365 \347\"\262\336\350\351!\352Q\"\203\353\354!\210\355\313\317\"\210\202\346 \336@\"\203,\353\356\"\210\357 \210\360\333!\210\202\346 \307\fJ\"\211\262\203K\357 \210\361\362\363	\"!\203\346 \322\262\202\346 \322\262\202\346 \262\212\204^\f\203jA\250\203jAb\210\331 )\211@A\203x\364\202y\365\366 \fJ>A\204\207\322\262\211\203\244\317\317\257AB\241\266\367\f\370\322#\210\266\f\204\322A\203\272A\"\202\300\371\n\"c\210B\203\322\372\373!\203\322\373!\210C\203\344\374\375\f!!\210\374\375\335!!\210\211\203\360D\203\360\376 \210\266\2140\207" [current-prefix-arg reftex-env-or-mac-alist reftex-typekey-to-prefix-alist reftex-insert-label-flags reftex-docstruct-symbol reftex-active-toc reftex-access-scan-info assoc reftex-label-location error "Can't figure out what kind of label should be inserted" exit 3 reftex-what-macro 1 nil 5 (91 123) t "%s" "-" reftex-replace-prefix-escapes reftex-typekey-check reftex-last-assoc-before-elt toc reftex-where-am-I reftex-no-props 2 reftex-label-info " " string-match "NO MATCH FOR CONTEXT REGEXP" "INVALID VALUE OF PARSE" "SECTION HEADING NOT FOUND" "HOOK ERROR" "^[ 	]*$" reftex-uniquify-label read-string "Naked Label: " "Label: " "\\`\\(" regexp-quote "\\)?[ 	]*\\'" message "No label inserted." throw "Label \"%s\" contains invalid characters" ding sit-for y-or-n-p format-message "Label `%s' exists.  Use anyway?" "" "POSITION UNCERTAIN.  RESCAN TO FIX." buffer-file-name put modified format fboundp LaTeX-add-labels reftex-erase-buffer reftex-make-selection-buffer-name reftex-parse-one reftex-string-to-label-function reftex-label-illegal-re reftex-format-label-function reftex-plug-into-AUCTeX reftex-auto-update-selection-buffers reftex-allow-automatic-rescan] 25 (#$ . 2083) nil])
#@194 Convert a string (a sentence) to a label.
Uses `reftex-derive-label-parameters' and `reftex-label-illegal-re'.  It
also applies `reftex-translate-to-ascii-function' to the string.

(fn STRING)
(defalias 'reftex-string-to-label #[257 "\203 \303!\203 !\262\304\305\306	\307\211\n&\207" [reftex-translate-to-ascii-function reftex-label-illegal-re reftex-derive-label-parameters fboundp apply reftex-convert-string "[-~ 	\n,;]+" nil] 9 (#$ . 5023)])
#@15 

(fn STRING)
(defalias 'reftex-latin1-to-ascii #[257 "\300\301\302\303\304#\305#\207" ["@@@@@@@@@@@@@@@@@@'@@@@@@@@@@@@@ icLxY|S\"ca<--R-o|23'uq..1o>423?AAAAAAACEEEEIIIIDNOOOOOXOUUUUYP3aaaaaaaceeeeiiiidnooooo:ouuuuypy" t mapconcat make-closure #[257 "\211\302V\203 \211\303W\203 \304\300\305ZH!\207\301\203, \211\306V\203, \211\307W\203, \304\300\310ZH!\207\304!\207" [V0 V1 127 256 char-to-string 128 2175 2304 2176] 5 "\n\n(fn C)"] ""] 8 (#$ . 5485)])
#@15 

(fn PREFIX)
(defalias 'reftex-replace-prefix-escapes #[257 "\303 \304\305\"\216\306\307\306\310\311#\203\342 \312\313\"\262\303 \304\314\"\216\315\267\202\310 \316\317 !\202\311 \320\321 !\322\317 !\310\323\324!P\"\203K \211G\306O\266\202\202\311 \211\266\202\202\311 \316\321 !\202\311 \325\320\321 !\307\326O!\202\311 \327 \206\311 \330\202\311 \306\211\211\212\303 \304\331\"\216\332\306\333#\203\247 \334\335!\262\336	\"A\2629\203\242 \337\303 \304\340\"\216 )\262!\202\245 \337!\262\336\n\"\206\276 \336\n\"\206\276 \333\n\236\206\276 \333\341DA)\262)\266\203\202\311 \330)\262\262\313\224G\\S\262\342\306\211$\262\202\n \266\203)\207" [reftex-section-regexp reftex-section-levels-all reftex-section-prefixes match-data make-closure #[0 "\301\300\302\"\207" [V0 set-match-data evaporate] 3] nil 0 string-match "%\\([a-zA-Z]\\)" match-string 1 #[0 "\301\300\302\"\207" [V0 set-match-data evaporate] 3] #s(hash-table size 6 test equal rehash-size 1.5 rehash-threshold 0.8125 purecopy t data ("f" 39 "F" 46 "m" 81 "M" 88 "u" 100 "S" 109)) file-name-base buffer-file-name file-name-directory reftex-TeX-master-file file-name-sans-extension "\\`" regexp-quote file-name-nondirectory -1 user-login-name "" #[0 "\301\300\302\"\207" [V0 set-match-data evaporate] 3] re-search-backward t reftex-match-string 2 assoc abs #[0 "\301\300\302\"\207" [V0 set-match-data evaporate] 3] "sec:" replace-match] 15 (#$ . 5954)])
#@40 

(fn LABEL &optional FORCE SEPARATOR)
(defalias 'reftex-uniquify-label #[769 "\301 \210\204 \302J\"\204 \207\303J\236\211A\302\"\206& \304BB\241@\211AT\206. \305\302\306!QJ\"\203C T\262\202. \241\210\306!Q\207" [reftex-docstruct-symbol reftex-access-scan-info assoc label-numbers 0 "" int-to-string] 13 (#$ . 7410)])
(defconst reftex-select-label-prompt "Select: [n]ext [p]revious [r]escan [ ]context e[x]tern [q]uit RET [?]HELP+more")
(defconst reftex-select-label-help " n / p      Go to next/previous label (Cursor motion works as well)\n C-c C-n/p  Go to next/previous section heading.\n b / l      Jump back to previous selection / Reuse last referenced label.\n z          Jump to a specific section, e.g. '3 z' jumps to section 3.\n g / s      Update menu      / Switch label type.\n r / C-u r  Reparse document / Reparse entire document.\n x          Switch to label menu of external document (with LaTeX package `xr').\n F t c      Toggle:  [F]ile borders, [t]able of contents,  [c]ontext\n # %        Toggle:  [#] label counters,   [%] labels in comments\n SPC / f    Show full context in other window / Toggle follow mode.\n .          Show insertion point in other window.\n v   / V    Toggle \\ref <-> \\vref / Rotate \\ref <=> \\fref <=> \\Fref\n TAB        Enter a label with completion.\n m , - +    Mark entry. `,-+' also assign a separator.\n a / A      Put all marked entries into one/many \\ref commands.\n q / RET    Quit without referencing / Accept current label (also on mouse-2).")
#@542 Make a LaTeX reference.  Look only for labels of a certain TYPE.
With prefix arg, force to rescan buffer for labels.  This should only be
necessary if you have recently entered labels yourself without using
reftex-label.  Rescanning of the buffer can also be requested from the
label selection menu.
The function returns the selected label or nil.
If NO-INSERT is non-nil, do not insert \ref command, just return label.
When called with 2 \[universal-argument] prefix args, disable magic word recognition.

(fn &optional TYPE NO-INSERT CUT)
(defalias 'reftex-reference #[768 "\306 \210\307!\210\310\301!\205 	\205 	\n\311\312\211\211\211\211C\211\204| \203h \f\211\203H \211@\211@\313 \235\203A \314\315\316\"\3178\"\210A\266\202\202) \210\320\321\322\323\324\242\325#P\"\326\242\"A\211\204d \327\330\"\210\210\202| \317\326\313 @\f\"8@@\206{ \317\f@8@@\n\204\236 \203\232 \305 \211\262\f\203\232 \nA\262	\n@\262\202\236 \331 \262)`\312\223\210\212\332!)\262\333 \210)\312\211\223\210@\334=\203\312 \323\335A\336#A@ADC\262@A@\262\326*\"A\206\333 \311\262	\203\350 @@\202m\204\364 \337\340!\210\312\202m\203h@@\262\317@8\262\326+\"A\262A\262\203\341	!\210\312\262	\342!\343U\2031h\344>\2031\345\312O\262	\346\230\2049\347\203@c\210\n\203M\n	#\202T\350\211#c\210\342!\343U\203\364 \345\312O\262\202\364 \337\321!\210*\207" [current-prefix-arg reftex-refstyle reftex-format-ref-function reftex-ref-macro-prompt reftex-ref-style-alist reftex-guess-label-type reftex-check-recursive-edit reftex-access-scan-info boundp "\\ref{%s}" nil reftex-ref-style-list mapc make-closure #[257 "\211A@@B\211\300\242\235\203 \300\242\207\300\301\300\242C\"\240\207" [V0 append] 6 "\n\n(fn X)"] 2 reftex-select-with-char #1="" "SELECT A REFERENCE FORMAT\n\n" mapconcat #[257 "\300\301@@\302V\203 \303\202 \304A$\207" [format "[%c] %s  %s" 31 " " #1#] 6 "\n\n(fn X)"] "\n" assoc error "No reference macro associated with key `%c'" reftex-query-label-type reftex-offer-label-menu reftex-ensure-compiled-variables concat car "," message "Quit" backward-delete-char string-to-char 126 (32 9 10 126) 1 "\\ref" reftex-format-special format reftex-select-return-marker reftex-typekey-to-format-alist reftex-multiref-punctuation] 19 (#$ . 8951) nil])
(defalias 'reftex-guess-label-type #[0 "\302e`\303Z]\304\211\212\211A\262\242\211\262\203$ \305@\302#\211\262\203\f )\2051 \211A\306\225\307\225ZB)\207" [reftex-words-to-typekey-alist case-fold-search t 35 nil re-search-backward 0 1] 9])
#@16 

(fn TYPEKEY)
(defalias 'reftex-offer-label-menu #[257 "p\306J\236\307\310 BA@B\311\312 @\211\313	\311#\313	\314#\313		\315#?\313\n	\316#\313	\317#\320	8\307C\321C\321\211\211\211\211\211\322\323\"\216\3242S\325 \322\326\"\216\327 \210\330 \f\203l \331rq\210\332!)!\210\202s \331\333!\210\334 \210\335=\204| \335 \210p\336\n\242\"\203\212 \210\202\224 \n\242B\240\266\337@\340\341\342\343\344A\345\346\347\350\351\257B\352 \311U\203\330 \321C\353\354!\210\355\321\206\314 \242\321&\262)\202\355 \203\352 \356#\262\202\355 \337\262\337C\206\366 \337\262\321\262\357DEF\n\360&\262@\262A@\262\3168\262\337\262\204&\361\324\321\"\210\362=\2032\334 \210\202M\363=\204>\364=\203TG\203F\364\262\334 \210\365#\210\202M\366\267\202\346\334 \210\f?\262\202M\262\367 \262\202M\334 \210G\203\201\370G!H\202M?\262\202M\334 \210?\262\202M\334 \210?\262\f\202M\334 \210	?\262\n\202MI\262\361\324\337\"\210\202M\371\"\262\3728A!\206\314\373\374!\2628@\206\332\307\240\210q\210\375 \210\202M;\203\376J\"\206\367DCC\262\361\324\337\"\210\202M\377>\203GJ\203J\237\262\202%\203\"CC\262\202%\321\262\203;\201K =\2038\201L B\262Iq\210\361\324\337\"\210\202M\373\201M !\210)\210\202H 0\210)\201N \322\201O \n\"\"\207" [reftex-docstruct-symbol reftex-label-menu-flags reftex-call-back-to-this-buffer reftex-latex-syntax-table reftex-use-multiple-selection-buffers major-mode xr "" buffer-file-name 0 reftex-where-am-I reftex-typekey-check 7 3 2 4 5 nil make-closure #[0 "\212	\203 	@@q\210	\211A\242A\202 )\303\304\300\242\"\210\305 \207" [V0 reftex-buffers-with-changed-invisibility buffer-invisibility-spec mapc #[257 "\300!\205	 \301!\207" [buffer-live-p bury-buffer] 3 "\n\n(fn BUF)"] reftex-kill-temporary-buffers] 3] exit current-window-configuration #[0 "\301\300!\207" [V0 set-window-configuration] 2] delete-other-windows syntax-table switch-to-buffer-other-window reftex-make-selection-buffer-name "*RefTeX Select*" reftex-erase-buffer reftex-select-label-mode memql t "----  " mode-line-buffer-identification "  " global-mode-string "   (" ")" "  S<" reftex-refstyle ">" " -%-" buffer-size message "Creating Selection Buffer..." reftex-insert-docstruct reftex-get-offset reftex-select-item reftex-show-label-location throw 103 114 82 reftex-reparse-document #s(hash-table size 8 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (99 346 115 357 116 368 70 393 35 404 37 415 108 426 120 438)) reftex-query-label-type prefix-numeric-value reftex-select-external-document reftex-get-file-buffer-force error "Cannot switch document" reftex-access-scan-info assoc (97 65 return) truncate-lines mode-name mode-line-format buffer-read-only reftex-select-label-prompt reftex-select-label-help reftex-select-label-mode-map current-prefix-arg reftex-toc-max-level reftex-last-used-reference reftex-select-marked 97 concat "This should not happen (reftex-offer-label-menu)" mapcar #[257 "\211<\203 \300\242@@P@A@\3018E\207\207" [V0 2] 5 "\n\n(fn X)"]] 34 (#$ . 11522)])
#@34 

(fn &optional BUFFER DATA KEY)
(defalias 'reftex-reparse-document #[768 "\300 \301\302\"\216\212\203  \303!\204 \304\305\306!\"\210\202  q\210\307=\203* \310\202+ \311\3128\313\"\266\202*\207" [current-window-configuration make-closure #[0 "\301\300!\207" [V0 set-window-configuration] 2] bufferp error "No such buffer %s" buffer-name 82 (16) (4) 3 reftex-access-scan-info] 9 (#$ . 14695)])
(defalias 'reftex-query-label-type #[0 "\303	\304#\305!\n\235\204 \306\307\305!\"\210\305!\207" [reftex-type-query-prompt reftex-type-query-help reftex-typekey-list reftex-select-with-char 3 char-to-string error "No such label type: %s"] 5])
#@53 

(fn DATA FORWARD NO-REVISIT &optional STAY ERROR)
(defalias 'reftex-show-label-location #[1283 "\303 \203\n \304\202 \305\306\211\211\211\211\3072\302 @\262\310\f8\262\204, \311!\210\312\307\306\"\210	\2037 \313!\202< \314?\"\262\203I \315!\210\202T \316\"\210\312\307\306\"\210\317	\320!\"\262\n\203j \321\306\322#\202o \323\306\322#\262\211\204\220 eb\210\321\306\322#\211\262\204\220 \321\317\n\320!\"\306\322#\262\310\225\203\265 \324\325\310\224\310\225#\210\326\310\224\310\225\"\210\327\330!\210\204\300 \331!\210\202\300 \331!\210\316\"\210\2110\207" [reftex-keep-temporary-buffers reftex-find-label-regexp-format reftex-find-label-regexp-format2 selected-window error message nil exit 3 "Unknown label - reparse might help" throw find-buffer-visiting reftex-get-file-buffer-force switch-to-buffer-other-window "Label %s not found" format regexp-quote re-search-forward t re-search-backward reftex-highlight 0 reftex-show-entry recenter (4) select-window] 17 (#$ . 15352)])
#@24 

(fn BEG-HLT END-HLT)
(defalias 'reftex-show-entry #[514 "\306 \307\245\212\310\311\312\313$\210`)\212\314\311\312\313$\210`)\315\300!\2034 \2034 \316T\317\"\2034 pB	B\312\211\207\320\321{\"\205\235 \322\"\323\324!\210\312\325 \210\211c\210\326ed\327\330\331%\210Zb\210\332\333ZTZT#\210\334 \203\207 \335=\203x \f\204\224 \335 \210\336\337\340#\210\341 \210\202\224 \342=\203\221 \f\203\224 \342 \210\343\344!\210\331\211\262\207" [buffer-invisibility-spec reftex-buffers-with-changed-invisibility buffer-read-only major-mode font-lock-mode reftex-call-back-to-this-buffer reftex-window-height 2 re-search-backward "[\n]" nil 1 re-search-forward boundp get-char-property invisible string-search "" buffer-substring-no-properties switch-to-buffer "*RefTeX Context Copy*" erase-buffer subst-char-in-region 13 10 t reftex-highlight 0 reftex-refontify latex-mode run-hook-with-args reftex-pre-refontification-functions reftex-hidden turn-on-font-lock fundamental-mode run-hooks reftex-display-copied-context-hook] 12 (#$ . 16382)])
(byte-code "\211\203Q \211@\211A@;\203J \3018\211\203I \211@\211@A@\302\303\304\305\306GO#!\307\310\311\312\313!\314\"\306\304\315\n\n#\316&\"\266A\266\202\202 \210A\266\202\202 \207" [reftex-ref-style-alist 2 defalias intern format "reftex-%s-%s" 1 make-byte-code 0 "\300\302 )\207" vconcat vector [reftex-refstyle reftex-reference] "Insert a reference using the `%s' macro from the %s package.\n\nThis is a generated function." nil] 17)
#@135 Apply selected reference style to format FMT and add LABEL.
Replace any occurrences of "\ref" with REFSTYLE.

(fn LABEL FMT REFSTYLE)
(defalias 'reftex-format-special #[771 "\301\302\303\")\203 \304\305\211\306%\262\202  \302\307\"\203& \304\305\211\306%\262\310\"\207" [case-fold-search nil string-match "\\(\\\\ref\\)[ 	]*{" replace-match t 1 "\\(\\\\[[:alpha:]]+\\)[ 	]*{" format] 9 (#$ . 17904)])
#@182 Prompt for a label (with completion) and jump to the location of this label.
Optional prefix argument OTHER-WINDOW goes to the label in another window.

(fn &optional OTHER-WINDOW)
(defalias 'reftex-goto-label #[256 "\301 \210\302 J\303\304\305 \"\205 \306\307!\310\311\312\"\313\314\315\211&\316\"\317\314\315\320$\210\321 \204@ \322!\210\323\324!!\210\211b\210\325\326!\207" [reftex-docstruct-symbol reftex-access-scan-info current-window-configuration looking-back "\\\\\\(?:page\\)?ref{[-a-zA-Z0-9_*.:]*" line-beginning-position reftex-this-word "-a-zA-Z0-9_*.:" completing-read format-prompt "Label" #[257 "\211@;\207" [] 2 "\n\n(fn X)"] t nil assoc reftex-show-label-location stay point-marker set-window-configuration switch-to-buffer marker-buffer reftex-unhighlight 0] 12 (#$ . 18324) "P"])
(provide 'reftex-ref)
