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



(byte-code "\300\301\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\316\317%\210\310\320\312\313\321DD\322\316\317\323\324&\210\310\325\312\313\326DD\327\316\317%\210\310\330\312\313\331DD\332\316\333%\210\310\334\312\313\335DD\336\316\317%\210\310\337\312\313\340DD\341\316\317%\207" [custom-declare-group mail-extr nil "Extract full name and address from RFC 822 (or later) mail header." :prefix "mail-extr-" :group mail custom-declare-variable mail-extr-guess-middle-initial funcall function #[0 "\300\207" [nil] 1 #1=""] "Whether to try to guess middle initial from mail address.\nIf true, then when we see an address like \"John Smith <jqs@host.com>\"\nwe will assume that \"John Q. Smith\" is the fellow's name." :type boolean mail-extr-ignore-single-names #[0 "\300\207" [nil] 1 #1#] "Whether to ignore a name that is just a single word.\nIf true, then when we see an address like \"Idiot <dumb@stupid.com>\"\nwe will act as though we couldn't find a full name in the address." :version "22.1" mail-extr-ignore-realname-equals-mailbox-name #[0 "\300\207" [t] 1 #1#] "Whether to ignore a name that is equal to the mailbox name.\nIf true, then when the address is like \"Single <single@address.com>\"\nwe will act as though we couldn't find a full name in the address." mail-extr-full-name-prefixes #[0 "\300\207" ["\\(Prof\\|D[Rr]\\|Mrs?\\|Rev\\|Rabbi\\|SysOp\\|LCDR\\)\\.?[ 	\n]"] 1 #1#] "Matches prefixes to the full name that identify a person's position.\nThese are stripped from the full name because they do not contribute to\nuniquely identifying the person." regexp mail-extr-@-binds-tighter-than-! #[0 "\300\207" [nil] 1 #1#] "Whether the local mail transport agent looks at ! before @." mail-extr-mangle-uucp #[0 "\300\207" [nil] 1 #1#] "Whether to throw away information in UUCP addresses\nby translating things like \"foo!bar!baz@host\" into \"baz@bar.UUCP\"."] 8)
(defconst mail-extr-all-letters-but-separators "][[:alnum:]{|}'~`")
(defconst mail-extr-all-letters (concat mail-extr-all-letters-but-separators "-"))
(defconst mail-extr-first-letters "[:alpha:]")
(defconst mail-extr-last-letters "[:alpha:]`'.")
(defconst mail-extr-leading-garbage "\\W+")
(defconst mail-extr-bad-dot-pattern (format "\\([%s][%s]\\)\\.+\\([%s]\\)" mail-extr-all-letters mail-extr-last-letters mail-extr-first-letters))
(defconst mail-extr-full-name-suffix-pattern (byte-code "\301\302\211#\207" [mail-extr-all-letters format "\\(,? ?\\([JjSs][Rr]\\.?\\|V?I+V?\\)\\)\\([^%s]\\([^%s]\\|\\'\\)\\|\\'\\)"] 4))
(defconst mail-extr-roman-numeral-pattern "V?I+V?\\b")
(defconst mail-extr-weird-acronym-pattern "\\([A-Z]+[-_/]\\|[A-Z][A-Z][A-Z]?\\b\\)")
(defconst mail-extr-alternative-address-pattern "\\(aka *\\)?[a-zA-Z.]+[!@][a-zA-Z.]")
(defconst mail-extr-trailing-comment-start-pattern " [-{]\\|--\\|[+@#></;]")
(defconst mail-extr-name-pattern (format "\\b[%s][%s]*[%s]" mail-extr-first-letters mail-extr-all-letters mail-extr-last-letters))
(defconst mail-extr-initial-pattern (format "\\b[%s]\\([. ]\\|\\b\\)" mail-extr-first-letters))
(defconst mail-extr-telephone-extension-pattern "\\(\\([Ee]xt\\|[Tt]ph\\|[Tt]el\\|[Xx]\\)\\.?\\)? *\\+?[0-9][- 0-9]+")
(defconst mail-extr-ham-call-sign-pattern "\\b\\(DX[0-9]+\\|[AKNW][A-Z]?[0-9][A-Z][A-Z]?[A-Z]?\\)")
(defconst mail-extr-normal-name-pattern (format "\\b[%s][%s]+[%s]" mail-extr-first-letters mail-extr-all-letters-but-separators mail-extr-last-letters))
(defconst mail-extr-two-name-pattern (concat "\\`\\(" mail-extr-normal-name-pattern "\\|" mail-extr-initial-pattern "\\) +\\(" mail-extr-name-pattern "\\)\\(,\\|\\'\\)"))
(defconst mail-extr-listserv-list-name-pattern "Multiple recipients of list \\([-A-Z]+\\)")
(defconst mail-extr-stupid-vms-date-stamp-pattern "[0-9][0-9]-[JFMASOND][aepuco][nbrylgptvc]-[0-9][0-9][0-9][0-9] [0-9]+ *")
(defconst mail-extr-hz-embedded-gb-encoded-chinese-pattern "~{\\([^~].\\|~[^}]\\)+~}")
(defconst mail-extr-x400-encoded-address-pattern "[a-z]?[a-z]?\\(/[A-Za-z]+\\(\\.[A-Za-z]+\\)?=[^/]+\\)+/?\\'")
(defconst mail-extr-x400-encoded-address-field-pattern-format "/%s=\\([^/]+\\)\\(/\\|\\'\\)")
(defconst mail-extr-x400-encoded-address-surname-pattern (format mail-extr-x400-encoded-address-field-pattern-format "[Ss]"))
(defconst mail-extr-x400-encoded-address-given-name-pattern (format mail-extr-x400-encoded-address-field-pattern-format "[Gg]"))
(defconst mail-extr-x400-encoded-address-full-name-pattern (format mail-extr-x400-encoded-address-field-pattern-format "[Pp][Nn]"))
(defconst mail-extr-address-syntax-table (make-syntax-table))
(defconst mail-extr-address-comment-syntax-table (make-syntax-table))
(defconst mail-extr-address-domain-literal-syntax-table (make-syntax-table))
(defconst mail-extr-address-text-comment-syntax-table (make-syntax-table))
(defconst mail-extr-address-text-syntax-table (make-syntax-table))
(mapc #[257 "\211@JA\211\205C \211@\211G\300=\203 \301@A@#\210\202< \211@A@\3008X\203: \301#\210T\262\202& \266A\266\202\202 \207" [2 modify-syntax-entry] 11 "\n\n(fn PAIR)"] '((mail-extr-address-syntax-table (0 31 "w") (32 " ") (33 126 "w") (127 "w") (9 " ") (13 " ") (10 " ") (40 ".") (41 ".") (60 ".") (62 ".") (64 ".") (44 ".") (59 ".") (58 ".") (92 "\\") (34 "\"") (46 ".") (91 ".") (93 ".") (37 ".") (33 ".")) (mail-extr-address-comment-syntax-table (0 255 "w") (32 " ") (160 " ") (9 " ") (13 " ") (10 " ") (40 "()") (41 ")(") (92 "\\")) (mail-extr-address-domain-literal-syntax-table (0 255 "w") (32 " ") (160 " ") (9 " ") (13 " ") (10 " ") (91 "(]") (93 ")[") (92 "\\")) (mail-extr-address-text-comment-syntax-table (0 255 "w") (32 " ") (160 " ") (9 " ") (13 " ") (10 " ") (40 "()") (41 ")(") (91 "(]") (93 ")[") (123 "(}") (125 "){") (92 "\\") (34 "\"")) (mail-extr-address-text-syntax-table (0 127 ".") (128 255 "w") (32 " ") (9 " ") (13 " ") (10 " ") (65 90 "w") (97 122 "w") (45 "w") (125 "w") (123 "w") (124 "w") (39 "w") (126 "w") (48 57 "w"))))
(defalias 'mail-extr-skip-whitespace-forward #[0 "\300\301w\207" [" 	\n " nil] 2])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put mail-extr-skip-whitespace-forward speed -1 put byte-optimizer byte-compile-inline-expand] 5)
(defalias 'mail-extr-skip-whitespace-backward #[0 "\300\301x\207" [" 	\n " nil] 2])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put mail-extr-skip-whitespace-backward speed -1 put byte-optimizer byte-compile-inline-expand] 5)#@16 

(fn BEG END)
(defalias 'mail-extr-undo-backslash-quoting #[514 "\212\214}\210eb\210\300\301\302\303#\205 \304\305!\210m\204	 \306u\210\202	 *\207" [search-forward "\\" nil t delete-char -1 1] 6 (#$ . 6491)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put mail-extr-undo-backslash-quoting speed -1 put byte-optimizer byte-compile-inline-expand] 5)#@12 

(fn POS)
(defalias 'mail-extr-nuke-char-at #[257 "\212\211b\210\300\301!\210\302c)\207" [delete-char 1 32] 3 (#$ . 6867)])
(byte-code "\300\301\302\303#\304\301\305\306#\210\304\307\310\311#\207" [function-put mail-extr-nuke-char-at speed -1 put byte-optimizer byte-compile-inline-expand mail-extr-nuke-outside-range edebug-form-spec (symbolp &optional form form atom)] 5)#@475 Delete all elements outside BEG..END in LIST.
LIST-SYMBOL names a variable holding a list of buffer positions
BEG-SYMBOL and END-SYMBOL name variables delimiting a range
Each element of LIST-SYMBOL which lies outside of the range is
 deleted from the list.
Unless NO-REPLACE is true, at each of the positions in LIST-SYMBOL
 which lie outside of the range, one character at that position is
 replaced with a SPC.

(fn LIST-SYMBOL BEG-SYMBOL END-SYMBOL &optional NO-REPLACE)
(defalias 'mail-extr-nuke-outside-range '(macro . #[1027 "\211\300>\204\n \301\302!\210\303\304D\305B\306\304\307\310\311\312\313\nE\314\313\fEE\315?\205( \316\317\"BB\320BBBB\321\322\323\nEEF\207" [(t nil) error "no-replace must be t or nil, evaluable at macroexpand-time" let temp (ch) while (setq ch (car temp)) when or > ch < append ((mail-extr-nuke-char-at ch)) ((setcar temp nil)) ((setq temp (cdr temp))) setq delq nil] 15 (#$ . 7248)]))#@15 

(fn MARKER)
(defalias 'mail-extr-demarkerize #[257 "\300!\203 \301!\302\211\223\210\207\207" [markerp marker-position nil] 5 (#$ . 8180)])#@12 

(fn POS)
(defalias 'mail-extr-markerize #[257 "\300!\204\n \211\204 \207\301!\207" [markerp copy-marker] 3 (#$ . 8330)])#@12 

(fn ARG)
(defalias 'mail-extr-safe-move-sexp #[257 "\3001 \301`\"\206\f `b\210\3020\207\211A@\303\230?\205$ \304@A\"\210\202 \207" [(error) scan-sexps t "Unbalanced parentheses" signal] 5 (#$ . 8461)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put mail-extr-safe-move-sexp speed -1 put byte-optimizer byte-compile-inline-expand] 5)#@1303 Extract full name and canonical address from ADDRESS.
ADDRESS should be in RFC 822 (or later) format.
Returns a list of the form (FULL-NAME CANONICAL-ADDRESS).  If no
name can be extracted, FULL-NAME will be nil.  Also see
`mail-extr-ignore-single-names' and
`mail-extr-ignore-realname-equals-mailbox-name'.

If the optional argument ALL is non-nil, then ADDRESS can contain zero
or more recipients, separated by commas, and we return a list of
the form ((FULL-NAME CANONICAL-ADDRESS) ...) with one element for
each recipient.  If ALL is nil, then if ADDRESS contains more than
one recipients, all but the first is ignored.

ADDRESS may be a string or a buffer.  If it is a buffer, the visible
(narrowed) portion of the buffer will be interpreted as the address.
(This feature exists so that the clever caller might be able to avoid
consing a string.)

This function is primarily meant for when you're displaying the
result to the user: Many prettifications are applied to the
result returned.  If you want to decode an address for further
non-display use, you should probably use
`mail-header-parse-address' instead.  Also see
`mail-header-parse-address-lax' for a function that's less strict
than `mail-header-parse-address', but does less post-processing
to the results.

(fn ADDRESS &optional ALL)
(defalias 'mail-extract-address-components #[513 "\306\307!\306\310!\311r\306!q\210\312!\210\313!\210~\210\314 \210\311\315c\210;\203* c\210\202= \316!\2037 \317!\210\202= \320\321\"\210\322ed\311#\210r\306!q\210\312!\210\311)eb\210\323\324\311\325#\203c \326\327\325\"\210\202S \204k \211\204\220eb\210\330\311w\210m\204\220\311\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\313!\210eb\210g\315=\204\262 \315c\210\331\311w\210m\204\313`f\262$\204\315 #\332=\204\315 `\262#\333\267\202\306\313!\210\f\204\356 \212\334u\210\331\311w\210`f)\335=\204\356 `\334\3361\337`\"\206\373 `b\210\3250\262\202\211A@\340\230?\205\341@A\"\210\202\266\202\204\334u\210\313!\210\f\203\263\204\263`\202\263\204H\212\334u\210\331\311w\210`f)\342=\204H`\262\334\3361^\337`\"\206U`b\210\3250\262\202s\211A@\340\230?\205q\341@A\"\210\202g\266\202\204y\334u\210\203\263\204\263`\262\202\263\313@!\210\334\3361\244\337`\"\206\233`b\210\3250\262\202\271\211A@\340\230?\205\267\341@A\"\210\202\255\266\202\204\277\334u\210\313!\210\202\263#\343=\203!\204\332`Tf\344=\203\353 \203\345\"!@!@W\203\346`T\325\"\262#e`T}\210\347\334!\210\332\262$\202\263#\350\267\202\215`$\351\267\202`\211#B\262#\210\202m\211\"B\262\"\210\202m\211!B\262!\210\202m\211 B\262 \210\202m\211B\262\210\202m\211B\262\210\202m\211B\262\210\202m\211B\262\210\202m\320\352&\"\210\320\352&\"\266\334u\210\202\263\334u\210\202\263`\212\211b\210\347\334!\210\315c)\266\334u\210\202\263\353\311w\210m\204\263\311fz\354=\203\263\355\334!\210m\204\263\311f\356V\203\263\311f\357=\203\215#\332=\204\262 #\343=\203\305m\204\262 `\262\202\262 !A\203\351!@\212\211b\210\347\334!\210\315c)\266!A\262\"\202\313 A\203\n A@\212\211b\210\347\334!\210\315c)\266 \211AA\241\210\202\351G\334V\2032G\334=\2032\2042!\2042eb\210\347\334!\210`C\262\"\360c\210!\203F \204Fdb\210`C\262!\361c\210 \203c!\204c @\212\211b\210\347\334!\210\315c)\266\311\262! @\262!!@\262\"!\203\371\311\203\226@\262\211#V\204\213\211$W\203\217\311\240\210A\262\202u\362\311#\"\262\"\266\311\203\303@\262\211#V\204\270\211$W\203\274\311\240\210A\262\202\242\362\311 \"\262\266\311\203\360@\262\211#V\204\345\211$W\203\351\311\240\210A\262\202\317\362\311\"\262\266\203t@\262\nA\262!\203[ \203[	\"V\203[	!W\203[\204BG\363W\204B	 @V\204B	 A@W\203T	\212\211b\210\347\334!\210\315c)\266\202\371	\262\202\371!\203m!\203\371	\"W\203\371	\262\202\371\203\310@\262\nA\262!\203\257 \203\257	\"V\203\257	!W\203\257	\212\211b\210\347\334!\210\315c)\266\202t\203\274	V\203t\204t	\262\202t\203\344\204\344\212\211b\210\347\334!\210\315c)\266\311\262\203 \204 \212\211b\210\347\334!\210\315c)\266\311\262\203\356\311\203)@\262\211V\204\211W\203\"\311\240\210A\262\202\362\311 \"\262\266\311\203V@\262\211V\204K\211W\203O\311\240\210A\262\2025\362\311#\"\262\"\266\311\203\203@\262\211V\204x\211W\203|\311\240\210A\262\202b\362\311\"\262\266\311\203\260@\262\211V\204\245\211W\203\251\311\240\210A\262\202\217\362\311!\"\262 \266\203\314TV\203\314T\262\203\333V\203\333\311\211\203\356V\203\356\311\262\311\262\311\203@\262\211\334V\204\211\334W\203\211\212\211b\210\347\334!\210\315c)\266\311\240\210A\262\202\361\362\311!\"\262 \266!\203N!b\210\331\311x\210`\262eb\210\331\311w\210`W\203K`\262\202N\311\262\203\335\311\262\311\262\346!!\262!\346!\262 b\210\364\365!\210@b\210A\211\262!\203\256\347\334!\210\366 B\262\367c\210 Sb\210\212\317&!@#\210@|)\210A\204r`C\262\202r\262  b\210\347\370!\210\212\211b\210\347\334!\210\315c)\266\371!\210\311\262\371!!\262!\372\371\"\262@\262 r&q\210~\210\314 \210\317&!\210!\203!Tb\210\331\311w\210`!}\210\202\203\203}\210\202dd}\210\203b\203b\311\203Y@\262\211\"V\204@\211eW\203R\211\212\211b\210\347\334!\210\315c)\266\311\240\210A\262\202+\362\311\"\262\266\203\247\203\247\311\203\236@\262\211@V\204\205\211eW\203\227\211\212\211b\210\347\334!\210\315c)\266\311\240\210A\262\202o\362\311 \"\262\266\203\360\203\360\204\360\311\203\347@\262\211\"V\204\316\211eW\203\340\211\212\211b\210\347\334!\210\315c)\266\311\240\210A\262\202\271\362\311 \"\262\266\203\204@b\210\347\334!\210`\262 \373c\210A\262A\203A	\203A	\214\203=B\203=b\210`B\262\311\262 \347\334!\210\367c\210d\262\202|B\203Hd\262\202|\203g\345!@\262\372\374\"\262\311\262\374 !\262 \202|\203y\262\374 !\262 \202|d\262e}\210@\262\203$	db\210\204\242A\204\242`\262 \364\375!\210\202\254`B\262\364\376!\210\370u\210\317pA@\203\300A@T\202\301e@#\210\347\334!\210\212\370\3361\341\337`\"\206\330`b\210\3250\266\202\366\211A@\340\230?\205\364\341@A\"\210\202\352\266\331\311x\210h)\377=\204	\364\212\331\311x\210h)\377=\203	\201N \202	\201O \201P \"\210A\262\202\205)\2036	\201Q \372\371\"\"\262\371 !\262 Td}\210\203_	\204_	@b\210\347\334!\210`\262 \373c\210A\262\237\211\262\203\n\262\n\201R 2\f\n	\205\n	A@\206\200	b\210\331\311x\210\212\370\3361\235	\337`\"\206\224	`b\210\3250\266\202\262	\211A@\340\230?\205\260	\341@A\"\210\202\246	\266`\262\331\311x\210h)\377=\262\203\n\201S `{C\"\211\205\325	\211\201T N\262\203\ne`}\210	@b\210\347\334!\210`\262 	\311\241\210\362 \"\262\373c\210\201U \201R \325\"\210	A\262\n\202r	0\210e\262\203\n@\202!\n\206!\nd\262\f\2031\n\201V  Td\"\210)\203z\n=\203z\nX\203z\nTS}\210ed\212\214}\210eb\210\201W \201X \311\325#\205t\n\347\370!\210m\204Z\n\334u\210\202Z\n*\266\202R\f\203\210\n}\210\202R\f\f\203\300\n\fTS}\210ed\212\214}\210eb\210\201W \201X \311\325#\205\267\n\347\370!\210m\204\235\n\334u\210\202\235\n*\266eb\210\202R\fdb\210``}\210\317'#\210eb\210\323\201Y \311\325#\262eb\210A\204\363\n\201Z \201[ \201\\ \201]  #\210\331\311w\210m\204>\f`f\262$#\201^ \267\202\301`\262\334\3361!\337`\"\206`b\210\3250\262\2026\211A@\340\230?\2054\341@A\"\210\202*\266\202\204<\334u\210`\363Z\262\212\370u\210\347\334!\210b\210m\204U\347\334!\210)\212\214}\210eb\210\201W \201X \311\325#\205}\347\370!\210m\204c\334u\210\202c*\266`f\315=\204\214\201_ c\210\325\262\202\363\n`Tf\201` >\203\251\334u\210\347\334!\210\315c\210\202\363\n\n\203\265e`}\210\202\363\n\347\334!\210\201_ c\210\202\363\n#z\201a >\203\327\347\334!\210\201_ c\210\202\363\n`\262\355\334!\210`\262b\210\214}\210\201b D!\203\"\f\201c \201d EFGE\"\210\331\311x\210`d|\210\323H\311\325#\203:\f\326\201e \325\"\210\202\f\f\202:\feb\210\323\201f \311\325#\2037\f\326\327\325\"\210\202%\fdb\210)\202\363\nA\204R\f\201Z \201[ \201O \201]  #\210\313I!\210\201g )#\210eb\210eb\210J\203\332\f\n\204\332\fZ\201h =\203\332\feb\210\201b K!\203\332\f\201i \224f\262	\201h \224f\262r&q\210\325\201j 	f\"\203\275\f\201j Sf\"\203\275\f\fTf\262*\203\332\fz\354=\203\332\f\201h \224b\210\226\201k \261\210deZ\201i \325\201i V\2036Z=\2036db\210\317*#\210\211\203#W\203#e\\f\227\\e\\f\227=\204\311\262T\262\202\377\fe\\d|\210\211\2036L\2036``}\210\266eb\210M\203N\323\201l \311\325#\204N``}\210edU?\205Y\201m  r'q\210edU?\205i\201m  )D%B\262%'\203\212\"\203\202\334#}\210\202\204~\210ed|\210~\210+\266$\202c )\203\230\211\237\207\211@\207" [mail-extr-address-syntax-table case-fold-search disable-initial-guessing-flag mailextr-cend mailextr-cbeg mail-extr-address-comment-syntax-table get-buffer-create " *canonical address*" " *extract address components*" nil buffer-disable-undo set-syntax-table erase-buffer 32 bufferp insert-buffer-substring error "Invalid address: %s" set-text-properties re-search-forward "\\([^\\]\\(\\\\\\\\\\)*\\)\n[ 	]" t replace-match "\\1 " " 	" " 	\n " 40 #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (40 212 34 304 91 393)) 1 41 (error) scan-sexps "Unbalanced parentheses" signal 34 44 64 last copy-marker delete-char #s(hash-table size 12 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (60 520 62 520 64 520 58 520 44 520 33 520 37 520 59 520 46 627 41 633 93 633 92 633)) #s(hash-table size 8 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (60 528 62 538 64 548 58 558 44 568 33 578 37 588 59 598)) "No clause matching `%S'" "^ - " 119 forward-word-strictly 127 160 60 62 delq 2 insert-before-markers 88 point-marker "%" -1 mail-extr-demarkerize mapcar "@" mail-extr-markerize "@ " "% " 46 mail-extr-address-domain-literal-syntax-table mail-extr-mangle-uucp mail-extr-@-binds-tighter-than-! mail-extr-all-top-level-domains mail-extr-x400-encoded-address-pattern mail-extr-x400-encoded-address-given-name-pattern mail-extr-x400-encoded-address-surname-pattern mail-extr-x400-encoded-address-full-name-pattern mail-extr-bad-dot-pattern mail-extr-address-text-syntax-table mail-extr-guess-middle-initial mail-extr-two-name-pattern mail-extr-ignore-realname-equals-mailbox-name mail-extr-ignore-single-names "" "." "uucp" append truncated intern-soft domain-name throw downcase-region search-forward "\\" "[_0-9]" modify-syntax-entry 33 "w" syntax-table #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (34 2824 46 2962)) " " (95 61) (46 92) looking-at mapc #[257 "\212\300\301\302#)\205 \303p\304\224\304\225#\210\305c\207" [re-search-forward nil t insert-buffer-substring 1 " "] 5 "\n\n(fn FIELD-PATTERN)"] "\\1 \\2" "\\([^_=]+\\)[_=]" mail-extr-voodoo 3 0 char-equal ". " "[- ]" buffer-string] 49 (#$ . 8827)])
(byte-code "\300\301\302\303\304DD\305\306\307%\207" [custom-declare-variable mail-extr-disable-voodoo funcall function #[0 "\300\207" ["\\cj"] 1 ""] "If it is a regexp, names matching it will never be modified.\nIf it is neither nil nor a string, modifying of names will never take\nplace.  It affects how `mail-extract-address-components' works." :type (choice (regexp :size 0) (const :tag "Always enabled" nil) (const :tag "Always disabled" t))] 6)#@50 

(fn MBOX-BEG MBOX-END CANONICALIZATION-BUFFER)
(defalias 'mail-extr-voodoo #[771 "\205 ;?\206 eb\210\306\307\310#?\205\326\311\307\211\211\211\211\211\211\211\211\211\211\211\211\211\211\212\312\n!\210eb\210m\204\304 \313\307w\210`\312!\210g\314>\203X \315\316\307\317g\320=\203R \321\202S \322$\210\202\211 \322\3231n \324`\"\206e `b\210\3100\262\202\203 \211A@\325\230?\205\201 \326@A\"\210\202w \266\202\204\211 db\210\312\n!\210\211f\327=\203\300 \211`|\210\330\307x\210\331\332!\203\252 \333\334!\266\2021 `\262\330\307w\210o\203\275 `|\266\2021 \335 \210\210\2021 \315\336\307\310#\204eb\210\315\337\307\310#\203\352 eb\210\315\337\307\310#\203\333\336\310\"\210\202\332 \315\340\307\310#\203eb\210\306\f\307\310#\203\333\341\310\"\210\202\365 eb\210\211\204T\203\262\262\307\262\2031\311\262\307\262\307\262\307\262\307\262\307\262	\342\307w\210\311=\203@`d}\210`\262\307\262\311=\203^\331!\203^\311\225b\210`d}\210\202H\321Y\203\270\331>!\203\270\342\307x\210`\262\fg\343=\203\322u\210\202\202\343c\210g\344=\204\213\344c\210\342\307w\210g\345>\203\253\346\322!\210g\347=\203\245\322u\210\202\257\347c\210\202\257\350\322!\210\310\262\310\262\202H\331\351!\203\314\322\224b\210`d}\210\310\262	\202Hg\343=\203\353\322=\203\353\322u\210\310\262g\344=\204H\344c\210\202Hg\352>\203\271`?\312!\210g\353>\203\315\316\307\310g\320=\203\f\321\202\322$\204I\354\322!\210\202I\322\3231.\324`\"\206%`b\210\3100\262\202C\211A@\325\230?\205A\326@A\"\210\2027\266\202\204Idb\210\312\n!\210`@\311=\203u\331\355!\203u@?Z\321Y\203u?T@S}\210eb\210\202H@?Z\356U\204\223@?Z\357U\203\242\321?\\f\347=\203\242\331\355!\204\242?Tf\262\n\202\245\307\262\n?@|\210	\203H	\360\261\210\202H\331A!\203\310\333\334\310\"\210\202H\331B!\203\331\311\225b\210\310\262\202H\311=\203\362\331C!\203\362\311\225b\210`d}\210\202H\321Y\203\f\203\f\331D!\203\f\331E!\203(\331F!\204(\331G!\204(\322Y\203.\331H!\203.\310\262\202H\331I!\203>\311\224\311\225|\210\202H\331J!\203pgg\226=\204O\310\262\322u\210g\347=\203^\322u\210\202a\347c\210g\344=\204j\344c\210\310\262\202H\311=\203\215\331K!\203\215\322\224\322\225}\210\310\262\310\262\202H\311V\203\302h\344=\203\302g\361=\203\302`Td=\203\302\354\322!\210\362`\363#\210`\"\210\310\211L\262\202H\311V\203\337g\361=\203\337`\262T\262\310\262b\210\202H\331M!\203/`\262\311\225\262\321Y\203\n\f\204\n\331\364!\204Sf\347=\203\n\310\262\306\365\310#\203&b\210\306\366\310#\203#\310\262\202&\310\262b\210\310\262\202H\331\367!\203E`\262\311\225\262b\210\310\262\202H\310\262\203T\262\202\204e\331\370!\203ed\211\262b\210e\203o\206p`}\210\204\206eb\210\310\331\371!\203\205\372 \210)\n\203\270eb\210\315\373!\210`S\262\206\234db\210h\344=\204\247\344c\210\363pe#\210b\210\374\307w\210`d}\210eb\210\306\375\307\310#\205\323\333m\203\314\334\202\315\336\310\"\210\202\273*\266\220\207" [mail-extr-disable-voodoo case-fold-search mail-extr-address-text-syntax-table mail-extr-address-text-comment-syntax-table mail-extr-bad-dot-pattern mail-extr-full-name-prefixes re-search-forward nil t 0 set-syntax-table "^({[\"'`" (39 96) search-forward "'" move 39 2 1 (error) scan-sexps "Unbalanced parentheses" signal 40 " 	" looking-at "\\([ 	]+$\\|[ 	]+,\\)" replace-match "" just-one-space " " "_" "." "\\1 \\2" " 	\n " 44 32 (106 74 115 83) capitalize-word 46 upcase-word "MKA \\(.+\\)" (40 123 91 34 39 96) (39 96) delete-char " *\\'" 3 4 ". " 38 capitalize-region insert-buffer-substring "[[:lower:]]\\{4,\\}[ 	]*\\'" "[[:lower:]]" "[[:upper:]]" "[0-9]+\\>" "\\(\\.+\\|[?!;:.][?!;:.]+\\|[?!;:][?!;:.]*\\)\\'" "[-A-Za-z_]+[. ]\\(PARC\\|ADOC\\)\\'" erase-buffer "," "	 ," "[ 	\n]+" mail-extr-full-name-suffix-pattern mailextr-cbeg mailextr-cend mail-extr-stupid-vms-date-stamp-pattern mail-extr-hz-embedded-gb-encoded-chinese-pattern mail-extr-leading-garbage mail-extr-weird-acronym-pattern mail-extr-roman-numeral-pattern mail-extr-alternative-address-pattern mail-extr-trailing-comment-start-pattern mail-extr-telephone-extension-pattern mail-extr-ham-call-sign-pattern mail-extr-initial-pattern mail-extr-listserv-list-name-pattern disable-initial-guessing-flag mail-extr-name-pattern] 27 (#$ . 20643)])
(defconst mail-extr-all-top-level-domains (byte-code "\300\301\302\"\303\304\305\"\306\"\210\207" [make-vector 739 0 mapc make-closure #[257 "\301\302@\227\300\"\303\3048\203 \305\3048A@\"\202 A@#\207" [V0 put intern domain-name 2 format] 7 "\n\n(fn X)"] (("ac" "Ascension Island") ("ad" "Andorra") ("ae" "United Arab Emirates") ("af" "Afghanistan") ("ag" "Antigua and Barbuda") ("ai" "Anguilla") ("al" "Albania") ("am" "Armenia") ("an" "Netherlands Antilles") ("ao" "Angola") ("aq" "Antarctica") ("ar" "Argentina" "Argentine Republic") ("as" "American Samoa") ("at" "Austria" "The Republic of %s") ("au" "Australia") ("aw" "Aruba") ("ax" "Aland Islands") ("az" "Azerbaijan") ("ba" "Bosnia-Herzegovina") ("bb" "Barbados") ("bd" "Bangladesh") ("be" "Belgium" "The Kingdom of %s") ("bf" "Burkina Faso") ("bg" "Bulgaria") ("bh" "Bahrain") ("bi" "Burundi") ("bj" "Benin") ("bl" "Saint Barthelemy") ("bm" "Bermuda") ("bn" "Brunei Darussalam") ("bo" "Bolivia" "Republic of %s") ("br" "Brazil" "The Federative Republic of %s") ("bs" "Bahamas") ("bt" "Bhutan") ("bv" "Bouvet Island") ("bw" "Botswana") ("by" "Belarus") ("bz" "Belize") ("ca" "Canada") ("cc" "Cocos (Keeling) Islands") ("cd" "Congo" "The Democratic Republic of the %s") ("cf" "Central African Republic") ("cg" "Congo") ("ch" "Switzerland" "The Swiss Confederation") ("ci" "Ivory Coast") ("ck" "Cook Islands") ("cl" "Chile" "The Republic of %s") ("cm" "Cameroon") ("cn" "China" "The People's Republic of %s") ("co" "Colombia") ("cr" "Costa Rica" "The Republic of %s") ("cu" "Cuba") ("cv" "Cape Verde") ("cx" "Christmas Island") ("cy" "Cyprus") ("cz" "Czech Republic") ("de" "Germany") ("dj" "Djibouti") ("dk" "Denmark") ("dm" "Dominica") ("do" "Dominican Republic" "The %s") ("dz" "Algeria") ("ec" "Ecuador" "The Republic of %s") ("ee" "Estonia") ("eg" "Egypt" "The Arab Republic of %s") ("eh" "Western Sahara") ("er" "Eritrea") ("es" "Spain" "The Kingdom of %s") ("et" "Ethiopia") ("eu" "European Union") ("fi" "Finland" "The Republic of %s") ("fj" "Fiji") ("fk" "Falkland Islands (Malvinas)") ("fm" "Micronesia" "Federated States of %s") ("fo" "Faroe Islands") ("fr" "France") ("ga" "Gabon") ("gb" "United Kingdom") ("gd" "Grenada") ("ge" "Georgia") ("gf" "French Guiana") ("gg" "Guernsey") ("gh" "Ghana") ("gi" "Gibraltar") ("gl" "Greenland") ("gm" "Gambia") ("gn" "Guinea") ("gp" "Guadeloupe (Fr.)") ("gq" "Equatorial Guinea") ("gr" "Greece" "The Hellenic Republic (%s)") ("gs" "South Georgia and The South Sandwich Islands") ("gt" "Guatemala") ("gu" "Guam (U.S.)") ("gw" "Guinea-Bissau") ("gy" "Guyana") ("hk" "Hong Kong") ("hm" "Heard Island and McDonald Islands") ("hn" "Honduras") ("hr" "Croatia" "Croatia (Hrvatska)") ("ht" "Haiti") ("hu" "Hungary" "The Hungarian Republic") ("id" "Indonesia") ("ie" "Ireland") ("il" "Israel" "The State of %s") ("im" "Isle of Man" "The %s") ("in" "India" "The Republic of %s") ("io" "British Indian Ocean Territory") ("iq" "Iraq") ("ir" "Iran" "Islamic Republic of %s") ("is" "Iceland" "The Republic of %s") ("it" "Italy" "The Italian Republic") ("je" "Jersey") ("jm" "Jamaica") ("jo" "Jordan") ("jp" "Japan") ("ke" "Kenya") ("kg" "Kyrgyzstan") ("kh" "Cambodia") ("ki" "Kiribati") ("km" "Comoros") ("kn" "Saint Kitts and Nevis") ("kp" "Korea (North)" "Democratic People's Republic of Korea") ("kr" "Korea (South)" "Republic of Korea") ("kw" "Kuwait") ("ky" "Cayman Islands") ("kz" "Kazakhstan") ("la" "Lao People's Democratic Republic") ("lb" "Lebanon") ("lc" "Saint Lucia") ("li" "Liechtenstein") ("lk" "Sri Lanka" "The Democratic Socialist Republic of %s") ("lr" "Liberia") ("ls" "Lesotho") ("lt" "Lithuania") ("lu" "Luxembourg") ("lv" "Latvia") ("ly" "Libyan Arab Jamahiriya") ("ma" "Morocco") ("mc" "Monaco") ("md" "Moldova" "The Republic of %s") ("me" "Montenegro") ("mf" "Saint Martin (French part)") ("mg" "Madagascar") ("mh" "Marshall Islands") ("mk" "Macedonia" "The Former Yugoslav Republic of %s") ("ml" "Mali") ("mm" "Myanmar") ("mn" "Mongolia") ("mo" "Macao") ("mp" "Northern Mariana Islands") ("mq" "Martinique") ("mr" "Mauritania") ("ms" "Montserrat") ("mt" "Malta") ("mu" "Mauritius") ("mv" "Maldives") ("mw" "Malawi") ("mx" "Mexico" "The United Mexican States") ("my" "Malaysia") ("mz" "Mozambique") ("na" "Namibia") ("nc" "New Caledonia (Fr.)") ("ne" "Niger") ("nf" "Norfolk Island") ("ng" "Nigeria") ("ni" "Nicaragua" "The Republic of %s") ("nl" "Netherlands" "The Kingdom of the %s") ("no" "Norway" "The Kingdom of %s") ("np" "Nepal") ("nr" "Nauru") ("nu" "Niue") ("nz" "New Zealand") ("om" "Oman") ("pa" "Panama") ("pe" "Peru") ("pf" "French Polynesia") ("pg" "Papua New Guinea") ("ph" "Philippines" "The Republic of the %s") ("pk" "Pakistan") ("pl" "Poland") ("pm" "Saint Pierre and Miquelon") ("pn" "Pitcairn") ("pr" "Puerto Rico (U.S.)") ("ps" "Palestinian Territory, Occupied") ("pt" "Portugal" "The Portuguese Republic") ("pw" "Palau") ("py" "Paraguay") ("qa" "Qatar") ("re" "Reunion (Fr.)") ("ro" "Romania") ("rs" "Serbia") ("ru" "Russia" "Russian Federation") ("rw" "Rwanda") ("sa" "Saudi Arabia") ("sb" "Solomon Islands") ("sc" "Seychelles") ("sd" "Sudan") ("se" "Sweden" "The Kingdom of %s") ("sg" "Singapore" "The Republic of %s") ("sh" "Saint Helena") ("si" "Slovenia") ("sj" "Svalbard and Jan Mayen") ("sk" "Slovakia" "The Slovak Republic") ("sl" "Sierra Leone") ("sm" "San Marino") ("sn" "Senegal") ("so" "Somalia") ("sr" "Suriname") ("st" "Sao Tome and Principe") ("su" "U.S.S.R." "The Union of Soviet Socialist Republics") ("sv" "El Salvador") ("sy" "Syrian Arab Republic") ("sz" "Swaziland") ("tc" "Turks and Caicos Islands") ("td" "Chad") ("tf" "French Southern Territories") ("tg" "Togo") ("th" "Thailand" "The Kingdom of %s") ("tj" "Tajikistan") ("tk" "Tokelau") ("tl" "East Timor") ("tm" "Turkmenistan") ("tn" "Tunisia") ("to" "Tonga") ("tp" "East Timor") ("tr" "Turkey" "The Republic of %s") ("tt" "Trinidad and Tobago") ("tv" "Tuvalu") ("tw" "Taiwan" "%s, Province of China") ("tz" "Tanzania" "United Republic of %s") ("ua" "Ukraine") ("ug" "Uganda") ("uk" "United Kingdom" "The %s of Great Britain and Northern Ireland") ("um" "United States Minor Outlying Islands") ("us" "United States" "The %s of America") ("uy" "Uruguay" "The Eastern Republic of %s") ("uz" "Uzbekistan") ("va" "Holy See (Vatican City State)") ("vc" "Saint Vincent and the Grenadines") ("ve" "Venezuela" "The Republic of %s") ("vg" "Virgin Islands, British") ("vi" "Virgin Islands, U.S.") ("vn" "Vietnam") ("vu" "Vanuatu") ("wf" "Wallis and Futuna") ("ws" "Samoa") ("ye" "Yemen") ("yt" "Mayotte") ("yu" "Yugoslavia" "Yugoslavia, AKA Serbia-Montenegro") ("za" "South Africa" "The Republic of %s") ("zm" "Zambia") ("zw" "Zimbabwe" "Republic of %s") ("aero" t "Air Transport Industry") ("asia" t "Pan-Asia and Asia Pacific community") ("biz" t "Businesses") ("cat" t "Catalan language and culture") ("com" t "Commercial") ("coop" t "Cooperative Associations") ("info" t "Info") ("jobs" t "Employment") ("mobi" t "Mobile products") ("museum" t "Museums") ("name" t "Individuals") ("net" t "Network") ("org" t "Non-profit Organization") ("pro" t "Credentialed professionals") ("tel" t "Contact data") ("travel" t "Travel industry") ("gov" t "United States Government") ("edu" t "Educational") ("mil" t "United States Military") ("int" t "International Treaties") ("uucp" t "Unix to Unix CoPy") ("arpa" t "Advanced Research Projects Agency (U.S. DoD)") ("abudhabi" "Abu Dhabi") ("africa" "Africa") ("alsace" "Alsace, France") ("amsterdam" "Amsterdam, The Netherlands") ("arab" "League of Arab States") ("asia" "Asia-Pacific region") ("bar" "Bar, Montenegro") ("barcelona" "Barcelona, Spain") ("bayern" "Bavaria, Germany") ("bcn" "Barcelona, Spain") ("berlin" "Berlin, Germany") ("boston" "Boston, Massachusetts") ("brussels" "Brussels, Belgium") ("budapest" "Budapest, Hungary") ("bzh" "Brittany, France") ("capetown" "Cape Town, South Africa") ("cat" "Catalonia, Spain") ("cologne" "Cologne, Germany") ("corsica" "Corsica, France") ("cymru" "Wales, United Kingdom") ("doha" "Doha") ("dubai" "Dubai") ("durban" "Durban, South Africa") ("eus" "Basque, Spain and France") ("frl" "Friesland, Netherlands") ("gal" "Galicia, Spain") ("gent" "Ghent, Belgium") ("hamburg" "Hamburg, Germany") ("helsinki" "Helsinki, Finland") ("irish" "Ireland") ("ist" "İstanbul, Turkey") ("istanbul" "İstanbul, Turkey") ("joburg" "Johannesburg, South Africa") ("kiwi" "New Zealanders") ("koeln" "Cologne, Germany") ("krd" "Kurdistan") ("kyoto" "Kyoto, Japan") ("lat" "Latin America") ("london" "London, United Kingdom") ("madrid" "Madrid, Spain") ("melbourne" "Melbourne, Australia") ("miami" "Miami, Florida") ("nagoya" "Nagoya, Japan") ("nrw" "North Rhine-Westphalia, Germany") ("nyc" "New York City, New York") ("okinawa" "Okinawa, Japan") ("osaka" "Osaka, Japan") ("paris" "Paris, France") ("quebec" "Québec, Canada") ("rio" "Rio de Janeiro, Brazil") ("ruhr" "Ruhr, Germany") ("ryukyu" "Ryukyu Islands, Japan") ("saarland" "Saarland, Germany") ("scot" "Scotland, United Kingdom") ("stockholm" "Stockholm, Sweden") ("swiss" "Switzerland") ("sydney" "Sydney, Australia") ("taipei" "Taipei, Taiwan") ("tatar" "Tatars") ("tirol" "Tyrol, Austria") ("tokyo" "Tokyo, Japan") ("vegas" "Las Vegas, Nevada") ("wales" "Wales, United Kingdom") ("wien" "Vienna, Austria") ("yokohama" "Yokohama, Japan") ("zuerich" "Zurich, Switzerland") ("xn--1qqw23a" "Foshan, China") ("xn--xhq521b" "Guangdong, China") ("xn--80adxhks" "Moscow, Russia") ("xn--p1acf" "Russia") ("xn--mgbca7dzdo" "Abu Dhabi") ("xn--ngbrx" "Arab"))] 5))#@75 Convert mail domain DOMAIN to the country it corresponds to.

(fn DOMAIN)
(defalias 'what-domain #[257 "\301\227\"\211\262\204 \302\303!\210\304\305\306!\226\307N#\207" [mail-extr-all-top-level-domains intern-soft error "No such domain" message "%s: %s" symbol-name domain-name] 6 (#$ . 34545) (byte-code "\302\303\304	\305\302$)C\207" [completion-ignore-case mail-extr-all-top-level-domains t completing-read "Domain: " nil] 5)])
(provide 'mail-extr)
