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



(byte-code "\300\301!\210\302\303\304\305\306DD\307\310\311\312\313&\210\302\314\304\305\315DD\316\310\311\312\313&\210\302\317\304\305\320DD\321\310\311\312\313&\210\302\322\304\305\323DD\324\310\311\312\313&\207" [require viper-util custom-declare-variable viper-want-emacs-keys-in-insert funcall function #[0 "\300\207" [t] 1 #1=""] "Set to nil if you want complete Vi compatibility in insert mode.\nComplete compatibility with Vi is not recommended for power use of Viper." :type boolean :group viper viper-want-emacs-keys-in-vi #[0 "\300\207" [t] 1 #1#] "Set to nil if you want complete Vi compatibility in Vi mode.\nFull Vi compatibility is not recommended for power use of Viper." viper-no-multiple-ESC #[0 "\300\207" [t] 1 #1#] "If non-nil, multiple ESC in Vi mode will cause bell to ring.\nThis is set to t on a windowing terminal and to `twice' on a dumb\nterminal (unless the user level is 1, 2, or 5).  On a dumb terminal, this\nenables cursor keys and is generally more convenient, as terminals usually\ndon't have a convenient Meta key.\nSetting it to nil will allow as many multiple ESC, as is allowed by the\nmajor mode in effect." viper-want-ctl-h-help #[0 "\300\207" [nil] 1 #1#] "If non-nil, bind C-h to `help-command'.\nIf nil, C-h gets the usual Vi bindings."] 8)
(defvar viper-vi-intercept-map (define-keymap))
(defvar viper-insert-intercept-map (define-keymap))
(defvar viper-emacs-intercept-map (define-keymap))#@294 Keymap for user-defined local bindings.
Useful for changing bindings such as ZZ in certain major modes.
For instance, in letter-mode, one may want to bind ZZ to
`mh-send-letter'.  In a newsreader such as gnus, tin, or rn, ZZ could be bound
to `save-buffers-kill-emacs' then post article, etc.
(defvar viper-vi-local-user-map (make-sparse-keymap) (#$ . 1524))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local viper-vi-local-user-map put permanent-local t] 4)#@88 Keymap for user-defined global bindings.
These bindings are seen in all Viper buffers.
(defvar viper-vi-global-user-map (define-keymap) (#$ . 2014))#@99 This is the main keymap in effect in Viper's Vi state.
This map is global, shared by all buffers.
(defvar viper-vi-basic-map (define-keymap :full t) (#$ . 2168))#@65 This keymap keeps keyboard macros defined via the :map command.
(defvar viper-vi-kbd-map (define-keymap) (#$ . 2335))#@158 This keymap is in use when the user asks Viper to simulate Vi very closely.
This happens when `viper-expert-level' is 1 or 2.  See `viper-set-expert-level'.
(defvar viper-vi-diehard-map (define-keymap) (#$ . 2459))#@72 Auxiliary map for per-buffer user-defined keybindings in Insert state.
(defvar viper-insert-local-user-map (make-sparse-keymap) (#$ . 2679))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local viper-insert-local-user-map put permanent-local t] 4)#@65 Auxiliary map for global user-defined bindings in Insert state.
(defvar viper-insert-global-user-map (define-keymap) (#$ . 2955))#@31 The basic insert-mode keymap.
(defvar viper-insert-basic-map (define-keymap) (#$ . 3090))#@186 Map used when user wants vi-style keys in insert mode.
Most of the Emacs keys are suppressed.  This map overshadows
`viper-insert-basic-map'.  Not recommended, except for novice users.
(defvar viper-insert-diehard-map (define-keymap :full t) (#$ . 3186))#@56 This keymap keeps VI-style kbd macros for insert mode.
(defvar viper-insert-kbd-map (define-keymap) (#$ . 3446))#@36 Map used in Viper's replace state.
(defvar viper-replace-map (define-keymap) (#$ . 3564))#@64 Auxiliary map for global user-defined bindings in Emacs state.
(defvar viper-emacs-global-user-map (define-keymap) (#$ . 3659))#@55 This keymap keeps Vi-style kbd macros for Emacs mode.
(defvar viper-emacs-kbd-map (define-keymap) (#$ . 3792))#@63 Auxiliary map for local user-defined bindings in Emacs state.
(defvar viper-emacs-local-user-map (make-sparse-keymap) (#$ . 3908))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local viper-emacs-local-user-map put permanent-local t] 4)
(defvar viper-empty-keymap (define-keymap))
(defvar viper-mode-map (define-keymap))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313&	\210\300\314\302\303\315DD\316\306\317\310\311&\207" [custom-declare-variable viper-toggle-key funcall function #[0 "\300\207" [[(control 122)]] 1 #1=""] "The key used to change states from Emacs to Vi and back.\nIn insert mode, this key also functions as Meta." :type key-sequence :group viper :set #[514 "\304\300!\203\n \202 \305\306 \211\203o \211@r\211q\210\304\301!\2033 \307	!\2033 \203- \310	\311#\210\310	\312#\210\304\302!\203O \307\n!\203O \203I \310\n\311#\210\310\n\313#\210\304\303!\203g \307!\203g \310\311#\210\310\314#\210)A\266\202\202 \210\315\"\207" [viper-toggle-key viper-insert-basic-map viper-vi-intercept-map viper-emacs-intercept-map boundp [(control 122)] buffer-list keymapp define-key nil viper-escape-to-vi viper-toggle-key-action viper-change-state-to-vi set-default] 9 "\n\n(fn SYMBOL VALUE)"] viper-quoted-insert-key #[0 "\300\207" [""] 1 #1#] "The key used to quote special characters when inserting them in Insert state." string] 10)#@18 Key used to ESC.
(defconst viper-ESC-key [escape] (#$ . 5309))
(defvar viper-vi-state-modifier-alist nil)
(defvar viper-insert-state-modifier-alist nil)
(defvar viper-emacs-state-modifier-alist nil)
(defvar viper--key-maps nil nil)
(make-variable-buffer-local 'viper--key-maps)
(defvar viper--intercept-key-maps nil nil)
(make-variable-buffer-local 'viper--intercept-key-maps)
(defvar viper-need-new-vi-local-map t nil)
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local viper-need-new-vi-local-map put permanent-local t] 4)
(defvar viper-need-new-insert-local-map t nil)
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local viper-need-new-insert-local-map put permanent-local t] 4)
(defvar viper-need-new-emacs-local-map t nil)
(byte-code "\306\307!\210\310\307\311\312#\210\313\314\315#\210\313\316\317#\210\313\320\317#\210\313\321\322#\210\313\323\317#\210\313\324\317#\210\313\325\317#\210\313\314\317#\210\313\326\317#\210\313\327\317#\210\313\330\317#\210\313\331\317#\210\313\332\317#\210\313\333\317#\210\313\334\317#\210\313\335\317#\210\313\336\337#\210\313\340\317#\210\313\341\317#\210\313\342\317#\210\313\343\317#\210\313\344\317#\210\345\211\346X\203\244 \313\347!\317#\210\211T\262\202\217 \210\313	\350\351#\210\313	\352\353#\210\313	\354\355#\210\313	\n\356#\210\313	\357\360#\210\313	\361\360#\210\313	\362\363#\210\313	\364#\210\313	\365\366#\210\313	\367\370#\210\313\f\354\355#\210\313\f\371\372#\210\313\f\373\372#\210\313\f\357\374#\210\313\f\375\374#\210\313\376\377#\210\313\320\201@ #\210\313\350\201A #\210\313\323\201B #\210\313\324\201C #\210\313\373\201D #\210\313\336\201E #\210\313\341\201F #\210\313\201G \201H #\207" [viper-insert-diehard-map viper-insert-basic-map viper-quoted-insert-key viper-toggle-key viper-replace-map viper-vi-basic-map make-variable-buffer-local viper-need-new-emacs-local-map put permanent-local t define-key "	" viper-insert-tab "" self-insert-command "" "" viper-change-state-to-vi "" "" "" "" "\f" "" "" "" "" "" "" "" viper-erase-line "" "" "" "" "" 32 126 string "" viper-backward-indent "" viper-delete-backward-word "" viper-forward-indent quoted-insert "" viper-del-backward-char-in-insert [backspace] "" viper-alternate-Meta-key viper-escape-to-vi "\360" viper-insert-prev-from-insertion-ring "\356" viper-insert-next-from-insertion-ring "\n" viper-replace-state-carriage-return "" viper-del-backward-char-in-replace [backspace] "" #[0 "\300\301\302\"\207" [viper-ex nil "e#"] 3 nil nil] viper-scroll-screen-back viper-scroll-up viper-scroll-up-one viper-scroll-screen viper-next-line-at-bol viper-scroll-down viper-scroll-down-one "/" viper-toggle-search-style] 5)
(byte-code "\301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\313#\210\301\315\313#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\301\330\331#\210\301\332\333#\210\301\334\335#\210\301\336\337#\210\301\340\341#\210\301\342\343#\210\301\344\345#\210\301\346\347#\210\301\350\351#\210\301\352\351#\210\301\353\351#\210\301\354\351#\210\301\355\351#\210\301\356\351#\210\301\357\351#\210\301\360\351#\210\301\361\351#\210\301\362\363#\210\301\364\365#\210\301\366\313#\210\301\367\313#\210\301\370\313#\210\301\371\372#\210\301\373\374#\210\301\375\376#\210\301\377\201@ #\210\301\201A \201B #\210\301\201C \201D #\210\301\201E \201F #\210\301\201G \201H #\210\301\201I \201J #\210\301\201K \201L #\210\301\201M \201N #\210\301\201O \201P #\210\301\201Q \201R #\210\301\201S \201T #\210\301\201U \201V #\210\301\201W \201X #\210\301\201Y \201Z #\207" [viper-vi-basic-map define-key "" viper-info-on-file "\360" viper-prev-destructive-command "\356" viper-next-destructive-command " " viper-forward-char "!" viper-command-argument "\"" "#" "$" viper-goto-eol "%" viper-paren-match "&" #[0 "\300\301\302\"\207" [viper-ex nil "&"] 3 nil nil] "'" viper-goto-mark-and-skip-white "(" viper-backward-sentence ")" viper-forward-sentence "*" call-last-kbd-macro "+" viper-next-line-at-bol "," viper-repeat-find-opposite "-" viper-previous-line-at-bol "." viper-repeat "/" viper-search-forward "0" viper-beginning-of-line "1" viper-digit-argument "2" "3" "4" "5" "6" "7" "8" "9" ":" viper-ex ";" viper-repeat-find "<" "=" ">" "?" viper-search-backward "@" viper-register-macro "A" viper-Append "B" viper-backward-Word "C" viper-change-to-eol "D" viper-kill-line "E" viper-end-of-Word "F" viper-find-char-backward "G" viper-goto-line "H" viper-window-top "I" viper-Insert "J" viper-join-lines "K" viper-nil "L" viper-window-bottom "M" viper-window-middle "N" viper-search-Next "O" viper-Open-line] 4)
(byte-code "\301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\301\330\331#\210\301\332\333#\210\301\334\335#\210\301\336\337#\210\301\340\341#\210\301\342\343#\210\301\344\345#\210\301\346\347#\210\301\350\351#\210\301\352\351#\210\301\353\354#\210\301\355\356#\210\301\357\360#\210\301\361\362#\210\301\363\362#\210\301\364\365#\210\301\366\367#\210\301\370\371#\210\301\372\373#\210\301\374\375#\210\301\376\377#\210\301\201@ \201A #\210\301\201B \201C #\210\301\201D \360#\210\301\201E \201F #\210\301\201G \201H #\210\301\201I \201J #\210\301\201K \315#\210\301\201L \201M #\210\301\201N \201O #\210\301\201P \201Q #\210\301\201R \201S #\210\301\201T \351#\210\301\201U \201V #\210\301\201W \201X #\210\301\201Y \201Z #\210\301\201[ \201V #\210\301\201\\ \201X #\210\301\201] \201Z #\210\301\201^ \201_ #\207" [viper-vi-basic-map define-key "P" viper-Put-back "Q" viper-query-replace "R" viper-overwrite "S" viper-substitute-line "T" viper-goto-char-backward "U" viper-undo "V" find-file-other-window "W" viper-forward-Word "X" viper-delete-backward-char "Y" viper-yank-line "ZZ" viper-save-kill-buffer "\\" viper-escape-to-emacs "[" viper-brac-function "]" viper-ket-function "" viper-alternate-Meta-key "^" viper-bol-and-skip-white "`" viper-goto-mark "a" viper-append "b" viper-backward-word "c" viper-command-argument "d" "e" viper-end-of-word "f" viper-find-char-forward "g" viper-nil "h" viper-backward-char [backspace] "i" viper-insert "j" viper-next-line "k" viper-previous-line "l" viper-forward-char "m" viper-mark-point "n" viper-search-next "o" viper-open-line "p" viper-put-back "q" "r" viper-replace-char "s" viper-substitute "t" viper-goto-char-forward "u" "v" find-file "" find-file-other-frame "w" viper-forward-word "x" viper-delete-char "y" "zH" viper-line-to-top "zM" viper-line-to-middle "zL" viper-line-to-bottom "z" "z." "z-" "{" viper-backward-paragraph] 4)
(byte-code "\302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\302	\315\314#\210\302	\316\314#\210\302	\317\320#\210\302	\321\314#\210\302	\322\314#\210\302	\323\324#\210\302	\325\326#\210\302	\327\314#\210\302	\330\331#\210\302	\332\314#\210\302	\333\324#\210\302	\334\314#\210\302	\335\314#\210\302	\336\314#\210\302	\337\314#\210\302	\340\314#\210\302	\313\314#\210\302	\341\314#\210\302	\342\314#\210\302	\343\314#\210\302	\344\314#\207" [viper-vi-basic-map viper-vi-diehard-map define-key "|" viper-goto-col "}" viper-forward-paragraph "~" viper-toggle-case "" viper-backward-char "_" viper-nil "" "" "" viper-info-on-file "	" "" "\f" redraw-display "" viper-next-line "" "" viper-previous-line "" "" "" "" "" "" "@" "*" "#" "" ""] 4)#@64 Keymap used to modify keys when Minibuffer is in Insert state.
(defvar viper-minibuffer-map (define-keymap) (#$ . 12966))
(byte-code "\301\302\303#\210\301\304\303#\207" [viper-minibuffer-map define-key "" viper-exit-minibuffer "\n"] 4)
(defvar viper-ex-cmd-map (define-keymap))
(byte-code "\301\302\303#\210\301\304\305#\207" [viper-ex-cmd-map define-key " " ex-cmd-read-exit "	" ex-cmd-complete] 4)
(defvar ex-read-filename-map (define-keymap))
(byte-code "\301\302\303#\210\301\304\305#\207" [ex-read-filename-map define-key " " viper-complete-filename-or-exit "!" viper-handle-!] 4)#@99 This map redefines \`/' and \`:' to behave as in Vi.
Useful in some modes, such as Gnus, MH, etc.
(defvar viper-slash-and-colon-map (define-keymap) (#$ . 13565))
(byte-code "\301\302\303#\210\301\304\305#\207" [viper-slash-and-colon-map define-key ":" viper-ex "/" viper-search-forward] 4)#@32 This map modifies comint mode.
(defvar viper-comint-mode-modifier-map (define-keymap) (#$ . 13862))
(byte-code "\301\302\303#\210\301\304\303#\207" [viper-comint-mode-modifier-map define-key "" viper-exec-key-in-emacs ""] 4)#@35 This map modifies Dired behavior.
(defvar viper-dired-modifier-map (define-keymap) (#$ . 14096))
(byte-code "\301\302\303#\210\301\304\305#\207" [viper-dired-modifier-map define-key ":" viper-ex "/" viper-search-forward] 4)#@34 This map modifies Gnus behavior.
(defvar viper-gnus-modifier-map (define-keymap) (#$ . 14327))
(define-key viper-gnus-modifier-map ":" 'viper-ex)#@465 Override some vi-state or insert-state bindings in the current buffer.
The effect is seen in the current buffer only.
Useful for customizing  mailer buffers, gnus, etc.
STATE is `vi-state', `insert-state', or `emacs-state'.
ALIST is of the form ((KEY . FUNC) (KEY . FUNC) ...)
Normally, this would be called from a hook to a major mode or
on a per buffer basis.
Usage:
      (viper-add-local-keys state \='((key-str . func) (key-str . func)...))

(fn STATE ALIST)
(defalias 'viper-add-local-keys #[514 "\306\307\267\2024 \203 \310 \306	\262\2029 \n\203 \310 \306\262\2029 \f\203, \310 \306\262\2029 \311\312\"\210\313\"\210\314 \210\315!\207" [viper-need-new-vi-local-map viper-vi-local-user-map viper-need-new-insert-local-map viper-insert-local-user-map viper-need-new-emacs-local-map viper-emacs-local-user-map nil #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (vi-state 7 insert-state 22 emacs-state 37)) make-sparse-keymap error "Invalid state in viper-add-local-keys: %S.  Valid states: vi-state, insert-state or emacs-state" viper-modify-keymap viper-normalize-minor-mode-map-alist viper-set-mode-vars-for viper-current-state] 6 (#$ . 14479)])#@213 Unconditionally reset Viper viper-*-local-user-map's.
Rarely useful, but if you made a mistake by switching to a mode that adds
undesirable local keys, e.g., `comint-mode', then this function can restore
sanity.
(defalias 'viper-zap-local-keys #[0 "\306 \307\306 \307\306 \307\310 \207" [viper-vi-local-user-map viper-need-new-vi-local-map viper-insert-local-user-map viper-need-new-insert-local-map viper-emacs-local-user-map viper-need-new-emacs-local-map make-sparse-keymap nil viper-normalize-minor-mode-map-alist] 1 (#$ . 15695) nil])#@605 Modify key bindings in a major-mode in a Viper state using a keymap.

If the default for a major mode is emacs-state, then modifications to this
major mode may not take effect until the buffer switches state to Vi,
Insert or Emacs.  If this happens, add viper-change-state-to-emacs to this
major mode's hook.  If no such hook exists, you may have to put an advice on
the function that invokes the major mode.  See viper-set-hooks for hints.

The above needs not to be done for major modes that come up in Vi or Insert
state by default.

Arguments: (major-mode viper-state keymap)

(fn MODE STATE KEYMAP)
(defalias 'viper-modify-major-mode #[771 "\301\267\202 \302\202 \303\202 \304\202 \305J\236\211\203# \211\241\266\2020 B\211\262JBL\266\306 \210\307!\207" [viper-current-state #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (vi-state 6 insert-state 10 emacs-state 14)) viper-vi-state-modifier-alist viper-insert-state-modifier-alist viper-emacs-state-modifier-alist nil viper-normalize-minor-mode-map-alist viper-set-mode-vars-for] 8 (#$ . 16247)])
(defalias 'viper-debug-keymaps #[0 "r\306\307!q\210p\310 \210\311\211\312\211\312\313 \210\314\315!+\210\211:\316\317\320\321 \"!\210\316\322!\210\316\317\323;\"!\210\316\317\324<\"!\210\316\317\325=\"!\210\316\317\326>\"!\210\316\317\327?\"!\210\316\317\330@\"!\210\316\317\331A\"!\210\316\317\332B\"!\210\316\317\333C\"!\210\316\317\334D\"!\210\316\317\335E\"!\210\316\317\336F\"!\210\316\317\337G\"!\210\316\317\340H\"!\210\316\317\341I\"!\210\316\317\342J\"!\210\316\317\343K\"!\210\316\317\344L\"!\210\316\317\345M\"!\210\316\317\346N\"!\210\316\317\347O\"!\210\316\317\350P\"!\210\316\317\351Q\"!\210\316\317\352R\"!\210\316\317\353S\"!\210\316\317\354T\"!\210\316\317\355U\"!\210\316\317\356V\"!\210\316\317\357W\"!\210\316\317\360X\"!\210\316\317\361Y\"!\210\316\317\362Z\"!\210\316\317\363[\"!\210\316\364!\210\316\317\365\366\367!\"!\210\316\317\3707\"!\371!)\210\207" [default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only get-buffer-create " *viper-debug*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook princ format "Buffer name:  %s\n\n" buffer-name "Variables:  \n" "major-mode:  %S\n" "viper-current-state:  %S\n" "viper-mode-string:  %S\n\n" "viper-vi-intercept-minor-mode:  %S\n" "viper-insert-intercept-minor-mode:  %S\n" "viper-emacs-intercept-minor-mode:  %S\n" "viper-vi-minibuffer-minor-mode:  %S\n" "viper-insert-minibuffer-minor-mode:  %S\n\n" "viper-vi-local-user-minor-mode:  %S\n" "viper-vi-global-user-minor-mode:  %S\n" "viper-vi-kbd-minor-mode:  %S\n" "viper-vi-state-modifier-minor-mode:  %S\n" "viper-vi-diehard-minor-mode:  %S\n" "viper-vi-basic-minor-mode:  %S\n" "viper-replace-minor-mode:  %S\n" "viper-insert-local-user-minor-mode:  %S\n" "viper-insert-global-user-minor-mode:  %S\n" "viper-insert-kbd-minor-mode:  %S\n" "viper-insert-state-modifier-minor-mode:  %S\n" "viper-insert-diehard-minor-mode:  %S\n" "viper-insert-basic-minor-mode:  %S\n" "viper-emacs-local-user-minor-mode:  %S\n" "viper-emacs-kbd-minor-mode:  %S\n" "viper-emacs-global-user-minor-mode:  %S\n" "viper-emacs-state-modifier-minor-mode:  %S\n" "\nviper-expert-level  %S\n" "viper-no-multiple-ESC  %S\n" "viper-always  %S\n" "viper-ex-style-motion  %S\n" "viper-ex-style-editing  %S\n" "viper-want-emacs-keys-in-vi  %S\n" "viper-want-emacs-keys-in-insert  %S\n" "viper-want-ctl-h-help  %S\n" "\n\n\n" "Default value for minor-mode-map-alist:  \n%S\n\n" default-value minor-mode-map-alist "Actual value for minor-mode-map-alist:  \n%S\n" internal-temp-output-buffer-show standard-output major-mode viper-current-state viper-mode-string viper-vi-intercept-minor-mode viper-insert-intercept-minor-mode viper-emacs-intercept-minor-mode viper-vi-minibuffer-minor-mode viper-insert-minibuffer-minor-mode viper-vi-local-user-minor-mode viper-vi-global-user-minor-mode viper-vi-kbd-minor-mode viper-vi-state-modifier-minor-mode viper-vi-diehard-minor-mode viper-vi-basic-minor-mode viper-replace-minor-mode viper-insert-local-user-minor-mode viper-insert-global-user-minor-mode viper-insert-kbd-minor-mode viper-insert-state-modifier-minor-mode viper-insert-diehard-minor-mode viper-insert-basic-minor-mode viper-emacs-local-user-minor-mode viper-emacs-kbd-minor-mode viper-emacs-global-user-minor-mode viper-emacs-state-modifier-minor-mode viper-expert-level viper-no-multiple-ESC viper-always viper-ex-style-motion viper-ex-style-editing viper-want-emacs-keys-in-vi viper-want-emacs-keys-in-insert viper-want-ctl-h-help] 8 nil nil])#@93 Add contents of mapsrc to mapdst.  It is assumed that mapsrc is sparse.

(fn MAPSRC MAPDST)
(defalias 'viper-add-keymap #[514 "\300\301\302\"A\"\207" [mapc make-closure #[257 "\301\300\302@!A#\207" [V0 define-key vector] 5 "\n\n(fn P)"]] 6 (#$ . 20931)])#@133 Modifies MAP with bindings specified in the ALIST.
The ALIST has the form ((KEY . FUNCTION) (KEY . FUNCTION) ... ).

(fn MAP ALIST)
(defalias 'viper-modify-keymap #[514 "\300\301\302\"\"\207" [mapcar make-closure #[257 "\301\300\302@\303\"A#\207" [V0 define-key eval t] 6 "\n\n(fn P)"]] 6 (#$ . 21196)])
(provide 'viper-keym)
