From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Boruch Baum Newsgroups: gmane.emacs.bugs Subject: bug#20152: 24.4: bookmarks display wrong annotation (FIX INCLUDED) Date: Fri, 20 Mar 2015 06:38:54 -0400 Message-ID: <550BF8BE.5080105@gmx.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="nMQRTGVhgG0BqhEiV1qiknVXbiuCraaAf" X-Trace: ger.gmane.org 1426848029 6669 80.91.229.3 (20 Mar 2015 10:40:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 20 Mar 2015 10:40:29 +0000 (UTC) To: 20152@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Mar 20 11:40:17 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1YYuLg-00049R-Ac for geb-bug-gnu-emacs@m.gmane.org; Fri, 20 Mar 2015 11:40:16 +0100 Original-Received: from localhost ([::1]:43155 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYuLf-00028Z-Hn for geb-bug-gnu-emacs@m.gmane.org; Fri, 20 Mar 2015 06:40:15 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43723) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYuLZ-00028P-Jx for bug-gnu-emacs@gnu.org; Fri, 20 Mar 2015 06:40:11 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YYuLU-00046m-HD for bug-gnu-emacs@gnu.org; Fri, 20 Mar 2015 06:40:09 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:40824) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYuLU-00045W-DR for bug-gnu-emacs@gnu.org; Fri, 20 Mar 2015 06:40:04 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1YYuLT-0000Yg-Ga for bug-gnu-emacs@gnu.org; Fri, 20 Mar 2015 06:40:03 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Boruch Baum Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 20 Mar 2015 10:40:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 20152 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.14268479882115 (code B ref -1); Fri, 20 Mar 2015 10:40:03 +0000 Original-Received: (at submit) by debbugs.gnu.org; 20 Mar 2015 10:39:48 +0000 Original-Received: from localhost ([127.0.0.1]:58833 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YYuLC-0000Xz-KS for submit@debbugs.gnu.org; Fri, 20 Mar 2015 06:39:47 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:41888) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YYuL9-0000Xk-B6 for submit@debbugs.gnu.org; Fri, 20 Mar 2015 06:39:44 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YYuL2-0003jk-78 for submit@debbugs.gnu.org; Fri, 20 Mar 2015 06:39:38 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:39498) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYuL2-0003je-4c for submit@debbugs.gnu.org; Fri, 20 Mar 2015 06:39:36 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43604) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYuL0-00023J-47 for bug-gnu-emacs@gnu.org; Fri, 20 Mar 2015 06:39:36 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YYuKv-0003ez-2W for bug-gnu-emacs@gnu.org; Fri, 20 Mar 2015 06:39:34 -0400 Original-Received: from mout.gmx.net ([212.227.17.22]:63913) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYuKu-0003ep-Lh for bug-gnu-emacs@gnu.org; Fri, 20 Mar 2015 06:39:29 -0400 Original-Received: from [192.168.1.12] ([96.232.130.59]) by mail.gmx.com (mrgmx102) with ESMTPSA (Nemesis) id 0Lyj4F-1ZcvYh1LF9-0167sY for ; Fri, 20 Mar 2015 11:39:24 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.4.0 OpenPGP: url=hkp://keys.gnupg.net X-Provags-ID: V03:K0:5SqdbqArEVQizNn46KB0K1GbH4mGz0PUdGNhf/q4b+qQzBYF00v SFeGjL9imDj+yaPCwhCp2zMMLzbMUhP9WAc7Hu6n6CcUpSGZq3w7nThO+poKFxfOhnRoFvZ krKOqU2WMHG1ySkkkwhuCHk12N2HvV6OsbQDMedW7ktyOxEi9TK9gwibN7W0xkE5YYbi96z RAguZGqeM+90nTe/R2wUA== X-UI-Out-Filterresults: notjunk:1; X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:100688 Archived-At: This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --nMQRTGVhgG0BqhEiV1qiknVXbiuCraaAf Content-Type: multipart/mixed; boundary="------------050403000409070100020109" This is a multi-part message in MIME format. --------------050403000409070100020109 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable In the bookmark list buffer, after viewing an annotation for a bookmark, navigating to another bookmark entry does not kill the annotation buffer display, leading to confusion about which entry the still-visible annotation refers. The atttached bugfix kills the annotation buffer on navigation, and remaps navigation keys accordingly. The bugfix also introduces an option to automatically display annotations as one navigates within the bookmark list buffer. The bugfix also introduces an option to toggle auto-display of annotations. Note that the code has two sets of key-binding definitions: Only the first, (defvar bookmark-bmenu-mode-map ..., is for the bugfix to bookmark.el. The second, (eval-after-load "bookmark" ..., or better, just (progn ..., is included for convenience / testing. ;------------------------------------------------------------------- ; bookmark-bmenu-next-line ; bookmark-bmenu-previous-line ; bookmark-bmenu-forward-char ; bookmark-bmenu-backward-char ; ; Functions to address bug in which the `*Bookmark Annotation*' buffer ; is not modified or updated when navigating through the ; bookmark-bmenu-list. ; ; Also provides option to auto-display annotations as one navigates ; the bmenu-list (defvar bookmark-bmenu-auto-display-annotations nil "Whether to automatically display a bookmark's annotation as one navigates through the bookmark list. `t' for yes. Default is `nil'.") (defun bookmark-bmenu-next-line (&optional ARG TRY-VSCROLL) "Move cursor vertically down ARG lines within the bookmark list. Refer to function `next-line' for details." (interactive "^p\np") (let ((annotation-buffer (get-buffer "*Bookmark Annotation*"))) (when annotation-buffer (kill-buffer annotation-buffer))) (next-line ARG TRY-VSCROLL) (when bookmark-bmenu-auto-display-annotations (bookmark-bmenu-show-annotation))) (defun bookmark-bmenu-previous-line (&optional ARG TRY-VSCROLL) "Move cursor vertically up ARG lines within the bookmark list. Refer to function `previous-line' for details." (interactive "^p\np") (let ((annotation-buffer (get-buffer "*Bookmark Annotation*"))) (when annotation-buffer (kill-buffer annotation-buffer))) (previous-line ARG TRY-VSCROLL) (when bookmark-bmenu-auto-display-annotations (bookmark-bmenu-show-annotation))) (defun bookmark-bmenu-forward-char (&optional N) (interactive "p") (bookmark-bmenu-backward-forward-char 'forward-char N)) (defun bookmark-bmenu-backward-char (&optional N) (interactive "p") (bookmark-bmenu-backward-forward-char 'backward-char N)) (defun bookmark-bmenu-backward-forward-char (direction-function N) (let (annotation-buffer (initial-line (line-number-at-pos))) (funcall direction-function N) (when (/=3D initial-line (line-number-at-pos)) (when (setq annotation-buffer (get-buffer "*Bookmark Annotation*"))= (kill-buffer annotation-buffer)) (when bookmark-bmenu-auto-display-annotations (bookmark-bmenu-show-annotation))))) ;------------------------------------------------------------------- ; ; ONLY ONE OF THE FOLLOWING TWO OPTIONS ARE NECESSARY ! ; ; Either redine the mode map, or just the individual keys ; ;------------------------------------------------------------------- (defvar bookmark-bmenu-mode-map (let ((map (make-keymap))) (set-keymap-parent map special-mode-map) (define-key map "v" 'bookmark-bmenu-select) (define-key map "w" 'bookmark-bmenu-locate) (define-key map "2" 'bookmark-bmenu-2-window) (define-key map "1" 'bookmark-bmenu-1-window) (define-key map "j" 'bookmark-bmenu-this-window) (define-key map "\C-c\C-c" 'bookmark-bmenu-this-window) (define-key map "f" 'bookmark-bmenu-this-window) (define-key map "\C-m" 'bookmark-bmenu-this-window) (define-key map "o" 'bookmark-bmenu-other-window) (define-key map "\C-o" 'bookmark-bmenu-switch-other-window) (define-key map "s" 'bookmark-bmenu-save) (define-key map "k" 'bookmark-bmenu-delete) (define-key map "\C-d" 'bookmark-bmenu-delete-backwards) (define-key map "x" 'bookmark-bmenu-execute-deletions) (define-key map "d" 'bookmark-bmenu-delete) (define-key map " " 'bookmark-bmenu-next-line) (define-key map "n" 'bookmark-bmenu-next-line) (define-key map [remap next-line] 'bookmark-bmenu-next-line) (define-key map "p" 'bookmark-bmenu-previous-line) (define-key map [remap previous-line] 'bookmark-bmenu-previous-line) (define-key map "\177" 'bookmark-bmenu-backup-unmark) (define-key map "u" 'bookmark-bmenu-unmark) (define-key map "m" 'bookmark-bmenu-mark) (define-key map "l" 'bookmark-bmenu-load) (define-key map "r" 'bookmark-bmenu-rename) (define-key map "R" 'bookmark-bmenu-relocate) (define-key map "t" 'bookmark-bmenu-toggle-filenames) (define-key map "a" 'bookmark-bmenu-show-annotation) (define-key map "A" 'bookmark-bmenu-show-all-annotations) (define-key map "e" 'bookmark-bmenu-edit-annotation) (define-key map "/" 'bookmark-bmenu-search) (define-key map [remap backward-char] 'bookmark-bmenu-backward-char) (define-key map [remap forward-char] 'bookmark-bmenu-forward-char) (define-key map [mouse-2] 'bookmark-bmenu-other-window-with-mouse) map)) (eval-after-load "bookmark" (progn (define-key bookmark-bmenu-mode-map [remap next-line] 'bookmark-bmenu-next-line) (define-key bookmark-bmenu-mode-map [remap previous-line] 'bookmark-bmenu-previous-line) (define-key bookmark-bmenu-mode-map (kbd "n") 'bookmark-bmenu-next-line) (define-key bookmark-bmenu-mode-map (kbd "SPC") 'bookmark-bmenu-next-line) (define-key bookmark-bmenu-mode-map (kbd "p") 'bookmark-bmenu-previous-line) (define-key bookmark-bmenu-mode-map [remap backward-char] 'bookmark-bmenu-backward-char) (define-key bookmark-bmenu-mode-map [remap forward-char] 'bookmark-bmenu-forward-char) )) ;------------------------------------------------------------------- ;------------------------------------------------------------------- ; Modification to function `bookmark-bmenu-show-annotation' to allow ; for toggling whether to autodisplay annotations as one navigates ; through the bookmark list. ; ; Do note that the documentation for function `called-interactively-p' ; discourages its use in favor of eg. '(not (or executing-kbd-macro ; noninteractive))'. See there for details. ; (defvar bookmark-bmenu-toggle-auto-display-annotations nil "When not `nil', function `bookmark-bmenu-show-annotation' (by default, bound to `a`), toggles whether to automatically display a bookmark's annotation as one navigates through the bookmark list. Default is `nil'.") (defun bookmark-bmenu-show-annotation () "Show the annotation for the current bookmark in another window." (interactive) (when (and (called-interactively-p "any") bookmark-bmenu-toggle-auto-display-annotations) (if bookmark-bmenu-auto-display-annotations (setq bookmark-bmenu-auto-display-annotations nil) (setq bookmark-bmenu-auto-display-annotations t))) (let ((bookmark (bookmark-bmenu-bookmark))) (bookmark-show-annotation bookmark))) ;------------------------------------------------------------------- --=20 hkp://keys.gnupg.net CA45 09B5 5351 7C11 A9D1 7286 0036 9E45 1595 8BC0 --------------050403000409070100020109 Content-Type: text/plain; charset=UTF-8; name="attachment-1" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment-1" Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KOyBib29rbWFyay1ibWVudS1uZXh0LWxpbmUKOyBib29rbWFyay1i bWVudS1wcmV2aW91cy1saW5lCjsgYm9va21hcmstYm1lbnUtZm9yd2FyZC1jaGFyCjsgYm9v a21hcmstYm1lbnUtYmFja3dhcmQtY2hhcgo7CjsgRnVuY3Rpb25zIHRvIGFkZHJlc3MgYnVn IGluIHdoaWNoIHRoZSBgKkJvb2ttYXJrIEFubm90YXRpb24qJyBidWZmZXIKOyBpcyBub3Qg bW9kaWZpZWQgb3IgdXBkYXRlZCB3aGVuIG5hdmlnYXRpbmcgdGhyb3VnaCB0aGUKOyBib29r bWFyay1ibWVudS1saXN0Lgo7CjsgQWxzbyBwcm92aWRlcyBvcHRpb24gdG8gYXV0by1kaXNw bGF5IGFubm90YXRpb25zIGFzIG9uZSBuYXZpZ2F0ZXMKOyB0aGUgYm1lbnUtbGlzdAoKKGRl ZnZhciBib29rbWFyay1ibWVudS1hdXRvLWRpc3BsYXktYW5ub3RhdGlvbnMgbmlsCiJXaGV0 aGVyIHRvIGF1dG9tYXRpY2FsbHkgZGlzcGxheSBhIGJvb2ttYXJrJ3MgYW5ub3RhdGlvbiBh cyBvbmUKbmF2aWdhdGVzIHRocm91Z2ggdGhlIGJvb2ttYXJrIGxpc3QuIGB0JyBmb3IgeWVz LiBEZWZhdWx0IGlzCmBuaWwnLiIpCgooZGVmdW4gYm9va21hcmstYm1lbnUtbmV4dC1saW5l ICgmb3B0aW9uYWwgQVJHIFRSWS1WU0NST0xMKQoiTW92ZSBjdXJzb3IgdmVydGljYWxseSBk b3duIEFSRyBsaW5lcyB3aXRoaW4gdGhlIGJvb2ttYXJrIGxpc3QuClJlZmVyIHRvIGZ1bmN0 aW9uIGBuZXh0LWxpbmUnIGZvciBkZXRhaWxzLiIKICAoaW50ZXJhY3RpdmUgIl5wXG5wIikK ICAobGV0CiAgICAoKGFubm90YXRpb24tYnVmZmVyCiAgICAgICAoZ2V0LWJ1ZmZlciAiKkJv b2ttYXJrIEFubm90YXRpb24qIikpKQogICAgKHdoZW4gYW5ub3RhdGlvbi1idWZmZXIKICAg ICAgKGtpbGwtYnVmZmVyIGFubm90YXRpb24tYnVmZmVyKSkpCiAgKG5leHQtbGluZSBBUkcg VFJZLVZTQ1JPTEwpCiAgKHdoZW4gYm9va21hcmstYm1lbnUtYXV0by1kaXNwbGF5LWFubm90 YXRpb25zCiAgICAgKGJvb2ttYXJrLWJtZW51LXNob3ctYW5ub3RhdGlvbikpKQoKKGRlZnVu IGJvb2ttYXJrLWJtZW51LXByZXZpb3VzLWxpbmUgKCZvcHRpb25hbCBBUkcgVFJZLVZTQ1JP TEwpCiJNb3ZlIGN1cnNvciB2ZXJ0aWNhbGx5IHVwIEFSRyBsaW5lcyB3aXRoaW4gdGhlIGJv b2ttYXJrIGxpc3QuClJlZmVyIHRvIGZ1bmN0aW9uIGBwcmV2aW91cy1saW5lJyBmb3IgZGV0 YWlscy4iCiAgKGludGVyYWN0aXZlICJecFxucCIpCiAgKGxldAogICAgKChhbm5vdGF0aW9u LWJ1ZmZlcgogICAgICAgKGdldC1idWZmZXIgIipCb29rbWFyayBBbm5vdGF0aW9uKiIpKSkK ICAgICh3aGVuIGFubm90YXRpb24tYnVmZmVyCiAgICAgIChraWxsLWJ1ZmZlciBhbm5vdGF0 aW9uLWJ1ZmZlcikpKQogIChwcmV2aW91cy1saW5lIEFSRyBUUlktVlNDUk9MTCkKICAod2hl biBib29rbWFyay1ibWVudS1hdXRvLWRpc3BsYXktYW5ub3RhdGlvbnMKICAgICAoYm9va21h cmstYm1lbnUtc2hvdy1hbm5vdGF0aW9uKSkpCgooZGVmdW4gYm9va21hcmstYm1lbnUtZm9y d2FyZC1jaGFyICgmb3B0aW9uYWwgTikKICAoaW50ZXJhY3RpdmUgInAiKQogIChib29rbWFy ay1ibWVudS1iYWNrd2FyZC1mb3J3YXJkLWNoYXIgJ2ZvcndhcmQtY2hhciBOKSkKCihkZWZ1 biBib29rbWFyay1ibWVudS1iYWNrd2FyZC1jaGFyICgmb3B0aW9uYWwgTikKICAoaW50ZXJh Y3RpdmUgInAiKQogIChib29rbWFyay1ibWVudS1iYWNrd2FyZC1mb3J3YXJkLWNoYXIgJ2Jh Y2t3YXJkLWNoYXIgTikpCgooZGVmdW4gYm9va21hcmstYm1lbnUtYmFja3dhcmQtZm9yd2Fy ZC1jaGFyIChkaXJlY3Rpb24tZnVuY3Rpb24gTikKICAobGV0IChhbm5vdGF0aW9uLWJ1ZmZl cgogICAgICAgIChpbml0aWFsLWxpbmUgKGxpbmUtbnVtYmVyLWF0LXBvcykpKQogICAgKGZ1 bmNhbGwgZGlyZWN0aW9uLWZ1bmN0aW9uIE4pCiAgICAod2hlbiAoLz0gaW5pdGlhbC1saW5l IChsaW5lLW51bWJlci1hdC1wb3MpKQogICAgICAod2hlbiAoc2V0cSBhbm5vdGF0aW9uLWJ1 ZmZlciAoZ2V0LWJ1ZmZlciAiKkJvb2ttYXJrIEFubm90YXRpb24qIikpCiAgICAgICAgKGtp bGwtYnVmZmVyIGFubm90YXRpb24tYnVmZmVyKSkKICAgICAgKHdoZW4gYm9va21hcmstYm1l bnUtYXV0by1kaXNwbGF5LWFubm90YXRpb25zCiAgICAgICAgKGJvb2ttYXJrLWJtZW51LXNo b3ctYW5ub3RhdGlvbikpKSkpCgo7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo7CjsgT05MWSBPTkUgT0YgVEhF IEZPTExPV0lORyBUV08gT1BUSU9OUyBBUkUgTkVDRVNTQVJZICEKOwo7IEVpdGhlciByZWRp bmUgdGhlIG1vZGUgbWFwLCBvciBqdXN0IHRoZSBpbmRpdmlkdWFsIGtleXMKOwo7LS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQooZGVmdmFyIGJvb2ttYXJrLWJtZW51LW1vZGUtbWFwCiAgKGxldCAoKG1hcCAo bWFrZS1rZXltYXApKSkKICAgIChzZXQta2V5bWFwLXBhcmVudCBtYXAgc3BlY2lhbC1tb2Rl LW1hcCkKICAgIChkZWZpbmUta2V5IG1hcCAidiIgJ2Jvb2ttYXJrLWJtZW51LXNlbGVjdCkK ICAgIChkZWZpbmUta2V5IG1hcCAidyIgJ2Jvb2ttYXJrLWJtZW51LWxvY2F0ZSkKICAgIChk ZWZpbmUta2V5IG1hcCAiMiIgJ2Jvb2ttYXJrLWJtZW51LTItd2luZG93KQogICAgKGRlZmlu ZS1rZXkgbWFwICIxIiAnYm9va21hcmstYm1lbnUtMS13aW5kb3cpCiAgICAoZGVmaW5lLWtl eSBtYXAgImoiICdib29rbWFyay1ibWVudS10aGlzLXdpbmRvdykKICAgIChkZWZpbmUta2V5 IG1hcCAiXEMtY1xDLWMiICdib29rbWFyay1ibWVudS10aGlzLXdpbmRvdykKICAgIChkZWZp bmUta2V5IG1hcCAiZiIgJ2Jvb2ttYXJrLWJtZW51LXRoaXMtd2luZG93KQogICAgKGRlZmlu ZS1rZXkgbWFwICJcQy1tIiAnYm9va21hcmstYm1lbnUtdGhpcy13aW5kb3cpCiAgICAoZGVm aW5lLWtleSBtYXAgIm8iICdib29rbWFyay1ibWVudS1vdGhlci13aW5kb3cpCiAgICAoZGVm aW5lLWtleSBtYXAgIlxDLW8iICdib29rbWFyay1ibWVudS1zd2l0Y2gtb3RoZXItd2luZG93 KQogICAgKGRlZmluZS1rZXkgbWFwICJzIiAnYm9va21hcmstYm1lbnUtc2F2ZSkKICAgIChk ZWZpbmUta2V5IG1hcCAiayIgJ2Jvb2ttYXJrLWJtZW51LWRlbGV0ZSkKICAgIChkZWZpbmUt a2V5IG1hcCAiXEMtZCIgJ2Jvb2ttYXJrLWJtZW51LWRlbGV0ZS1iYWNrd2FyZHMpCiAgICAo ZGVmaW5lLWtleSBtYXAgIngiICdib29rbWFyay1ibWVudS1leGVjdXRlLWRlbGV0aW9ucykK ICAgIChkZWZpbmUta2V5IG1hcCAiZCIgJ2Jvb2ttYXJrLWJtZW51LWRlbGV0ZSkKICAgIChk ZWZpbmUta2V5IG1hcCAiICIgJ2Jvb2ttYXJrLWJtZW51LW5leHQtbGluZSkKICAgIChkZWZp bmUta2V5IG1hcCAibiIgJ2Jvb2ttYXJrLWJtZW51LW5leHQtbGluZSkKICAgIChkZWZpbmUt a2V5IG1hcCBbcmVtYXAgbmV4dC1saW5lXSAnYm9va21hcmstYm1lbnUtbmV4dC1saW5lKQog ICAgKGRlZmluZS1rZXkgbWFwICJwIiAnYm9va21hcmstYm1lbnUtcHJldmlvdXMtbGluZSkK ICAgIChkZWZpbmUta2V5IG1hcCBbcmVtYXAgcHJldmlvdXMtbGluZV0gJ2Jvb2ttYXJrLWJt ZW51LXByZXZpb3VzLWxpbmUpCiAgICAoZGVmaW5lLWtleSBtYXAgIlwxNzciICdib29rbWFy ay1ibWVudS1iYWNrdXAtdW5tYXJrKQogICAgKGRlZmluZS1rZXkgbWFwICJ1IiAnYm9va21h cmstYm1lbnUtdW5tYXJrKQogICAgKGRlZmluZS1rZXkgbWFwICJtIiAnYm9va21hcmstYm1l bnUtbWFyaykKICAgIChkZWZpbmUta2V5IG1hcCAibCIgJ2Jvb2ttYXJrLWJtZW51LWxvYWQp CiAgICAoZGVmaW5lLWtleSBtYXAgInIiICdib29rbWFyay1ibWVudS1yZW5hbWUpCiAgICAo ZGVmaW5lLWtleSBtYXAgIlIiICdib29rbWFyay1ibWVudS1yZWxvY2F0ZSkKICAgIChkZWZp bmUta2V5IG1hcCAidCIgJ2Jvb2ttYXJrLWJtZW51LXRvZ2dsZS1maWxlbmFtZXMpCiAgICAo ZGVmaW5lLWtleSBtYXAgImEiICdib29rbWFyay1ibWVudS1zaG93LWFubm90YXRpb24pCiAg ICAoZGVmaW5lLWtleSBtYXAgIkEiICdib29rbWFyay1ibWVudS1zaG93LWFsbC1hbm5vdGF0 aW9ucykKICAgIChkZWZpbmUta2V5IG1hcCAiZSIgJ2Jvb2ttYXJrLWJtZW51LWVkaXQtYW5u b3RhdGlvbikKICAgIChkZWZpbmUta2V5IG1hcCAiLyIgJ2Jvb2ttYXJrLWJtZW51LXNlYXJj aCkKICAgIChkZWZpbmUta2V5IG1hcCBbcmVtYXAgYmFja3dhcmQtY2hhcl0gJ2Jvb2ttYXJr LWJtZW51LWJhY2t3YXJkLWNoYXIpCiAgICAoZGVmaW5lLWtleSBtYXAgW3JlbWFwIGZvcndh cmQtY2hhcl0gICdib29rbWFyay1ibWVudS1mb3J3YXJkLWNoYXIpCiAgICAoZGVmaW5lLWtl eSBtYXAgW21vdXNlLTJdICdib29rbWFyay1ibWVudS1vdGhlci13aW5kb3ctd2l0aC1tb3Vz ZSkKICAgIG1hcCkpCgoKKGV2YWwtYWZ0ZXItbG9hZCAiYm9va21hcmsiCiAgKHByb2duCiAg ICAoZGVmaW5lLWtleSBib29rbWFyay1ibWVudS1tb2RlLW1hcAogICAgICBbcmVtYXAgbmV4 dC1saW5lXSAnYm9va21hcmstYm1lbnUtbmV4dC1saW5lKQogICAgKGRlZmluZS1rZXkgYm9v a21hcmstYm1lbnUtbW9kZS1tYXAKICAgICAgW3JlbWFwIHByZXZpb3VzLWxpbmVdICdib29r bWFyay1ibWVudS1wcmV2aW91cy1saW5lKQogICAgKGRlZmluZS1rZXkgYm9va21hcmstYm1l bnUtbW9kZS1tYXAKICAgICAgKGtiZCAibiIpICAgJ2Jvb2ttYXJrLWJtZW51LW5leHQtbGlu ZSkKICAgIChkZWZpbmUta2V5IGJvb2ttYXJrLWJtZW51LW1vZGUtbWFwCiAgICAgIChrYmQg IlNQQyIpICdib29rbWFyay1ibWVudS1uZXh0LWxpbmUpCiAgICAoZGVmaW5lLWtleSBib29r bWFyay1ibWVudS1tb2RlLW1hcAogICAgICAoa2JkICJwIikgICAnYm9va21hcmstYm1lbnUt cHJldmlvdXMtbGluZSkKICAgIChkZWZpbmUta2V5IGJvb2ttYXJrLWJtZW51LW1vZGUtbWFw CiAgICAgIFtyZW1hcCBiYWNrd2FyZC1jaGFyXSAnYm9va21hcmstYm1lbnUtYmFja3dhcmQt Y2hhcikKICAgIChkZWZpbmUta2V5IGJvb2ttYXJrLWJtZW51LW1vZGUtbWFwCiAgICAgIFty ZW1hcCBmb3J3YXJkLWNoYXJdICAnYm9va21hcmstYm1lbnUtZm9yd2FyZC1jaGFyKQogICkp CjstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCgoKOy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KOyBNb2RpZmljYXRpb24gdG8gZnVu Y3Rpb24gYGJvb2ttYXJrLWJtZW51LXNob3ctYW5ub3RhdGlvbicgdG8gYWxsb3cKOyBmb3Ig dG9nZ2xpbmcgd2hldGhlciB0byBhdXRvZGlzcGxheSBhbm5vdGF0aW9ucyBhcyBvbmUgbmF2 aWdhdGVzCjsgdGhyb3VnaCB0aGUgYm9va21hcmsgbGlzdC4KOwo7IERvIG5vdGUgdGhhdCB0 aGUgZG9jdW1lbnRhdGlvbiBmb3IgZnVuY3Rpb24gYGNhbGxlZC1pbnRlcmFjdGl2ZWx5LXAn CjsgZGlzY291cmFnZXMgaXRzIHVzZSBpbiBmYXZvciBvZiBlZy4gJyhub3QgKG9yIGV4ZWN1 dGluZy1rYmQtbWFjcm8KOyBub25pbnRlcmFjdGl2ZSkpJy4gU2VlIHRoZXJlIGZvciBkZXRh aWxzLgo7CihkZWZ2YXIgYm9va21hcmstYm1lbnUtdG9nZ2xlLWF1dG8tZGlzcGxheS1hbm5v dGF0aW9ucyBuaWwKIldoZW4gbm90IGBuaWwnLCBmdW5jdGlvbiBgYm9va21hcmstYm1lbnUt c2hvdy1hbm5vdGF0aW9uJyAoYnkKZGVmYXVsdCwgYm91bmQgdG8gYGFgKSwgdG9nZ2xlcyB3 aGV0aGVyIHRvIGF1dG9tYXRpY2FsbHkgZGlzcGxheQphIGJvb2ttYXJrJ3MgYW5ub3RhdGlv biBhcyBvbmUgbmF2aWdhdGVzIHRocm91Z2ggdGhlIGJvb2ttYXJrCmxpc3QuIERlZmF1bHQg aXMgYG5pbCcuIikKCihkZWZ1biBib29rbWFyay1ibWVudS1zaG93LWFubm90YXRpb24gKCkK ICAiU2hvdyB0aGUgYW5ub3RhdGlvbiBmb3IgdGhlIGN1cnJlbnQgYm9va21hcmsgaW4gYW5v dGhlciB3aW5kb3cuIgogIChpbnRlcmFjdGl2ZSkKICAod2hlbiAoYW5kIChjYWxsZWQtaW50 ZXJhY3RpdmVseS1wICJhbnkiKQogICAgICAgICAgICAgYm9va21hcmstYm1lbnUtdG9nZ2xl LWF1dG8tZGlzcGxheS1hbm5vdGF0aW9ucykKICAgIChpZiBib29rbWFyay1ibWVudS1hdXRv LWRpc3BsYXktYW5ub3RhdGlvbnMKICAgICAgKHNldHEgYm9va21hcmstYm1lbnUtYXV0by1k aXNwbGF5LWFubm90YXRpb25zIG5pbCkKICAgICAoc2V0cSBib29rbWFyay1ibWVudS1hdXRv LWRpc3BsYXktYW5ub3RhdGlvbnMgdCkpKQogIChsZXQgKChib29rbWFyayAoYm9va21hcmst Ym1lbnUtYm9va21hcmspKSkKICAgIChib29rbWFyay1zaG93LWFubm90YXRpb24gYm9va21h cmspKSkKOy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0K --------------050403000409070100020109-- --nMQRTGVhgG0BqhEiV1qiknVXbiuCraaAf Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJVC/i+AAoJEDvrUfDmCx9LHuUP/jmZQ7xg2rnfMJEaxYWd5rGQ HwpCvxBlGmvcVBXlx0hnfZeZCRrgt9JwJhcDQ83bQrtDY3Z/CzH7afxSAbTbdzFf UPxEONMxuD/sdQfUuEiA5gSXJzGbd1/6PBhrsDAnL3c254qs47zafd80pQ232260 qtdDylZNPGm2DjjA1T8yUNOPpbC0dqQfjPT6Q+tkR99pu6PdpvDEZfiq0hsTz2aI hnY03uZp14r1WfDhlhxEnyDLIBBPEvqbpuyJ21nzQDnTbA4/JPjm0is/yZ3oocf/ JwoQcwOpV0omm3TZ7CqlkL00A5MCow/STGsCQ7DZHgOCrAoYuIL6EZ4UISKd88oT +6bhpwZZyf1VFS99mPoy5onc50KQvJLcv+WESggCO7IBwQ5G5vDQP2ffAnvnMoYZ IyMPG+zgLsw2LOwp0rOKcYbSTntNmHgGhoYIYy1rqe9DRnYCLzO1xHGpxzJLl4U7 eADDUZS/6WNkUiSwJF/gupYoEhC/X4yA4cebsLkP9Ym3TIOGgusUpUWaLTOkhkNr 7KBZOD4L5bOo7IRdc3PpgkQ56hbl54FvKX5EbnzWxRFD8L5nMPG0+DxH4jS2pG6o Brd1DBxudycBZYDZ/PVHgZUeWKURTDEuEFXWodeqKdG7y9W4BO4V1Xg6v4F6yiu3 J2uRcsu1DGkqKwPfeGp0 =PnO2 -----END PGP SIGNATURE----- --nMQRTGVhgG0BqhEiV1qiknVXbiuCraaAf--