;ELC   
;;; Compiled by buildd@lcy01-24.buildd on Tue Sep 19 22:18:11 2017
;;; from file /build/emacs24-8smh0b/emacs24-24.3+1/debian/build-x/lisp/epg.el
;;; in Emacs version 24.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

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


(require 'epg-config)
#@36 GnuPG ID of your default identity.
(defvar epg-user-id nil (#$ . 564))
#@42 An alist mapping from key ID to user ID.
(defvar epg-user-id-alist nil (#$ . 641))
(defvar epg-last-status nil)
(defvar epg-read-point nil)
(defvar epg-process-filter-running nil)
(defvar epg-pending-status-list nil)
(defvar epg-key-id nil)
(defvar epg-context nil)
(defvar epg-debug-buffer nil)
(defconst epg-cipher-algorithm-alist '((0 . "NONE") (1 . "IDEA") (2 . "3DES") (3 . "CAST5") (4 . "BLOWFISH") (7 . "AES") (8 . "AES192") (9 . "AES256") (10 . "TWOFISH") (11 . "CAMELLIA128") (12 . "CAMELLIA256") (110 . "DUMMY")))
(defconst epg-pubkey-algorithm-alist '((1 . "RSA") (2 . "RSA_E") (3 . "RSA_S") (16 . "ELGAMAL_E") (17 . "DSA") (20 . "ELGAMAL")))
(defconst epg-digest-algorithm-alist '((1 . "MD5") (2 . "SHA1") (3 . "RIPEMD160") (8 . "SHA256") (9 . "SHA384") (10 . "SHA512") (11 . "SHA224")))
(defconst epg-compress-algorithm-alist '((0 . "NONE") (1 . "ZIP") (2 . "ZLIB") (3 . "BZIP2")))
(defconst epg-invalid-recipients-reason-alist '((0 . "No specific reason given") (1 . "Not Found") (2 . "Ambiguous specification") (3 . "Wrong key usage") (4 . "Key revoked") (5 . "Key expired") (6 . "No CRL known") (7 . "CRL too old") (8 . "Policy mismatch") (9 . "Not a secret key") (10 . "Key not trusted")))
(defconst epg-delete-problem-reason-alist '((1 . "No such key") (2 . "Must delete secret key first") (3 . "Ambiguous specification")))
(defconst epg-import-ok-reason-alist '((0 . "Not actually changed") (1 . "Entirely new key") (2 . "New user IDs") (4 . "New signatures") (8 . "New subkeys") (16 . "Contains private key")))
(defconst epg-import-problem-reason-alist '((0 . "No specific reason given") (1 . "Invalid Certificate") (2 . "Issuer Certificate missing") (3 . "Certificate Chain too long") (4 . "Error storing certificate")))
(defconst epg-no-data-reason-alist '((1 . "No armored data") (2 . "Expected a packet but did not found one") (3 . "Invalid packet found, this may indicate a non OpenPGP message") (4 . "Signature expected but not found")))
(defconst epg-unexpected-reason-alist nil)
(defvar epg-key-validity-alist '((111 . unknown) (105 . invalid) (100 . disabled) (114 . revoked) (101 . expired) (45 . none) (113 . undefined) (110 . never) (109 . marginal) (102 . full) (117 . ultimate)))
(defvar epg-key-capablity-alist '((101 . encrypt) (115 . sign) (99 . certify) (97 . authentication) (68 . disabled)))
(defvar epg-new-signature-type-alist '((68 . detached) (67 . clear) (83 . normal)))
(defvar epg-dn-type-alist '(("1.2.840.113549.1.9.1" . "EMail") ("2.5.4.12" . "T") ("2.5.4.42" . "GN") ("2.5.4.4" . "SN") ("0.2.262.1.10.7.20" . "NameDistinguisher") ("2.5.4.16" . "ADDR") ("2.5.4.15" . "BC") ("2.5.4.13" . "D") ("2.5.4.17" . "PostalCode") ("2.5.4.65" . "Pseudo") ("2.5.4.5" . "SerialNumber")))
(defvar epg-prompt-alist nil)
(put 'epg-error 'error-conditions '(epg-error error))
#@42 Make a data object from FILE.

(fn FILE)
(defalias 'epg-make-data-from-file #[257 "\300\301\302\"B\207" [epg-data vector nil] 5 (#$ . 3456)])
#@46 Make a data object from STRING.

(fn STRING)
(defalias 'epg-make-data-from-string #[257 "\300\301\302\"B\207" [epg-data vector nil] 5 (#$ . 3605)])
#@37 Return the file of DATA.

(fn DATA)
(defalias 'epg-data-file #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-data signal wrong-type-argument epg-data-p 0] 5 (#$ . 3760)])
#@39 Return the string of DATA.

(fn DATA)
(defalias 'epg-data-string #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-data signal wrong-type-argument epg-data-p 1] 5 (#$ . 3956)])
#@133 Return a context object.

(fn &optional PROTOCOL ARMOR TEXTMODE INCLUDE-CERTS CIPHER-ALGORITHM DIGEST-ALGORITHM COMPRESS-ALGORITHM)
(defalias 'epg-make-context #[1792 "\300\301\206 \302\303C\304\211\211\211\211\211\211&B\207" [epg-context vector OpenPGP epg-passphrase-callback-function nil] 24 (#$ . 4157)])
#@56 Return the protocol used within CONTEXT.

(fn CONTEXT)
(defalias 'epg-context-protocol #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 0] 5 (#$ . 4488)])
#@74 Return t if the output should be ASCII armored in CONTEXT.

(fn CONTEXT)
(defalias 'epg-context-armor #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 1] 5 (#$ . 4716)])
#@74 Return t if canonical text mode should be used in CONTEXT.

(fn CONTEXT)
(defalias 'epg-context-textmode #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 2] 5 (#$ . 4959)])
#@92 Return how many certificates should be included in an S/MIME signed message.

(fn CONTEXT)
(defalias 'epg-context-include-certs #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 3] 5 (#$ . 5205)])
#@55 Return the cipher algorithm in CONTEXT.

(fn CONTEXT)
(defalias 'epg-context-cipher-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 4] 5 (#$ . 5474)])
#@55 Return the digest algorithm in CONTEXT.

(fn CONTEXT)
(defalias 'epg-context-digest-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 5] 5 (#$ . 5709)])
#@57 Return the compress algorithm in CONTEXT.

(fn CONTEXT)
(defalias 'epg-context-compress-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 6] 5 (#$ . 5944)])
#@61 Return the function used to query passphrase.

(fn CONTEXT)
(defalias 'epg-context-passphrase-callback #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 7] 5 (#$ . 6183)])
#@66 Return the function which handles progress update.

(fn CONTEXT)
(defalias 'epg-context-progress-callback #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 8] 5 (#$ . 6427)])
#@54 Return the list of key-id for signing.

(fn CONTEXT)
(defalias 'epg-context-signers #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 9] 5 (#$ . 6674)])
#@57 Return the list of notations for signing.

(fn CONTEXT)
(defalias 'epg-context-sig-notations #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 10] 5 (#$ . 6899)])
#@103 Return the process object of `epg-gpg-program'.
This function is for internal use only.

(fn CONTEXT)
(defalias 'epg-context-process #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 11] 5 (#$ . 7135)])
#@100 Return the output file of `epg-gpg-program'.
This function is for internal use only.

(fn CONTEXT)
(defalias 'epg-context-output-file #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 12] 5 (#$ . 7411)])
#@74 Return the result of the previous cryptographic operation.

(fn CONTEXT)
(defalias 'epg-context-result #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 13] 5 (#$ . 7687)])
#@71 Return the name of the current cryptographic operation.

(fn CONTEXT)
(defalias 'epg-context-operation #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-context signal wrong-type-argument epg-context-p 14] 5 (#$ . 7932)])
#@62 Set the protocol used within CONTEXT.

(fn CONTEXT PROTOCOL)
(defalias 'epg-context-set-protocol #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 0] 6 (#$ . 8177)])
#@79 Specify if the output should be ASCII armored in CONTEXT.

(fn CONTEXT ARMOR)
(defalias 'epg-context-set-armor #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 1] 6 (#$ . 8410)])
#@82 Specify if canonical text mode should be used in CONTEXT.

(fn CONTEXT TEXTMODE)
(defalias 'epg-context-set-textmode #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 2] 6 (#$ . 8657)])
#@103 Set how many certificates should be included in an S/MIME signed message.

(fn CONTEXT INCLUDE-CERTS)
(defalias 'epg-context-set-include-certs #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 3] 6 (#$ . 8911)])
#@69 Set the cipher algorithm in CONTEXT.

(fn CONTEXT CIPHER-ALGORITHM)
(defalias 'epg-context-set-cipher-algorithm #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 4] 6 (#$ . 9190)])
#@69 Set the digest algorithm in CONTEXT.

(fn CONTEXT DIGEST-ALGORITHM)
(defalias 'epg-context-set-digest-algorithm #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 5] 6 (#$ . 9438)])
#@73 Set the compress algorithm in CONTEXT.

(fn CONTEXT COMPRESS-ALGORITHM)
(defalias 'epg-context-set-compress-algorithm #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 6] 6 (#$ . 9686)])
#@597 Set the function used to query passphrase.

PASSPHRASE-CALLBACK is either a function, or a cons-cell whose
car is a function and cdr is a callback data.

The function gets three arguments: the context, the key-id in
question, and the callback data (if any).

The callback may not be called if you use GnuPG 2.x, which relies
on the external program called `gpg-agent' for passphrase query.
If you really want to intercept passphrase query, consider
installing GnuPG 1.x _along with_ GnuPG 2.x, which does passphrase
query by itself and Emacs can intercept them.

(fn CONTEXT PASSPHRASE-CALLBACK)
(defalias 'epg-context-set-passphrase-callback #[514 "\242\300=\204 \301\302\303D\"\210A\304:\203 \202 CI\207" [epg-context signal wrong-type-argument epg-context-p 7] 6 (#$ . 9941)])
#@391 Set the function which handles progress update.

PROGRESS-CALLBACK is either a function, or a cons-cell whose
car is a function and cdr is a callback data.

The function gets six arguments: the context, the operation
description, the character to display a progress unit, the
current amount done, the total amount to be done, and the
callback data (if any).

(fn CONTEXT PROGRESS-CALLBACK)
(defalias 'epg-context-set-progress-callback #[514 "\242\300=\204 \301\302\303D\"\210A\304:\203 \202 CI\207" [epg-context signal wrong-type-argument epg-context-p 8] 6 (#$ . 10737)])
#@59 Set the list of key-id for signing.

(fn CONTEXT SIGNERS)
(defalias 'epg-context-set-signers #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 9] 6 (#$ . 11325)])
#@64 Set the list of notations for signing.

(fn CONTEXT NOTATIONS)
(defalias 'epg-context-set-sig-notations #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 10] 6 (#$ . 11555)])
#@108 Set the process object of `epg-gpg-program'.
This function is for internal use only.

(fn CONTEXT PROCESS)
(defalias 'epg-context-set-process #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 11] 6 (#$ . 11798)])
#@109 Set the output file of `epg-gpg-program'.
This function is for internal use only.

(fn CONTEXT OUTPUT-FILE)
(defalias 'epg-context-set-output-file #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 12] 6 (#$ . 12079)])
#@78 Set the result of the previous cryptographic operation.

(fn CONTEXT RESULT)
(defalias 'epg-context-set-result #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 13] 6 (#$ . 12364)])
#@78 Set the name of the current cryptographic operation.

(fn CONTEXT OPERATION)
(defalias 'epg-context-set-operation #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-context signal wrong-type-argument epg-context-p 14] 6 (#$ . 12613)])
#@58 Return a signature object.

(fn STATUS &optional KEY-ID)
(defalias 'epg-make-signature #[513 "\300\301\302\211\211\211\211\211\211\211\211&B\207" [epg-signature vector nil] 15 (#$ . 12865)])
#@54 Return the status code of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-status #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 0] 5 (#$ . 13065)])
#@49 Return the key-id of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-key-id #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 1] 5 (#$ . 13296)])
#@51 Return the validity of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-validity #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 2] 5 (#$ . 13522)])
#@54 Return the fingerprint of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-fingerprint #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 3] 5 (#$ . 13752)])
#@56 Return the creation time of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-creation-time #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 4] 5 (#$ . 13988)])
#@58 Return the expiration time of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-expiration-time #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 5] 5 (#$ . 14228)])
#@63 Return the public key algorithm of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-pubkey-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 6] 5 (#$ . 14472)])
#@59 Return the digest algorithm of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-digest-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 7] 5 (#$ . 14722)])
#@48 Return the class of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-class #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 8] 5 (#$ . 14968)])
#@50 Return the version of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-signature-version #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 9] 5 (#$ . 15192)])
#@60 Return the list of notations of SIGNATURE.

(fn SIGNATURE)
(defalias 'epg-sig-notations #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-signature signal wrong-type-argument epg-signature-p 10] 5 (#$ . 15420)])
#@58 Set the status code of SIGNATURE.

(fn SIGNATURE STATUS)
(defalias 'epg-signature-set-status #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 0] 6 (#$ . 15655)])
#@53 Set the key-id of SIGNATURE.

(fn SIGNATURE KEY-ID)
(defalias 'epg-signature-set-key-id #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 1] 6 (#$ . 15889)])
#@57 Set the validity of SIGNATURE.

(fn SIGNATURE VALIDITY)
(defalias 'epg-signature-set-validity #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 2] 6 (#$ . 16118)])
#@63 Set the fingerprint of SIGNATURE.

(fn SIGNATURE FINGERPRINT)
(defalias 'epg-signature-set-fingerprint #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 3] 6 (#$ . 16353)])
#@67 Set the creation time of SIGNATURE.

(fn SIGNATURE CREATION-TIME)
(defalias 'epg-signature-set-creation-time #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 4] 6 (#$ . 16597)])
#@71 Set the expiration time of SIGNATURE.

(fn SIGNATURE EXPIRATION-TIME)
(defalias 'epg-signature-set-expiration-time #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 5] 6 (#$ . 16847)])
#@77 Set the public key algorithm of SIGNATURE.

(fn SIGNATURE PUBKEY-ALGORITHM)
(defalias 'epg-signature-set-pubkey-algorithm #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 6] 6 (#$ . 17103)])
#@73 Set the digest algorithm of SIGNATURE.

(fn SIGNATURE DIGEST-ALGORITHM)
(defalias 'epg-signature-set-digest-algorithm #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 7] 6 (#$ . 17366)])
#@51 Set the class of SIGNATURE.

(fn SIGNATURE CLASS)
(defalias 'epg-signature-set-class #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 8] 6 (#$ . 17625)])
#@55 Set the version of SIGNATURE.

(fn SIGNATURE VERSION)
(defalias 'epg-signature-set-version #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 9] 6 (#$ . 17851)])
#@67 Set the list of notations of SIGNATURE.

(fn SIGNATURE NOTATIONS)
(defalias 'epg-signature-set-notations #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-signature signal wrong-type-argument epg-signature-p 10] 6 (#$ . 18083)])
#@109 Return a new signature object.

(fn TYPE PUBKEY-ALGORITHM DIGEST-ALGORITHM CLASS CREATION-TIME FINGERPRINT)
(defalias 'epg-make-new-signature #[1542 "\300\301&B\207" [epg-new-signature vector] 14 (#$ . 18331)])
#@55 Return the type of NEW-SIGNATURE.

(fn NEW-SIGNATURE)
(defalias 'epg-new-signature-type #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-new-signature signal wrong-type-argument epg-new-signature-p 0] 5 (#$ . 18561)])
#@71 Return the public key algorithm of NEW-SIGNATURE.

(fn NEW-SIGNATURE)
(defalias 'epg-new-signature-pubkey-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-new-signature signal wrong-type-argument epg-new-signature-p 1] 5 (#$ . 18803)])
#@67 Return the digest algorithm of NEW-SIGNATURE.

(fn NEW-SIGNATURE)
(defalias 'epg-new-signature-digest-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-new-signature signal wrong-type-argument epg-new-signature-p 2] 5 (#$ . 19073)])
#@56 Return the class of NEW-SIGNATURE.

(fn NEW-SIGNATURE)
(defalias 'epg-new-signature-class #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-new-signature signal wrong-type-argument epg-new-signature-p 3] 5 (#$ . 19339)])
#@64 Return the creation time of NEW-SIGNATURE.

(fn NEW-SIGNATURE)
(defalias 'epg-new-signature-creation-time #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-new-signature signal wrong-type-argument epg-new-signature-p 4] 5 (#$ . 19583)])
#@62 Return the fingerprint of NEW-SIGNATURE.

(fn NEW-SIGNATURE)
(defalias 'epg-new-signature-fingerprint #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-new-signature signal wrong-type-argument epg-new-signature-p 5] 5 (#$ . 19843)])
#@40 Return a key object.

(fn OWNER-TRUST)
(defalias 'epg-make-key #[257 "\300\301\302\211#B\207" [epg-key vector nil] 6 (#$ . 20099)])
#@42 Return the owner trust of KEY.

(fn KEY)
(defalias 'epg-key-owner-trust #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key signal wrong-type-argument epg-key-p 0] 5 (#$ . 20238)])
#@43 Return the sub key list of KEY.

(fn KEY)
(defalias 'epg-key-sub-key-list #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key signal wrong-type-argument epg-key-p 1] 5 (#$ . 20444)])
#@43 Return the user ID list of KEY.

(fn KEY)
(defalias 'epg-key-user-id-list #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key signal wrong-type-argument epg-key-p 2] 5 (#$ . 20652)])
#@53 Set the sub key list of KEY.

(fn KEY SUB-KEY-LIST)
(defalias 'epg-key-set-sub-key-list #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-key signal wrong-type-argument epg-key-p 1] 6 (#$ . 20860)])
#@53 Set the user ID list of KEY.

(fn KEY USER-ID-LIST)
(defalias 'epg-key-set-user-id-list #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-key signal wrong-type-argument epg-key-p 2] 6 (#$ . 21077)])
#@111 Return a sub key object.

(fn VALIDITY CAPABILITY SECRET-P ALGORITHM LENGTH ID CREATION-TIME EXPIRATION-TIME)
(defalias 'epg-make-sub-key #[2056 "\300\301								\302&	B\207" [epg-sub-key vector nil] 19 (#$ . 21295)])
#@47 Return the validity of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-validity #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 0] 5 (#$ . 21527)])
#@49 Return the capability of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-capability #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 1] 5 (#$ . 21747)])
#@58 Return non-nil if SUB-KEY is a secret key.

(fn SUB-KEY)
(defalias 'epg-sub-key-secret-p #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 2] 5 (#$ . 21971)])
#@48 Return the algorithm of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 3] 5 (#$ . 22202)])
#@45 Return the length of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-length #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 4] 5 (#$ . 22424)])
#@41 Return the ID of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-id #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 5] 5 (#$ . 22640)])
#@52 Return the creation time of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-creation-time #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 6] 5 (#$ . 22848)])
#@54 Return the expiration time of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-expiration-time #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 7] 5 (#$ . 23078)])
#@50 Return the fingerprint of SUB-KEY.

(fn SUB-KEY)
(defalias 'epg-sub-key-fingerprint #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 8] 5 (#$ . 23312)])
#@99 Set the fingerprint of SUB-KEY.
This function is for internal use only.

(fn SUB-KEY FINGERPRINT)
(defalias 'epg-sub-key-set-fingerprint #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-sub-key signal wrong-type-argument epg-sub-key-p 8] 6 (#$ . 23538)])
#@48 Return a user ID object.

(fn VALIDITY STRING)
(defalias 'epg-make-user-id #[514 "\300\301\302#B\207" [epg-user-id vector nil] 7 (#$ . 23812)])
#@47 Return the validity of USER-ID.

(fn USER-ID)
(defalias 'epg-user-id-validity #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-user-id signal wrong-type-argument epg-user-id-p 0] 5 (#$ . 23964)])
#@43 Return the name of USER-ID.

(fn USER-ID)
(defalias 'epg-user-id-string #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-user-id signal wrong-type-argument epg-user-id-p 1] 5 (#$ . 24184)])
#@53 Return the signature list of USER-ID.

(fn USER-ID)
(defalias 'epg-user-id-signature-list #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-user-id signal wrong-type-argument epg-user-id-p 2] 5 (#$ . 24398)])
#@65 Set the signature list of USER-ID.

(fn USER-ID SIGNATURE-LIST)
(defalias 'epg-user-id-set-signature-list #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-user-id signal wrong-type-argument epg-user-id-p 2] 6 (#$ . 24630)])
#@128 Return a key signature object.

(fn VALIDITY PUBKEY-ALGORITHM KEY-ID CREATION-TIME EXPIRATION-TIME USER-ID CLASS EXPORTABLE-P)
(defalias 'epg-make-key-signature #[2056 "\300\301								&B\207" [epg-key-signature vector] 18 (#$ . 24874)])
#@59 Return the validity of KEY-SIGNATURE.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-validity #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 0] 5 (#$ . 25127)])
#@71 Return the public key algorithm of KEY-SIGNATURE.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-pubkey-algorithm #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 1] 5 (#$ . 25377)])
#@57 Return the key-id of KEY-SIGNATURE.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-key-id #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 2] 5 (#$ . 25647)])
#@64 Return the creation time of KEY-SIGNATURE.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-creation-time #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 3] 5 (#$ . 25893)])
#@66 Return the expiration time of KEY-SIGNATURE.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-expiration-time #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 4] 5 (#$ . 26153)])
#@58 Return the user-id of KEY-SIGNATURE.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-user-id #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 5] 5 (#$ . 26417)])
#@56 Return the class of KEY-SIGNATURE.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-class #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 6] 5 (#$ . 26665)])
#@62 Return t if KEY-SIGNATURE is exportable.

(fn KEY-SIGNATURE)
(defalias 'epg-key-signature-exportable-p #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-key-signature signal wrong-type-argument epg-key-signature-p 7] 5 (#$ . 26909)])
#@78 Return a notation object.

(fn NAME VALUE &optional HUMAN-READABLE CRITICAL)
(defalias 'epg-make-sig-notation #[1026 "\300\301$B\207" [epg-sig-notation vector] 10 (#$ . 27166)])
#@53 Return the name of SIG-NOTATION.

(fn SIG-NOTATION)
(defalias 'epg-sig-notation-name #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sig-notation signal wrong-type-argument epg-sig-notation-p 0] 5 (#$ . 27354)])
#@54 Return the value of SIG-NOTATION.

(fn SIG-NOTATION)
(defalias 'epg-sig-notation-value #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sig-notation signal wrong-type-argument epg-sig-notation-p 1] 5 (#$ . 27591)])
#@63 Return the human-readable of SIG-NOTATION.

(fn SIG-NOTATION)
(defalias 'epg-sig-notation-human-readable #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sig-notation signal wrong-type-argument epg-sig-notation-p 2] 5 (#$ . 27830)])
#@57 Return the critical of SIG-NOTATION.

(fn SIG-NOTATION)
(defalias 'epg-sig-notation-critical #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-sig-notation signal wrong-type-argument epg-sig-notation-p 3] 5 (#$ . 28087)])
#@57 Set the value of SIG-NOTATION.

(fn SIG-NOTATION VALUE)
(defalias 'epg-sig-notation-set-value #[514 "\242\300=\204 \301\302\303D\"\210A\304I\207" [epg-sig-notation signal wrong-type-argument epg-sig-notation-p 1] 6 (#$ . 28332)])
#@105 Return an import status object.

(fn FINGERPRINT &optional REASON NEW USER-ID SIGNATURE SUB-KEY SECRET)
(defalias 'epg-make-import-status #[1793 "\300\301&B\207" [epg-import-status vector] 16 (#$ . 28574)])
#@76 Return the fingerprint of the key that was considered.

(fn IMPORT-STATUS)
(defalias 'epg-import-status-fingerprint #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-status signal wrong-type-argument epg-import-status-p 0] 5 (#$ . 28802)])
#@64 Return the reason code for import failure.

(fn IMPORT-STATUS)
(defalias 'epg-import-status-reason #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-status signal wrong-type-argument epg-import-status-p 1] 5 (#$ . 29072)])
#@59 Return t if the imported key was new.

(fn IMPORT-STATUS)
(defalias 'epg-import-status-new #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-status signal wrong-type-argument epg-import-status-p 2] 5 (#$ . 29325)])
#@74 Return t if the imported key contained new user IDs.

(fn IMPORT-STATUS)
(defalias 'epg-import-status-user-id #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-status signal wrong-type-argument epg-import-status-p 3] 5 (#$ . 29570)])
#@76 Return t if the imported key contained new signatures.

(fn IMPORT-STATUS)
(defalias 'epg-import-status-signature #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-status signal wrong-type-argument epg-import-status-p 4] 5 (#$ . 29834)])
#@74 Return t if the imported key contained new sub keys.

(fn IMPORT-STATUS)
(defalias 'epg-import-status-sub-key #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-status signal wrong-type-argument epg-import-status-p 5] 5 (#$ . 30102)])
#@74 Return t if the imported key contained a secret key.

(fn IMPORT-STATUS)
(defalias 'epg-import-status-secret #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-status signal wrong-type-argument epg-import-status-p 6] 5 (#$ . 30366)])
#@216 Return an import result object.

(fn CONSIDERED NO-USER-ID IMPORTED IMPORTED-RSA UNCHANGED NEW-USER-IDS NEW-SUB-KEYS NEW-SIGNATURES NEW-REVOCATIONS SECRET-READ SECRET-IMPORTED SECRET-UNCHANGED NOT-IMPORTED IMPORTS)
(defalias 'epg-make-import-result #[3598 "\300\301&B\207" [epg-import-result vector] 30 (#$ . 30630)])
#@65 Return the total number of considered keys.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-considered #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 0] 5 (#$ . 30983)])
#@64 Return the number of keys without user ID.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-no-user-id #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 1] 5 (#$ . 31241)])
#@57 Return the number of imported keys.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-imported #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 2] 5 (#$ . 31498)])
#@61 Return the number of imported RSA keys.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-imported-rsa #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 3] 5 (#$ . 31746)])
#@58 Return the number of unchanged keys.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-unchanged #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 4] 5 (#$ . 32002)])
#@56 Return the number of new user IDs.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-new-user-ids #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 5] 5 (#$ . 32252)])
#@56 Return the number of new sub keys.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-new-sub-keys #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 6] 5 (#$ . 32503)])
#@58 Return the number of new signatures.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-new-signatures #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 7] 5 (#$ . 32754)])
#@59 Return the number of new revocations.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-new-revocations #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 8] 5 (#$ . 33009)])
#@66 Return the total number of secret keys read.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-secret-read #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 9] 5 (#$ . 33266)])
#@64 Return the number of imported secret keys.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-secret-imported #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 10] 5 (#$ . 33526)])
#@65 Return the number of unchanged secret keys.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-secret-unchanged #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 11] 5 (#$ . 33789)])
#@61 Return the number of keys not imported.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-not-imported #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 12] 5 (#$ . 34054)])
#@69 Return the list of `epg-import-status' objects.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-imports #[257 "\211\242\300=\204 \301\302\303D\"\210\211A\304H\207" [epg-import-result signal wrong-type-argument epg-import-result-p 13] 5 (#$ . 34311)])
#@71 Return the result of CONTEXT associated with NAME.

(fn CONTEXT NAME)
(defalias 'epg-context-result-for #[514 "\211\300!\236A\207" [epg-context-result] 5 (#$ . 34571)])
#@83 Set the result of CONTEXT associated with NAME to VALUE.

(fn CONTEXT NAME VALUE)
(defalias 'epg-context-set-result-for #[771 "\300!\236\211\203 \211\241\202 \301BB\"\207" [epg-context-result epg-context-set-result] 9 (#$ . 34747)])
#@63 Convert SIGNATURE to a human readable string.

(fn SIGNATURE)
(defalias 'epg-signature-to-string #[257 "\302\303!\"A\304!\305!\306=\203 \307\202O \305!\310=\203\" \311\202O \305!\312=\203. \313\202O \305!\314=\203: \315\202O \305!\316=\203F \317\202O \305!\320=\205O \321\303!\203g \322;\203` \202c \323!P\202h \324\325!\203y \326\327\325!\"\202z \324\330!\203\213 \331\332\330	!\"\202\214 \324\203\242 \333	\236A\206\236 \326\334\"P\202\243 \324\260\207" [epg-user-id-alist epg-pubkey-algorithm-alist assoc epg-signature-key-id epg-signature-pubkey-algorithm epg-signature-status good "Good signature from " bad "Bad signature from " expired "Expired signature from " expired-key "Signature made by expired key " revoked-key "Signature made by revoked key " no-pubkey "No public key for " " " epg-decode-dn "" epg-signature-validity format " (trust %s)" epg-signature-creation-time format-time-string " created at %Y-%m-%dT%T%z" " using " "(unknown algorithm %d)"] 12 (#$ . 34996)])
#@71 Convert VERIFY-RESULT to a human readable string.

(fn VERIFY-RESULT)
(defalias 'epg-verify-result-to-string #[257 "\300\301\302#\207" [mapconcat epg-signature-to-string "\n"] 5 (#$ . 36014)])
#@71 Convert NEW-SIGNATURE to a human readable string.

(fn NEW-SIGNATURE)
(defalias 'epg-new-signature-to-string #[257 "\302!\303=\203\f \304\202 \302!\305=\203 \306\202 \307\310!\236A\311\312!	\236A\313\314\315\316!\"\317!\260\207" [epg-pubkey-algorithm-alist epg-digest-algorithm-alist epg-new-signature-type detached "Detached signature " clear "Cleartext signature " "Signature " epg-new-signature-pubkey-algorithm "/" epg-new-signature-digest-algorithm " " format "%02X " epg-new-signature-class epg-new-signature-fingerprint] 10 (#$ . 36214)])
#@71 Convert IMPORT-RESULT to a human readable string.

(fn IMPORT-RESULT)
(defalias 'epg-import-result-to-string #[257 "\300\301\302!\"\303!\304V\205 \300\305\303!\"\306!\304V\205\" \300\307\306!\"\310!\304V\205B \300\311\310!\"\312!\304V\205@ \300\313\312!\"\314Q\315!\304V\205Q \300\316\315!\"\317!\304V\205a \300\320\317!\"\321!\304V\205q \300\322\321	!\"\323!\304V\205\201 \300\324\323\n!\"\325	!\304V\205\221 \300\326\325!\"\327\n!\304V\205\241 \300\330\327\f!\"\331!\304V\205\261 \300\332\331!\"\333\f!\304V\205\301 \300\334\333!\"\260\f\207" [format "Total number processed: %d\n" epg-import-result-considered epg-import-result-not-imported 0 "      skipped new keys: %d\n" epg-import-result-no-user-id "          w/o user IDs: %d\n" epg-import-result-imported "              imported: %d" epg-import-result-imported-rsa "  (RSA: %d)" "\n" epg-import-result-unchanged "             unchanged: %d\n" epg-import-result-new-user-ids "          new user IDs: %d\n" epg-import-result-new-sub-keys "           new subkeys: %d\n" epg-import-result-new-signatures "        new signatures: %d\n" epg-import-result-new-revocations "   new key revocations: %d\n" epg-import-result-secret-read "      secret keys read: %d\n" epg-import-result-secret-imported "  secret keys imported: %d\n" epg-import-result-secret-unchanged " secret keys unchanged: %d\n"] 16 (#$ . 36779)])
(defalias 'epg-error-to-string #[257 "\211@\304=\203	 \305\207\211@\306=\203 \307\207\211@\310=\203, \211A\236\211\203* \311\312A\227\"\202+ \313\207\211@\314=\203F \211A	\236\211\203D \311\315A\227\"\202E \316\207\211@\317=\203O \320\207\211@\321>\203\234 \211@\322=\203a \323\202b \324\325A\236\211\203r \311\326A\"\202s \327\262\330A\236\211\203\227 \211A\331V\203\227 \211A\n\236\211\262\203\227 \311\332A\227\"\202\230 \333\262Q\207\211@\334=\203\251 \311\335A\"\207\211@\336=\203\266 \311\337A\"\207\211@\340=\203\277 \341\207\211@\342=\203\310 \343\207\211@\344=\203\342 \211A\236\211\203\340 \311\345A\227\"\202\341 \346\207\211@\347=\205\352 \350\207" [epg-no-data-reason-alist epg-unexpected-reason-alist epg-invalid-recipients-reason-alist epg-delete-problem-reason-alist exit "Exit" quit "Cancelled" no-data format "No data (%s)" "No data" unexpected "Unexpected (%s)" "Unexpected" bad-armor "Bad armor" (invalid-recipient invalid-signer) invalid-recipient "Unusable public key" "Unusable secret key" requested ": %s" ": <unknown>" reason 0 " (%s)" "" no-pubkey "No public key: %s" no-seckey "No secret key: %s" no-recipients "No recipients" no-signers "No signers" delete-problem "Delete problem (%s)" "Delete problem" key-not-created "Key not created"] 7 "\n\n(fn ERROR)"])
(defalias 'epg-errors-to-string #[257 "\300\301\302#\207" [mapconcat epg-error-to-string "; "] 5 "\n\n(fn ERRORS)"])
#@77 Start `epg-gpg-program' in a subprocess with given ARGS.

(fn CONTEXT ARGS)
(defalias 'epg--start #[514 "\306!\203! \307\306!!\310=\203! \311\312\313!\314=\203 \202 	\"\210\315\316\317\320\321F\313!\314=?\205> \322\323\324\325!\2069 \326\"\205> \327\313!\314=?\205N \330!\205N \331\n\205U \332\nD\313!\314=?\205` \333\334!\205h \335\336	!\205p \337\340\n!\205} \341\340!D	&	\342\211\343\344 \345\346!\343@\203\276 \212A\204\235 \345\347!AAq\210db\210\350\351\313!\314=\203\263 \202\264 	\352\353\354##c\210)rq\210\355\356!\203\314 \356\343!\210\357\360!\210\3430\357\361!\210e1\357\362!\210\3432\357\363!\210\3433\357\364!\210\3434\357\365!\2105)\366\367\370\371\372\373!\374\"\375\376%DC\216\377\201B !\210\201C \201D \201E \313\n!\314=\203%\202&	%\262)\201F \201G \"\210\201H \"+\207" [epg-gpgsm-program epg-gpg-program epg-gpg-home-directory coding-system-for-write coding-system-for-read process-connection-type epg-context-process process-status run error "%s is already running in this context" epg-context-protocol CMS append "--no-tty" "--status-fd" "1" "--yes" string-match ":" getenv "GPG_AGENT_INFO" "" ("--use-agent") epg-context-progress-callback ("--enable-progress-filter") "--homedir" ("--command-fd" "0") epg-context-armor ("--armor") epg-context-textmode ("--textmode") epg-context-output-file "--output" binary nil default-file-modes generate-new-buffer " *epg*" " *epg-debug*" format "%s %s\n" mapconcat identity " " fboundp set-buffer-multibyte make-local-variable epg-last-status epg-read-point epg-process-filter-running epg-pending-status-list epg-key-id epg-context funcall make-byte-code 0 "\301\300!\207" vconcat vector [set-default-file-modes] 2 "\n\n(fn)" set-default-file-modes epg-debug epg-debug-buffer 448 apply start-process "epg" set-process-filter epg--process-filter epg-context-set-process] 14 (#$ . 39609)])
(defalias 'epg--process-filter #[514 "\203 \212	\204 \306\307!	q\210db\210\211c\210)\310\311!!\205| r\311!q\210db\210\211c\210\n?\205{ \312\313DC\216\314b\210\315 \210\316\317!\205z \316\320!\203r \321\322!\321\323!\324\325P!\f\235\203\\ \326\211\203k \327!\203k \211\"\210B\266\326y\210`\202= ))\207" [epg-debug epg-debug-buffer epg-process-filter-running epg-read-point epg-pending-status-list epg-context generate-new-buffer " *epg-debug*" buffer-live-p process-buffer funcall #[0 "\301\211\207" [epg-process-filter-running nil] 2 "\n\n(fn)"] t beginning-of-line looking-at ".*\n" "\\[GNUPG:] \\([A-Z_]+\\) ?\\(.*\\)" match-string 1 2 intern-soft "epg--status-" nil fboundp epg-last-status] 8 "\n\n(fn PROCESS INPUT)"])
#@80 Read the output file CONTEXT and return the content as a string.

(fn CONTEXT)
(defalias 'epg-read-output #[257 "\301\302!r\211q\210\303\304\305\306\307\310!\311\"\312\313%DC\216\314\315!\203\" \315\316!\210\317\320!!\2055 \321\322\320!!\210\323 )*\207" [coding-system-for-read generate-new-buffer " *temp*" funcall make-byte-code 0 "\301\300!\205	 \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 "\n\n(fn)" fboundp set-buffer-multibyte nil file-exists-p epg-context-output-file binary insert-file-contents buffer-string] 9 (#$ . 42258)])
#@78 Wait until one of elements in STATUS-LIST arrives.

(fn CONTEXT STATUS-LIST)
(defalias 'epg-wait-for-status #[514 "r\301\302!!q\210\211\303\302!!\304=\203\" \203\" \305\302!\306\"\210\202\n \2051 \307\310\311\312\310\"B#)\207" [epg-pending-status-list process-buffer epg-context-process process-status run accept-process-output 1 epg-context-set-result-for error (exit) epg-context-result-for] 9 (#$ . 42818)])
#@67 Wait until the `epg-gpg-program' process completes.

(fn CONTEXT)
(defalias 'epg-wait-for-completion #[257 "\300\301!!\302=\203 \303\301!\304\"\210\202  \305\306!\210\307\310\311\310\"\237#\207" [process-status epg-context-process run accept-process-output 1 sleep-for 0.1 epg-context-set-result-for error epg-context-result-for] 7 (#$ . 43244)])
#@34 Reset the CONTEXT.

(fn CONTEXT)
(defalias 'epg-reset #[257 "\300!\203 \301\302\300!!!\203 \303\302\300!!!\210\304\305\"\207" [epg-context-process buffer-live-p process-buffer kill-buffer epg-context-set-process nil] 5 (#$ . 43602)])
#@50 Delete the output file of CONTEXT.

(fn CONTEXT)
(defalias 'epg-delete-output-file #[257 "\300!\205 \301\300!!\205 \302\300!!\207" [epg-context-output-file file-exists-p delete-file] 4 (#$ . 43848)])
(byte-code "\300\301!\203 \302\303\301\"\210\202 \302\303\304\"\210\300\207" [fboundp decode-coding-string defalias epg--decode-coding-string identity] 3)
(defalias 'epg--status-USERID_HINT #[514 "\301\302\"\205B \303\304\"\303\305\"C\306\"\307\310\311\312\313\314\315!\316\"\317\320%D\321\310\322\307EDC\217\210\211\2038 \211@\241\202@ @BB\211\266\203\207" [epg-user-id-alist string-match "\\`\\([^ ]+\\) \\(.*\\)" match-string 1 2 assoc #1=#:err funcall make-byte-code 0 "\300\301\302\300@!\303\"\240\207" vconcat vector [epg--decode-coding-string epg--decode-percent-escape utf-8] 4 "\n\n(fn)" error #[257 "\300\207" [nil] 2 "\n\n(fn IGNORED)"]] 13 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NEED_PASSPHRASE #[514 "\301\302\"\205 \303\304\"\211\207" [epg-key-id string-match "\\`\\([^ ]+\\)" match-string 1] 5 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NEED_PASSPHRASE_SYM #[514 "\301\211\207" [epg-key-id SYM] 4 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NEED_PASSPHRASE_PIN #[514 "\301\211\207" [epg-key-id PIN] 4 "\n\n(fn CONTEXT STRING)"])
(byte-code "\300\301!\203 \302\303\301\"\210\202 \302\303\304\"\210\300\305!\203! \302\306\305\"\210\202& \302\306\307\"\210\300\207" [fboundp clear-string defalias epg--clear-string #[257 "\300\301\"\207" [fillarray 0] 4 "\n\n(fn STRING)"] encode-coding-string epg--encode-coding-string identity] 3)
(defalias 'epg--status-GET_HIDDEN #[514 "\205c \302\303\"\205c \304!\204 \305\306!\210\307\211C\307C\307C\307\262\310\311\312\313\314\315#\316\"\317\320%DC\216\321\310\311\312\322\314\315\f\n\n\n$\323\"\324\320%D\325\310\311\326\327\314\315!\330\"\331\332%\321EDC\217*\266\204\207" [epg-key-id inhibit-quit string-match "\\`passphrase\\." epg-context-passphrase-callback error "passphrase-callback not set" nil funcall make-byte-code 0 "\300@\203\n \303\300@!\210\301@\203 \303\301@!\210\302@\205 \303\302@!\207" vconcat vector [epg--clear-string] 2 "\n\n(fn)" #1=#:err "\301\306\300!@\300\f\306\300!A#\240\210\301@\205N \302\301@\307P\240\210\310\301@!\210\301\311\240\210\203> \303\312\302@\313\314\"\"\240\210\310\302@!\210\302\311\240\210\202G \303\302@\240\210\302\311\240\210\315\316\300!\303@\"\207" [epg-key-id epg-passphrase-coding-system epg-context-passphrase-callback "\n" epg--clear-string nil epg--encode-coding-string coding-system-change-eol-conversion unix process-send-string epg-context-process] 6 quit 257 "\301\300\302\303\304\300\302\"B#\210\305\306\300!!\207" [epg-context-set-result-for error (quit) epg-context-result-for delete-process epg-context-process] 8 "\n\n(fn IGNORED)"] 17 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--prompt-GET_BOOL #[514 "\301\"\302\203 A\202 \303P!\207" [epg-prompt-alist assoc y-or-n-p "? "] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--prompt-GET_BOOL-untrusted_key\.override #[514 "\302@\303\232\2030 \304\305A\"\2030 \306\307A\"\306\310A\"\311	\"\211\203& \211A\262\312\313#\266\203\2021 \314!\207" [epg-last-status epg-user-id-alist y-or-n-p "USERID_HINT" string-match "\\`\\([^ ]+\\) \\(.*\\)" match-string 1 2 assoc format "Untrusted key %s %s.  Use anyway? " "Use untrusted key anyway? "] 10 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-GET_BOOL #[514 "\301\302\303\304\305\306\307\310\"\311\"\312\313%D\314\303\304\315\316\307\310\n!\317\"\320\321%\302EDC\217)\207" [inhibit-quit nil #1=#:err funcall make-byte-code 0 "\302\303\301P!\206	 \304\300\301\"\203 \305\306\300!\307\"\207\305\306\300!\310\"\207" vconcat vector [intern-soft "epg--prompt-GET_BOOL-" epg--prompt-GET_BOOL process-send-string epg-context-process "y\n" "n\n"] 3 "\n\n(fn)" quit 257 "\301\300\302\303\304\300\302\"B#\210\305\306\300!!\207" [epg-context-set-result-for error (quit) epg-context-result-for delete-process epg-context-process] 8 "\n\n(fn IGNORED)"] 12 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-GET_LINE #[514 "\302\"\303\304\305\306\307\310\311\312			#\313\"\314\315%D\316\305\306\317\320\311\312!\321\"\322\323%\304EDC\217)\207" [epg-prompt-alist inhibit-quit assoc nil #1=#:err funcall make-byte-code 0 "\303\304\300!\305\302\203 \302A\202 \301\306P!\307P\"\207" vconcat vector [process-send-string epg-context-process read-string ": " "\n"] 5 "\n\n(fn)" quit 257 "\301\300\302\303\304\300\302\"B#\210\305\306\300!!\207" [epg-context-set-result-for error (quit) epg-context-result-for delete-process epg-context-process] 8 "\n\n(fn IGNORED)"] 13 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-*SIG #[771 "\301\302\"\203U \303\304\"\303\305\"C\306\"\307\310\311\"\312\n\310\"B#\210\313\314\315\316\317\320\321\f	\"\322\"\323\324%D\325\314\326\313EDC\217\210\211\203L \211@\241\202T @BB\211\207\307\310\311!\312\310\"B#\207" [epg-user-id-alist string-match "\\`\\([^ ]+\\) \\(.*\\)" match-string 1 2 assoc epg-context-set-result-for verify epg-make-signature epg-context-result-for #1=#:err funcall make-byte-code 0 "\302\300!\303=\203 \301\304\301@!\240\207\301\305\306\301@!\307\"\240\207" vconcat vector [epg-context-protocol CMS epg-dn-from-string epg--decode-coding-string epg--decode-percent-escape utf-8] 4 "\n\n(fn)" error #[257 "\300\207" [nil] 2 "\n\n(fn IGNORED)"]] 15 "\n\n(fn CONTEXT STATUS STRING)"])
(defalias 'epg--status-GOODSIG #[514 "\300\301#\207" [epg--status-*SIG good] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-EXPSIG #[514 "\300\301#\207" [epg--status-*SIG expired] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-EXPKEYSIG #[514 "\300\301#\207" [epg--status-*SIG expired-key] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-REVKEYSIG #[514 "\300\301#\207" [epg--status-*SIG revoked-key] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-BADSIG #[514 "\300\301#\207" [epg--status-*SIG bad] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NO_PUBKEY #[514 "\300!\301=\203& \302\301\"@\211\205% \303!\304=\205% \305!\232\205% \306\307\"\207\310\304\307B\302\304\"B#\207" [epg-context-operation verify epg-context-result-for epg-signature-status error epg-signature-key-id epg-signature-set-status no-pubkey epg-context-set-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NO_SECKEY #[514 "\300\301\302B\303\301\"B#\207" [epg-context-set-result-for error no-seckey epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--time-from-seconds #[257 "\300\301P!\302\303\245!\302\304\303\"!B\207" [string-to-number ".0" floor 65536 mod] 7 "\n\n(fn SECONDS)"])
(defalias 'epg--status-ERRSIG #[514 "\300\301\"\205L \302\303!\304\305\306\305\"B#\210\307\310\311\"\"\210\312\313\310\314\"!\"\210\315\313\310\316\"!\"\210\317\313\310\320\"\321\"\"\210\322\323\310\324\"!\"\262\207" [string-match "\\`\\([^ ]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9A-Fa-f][0-9A-Fa-f]\\) \\([^ ]+\\) \\([0-9]+\\)" epg-make-signature error epg-context-set-result-for verify epg-context-result-for epg-signature-set-key-id match-string 1 epg-signature-set-pubkey-algorithm string-to-number 2 epg-signature-set-digest-algorithm 3 epg-signature-set-class 4 16 epg-signature-set-creation-time epg--time-from-seconds 5] 10 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-VALIDSIG #[514 "\300\301\"@\211\205k \302!\303=\205k \304\305\"\205k \306\307\310\"\"\210\311\312\307\313\"!\"\210\307\314\"\315\232\204? \316\312\307\314\"!\"\210\317\320\307\321\"!\"\210\322\320\307\323\"!\"\210\324\320\307\325\"!\"\210\326\320\307\327\"\330\"\"\207" [epg-context-result-for verify epg-signature-status good string-match "\\`\\([^ ]+\\) [^ ]+ \\([^ ]+\\) \\([^ ]+\\) \\([0-9]+\\) [^ ]+ \\([0-9]+\\) \\([0-9]+\\) \\([0-9A-Fa-f][0-9A-Fa-f]\\) \\(.*\\)" epg-signature-set-fingerprint match-string 1 epg-signature-set-creation-time epg--time-from-seconds 2 3 "0" epg-signature-set-expiration-time epg-signature-set-version string-to-number 4 epg-signature-set-pubkey-algorithm 5 epg-signature-set-digest-algorithm 6 epg-signature-set-class 7 16] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-TRUST_UNDEFINED #[514 "\300\301\"@\211\205 \302!\303=\205 \304\305\"\207" [epg-context-result-for verify epg-signature-status good epg-signature-set-validity undefined] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-TRUST_NEVER #[514 "\300\301\"@\211\205 \302!\303=\205 \304\305\"\207" [epg-context-result-for verify epg-signature-status good epg-signature-set-validity never] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-TRUST_MARGINAL #[514 "\300\301\"@\211\205 \302!\303=\205 \304\303\"\207" [epg-context-result-for verify epg-signature-status marginal epg-signature-set-validity] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-TRUST_FULLY #[514 "\300\301\"@\211\205 \302!\303=\205 \304\305\"\207" [epg-context-result-for verify epg-signature-status good epg-signature-set-validity full] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-TRUST_ULTIMATE #[514 "\300\301\"@\211\205 \302!\303=\205 \304\305\"\207" [epg-context-result-for verify epg-signature-status good epg-signature-set-validity ultimate] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NOTATION_NAME #[514 "\300\301\"@\211\205 \302\303\304\305\304$\306!B\"\207" [epg-context-result-for verify epg-signature-set-notations epg-make-sig-notation nil t epg-sig-notations] 10 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NOTATION_DATA #[514 "\300\301\"@\302\205 \303!@\211\262\205 \304\"\207" [epg-context-result-for verify nil epg-sig-notations epg-sig-notation-set-value] 7 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-POLICY_URL #[514 "\300\301\"@\211\205 \302\303\304\305\304$\306!B\"\207" [epg-context-result-for verify epg-signature-set-notations epg-make-sig-notation nil t epg-sig-notations] 10 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-PROGRESS #[514 "\300!\205/ \301\302\"\205/ \300!@\303\304\"\303\305\"\306\303\307\"!\306\303\310\"!\300!A&\207" [epg-context-progress-callback string-match "\\`\\([^ ]+\\) \\([^ ]\\) \\([0-9]+\\) \\([0-9]+\\)" match-string 1 2 string-to-number 3 4] 11 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-ENC_TO #[514 "\300\301\"\205$ \302\303\304\305\"\306\304\307\"!\306\304\310\"!E\311\303\"B#\207" [string-match "\\`\\([0-9A-Za-z]+\\) \\([0-9]+\\) \\([0-9]+\\)" epg-context-set-result-for encrypted-to match-string 1 string-to-number 2 3 epg-context-result-for] 11 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-DECRYPTION_FAILED #[514 "\300\301\302#\207" [epg-context-set-result-for decryption-failed t] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-DECRYPTION_OKAY #[514 "\300\301\302#\207" [epg-context-set-result-for decryption-okay t] 6 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NODATA #[514 "\300\301\302\303!B\304\301\"B#\207" [epg-context-set-result-for error no-data string-to-number epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-UNEXPECTED #[514 "\300\301\302\303!B\304\301\"B#\207" [epg-context-set-result-for error unexpected string-to-number epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-KEYEXPIRED #[514 "\300\301\302\303\304!BD\305\301\"B#\207" [epg-context-set-result-for key key-expired expiration-time epg--time-from-seconds epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-KEYREVOKED #[514 "\300\301\302\303\301\"B#\207" [epg-context-set-result-for key (key-revoked) epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-BADARMOR #[514 "\300\301\302\303\301\"B#\207" [epg-context-set-result-for error (bad-armor) epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-INV_RECP #[514 "\300\301\"\205# \302\303\304\305\306\307\310\"!B\311\307\312\"BE\313\303\"B#\207" [string-match "\\`\\([0-9]+\\) \\(.*\\)" epg-context-set-result-for error invalid-recipient reason string-to-number match-string 1 requested 2 epg-context-result-for] 11 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-INV_SGNR #[514 "\300\301\"\205# \302\303\304\305\306\307\310\"!B\311\307\312\"BE\313\303\"B#\207" [string-match "\\`\\([0-9]+\\) \\(.*\\)" epg-context-set-result-for error invalid-signer reason string-to-number match-string 1 requested 2 epg-context-result-for] 11 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NO_RECP #[514 "\300\301\302\303\301\"B#\207" [epg-context-set-result-for error (no-recipients) epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-NO_SGNR #[514 "\300\301\302\303\301\"B#\207" [epg-context-set-result-for error (no-signers) epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-DELETE_PROBLEM #[514 "\300\301\"\205 \302\303\304\305\306\307\"!B\310\303\"B#\207" [string-match "\\`\\([0-9]+\\)" epg-context-set-result-for error delete-problem string-to-number match-string 1 epg-context-result-for] 10 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-SIG_CREATED #[514 "\301\302\"\205A \303\304\305\306\307\"\310H\236A\311\306\312\"!\311\306\313	\"!\311\306\314\n\"\315\"\316\306\317\"!	\310\225\320O&\321\304\"B#\207" [epg-new-signature-type-alist string-match "\\`\\([DCS]\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9A-Fa-F][0-9A-Fa-F]\\) \\(.*\\) " epg-context-set-result-for sign epg-make-new-signature match-string 1 0 string-to-number 2 3 4 16 epg--time-from-seconds 5 nil epg-context-result-for] 14 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-KEY_CREATED #[514 "\300\301\"\205\" \302\303\304\305\306\307\"!B\310\306\311\"BD\312\303\"B#\207" [string-match "\\`\\([BPS]\\) \\([^ ]+\\)" epg-context-set-result-for generate-key type string-to-char match-string 1 fingerprint 2 epg-context-result-for] 10 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-KEY_NOT_CREATED #[514 "\300\301\302\303\301\"B#\207" [epg-context-set-result-for error (key-not-created) epg-context-result-for] 9 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-IMPORTED #[514 "\301\302\"\205B \303\304\"\303\305\"C\306\"\307\310\311\312\313\314\315!\316\"\317\320%D\321\310\322\307EDC\217\210\211\2038 \211@\241\202@ @BB\211\266\203\207" [epg-user-id-alist string-match "\\`\\([^ ]+\\) \\(.*\\)" match-string 1 2 assoc #1=#:err funcall make-byte-code 0 "\300\301\302\300@!\303\"\240\207" vconcat vector [epg--decode-coding-string epg--decode-percent-escape utf-8] 4 "\n\n(fn)" error #[257 "\300\207" [nil] 2 "\n\n(fn IGNORED)"]] 13 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-IMPORT_OK #[514 "\300\301\"\205O \302\303\304\"!\305\306\307\310\224\205 \303\311\"\312\313\304\"\314U?\313\310\"\314U?\313	\315\"\314U?\313\n\316\"\314U?\313\317\"\314U?&\320\306\"B#\262\207" [string-match "\\`\\([0-9]+\\)\\( \\(.+\\)\\)?" string-to-number match-string 1 epg-context-set-result-for import-status epg-make-import-status 2 3 nil logand 0 4 8 16 epg-context-result-for] 16 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-IMPORT_PROBLEM #[514 "\300\301\"\205$ \302\303\304\305\224\205 \306\307\"\310\306\311\"!\"\312\303\"B#\207" [string-match "\\`\\([0-9]+\\)\\( \\(.+\\)\\)?" epg-context-set-result-for import-status epg-make-import-status 2 match-string 3 string-to-number 1 epg-context-result-for] 11 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg--status-IMPORT_RES #[514 "\300\301\"\205t \302\303\304\305\306\307\"!\305\306\310\"!\305\306\311	\"!\305\306\312\n\"!\305\306\313\"!\305\306\314\f\"!\305\306\315\"!\305\306\316\"!\305\306\317\"!\305\306\320\"!\305\306\321\"!\305\306\322\"!\305\306\323\"!\324\325\"&#\210\302\325\326#\207" [string-match "\\`\\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\) \\([0-9]+\\)" epg-context-set-result-for import epg-make-import-result string-to-number match-string 1 2 3 4 5 6 7 8 9 10 11 12 13 epg-context-result-for import-status nil] 22 "\n\n(fn CONTEXT STRING)"])
(defalias 'epg-passphrase-callback-function #[771 "\301=\203 \302\303\304!\305=\"\207\302\306=\203 \307\2021 \310\"\211\203+ \311\312A#\202/ \311\313\"\262!\207" [epg-user-id-alist SYM read-passwd "Passphrase for symmetric encryption: " epg-context-operation encrypt PIN "Passphrase for PIN: " assoc format "Passphrase for %s %s: " "Passphrase for %s: "] 9 "\n\n(fn CONTEXT KEY-ID HANDBACK)"])
(make-obsolete 'epg-passphrase-callback-function 'epa-passphrase-callback-function "23.1")
(defalias 'epg--list-keys-1 #[771 "\304\205 \305D\306\307!\310=?\205 \311#\312>\203 \313\202* \314>\203) \315\202* \316\317\320\211\211\211\320\262\203] <\204D C\262	\203f \304@D\"\262A\262	\202D \304C\"\262\321\322!r\211q\210\323\324\325\326\327\330!\331\"\332\333%DC\216\334\335\307!\310=\203\215 \n\202\216 \320\336\320D\320&\210eb\210\337\340\320\336#\203\326 \341\342\320\"B\262\343\325!\262\325\262\325\262\344\345#=\203\233 \325\225\262@\343\346\"I\210T\262\202\266 \237*\262)\207" [epg-gpg-home-directory coding-system-for-read epg-gpgsm-program epg-gpg-program append "--homedir" ("--with-colons" "--no-greeting" "--batch" "--with-fingerprint" "--with-fingerprint") epg-context-protocol CMS ("--fixed-list-mode") (t secret) "--list-secret-keys" (nil public) "--list-keys" "--list-sigs" binary nil generate-new-buffer " *temp*" funcall make-byte-code 0 "\301\300!\205	 \302\300!\207" vconcat vector [buffer-name kill-buffer] 2 "\n\n(fn)" apply call-process t re-search-forward "^[a-z][a-z][a-z]:.*" make-vector 15 match-string string-match "\\([^:]+\\)?:" 1] 18 "\n\n(fn CONTEXT NAME MODE)"])
(defalias 'epg--make-sub-key-1 #[257 "\301\302H\205 \303\302H!\236A\304\305\306\307\310H\"\"\311H\312\235\313\314H!\313\315H!\316H\317\320H!\321H\205@ \317	\321H!&\207" [epg-key-validity-alist epg-make-sub-key 1 string-to-char delq nil mapcar #[257 "\211\236A\207" [epg-key-capablity-alist] 3 "\n\n(fn CHAR)"] 11 0 ("sec" "ssb") string-to-number 3 2 4 epg--time-from-seconds 5 6] 12 "\n\n(fn LINE)"])
#@358 Return a list of epg-key objects matched with NAME.
If MODE is nil or 'public, only public keyring should be searched.
If MODE is t or 'secret, only secret keyring should be searched.
Otherwise, only public keyring should be searched and the key
signatures should be included.
NAME is either a string or a list of strings.

(fn CONTEXT &optional NAME MODE)
(defalias 'epg-list-keys #[769 "\301#C\302\211\211\211\211\211C@\203\270@@\303H\304\235\203X @@\303H\305\235\262\306@@\307H\205= \310@@\307H!\236A!B\262\311@\312	@@!\313	@!B\"\210\202\256@@\303H\314\235\203x \311@\312	@@!\313	@!B\"\210\202\256@@\303H\315\232\203&\211\316@@\317H!\240\210\303\262\320\321@#\203\254 \211\322\323\324\211@$\240\210\303\225T\262\202\221 \325\326\327\303\330\331\332!\333\"\334\335%D\336\326\327\337\340\331\332\n\"\341\"\342\343%\325EDC\217\210\344@\345	@@\346H\205\354 \310\n@@\346H!\236A\203\347\326\327\303\350\331\332!\351\"\352\335%D\336\326\327\337\353\331\332!\354\"\352\343%\347EDC\217\202@\"\355	@!B\"\210\202\256@@\303H\356\232\203C\357\313@!@@@\317H\"\210\202\256@@\303H\360\232\203\256\361\355@!@\362	@@\346H\205j\310\n@@\346H!\236A\363@@\364H!@@\342H\365@@\366H!\365@@\334H!@@\317H\363@@\367H\370\"@@\367H\352H\371=&\372\355\n@!@!B\"\210\211@A\240\210\202 \237\262\262\203\366\311@\313@!\237\"\210\344@\355@!\237\"\262\203\357\361@\372@!\237\"\210A\262\202\332A\262\202\277\207" [epg-key-validity-alist epg--list-keys-1 nil 0 ("pub" "sec" "crt" "crs") ("crt" "crs") epg-make-key 8 string-to-char epg-key-set-sub-key-list epg--make-sub-key-1 epg-key-sub-key-list ("sub" "ssb") "uid" copy-sequence 9 string-match "\"" replace-match "\\\"" t #1=#:err funcall make-byte-code "\300\301\302\303\300@\303Q!@\304\"\240\207" vconcat vector [epg--decode-coding-string read-from-string "\"" utf-8] 6 "\n\n(fn)" error 257 "\301\300@@\302H\240\207" [9] 4 "\n\n(fn IGNORED)" epg-key-set-user-id-list epg-make-user-id 1 #2=#:err "\301\300@!\207" [epg-dn-from-string] 2 "\300@\207" [] epg-key-user-id-list "fpr" epg-sub-key-set-fingerprint "sig" epg-user-id-set-signature-list epg-make-key-signature string-to-number 3 epg--time-from-seconds 5 10 16 120 epg-user-id-signature-list] 24 (#$ . 62181)])
(byte-code "\300\301!\203 \302\303\301\"\210\202 \302\303\304\"\210\300\207" [fboundp make-temp-file defalias epg--make-temp-file #[257 "\211C\301 \302C\302C\303@\"\240\210\304\305\306\307\310\311#\312\"\313\314%DC\216\302C\315\316!\210\317\304\305\306\320\310\311\n\"\321\"\322\314%D\323\304\324\317EDC\217\204+ \325@\326P!\240\210\327\330\302@\302\331%\210\332\304\305\306\333\310\311		#\334\"\335\314%D\323\304\336\332EDC\217\204Z \211@\262)\266\203\207" [temporary-file-directory default-file-modes nil expand-file-name funcall make-byte-code 0 "\303\300!\210\302@\203 \304\302@!\203 \305\302@!\210\301@\205% \306\301@!\205% \307\301@!\207" vconcat vector [set-default-file-modes file-exists-p delete-file file-directory-p delete-directory] 2 "\n\n(fn)" set-default-file-modes 448 #:err "\301\302\303\300@!\304P!\240\210\305\301@!\207" [make-temp-name file-name-directory "DIR" make-directory] 4 file-already-exists #[257 "\300\207" [t] 2 "\n\n(fn IGNORED)"] make-temp-name "/EMU" write-region "" silent #:err "\302\303\300@!\240\210\304\301@\302@\"\207" [make-temp-name add-name-to-file] 3 #[257 "\300\207" [t] 2 "\n\n(fn IGNORED)"]] 16 "Create a temporary file.\nThe returned file name (created by appending some random characters at the end\nof PREFIX, and expanding against `temporary-file-directory' if necessary),\nis guaranteed to point to a newly created empty file.\nYou can then use `write-region' to write new data into the file.\n\n(fn PREFIX)"]] 3)
(defalias 'epg--args-from-sig-notations #[257 "\300\301\302\303\"\"\207" [apply nconc mapcar #[257 "\300!\203 \301!\204 \302\303!\210\300!\2033 \304\305!\203) \306\300!\307\310!R\2021 \300!\307\310!QD\207\311\305!\203B \306\310!P\202E \310!D\207" [epg-sig-notation-name epg-sig-notation-human-readable error "Unreadable" "--sig-notation" epg-sig-notation-critical "!" "=" epg-sig-notation-value "--sig-policy-url"] 7 "\n\n(fn NOTATION)"]] 6 "\n\n(fn NOTATIONS)"])
(defalias 'epg-cancel #[257 "\301\302\303!!!\203 r\302\303!!q\210\304\305\306\307\305\"B#\210)\310\303!!\311=\205- \312\303!!\207" [epg-context buffer-live-p process-buffer epg-context-process epg-context-set-result-for error (quit) epg-context-result-for process-status run delete-process] 8 "\n\n(fn CONTEXT)"])
#@388 Initiate a decrypt operation on CIPHER.
CIPHER must be a file data object.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-decrypt-file' or `epg-decrypt-string' instead.

(fn CONTEXT CIPHER)
(defalias 'epg-start-decrypt #[514 "\300!\204\n \301\302!\210\303\304\"\210\305\306\"\210\307\310\311\300!E\"\210\312!\313=?\205+ \314\315\"\207" [epg-data-file error "Not a file" epg-context-set-operation decrypt epg-context-set-result nil epg--start "--decrypt" "--" epg-context-protocol CMS epg-wait-for-status ("BEGIN_DECRYPTION")] 8 (#$ . 66784)])
(defalias 'epg--check-error-for-decrypt #[257 "\300\301\"\300\302\"\203 \303\304\305\306!D\"\210\300\307\"?\205$ \303\304\310\306!D\"\207" [epg-context-result-for error decryption-failed signal epg-error "Decryption failed" epg-errors-to-string decryption-okay "Can't decrypt"] 7 "\n\n(fn CONTEXT)"])
#@140 Decrypt a file CIPHER and store the result to a file PLAIN.
If PLAIN is nil, it returns the result as a string.

(fn CONTEXT CIPHER PLAIN)
(defalias 'epg-decrypt-file #[771 "\300\301\302\303\304\305\"\306\"\307\310%DC\216\211\203 \311\"\210\202& \311\312\313!\"\210\314\315!\"\210\316!\210\317!\210\211?\205= \320!)\207" [funcall make-byte-code 0 "\301\204 \302\300!\210\303\300!\207" vconcat vector [epg-delete-output-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file epg--make-temp-file "epg-output" epg-start-decrypt epg-make-data-from-file epg-wait-for-completion epg--check-error-for-decrypt epg-read-output] 11 (#$ . 67845)])
#@73 Decrypt a string CIPHER and return the plain text.

(fn CONTEXT CIPHER)
(defalias 'epg-decrypt-string #[514 "\301\302!\303\304\305\306\307\310\311\"\312\"\313\314%DC\216\315\316\316\317%\210\320\301\321!\"\210\322\323!\"\210\324!\210\325!\210\326!*\207" [coding-system-for-write epg--make-temp-file "epg-input" binary funcall make-byte-code 0 "\302\300!\210\303\301!\203 \304\301!\210\305\300!\207" vconcat vector [epg-delete-output-file file-exists-p delete-file epg-reset] 2 "\n\n(fn)" write-region nil quiet epg-context-set-output-file "epg-output" epg-start-decrypt epg-make-data-from-file epg-wait-for-completion epg--check-error-for-decrypt epg-read-output] 11 (#$ . 68504)])
#@584 Initiate a verify operation on SIGNATURE.
SIGNATURE and SIGNED-TEXT are a data object if they are specified.

For a detached signature, both SIGNATURE and SIGNED-TEXT should be set.
For a normal or a cleartext signature, SIGNED-TEXT should be nil.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-verify-file' or `epg-verify-string' instead.

(fn CONTEXT SIGNATURE &optional SIGNED-TEXT)
(defalias 'epg-start-verify #[770 "\300\301\"\210\302\303\"\210\211\203R \304!\203# \305\306\307\304!\304!F\"\207\305\306\307\304!\310F\"\210\311\312!!\313=\203B \314\312!\315!\"\210\311\312!!\313=\205Q \316\312!!\207\304!\203s \305\317!\320=\203l \306\307\304!E\202q \307\304!D\"\207\305\317!\320=\203\201 \321\202\202 \322\"\210\311\312!!\313=\203\227 \314\312!\315!\"\210\311\312!!\313=\205\246 \316\312!!\207" [epg-context-set-operation verify epg-context-set-result nil epg-data-file epg--start "--verify" "--" "-" process-status epg-context-process run process-send-string epg-data-string process-send-eof epg-context-protocol CMS ("--verify" "-") ("-")] 10 (#$ . 69207)])
#@395 Verify a file SIGNATURE.
SIGNED-TEXT and PLAIN are also a file if they are specified.

For a detached signature, both SIGNATURE and SIGNED-TEXT should be
string.  For a normal or a cleartext signature, SIGNED-TEXT should be
nil.  In the latter case, if PLAIN is specified, the plaintext is
stored into the file after successful verification.

(fn CONTEXT SIGNATURE &optional SIGNED-TEXT PLAIN)
(defalias 'epg-verify-file #[1026 "\300\301\302\303\304\305	\"\306\"\307\310%DC\216\211\203 \311\"\210\202& \311\312\313!\"\210\2037 \314\315!\315!#\210\202> \314\315!\"\210\316!\210\211?\205J \317!)\207" [funcall make-byte-code 0 "\301\204 \302\300!\210\303\300!\207" vconcat vector [epg-delete-output-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file epg--make-temp-file "epg-output" epg-start-verify epg-make-data-from-file epg-wait-for-completion epg-read-output] 12 (#$ . 70505)])
#@349 Verify a string SIGNATURE.
SIGNED-TEXT is a string if it is specified.

For a detached signature, both SIGNATURE and SIGNED-TEXT should be
string.  For a normal or a cleartext signature, SIGNED-TEXT should be
nil.  In the latter case, this function returns the plaintext after
successful verification.

(fn CONTEXT SIGNATURE &optional SIGNED-TEXT)
(defalias 'epg-verify-string #[770 "\301\302C\302\262\303\304\305\306\307\310\n\"\311\"\312\313%DC\216\314\315\316!\"\210\203D \211\315\317!\240\210\320\302@\302\321%\210\322\323@!\324!#\210\202L \322\324!\"\210\325!\210\326!*\207" [coding-system-for-write binary nil funcall make-byte-code 0 "\302\300!\210\301@\203 \303\301@!\203 \304\301@!\210\305\300!\207" vconcat vector [epg-delete-output-file file-exists-p delete-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file epg--make-temp-file "epg-output" "epg-signature" write-region quiet epg-start-verify epg-make-data-from-file epg-make-data-from-string epg-wait-for-completion epg-read-output] 13 (#$ . 71415)])
#@559 Initiate a sign operation on PLAIN.
PLAIN is a data object.

If optional 3rd argument MODE is t or 'detached, it makes a detached signature.
If it is nil or 'normal, it makes a normal signature.
Otherwise, it makes a cleartext signature.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-sign-file' or `epg-sign-string' instead.

(fn CONTEXT PLAIN &optional MODE)
(defalias 'epg-start-sign #[770 "\300\301\"\210\302\303\"\210\211\304>\204 \305\303\"\210\306\303\"\210\307\310\311>\203' \312\2022 \313>\2031 \314\2022 \315C\316\317\320\321\322!\"\"\323\324	!!\325!\205P \326\325	!D$\"\210\327!\330=\204` \331\332\"\210\333!\205\210 \334\335!!\336=\203y \337\335!\333!\"\210\334\335!!\336=\205\210 \340\335!!\207" [epg-context-set-operation sign epg-context-set-result nil (t detached nil normal) epg-context-set-armor epg-context-set-textmode epg--start append (t detached) "--detach-sign" (nil normal) "--sign" "--clearsign" apply nconc mapcar #[257 "\300\301\302!@!D\207" ["-u" epg-sub-key-id epg-key-sub-key-list] 5 "\n\n(fn SIGNER)"] epg-context-signers epg--args-from-sig-notations epg-context-sig-notations epg-data-file "--" epg-context-protocol CMS epg-wait-for-status ("BEGIN_SIGNING") epg-data-string process-status epg-context-process run process-send-string process-send-eof] 13 (#$ . 72463)])
#@339 Sign a file PLAIN and store the result to a file SIGNATURE.
If SIGNATURE is nil, it returns the result as a string.
If optional 3rd argument MODE is t or 'detached, it makes a detached signature.
If it is nil or 'normal, it makes a normal signature.
Otherwise, it makes a cleartext signature.

(fn CONTEXT PLAIN SIGNATURE &optional MODE)
(defalias 'epg-sign-file #[1027 "\300\301\302\303\304\305	\"\306\"\307\310%DC\216\203 \311\"\210\202& \311\312\313!\"\210\314\315!#\210\316!\210\317\320\"\204G \317\321\"\322\323\324\325!D\"\266?\205O \326!)\207" [funcall make-byte-code 0 "\301\204 \302\300!\210\303\300!\207" vconcat vector [epg-delete-output-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file epg--make-temp-file "epg-output" epg-start-sign epg-make-data-from-file epg-wait-for-completion epg-context-result-for sign error signal epg-error "Sign failed" epg-errors-to-string epg-read-output] 12 (#$ . 73992)])
#@266 Sign a string PLAIN and return the output as string.
If optional 3rd argument MODE is t or 'detached, it makes a detached signature.
If it is nil or 'normal, it makes a normal signature.
Otherwise, it makes a cleartext signature.

(fn CONTEXT PLAIN &optional MODE)
(defalias 'epg-sign-string #[770 "\301!\302=\206 \303\304\305D\306\304\307\303EDC\217?\205 \310\311!\312\304\313\314\315\316\317	\"\320\"\321\322%DC\216\323\310\324!\"\210\211\203C \325\326\326\327%\210\330\203O \331!\202R \332!#\210\333!\210\334\335\"\204u \334\306\"\203u \334\306\"\336\337\340\341!D\"\266\342!*\207" [coding-system-for-write epg-context-protocol CMS #1=#:err funcall #[0 "\300\301 !\210\302\207" [epg-check-configuration epg-configuration t] 2 "\n\n(fn)"] error #[257 "\300\207" [nil] 2 "\n\n(fn IGNORED)"] epg--make-temp-file "epg-input" binary make-byte-code 0 "\302\300!\210\301\203\f \303\301!\210\304\300!\207" vconcat vector [epg-delete-output-file delete-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file "epg-output" write-region nil quiet epg-start-sign epg-make-data-from-file epg-make-data-from-string epg-wait-for-completion epg-context-result-for sign signal epg-error "Sign failed" epg-errors-to-string epg-read-output] 12 (#$ . 74941)])
#@471 Initiate an encrypt operation on PLAIN.
PLAIN is a data object.
If RECIPIENTS is nil, it performs symmetric encryption.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-encrypt-file' or `epg-encrypt-string' instead.

(fn CONTEXT PLAIN RECIPIENTS &optional SIGN ALWAYS-TRUST)
(defalias 'epg-start-encrypt #[1283 "\300\301\"\210\302\303\"\210\304\305\205 \306\203 \307\202 \310\205\" \311\2051 \312\313\314\315\316!\"\"\205< \317\320!!\312\313\314\321\"\"\322!\205Q \323\322!D&\"\210\324!\325=\204n \203i \326\327\"\210\202n \326\330\"\210\331!\205\233 \332\333!!\334=\203\212 \335\333!\331!\"\210\332\333!!\334=\205\233 \336\333!!\207" [epg-context-set-operation encrypt epg-context-set-result nil epg--start append ("--always-trust") ("--encrypt") ("--symmetric") ("--sign") apply nconc mapcar #[257 "\300\301\302!@!D\207" ["-u" epg-sub-key-id epg-key-sub-key-list] 5 "\n\n(fn SIGNER)"] epg-context-signers epg--args-from-sig-notations epg-context-sig-notations #[257 "\300\301\302!@!D\207" ["-r" epg-sub-key-id epg-key-sub-key-list] 5 "\n\n(fn RECIPIENT)"] epg-data-file "--" epg-context-protocol CMS epg-wait-for-status ("BEGIN_SIGNING") ("BEGIN_ENCRYPTION") epg-data-string process-status epg-context-process run process-send-string process-send-eof] 18 (#$ . 76214)])
#@236 Encrypt a file PLAIN and store the result to a file CIPHER.
If CIPHER is nil, it returns the result as a string.
If RECIPIENTS is nil, it performs symmetric encryption.

(fn CONTEXT PLAIN RECIPIENTS CIPHER &optional SIGN ALWAYS-TRUST)
(defalias 'epg-encrypt-file #[1540 "\300\301\302\303\304\305	\"\306\"\307\310%DC\216\203  \311\"\210\202( \311\312\313!\"\210\314\315!%\210\316!\210\317\320\"\203T \317\321\"\204T \322\323\324\325!D\"\210\211\203a \322\323\326\325!D\"\210\210?\205k \327!)\207" [funcall make-byte-code 0 "\301\204 \302\300!\210\303\300!\207" vconcat vector [epg-delete-output-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file epg--make-temp-file "epg-output" epg-start-encrypt epg-make-data-from-file epg-wait-for-completion epg-context-result-for error sign signal epg-error "Sign failed" epg-errors-to-string "Encrypt failed" epg-read-output] 14 (#$ . 77731)])
#@140 Encrypt a string PLAIN.
If RECIPIENTS is nil, it performs symmetric encryption.

(fn CONTEXT PLAIN RECIPIENTS &optional SIGN ALWAYS-TRUST)
(defalias 'epg-encrypt-string #[1283 "?\206 \301!\302=\206 \303\304\305D\306\304\307\303EDC\217?\205  \310\311!\312\304\313\314\315\316\317\"\320\"\321\322%DC\216\323\310\324!\"\210\211\203I \325\326\326\327%\210\330\203V \331!\202Z \332!%\210\333!\210\334\306\"\203\201 \334\335\"\204\201 \336\337\340\341!D\"\210\211\203\216 \336\337\342\341!D\"\210\210\343!*\207" [coding-system-for-write epg-context-protocol CMS #1=#:err funcall #[0 "\300\301 !\210\302\207" [epg-check-configuration epg-configuration t] 2 "\n\n(fn)"] error #[257 "\300\207" [nil] 2 "\n\n(fn IGNORED)"] epg--make-temp-file "epg-input" binary make-byte-code 0 "\302\300!\210\301\203\f \303\301!\210\304\300!\207" vconcat vector [epg-delete-output-file delete-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file "epg-output" write-region nil quiet epg-start-encrypt epg-make-data-from-file epg-make-data-from-string epg-wait-for-completion epg-context-result-for sign signal epg-error "Sign failed" epg-errors-to-string "Encrypt failed" epg-read-output] 14 (#$ . 78656)])
#@360 Initiate an export keys operation.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-export-keys-to-file' or `epg-export-keys-to-string' instead.

(fn CONTEXT KEYS)
(defalias 'epg-start-export-keys #[514 "\300\301\"\210\302\303\"\210\304\305\306\307\"B\"\207" [epg-context-set-operation export-keys epg-context-set-result nil epg--start "--export" mapcar #[257 "\300\301!@!\207" [epg-sub-key-id epg-key-sub-key-list] 4 "\n\n(fn KEY)"]] 8 (#$ . 79884)])
#@46 Extract public KEYS.

(fn CONTEXT KEYS FILE)
(defalias 'epg-export-keys-to-file #[771 "\300\301\302\303\304\305\"\306\"\307\310%DC\216\211\203 \311\"\210\202& \311\312\313!\"\210\314\"\210\315!\210\316\317\"\211\203@ \320\321\322\323!D\"\210\210\211?\205I \324!)\207" [funcall make-byte-code 0 "\301\204 \302\300!\210\303\300!\207" vconcat vector [epg-delete-output-file epg-reset] 2 "\n\n(fn)" epg-context-set-output-file epg--make-temp-file "epg-output" epg-start-export-keys epg-wait-for-completion epg-context-result-for error signal epg-error "Export keys failed" epg-errors-to-string epg-read-output] 11 (#$ . 80542)])
#@69 Extract public KEYS and return them as a string.

(fn CONTEXT KEYS)
(defalias 'epg-export-keys-to-string #[514 "\300\301#\207" [epg-export-keys-to-file nil] 6 (#$ . 81188)])
#@387 Initiate an import keys operation.
KEYS is a data object.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-import-keys-from-file' or `epg-import-keys-from-string' instead.

(fn CONTEXT KEYS)
(defalias 'epg-start-import-keys #[514 "\300\301\"\210\302\303\"\210\304\305!\203 \306\307\305!E\202 \306C\"\210\310!\205G \311\312!!\313=\2038 \314\312!\310!\"\210\311\312!!\313=\205G \315\312!!\207" [epg-context-set-operation import-keys epg-context-set-result nil epg--start epg-data-file "--import" "--" epg-data-string process-status epg-context-process run process-send-string process-send-eof] 8 (#$ . 81371)])
(defalias 'epg--import-keys-1 #[514 "\300\301\302\303\304\305!\306\"\307\310%DC\216\311\"\210\312!\210\313\314\"\211\205* \315\316\317\320!D\"\262)\207" [funcall make-byte-code 0 "\301\300!\207" vconcat vector [epg-reset] 2 "\n\n(fn)" epg-start-import-keys epg-wait-for-completion epg-context-result-for error signal epg-error "Import keys failed" epg-errors-to-string] 9 "\n\n(fn CONTEXT KEYS)"])
#@47 Add keys from a file KEYS.

(fn CONTEXT KEYS)
(defalias 'epg-import-keys-from-file #[514 "\300\301!\"\207" [epg--import-keys-1 epg-make-data-from-file] 6 (#$ . 82600)])
#@49 Add keys from a string KEYS.

(fn CONTEXT KEYS)
(defalias 'epg-import-keys-from-string #[514 "\300\301!\"\207" [epg--import-keys-1 epg-make-data-from-string] 6 (#$ . 82777)])
#@362 Initiate a receive key operation.
KEY-ID-LIST is a list of key IDs.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-receive-keys' instead.

(fn CONTEXT KEY-ID-LIST)
(defalias 'epg-start-receive-keys #[514 "\300\301\"\210\302\303\"\210\304\305B\"\207" [epg-context-set-operation receive-keys epg-context-set-result nil epg--start "--recv-keys"] 6 (#$ . 82961)])
#@68 Add keys from server.
KEYS is a list of key IDs

(fn CONTEXT KEYS)
(defalias 'epg-receive-keys #[514 "\300\301\302\303\304\305!\306\"\307\310%DC\216\311\"\210\312!\210\313\314\"\211\205* \315\316\317\320!D\"\262)\207" [funcall make-byte-code 0 "\301\300!\207" vconcat vector [epg-reset] 2 "\n\n(fn)" epg-start-receive-keys epg-wait-for-completion epg-context-result-for error signal epg-error "Receive keys failed" epg-errors-to-string] 9 (#$ . 83528)])
(defalias 'epg-import-keys-from-server 'epg-receive-keys)
#@343 Initiate a delete keys operation.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-delete-keys' instead.

(fn CONTEXT KEYS &optional ALLOW-SECRET)
(defalias 'epg-start-delete-keys #[770 "\300\301\"\210\302\303\"\210\304\203 \305\202 \306\307\310\"B\"\207" [epg-context-set-operation delete-keys epg-context-set-result nil epg--start "--delete-secret-key" "--delete-key" mapcar #[257 "\300\301!@!\207" [epg-sub-key-id epg-key-sub-key-list] 4 "\n\n(fn KEY)"]] 9 (#$ . 84055)])
#@74 Delete KEYS from the key ring.

(fn CONTEXT KEYS &optional ALLOW-SECRET)
(defalias 'epg-delete-keys #[770 "\300\301\302\303\304\305!\306\"\307\310%DC\216\311#\210\312!\210\313\314\"\211\205+ \315\316\317\320!D\"\262)\207" [funcall make-byte-code 0 "\301\300!\207" vconcat vector [epg-reset] 2 "\n\n(fn)" epg-start-delete-keys epg-wait-for-completion epg-context-result-for error signal epg-error "Delete keys failed" epg-errors-to-string] 10 (#$ . 84740)])
#@332 Initiate a sign keys operation.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-sign-keys' instead.

(fn CONTEXT KEYS &optional LOCAL)
(defalias 'epg-start-sign-keys #[770 "\300\301\"\210\302\303\"\210\304\203 \305\202 \306\307\310\"B\"\207" [epg-context-set-operation sign-keys epg-context-set-result nil epg--start "--lsign-key" "--sign-key" mapcar #[257 "\300\301!@!\207" [epg-sub-key-id epg-key-sub-key-list] 4 "\n\n(fn KEY)"]] 9 (#$ . 85213)])
(make-obsolete 'epg-start-sign-keys nil "23.1")
#@65 Sign KEYS from the key ring.

(fn CONTEXT KEYS &optional LOCAL)
(defalias 'epg-sign-keys #[770 "\300\301\302\303\304\305!\306\"\307\310%DC\216\311#\210\312!\210\313\314\"\211\205+ \315\316\317\320!D\"\262)\207" [funcall make-byte-code 0 "\301\300!\207" vconcat vector [epg-reset] 2 "\n\n(fn)" epg-start-sign-keys epg-wait-for-completion epg-context-result-for error signal epg-error "Sign keys failed" epg-errors-to-string] 10 (#$ . 85921)])
(make-obsolete 'epg-sign-keys nil "23.1")
#@409 Initiate a key generation.
PARAMETERS specifies parameters for the key.

If you use this function, you will need to wait for the completion of
`epg-gpg-program' by using `epg-wait-for-completion' and call
`epg-reset' to clear a temporary output file.
If you are unsure, use synchronous version of this function
`epg-generate-key-from-file' or `epg-generate-key-from-string' instead.

(fn CONTEXT PARAMETERS)
(defalias 'epg-start-generate-key #[514 "\300\301\"\210\302\303\"\210\304!\203 \305\306\307\310\304!F\"\207\305\311\"\210\312\313!!\314=\2034 \315\313!\316!\"\210\312\313!!\314=\205C \317\313!!\207" [epg-context-set-operation generate-key epg-context-set-result nil epg-data-file epg--start "--batch" "--genkey" "--" ("--batch" "--genkey") process-status epg-context-process run process-send-string epg-data-string process-send-eof] 9 (#$ . 86421)])
#@107 Generate a new key pair.
PARAMETERS is a file which tells how to create the key.

(fn CONTEXT PARAMETERS)
(defalias 'epg-generate-key-from-file #[514 "\300\301\302\303\304\305!\306\"\307\310%DC\216\311\312!\"\210\313!\210\314\315\"\211\205, \316\317\320\321!D\"\262)\207" [funcall make-byte-code 0 "\301\300!\207" vconcat vector [epg-reset] 2 "\n\n(fn)" epg-start-generate-key epg-make-data-from-file epg-wait-for-completion epg-context-result-for error signal epg-error "Generate key failed" epg-errors-to-string] 9 (#$ . 87299)])
#@109 Generate a new key pair.
PARAMETERS is a string which tells how to create the key.

(fn CONTEXT PARAMETERS)
(defalias 'epg-generate-key-from-string #[514 "\300\301\302\303\304\305!\306\"\307\310%DC\216\311\312!\"\210\313!\210\314\315\"\211\205, \316\317\320\321!D\"\262)\207" [funcall make-byte-code 0 "\301\300!\207" vconcat vector [epg-reset] 2 "\n\n(fn)" epg-start-generate-key epg-make-data-from-string epg-wait-for-completion epg-context-result-for error signal epg-error "Generate key failed" epg-errors-to-string] 9 (#$ . 87846)])
(defalias 'epg--decode-percent-escape #[257 "\300\301\302#\2038 \303\224\203 \304\305\306\211$\262\300\225S\262\202 \304\307\310\311\312\"\313\"!\306\211$\262\300\225\303Z\262\202 \207" [0 string-match "%\\(\\(%\\)\\|\\([0-9A-Fa-f][0-9A-Fa-f]\\)\\)" 2 replace-match "%" t string string-to-number match-string 3 16] 8 "\n\n(fn STRING)"])
(defalias 'epg--decode-hexstring #[257 "\300\211\301\302#=\203$ \303\304\305\306\300\"\307\"!\310\211$\262\300\225S\262\202 \207" [0 string-match "[0-9A-Fa-f][0-9A-Fa-f]" replace-match string string-to-number match-string 16 t] 8 "\n\n(fn STRING)"])
(defalias 'epg--decode-quotedstring #[257 "\300\301\302#\203= \303\224\203 \304\305\306\307$\262\300\225S\262\202 \310\224\203 \304\311\312\313\300\"\314\"!\306\211$\262\300\225\303Z\262\202 \207" [0 string-match "\\\\\\(\\([,=+<>#;\\\"]\\)\\|\\([0-9A-Fa-f][0-9A-Fa-f]\\)\\)" 2 replace-match "\\2" t nil 3 string string-to-number match-string 16] 8 "\n\n(fn STRING)"])
#@127 Parse STRING as LADPv3 Distinguished Names (RFC2253).
The return value is an alist mapping from types to values.

(fn STRING)
(defalias 'epg-dn-from-string #[257 "\300G\301\211\211\211W\203 \302\303		#=\203 \300\225\262\302\304		#=\2037 \305\306\"\262\300\225\262\202N \302\307		#=\203N \305\306\"\262\300\225\262\204V \310\311!\210\302\312		#=\203r \300\225\262\313\305\300	\"!\262\202\247 \302\314		#=\203\216 \300\225\262\315\305\306	\"!\262\202\247 \302\316		#=\203\247 \300\225\262\313\305\300	\"!\262\211\203\312 @@;\203\276 B@D\240\210\202\344 B@B\240\210\202\344 @@:\203\327 \211@\237\240\210BB\262\301\262\301\262\302\317		#=\203 \300\225\262\306\224H\320=\262\202 \237\207" [0 nil string-match "[ 	\n]*" "\\([0-9]+\\(\\.[0-9]+\\)*\\)[ 	\n]*=[ 	\n]*" match-string 1 "\\([0-9A-Za-z]+\\)[ 	\n]*=[ 	\n]*" error "Invalid type" "\\([^,=+<>#;\\\"]\\|\\\\.\\)+" epg--decode-quotedstring "#\\([0-9A-Fa-f]+\\)" epg--decode-hexstring "\"\\([^\\\"]\\|\\\\.\\)*\"" "[ 	\n]*\\([,;+]\\)" 43] 12 (#$ . 89393)])
#@137 Convert ALIST returned by `epg-dn-from-string' to a human readable form.
Type names are resolved using `epg-dn-type-alist'.

(fn ALIST)
(defalias 'epg-decode-dn #[257 "\300\301\302#\207" [mapconcat #[257 "\211@;\203! \301@\"\211\203 \302\303AA#\202  \302\303@A#\207\304\305!\306Q\207" [epg-dn-type-alist assoc format "%s=%s" "(" epg-decode-dn ")"] 6 "\n\n(fn RDN)"] ", "] 5 (#$ . 90480)])
(provide 'epg)
