From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#66756: 30.0.50; [PATCH] Improve discussion of 'let' in Elisp Introduction manual Date: Sun, 19 Nov 2023 15:05:55 -0800 Message-ID: <94698677-0fd0-2fb8-6811-3f7e3973107d@gmail.com> References: <3ade119d-0f0d-e60e-1bdc-9c7e02c1559c@gmail.com> <381836df-c16f-b3e7-d0c4-473290e165de@gmail.com> <878r6ut9wh.fsf@gmx.de> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------HFC8aug65ZI4H50QmbSChXjz" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14289"; mail-complaints-to="usenet@ciao.gmane.io" Cc: eliz@gnu.org, rms@gnu.org, 66756@debbugs.gnu.org To: Michael Albinus Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Nov 20 00:07:24 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1r4qst-0003Ya-MO for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 20 Nov 2023 00:07:23 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r4qsX-0002BT-RL; Sun, 19 Nov 2023 18:07:01 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r4qsX-0002BL-0d for bug-gnu-emacs@gnu.org; Sun, 19 Nov 2023 18:07:01 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1r4qsW-0000IC-OK for bug-gnu-emacs@gnu.org; Sun, 19 Nov 2023 18:07:00 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1r4qsX-0001sT-Sy for bug-gnu-emacs@gnu.org; Sun, 19 Nov 2023 18:07:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 19 Nov 2023 23:07:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66756 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 66756-submit@debbugs.gnu.org id=B66756.17004351717156 (code B ref 66756); Sun, 19 Nov 2023 23:07:01 +0000 Original-Received: (at 66756) by debbugs.gnu.org; 19 Nov 2023 23:06:11 +0000 Original-Received: from localhost ([127.0.0.1]:52241 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4qri-0001rL-B0 for submit@debbugs.gnu.org; Sun, 19 Nov 2023 18:06:11 -0500 Original-Received: from mail-pj1-x1036.google.com ([2607:f8b0:4864:20::1036]:54627) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1r4qrc-0001ql-Ts for 66756@debbugs.gnu.org; Sun, 19 Nov 2023 18:06:09 -0500 Original-Received: by mail-pj1-x1036.google.com with SMTP id 98e67ed59e1d1-27ff7fe7fbcso3013475a91.1 for <66756@debbugs.gnu.org>; Sun, 19 Nov 2023 15:06:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1700435157; x=1701039957; darn=debbugs.gnu.org; h=in-reply-to:references:cc:to:from:content-language:subject :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=lc4S2Y81m8BYcmemIVr0/1qog6RH+r2y0VazQ3Wo0Ng=; b=D7ee0KDDZECVhTw1IIID+p8lOAyhTKBMiZU6LINxACAgMaNF32IsCt7DYlyK44b0UX WGln4SAzdbfYn+5AXxC5/KuQQIIYyvySICNWSraGqsftLNaa2D3OUZqn/dtdUQ5SjaYz bboofJ/xc60ImPWWE2mokVXGiJneboahG9rm6ElKt2GG+LebR0mWaw0K2gSlUAtTdP3t YhNb0U0H++IqNUTQk8Oqla/LVbvh56Z/xMTR2yJjO/dJ6my/aIOY/c1zK/qZYBvS8jDK zNnLNAkiAutVimoLvBZG/9KmdEMxD6oxikcfLKdzhWfXDen5Yscq3I2Ge49BbnfGLFSD osDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1700435157; x=1701039957; h=in-reply-to:references:cc:to:from:content-language:subject :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=lc4S2Y81m8BYcmemIVr0/1qog6RH+r2y0VazQ3Wo0Ng=; b=B7dljz1y0tNpLucDvcdjJLuBd2ak6J45Zqqnh5zl0Gc53CokphE8iso7tl8swEsPHF 9wNQKA5454vy+4qAFjsle1TlkddRrT7P96NIdPDOc3GqXkCIU4rsO98xX2ay76GHevhp JVKWVrwYN9g2h8CP8tbWkssNvg4Xbm2MqpX67ky7gZ162vlxgeoA1cOE2fstTSq9K6DI JzkJPLF+6G25iCfTsXnR0/2uvdxFGO/LwdBpzZqbcmtY+PAg/e+Hr4Dwem5nfmoo6O47 q5Hp9IKckBVPRnVXIQtew5ASeirB2xz+SVK2FtjS+XQCybHnrMMt9rgfp4XjAX+rggNg NAnw== X-Gm-Message-State: AOJu0YxnyVxjTMYOA8im1XRpxF9zVz6vicFzskdkm2t0wKTBGnzvCKJL FBT7k6OPyNmDyY7K5fqk0Q0= X-Google-Smtp-Source: AGHT+IEWPqcfJ2REikNXMAW6z/puLD4y0ip8TxjmfoL3CODR4Hzvwo/qBO5ff2M/WxgU3TKoqeiyMQ== X-Received: by 2002:a17:90b:4b43:b0:27d:2dde:5979 with SMTP id mi3-20020a17090b4b4300b0027d2dde5979mr6519320pjb.5.1700435157217; Sun, 19 Nov 2023 15:05:57 -0800 (PST) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id w3-20020a17090ac98300b0027669cbc30asm6835933pjt.1.2023.11.19.15.05.55 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 19 Nov 2023 15:05:56 -0800 (PST) Content-Language: en-US In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:274639 Archived-At: This is a multi-part message in MIME format. --------------HFC8aug65ZI4H50QmbSChXjz Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 11/19/2023 12:17 PM, Jim Porter wrote: > On 11/19/2023 12:38 AM, Michael Albinus wrote: >> Would it be worth to emphasize, that a declaration of x changes this? >> That is, when a variable is declared, both lexical and dynamic binding >> behave identically. > > Thanks, that's probably a good idea. We should mention this in the > section that introduces 'defvar'. I'll work on adding that. Ok, what about this? I just added a mention to the 'defvar' section about this, and cross-referenced the two sections. --------------HFC8aug65ZI4H50QmbSChXjz Content-Type: text/plain; charset=UTF-8; name="0001-Introduce-let-using-lexical-binding-in-the-Lisp-Intr.patch" Content-Disposition: attachment; filename*0="0001-Introduce-let-using-lexical-binding-in-the-Lisp-Intr.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA5ZGI2NzU2NTZlYTc2YTQwMWE3OTJhNzExMjMxNzY2YjNkN2E4N2QyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFdlZCwgMjUgT2N0IDIwMjMgMjA6NDM6NTcgLTA3MDAKU3ViamVjdDogW1BB VENIXSBJbnRyb2R1Y2UgJ2xldCcgdXNpbmcgbGV4aWNhbCBiaW5kaW5nIGluIHRoZSBMaXNw CiBJbnRyb2R1Y3Rpb24KCkJ1ZyM2Njc1Ni4KCiogZG9jL2xpc3BpbnRyby9lbWFjcy1saXNw LWludHJvLnRleGkgKFByZXZlbnQgY29uZnVzaW9uKTogUmV3b3JrIHRoZQpleHBsYW5hdGlv biB0byBkaXNjdXNzIGhvdyB0aGluZ3Mgd29yayB1bmRlciBsZXhpY2FsIGJpbmRpbmcuCihI b3cgbGV0IEJpbmRzIFZhcmlhYmxlcyk6IERlc2NyaWJlIHRoZSBkaWZmZXJlbmNlcyBiZXR3 ZWVuIGxleGljYWwKYW5kIGR5bmFtaWMgYmluZGluZyAoaW5jbHVkaW5nIGhvdyB0byBjb25m aWd1cmUgaXQpLgooZGVmdmFyKTogTWVudGlvbiB0aGF0ICdkZWZ2YXInIGRlY2xhcmVzIHZh cmlhYmxlcyBhcyBhbHdheXMKZHluYW1pY2FsbHktYm91bmQuCi0tLQogZG9jL2xpc3BpbnRy by9lbWFjcy1saXNwLWludHJvLnRleGkgfCAxMzMgKysrKysrKysrKysrKysrKysrKysrKyst LS0tLQogMSBmaWxlIGNoYW5nZWQsIDExMCBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9kb2MvbGlzcGludHJvL2VtYWNzLWxpc3AtaW50cm8udGV4aSBi L2RvYy9saXNwaW50cm8vZW1hY3MtbGlzcC1pbnRyby50ZXhpCmluZGV4IGM1YjMzYWM1ZWFh Li45YThiOTNmYmQzZSAxMDA2NDQKLS0tIGEvZG9jL2xpc3BpbnRyby9lbWFjcy1saXNwLWlu dHJvLnRleGkKKysrIGIvZG9jL2xpc3BpbnRyby9lbWFjcy1saXNwLWludHJvLnRleGkKQEAg LTM1OTEsNiArMzU5MSw3IEBAIGxldAogKiBQYXJ0cyBvZiBsZXQgRXhwcmVzc2lvbjo6CiAq IFNhbXBsZSBsZXQgRXhwcmVzc2lvbjo6CiAqIFVuaW5pdGlhbGl6ZWQgbGV0IFZhcmlhYmxl czo6CisqIEhvdyBsZXQgQmluZHMgVmFyaWFibGVzOjoKIEBlbmQgbWVudQogCiBAaWZub3R0 ZXgKQEAgLTM2MDEsMjUgKzM2MDIsMjIgQEAgUHJldmVudCBjb25mdXNpb24KIEBjaW5kZXgg QHNhbXB7bG9jYWwgdmFyaWFibGV9IGRlZmluZWQKIEBjaW5kZXggQHNhbXB7dmFyaWFibGUs IGxvY2FsfSwgZGVmaW5lZAogVGhlIEBjb2Rle2xldH0gc3BlY2lhbCBmb3JtIHByZXZlbnRz IGNvbmZ1c2lvbi4gIEBjb2Rle2xldH0gY3JlYXRlcyBhCi1uYW1lIGZvciBhIEBkZm57bG9j YWwgdmFyaWFibGV9IHRoYXQgb3ZlcnNoYWRvd3MgYW55IHVzZSBvZiB0aGUgc2FtZQotbmFt ZSBvdXRzaWRlIHRoZSBAY29kZXtsZXR9IGV4cHJlc3Npb24uICBUaGlzIGlzIGxpa2UgdW5k ZXJzdGFuZGluZwotdGhhdCB3aGVuZXZlciB5b3VyIGhvc3QgcmVmZXJzIHRvIGBgdGhlIGhv dXNlJycsIGhlIG1lYW5zIGhpcyBob3VzZSwgbm90Ci15b3Vycy4gIChTeW1ib2xzIHVzZWQg aW4gYXJndW1lbnQgbGlzdHMgd29yayB0aGUgc2FtZSB3YXkuCituYW1lIGZvciBhIEBkZm57 bG9jYWwgdmFyaWFibGV9IHRoYXQgb3ZlcnJpZGVzIGFueSB1c2Ugb2YgdGhlIHNhbWUKK25h bWUgb3V0c2lkZSB0aGUgQGNvZGV7bGV0fSBleHByZXNzaW9uIChpbiBjb21wdXRlciBzY2ll bmNlIGphcmdvbiwgd2UKK2NhbGwgdGhpcyBgYGJpbmRpbmcnJyB0aGUgdmFyaWFibGUpLiAg VGhpcyBpcyBsaWtlIHVuZGVyc3RhbmRpbmcgdGhhdAoraW4geW91ciBob3N0J3MgaG9tZSwg d2hlbmV2ZXIgaGUgcmVmZXJzIHRvIGBgdGhlIGhvdXNlJycsIGhlIG1lYW5zIGhpcworaG91 c2UsIG5vdCB5b3Vycy4gIChTeW1ib2xzIHVzZWQgaW4gYXJndW1lbnQgbGlzdHMgd29yayB0 aGUgc2FtZSB3YXkuCiBAeHJlZntkZWZ1biwgLCBUaGUgQGNvZGV7ZGVmdW59IE1hY3JvfS4p CiAKLUxvY2FsIHZhcmlhYmxlcyBjcmVhdGVkIGJ5IGEgQGNvZGV7bGV0fSBleHByZXNzaW9u IHJldGFpbiB0aGVpciB2YWx1ZQotQGVtcGh7b25seX0gd2l0aGluIHRoZSBAY29kZXtsZXR9 IGV4cHJlc3Npb24gaXRzZWxmIChhbmQgd2l0aGluCi1leHByZXNzaW9ucyBjYWxsZWQgd2l0 aGluIHRoZSBAY29kZXtsZXR9IGV4cHJlc3Npb24pOyB0aGUgbG9jYWwKLXZhcmlhYmxlcyBo YXZlIG5vIGVmZmVjdCBvdXRzaWRlIHRoZSBAY29kZXtsZXR9IGV4cHJlc3Npb24uCi0KLUFu b3RoZXIgd2F5IHRvIHRoaW5rIGFib3V0IEBjb2Rle2xldH0gaXMgdGhhdCBpdCBpcyBsaWtl IGEgQGNvZGV7c2V0cX0KLXRoYXQgaXMgdGVtcG9yYXJ5IGFuZCBsb2NhbC4gIFRoZSB2YWx1 ZXMgc2V0IGJ5IEBjb2Rle2xldH0gYXJlCi1hdXRvbWF0aWNhbGx5IHVuZG9uZSB3aGVuIHRo ZSBAY29kZXtsZXR9IGlzIGZpbmlzaGVkLiAgVGhlIHNldHRpbmcKLW9ubHkgYWZmZWN0cyBl eHByZXNzaW9ucyB0aGF0IGFyZSBpbnNpZGUgdGhlIGJvdW5kcyBvZiB0aGUgQGNvZGV7bGV0 fQotZXhwcmVzc2lvbi4gIEluIGNvbXB1dGVyIHNjaWVuY2UgamFyZ29uLCB3ZSB3b3VsZCBz YXkgdGhlIGJpbmRpbmcgb2YKLWEgc3ltYm9sIGlzIHZpc2libGUgb25seSBpbiBmdW5jdGlv bnMgY2FsbGVkIGluIHRoZSBAY29kZXtsZXR9IGZvcm07Ci1pbiBFbWFjcyBMaXNwLCB0aGUg ZGVmYXVsdCBzY29waW5nIGlzIGR5bmFtaWMsIG5vdCBsZXhpY2FsLiAgKFRoZQotbm9uLWRl ZmF1bHQgbGV4aWNhbCBiaW5kaW5nIGlzIG5vdCBkaXNjdXNzZWQgaW4gdGhpcyBtYW51YWwu KQorQW5vdGhlciB3YXkgdG8gdGhpbmsgYWJvdXQgQGNvZGV7bGV0fSBpcyB0aGF0IGl0IGRl ZmluZXMgYSBwbGFjZSBpbgoreW91ciBjb2RlIHdoZXJlIHRoZSB2YXJpYWJsZXMgeW91IG5h bWVkIGhhdmUgdGhlaXIgb3duIGxvY2FsIG1lYW5pbmcuCitPdXRzaWRlIG9mIHRoZSBAY29k ZXtsZXR9IGJvZHksIHRoZXkgaGF2ZSBhbm90aGVyIG1lYW5pbmcgKG9yIHRoZXkgbWF5Citu b3QgYmUgZGVmaW5lZCBhdCBhbGwpLiAgVGhpcyBtZWFucyB0aGF0IGluc2lkZSB0aGUgQGNv ZGV7bGV0fSBib2R5LAorY2FsbGluZyBAY29kZXtzZXRxfSBmb3IgYSB2YXJpYWJsZSBuYW1l ZCBieSB0aGUgQGNvZGV7bGV0fSBleHByZXNzaW9uCit3aWxsIHNldCB0aGUgdmFsdWUgb2Yg dGhlIEBlbXBoe2xvY2FsfSB2YXJpYWJsZSBvZiB0aGF0IG5hbWUuICBUaGlzCithbHNvIG1l YW5zIHRoYXQgb3V0c2lkZSBvZiB0aGUgQGNvZGV7bGV0fSBib2R5LCBjYWxsaW5nIEBjb2Rl e3NldHF9Citmb3IgYSB2YXJpYWJsZSBuYW1lZCBieSB0aGUgQGNvZGV7bGV0fSBleHByZXNz aW9uIHdpbGwgQGVtcGh7bm90fQorYWZmZWN0IHRoYXQgbG9jYWwgdmFyaWFibGUuCiAKIEBj b2Rle2xldH0gY2FuIGNyZWF0ZSBtb3JlIHRoYW4gb25lIHZhcmlhYmxlIGF0IG9uY2UuICBB bHNvLAogQGNvZGV7bGV0fSBnaXZlcyBlYWNoIHZhcmlhYmxlIGl0IGNyZWF0ZXMgYW4gaW5p dGlhbCB2YWx1ZSwgZWl0aGVyIGEKQEAgLTM3NzksNiArMzc3Nyw5MyBAQCBVbmluaXRpYWxp emVkIGxldCBWYXJpYWJsZXMKIEBzYW1weyVzfS4pICBUaGUgZm91ciB2YXJpYWJsZXMgYXMg YSBncm91cCBhcmUgcHV0IGludG8gYSBsaXN0IHRvCiBkZWxpbWl0IHRoZW0gZnJvbSB0aGUg Ym9keSBvZiB0aGUgQGNvZGV7bGV0fS4KIAorQG5vZGUgSG93IGxldCBCaW5kcyBWYXJpYWJs ZXMKK0BzdWJzZWN0aW9uIEhvdyBAY29kZXtsZXR9IEJpbmRzIFZhcmlhYmxlcworQGNpbmRl eCBMZXhpY2FsIGJpbmRpbmcKK0BjaW5kZXggQmluZGluZywgbGV4aWNhbAorQGNpbmRleCBE eW5hbWljIGJpbmRpbmcKK0BjaW5kZXggQmluZGluZywgZHluYW1pYworCitFbWFjcyBMaXNw IHN1cHBvcnRzIHR3byBkaWZmZXJlbnQgd2F5cyBvZiBiaW5kaW5nIHZhcmlhYmxlIG5hbWVz IHRvCit0aGVpciB2YWx1ZXMuICBUaGVzZSB3YXlzIGFmZmVjdCB0aGUgcGFydHMgb2YgeW91 ciBwcm9ncmFtIHdoZXJlIGEKK3BhcnRpY3VsYXIgYmluZGluZyBpcyB2YWxpZCAoaW4gY29t cHV0ZXIgc2NpZW5jZSBqYXJnb24sIHdlIGNhbGwgdGhlc2UKK3BhcnRzIGEgYGBzY29wZScn KS4gIEZvciBoaXN0b3JpY2FsIHJlYXNvbnMsIEVtYWNzIExpc3AgdXNlcyBhIGZvcm0gb2YK K3ZhcmlhYmxlIGJpbmRpbmcgY2FsbGVkIGBgZHluYW1pYyBiaW5kaW5nJycgYnkgZGVmYXVs dC4gIEhvd2V2ZXIsIGluCit0aGlzIG1hbnVhbCB3ZSBkaXNjdXNzIHRoZSBwcmVmZXJyZWQg Zm9ybSBvZiBiaW5kaW5nLCBjYWxsZWQgYGBsZXhpY2FsCitiaW5kaW5nJycsIHVubGVzcyBv dGhlcndpc2Ugbm90ZWQgKGluIHRoZSBmdXR1cmUsIHRoZSBFbWFjcworbWFpbnRhaW5lcnMg cGxhbiB0byBjaGFuZ2UgdGhlIGRlZmF1bHQgdG8gbGV4aWNhbCBiaW5kaW5nKS4gIElmIHlv dQoraGF2ZSBwcm9ncmFtbWVkIGluIG90aGVyIGxhbmd1YWdlcyBiZWZvcmUsIHlvdSdyZSBs aWtlbHkgYWxyZWFkeQorZmFtaWxpYXIgd2l0aCBob3cgbGV4aWNhbCBiaW5kaW5nIGJlaGF2 ZXMuCisKK0luIG9yZGVyIHRvIHVzZSBsZXhpY2FsIGJpbmRpbmcgaW4gYSBwcm9ncmFtLCB5 b3Ugc2hvdWxkIGFkZCB0aGlzIHRvCit0aGUgZmlyc3QgbGluZSBvZiB5b3VyIEVtYWNzIExp c3AgZmlsZToKKworQGV4YW1wbGUKKzs7OyAtKi0gbGV4aWNhbC1iaW5kaW5nOiB0IC0qLQor QGVuZCBleGFtcGxlCisKK0ZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoaXMsIEBweHJl ZntTZWxlY3RpbmcgTGlzcCBEaWFsZWN0LCAsICwKK2VsaXNwLCBUaGUgRW1hY3MgTGlzcCBS ZWZlcmVuY2UgTWFudWFsfS4KKworQXMgd2UgZGlzY3Vzc2VkIGJlZm9yZSwgdW5kZXIgbGV4 aWNhbCBiaW5kaW5nLCBAY29kZXtsZXR9IGRlZmluZXMgYQorQGVtcGh7cGxhY2V9IGluIHlv dXIgY29kZSB3aGVyZSB0aGUgdmFyaWFibGVzIGhhdmUgdGhlaXIgb3duIGxvY2FsCittZWFu aW5nLiAgVW5kZXIgZHluYW1pYyBiaW5kaW5nLCB0aGUgcnVsZXMgYXJlIGRpZmZlcmVudDog aW5zdGVhZCwgeW91CithcmUgZGVmaW5pbmcgYSBAZW1waHt0aW1lfSBpbiB5b3VyIGNvZGUg d2hlbiB0aGUgdmFyaWFibGVzIGhhdmUgdGhlaXIKK293biBsb2NhbCBtZWFuaW5nLgorCitB bm90aGVyIHdheSB0byB0aGluayBhYm91dCBAY29kZXtsZXR9IHdoZW4gdXNpbmcgZHluYW1p YyBiaW5kaW5nIGlzCit0aGF0IGl0IGlzIGxpa2UgYSBAY29kZXtzZXRxfSB0aGF0IGlzIHRl bXBvcmFyeSBhbmQgbG9jYWwuICBUaGUgdmFsdWVzCitzZXQgYnkgQGNvZGV7bGV0fSBhcmUg YXV0b21hdGljYWxseSB1bmRvbmUgd2hlbiB0aGUgQGNvZGV7bGV0fSBpcworZmluaXNoZWQu ICBUaGUgc2V0dGluZyBvbmx5IGFmZmVjdHMgZXhwcmVzc2lvbnMgdGhhdCBhcmUgaW5zaWRl IHRoZQorYm91bmRzIG9mIHRoZSBAY29kZXtsZXR9IGV4cHJlc3Npb24uCisKK0luIHNvbWUg Y2FzZXMsIGJvdGggbGV4aWNhbCBhbmQgZHluYW1pYyBiaW5kaW5nIGJlaGF2ZSBpZGVudGlj YWxseS4KK0hvd2V2ZXIsIGluIG90aGVyIGNhc2VzLCB0aGV5IGNhbiBjaGFuZ2UgdGhlIG1l YW5pbmcgb2YgeW91ciBwcm9ncmFtLgorRm9yIGV4YW1wbGUsIHVuZGVyIGxleGljYWwgYmlu ZGluZywgaWYgeW91IGNhbGwgYSBmdW5jdGlvbiBpbnNpZGUgb2YgYQorQGNvZGV7bGV0fSBi b2R5LCB0aGF0IGZ1bmN0aW9uJ3MgYm9keSB3b3VsZCBiZSB1bmFibGUgdG8gYGBzZWUnJyAo b3IKK21vZGlmeSkgdGhlIHZhbHVlIG9mIGEgbG9jYWwgdmFyaWFibGUgZnJvbSB0aGUgQGNv ZGV7bGV0fSBleHByZXNzaW9uOgorCitAZXhhbXBsZQorOzs7IC0qLSBsZXhpY2FsLWJpbmRp bmc6IHQgLSotCisKKyhzZXRxIHggMSkKKworKGRlZnVuIGdldHggKCkKKyAgeCkKKworKGxl dCAoKHggMikpCisgIChnZXR4KSkKKyAgICAgQHJlc3VsdHt9IDEKK0BlbmQgZXhhbXBsZQor CitAbm9pbmRlbnQKK0lmIHdlIHVzZSBkeW5hbWljIGJpbmRpbmcgaW5zdGVhZCwgdGhlIGJl aGF2aW9yIGlzIGRpZmZlcmVudDoKKworQGV4YW1wbGUKKzs7OyAtKi0gbGV4aWNhbC1iaW5k aW5nOiBuaWwgLSotCisKKyhzZXRxIHggMSkKKworKGRlZnVuIGdldHggKCkKKyAgeCkKKwor KGxldCAoKHggMikpCisgIChnZXR4KSkKKyAgICAgQHJlc3VsdHt9IDIKK0BlbmQgZXhhbXBs ZQorCitOb3csIHRoZSByZXN1bHQgb2YgQHNhbXB7KGdldHgpfSBpcyBAc2FtcHsyfSEgIFRo YXQncyBiZWNhdXNlIHVuZGVyCitkeW5hbWljIGJpbmRpbmcsIHdoZW4gQGNvZGV7Z2V0eH0g bG9va3MgZm9yIHRoZSB2YWx1ZSBvZiBAY29kZXt4fSwgaXQKK3NlZXMgdGhlIHZhbHVlIHdl IHNldCBpbiBvdXIgQGNvZGV7bGV0fSBleHByZXNzaW9uLiAgSW4gb3RoZXIgd29yZHMsCit0 aGUgY2FsbCB0byBAY29kZXtnZXR4fSBoYXBwZW5zIGR1cmluZyB0aGUgQGVtcGh7dGltZX0g d2hlbiBvdXIKK0Bjb2Rle2xldH0gZXhwcmVzc2lvbiBpcyBhY3RpdmUuICBVbmRlciBsZXhp Y2FsIGJpbmRpbmcsIEBjb2Rle2dldHh9Citkb2Vzbid0IHNlZSB0aGUgdmFsdWUgZnJvbSBv dXIgQGNvZGV7bGV0fSBleHByZXNzaW9uLiAgVGhhdCdzIGJlY2F1c2UKK2l0IGhhcHBlbnMg aW4gYSBkaWZmZXJlbnQgQGVtcGh7cGxhY2V9IHRoYW4gdGhlIEBjb2Rle2xldH0gYm9keS4K KworKFNvbWUgdmFyaWFibGVzIGFyZSBhbHNvIGBgc3BlY2lhbCcnLCBhbmQgdGhleSBhcmUg YWx3YXlzIGR5bmFtaWNhbGx5Citib3VuZCBldmVuIHdoZW4gQGNvZGV7bGV4aWNhbC1iaW5k aW5nfSBpcyBAY29kZXt0fS4gIEB4cmVme2RlZnZhciwgLAorSW5pdGlhbGl6aW5nIGEgVmFy aWFibGUgd2l0aCBAY29kZXtkZWZ2YXJ9fS4pCisKIEBub2RlIGlmCiBAc2VjdGlvbiBUaGUg QGNvZGV7aWZ9IFNwZWNpYWwgRm9ybQogQGZpbmRleCBpZgpAQCAtOTEzMCwxMiArOTIxNSwx NCBAQCBkZWZ2YXIKIGdpdmVuIGFuIGluaXRpYWwgdmFsdWUgYnkgdXNpbmcgdGhlIEBjb2Rl e2RlZnZhcn0gc3BlY2lhbCBmb3JtLiAgVGhlCiBuYW1lIGNvbWVzIGZyb20gYGBkZWZpbmUg dmFyaWFibGUnJy4KIAotVGhlIEBjb2Rle2RlZnZhcn0gc3BlY2lhbCBmb3JtIGlzIHNpbWls YXIgdG8gQGNvZGV7c2V0cX0gaW4gdGhhdCBpdCBzZXRzCi10aGUgdmFsdWUgb2YgYSB2YXJp YWJsZS4gIEl0IGlzIHVubGlrZSBAY29kZXtzZXRxfSBpbiB0d28gd2F5czogZmlyc3QsCi1p dCBvbmx5IHNldHMgdGhlIHZhbHVlIG9mIHRoZSB2YXJpYWJsZSBpZiB0aGUgdmFyaWFibGUg ZG9lcyBub3QgYWxyZWFkeQotaGF2ZSBhIHZhbHVlLiAgSWYgdGhlIHZhcmlhYmxlIGFscmVh ZHkgaGFzIGEgdmFsdWUsIEBjb2Rle2RlZnZhcn0gZG9lcwotbm90IG92ZXJyaWRlIHRoZSBl eGlzdGluZyB2YWx1ZS4gIFNlY29uZCwgQGNvZGV7ZGVmdmFyfSBoYXMgYQotZG9jdW1lbnRh dGlvbiBzdHJpbmcuCitUaGUgQGNvZGV7ZGVmdmFyfSBzcGVjaWFsIGZvcm0gaXMgc2ltaWxh ciB0byBAY29kZXtzZXRxfSBpbiB0aGF0IGl0CitzZXRzIHRoZSB2YWx1ZSBvZiBhIHZhcmlh YmxlLiAgSXQgaXMgdW5saWtlIEBjb2Rle3NldHF9IGluIHRocmVlIHdheXM6CitmaXJzdCwg aXQgb25seSBzZXRzIHRoZSB2YWx1ZSBvZiB0aGUgdmFyaWFibGUgaWYgdGhlIHZhcmlhYmxl IGRvZXMgbm90CithbHJlYWR5IGhhdmUgYSB2YWx1ZS4gIElmIHRoZSB2YXJpYWJsZSBhbHJl YWR5IGhhcyBhIHZhbHVlLAorQGNvZGV7ZGVmdmFyfSBkb2VzIG5vdCBvdmVycmlkZSB0aGUg ZXhpc3RpbmcgdmFsdWUuICBTZWNvbmQsIGl0IG1hcmtzCit0aGUgdmFyaWFibGUgYXMgYGBz cGVjaWFsJycgc28gdGhhdCBpdCBpcyBhbHdheXMgZHluYW1pY2FsbHkgYm91bmQsCitldmVu IHdoZW4gQGNvZGV7bGV4aWNhbC1iaW5kaW5nfSBpcyBAY29kZXt0fSAoQHB4cmVme0hvdyBs ZXQgQmluZHMKK1ZhcmlhYmxlc30pLiAgVGhpcmQsIEBjb2Rle2RlZnZhcn0gaGFzIGEgZG9j dW1lbnRhdGlvbiBzdHJpbmcuCiAKIChUaGVyZSBpcyBhIHJlbGF0ZWQgbWFjcm8sIEBjb2Rl e2RlZmN1c3RvbX0sIGRlc2lnbmVkIGZvciB2YXJpYWJsZXMKIHRoYXQgcGVvcGxlIGN1c3Rv bWl6ZS4gIEl0IGhhcyBtb3JlIGZlYXR1cmVzIHRoYW4gQGNvZGV7ZGVmdmFyfS4KLS0gCjIu MjUuMQoK --------------HFC8aug65ZI4H50QmbSChXjz--