From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 31 00:50:07 2024 Received: (at submit) by debbugs.gnu.org; 31 Jan 2024 05:50:07 +0000 Received: from localhost ([127.0.0.1]:37294 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rV3U4-00035P-Ap for submit@debbugs.gnu.org; Wed, 31 Jan 2024 00:50:07 -0500 Received: from lists.gnu.org ([2001:470:142::17]:56016) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rV3U1-00034q-4J for submit@debbugs.gnu.org; Wed, 31 Jan 2024 00:50:03 -0500 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 1rV3Tm-0000O5-0d for bug-gnu-emacs@gnu.org; Wed, 31 Jan 2024 00:49:46 -0500 Received: from mail-oa1-x36.google.com ([2001:4860:4864:20::36]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rV3Th-0006GY-UO for bug-gnu-emacs@gnu.org; Wed, 31 Jan 2024 00:49:45 -0500 Received: by mail-oa1-x36.google.com with SMTP id 586e51a60fabf-210c535a19bso2747938fac.1 for ; Tue, 30 Jan 2024 21:49:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706680180; x=1707284980; darn=gnu.org; h=subject:from:to:content-language:mime-version:date:message-id:from :to:cc:subject:date:message-id:reply-to; bh=OY9HwQq7T83Jy/QerjX30SL6smF30vj4DTRAdZwqFes=; b=RVrhSsidArB0flXO1KPLQ7y5MiAF9YsadRSEghKsno9uKQmuqRA8UFc0deZ9VuLPL5 etRWE2ys65zi2o/R7RluU34N5DjhV9ULYQFQsekoL/vPFOGaUSBSryrWBYtz/FdLoaYR d9pyBpetcQK1qiv5rd0YoCAepMResH5LRMSzSetr7BotOB8w2DAT2qng2fxJGxyGSBH6 5jC/zA0j+aJ2RU/NfMWGmAv4rlBOHkPlUaaCnGNmY5KJdkZVseIHOZvkrIjJQzjr9yMi Gk58cu7BJVgsIv4LL/G8dCRqlAkCpb1/9fBavT4QtdflgQ5SkDVSj9OWB7SxFFr4E7qZ MUjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706680180; x=1707284980; h=subject:from:to:content-language:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=OY9HwQq7T83Jy/QerjX30SL6smF30vj4DTRAdZwqFes=; b=n/vEuGThP9/rqzVay4ak/5Liy3y2fM7m2rPsliHzq+/NS8bV1b8Q4AfHLtnBZpHKY9 HivjjwMZQGpWdvCr8tHu+OVuErnniWkSJG+8aGzHQOapi5waCpOUKiFN9B3pWwLUMGyr R+hvswClvmmMCjLrMPEw+r6Vz0aQc81ope1gvFKCQ412rNGOZyyjtTNbyXvg4OqzZATi MnZZ2TrpJplkZ1vsY2YX/HjAKZdsU8JRZVpwftE8g4RacmMwwldduZlfbxmDdZ6NRkXk ots03PTNDFlChfTci7HEk/qnkxnYXEJBFF8CcLI5LnbrQ/OetnaFy4CSXm6eHrpEkzD0 uFOA== X-Gm-Message-State: AOJu0Yw4GMetRYMlSccskQpE7/EXuvT8dxLBoYsVsvvJ8R89VTIxcpLA mgZ5J4W4AtIwdshPMWr0kuLo9lCDDPY6rHLz3smqVMQvqV2Z/rrRmKWu+sjA X-Google-Smtp-Source: AGHT+IGU0KfDA2OnAKdv9bVPat1Vet8qSB8ubsuJZtBoDWffb7y817SaHB2yr5WpdNs1b3iNz8HAbQ== X-Received: by 2002:a05:6870:61cd:b0:218:51a7:66bc with SMTP id b13-20020a05687061cd00b0021851a766bcmr988403oah.19.1706680180015; Tue, 30 Jan 2024 21:49:40 -0800 (PST) Received: from [192.168.1.2] (076-168-148-233.res.spectrum.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id k68-20020a633d47000000b005ce998b9391sm9267795pga.67.2024.01.30.21.49.39 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 30 Jan 2024 21:49:39 -0800 (PST) Content-Type: multipart/mixed; boundary="------------P0YHNpuM6Y5Lk3AYdsp0delw" Message-ID: Date: Tue, 30 Jan 2024 21:49:39 -0800 MIME-Version: 1.0 X-Mozilla-News-Host: news://news.gmane.io:119 Content-Language: en-US To: bug-gnu-emacs@gnu.org From: Jim Porter Subject: 30.0.50; [PATCH] Document Eshell built-in commands' arguments in the manual Received-SPF: pass client-ip=2001:4860:4864:20::36; envelope-from=jporterbugs@gmail.com; helo=mail-oa1-x36.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) This is a multi-part message in MIME format. --------------P0YHNpuM6Y5Lk3AYdsp0delw Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Eshell's manual documents all its built-in commands, but the documentation is too brief in my opinion. It should document the command-line options. Here's a patch to do so. (Later, I'd like to break this giant list into subsections, but I'll wait on that since any changes to *this* patch would likely cause all sorts of headaches with a reorganization patch.) --------------P0YHNpuM6Y5Lk3AYdsp0delw Content-Type: text/plain; charset=UTF-8; name="0001-Document-arguments-to-Eshell-s-built-in-commands.patch" Content-Disposition: attachment; filename*0="0001-Document-arguments-to-Eshell-s-built-in-commands.patch" Content-Transfer-Encoding: base64 RnJvbSA4ZjIwNWE2NmU4NmNkNzI2MzY1NThmMjk3NGQ5OTQ0MGRlYzhlMDk3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMTUgQXVnIDIwMjMgMTg6NTE6MjAgLTA3MDAKU3ViamVjdDogW1BB VENIXSBEb2N1bWVudCBhcmd1bWVudHMgdG8gRXNoZWxsJ3MgYnVpbHQtaW4gY29tbWFuZHMK CiogbGlzcC9lc2hlbGwvZW0tdW5peC5lbCAoZXNoZWxsL2xuKTogTElOS19OQU1FIGlzIHJl cXVpcmVkLgoKKiBsaXNwL2VzaGVsbC9lc2gtZXh0LmVsIChlc2hlbGwvYWRkcGF0aCk6Ciog bGlzcC9lc2hlbGwvZXNoLXZhci5lbCAoZXNoZWxsL2Vudik6IEltcHJvdmUgaGVscCBzdHJp bmdzIHNsaWdodGx5LgoKKiBkb2MvbWlzYy9lc2hlbGwudGV4aSAoU2NyaXB0cyk6IEV4cGxh aW4gJDAsICQxLCBldGMuCihEb2xsYXJzIEV4cGFuc2lvbik6IFVzZSAiQGRvdHN7fSIgaW5z dGVhZCBvZiAiLi4uIi4KKEJ1aWx0LWlucywgVHJhbXAgZXh0ZW5zaW9ucywgRXh0cmEgYnVp bHQtaW4gY29tbWFuZHMpOiBEb2N1bWVudApjb21tYW5kLWxpbmUgYXJndW1lbnRzLgotLS0K IGRvYy9taXNjL2VzaGVsbC50ZXhpICAgfCA2NTEgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0KIGxpc3AvZXNoZWxsL2VtLXVuaXguZWwgfCAgIDggKy0KIGxp c3AvZXNoZWxsL2VzaC1leHQuZWwgfCAgIDYgKy0KIGxpc3AvZXNoZWxsL2VzaC12YXIuZWwg fCAgIDIgKy0KIDQgZmlsZXMgY2hhbmdlZCwgNDk1IGluc2VydGlvbnMoKyksIDE3MiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2MvbWlzYy9lc2hlbGwudGV4aSBiL2RvYy9taXNj L2VzaGVsbC50ZXhpCmluZGV4IGRhNWUxZWYxZDAzLi5kN2U1MTQ0NWRkNyAxMDA2NDQKLS0t IGEvZG9jL21pc2MvZXNoZWxsLnRleGkKKysrIGIvZG9jL21pc2MvZXNoZWxsLnRleGkKQEAg LTQ4MSw3MiArNDgxLDg4IEBAIEJ1aWx0LWlucwogCiBAdGFibGUgQGNvZGUKIAotQGl0ZW0g LgorQGl0ZW0gLiBAdmFye2ZpbGV9IFtAdmFye2FyZ3VtZW50fV1AZG90c3t9CiBAY21pbmRl eCAuCi1Tb3VyY2UgYW4gRXNoZWxsIGZpbGUgaW4gdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQu ICBUaGlzIGlzIG5vdCB0byBiZQotY29uZnVzZWQgd2l0aCB0aGUgY29tbWFuZCBAY29tbWFu ZHtzb3VyY2V9LCB3aGljaCBzb3VyY2VzIGEgZmlsZSBpbiBhCi1zdWJzaGVsbCBlbnZpcm9u bWVudC4KK1NvdXJjZSBhbiBFc2hlbGwgc2NyaXB0IG5hbWVkIEB2YXJ7ZmlsZX0gaW4gdGhl IGN1cnJlbnQgZW52aXJvbm1lbnQsCitwYXNzaW5nIGFueSBAdmFye2FyZ3VtZW50c30gdG8g dGhlIHNjcmlwdCAoQHB4cmVme1NjcmlwdHN9KS4gIFRoaXMgaXMKK25vdCB0byBiZSBjb25m dXNlZCB3aXRoIHRoZSBjb21tYW5kIEBjb21tYW5ke3NvdXJjZX0sIHdoaWNoIHNvdXJjZXMg YQorZmlsZSBpbiBhIHN1YnNoZWxsIGVudmlyb25tZW50LgogCiBAaXRlbSBhZGRwYXRoCitA aXRlbXggYWRkcGF0aCBbLWJdIEB2YXJ7ZGlyZWN0b3J5fUBkb3Rze30KIEBjbWluZGV4IGFk ZHBhdGgKLUFkZHMgYSBnaXZlbiBwYXRoIG9yIHNldCBvZiBwYXRocyB0byB0aGUgUEFUSCBl bnZpcm9ubWVudCB2YXJpYWJsZSwgb3IsCi13aXRoIG5vIGFyZ3VtZW50cywgcHJpbnRzIHRo ZSBjdXJyZW50IHBhdGhzIGluIHRoaXMgdmFyaWFibGUuCitBZGRzIHRoZSBkaXJlY3Rvcnkg KG9yIGxpc3Qgb2YgZGlyZWN0b3JpZXMpIEB2YXJ7ZGlyZWN0b3J5fSB0byB0aGUKK0Bjb2Rl eyRQQVRIfSBlbnZpcm9ubWVudCB2YXJpYWJsZS4gIEJ5IGRlZmF1bHQsIHRoaXMgYWRkcyB0 aGUKK2RpcmVjdG9yaWVzIHRvIHRoZSBlbmQgb2YgQGNvZGV7JFBBVEh9OyBieSBwYXNzaW5n IEBjb2Rley1ifSBvcgorQGNvZGV7LS1iZWdpbn0sIEVzaGVsbCB3aWxsIGluc3RlYWQgYWRk IHRoZSBkaXJlY3RvcmllcyB0byB0aGUKK2JlZ2lubmluZy4KKworV2l0aCBubyBkaXJlY3Rv cmllcywgcHJpbnQgdGhlIGxpc3Qgb2YgZGlyZWN0b3JpZXMgY3VycmVudGx5IHN0b3JlZCBp bgorQGNvZGV7JFBBVEh9LgogCiBAaXRlbSBhbGlhcworQGl0ZW14IGFsaWFzIEB2YXJ7bmFt ZX0gW0B2YXJ7Y29tbWFuZH1dCiBAY21pbmRleCBhbGlhcwotRGVmaW5lIGFuIGFsaWFzIChA cHhyZWZ7QWxpYXNlc30pLiAgVGhpcyBhZGRzIGl0IHRvIHRoZSBhbGlhc2VzIGZpbGUuCitE ZWZpbmUgYW4gYWxpYXMgbmFtZWQgQHZhcntuYW1lfSBhbmQgZXhwYW5kaW5nIHRvIEB2YXJ7 Y29tbWFuZH0sCithZGRpbmcgaXQgdG8gdGhlIGFsaWFzZXMgZmlsZSAoQHB4cmVme0FsaWFz ZXN9KS4gIElmIEB2YXJ7Y29tbWFuZH0gaXMKK29taXR0ZWQsIGRlbGV0ZSB0aGUgYWxpYXMg bmFtZWQgQHZhcntuYW1lfS4gIFdpdGggbm8gYXJndW1lbnRzIGF0IGFsbCwKK2xpc3QgYWxs IHRoZSBjdXJyZW50bHktZGVmaW5lZCBhbGlhc2VzLgogCi1AaXRlbSBiYXNlbmFtZQorQGl0 ZW0gYmFzZW5hbWUgQHZhcntmaWxlbmFtZX0KIEBjbWluZGV4IGJhc2VuYW1lCi1SZXR1cm4g YSBmaWxlIG5hbWUgd2l0aG91dCBpdHMgZGlyZWN0b3J5LgorUmV0dXJuIEB2YXJ7ZmlsZW5h bWV9IHdpdGhvdXQgaXRzIGRpcmVjdG9yeS4KIAotQGl0ZW0gY2F0CitAaXRlbSBjYXQgQHZh cntmaWxlfUBkb3Rze30KIEBjbWluZGV4IGNhdAotQ29uY2F0ZW5hdGUgZmlsZSBjb250ZW50 cyBpbnRvIHN0YW5kYXJkIG91dHB1dC4gIElmIGluIGEgcGlwZWxpbmUsIG9yCi1pZiB0aGUg ZmlsZSBpcyBub3QgYSByZWd1bGFyIGZpbGUsIGRpcmVjdG9yeSwgb3Igc3ltbGluaywgdGhl biB0aGlzCi1jb21tYW5kIHJldmVydHMgdG8gdGhlIHN5c3RlbSdzIGRlZmluaXRpb24gb2Yg QGNvbW1hbmR7Y2F0fS4KK0NvbmNhdGVuYXRlIHRoZSBjb250ZW50cyBvZiBAdmFye2ZpbGVz fSB0byBzdGFuZGFyZCBvdXRwdXQuICBJZiBpbiBhCitwaXBlbGluZSwgb3IgaWYgYW55IG9m IHRoZSBmaWxlcyBpcyBub3QgYSByZWd1bGFyIGZpbGUsIGRpcmVjdG9yeSwgb3IKK3N5bWxp bmssIHRoZW4gdGhpcyBjb21tYW5kIHJldmVydHMgdG8gdGhlIHN5c3RlbSdzIGRlZmluaXRp b24gb2YKK0Bjb21tYW5ke2NhdH0uCiAKIEBpdGVtIGNkCitAaXRlbXggY2QgQHZhcntkaXJl Y3Rvcnl9CitAaXRlbXggY2QgLVtAdmFye259XQorQGl0ZW14IGNkID1bQHZhcntyZWdleHB9 XQogQGNtaW5kZXggY2QKLVRoaXMgY29tbWFuZCBjaGFuZ2VzIHRoZSBjdXJyZW50IHdvcmtp bmcgZGlyZWN0b3J5LiAgVXN1YWxseSwgaXQgaXMKLWludm9rZWQgYXMgQGtiZHtjZCBAdmFy e2Rpcn19IHdoZXJlIEBmaWxle0B2YXJ7ZGlyfX0gaXMgdGhlIG5ldwotd29ya2luZyBkaXJl Y3RvcnkuICBCdXQgQGNvbW1hbmR7Y2R9IGtub3dzIGFib3V0IGEgZmV3IHNwZWNpYWwKLWFy Z3VtZW50czoKK0NoYW5nZSB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4gIFRoaXMg Y29tbWFuZCBjYW4gdGFrZSBzZXZlcmFsCitmb3JtczoKIAotQGl0ZW1pemUgQG1pbnVze30K LUBpdGVtCi1XaGVuIGl0IHJlY2VpdmVzIG5vIGFyZ3VtZW50IGF0IGFsbCwgaXQgY2hhbmdl cyB0byB0aGUgaG9tZSBkaXJlY3RvcnkuCitAdGFibGUgQGNvZGUKIAotQGl0ZW0KLUdpdmlu ZyB0aGUgY29tbWFuZCBAa2Jke2NkIC19IGNoYW5nZXMgYmFjayB0byB0aGUgcHJldmlvdXMg d29ya2luZwotZGlyZWN0b3J5ICh0aGlzIGlzIHRoZSBzYW1lIGFzIEBrYmR7Y2QgJC19KS4K K0BpdGVtIGNkCitDaGFuZ2UgdG8gdGhlIHVzZXIncyBob21lIGRpcmVjdG9yeS4KIAotQGl0 ZW0KLVRoZSBjb21tYW5kIEBrYmR7Y2QgPX0gc2hvd3MgdGhlIGRpcmVjdG9yeSByaW5nLiAg RWFjaCBsaW5lIGlzCi1udW1iZXJlZC4KK0BpdGVtIGNkIEB2YXJ7ZGlyZWN0b3J5fQorQ2hh bmdlIHRvIHRoZSBkaXJlY3RvcnkgQHZhcntkaXJlY3Rvcnl9LgogCi1AaXRlbQotV2l0aCBA a2Jke2NkID1mb299LCBFc2hlbGwgc2VhcmNoZXMgdGhlIGRpcmVjdG9yeSByaW5nIGZvciBh IGRpcmVjdG9yeQotbWF0Y2hpbmcgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiBAc2FtcHtmb299 LCBhbmQgY2hhbmdlcyB0byB0aGF0Ci1kaXJlY3RvcnkuCitAaXRlbSBjZCAtCitDaGFuZ2Ug YmFjayB0byB0aGUgcHJldmlvdXMgd29ya2luZyBkaXJlY3RvcnkgKHRoaXMgaXMgdGhlIHNh bWUgYXMKK0BrYmR7Y2QgJC19KS4KIAotQGl0ZW0KLVdpdGggQGtiZHtjZCAtNDJ9LCB5b3Ug Y2FuIGFjY2VzcyB0aGUgZGlyZWN0b3J5IHN0YWNrIHNsb3RzIGJ5IG51bWJlci4KK0BpdGVt IGNkIC1AdmFye259CitDaGFuZ2UgdG8gdGhlIGRpcmVjdG9yeSBpbiB0aGUgQHZhcntudGh9 IHNsb3Qgb2YgdGhlIGRpcmVjdG9yeSBzdGFjay4KKworQGl0ZW0gY2QgPQorU2hvdyB0aGUg ZGlyZWN0b3J5IHJpbmcuICBFYWNoIGxpbmUgaXMgbnVtYmVyZWQuCisKK0BpdGVtIGNkID1A dmFye3JlZ2V4fQorU2VhcmNoIHRoZSBkaXJlY3RvcnkgcmluZyBmb3IgYSBkaXJlY3Rvcnkg bWF0Y2hpbmcgdGhlIHJlZ3VsYXIKK2V4cHJlc3Npb24gQHZhcntyZWdleHB9IGFuZCBjaGFu Z2UgdG8gdGhhdCBkaXJlY3RvcnkuCisKK0BlbmQgdGFibGUKIAotQGl0ZW0KIEB2aW5kZXgg ZXNoZWxsLWNkLXNob3dzLWRpcmVjdG9yeQogQHZpbmRleCBlc2hlbGwtbGlzdC1maWxlcy1h ZnRlci1jZAogSWYgQGNvZGV7ZXNoZWxsLWNkLXNob3dzLWRpcmVjdG9yeX0gaXMgbm9uLUBj b2Rle25pbH0sIEBjb21tYW5ke2NkfQogd2lsbCByZXBvcnQgdGhlIGRpcmVjdG9yeSBpdCBj aGFuZ2VzIHRvLiAgSWYKIEBjb2Rle2VzaGVsbC1saXN0LWZpbGVzLWFmdGVyLWNkfSBpcyBu b24tQGNvZGV7bmlsfSwgdGhlbiBAY29tbWFuZHtsc30KIGlzIGNhbGxlZCB3aXRoIGFueSBy ZW1haW5pbmcgYXJndW1lbnRzIGFmdGVyIGNoYW5naW5nIGRpcmVjdG9yaWVzLgotQGVuZCBp dGVtaXplCiAKLUBpdGVtIGNsZWFyCitAaXRlbSBjbGVhciBbQHZhcntzY3JvbGxiYWNrfV0K IEBjbWluZGV4IGNsZWFyCiBTY3JvbGxzIHRoZSBjb250ZW50cyBvZiB0aGUgRXNoZWxsIHdp bmRvdyBvdXQgb2Ygc2lnaHQsIGxlYXZpbmcgYQotYmxhbmsgd2luZG93LiAgSWYgcHJvdmlk ZWQgd2l0aCBhbiBvcHRpb25hbCBub24tQGNvZGV7bmlsfSBhcmd1bWVudCwKLXRoZSBzY3Jv bGxiYWNrIGNvbnRlbnRzIGFyZSBjbGVhcmVkIGluc3RlYWQuCitibGFuayB3aW5kb3cuICBJ ZiBAdmFye3Njcm9sbGJhY2t9IGlzIG5vbi1AY29kZXtuaWx9LCB0aGUgc2Nyb2xsYmFjawor Y29udGVudHMgYXJlIGNsZWFyZWQgaW5zdGVhZCwgYXMgd2l0aCBAY29tbWFuZHtjbGVhci1z Y3JvbGxiYWNrfS4KIAogQGl0ZW0gY2xlYXItc2Nyb2xsYmFjawogQGNtaW5kZXggY2xlYXIt c2Nyb2xsYmFjawpAQCAtNTU0LDIxICs1NzAsMzAgQEAgQnVpbHQtaW5zCiBjb21tYW5kIEBj b21tYW5ke2NsZWFyfSwgdGhpcyBjb21tYW5kIGRlbGV0ZXMgY29udGVudCBpbiB0aGUgRXNo ZWxsCiBidWZmZXIuCiAKLUBpdGVtIGNvbXBpbGUKK0BpdGVtIGNvbXBpbGUgWy1wIHwgLWld IFstbSBAdmFye21vZGUtbmFtZX1dIEB2YXJ7Y29tbWFuZH1AZG90c3t9CiBAY21pbmRleCBj b21waWxlCiBSdW4gYW4gZXh0ZXJuYWwgY29tbWFuZCwgc2VuZGluZyBpdHMgb3V0cHV0IHRv IGEgY29tcGlsYXRpb24gYnVmZmVyIGlmCiB0aGUgY29tbWFuZCB3b3VsZCBvdXRwdXQgdG8g dGhlIHNjcmVlbiBhbmQgaXMgbm90IHBhcnQgb2YgYSBwaXBlbGluZQotb3Igc3ViY29tbWFu ZC4gIFRoaXMgaXMgcGFydGljdWxhcmx5IHVzZWZ1bCB3aGVuIGRlZmluaW5nIGFsaWFzZXMs IHNvCitvciBzdWJjb21tYW5kLgorCitXaXRoIHRoZSBAY29kZXstcH0gb3IgQGNvZGV7LS1w bGFpbn0gb3B0aW9ucywgYWx3YXlzIHNlbmQgdGhlIG91dHB1dAordG8gdGhlIEVzaGVsbCBi dWZmZXI7IHNpbWlsYXJseSwgd2l0aCBAY29kZXstaX0gb3IKK0Bjb2Rley0taW50ZXJhY3Rp dmV9LCBhbHdheXMgc2VuZCB0aGUgb3V0cHV0IHRvIGEgY29tcGlsYXRpb24gYnVmZmVyLgor WW91IGNhbiBhbHNvIHNldCB0aGUgbW9kZSBvZiB0aGUgY29tcGlsYXRpb24gYnVmZmVyIHdp dGggQGNvZGV7LW0KK0B2YXJ7bW9kZS1uYW1lfX0gb3IgQGNvZGV7LS1tb2RlIEB2YXJ7bW9k ZS1uYW1lfX0uCisKK0Bjb21tYW5ke2NvbXBpbGV9IGlzIHBhcnRpY3VsYXJseSB1c2VmdWwg d2hlbiBkZWZpbmluZyBhbGlhc2VzLCBzbwogdGhhdCBpbnRlcmFjdGl2ZWx5LCB0aGUgb3V0 cHV0IHNob3dzIHVwIGluIGEgY29tcGlsYXRpb24gYnVmZmVyLCBidXQKIHlvdSBjYW4gc3Rp bGwgcGlwZSB0aGUgb3V0cHV0IGVsc2V3aGVyZSBpZiBkZXNpcmVkLiAgRm9yIGV4YW1wbGUs IGlmCiB5b3UgaGF2ZSBhIGdyZXAtbGlrZSBjb21tYW5kIG9uIHlvdXIgc3lzdGVtLCB5b3Ug bWlnaHQgZGVmaW5lIGFuIGFsaWFzCiBmb3IgaXQgbGlrZSBzbzogQHNhbXB7YWxpYXMgbXln cmVwICdjb21waWxlIC0tbW9kZT1ncmVwLW1vZGUgLS0gbXlncmVwCiAkKid9LgogCi1AaXRl bSBjcAorQGl0ZW0gY3AgW0B2YXJ7b3B0aW9ufUBkb3Rze31dIEB2YXJ7c291cmNlfSBAdmFy e2Rlc3R9CitAaXRlbSBjcCBbQHZhcntvcHRpb259QGRvdHN7fV0gQHZhcntzb3VyY2V9QGRv dHN7fSBAdmFye2RpcmVjdG9yeX0KIEBjbWluZGV4IGNwCi1Db3B5IGEgZmlsZSB0byBhIG5l dyBsb2NhdGlvbiBvciBjb3B5IG11bHRpcGxlIGZpbGVzIHRvIHRoZSBzYW1lCi1kaXJlY3Rv cnkuCitDb3B5IHRoZSBmaWxlIEB2YXJ7c291cmNlfSB0byBAdmFye2Rlc3R9IG9yIEB2YXJ7 c291cmNlfSBpbnRvCitAdmFye2RpcmVjdG9yeX0uCiAKIEB2aW5kZXggZXNoZWxsLWNwLW92 ZXJ3cml0ZS1maWxlcwogQHZpbmRleCBlc2hlbGwtY3AtaW50ZXJhY3RpdmUtcXVlcnkKQEAg LTU3NywyNiArNjAyLDU5IEBAIEJ1aWx0LWlucwogQGNvZGV7ZXNoZWxsLWNwLWludGVyYWN0 aXZlLXF1ZXJ5fSBpcyBub24tQGNvZGV7bmlsfSwgdGhlbgogQGNvbW1hbmR7Y3B9IHdpbGwg YXNrIGJlZm9yZSBvdmVyd3JpdGluZyBhbnl0aGluZy4KIAotQGl0ZW0gZGF0ZQorQGNvbW1h bmR7Y3B9IGFjY2VwdHMgdGhlIGZvbGxvd2luZyBvcHRpb25zOgorCitAdGFibGUgQGFzaXMK KworQGl0ZW0gQGNvZGV7LWF9LCBAY29kZXstLWFyY2hpdmV9CitFcXVpdmFsZW50IHRvIEBj b2Rley0tbm8tZGVyZWZlcmVuY2UgLS1wcmVzZXJ2ZSAtLXJlY3Vyc2l2ZX0uCisKK0BpdGVt IEBjb2Rley1kfSwgQGNvZGV7LS1uby1kZXJlZmVyZW5jZX0KK0Rvbid0IGRlcmVmZXJlbmNl IHN5bWJvbGljIGxpbmtzIHdoZW4gY29weWluZzsgaW5zdGVhZCwgY29weSB0aGUgbGluawor aXRzZWxmLgorCitAaXRlbSBAY29kZXstZn0sIEBjb2Rley0tZm9yY2V9CitOZXZlciBwcm9t cHQgZm9yIGNvbmZpcm1hdGlvbiBiZWZvcmUgY29weWluZyBhIGZpbGUuCisKK0BpdGVtIEBj b2Rley1pfSwgQGNvZGV7LS1pbnRlcmFjdGl2ZX0KK1Byb21wdCBmb3IgY29uZmlybWF0aW9u IGJlZm9yZSBjb3B5aW5nIGEgZmlsZSBpZiB0aGUgdGFyZ2V0IGFscmVhZHkKK2V4aXN0cy4K KworQGl0ZW0gQGNvZGV7LW59LCBAY29kZXstLXByZXZpZXd9CitSdW4gdGhlIGNvbW1hbmQs IGJ1dCBkb24ndCBjb3B5IGFueXRoaW5nLiAgVGhpcyBpcyB1c2VmdWwgaWYgeW91Cit3YW50 IHRvIHByZXZpZXcgd2hhdCB3b3VsZCBiZSByZW1vdmVkIHdoZW4gY2FsbGluZyBAY29tbWFu ZHtjcH0uCisKK0BpdGVtIEBjb2Rley1wfSwgQGNvZGV7LS1wcmVzZXJ2ZX0KK0F0dGVtcHQg dG8gcHJlc2VydmUgZmlsZSBhdHRyaWJ1dGVzIHdoZW4gY29weWluZy4KKworQGl0ZW0gQGNv ZGV7LXJ9LCBAY29kZXstUn0sIEBjb2Rley0tcmVjdXJzaXZlfQorQ29weSBhbnkgc3BlY2lm aWVkIGRpcmVjdG9yaWVzIGFuZCB0aGVpciBjb250ZW50cyByZWN1cnNpdmVseS4KKworQGl0 ZW0gQGNvZGV7LXZ9LCBAY29kZXstLXZlcmJvc2V9CitQcmludCB0aGUgbmFtZSBvZiBlYWNo IGZpbGUgYmVmb3JlIGNvcHlpbmcgaXQuCisKK0BlbmQgdGFibGUKKworQGl0ZW0gZGF0ZSBb QHZhcntzcGVjaWZpZWQtdGltZX0gW0B2YXJ7em9uZX1dXQogQGNtaW5kZXggZGF0ZQogUHJp bnQgdGhlIGN1cnJlbnQgbG9jYWwgdGltZSBhcyBhIGh1bWFuLXJlYWRhYmxlIHN0cmluZy4g IFRoaXMgY29tbWFuZAotaXMgc2ltaWxhciB0bywgYnV0IHNsaWdodGx5IGRpZmZlcmVudCBm cm9tLCB0aGUgR05VIENvcmV1dGlscwotQGNvbW1hbmR7ZGF0ZX0gY29tbWFuZC4KK2lzIGFu IGFsaWFzIHRvIHRoZSBFbWFjcyBMaXNwIGZ1bmN0aW9uIEBjb2Rle2N1cnJlbnQtdGltZS1z dHJpbmd9CisoQHB4cmVme1RpbWUgb2YgRGF5LCwsIGVsaXNwLCBHTlUgRW1hY3MgTGlzcCBS ZWZlcmVuY2UgTWFudWFsfSkuCiAKLUBpdGVtIGRpZmYKK0BpdGVtIGRpZmYgW0B2YXJ7b3B0 aW9ufV1AZG90c3t9IEB2YXJ7b2xkfSBAdmFye25ld30KIEBjbWluZGV4IGRpZmYKLUNvbXBh cmUgZmlsZXMgdXNpbmcgRW1hY3MncyBpbnRlcm5hbCBAY29kZXtkaWZmfSAobm90IHRvIGJl IGNvbmZ1c2VkCi13aXRoIEBjb2Rle2VkaWZmfSkuICBAeHJlZntDb21wYXJpbmcgRmlsZXMs ICwgLCBlbWFjcywgVGhlIEdOVSBFbWFjcwotTWFudWFsfS4KK0NvbXBhcmUgdGhlIGZpbGVz IEB2YXJ7b2xkfSBhbmQgQHZhcntuZXd9IHVzaW5nIEVtYWNzJ3MgaW50ZXJuYWwKK0Bjb2Rl e2RpZmZ9IChub3QgdG8gYmUgY29uZnVzZWQgd2l0aCBAY29kZXtlZGlmZn0pLiAgQHhyZWZ7 Q29tcGFyaW5nCitGaWxlcywgLCAsIGVtYWNzLCBUaGUgR05VIEVtYWNzIE1hbnVhbH0uCiAK IEB2aW5kZXggZXNoZWxsLXBsYWluLWRpZmYtYmVoYXZpb3IKIElmIEBjb2Rle2VzaGVsbC1w bGFpbi1kaWZmLWJlaGF2aW9yfSBpcyBub24tQGNvZGV7bmlsfSwgdGhlbiB0aGlzCiBjb21t YW5kIGRvZXMgbm90IHVzZSBFbWFjcydzIGludGVybmFsIEBjb2Rle2RpZmZ9LiAgVGhpcyBp cyB0aGUgc2FtZQogYXMgdXNpbmcgQHNhbXB7YWxpYXMgZGlmZiAnKmRpZmYgJEBAKid9Lgog Ci1AaXRlbSBkaXJuYW1lCitAaXRlbSBkaXJuYW1lIEB2YXJ7ZmlsZW5hbWV9CiBAY21pbmRl eCBkaXJuYW1lCi1SZXR1cm4gdGhlIGRpcmVjdG9yeSBjb21wb25lbnQgb2YgYSBmaWxlIG5h bWUuCitSZXR1cm4gdGhlIGRpcmVjdG9yeSBjb21wb25lbnQgb2YgQHZhcntmaWxlbmFtZX0u CiAKIEBpdGVtIGRpcnMKIEBjbWluZGV4IGRpcnMKQEAgLTYwNCwyNSArNjYyLDc1IEBAIEJ1 aWx0LWlucwogdGhlIHN0YWNrIHVzaW5nIHRoZSBjb21tYW5kcyBAY29tbWFuZHtwdXNoZH0g YW5kIEBjb21tYW5ke3BvcGR9LAogcmVzcGVjdGl2ZWx5LgogCi1AaXRlbSBkdQorQGl0ZW0g ZHUgW0B2YXJ7b3B0aW9ufV1AZG90c3t9IEB2YXJ7ZmlsZX1AZG90c3t9CiBAY21pbmRleCBk dQotU3VtbWFyaXplIGRpc2sgdXNhZ2UgZm9yIGVhY2ggZmlsZS4KK1N1bW1hcml6ZSBkaXNr IHVzYWdlIGZvciBlYWNoIGZpbGUsIHJlY3Vyc2luZyBpbnRvIGRpcmVjdG9yaWVzLgorCitA Y29tbWFuZHtkdX0gYWNjZXB0cyB0aGUgZm9sbG93aW5nIG9wdGlvbnM6CisKK0B0YWJsZSBA YXNpcworCitAaXRlbSBAY29kZXstYX0sIEBjb2Rley0tYWxsfQorUHJpbnQgc2l6ZXMgZm9y IGZpbGVzLCBub3QganVzdCBkaXJlY3Rvcmllcy4KIAotQGl0ZW0gZWNobworQGl0ZW0gQGNv ZGV7LS1ibG9jay1zaXplPUB2YXJ7c2l6ZX19CitQcmludCBzaXplcyBhcyBudW1iZXIgb2Yg YmxvY2tzIG9mIHNpemUgQHZhcntzaXplfS4KKworQGl0ZW0gQGNvZGV7LWJ9LCBAY29kZXst LWJ5dGVzfQorUHJpbnQgZmlsZSBzaXplcyBpbiBieXRlcy4KKworQGl0ZW0gQGNvZGV7LWN9 LCBAY29kZXstLXRvdGFsfQorUHJpbnQgYSBncmFuZCB0b3RhbCBvZiB0aGUgc2l6ZXMgYXQg dGhlIGVuZC4KKworQGl0ZW0gQGNvZGV7LWR9LCBAY29kZXstLW1heC1kZXB0aD1AdmFye2Rl cHRofX0KK09ubHkgcHJpbnQgc2l6ZXMgZm9yIGRpcmVjdG9yaWVzIChvciBmaWxlcyB3aXRo IEBjb2Rley0tYWxsfSkgdGhhdCBhcmUKK0B2YXJ7ZGVwdGh9IG9yIGZld2VyIGxldmVscyBi ZWxvdyB0aGUgY29tbWFuZCBsaW5lIGFyZ3VtZW50cy4KKworQGl0ZW0gQGNvZGV7LWh9LCBA Y29kZXstLWh1bWFuLXJlYWRhYmxlfQorUHJpbnQgc2l6ZXMgaW4gaHVtYW4tcmVhZGFibGUg Zm9ybWF0LCB3aXRoIGJpbmFyeSBwcmVmaXhlcyAoc28gMSBLQiBpcworMTAyNCBieXRlcyku CisKK0BpdGVtIEBjb2Rley1IfSwgQGNvZGV7LS1zaX0KK1ByaW50IHNpemVzIGluIGh1bWFu LXJlYWRhYmxlIGZvcm1hdCwgd2l0aCBkZWNpbWFsIHByZWZpeGVzIChzbyAxIEtCCitpcyAx MDAwIGJ5dGVzKS4KKworQGl0ZW0gQGNvZGV7LWt9LCBAY29kZXstLWtpbG9ieXRlc30KK1By aW50IGZpbGUgc2l6ZXMgaW4ga2lsb2J5dGVzIChsaWtlIEBjb2Rley0tYmxvY2stc2l6ZT0x MDI0fSkuCisKK0BpdGVtIEBjb2Rley1MfSwgQGNvZGV7LS1kZXJlZmVyZW5jZX0KK0ZvbGxv dyBzeW1ib2xpYyBsaW5rcyB3aGVuIHRyYXZlcnNpbmcgZmlsZXMuCisKK0BpdGVtIEBjb2Rl ey1tfSwgQGNvZGV7LS1tZWdhYnl0ZXN9CitQcmludCBmaWxlIHNpemVzIGluIG1lZ2FieXRl cyAobGlrZSBAY29kZXstLWJsb2NrLXNpemU9MTA0ODU3Nn0pLgorCitAaXRlbSBAY29kZXst c30sIEBjb2Rley0tc3VtbWFyaXplfQorRG9uJ3QgcmVjdXJzZSBpbnRvIHN1YmRpcmVjdG9y aWVzIChsaWtlIEBjb2Rley0tbWF4LWRlcHRoPTB9KS4KKworQGl0ZW0gQGNvZGV7LXh9LCBA Y29kZXstLW9uZS1maWxlLXN5c3RlbX0KK1NraXAgYW55IGRpcmVjdG9yaWVzIHRoYXQgcmVz aWRlIG9uIGRpZmZlcmVudCBmaWxlc3lzdGVtcy4KKworQGVuZCB0YWJsZQorCitAaXRlbSBl Y2hvIFstbiB8IC1OXSBbQHZhcnthcmd9XUBkb3Rze30KIEBjbWluZGV4IGVjaG8KLUVjaG9l cyBpdHMgaW5wdXQuICBCeSBkZWZhdWx0LCB0aGlzIHByaW50cyBpbiBhIExpc3AtZnJpZW5k bHkgZmFzaGlvbgotKHNvIHRoYXQgdGhlIHZhbHVlIGlzIHVzZWZ1bCB0byBhIExpc3AgY29t bWFuZCB1c2luZyB0aGUgcmVzdWx0IG9mCi1AY29tbWFuZHtlY2hvfSBhcyBhbiBhcmd1bWVu dCkuICBJZiBhIHNpbmdsZSBhcmd1bWVudCBpcyBwYXNzZWQsCi1AY29tbWFuZHtlY2hvfSBw cmludHMgdGhhdDsgaWYgbXVsdGlwbGUgYXJndW1lbnRzIGFyZSBwYXNzZWQsIGl0Ci1wcmlu dHMgYSBsaXN0IG9mIGFsbCB0aGUgYXJndW1lbnRzOyBvdGhlcndpc2UsIGl0IHByaW50cyB0 aGUgZW1wdHkKLXN0cmluZy4KK1ByaW50cyB0aGUgdmFsdWUgb2YgZWFjaCBAdmFye2FyZ30u ICBCeSBkZWZhdWx0LCB0aGlzIHByaW50cyBpbiBhCitMaXNwLWZyaWVuZGx5IGZhc2hpb24g KHNvIHRoYXQgdGhlIHZhbHVlIGlzIHVzZWZ1bCB0byBhIExpc3AgY29tbWFuZAordXNpbmcg dGhlIHJlc3VsdCBvZiBAY29tbWFuZHtlY2hvfSBhcyBhbiBhcmd1bWVudCkuICBJZiBhIHNp bmdsZQorYXJndW1lbnQgaXMgcGFzc2VkLCBAY29tbWFuZHtlY2hvfSBwcmludHMgdGhhdDsg aWYgbXVsdGlwbGUgYXJndW1lbnRzCithcmUgcGFzc2VkLCBpdCBwcmludHMgYSBsaXN0IG9m IGFsbCB0aGUgYXJndW1lbnRzOyBvdGhlcndpc2UsIGl0CitwcmludHMgdGhlIGVtcHR5IHN0 cmluZy4KIAogQHZpbmRleCBlc2hlbGwtcGxhaW4tZWNoby1iZWhhdmlvcgogSWYgQGNvZGV7 ZXNoZWxsLXBsYWluLWVjaG8tYmVoYXZpb3J9IGlzIG5vbi1AY29kZXtuaWx9LCBAY29tbWFu ZHtlY2hvfQogd2lsbCB0cnkgdG8gYmVoYXZlIG1vcmUgbGlrZSBhIHBsYWluIHNoZWxsJ3Mg QGNvbW1hbmR7ZWNob30sIHByaW50aW5nCiBlYWNoIGFyZ3VtZW50IGFzIGEgc3RyaW5nLCBz ZXBhcmF0ZWQgYnkgYSBzcGFjZS4KIAotQGl0ZW0gZW52CitZb3UgY2FuIGNvbnRyb2wgd2hl dGhlciBAY29tbWFuZHtlY2hvfSBvdXRwdXRzIGEgdHJhaWxpbmcgbmV3bGluZQordXNpbmcg QGNvZGV7LW59IHRvIGRpc2FibGUgdGhlIHRyYWlsaW5nIG5ld2xpbmUgKHRoZSBkZWZhdWx0 IGJlaGF2aW9yKQorb3IgQGNvZGV7LU59IHRvIGVuYWJsZSBpdCAodGhlIGRlZmF1bHQgd2hl bgorQGNvZGV7ZXNoZWxsLXBsYWluLWVjaG8tYmVoYXZpb3J9IGlzIG5vbi1AY29kZXtuaWx9 KS4KKworQGl0ZW0gZW52IFtAdmFye3Zhcn09QHZhcnt2YWx1ZX1dQGRvdHN7fSBbQHZhcntj b21tYW5kfV1AZG90c3t9CiBAY21pbmRleCBlbnYKIFdpdGggbm8gYXJndW1lbnRzLCBwcmlu dCB0aGUgY3VycmVudCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuICBJZiB5b3UKIHBhc3MgYXJn dW1lbnRzIHRvIHRoaXMgY29tbWFuZCwgdGhlbiBAY29tbWFuZHtlbnZ9IHdpbGwgZXhlY3V0 ZSB0aGUKQEAgLTYzMCw3ICs3MzgsNyBAQCBCdWlsdC1pbnMKIEBzYW1we0B2YXJ7dmFyfT1A dmFye3ZhbHVlfX0sIEBjb21tYW5ke2Vudn0gd2lsbCBmaXJzdCBzZXQgQHZhcnt2YXJ9CiB0 byBAdmFye3ZhbHVlfSBiZWZvcmUgcnVubmluZyB0aGUgY29tbWFuZC4KIAotQGl0ZW0gZXNo ZWxsLWRlYnVnCitAaXRlbSBlc2hlbGwtZGVidWcgW2Vycm9yIHwgZm9ybSB8IHByb2Nlc3Nd QGRvdHN7fQogQGNtaW5kZXggZXNoZWxsLWRlYnVnCiBUb2dnbGUgZGVidWdnaW5nIGluZm9y bWF0aW9uIGZvciBFc2hlbGwgaXRzZWxmLiAgWW91IGNhbiBwYXNzIHRoaXMKIGNvbW1hbmQg b25lIG9yIG1vcmUgb2YgdGhlIGZvbGxvd2luZyBhcmd1bWVudHM6CkBAIC02NTgsNjUgKzc2 Niw4NiBAQCBCdWlsdC1pbnMKIEVzaGVsbCBidWZmZXIsIGJ1dCBpZiBAY29kZXtlc2hlbGwt a2lsbC1vbi1leGl0fSBpcyBAY29kZXtuaWx9LCB0aGVuCiB0aGUgYnVmZmVyIGlzIG1lcmVs eSBidXJpZWQgaW5zdGVhZC4KIAotQGl0ZW0gZXhwb3J0CitAaXRlbSBleHBvcnQgW0B2YXJ7 bmFtZX09QHZhcnt2YWx1ZX1dQGRvdHN7fQogQGNtaW5kZXggZXhwb3J0CiBTZXQgZW52aXJv bm1lbnQgdmFyaWFibGVzIHVzaW5nIGlucHV0IGxpa2UgQmFzaCdzIEBjb21tYW5ke2V4cG9y dH0sIGFzCiBpbiBAc2FtcHtleHBvcnQgQHZhcnt2YXIxfT1AdmFye3ZhbDF9IEB2YXJ7dmFy Mn09QHZhcnt2YWwyfSBAZG90c3t9fS4KIAotQGl0ZW0gZ3JlcAorQGl0ZW0gZ3JlcCBbQHZh cnthcmd9XUBkb3Rze30KIEBjbWluZGV4IGdyZXAKLUBpdGVteCBhZ3JlcAorQGl0ZW14IGFn cmVwIFtAdmFye2FyZ31dQGRvdHN7fQogQGNtaW5kZXggYWdyZXAKLUBpdGVteCBlZ3JlcAor QGl0ZW14IGVncmVwIFtAdmFye2FyZ31dQGRvdHN7fQogQGNtaW5kZXggZWdyZXAKLUBpdGVt eCBmZ3JlcAorQGl0ZW14IGZncmVwIFtAdmFye2FyZ31dQGRvdHN7fQogQGNtaW5kZXggZmdy ZXAKLUBpdGVteCByZ3JlcAorQGl0ZW14IHJncmVwIFtAdmFye2FyZ31dQGRvdHN7fQogQGNt aW5kZXggcmdyZXAKLUBpdGVteCBnbGltcHNlCitAaXRlbXggZ2xpbXBzZSBbQHZhcnthcmd9 XUBkb3Rze30KIEBjbWluZGV4IGdsaW1wc2UKIFRoZSBAY29tbWFuZHtncmVwfSBjb21tYW5k cyBhcmUgY29tcGF0aWJsZSB3aXRoIEdOVSBAY29tbWFuZHtncmVwfSwKLWJ1dCB1c2UgRW1h Y3MncyBpbnRlcm5hbCBAY29kZXtncmVwfSBpbnN0ZWFkLgorYnV0IG9wZW4gYSBjb21waWxh dGlvbiBidWZmZXIgaW4gQGNvZGV7Z3JlcC1tb2RlfSBpbnN0ZWFkLgogQHhyZWZ7R3JlcCBT ZWFyY2hpbmcsICwgLCBlbWFjcywgVGhlIEdOVSBFbWFjcyBNYW51YWx9LgogCiBAdmluZGV4 IGVzaGVsbC1wbGFpbi1ncmVwLWJlaGF2aW9yCiBJZiBAY29kZXtlc2hlbGwtcGxhaW4tZ3Jl cC1iZWhhdmlvcn0gaXMgbm9uLUBjb2Rle25pbH0sIHRoZW4gdGhlc2UKLWNvbW1hbmRzIGRv IG5vdCB1c2UgRW1hY3MncyBpbnRlcm5hbCBAY29kZXtncmVwfS4gIFRoaXMgaXMgdGhlIHNh bWUgYXMKLXVzaW5nIEBzYW1we2FsaWFzIGdyZXAgJypncmVwICRAQConfSwgdGhvdWdoIHRo aXMgc2V0dGluZyBhcHBsaWVzIHRvCi1hbGwgb2YgdGhlIGJ1aWx0LWluIGNvbW1hbmRzIGZv ciB3aGljaCB5b3Ugd291bGQgbmVlZCB0byBjcmVhdGUgYQotc2VwYXJhdGUgYWxpYXMuCitj b21tYW5kcyBkbyBub3QgdXNlIG9wZW4gYSBjb21waWxhdGlvbiBidWZmZXIsIGluc3RlYWQg cHJpbnRpbmcgb3V0cHV0Cit0byBFc2hlbGwncyBidWZmZXIuICBUaGlzIGlzIHRoZSBzYW1l IGFzIHVzaW5nIEBzYW1we2FsaWFzIGdyZXAgJypncmVwCiskQEAqJ30sIHRob3VnaCB0aGlz IHNldHRpbmcgYXBwbGllcyB0byBhbGwgb2YgdGhlIGJ1aWx0LWluIGNvbW1hbmRzCitmb3Ig d2hpY2ggeW91IHdvdWxkIG5lZWQgdG8gY3JlYXRlIGEgc2VwYXJhdGUgYWxpYXMuCiAKLUBp dGVtIGhpc3RvcnkKK0BpdGVtIGhpc3RvcnkgW0B2YXJ7bn1dCitAaXRlbXggaGlzdG9yeSBb LWFyd10gW0B2YXJ7ZmlsZW5hbWV9XQogQGNtaW5kZXggaGlzdG9yeQotUHJpbnRzIEVzaGVs bCdzIGlucHV0IGhpc3RvcnkuICBXaXRoIGEgbnVtZXJpYyBhcmd1bWVudCBAdmFye059LCB0 aGlzCi1jb21tYW5kIHByaW50cyB0aGUgQHZhcntOfSBtb3N0IHJlY2VudCBpdGVtcyBpbiB0 aGUgaGlzdG9yeS4KK1ByaW50cyBFc2hlbGwncyBpbnB1dCBoaXN0b3J5LiAgV2l0aCBhIG51 bWVyaWMgYXJndW1lbnQgQHZhcntufSwgdGhpcworY29tbWFuZCBwcmludHMgdGhlIEB2YXJ7 bn0gbW9zdCByZWNlbnQgaXRlbXMgaW4gdGhlIGhpc3RvcnkuCitBbHRlcm5hdGVseSwgeW91 IGNhbiBzcGVjaWZ5IHRoZSBmb2xsb3dpbmcgb3B0aW9uczoKKworQHRhYmxlIEBhc2lzCisK K0BpdGVtIEBjb2Rley1hfSwgQGNvZGV7LS1hcHBlbmR9CitBcHBlbmQgbmV3IGhpc3Rvcnkg aXRlbXMgdG8gdGhlIGhpc3RvcnkgZmlsZS4KIAotQGl0ZW0gaW5mbworQGl0ZW0gQGNvZGV7 LXJ9LCBAY29kZXstLXJlYWR9CitSZWFkIGhpc3RvcnkgaXRlbXMgZnJvbSB0aGUgaGlzdG9y eSBmaWxlIGFuZCBhcHBlbmQgaXQgdG8gdGhlIGN1cnJlbnQKK3NoZWxsJ3MgaGlzdG9yeS4K KworQGl0ZW0gQGNvZGV7LXd9LCBAY29kZXstLXdyaXRlfQorV3JpdGUgdGhlIGN1cnJlbnQg aGlzdG9yeSBsaXN0IHRvIHRoZSBoaXN0b3J5IGZpbGUuCisKK0BlbmQgdGFibGUKKworQGl0 ZW0gaW5mbyBbQHZhcnttYW51YWx9IFtAdmFye2l0ZW19XUBkb3Rze31dCiBAY21pbmRleCBp bmZvCi1Ccm93c2UgdGhlIGF2YWlsYWJsZSBJbmZvIGRvY3VtZW50YXRpb24uICBUaGlzIGNv bW1hbmQgaXMgdGhlIHNhbWUgYXMKLXRoZSBleHRlcm5hbCBAY29tbWFuZHtpbmZvfSBjb21t YW5kLCBidXQgdXNlcyBFbWFjcydzIGludGVybmFsIEluZm8KLXJlYWRlci4KLUB4cmVme01p c2MgSGVscCwgLCAsIGVtYWNzLCBUaGUgR05VIEVtYWNzIE1hbnVhbH0uCitCcm93c2UgdGhl IGF2YWlsYWJsZSBJbmZvIGRvY3VtZW50YXRpb24uICBXaXRoIG5vIGFyZ3VtZW50cywgYnJv d3NlCit0aGUgdG9wLWxldmVsIG1lbnUuICBPdGhlcndpc2UsIHNob3cgdGhlIG1hbnVhbCBm b3IgQHZhcnttYW51YWx9LAorc2VsZWN0aW5nIHRoZSBtZW51IGVudHJ5IGZvciBAdmFye2l0 ZW19LgorCitUaGlzIGNvbW1hbmQgaXMgdGhlIHNhbWUgYXMgdGhlIGV4dGVybmFsIEBjb21t YW5ke2luZm99IGNvbW1hbmQsIGJ1dAordXNlcyBFbWFjcydzIGludGVybmFsIEluZm8gcmVh ZGVyLiAgQHhyZWZ7TWlzYyBIZWxwLCAsICwgZW1hY3MsIFRoZQorR05VIEVtYWNzIE1hbnVh bH0uCiAKIEBpdGVtIGpvYnMKIEBjbWluZGV4IGpvYnMKIExpc3Qgc3VicHJvY2Vzc2VzIG9m IHRoZSBFbWFjcyBwcm9jZXNzLCBpZiBhbnksIHVzaW5nIHRoZSBmdW5jdGlvbgogQGNvZGV7 bGlzdC1wcm9jZXNzZXN9LgogCi1AaXRlbSBraWxsCitAaXRlbSBraWxsIFstQHZhcntzaWdu YWx9XSBbQHZhcntwaWR9IHwgQHZhcntwcm9jZXNzfV0KIEBjbWluZGV4IGtpbGwKIEtpbGwg cHJvY2Vzc2VzLiAgVGFrZXMgYSBQSUQgb3IgYSBwcm9jZXNzIG9iamVjdCBhbmQgYW4gb3B0 aW9uYWwKLXNpZ25hbCBzcGVjaWZpZXIgd2hpY2ggY2FuIGVpdGhlciBiZSBhIG51bWJlciBv ciBhIHNpZ25hbCBuYW1lLgorQHZhcntzaWduYWx9IHNwZWNpZmllciB3aGljaCBjYW4gZWl0 aGVyIGJlIGEgbnVtYmVyIG9yIGEgc2lnbmFsIG5hbWUuCiAKLUBpdGVtIGxpc3RpZnkKK0Bp dGVtIGxpc3RpZnkgW0B2YXJ7YXJnfV1AZG90c3t9CiBAY21pbmRleCBsaXN0aWZ5Ci1Fc2hl bGwgdmVyc2lvbiBvZiBAY29kZXtsaXN0fS4gIEFsbG93cyB5b3UgdG8gY3JlYXRlIGEgbGlz dCB1c2luZyBFc2hlbGwKLXN5bnRheCwgcmF0aGVyIHRoYW4gRWxpc3Agc3ludGF4LiAgRm9y IGV4YW1wbGUsIEBzYW1we2xpc3RpZnkgZm9vIGJhcn0KLWFuZCBAY29kZXsoImZvbyIgImJh ciIpfSBib3RoIGV2YWx1YXRlIHRvIEBjb2RleygiZm9vIiAiYmFyIil9LgorUmV0dXJuIHRo ZSBhcmd1bWVudHMgYXMgYSBzaW5nbGUgbGlzdC4gIFdpdGggYSBzaW5nbGUgYXJndW1lbnQs IHJldHVybgoraXQgYXMtaXMgaWYgaXQncyBhbHJlYWR5IGEgbGlzdCwgb3Igb3RoZXJ3aXNl IHdyYXAgaXQgaW4gYSBsaXN0LiAgV2l0aAorbXVsdGlwbGUgYXJndW1lbnRzLCByZXR1cm4g YSBsaXN0IG9mIGFsbCBvZiB0aGVtLgogCi1AaXRlbSBsbgorQGl0ZW0gbG4gW0B2YXJ7b3B0 aW9ufV1AZG90c3t9IEB2YXJ7dGFyZ2V0fSBbQHZhcntsaW5rLW5hbWV9XQorQGl0ZW14IGxu IFtAdmFye29wdGlvbn1dQGRvdHN7fSBAdmFye3RhcmdldH1AZG90c3t9IEB2YXJ7ZGlyZWN0 b3J5fQogQGNtaW5kZXggbG4KLUNyZWF0ZSBsaW5rcyB0byBmaWxlcy4KK0NyZWF0ZSBhIGxp bmsgdG8gdGhlIHNwZWNpZmllZCBAdmFye3RhcmdldH0gbmFtZWQgQHZhcntsaW5rLW5hbWV9 IG9yCitjcmVhdGUgbGlua3MgdG8gbXVsdGlwbGUgQHZhcnt0YXJnZXRzfSBpbiBAdmFye2Rp cmVjdG9yeX0uCiAKIEB2aW5kZXggZXNoZWxsLWxuLW92ZXJ3cml0ZS1maWxlcwogQHZpbmRl eCBlc2hlbGwtbG4taW50ZXJhY3RpdmUtcXVlcnkKQEAgLTcyNSw3ICs4NTQsMzAgQEAgQnVp bHQtaW5zCiBAY29kZXtlc2hlbGwtbG4taW50ZXJhY3RpdmUtcXVlcnl9IGlzIG5vbi1AY29k ZXtuaWx9LCB0aGVuCiBAY29tbWFuZHtsbn0gd2lsbCBhc2sgYmVmb3JlIG92ZXJ3cml0aW5n IGZpbGVzLgogCi1AaXRlbSBsb2NhdGUKK0Bjb21tYW5ke2xufSBhY2NlcHRzIHRoZSBmb2xs b3dpbmcgb3B0aW9uczoKKworQHRhYmxlIEBhc2lzCisKK0BpdGVtIEBjb2Rley1mfSwgQGNv ZGV7LS1mb3JjZX0KK05ldmVyIHByb21wdCBmb3IgY29uZmlybWF0aW9uIGJlZm9yZSBsaW5r aW5nIGEgdGFyZ2V0LgorCitAaXRlbSBAY29kZXstaX0sIEBjb2Rley0taW50ZXJhY3RpdmV9 CitQcm9tcHQgZm9yIGNvbmZpcm1hdGlvbiBiZWZvcmUgbGlua2luZyB0byBhbiBpdGVtIGlm IHRoZSBzb3VyY2UKK2FscmVhZHkgZXhpc3RzLgorCitAaXRlbSBAY29kZXstbn0sIEBjb2Rl ey0tcHJldmlld30KK1J1biB0aGUgY29tbWFuZCwgYnV0IGRvbid0IG1vdmUgYW55dGhpbmcu ICBUaGlzIGlzIHVzZWZ1bCBpZiB5b3UKK3dhbnQgdG8gcHJldmlldyB3aGF0IHdvdWxkIGJl IGxpbmtlZCB3aGVuIGNhbGxpbmcgQGNvbW1hbmR7bG59LgorCitAaXRlbSBAY29kZXstc30s IEBjb2Rley0tc3ltYm9saWN9CitNYWtlIHN5bWJvbGljIGxpbmtzIGluc3RlYWQgb2YgaGFy ZCBsaW5rcy4KKworQGl0ZW0gQGNvZGV7LXZ9LCBAY29kZXstLXZlcmJvc2V9CitQcmludCB0 aGUgbmFtZSBvZiBlYWNoIGZpbGUgYmVmb3JlIGxpbmtpbmcgaXQuCisKK0BlbmQgdGFibGUK KworQGl0ZW0gbG9jYXRlIEB2YXJ7YXJnfUBkb3Rze30KIEBjbWluZGV4IGxvY2F0ZQogQWxp YXMgdG8gRW1hY3MncyBAY29kZXtsb2NhdGV9IGZ1bmN0aW9uLCB3aGljaCBzaW1wbHkgcnVu cyB0aGUgZXh0ZXJuYWwKIEBjb21tYW5ke2xvY2F0ZX0gY29tbWFuZCBhbmQgcGFyc2VzIHRo ZSByZXN1bHRzLgpAQCAtNzM2LDUxICs4ODgsMTI5IEBAIEJ1aWx0LWlucwogaW50ZXJuYWwg QGNvZGV7bG9jYXRlfSBpcyBub3QgdXNlZC4gIFRoaXMgaXMgdGhlIHNhbWUgYXMgdXNpbmcK IEBzYW1we2FsaWFzIGxvY2F0ZSAnKmxvY2F0ZSAkQEAqJ30uCiAKLUBpdGVtIGxzCitAaXRl bSBscyBbQHZhcntvcHRpb259XUBkb3Rze30gW0B2YXJ7ZmlsZX1dQGRvdHN7fQogQGNtaW5k ZXggbHMKLUxpc3RzIHRoZSBjb250ZW50cyBvZiBkaXJlY3Rvcmllcy4KK0xpc3QgaW5mb3Jt YXRpb24gYWJvdXQgZWFjaCBAdmFye2ZpbGV9LCBpbmNsdWRpbmcgdGhlIGNvbnRlbnRzIG9m IGFueQorc3BlY2lmaWVkIGRpcmVjdG9yaWVzLiAgSWYgQHZhcntmaWxlfSBpcyB1bnNwZWNp ZmllZCwgbGlzdCB0aGUKK2NvbnRlbnRzIG9mIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4KKwor QHZpbmRleCBlc2hlbGwtbHMtaW5pdGlhbC1hcmdzCitUaGUgdXNlciBvcHRpb24gQGNvZGV7 ZXNoZWxsLWxzLWluaXRpYWwtYXJnc30gY29udGFpbnMgYSBsaXN0IG9mCithcmd1bWVudHMg dG8gaW5jbHVkZSB3aXRoIGFueSBjYWxsIHRvIEBjb21tYW5ke2xzfS4gIEZvciBleGFtcGxl LCB5b3UKK2NhbiBpbmNsdWRlIHRoZSBvcHRpb24gQG9wdGlvbnstaH0gdG8gYWx3YXlzIHVz ZSBhIG1vcmUgaHVtYW4tcmVhZGFibGUKK2Zvcm1hdC4KIAogQHZpbmRleCBlc2hlbGwtbHMt dXNlLWNvbG9ycwogSWYgQGNvZGV7ZXNoZWxsLWxzLXVzZS1jb2xvcnN9IGlzIG5vbi1AY29k ZXtuaWx9LCB0aGUgY29udGVudHMgb2YgYQogZGlyZWN0b3J5IGlzIGNvbG9yLWNvZGVkIGFj Y29yZGluZyB0byBmaWxlIHR5cGUgYW5kIHN0YXR1cy4gIFRoZXNlCiBjb2xvcnMgYW5kIHRo ZSByZWdleHBzIHVzZWQgdG8gaWRlbnRpZnkgdGhlaXIgY29ycmVzcG9uZGluZyBmaWxlcyBj YW4KLWJlIGN1c3RvbWl6ZWQgdmlhIEB3e0BrYmR7TS14IGN1c3RvbWl6ZS1ncm91cCBAa2V5 e1JFVH0gZXNoZWxsLWxzIEBrZXl7UkVUfX19LgorYmUgY3VzdG9taXplZCB2aWEgQHd7QGti ZHtNLXggY3VzdG9taXplLWdyb3VwIEBrZXl7UkVUfSBlc2hlbGwtbHMKK0BrZXl7UkVUfX19 LgorCitAY29tbWFuZHtsc30gc3VwcG9ydHMgdGhlIGZvbGxvd2luZyBvcHRpb25zOgorCitA dGFibGUgQGFzaXMKKworQGl0ZW0gQGNvZGV7LWF9LCBAY29kZXstLWFsbH0KK0xpc3QgYWxs IGZpbGVzLCBpbmNsdWRpbmcgb25lcyBzdGFydGluZyB3aXRoIEBzYW1wey59LgorCitAaXRl bSBAY29kZXstQX0sIEBjb2Rley0tYWxtb3N0LWFsbH0KK0xpa2UgQGNvZGV7LS1hbGx9LCBi dXQgZG9uJ3QgbGlzdCB0aGUgY3VycmVudCBkaXJlY3RvcnkgKEBmaWxley59KSBvcgordGhl IHBhcmVudCBkaXJlY3RvcnkgKEBmaWxley4ufSkuCisKK0BpdGVtIEBjb2Rley1jfSwgQGNv ZGV7LS1ieS1jdGltZX0KK1NvcnQgZmlsZXMgYnkgbGFzdCBzdGF0dXMgY2hhbmdlIHRpbWUs IHdpdGggbmV3ZXN0IGZpbGVzIGZpcnN0LgorCitAaXRlbSBAY29kZXstQ30KK0xpc3QgZW50 cmllcyBieSBjb2x1bW5zLgorCitAaXRlbSBAY29kZXstZH0sIEBjb2Rley0tZGlyZWN0b3J5 fQorTGlzdCBkaXJlY3RvcnkgZW50cmllcyBpbnN0ZWFkIG9mIHRoZWlyIGNvbnRlbnRzLgor CitAaXRlbSBAY29kZXstaH0sIEBjb2Rley0taHVtYW4tcmVhZGFibGV9CitQcmludCBzaXpl cyBpbiBodW1hbi1yZWFkYWJsZSBmb3JtYXQsIHdpdGggYmluYXJ5IHByZWZpeGVzIChzbyAx IEtCIGlzCisxMDI0IGJ5dGVzKS4KKworQGl0ZW0gQGNvZGV7LUh9LCBAY29kZXstLXNpfQor UHJpbnQgc2l6ZXMgaW4gaHVtYW4tcmVhZGFibGUgZm9ybWF0LCB3aXRoIGRlY2ltYWwgcHJl Zml4ZXMgKHNvIDEgS0IKK2lzIDEwMDAgYnl0ZXMpLgorCitAaXRlbSBAY29kZXstSUB2YXJ7 cGF0dGVybn19LCBAY29kZXstLWlnbm9yZT1AdmFye3BhdHRlcm59fQorRG9uJ3QgbGlzdCBk aXJlY3RvcnkgZW50cmllcyBtYXRjaGluZyBAdmFye3BhdHRlcm59LgorCitAaXRlbSBAY29k ZXsta30sIEBjb2Rley0ta2lsb2J5dGVzfQorUHJpbnQgc2l6ZXMgYXMgMTAyNC1ieXRlIGtp bG9ieXRlcy4KIAogQHZpbmRleCBlc2hlbGwtbHMtZGF0ZS1mb3JtYXQKLVRoZSB1c2VyIG9w dGlvbiBAY29kZXtlc2hlbGwtbHMtZGF0ZS1mb3JtYXR9IGRldGVybWluZXMgaG93IHRoZSBk YXRlCi1pcyBkaXNwbGF5ZWQgd2hlbiB1c2luZyB0aGUgQG9wdGlvbnstbH0gb3B0aW9uLiAg VGhlIGRhdGUgaXMgcHJvZHVjZWQKLXVzaW5nIHRoZSBmdW5jdGlvbiBAY29kZXtmb3JtYXQt dGltZS1zdHJpbmd9IChAcHhyZWZ7VGltZSBQYXJzaW5nLCwsCi1lbGlzcCwgR05VIEVtYWNz IExpc3AgUmVmZXJlbmNlIE1hbnVhbH0pLgorQGl0ZW0gQGNvZGV7LWx9CitVc2UgYSBsb25n IGxpc3RpbmcgZm9ybWF0IHNob3dpbmcgZGV0YWlscyBmb3IgZWFjaCBmaWxlLiAgVGhlIHVz ZXIKK29wdGlvbiBAY29kZXtlc2hlbGwtbHMtZGF0ZS1mb3JtYXR9IGRldGVybWluZXMgaG93 IHRoZSBkYXRlIGlzCitkaXNwbGF5ZWQgd2hlbiB1c2luZyB0aGlzIG9wdGlvbi4gIFRoZSBk YXRlIGlzIHByb2R1Y2VkIHVzaW5nIHRoZQorZnVuY3Rpb24gQGNvZGV7Zm9ybWF0LXRpbWUt c3RyaW5nfSAoQHB4cmVme1RpbWUgUGFyc2luZywsLCBlbGlzcCwgR05VCitFbWFjcyBMaXNw IFJlZmVyZW5jZSBNYW51YWx9KS4KIAotQHZpbmRleCBlc2hlbGwtbHMtaW5pdGlhbC1hcmdz Ci1UaGUgdXNlciBvcHRpb24gQGNvZGV7ZXNoZWxsLWxzLWluaXRpYWwtYXJnc30gY29udGFp bnMgYSBsaXN0IG9mCi1hcmd1bWVudHMgdG8gaW5jbHVkZSB3aXRoIGFueSBjYWxsIHRvIEBj b21tYW5ke2xzfS4gIEZvciBleGFtcGxlLCB5b3UKLWNhbiBpbmNsdWRlIHRoZSBvcHRpb24g QG9wdGlvbnstaH0gdG8gYWx3YXlzIHVzZSBhIG1vcmUgaHVtYW4tcmVhZGFibGUKLWZvcm1h dC4KK0BpdGVtIEBjb2Rley1MfSwgQGNvZGV7LS1kZXJlZmVyZW5jZX0KK0ZvbGxvdyBzeW1i b2xpYyBsaW5rcyB3aGVuIGxpc3RpbmcgZW50cmllcy4KKworQGl0ZW0gQGNvZGV7LW59LCBA Y29kZXstLW51bWVyaWMtdWlkLWdpZH0KK1Nob3cgVUlEcyBhbmQgR0lEcyBudW1lcmljYWxs eSwgaW5zdGVhZCBvZiB1c2luZyB0aGVpciBuYW1lcy4KKworQGl0ZW0gQGNvZGV7LXJ9LCBA Y29kZXstLXJldmVyc2V9CitSZXZlcnNlIG9yZGVyIHdoZW4gc29ydGluZy4KKworQGl0ZW0g QGNvZGV7LVJ9LCBAY29kZXstLXJlY3Vyc2l2ZX0KK0xpc3Qgc3ViZGlyZWN0b3JpZXMgcmVj dXJzaXZlbHkuCisKK0BpdGVtIEBjb2Rley1zfSwgQGNvZGV7LS1zaXplfQorU2hvdyB0aGUg c2l6ZSBvZiBlYWNoIGZpbGUgaW4gYmxvY2tzLgogCiBAdmluZGV4IGVzaGVsbC1scy1kZWZh dWx0LWJsb2Nrc2l6ZQotVGhlIHVzZXIgb3B0aW9uIEBjb2Rle2VzaGVsbC1scy1kZWZhdWx0 LWJsb2Nrc2l6ZX0gZGV0ZXJtaW5lcyB0aGUKLWRlZmF1bHQgYmxvY2tzaXplIHVzZWQgd2hl biBkaXNwbGF5aW5nIGZpbGUgc2l6ZXMgd2l0aCB0aGUgb3B0aW9uCi1Ab3B0aW9uey1zfS4K K0BpdGVtIEBjb2Rley1TfQorU29ydCBieSBmaWxlIHNpemUsIHdpdGggbGFyZ2VzdCBmaWxl cyBmaXJzdC4gIFRoZSB1c2VyIG9wdGlvbgorQGNvZGV7ZXNoZWxsLWxzLWRlZmF1bHQtYmxv Y2tzaXplfSBkZXRlcm1pbmVzIHRoZSBkZWZhdWx0IGJsb2Nrc2l6ZQordXNlZCB3aGVuIGRp c3BsYXlpbmcgZmlsZSBzaXplcyB3aXRoIHRoaXMgb3B0aW9uLgorCitAaXRlbSBAY29kZXst dH0KK1NvcnQgYnkgbW9kaWZpY2F0aW9uIHRpbWUsIHdpdGggbmV3ZXN0IGZpbGVzIGZpcnN0 LgogCi1AaXRlbSBtYWtlCitAaXRlbSBAY29kZXstdX0KK1NvcnQgYnkgbGFzdCBhY2Nlc3Mg dGltZSwgd2l0aCBuZXdlc3QgZmlsZXMgZmlyc3QuCisKK0BpdGVtIEBjb2Rley1VfQorRG8g bm90IHNvcnQgcmVzdWx0cy4gIEluc3RlYWQsIGxpc3QgZW50cmllcyBpbiB0aGVpciBkaXJl Y3Rvcnkgb3JkZXIuCisKK0BpdGVtIEBjb2Rley14fQorTGlzdCBlbnRyaWVzIGJ5IGxpbmVz IGluc3RlYWQgb2YgYnkgY29sdW1ucy4KKworQGl0ZW0gQGNvZGV7LVh9CitTb3J0IGFscGhh YmV0aWNhbGx5IGJ5IGZpbGUgZXh0ZW5zaW9uLgorCitAaXRlbSBAY29kZXstMX0KK0xpc3Qg b25lIGZpbGUgcGVyIGxpbmUuCisKK0BlbmQgdGFibGUKKworQGl0ZW0gbWFrZSBbQHZhcnth cmd9XUBkb3Rze30KIEBjbWluZGV4IG1ha2UKIFJ1biBAY29tbWFuZHttYWtlfSB0aHJvdWdo IEBjb2Rle2NvbXBpbGV9IHdoZW4gcnVuIGFzeW5jaHJvbm91c2x5CiAoZS5nLiwgQHNhbXB7 bWFrZSAmfSkuICBAeHJlZntDb21waWxhdGlvbiwgLCAsIGVtYWNzLCBUaGUgR05VIEVtYWNz CiBNYW51YWx9LiAgT3RoZXJ3aXNlIGNhbGwgdGhlIGV4dGVybmFsIEBjb21tYW5ke21ha2V9 IGNvbW1hbmQuCiAKLUBpdGVtIG1hbgorQGl0ZW0gbWFuIFtAdmFye2FyZ31dQGRvdHN7fQog QGNtaW5kZXggbWFuCiBEaXNwbGF5IE1hbiBwYWdlcyB1c2luZyB0aGUgRW1hY3MgQGNvZGV7 bWFufSBjb21tYW5kLgogQHhyZWZ7TWFuIFBhZ2UsICwgLCBlbWFjcywgVGhlIEdOVSBFbWFj cyBNYW51YWx9LgogCi1AaXRlbSBta2RpcgorQGl0ZW0gbWtkaXIgWy1wXSBAdmFye2RpcmVj dG9yeX1AZG90c3t9CiBAY21pbmRleCBta2RpcgotTWFrZSBuZXcgZGlyZWN0b3JpZXMuCitN YWtlIG5ldyBkaXJlY3Rvcmllcy4gIFdpdGggQGNvZGV7LXB9IG9yIEBjb2Rley0tcGFyZW50 c30sCithdXRvbWF0aWNhbGx5IG1ha2UgYW55IG5lY2Vzc2FyeSBwYXJlbnQgZGlyZWN0b3Jp ZXMgYXMgd2VsbC4KIAotQGl0ZW0gbXYKK0BpdGVtIG12IFtAdmFye29wdGlvbn1dQGRvdHN7 fSBAdmFye3NvdXJjZX0gQHZhcntkZXN0fQorQGl0ZW14IG12IFtAdmFye29wdGlvbn1dQGRv dHN7fSBAdmFye3NvdXJjZX1AZG90c3t9IEB2YXJ7ZGlyZWN0b3J5fQogQGNtaW5kZXggbXYK LU1vdmUgb3IgcmVuYW1lIGZpbGVzLgorUmVuYW1lIHRoZSBmaWxlIEB2YXJ7c291cmNlfSB0 byBAdmFye2Rlc3R9IG9yIG1vdmUgQHZhcntzb3VyY2V9IGludG8KK0B2YXJ7ZGlyZWN0b3J5 fS4KIAogQHZpbmRleCBlc2hlbGwtbXYtb3ZlcndyaXRlLWZpbGVzCiBAdmluZGV4IGVzaGVs bC1tdi1pbnRlcmFjdGl2ZS1xdWVyeQpAQCAtNzg5LDM3ICsxMDE5LDkwIEBAIEJ1aWx0LWlu cwogQGNvZGV7ZXNoZWxsLW12LWludGVyYWN0aXZlLXF1ZXJ5fSBpcyBub24tQGNvZGV7bmls fSwgQGNvbW1hbmR7bXZ9CiB3aWxsIHByb21wdCBiZWZvcmUgb3ZlcndyaXRpbmcgYW55dGhp bmcuCiAKLUBpdGVtIG9jY3VyCitAY29tbWFuZHttdn0gYWNjZXB0cyB0aGUgZm9sbG93aW5n IG9wdGlvbnM6CisKK0B0YWJsZSBAYXNpcworCitAaXRlbSBAY29kZXstZn0sIEBjb2Rley0t Zm9yY2V9CitOZXZlciBwcm9tcHQgZm9yIGNvbmZpcm1hdGlvbiBiZWZvcmUgbW92aW5nIGFu IGl0ZW0uCisKK0BpdGVtIEBjb2Rley1pfSwgQGNvZGV7LS1pbnRlcmFjdGl2ZX0KK1Byb21w dCBmb3IgY29uZmlybWF0aW9uIGJlZm9yZSBtb3ZpbmcgYW4gaXRlbSBpZiB0aGUgdGFyZ2V0 IGFscmVhZHkKK2V4aXN0cy4KKworQGl0ZW0gQGNvZGV7LW59LCBAY29kZXstLXByZXZpZXd9 CitSdW4gdGhlIGNvbW1hbmQsIGJ1dCBkb24ndCBtb3ZlIGFueXRoaW5nLiAgVGhpcyBpcyB1 c2VmdWwgaWYgeW91Cit3YW50IHRvIHByZXZpZXcgd2hhdCB3b3VsZCBiZSBtb3ZlZCB3aGVu IGNhbGxpbmcgQGNvbW1hbmR7bXZ9LgorCitAaXRlbSBAY29kZXstdn0sIEBjb2Rley0tdmVy Ym9zZX0KK1ByaW50IHRoZSBuYW1lIG9mIGVhY2ggaXRlbSBiZWZvcmUgbW92aW5nIGl0Lgor CitAZW5kIHRhYmxlCisKK0BpdGVtIG9jY3VyIEB2YXJ7cmVnZXhwfSBbQHZhcntubGluZXN9 XQogQGNtaW5kZXggb2NjdXIKIEFsaWFzIHRvIEVtYWNzJ3MgQGNvZGV7b2NjdXJ9LgogQHhy ZWZ7T3RoZXIgUmVwZWF0aW5nIFNlYXJjaCwgLCAsIGVtYWNzLCBUaGUgR05VIEVtYWNzIE1h bnVhbH0uCiAKIEBpdGVtIHBvcGQKK0BpdGVtIHBvcGQgK0B2YXJ7bn0KIEBjbWluZGV4IHBv cGQKIFBvcCBhIGRpcmVjdG9yeSBmcm9tIHRoZSBkaXJlY3Rvcnkgc3RhY2sgYW5kIHN3aXRj aCB0byBhIGFub3RoZXIgcGxhY2UKLWluIHRoZSBzdGFjay4KK2luIHRoZSBzdGFjay4gIFRo aXMgY29tbWFuZCBjYW4gdGFrZSB0aGUgZm9sbG93aW5nIGZvcm1zOgogCi1AaXRlbSBwcmlu dG5sCitAdGFibGUgQGNvZGUKKworQGl0ZW0gcG9wZAorUmVtb3ZlIHRoZSBjdXJyZW50IGRp cmVjdG9yeSBmcm9tIHRoZSBkaXJlY3Rvcnkgc3RhY2sgYW5kIGNoYW5nZSB0bwordGhlIGRp cmVjdG9yeSBiZW5lYXRoIGl0LgorCitAaXRlbSBwb3BkICtAdmFye259CitSZW1vdmUgdGhl IGN1cnJlbnQgZGlyZWN0b3J5IGZyb20gdGhlIGRpcmVjdG9yeSBzdGFjayBhbmQgY2hhbmdl IHRvCit0aGUgQHZhcntudGh9IGRpcmVjdG9yeSBpbiB0aGUgc3RhY2sgKGNvdW50aW5nIGZy b20gemVybykuCisKK0BlbmQgdGFibGUKKworQGl0ZW0gcHJpbnRubCBbQHZhcnthcmd9XUBk b3Rze30KIEBjbWluZGV4IHByaW50bmwKLVByaW50IHRoZSBhcmd1bWVudHMgc2VwYXJhdGVk IGJ5IG5ld2xpbmVzLgorUHJpbnQgZWFjaCBhcmd1bWVudCBzZXBhcmF0ZWQgYnkgbmV3bGlu ZXMuCiAKIEBpdGVtIHB1c2hkCitAaXRlbXggcHVzaGQgQHZhcntkaXJlY3Rvcnl9CitAaXRl bXggcHVzaGQgK0B2YXJ7bn0KIEBjbWluZGV4IHB1c2hkCiBQdXNoIHRoZSBjdXJyZW50IGRp cmVjdG9yeSBvbnRvIHRoZSBkaXJlY3Rvcnkgc3RhY2ssIHRoZW4gY2hhbmdlIHRvCi1hbm90 aGVyIGRpcmVjdG9yeS4KK2Fub3RoZXIgZGlyZWN0b3J5LiAgVGhpcyBjb21tYW5kIGNhbiB0 YWtlIHRoZSBmb2xsb3dpbmcgZm9ybXM6CisKK0B0YWJsZSBAY29kZQorCitAdmluZGV4IGVz aGVsbC1wdXNoZC10b2hvbWUKK0BpdGVtIHB1c2hkCitTd2FwIHRoZSBjdXJyZW50IGRpcmVj dG9yeSB3aXRoIHRoZSBkaXJlY3Rvcnkgb24gdGhlIHRvcCBvZiB0aGUgc3RhY2suCitJZiBA Y29kZXtlc2hlbGwtcHVzaGQtdG9ob21lfSBpcyBub24tQGNvZGV7bmlsfSwgcHVzaCB0aGUg Y3VycmVudAorZGlyZWN0b3J5IG9udG8gdGhlIHN0YWNrIGFuZCBjaGFuZ2UgdG8gdGhlIHVz ZXIncyBob21lIGRpcmVjdG9yeSAobGlrZQorQHNhbXB7cHVzaGQgfn0pLgogCiBAdmluZGV4 IGVzaGVsbC1wdXNoZC1kdW5pcXVlCitAaXRlbSBwdXNoZCBAdmFye2RpcmVjdG9yeX0KK1B1 c2ggdGhlIGN1cnJlbnQgZGlyZWN0b3J5IG9udG8gdGhlIHN0YWNrIGFuZCBjaGFuZ2UgdG8K K0B2YXJ7ZGlyZWN0b3J5fS4gIElmIEBjb2Rle2VzaGVsbC1wdXNoZC1kdW5pcXVlfSBpcyBu b24tQGNvZGV7bmlsfSwKK3RoZW4gb25seSB1bmlxdWUgZGlyZWN0b3JpZXMgd2lsbCBiZSBh ZGRlZCB0byB0aGUgc3RhY2suCisKIEB2aW5kZXggZXNoZWxsLXB1c2hkLWRleHRyYWN0Ci1J ZiBAY29kZXtlc2hlbGwtcHVzaGQtZHVuaXF1ZX0gaXMgbm9uLUBjb2Rle25pbH0sIHRoZW4g b25seSB1bmlxdWUKLWRpcmVjdG9yaWVzIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHN0YWNrLiAg SWYKLUBjb2Rle2VzaGVsbC1wdXNoZC1kZXh0cmFjdH0gaXMgbm9uLUBjb2Rle25pbH0sIHRo ZW4gQHNhbXB7cHVzaGQKLStAdmFye259fSB3aWxsIHBvcCB0aGUgQHZhcntufXRoIGRpcmVj dG9yeSB0byB0aGUgdG9wIG9mIHRoZSBzdGFjay4KK0BpdGVtIHB1c2hkICtAdmFye259CitD aGFuZ2UgdG8gdGhlIEB2YXJ7bnRofSBkaXJlY3RvcnkgaW4gdGhlIGRpcmVjdG9yeSBzdGFj ayAoY291bnRpbmcKK2Zyb20gemVybyksIGFuZCBgYHJvdGF0ZScnIHRoZSBzdGFjayBieSBt b3ZpbmcgYW55IGVsZW1lbnRzIGJlZm9yZSB0aGUKK0B2YXJ7bnRofSB0byB0aGUgYm90dG9t LiAgSWYgQGNvZGV7ZXNoZWxsLXB1c2hkLWRleHRyYWN0fSBpcworbm9uLUBjb2Rle25pbH0s IHRoZW4gQHNhbXB7cHVzaGQgK0B2YXJ7bn19IHdpbGwgaW5zdGVhZCBwb3AgdGhlCitAdmFy e259dGggZGlyZWN0b3J5IHRvIHRoZSB0b3Agb2YgdGhlIHN0YWNrLgorCitAZW5kIHRhYmxl CiAKIEBpdGVtIHB3ZAogQGNtaW5kZXggcHdkCiBQcmludHMgdGhlIGN1cnJlbnQgd29ya2lu ZyBkaXJlY3RvcnkuCiAKLUBpdGVtIHJtCitAaXRlbSBybSBbQHZhcntvcHRpb259XUBkb3Rz e30gQHZhcntpdGVtfUBkb3Rze30KIEBjbWluZGV4IHJtCiBSZW1vdmVzIGZpbGVzLCBidWZm ZXJzLCBwcm9jZXNzZXMsIG9yIEVtYWNzIExpc3Agc3ltYm9scywgZGVwZW5kaW5nIG9uCiB0 aGUgYXJndW1lbnQuCkBAIC04MzIsNTYgKzExMTUsODMgQEAgQnVpbHQtaW5zCiBAY29tbWFu ZHtybX0gY2FuIGFsc28gcmVtb3ZlIGRpcmVjdG9yaWVzLiAgT3RoZXJ3aXNlLCBAY29tbWFu ZHtybWRpcn0KIGlzIHJlcXVpcmVkLgogCi1AaXRlbSBybWRpcgorQGNvbW1hbmR7cm19IGFj Y2VwdHMgdGhlIGZvbGxvd2luZyBvcHRpb25zOgorCitAdGFibGUgQGFzaXMKKworQGl0ZW0g QGNvZGV7LWZ9LCBAY29kZXstLWZvcmNlfQorTmV2ZXIgcHJvbXB0IGZvciBjb25maXJtYXRp b24gYmVmb3JlIHJlbW92aW5nIGFuIGl0ZW0uCisKK0BpdGVtIEBjb2Rley1pfSwgQGNvZGV7 LS1pbnRlcmFjdGl2ZX0KK1Byb21wdCBmb3IgY29uZmlybWF0aW9uIGJlZm9yZSByZW1vdmlu ZyBlYWNoIGl0ZW0uCisKK0BpdGVtIEBjb2Rley1ufSwgQGNvZGV7LS1wcmV2aWV3fQorUnVu IHRoZSBjb21tYW5kLCBidXQgZG9uJ3QgcmVtb3ZlIGFueXRoaW5nLiAgVGhpcyBpcyB1c2Vm dWwgaWYgeW91Cit3YW50IHRvIHByZXZpZXcgd2hhdCB3b3VsZCBiZSByZW1vdmVkIHdoZW4g Y2FsbGluZyBAY29tbWFuZHtybX0uCisKK0BpdGVtIEBjb2Rley1yfSwgQGNvZGV7LVJ9LCBA Y29kZXstLXJlY3Vyc2l2ZX0KK1JlbW92ZSBhbnkgc3BlY2lmaWVkIGRpcmVjdG9yaWVzIGFu ZCB0aGVpciBjb250ZW50cyByZWN1cnNpdmVseS4KKworQGl0ZW0gQGNvZGV7LXZ9LCBAY29k ZXstLXZlcmJvc2V9CitQcmludCB0aGUgbmFtZSBvZiBlYWNoIGl0ZW0gYmVmb3JlIHJlbW92 aW5nIGl0LgorCitAZW5kIHRhYmxlCisKK0BpdGVtIHJtZGlyIEB2YXJ7ZGlyZWN0b3J5fUBk b3Rze30KIEBjbWluZGV4IHJtZGlyCiBSZW1vdmVzIGRpcmVjdG9yaWVzIGlmIHRoZXkgYXJl IGVtcHR5LgogCi1AaXRlbSBzZXQKK0BpdGVtIHNldCBbQHZhcnt2YXJ9IEB2YXJ7dmFsdWV9 XUBkb3Rze30KIEBjbWluZGV4IHNldAogU2V0IHZhcmlhYmxlIHZhbHVlcywgdXNpbmcgdGhl IGZ1bmN0aW9uIEBjb2Rle3NldH0gbGlrZSBhIGNvbW1hbmQKIChAcHhyZWZ7U2V0dGluZyBW YXJpYWJsZXMsLCwgZWxpc3AsIEdOVSBFbWFjcyBMaXNwIFJlZmVyZW5jZSBNYW51YWx9KS4K LUEgdmFyaWFibGUgbmFtZSBjYW4gYmUgYSBzeW1ib2wsIGluIHdoaWNoIGNhc2UgaXQgcmVm ZXJzIHRvIGEgTGlzcAotdmFyaWFibGUsIG9yIGEgc3RyaW5nLCByZWZlcnJpbmcgdG8gYW4g ZW52aXJvbm1lbnQgdmFyaWFibGUKK1RoZSB2YWx1ZSBvZiBAdmFye3Zhcn0gY2FuIGJlIGEg c3ltYm9sLCBpbiB3aGljaCBjYXNlIGl0IHJlZmVycyB0byBhCitMaXNwIHZhcmlhYmxlLCBv ciBhIHN0cmluZywgcmVmZXJyaW5nIHRvIGFuIGVudmlyb25tZW50IHZhcmlhYmxlCiAoQHB4 cmVme0FyZ3VtZW50c30pLgogCi1AaXRlbSBzZXRxCitAaXRlbSBzZXRxIFtAdmFye3N5bWJv bH0gQHZhcnt2YWx1ZX1dQGRvdHN7fQogQGNtaW5kZXggc2V0cQogU2V0IHZhcmlhYmxlIHZh bHVlcywgdXNpbmcgdGhlIGZ1bmN0aW9uIEBjb2Rle3NldHF9IGxpa2UgYSBjb21tYW5kCiAo QHB4cmVme1NldHRpbmcgVmFyaWFibGVzLCwsIGVsaXNwLCBHTlUgRW1hY3MgTGlzcCBSZWZl cmVuY2UgTWFudWFsfSkuCiAKLUBpdGVtIHNvdXJjZQorQGl0ZW0gc291cmNlIEB2YXJ7Zmls ZX0gW0B2YXJ7YXJndW1lbnR9XUBkb3Rze30KIEBjbWluZGV4IHNvdXJjZQotU291cmNlIGFu IEVzaGVsbCBmaWxlIGluIGEgc3Vic2hlbGwgZW52aXJvbm1lbnQuICBUaGlzIGlzIG5vdCB0 byBiZQotY29uZnVzZWQgd2l0aCB0aGUgY29tbWFuZCBAY29tbWFuZHsufSwgd2hpY2ggc291 cmNlcyBhIGZpbGUgaW4gdGhlCi1jdXJyZW50IGVudmlyb25tZW50LgorU291cmNlIGFuIEVz aGVsbCBzY3JpcHQgbmFtZWQgQHZhcntmaWxlfSBpbiBhIHN1YnNoZWxsIGVudmlyb25tZW50 LAorcGFzc2luZyBhbnkgQHZhcnthcmd1bWVudHN9IHRvIHRoZSBzY3JpcHQgKEBweHJlZntT Y3JpcHRzfSkuICBUaGlzIGlzCitub3QgdG8gYmUgY29uZnVzZWQgd2l0aCB0aGUgY29tbWFu ZCBAY29tbWFuZHsufSwgd2hpY2ggc291cmNlcyBhIGZpbGUKK2luIHRoZSBjdXJyZW50IGVu dmlyb25tZW50LgogCi1AaXRlbSB0aW1lCitAaXRlbSB0aW1lIEB2YXJ7Y29tbWFuZH1AZG90 c3t9CiBAY21pbmRleCB0aW1lCi1TaG93IHRoZSB0aW1lIGVsYXBzZWQgZHVyaW5nIGEgY29t bWFuZCdzIGV4ZWN1dGlvbi4KK1Nob3cgdGhlIHRpbWUgZWxhcHNlZCBkdXJpbmcgdGhlIGV4 ZWN1dGlvbiBvZiBAdmFye2NvbW1hbmR9LgogCi1AaXRlbSB1bWFzaworQGl0ZW0gdW1hc2sg Wy1TXSBbQHZhcnttb2RlfV0KIEBjbWluZGV4IHVtYXNrCi1TZXQgb3IgdmlldyB0aGUgZGVm YXVsdCBmaWxlIHBlcm1pc3Npb25zIGZvciBuZXdseSBjcmVhdGVkIGZpbGVzIGFuZAotZGly ZWN0b3JpZXMuCitWaWV3IHRoZSBkZWZhdWx0IGZpbGUgcGVybWlzc2lvbnMgZm9yIG5ld2x5 IGNyZWF0ZWQgZmlsZXMgYW5kCitkaXJlY3Rvcmllcy4gIFdpdGggQHZhcnttb2RlfSwgc2V0 IHRoZSBkZWZhdWx0IHBlcm1pc3Npb25zIHRvIHRoaXMKK3ZhbHVlLiAgSWYgeW91IHBhc3Mg QGNvZGV7LXN9IG9yIEBjb2Rley0tc3ltYm9saWN9LCB2aWV3IHRoZSBtb2RlCitzeW1ib2xp Y2FsbHkuCiAKLUBpdGVtIHVuc2V0CitAaXRlbSB1bnNldCBbQHZhcnt2YXJ9XUBkb3Rze30K IEBjbWluZGV4IHVuc2V0Ci1VbnNldCBvbmUgb3IgbW9yZSB2YXJpYWJsZXMuICBBcyB3aXRo IEBjb21tYW5ke3NldH0sIGEgdmFyaWFibGUgbmFtZQotY2FuIGJlIGEgc3ltYm9sLCBpbiB3 aGljaCBjYXNlIGl0IHJlZmVycyB0byBhIExpc3AgdmFyaWFibGUsIG9yIGEKLXN0cmluZywg cmVmZXJyaW5nIHRvIGFuIGVudmlyb25tZW50IHZhcmlhYmxlLgorVW5zZXQgb25lIG9yIG1v cmUgdmFyaWFibGVzLiAgQXMgd2l0aCBAY29tbWFuZHtzZXR9LCB0aGUgdmFsdWUgb2YKK0B2 YXJ7dmFyfSBjYW4gYmUgYSBzeW1ib2wsIGluIHdoaWNoIGNhc2UgaXQgcmVmZXJzIHRvIGEg TGlzcCB2YXJpYWJsZSwKK29yIGEgc3RyaW5nLCByZWZlcnJpbmcgdG8gYW4gZW52aXJvbm1l bnQgdmFyaWFibGUuCiAKLUBpdGVtIHdhaXQKK0BpdGVtIHdhaXQgW0B2YXJ7cHJvY2Vzc31d QGRvdHN7fQogQGNtaW5kZXggd2FpdAotV2FpdCB1bnRpbCBhIHByb2Nlc3MgaGFzIHN1Y2Nl c3NmdWxseSBjb21wbGV0ZWQuCitXYWl0IHVudGlsIG9uZSBvciBtb3JlIHByb2Nlc3NlcyBo YXZlIGV4aXRlZC4KIAotQGl0ZW0gd2hpY2gKK0BpdGVtIHdoaWNoIEB2YXJ7Y29tbWFuZH1A ZG90c3t9CiBAY21pbmRleCB3aGljaAotSWRlbnRpZnkgYSBjb21tYW5kIGFuZCBpdHMgbG9j YXRpb24uCitGb3IgZWFjaCBAdmFye2NvbW1hbmR9LCBpZGVudGlmeSB3aGF0IGtpbmQgb2Yg Y29tbWFuZCBpdCBpcyBhbmQgaXRzCitsb2NhdGlvbi4KIAogQGl0ZW0gd2hvYW1pCiBAY21p bmRleCB3aG9hbWkKLVByaW50IHRoZSBjdXJyZW50IHVzZXIuICBUaGlzIEVzaGVsbCB2ZXJz aW9uIG9mIEBjb21tYW5ke3dob2FtaX0KLXN1cHBvcnRzIFRyYW1wLgorUHJpbnQgdGhlIGN1 cnJlbnQgdXNlci4gIFRoaXMgRXNoZWxsIHZlcnNpb24gb2YgQGNvbW1hbmR7d2hvYW1pfSBp cworY29ubmVjdGlvbi1hd2FyZSwgc28gZm9yIHJlbW90ZSBkaXJlY3RvcmllcywgaXQgd2ls bCBwcmludCB0aGUgdXNlcgorYXNzb2NpYXRlZCB3aXRoIHRoYXQgY29ubmVjdGlvbi4KIEBl bmQgdGFibGUKIAogQHN1YnNlY3Rpb24gRGVmaW5pbmcgbmV3IGJ1aWx0LWluIGNvbW1hbmRz CkBAIC0xMzUzLDYgKzE2NjMsMTEgQEAgU2NyaXB0cwogYXJlIGludm9rZWQgZnJvbSBFc2hl bGwgd2l0aCBAY29tbWFuZHtzb3VyY2V9LCBvciBmcm9tIGFueXdoZXJlIGluIEVtYWNzCiB3 aXRoIEBjb2Rle2VzaGVsbC1zb3VyY2UtZmlsZX0uCiAKK0xpa2Ugd2l0aCBhbGlhc2VzIChA cHhyZWZ7QWxpYXNlc30pLCBFc2hlbGwgc2NyaXB0cyBjYW4gYWNjZXB0IGFueQorbnVtYmVy IG9mIGFyZ3VtZW50cy4gIFdpdGhpbiB0aGUgc2NyaXB0LCB5b3UgY2FuIHJlZmVyIHRvIHRo ZXNlIHdpdGgKK3RoZSBzcGVjaWFsIHZhcmlhYmxlcyBAY29kZXskMH0sIEBjb2RleyQxfSwg QGRvdHN7fSwgQGNvZGV7JDl9LCBhbmQKK0Bjb2RleyQqfS4KKwogQGNtaW5kZXggLgogSWYg eW91IHdpc2ggdG8gbG9hZCBhIHNjcmlwdCBpbnRvIHlvdXIgQGVtcGh7Y3VycmVudH0gZW52 aXJvbm1lbnQsCiByYXRoZXIgdGhhbiBpbiBhIHN1YnNoZWxsLCB1c2UgdGhlIEBjb2Rley59 IGNvbW1hbmQuCkBAIC0xNDUyLDcgKzE3NjcsNyBAQCBEb2xsYXJzIEV4cGFuc2lvbgogQGNv bW1hbmR7QHZhcntjb21tYW5kfX0sIGJ1dCB3cml0ZXMgdGhlIG91dHB1dCB0byBhIHRlbXBv cmFyeSBmaWxlIGFuZAogcmV0dXJucyB0aGUgZmlsZSBuYW1lLgogCi1AaXRlbSAkQHZhcntl eHByfVtAdmFye2kuLi59XQorQGl0ZW0gJEB2YXJ7ZXhwcn1bQHZhcntpQGRvdHN7fX1dCiBF eHBhbmRzIHRvIHRoZSBAdmFye2l9dGggZWxlbWVudCBvZiB0aGUgcmVzdWx0IG9mIEB2YXJ7 ZXhwcn0sIGFuCiBleHByZXNzaW9uIGluIG9uZSBvZiB0aGUgYWJvdmUgZm9ybXMgbGlzdGVk IGhlcmUuICBJZiBtdWx0aXBsZSBpbmRpY2VzCiBhcmUgc3VwcGxpZWQsIHRoaXMgd2lsbCBy ZXR1cm4gYSBsaXN0IGNvbnRhaW5pbmcgdGhlIGVsZW1lbnRzIGZvciBlYWNoCkBAIC0xNTAx LDcgKzE4MTYsNyBAQCBEb2xsYXJzIEV4cGFuc2lvbgogZXhwYW5kIHRvIEBjb2RlezJ9LCBp LmUuQDogdGhlIHNlY29uZCBlbGVtZW50IG9mIHRoZSBmaXJzdCBsaXN0IG1lbWJlcgogKGFs bCBpbmRpY2VzIGFyZSB6ZXJvLWJhc2VkKS4KIAotQGl0ZW0gJEB2YXJ7ZXhwcn1bQHZhcnty ZWdleHB9IEB2YXJ7aS4uLn1dCitAaXRlbSAkQHZhcntleHByfVtAdmFye3JlZ2V4cH0gQHZh cntpQGRvdHN7fX1dCiBBcyBhYm92ZSAod2hlbiBAdmFye2V4cHJ9IGV4cGFuZHMgdG8gYSBz dHJpbmcpLCBidXQgdXNlIEB2YXJ7cmVnZXhwfQogdG8gc3BsaXQgdGhlIHN0cmluZy4gIEB2 YXJ7cmVnZXhwfSBjYW4gYmUgYW55IGZvcm0gb3RoZXIgdGhhbiBhCiBudW1iZXIuICBGb3Ig ZXhhbXBsZSwgQHNhbXB7JEB2YXJ7dmFyfVs6IDBdfSB3aWxsIHJldHVybiB0aGUgZmlyc3QK QEAgLTIyNzUsMTUgKzI1OTAsMjMgQEAgVHJhbXAgZXh0ZW5zaW9ucwogCiBAdGFibGUgQGNv ZGUKIAotQGl0ZW0gc3UKK0BpdGVtIHN1IFstIHwgLWxdIFtAdmFye3VzZXJ9XQogQGNtaW5k ZXggc3UKLUBpdGVteCBzdWRvCitVc2VzIFRSQU1QJ3MgQGNvbW1hbmR7c3V9IG1ldGhvZCAo QHB4cmVme0lubGluZSBtZXRob2RzLCAsICwgdHJhbXAsCitUaGUgVHJhbXAgTWFudWFsfSkg dG8gY2hhbmdlIHRoZSBjdXJyZW50IHVzZXIgdG8gQHZhcnt1c2VyfSAob3Igcm9vdAoraWYg dW5zcGVjaWZpZWQpLiAgV2l0aCBAY29kZXstfSwgQGNvZGV7LWx9LCBvciBAY29kZXstLWxv Z2lufSwgcHJvdmlkZQorYSBsb2dpbiBlbnZpcm9ubWVudC4KKworQGl0ZW0gc3VkbyBbLXUg QHZhcnt1c2VyfV0gWy1zIHwgQHZhcntjb21tYW5kfS4uLl0KIEBjbWluZGV4IHN1ZG8KLUBp dGVteCBkb2FzCitAaXRlbXggZG9hcyBbLXUgQHZhcnt1c2VyfV0gWy1zIHwgQHZhcntjb21t YW5kfS4uLl0KIEBjbWluZGV4IGRvYXMKLVVzZXMgVFJBTVAncyBAY29tbWFuZHtzdX0sIEBj b21tYW5ke3N1ZG99LCBvciBAY29tbWFuZHtkb2FzfSBtZXRob2QKLShAcHhyZWZ7SW5saW5l IG1ldGhvZHMsICwgLCB0cmFtcCwgVGhlIFRyYW1wIE1hbnVhbH0pIHRvIHJ1biBhIGNvbW1h bmQKLXZpYSBAY29tbWFuZHtzdX0sIEBjb21tYW5ke3N1ZG99LCBvciBAY29tbWFuZHtkb2Fz fS4KK1VzZXMgVFJBTVAncyBAY29tbWFuZHtzdWRvfSBvciBAY29tbWFuZHtkb2FzfSBtZXRo b2QgKEBweHJlZntJbmxpbmUKK21ldGhvZHMsICwgLCB0cmFtcCwgVGhlIFRyYW1wIE1hbnVh bH0pIHRvIHJ1biBAdmFye2NvbW1hbmR9IGFzIHJvb3QKK3ZpYSBAY29tbWFuZHtzdWRvfSBv ciBAY29tbWFuZHtkb2FzfS4gIFdoZW4gc3BlY2lmeWluZyBAY29kZXstdQorQHZhcnt1c2Vy fX0gb3IgQGNvZGV7LS11c2VyIEB2YXJ7dXNlcn19LCBydW4gdGhlIGNvbW1hbmQgYXMgQHZh cnt1c2VyfQoraW5zdGVhZC4gIFdpdGggQGNvZGV7LXN9IG9yIEBjb2Rley0tc2hlbGx9LCBz dGFydCBhIHNoZWxsIGluc3RlYWQgb2YKK3J1bm5pbmcgQHZhcntjb21tYW5kfS4KIAogQGVu ZCB0YWJsZQogCkBAIC0yMjk2LDU4ICsyNjE5LDU4IEBAIEV4dHJhIGJ1aWx0LWluIGNvbW1h bmRzCiAKIEB0YWJsZSBAY29kZQogCi1AaXRlbSBjb3VudAorQGl0ZW0gY291bnQgQHZhcntp dGVtfSBAdmFye3NlcX0gW0B2YXJ7b3B0aW9ufV0uLi4KIEBjbWluZGV4IGNvdW50CiBBIHdy YXBwZXIgYXJvdW5kIHRoZSBmdW5jdGlvbiBAY29kZXtjbC1jb3VudH0gKEBweHJlZntTZWFy Y2hpbmcKIFNlcXVlbmNlcywsLCBjbCwgR05VIEVtYWNzIENvbW1vbiBMaXNwIEVtdWxhdGlv bn0pLiAgVGhpcyBjb21tYW5kIGNhbgogYmUgdXNlZCBmb3IgY29tcGFyaW5nIGxpc3RzIG9m IHN0cmluZ3MuCiAKLUBpdGVtIGV4cHIKK0BpdGVtIGV4cHIgQHZhcntzdHJ9IFtAdmFye3Nl cGFyYXRvcn1dIFtAdmFye2FyZ31dLi4uCiBAY21pbmRleCBleHByCiBBbiBpbXBsZW1lbnRh dGlvbiBvZiBAY29tbWFuZHtleHByfSB1c2luZyB0aGUgQ2FsYyBwYWNrYWdlLgogQHhyZWZ7 VG9wLCwsIGNhbGMsIFRoZSBHTlUgRW1hY3MgQ2FsY3VsYXRvcn0uCiAKLUBpdGVtIGZmCitA aXRlbSBmZiBAdmFye2RpcmVjdG9yeX0gQHZhcntwYXR0ZXJufQogQGNtaW5kZXggZmYKIFNo b3J0aGFuZCBmb3IgdGhlIHRoZSBmdW5jdGlvbiBAY29kZXtmaW5kLW5hbWUtZGlyZWR9IChA cHhyZWZ7RGlyZWQKIGFuZCBGaW5kLCAsICwgZW1hY3MsIFRoZSBFbWFjcyBFZGl0b3J9KS4K IAotQGl0ZW0gZ2YKK0BpdGVtIGdmIEB2YXJ7ZGlyZWN0b3J5fSBAdmFye3JlZ2V4cH0KIEBj bWluZGV4IGdmCiBTaG9ydGhhbmQgZm9yIHRoZSB0aGUgZnVuY3Rpb24gQGNvZGV7ZmluZC1n cmVwLWRpcmVkfSAoQHB4cmVme0RpcmVkCiBhbmQgRmluZCwgLCAsIGVtYWNzLCBUaGUgRW1h Y3MgRWRpdG9yfSkuCiAKLUBpdGVtIGludGVyc2VjdGlvbgorQGl0ZW0gaW50ZXJzZWN0aW9u IEB2YXJ7bGlzdDF9IEB2YXJ7bGlzdDJ9IFtAdmFye29wdGlvbn1dLi4uCiBAY21pbmRleCBp bnRlcnNlY3Rpb24KIEEgd3JhcHBlciBhcm91bmQgdGhlIGZ1bmN0aW9uIEBjb2Rle2NsLWlu dGVyc2VjdGlvbn0gKEBweHJlZntMaXN0cyBhcwogU2V0cywsLCBjbCwgR05VIEVtYWNzIENv bW1vbiBMaXNwIEVtdWxhdGlvbn0pLiAgVGhpcyBjb21tYW5kCiBjYW4gYmUgdXNlZCBmb3Ig Y29tcGFyaW5nIGxpc3RzIG9mIHN0cmluZ3MuCiAKLUBpdGVtIG1pc21hdGNoCitAaXRlbSBt aXNtYXRjaCBAdmFye3NlcTF9IEB2YXJ7c2VxMn0gW0B2YXJ7b3B0aW9ufV0uLi4KIEBjbWlu ZGV4IG1pc21hdGNoCiBBIHdyYXBwZXIgYXJvdW5kIHRoZSBmdW5jdGlvbiBAY29kZXtjbC1t aXNtYXRjaH0gKEBweHJlZntTZWFyY2hpbmcKIFNlcXVlbmNlcywsLCBjbCwgR05VIEVtYWNz IENvbW1vbiBMaXNwIEVtdWxhdGlvbn0pLiAgVGhpcyBjb21tYW5kIGNhbgogYmUgdXNlZCBm b3IgY29tcGFyaW5nIGxpc3RzIG9mIHN0cmluZ3MuCiAKLUBpdGVtIHNldC1kaWZmZXJlbmNl CitAaXRlbSBzZXQtZGlmZmVyZW5jZSBAdmFye2xpc3QxfSBAdmFye2xpc3QyfSBbQHZhcntv cHRpb259XS4uLgogQGNtaW5kZXggc2V0LWRpZmZlcmVuY2UKIEEgd3JhcHBlciBhcm91bmQg dGhlIGZ1bmN0aW9uIEBjb2Rle2NsLXNldC1kaWZmZXJlbmNlfSAoQHB4cmVme0xpc3RzCiBh cyBTZXRzLCwsIGNsLCBHTlUgRW1hY3MgQ29tbW9uIExpc3AgRW11bGF0aW9ufSkuICBUaGlz IGNvbW1hbmQgY2FuIGJlCiB1c2VkIGZvciBjb21wYXJpbmcgbGlzdHMgb2Ygc3RyaW5ncy4K IAotQGl0ZW0gc2V0LWV4Y2x1c2l2ZS1vcgorQGl0ZW0gc2V0LWV4Y2x1c2l2ZS1vciBAdmFy e2xpc3QxfSBAdmFye2xpc3QyfSBbQHZhcntvcHRpb259XS4uLgogQGNtaW5kZXggc2V0LWV4 Y2x1c2l2ZS1vcgogQSB3cmFwcGVyIGFyb3VuZCB0aGUgZnVuY3Rpb24gQGNvZGV7Y2wtc2V0 LWV4Y2x1c2l2ZS1vcn0gKEBweHJlZntMaXN0cwogYXMgU2V0cywsLCBjbCwgR05VIEVtYWNz IENvbW1vbiBMaXNwIEVtdWxhdGlvbn0pLiAgVGhpcyBjb21tYW5kIGNhbiBiZQogdXNlZCBm b3IgY29tcGFyaW5nIGxpc3RzIG9mIHN0cmluZ3MuCiAKLUBpdGVtIHN1YnN0aXR1dGUKK0Bp dGVtIHN1YnN0aXR1dGUgQHZhcntuZXd9IEB2YXJ7b2xkfSBAdmFye3NlcX0gW0B2YXJ7b3B0 aW9ufV0uLi4KIEBjbWluZGV4IHN1YnN0aXR1dGUKIEEgd3JhcHBlciBhcm91bmQgdGhlIGZ1 bmN0aW9uIEBjb2Rle2NsLXN1YnN0aXR1dGV9IChAcHhyZWZ7U2VxdWVuY2UKIEZ1bmN0aW9u cywsLCBjbCwgR05VIEVtYWNzIENvbW1vbiBMaXNwIEVtdWxhdGlvbn0pLiAgVGhpcyBjb21t YW5kIGNhbgogYmUgdXNlZCBmb3IgY29tcGFyaW5nIGxpc3RzIG9mIHN0cmluZ3MuCiAKLUBp dGVtIHVuaW9uCitAaXRlbSB1bmlvbiBAdmFye2xpc3QxfSBAdmFye2xpc3QyfSBbQHZhcntv cHRpb259XS4uLgogQGNtaW5kZXggdW5pb24KIEEgd3JhcHBlciBhcm91bmQgdGhlIGZ1bmN0 aW9uIEBjb2Rle2NsLXVuaW9ufSAoQHB4cmVme0xpc3RzIGFzIFNldHMsLCwKIGNsLCBHTlUg RW1hY3MgQ29tbW9uIExpc3AgRW11bGF0aW9ufSkuICBUaGlzIGNvbW1hbmQgY2FuIGJlIHVz ZWQgZm9yCmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lbS11bml4LmVsIGIvbGlzcC9lc2hl bGwvZW0tdW5peC5lbAppbmRleCBhODhjN2UwOTk0Ni4uMTI5NmIxNjAzZTYgMTAwNjQ0Ci0t LSBhL2xpc3AvZXNoZWxsL2VtLXVuaXguZWwKKysrIGIvbGlzcC9lc2hlbGwvZW0tdW5peC5l bApAQCAtNjE4LDExICs2MTgsMTEgQEAgZXNoZWxsL2xuCiAgICAgIDpwcmVzZXJ2ZS1hcmdz CiAgICAgIDpleHRlcm5hbCAibG4iCiAgICAgIDpzaG93LXVzYWdlCi0gICAgIDp1c2FnZSAi W09QVElPTl0uLi4gVEFSR0VUIFtMSU5LX05BTUVdCisgICAgIDp1c2FnZSAiW09QVElPTl0u Li4gVEFSR0VUIExJTktfTkFNRQogICAgb3I6ICBsbiBbT1BUSU9OXS4uLiBUQVJHRVQuLi4g RElSRUNUT1JZCi1DcmVhdGUgYSBsaW5rIHRvIHRoZSBzcGVjaWZpZWQgVEFSR0VUIHdpdGgg b3B0aW9uYWwgTElOS19OQU1FLiAgSWYgdGhlcmUgaXMKLW1vcmUgdGhhbiBvbmUgVEFSR0VU LCB0aGUgbGFzdCBhcmd1bWVudCBtdXN0IGJlIGEgZGlyZWN0b3J5OyAgY3JlYXRlIGxpbmtz Ci1pbiBESVJFQ1RPUlkgdG8gZWFjaCBUQVJHRVQuICBDcmVhdGUgaGFyZCBsaW5rcyBieSBk ZWZhdWx0LCBzeW1ib2xpYyBsaW5rcworQ3JlYXRlIGEgbGluayB0byB0aGUgc3BlY2lmaWVk IFRBUkdFVCB3aXRoIExJTktfTkFNRS4gIElmIHRoZXJlIGlzIG1vcmUKK3RoYW4gb25lIFRB UkdFVCwgdGhlIGxhc3QgYXJndW1lbnQgbXVzdCBiZSBhIGRpcmVjdG9yeTsgIGNyZWF0ZSBs aW5rcyBpbgorRElSRUNUT1JZIHRvIGVhY2ggVEFSR0VULiAgQ3JlYXRlIGhhcmQgbGlua3Mg YnkgZGVmYXVsdCwgc3ltYm9saWMgbGlua3MKIHdpdGggYC0tc3ltYm9saWMnLiAgV2hlbiBj cmVhdGluZyBoYXJkIGxpbmtzLCBlYWNoIFRBUkdFVCBtdXN0IGV4aXN0LiIpCiAgICAobGV0 ICgobm8tZGVyZWZlcmVuY2UgdCkpCiAgICAgIChlc2hlbGwtbXZjcGxuLXRlbXBsYXRlICJs biIgImxpbmtpbmciCmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lc2gtZXh0LmVsIGIvbGlz cC9lc2hlbGwvZXNoLWV4dC5lbAppbmRleCBkYzJiOTNlNTc0Yi4uNDQ4NjFjMjIyYjggMTAw NjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VzaC1leHQuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNo LWV4dC5lbApAQCAtMjUzLDEwICsyNTMsMTAgQEAgZXNoZWxsL2FkZHBhdGgKICAgIkFkZCBh IHNldCBvZiBwYXRocyB0byBQQVRILiIKICAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlvbnMK ICAgICJhZGRwYXRoIiBhcmdzCi0gICAnKCg/YiAiYmVnaW4iIG5pbCBwcmVwZW5kICJhZGQg cGF0aCBlbGVtZW50IGF0IGJlZ2lubmluZyIpCisgICAnKCg/YiAiYmVnaW4iIG5pbCBwcmVw ZW5kICJhZGQgdG8gYmVnaW5uaW5nIG9mICRQQVRIIikKICAgICAgKD9oICJoZWxwIiBuaWwg bmlsICAiZGlzcGxheSB0aGlzIHVzYWdlIG1lc3NhZ2UiKQotICAgICA6dXNhZ2UgIlstYl0g UEFUSAotQWRkcyB0aGUgZ2l2ZW4gUEFUSCB0byAkUEFUSC4iKQorICAgICA6dXNhZ2UgIlst Yl0gRElSLi4uCitBZGRzIHRoZSBnaXZlbiBESVIgdG8gJFBBVEguIikKICAgIChsZXQgKChw YXRoIChlc2hlbGwtZ2V0LXBhdGggdCkpKQogICAgICAoaWYgYXJncwogICAgICAgICAgKHBy b2duCmRpZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lc2gtdmFyLmVsIGIvbGlzcC9lc2hlbGwv ZXNoLXZhci5lbAppbmRleCA1MzdiYzRiMDY0MS4uMDJiNWM3ODU2MjUgMTAwNjQ0Ci0tLSBh L2xpc3AvZXNoZWxsL2VzaC12YXIuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLXZhci5lbApA QCAtNDMzLDcgKzQzMyw3IEBAIGVzaGVsbC9lbnYKICAgICAgKD9oICJoZWxwIiBuaWwgbmls ICJzaG93IHRoaXMgdXNhZ2Ugc2NyZWVuIikKICAgICAgOmV4dGVybmFsICJlbnYiCiAgICAg IDpwYXJzZS1sZWFkaW5nLW9wdGlvbnMtb25seQotICAgICA6dXNhZ2UgIltOQU1FPVZBTFVF XS4uLiBbQ09NTUFORCBbQVJHXS4uLl0iKQorICAgICA6dXNhZ2UgIltOQU1FPVZBTFVFXS4u LiBbQ09NTUFORF0uLi4iKQogICAgKGlmIGFyZ3MKICAgICAgICAob3IgKGVzaGVsbC1wYXJz ZS1sb2NhbC12YXJpYWJsZXMgYXJncykKICAgICAgICAgICAgKGVzaGVsbC1uYW1lZC1jb21t YW5kIChjYXIgYXJncykgKGNkciBhcmdzKSkpCi0tIAoyLjI1LjEKCg== --------------P0YHNpuM6Y5Lk3AYdsp0delw-- From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 31 14:25:37 2024 Received: (at 68838) by debbugs.gnu.org; 31 Jan 2024 19:25:37 +0000 Received: from localhost ([127.0.0.1]:39058 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVGDI-00011B-V9 for submit@debbugs.gnu.org; Wed, 31 Jan 2024 14:25:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39102) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVGDG-00010h-S3 for 68838@debbugs.gnu.org; Wed, 31 Jan 2024 14:25:35 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rVGD1-00052r-Rw; Wed, 31 Jan 2024 14:25:19 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=l4r5o48xxg+BgsEm9ydzR56p1mzGaWCRr2GTpauBs3Y=; b=keViYsltOJB5 inV/RfgVe8+IndhbBVHwLownC2pq/K47oaqT/6ieTpvG9ajreax1+5Y3X+xBicWtQ/Mflur16cle8 gZo5Ka8/kfSSqUnV/q4DGs90bEimQboHNgj5X81OGPxUKrSAXuIERsMwSL1CsT998/zoxGoDiJkT9 oJ9+f7P5HvOJjioLzaIMzYRuDetpwHUOPoLT/rUUTqEAonyAvQ7hDMicF3+Ewbk9Ip1jF1vvCqPvy /QSDf0D5cxLWfWc+nRfqZNNd57+ijFZ2mnW509vO3cXMja2jiT2CITAKZ9UClRlI+KM06lW35Plow sQiDKWBzFaUMuyonMvUJIg==; Date: Wed, 31 Jan 2024 21:25:16 +0200 Message-Id: <86r0hx1f1f.fsf@gnu.org> From: Eli Zaretskii To: Jim Porter In-Reply-To: (message from Jim Porter on Tue, 30 Jan 2024 21:49:39 -0800) Subject: Re: bug#68838: 30.0.50; [PATCH] Document Eshell built-in commands' arguments in the manual References: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 68838 Cc: 68838@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Tue, 30 Jan 2024 21:49:39 -0800 > From: Jim Porter > > Eshell's manual documents all its built-in commands, but the > documentation is too brief in my opinion. It should document the > command-line options. Here's a patch to do so. Thanks. Some comments below. > @item addpath > +@itemx addpath [-b] @var{directory}@dots{} > @cmindex addpath > -Adds a given path or set of paths to the PATH environment variable, or, > -with no arguments, prints the current paths in this variable. > +Adds the directory (or list of directories) @var{directory} to the > +@code{$PATH} environment variable. By default, this adds the > +directories to the end of @code{$PATH}; by passing @code{-b} or > +@code{--begin}, Eshell will instead add the directories to the > +beginning. This could benefit from explaining how to specify a list of directories. > +@item cat @var{file}@dots{} > @cmindex cat > -Concatenate file contents into standard output. If in a pipeline, or > -if the file is not a regular file, directory, or symlink, then this > -command reverts to the system's definition of @command{cat}. > +Concatenate the contents of @var{files} to standard output. If in a ^^^^^^^^^^^ @var{file}s, since the argument is @var{file}. > +@item cd @var{directory} > +Change to the directory @var{directory}. It is better to use Change to the specified @var{directory}. so as to avoid repeating the same word twice. > +@item cd =@var{regex} > +Search the directory ring for a directory matching the regular > +expression @var{regexp} and change to that directory. ^^^^^^ Typo. > -@item info > +@item @code{-r}, @code{--read} > +Read history items from the history file and append it to the current > +shell's history. ^^^^^^^^^ "append them" > +@item printnl [@var{arg}]@dots{} > @cmindex printnl > -Print the arguments separated by newlines. > +Print each argument separated by newlines. "Print all the @var{arg}s separated by newlines." > -@item rm > +@item rm [@var{option}]@dots{} @var{item}@dots{} > @cmindex rm > Removes files, buffers, processes, or Emacs Lisp symbols, depending on > the argument. "...depending on the type of each @var{item}." > +@item source @var{file} [@var{argument}]@dots{} > @cmindex source > -Source an Eshell file in a subshell environment. This is not to be > -confused with the command @command{.}, which sources a file in the > -current environment. > +Source an Eshell script named @var{file} in a subshell environment, > +passing any @var{arguments} to the script (@pxref{Scripts}). This is ^^^^^^^^^^^^^^^^^^^^^^^^^^^ "passing any @var{argument}s" > +@item umask [-S] [@var{mode}] > @cmindex umask > -Set or view the default file permissions for newly created files and > -directories. > +View the default file permissions for newly created files and > +directories. With @var{mode}, set the default permissions to this > +value. If you pass @code{-s} or @code{--symbolic}, view the mode > +symbolically. ^^^^ "set or view", perhaps? > +@item wait [@var{process}]@dots{} > @cmindex wait > -Wait until a process has successfully completed. > +Wait until one or more processes have exited. "Wait until one or more of @var{process}es have exited." > +@item intersection @var{list1} @var{list2} [@var{option}]... What happened to @dots{} (here and elsewhere in the rest of the patch)? From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 31 15:38:27 2024 Received: (at 68838) by debbugs.gnu.org; 31 Jan 2024 20:38:27 +0000 Received: from localhost ([127.0.0.1]:39116 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVHLk-00033t-NL for submit@debbugs.gnu.org; Wed, 31 Jan 2024 15:38:27 -0500 Received: from mail-pl1-x62c.google.com ([2607:f8b0:4864:20::62c]:57827) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVHLh-00033d-39 for 68838@debbugs.gnu.org; Wed, 31 Jan 2024 15:38:23 -0500 Received: by mail-pl1-x62c.google.com with SMTP id d9443c01a7336-1d918008b99so1581905ad.3 for <68838@debbugs.gnu.org>; Wed, 31 Jan 2024 12:38:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706733485; x=1707338285; darn=debbugs.gnu.org; h=in-reply-to:from:content-language:references:cc:to:subject :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=xImFGIeLqLRpnCJMIZqiwfZuFX6e6lxCzTISDwMkrVA=; b=c0McYhQL5rxrIbxuHQp9d3Z56aEw3kZrh/vn2T/cVeyXtn59EsHS/gD93WvFrrxzkX jaSkKwgKXYw9ZRmCOiHmx1HxGMlhZM72qq0tOnE83BjUPbpxXlbCByYsASN5RFxMnknA 4iYVSGFwGrk9PuYGhBgsQox7hWbQSnT/K7yq8j351J6agrywS+LK8TjAanFX+nxxdhfs 3eRKYVnVuhmMzRZLA/q6jP2JXe6a+pkYpSe69FtorTBjkGv0Oy7Pdqbav8UIUSnRp2H+ 6jDWZXw3oyhTtfLmsoljsIjqLKhPX+fTMBDldCe6Mv+WUZ+ApSGI2EtNme3Lu2sc70+8 aXvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706733485; x=1707338285; h=in-reply-to:from:content-language:references:cc:to:subject :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=xImFGIeLqLRpnCJMIZqiwfZuFX6e6lxCzTISDwMkrVA=; b=PgX+Z2qOzMdXhshqv/WeB9u6GEFp/5e/cSu9BOEiQHXd5i1DtpQ8xnD58OKplf9MCo JDJ+SEaFV5CXVjF+f2WC/TMsfiQYXq4XbeK0/HRN/+8MpXpWdUmzrRrFB0IqlznZDkDo Rpj4RS++HkiaSfzUqN/D/R1vgfr2l274hfZSdjLz1V/TCInsC+iTZJfBHSZLRAUQALgO ngaaI4jpkO37kMlgNTldXkVXsTVBj1Gwbaya1pcdI4gSyWU8D/9O4B+M4wQVq8ZIYeYH iQKpZS1CfBmnDzYh1j0yfPgA83+Vty2xz/B3h2jOj8p7O1VfALFEW2qDPZYuiWdZ9MIj 0fhg== X-Gm-Message-State: AOJu0YypLcWwELDPuks5ayooHmXNt4LBkj7YVUqKRTljvh12KPu+PVn5 5Dq6EK2AuWAGsNBw1oPYhJx5jkIR+zezDENMQEgSww8PBtL2zRko X-Google-Smtp-Source: AGHT+IHAEmTrQ6y3W4rYac3yNub8RzJHnxTQCLdNhfvoUiCfsNc64byMqPlvFUy9gjlNPqwosfpGJA== X-Received: by 2002:a17:902:a5ca:b0:1d7:5eef:4d5 with SMTP id t10-20020a170902a5ca00b001d75eef04d5mr2530879plq.49.1706733485195; Wed, 31 Jan 2024 12:38:05 -0800 (PST) Received: from [192.168.1.2] (076-168-148-233.res.spectrum.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id jg3-20020a17090326c300b001d8f6f4541csm4902772plb.75.2024.01.31.12.38.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 31 Jan 2024 12:38:04 -0800 (PST) Content-Type: multipart/mixed; boundary="------------7r1vXqKu01vAYWY0erNMj0gq" Message-ID: <1f4ed2b3-02a3-95a4-84d0-bfd00e889461@gmail.com> Date: Wed, 31 Jan 2024 12:38:03 -0800 MIME-Version: 1.0 Subject: Re: bug#68838: 30.0.50; [PATCH] Document Eshell built-in commands' arguments in the manual To: Eli Zaretskii References: <86r0hx1f1f.fsf@gnu.org> Content-Language: en-US From: Jim Porter In-Reply-To: <86r0hx1f1f.fsf@gnu.org> X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 68838 Cc: 68838@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) This is a multi-part message in MIME format. --------------7r1vXqKu01vAYWY0erNMj0gq Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 1/31/2024 11:25 AM, Eli Zaretskii wrote: >> Date: Tue, 30 Jan 2024 21:49:39 -0800 >> From: Jim Porter >> >> Eshell's manual documents all its built-in commands, but the >> documentation is too brief in my opinion. It should document the >> command-line options. Here's a patch to do so. > > Thanks. Some comments below. Thanks for taking a look. Unless otherwise noted below, I just took your suggestions exactly as-is. > This could benefit from explaining how to specify a list of > directories. Done. (You just pass them as separate arguments.) >> +@item cat @var{file}@dots{} >> @cmindex cat >> -Concatenate file contents into standard output. If in a pipeline, or >> -if the file is not a regular file, directory, or symlink, then this >> -command reverts to the system's definition of @command{cat}. >> +Concatenate the contents of @var{files} to standard output. If in a > ^^^^^^^^^^^ > @var{file}s, since the argument is @var{file}. Oh, I thought were weren't supposed to put the "s" for plurals outside of the @var{...} part. That's good, since I prefer the way you suggested too. >> +@item cd =@var{regex} >> +Search the directory ring for a directory matching the regular >> +expression @var{regexp} and change to that directory. > ^^^^^^ > Typo. Fixed (by changing regex to regexp in the heading). >> +@item umask [-S] [@var{mode}] >> @cmindex umask >> -Set or view the default file permissions for newly created files and >> -directories. >> +View the default file permissions for newly created files and >> +directories. With @var{mode}, set the default permissions to this >> +value. If you pass @code{-s} or @code{--symbolic}, view the mode >> +symbolically. ^^^^ > > "set or view", perhaps? -S actually only applies to viewing (since umask can tell by looking if MODE is symbolic when you set it). I've rearranged this to hopefully make it clearer. >> +@item wait [@var{process}]@dots{} >> @cmindex wait >> -Wait until a process has successfully completed. >> +Wait until one or more processes have exited. > > "Wait until one or more of @var{process}es have exited." Fixed (with a slightly clearer wording to make sure people know that "wait" will wait for *each* process). >> +@item intersection @var{list1} @var{list2} [@var{option}]... > > What happened to @dots{} (here and elsewhere in the rest of the > patch)? Oops, I thought I'd fixed all those cases. Now done. --------------7r1vXqKu01vAYWY0erNMj0gq Content-Type: text/plain; charset=UTF-8; name="0001-Document-arguments-to-Eshell-s-built-in-commands.patch" Content-Disposition: attachment; filename*0="0001-Document-arguments-to-Eshell-s-built-in-commands.patch" Content-Transfer-Encoding: base64 RnJvbSA3YjliMzk1NmZiN2Q4NDU1ZjQ4MWEwM2M3MTExYmM0ZDk2ZjIzZjY2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMTUgQXVnIDIwMjMgMTg6NTE6MjAgLTA3MDAKU3ViamVjdDogW1BB VENIXSBEb2N1bWVudCBhcmd1bWVudHMgdG8gRXNoZWxsJ3MgYnVpbHQtaW4gY29tbWFuZHMK CiogbGlzcC9lc2hlbGwvZW0tdW5peC5lbCAoZXNoZWxsL2xuKTogTElOS19OQU1FIGlzIHJl cXVpcmVkLgoKKiBsaXNwL2VzaGVsbC9lc2gtZXh0LmVsIChlc2hlbGwvYWRkcGF0aCk6Ciog bGlzcC9lc2hlbGwvZXNoLXZhci5lbCAoZXNoZWxsL2Vudik6IEltcHJvdmUgaGVscCBzdHJp bmdzIHNsaWdodGx5LgoKKiBkb2MvbWlzYy9lc2hlbGwudGV4aSAoU2NyaXB0cyk6IEV4cGxh aW4gJDAsICQxLCBldGMuCihEb2xsYXJzIEV4cGFuc2lvbik6IFVzZSAiQGRvdHN7fSIgaW5z dGVhZCBvZiAiLi4uIi4KKEJ1aWx0LWlucywgVHJhbXAgZXh0ZW5zaW9ucywgRXh0cmEgYnVp bHQtaW4gY29tbWFuZHMpOiBEb2N1bWVudApjb21tYW5kLWxpbmUgYXJndW1lbnRzLgotLS0K IGRvYy9taXNjL2VzaGVsbC50ZXhpICAgfCA2NTQgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0KIGxpc3AvZXNoZWxsL2VtLXVuaXguZWwgfCAgIDggKy0KIGxp c3AvZXNoZWxsL2VzaC1leHQuZWwgfCAgIDYgKy0KIGxpc3AvZXNoZWxsL2VzaC12YXIuZWwg fCAgIDIgKy0KIDQgZmlsZXMgY2hhbmdlZCwgNDk3IGluc2VydGlvbnMoKyksIDE3MyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2MvbWlzYy9lc2hlbGwudGV4aSBiL2RvYy9taXNj L2VzaGVsbC50ZXhpCmluZGV4IGRhNWUxZWYxZDAzLi41ZDNlNWM3ZGJkNiAxMDA2NDQKLS0t IGEvZG9jL21pc2MvZXNoZWxsLnRleGkKKysrIGIvZG9jL21pc2MvZXNoZWxsLnRleGkKQEAg LTQ4MSw3MiArNDgxLDg4IEBAIEJ1aWx0LWlucwogCiBAdGFibGUgQGNvZGUKIAotQGl0ZW0g LgorQGl0ZW0gLiBAdmFye2ZpbGV9IFtAdmFye2FyZ3VtZW50fV1AZG90c3t9CiBAY21pbmRl eCAuCi1Tb3VyY2UgYW4gRXNoZWxsIGZpbGUgaW4gdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQu ICBUaGlzIGlzIG5vdCB0byBiZQotY29uZnVzZWQgd2l0aCB0aGUgY29tbWFuZCBAY29tbWFu ZHtzb3VyY2V9LCB3aGljaCBzb3VyY2VzIGEgZmlsZSBpbiBhCi1zdWJzaGVsbCBlbnZpcm9u bWVudC4KK1NvdXJjZSBhbiBFc2hlbGwgc2NyaXB0IG5hbWVkIEB2YXJ7ZmlsZX0gaW4gdGhl IGN1cnJlbnQgZW52aXJvbm1lbnQsCitwYXNzaW5nIGFueSBAdmFye2FyZ3VtZW50c30gdG8g dGhlIHNjcmlwdCAoQHB4cmVme1NjcmlwdHN9KS4gIFRoaXMgaXMKK25vdCB0byBiZSBjb25m dXNlZCB3aXRoIHRoZSBjb21tYW5kIEBjb21tYW5ke3NvdXJjZX0sIHdoaWNoIHNvdXJjZXMg YQorZmlsZSBpbiBhIHN1YnNoZWxsIGVudmlyb25tZW50LgogCiBAaXRlbSBhZGRwYXRoCitA aXRlbXggYWRkcGF0aCBbLWJdIEB2YXJ7ZGlyZWN0b3J5fUBkb3Rze30KIEBjbWluZGV4IGFk ZHBhdGgKLUFkZHMgYSBnaXZlbiBwYXRoIG9yIHNldCBvZiBwYXRocyB0byB0aGUgUEFUSCBl bnZpcm9ubWVudCB2YXJpYWJsZSwgb3IsCi13aXRoIG5vIGFyZ3VtZW50cywgcHJpbnRzIHRo ZSBjdXJyZW50IHBhdGhzIGluIHRoaXMgdmFyaWFibGUuCitBZGRzIGVhY2ggc3BlY2lmaWVk IEB2YXJ7ZGlyZWN0b3J5fSB0byB0aGUgQGNvZGV7JFBBVEh9IGVudmlyb25tZW50Cit2YXJp YWJsZS4gIEJ5IGRlZmF1bHQsIHRoaXMgYWRkcyB0aGUgZGlyZWN0b3JpZXMgdG8gdGhlIGVu ZCBvZgorQGNvZGV7JFBBVEh9LCBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHBhc3NlZCBvbiB0 aGUgY29tbWFuZCBsaW5lOyBieQorcGFzc2luZyBAY29kZXstYn0gb3IgQGNvZGV7LS1iZWdp bn0sIEVzaGVsbCB3aWxsIGluc3RlYWQgYWRkIHRoZQorZGlyZWN0b3JpZXMgdG8gdGhlIGJl Z2lubmluZy4KKworV2l0aCBubyBkaXJlY3RvcmllcywgcHJpbnQgdGhlIGxpc3Qgb2YgZGly ZWN0b3JpZXMgY3VycmVudGx5IHN0b3JlZCBpbgorQGNvZGV7JFBBVEh9LgogCiBAaXRlbSBh bGlhcworQGl0ZW14IGFsaWFzIEB2YXJ7bmFtZX0gW0B2YXJ7Y29tbWFuZH1dCiBAY21pbmRl eCBhbGlhcwotRGVmaW5lIGFuIGFsaWFzIChAcHhyZWZ7QWxpYXNlc30pLiAgVGhpcyBhZGRz IGl0IHRvIHRoZSBhbGlhc2VzIGZpbGUuCitEZWZpbmUgYW4gYWxpYXMgbmFtZWQgQHZhcntu YW1lfSBhbmQgZXhwYW5kaW5nIHRvIEB2YXJ7Y29tbWFuZH0sCithZGRpbmcgaXQgdG8gdGhl IGFsaWFzZXMgZmlsZSAoQHB4cmVme0FsaWFzZXN9KS4gIElmIEB2YXJ7Y29tbWFuZH0gaXMK K29taXR0ZWQsIGRlbGV0ZSB0aGUgYWxpYXMgbmFtZWQgQHZhcntuYW1lfS4gIFdpdGggbm8g YXJndW1lbnRzIGF0IGFsbCwKK2xpc3QgYWxsIHRoZSBjdXJyZW50bHktZGVmaW5lZCBhbGlh c2VzLgogCi1AaXRlbSBiYXNlbmFtZQorQGl0ZW0gYmFzZW5hbWUgQHZhcntmaWxlbmFtZX0K IEBjbWluZGV4IGJhc2VuYW1lCi1SZXR1cm4gYSBmaWxlIG5hbWUgd2l0aG91dCBpdHMgZGly ZWN0b3J5LgorUmV0dXJuIEB2YXJ7ZmlsZW5hbWV9IHdpdGhvdXQgaXRzIGRpcmVjdG9yeS4K IAotQGl0ZW0gY2F0CitAaXRlbSBjYXQgQHZhcntmaWxlfUBkb3Rze30KIEBjbWluZGV4IGNh dAotQ29uY2F0ZW5hdGUgZmlsZSBjb250ZW50cyBpbnRvIHN0YW5kYXJkIG91dHB1dC4gIElm IGluIGEgcGlwZWxpbmUsIG9yCi1pZiB0aGUgZmlsZSBpcyBub3QgYSByZWd1bGFyIGZpbGUs IGRpcmVjdG9yeSwgb3Igc3ltbGluaywgdGhlbiB0aGlzCi1jb21tYW5kIHJldmVydHMgdG8g dGhlIHN5c3RlbSdzIGRlZmluaXRpb24gb2YgQGNvbW1hbmR7Y2F0fS4KK0NvbmNhdGVuYXRl IHRoZSBjb250ZW50cyBvZiBAdmFye2ZpbGV9cyB0byBzdGFuZGFyZCBvdXRwdXQuICBJZiBp biBhCitwaXBlbGluZSwgb3IgaWYgYW55IG9mIHRoZSBmaWxlcyBpcyBub3QgYSByZWd1bGFy IGZpbGUsIGRpcmVjdG9yeSwgb3IKK3N5bWxpbmssIHRoZW4gdGhpcyBjb21tYW5kIHJldmVy dHMgdG8gdGhlIHN5c3RlbSdzIGRlZmluaXRpb24gb2YKK0Bjb21tYW5ke2NhdH0uCiAKIEBp dGVtIGNkCitAaXRlbXggY2QgQHZhcntkaXJlY3Rvcnl9CitAaXRlbXggY2QgLVtAdmFye259 XQorQGl0ZW14IGNkID1bQHZhcntyZWdleHB9XQogQGNtaW5kZXggY2QKLVRoaXMgY29tbWFu ZCBjaGFuZ2VzIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiAgVXN1YWxseSwgaXQg aXMKLWludm9rZWQgYXMgQGtiZHtjZCBAdmFye2Rpcn19IHdoZXJlIEBmaWxle0B2YXJ7ZGly fX0gaXMgdGhlIG5ldwotd29ya2luZyBkaXJlY3RvcnkuICBCdXQgQGNvbW1hbmR7Y2R9IGtu b3dzIGFib3V0IGEgZmV3IHNwZWNpYWwKLWFyZ3VtZW50czoKK0NoYW5nZSB0aGUgY3VycmVu dCB3b3JraW5nIGRpcmVjdG9yeS4gIFRoaXMgY29tbWFuZCBjYW4gdGFrZSBzZXZlcmFsCitm b3JtczoKIAotQGl0ZW1pemUgQG1pbnVze30KLUBpdGVtCi1XaGVuIGl0IHJlY2VpdmVzIG5v IGFyZ3VtZW50IGF0IGFsbCwgaXQgY2hhbmdlcyB0byB0aGUgaG9tZSBkaXJlY3RvcnkuCitA dGFibGUgQGNvZGUKIAotQGl0ZW0KLUdpdmluZyB0aGUgY29tbWFuZCBAa2Jke2NkIC19IGNo YW5nZXMgYmFjayB0byB0aGUgcHJldmlvdXMgd29ya2luZwotZGlyZWN0b3J5ICh0aGlzIGlz IHRoZSBzYW1lIGFzIEBrYmR7Y2QgJC19KS4KK0BpdGVtIGNkCitDaGFuZ2UgdG8gdGhlIHVz ZXIncyBob21lIGRpcmVjdG9yeS4KIAotQGl0ZW0KLVRoZSBjb21tYW5kIEBrYmR7Y2QgPX0g c2hvd3MgdGhlIGRpcmVjdG9yeSByaW5nLiAgRWFjaCBsaW5lIGlzCi1udW1iZXJlZC4KK0Bp dGVtIGNkIEB2YXJ7ZGlyZWN0b3J5fQorQ2hhbmdlIHRvIHRoZSBzcGVjaWZpZWQgQHZhcntk aXJlY3Rvcnl9LgogCi1AaXRlbQotV2l0aCBAa2Jke2NkID1mb299LCBFc2hlbGwgc2VhcmNo ZXMgdGhlIGRpcmVjdG9yeSByaW5nIGZvciBhIGRpcmVjdG9yeQotbWF0Y2hpbmcgdGhlIHJl Z3VsYXIgZXhwcmVzc2lvbiBAc2FtcHtmb299LCBhbmQgY2hhbmdlcyB0byB0aGF0Ci1kaXJl Y3RvcnkuCitAaXRlbSBjZCAtCitDaGFuZ2UgYmFjayB0byB0aGUgcHJldmlvdXMgd29ya2lu ZyBkaXJlY3RvcnkgKHRoaXMgaXMgdGhlIHNhbWUgYXMKK0BrYmR7Y2QgJC19KS4KIAotQGl0 ZW0KLVdpdGggQGtiZHtjZCAtNDJ9LCB5b3UgY2FuIGFjY2VzcyB0aGUgZGlyZWN0b3J5IHN0 YWNrIHNsb3RzIGJ5IG51bWJlci4KK0BpdGVtIGNkIC1AdmFye259CitDaGFuZ2UgdG8gdGhl IGRpcmVjdG9yeSBpbiB0aGUgQHZhcntudGh9IHNsb3Qgb2YgdGhlIGRpcmVjdG9yeSBzdGFj ay4KKworQGl0ZW0gY2QgPQorU2hvdyB0aGUgZGlyZWN0b3J5IHJpbmcuICBFYWNoIGxpbmUg aXMgbnVtYmVyZWQuCisKK0BpdGVtIGNkID1AdmFye3JlZ2V4cH0KK1NlYXJjaCB0aGUgZGly ZWN0b3J5IHJpbmcgZm9yIGEgZGlyZWN0b3J5IG1hdGNoaW5nIHRoZSByZWd1bGFyCitleHBy ZXNzaW9uIEB2YXJ7cmVnZXhwfSBhbmQgY2hhbmdlIHRvIHRoYXQgZGlyZWN0b3J5LgorCitA ZW5kIHRhYmxlCiAKLUBpdGVtCiBAdmluZGV4IGVzaGVsbC1jZC1zaG93cy1kaXJlY3RvcnkK IEB2aW5kZXggZXNoZWxsLWxpc3QtZmlsZXMtYWZ0ZXItY2QKIElmIEBjb2Rle2VzaGVsbC1j ZC1zaG93cy1kaXJlY3Rvcnl9IGlzIG5vbi1AY29kZXtuaWx9LCBAY29tbWFuZHtjZH0KIHdp bGwgcmVwb3J0IHRoZSBkaXJlY3RvcnkgaXQgY2hhbmdlcyB0by4gIElmCiBAY29kZXtlc2hl bGwtbGlzdC1maWxlcy1hZnRlci1jZH0gaXMgbm9uLUBjb2Rle25pbH0sIHRoZW4gQGNvbW1h bmR7bHN9CiBpcyBjYWxsZWQgd2l0aCBhbnkgcmVtYWluaW5nIGFyZ3VtZW50cyBhZnRlciBj aGFuZ2luZyBkaXJlY3Rvcmllcy4KLUBlbmQgaXRlbWl6ZQogCi1AaXRlbSBjbGVhcgorQGl0 ZW0gY2xlYXIgW0B2YXJ7c2Nyb2xsYmFja31dCiBAY21pbmRleCBjbGVhcgogU2Nyb2xscyB0 aGUgY29udGVudHMgb2YgdGhlIEVzaGVsbCB3aW5kb3cgb3V0IG9mIHNpZ2h0LCBsZWF2aW5n IGEKLWJsYW5rIHdpbmRvdy4gIElmIHByb3ZpZGVkIHdpdGggYW4gb3B0aW9uYWwgbm9uLUBj b2Rle25pbH0gYXJndW1lbnQsCi10aGUgc2Nyb2xsYmFjayBjb250ZW50cyBhcmUgY2xlYXJl ZCBpbnN0ZWFkLgorYmxhbmsgd2luZG93LiAgSWYgQHZhcntzY3JvbGxiYWNrfSBpcyBub24t QGNvZGV7bmlsfSwgdGhlIHNjcm9sbGJhY2sKK2NvbnRlbnRzIGFyZSBjbGVhcmVkIGluc3Rl YWQsIGFzIHdpdGggQGNvbW1hbmR7Y2xlYXItc2Nyb2xsYmFja30uCiAKIEBpdGVtIGNsZWFy LXNjcm9sbGJhY2sKIEBjbWluZGV4IGNsZWFyLXNjcm9sbGJhY2sKQEAgLTU1NCwyMSArNTcw LDMwIEBAIEJ1aWx0LWlucwogY29tbWFuZCBAY29tbWFuZHtjbGVhcn0sIHRoaXMgY29tbWFu ZCBkZWxldGVzIGNvbnRlbnQgaW4gdGhlIEVzaGVsbAogYnVmZmVyLgogCi1AaXRlbSBjb21w aWxlCitAaXRlbSBjb21waWxlIFstcCB8IC1pXSBbLW0gQHZhcnttb2RlLW5hbWV9XSBAdmFy e2NvbW1hbmR9QGRvdHN7fQogQGNtaW5kZXggY29tcGlsZQogUnVuIGFuIGV4dGVybmFsIGNv bW1hbmQsIHNlbmRpbmcgaXRzIG91dHB1dCB0byBhIGNvbXBpbGF0aW9uIGJ1ZmZlciBpZgog dGhlIGNvbW1hbmQgd291bGQgb3V0cHV0IHRvIHRoZSBzY3JlZW4gYW5kIGlzIG5vdCBwYXJ0 IG9mIGEgcGlwZWxpbmUKLW9yIHN1YmNvbW1hbmQuICBUaGlzIGlzIHBhcnRpY3VsYXJseSB1 c2VmdWwgd2hlbiBkZWZpbmluZyBhbGlhc2VzLCBzbworb3Igc3ViY29tbWFuZC4KKworV2l0 aCB0aGUgQGNvZGV7LXB9IG9yIEBjb2Rley0tcGxhaW59IG9wdGlvbnMsIGFsd2F5cyBzZW5k IHRoZSBvdXRwdXQKK3RvIHRoZSBFc2hlbGwgYnVmZmVyOyBzaW1pbGFybHksIHdpdGggQGNv ZGV7LWl9IG9yCitAY29kZXstLWludGVyYWN0aXZlfSwgYWx3YXlzIHNlbmQgdGhlIG91dHB1 dCB0byBhIGNvbXBpbGF0aW9uIGJ1ZmZlci4KK1lvdSBjYW4gYWxzbyBzZXQgdGhlIG1vZGUg b2YgdGhlIGNvbXBpbGF0aW9uIGJ1ZmZlciB3aXRoIEBjb2Rley1tCitAdmFye21vZGUtbmFt ZX19IG9yIEBjb2Rley0tbW9kZSBAdmFye21vZGUtbmFtZX19LgorCitAY29tbWFuZHtjb21w aWxlfSBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gZGVmaW5pbmcgYWxpYXNlcywgc28K IHRoYXQgaW50ZXJhY3RpdmVseSwgdGhlIG91dHB1dCBzaG93cyB1cCBpbiBhIGNvbXBpbGF0 aW9uIGJ1ZmZlciwgYnV0CiB5b3UgY2FuIHN0aWxsIHBpcGUgdGhlIG91dHB1dCBlbHNld2hl cmUgaWYgZGVzaXJlZC4gIEZvciBleGFtcGxlLCBpZgogeW91IGhhdmUgYSBncmVwLWxpa2Ug Y29tbWFuZCBvbiB5b3VyIHN5c3RlbSwgeW91IG1pZ2h0IGRlZmluZSBhbiBhbGlhcwogZm9y IGl0IGxpa2Ugc286IEBzYW1we2FsaWFzIG15Z3JlcCAnY29tcGlsZSAtLW1vZGU9Z3JlcC1t b2RlIC0tIG15Z3JlcAogJConfS4KIAotQGl0ZW0gY3AKK0BpdGVtIGNwIFtAdmFye29wdGlv bn1AZG90c3t9XSBAdmFye3NvdXJjZX0gQHZhcntkZXN0fQorQGl0ZW0gY3AgW0B2YXJ7b3B0 aW9ufUBkb3Rze31dIEB2YXJ7c291cmNlfUBkb3Rze30gQHZhcntkaXJlY3Rvcnl9CiBAY21p bmRleCBjcAotQ29weSBhIGZpbGUgdG8gYSBuZXcgbG9jYXRpb24gb3IgY29weSBtdWx0aXBs ZSBmaWxlcyB0byB0aGUgc2FtZQotZGlyZWN0b3J5LgorQ29weSB0aGUgZmlsZSBAdmFye3Nv dXJjZX0gdG8gQHZhcntkZXN0fSBvciBAdmFye3NvdXJjZX0gaW50bworQHZhcntkaXJlY3Rv cnl9LgogCiBAdmluZGV4IGVzaGVsbC1jcC1vdmVyd3JpdGUtZmlsZXMKIEB2aW5kZXggZXNo ZWxsLWNwLWludGVyYWN0aXZlLXF1ZXJ5CkBAIC01NzcsMjYgKzYwMiw1OSBAQCBCdWlsdC1p bnMKIEBjb2Rle2VzaGVsbC1jcC1pbnRlcmFjdGl2ZS1xdWVyeX0gaXMgbm9uLUBjb2Rle25p bH0sIHRoZW4KIEBjb21tYW5ke2NwfSB3aWxsIGFzayBiZWZvcmUgb3ZlcndyaXRpbmcgYW55 dGhpbmcuCiAKLUBpdGVtIGRhdGUKK0Bjb21tYW5ke2NwfSBhY2NlcHRzIHRoZSBmb2xsb3dp bmcgb3B0aW9uczoKKworQHRhYmxlIEBhc2lzCisKK0BpdGVtIEBjb2Rley1hfSwgQGNvZGV7 LS1hcmNoaXZlfQorRXF1aXZhbGVudCB0byBAY29kZXstLW5vLWRlcmVmZXJlbmNlIC0tcHJl c2VydmUgLS1yZWN1cnNpdmV9LgorCitAaXRlbSBAY29kZXstZH0sIEBjb2Rley0tbm8tZGVy ZWZlcmVuY2V9CitEb24ndCBkZXJlZmVyZW5jZSBzeW1ib2xpYyBsaW5rcyB3aGVuIGNvcHlp bmc7IGluc3RlYWQsIGNvcHkgdGhlIGxpbmsKK2l0c2VsZi4KKworQGl0ZW0gQGNvZGV7LWZ9 LCBAY29kZXstLWZvcmNlfQorTmV2ZXIgcHJvbXB0IGZvciBjb25maXJtYXRpb24gYmVmb3Jl IGNvcHlpbmcgYSBmaWxlLgorCitAaXRlbSBAY29kZXstaX0sIEBjb2Rley0taW50ZXJhY3Rp dmV9CitQcm9tcHQgZm9yIGNvbmZpcm1hdGlvbiBiZWZvcmUgY29weWluZyBhIGZpbGUgaWYg dGhlIHRhcmdldCBhbHJlYWR5CitleGlzdHMuCisKK0BpdGVtIEBjb2Rley1ufSwgQGNvZGV7 LS1wcmV2aWV3fQorUnVuIHRoZSBjb21tYW5kLCBidXQgZG9uJ3QgY29weSBhbnl0aGluZy4g IFRoaXMgaXMgdXNlZnVsIGlmIHlvdQord2FudCB0byBwcmV2aWV3IHdoYXQgd291bGQgYmUg cmVtb3ZlZCB3aGVuIGNhbGxpbmcgQGNvbW1hbmR7Y3B9LgorCitAaXRlbSBAY29kZXstcH0s IEBjb2Rley0tcHJlc2VydmV9CitBdHRlbXB0IHRvIHByZXNlcnZlIGZpbGUgYXR0cmlidXRl cyB3aGVuIGNvcHlpbmcuCisKK0BpdGVtIEBjb2Rley1yfSwgQGNvZGV7LVJ9LCBAY29kZXst LXJlY3Vyc2l2ZX0KK0NvcHkgYW55IHNwZWNpZmllZCBkaXJlY3RvcmllcyBhbmQgdGhlaXIg Y29udGVudHMgcmVjdXJzaXZlbHkuCisKK0BpdGVtIEBjb2Rley12fSwgQGNvZGV7LS12ZXJi b3NlfQorUHJpbnQgdGhlIG5hbWUgb2YgZWFjaCBmaWxlIGJlZm9yZSBjb3B5aW5nIGl0Lgor CitAZW5kIHRhYmxlCisKK0BpdGVtIGRhdGUgW0B2YXJ7c3BlY2lmaWVkLXRpbWV9IFtAdmFy e3pvbmV9XV0KIEBjbWluZGV4IGRhdGUKIFByaW50IHRoZSBjdXJyZW50IGxvY2FsIHRpbWUg YXMgYSBodW1hbi1yZWFkYWJsZSBzdHJpbmcuICBUaGlzIGNvbW1hbmQKLWlzIHNpbWlsYXIg dG8sIGJ1dCBzbGlnaHRseSBkaWZmZXJlbnQgZnJvbSwgdGhlIEdOVSBDb3JldXRpbHMKLUBj b21tYW5ke2RhdGV9IGNvbW1hbmQuCitpcyBhbiBhbGlhcyB0byB0aGUgRW1hY3MgTGlzcCBm dW5jdGlvbiBAY29kZXtjdXJyZW50LXRpbWUtc3RyaW5nfQorKEBweHJlZntUaW1lIG9mIERh eSwsLCBlbGlzcCwgR05VIEVtYWNzIExpc3AgUmVmZXJlbmNlIE1hbnVhbH0pLgogCi1AaXRl bSBkaWZmCitAaXRlbSBkaWZmIFtAdmFye29wdGlvbn1dQGRvdHN7fSBAdmFye29sZH0gQHZh cntuZXd9CiBAY21pbmRleCBkaWZmCi1Db21wYXJlIGZpbGVzIHVzaW5nIEVtYWNzJ3MgaW50 ZXJuYWwgQGNvZGV7ZGlmZn0gKG5vdCB0byBiZSBjb25mdXNlZAotd2l0aCBAY29kZXtlZGlm Zn0pLiAgQHhyZWZ7Q29tcGFyaW5nIEZpbGVzLCAsICwgZW1hY3MsIFRoZSBHTlUgRW1hY3MK LU1hbnVhbH0uCitDb21wYXJlIHRoZSBmaWxlcyBAdmFye29sZH0gYW5kIEB2YXJ7bmV3fSB1 c2luZyBFbWFjcydzIGludGVybmFsCitAY29kZXtkaWZmfSAobm90IHRvIGJlIGNvbmZ1c2Vk IHdpdGggQGNvZGV7ZWRpZmZ9KS4gIEB4cmVme0NvbXBhcmluZworRmlsZXMsICwgLCBlbWFj cywgVGhlIEdOVSBFbWFjcyBNYW51YWx9LgogCiBAdmluZGV4IGVzaGVsbC1wbGFpbi1kaWZm LWJlaGF2aW9yCiBJZiBAY29kZXtlc2hlbGwtcGxhaW4tZGlmZi1iZWhhdmlvcn0gaXMgbm9u LUBjb2Rle25pbH0sIHRoZW4gdGhpcwogY29tbWFuZCBkb2VzIG5vdCB1c2UgRW1hY3MncyBp bnRlcm5hbCBAY29kZXtkaWZmfS4gIFRoaXMgaXMgdGhlIHNhbWUKIGFzIHVzaW5nIEBzYW1w e2FsaWFzIGRpZmYgJypkaWZmICRAQConfS4KIAotQGl0ZW0gZGlybmFtZQorQGl0ZW0gZGly bmFtZSBAdmFye2ZpbGVuYW1lfQogQGNtaW5kZXggZGlybmFtZQotUmV0dXJuIHRoZSBkaXJl Y3RvcnkgY29tcG9uZW50IG9mIGEgZmlsZSBuYW1lLgorUmV0dXJuIHRoZSBkaXJlY3Rvcnkg Y29tcG9uZW50IG9mIEB2YXJ7ZmlsZW5hbWV9LgogCiBAaXRlbSBkaXJzCiBAY21pbmRleCBk aXJzCkBAIC02MDQsMjUgKzY2Miw3NSBAQCBCdWlsdC1pbnMKIHRoZSBzdGFjayB1c2luZyB0 aGUgY29tbWFuZHMgQGNvbW1hbmR7cHVzaGR9IGFuZCBAY29tbWFuZHtwb3BkfSwKIHJlc3Bl Y3RpdmVseS4KIAotQGl0ZW0gZHUKK0BpdGVtIGR1IFtAdmFye29wdGlvbn1dQGRvdHN7fSBA dmFye2ZpbGV9QGRvdHN7fQogQGNtaW5kZXggZHUKLVN1bW1hcml6ZSBkaXNrIHVzYWdlIGZv ciBlYWNoIGZpbGUuCitTdW1tYXJpemUgZGlzayB1c2FnZSBmb3IgZWFjaCBmaWxlLCByZWN1 cnNpbmcgaW50byBkaXJlY3Rvcmllcy4KKworQGNvbW1hbmR7ZHV9IGFjY2VwdHMgdGhlIGZv bGxvd2luZyBvcHRpb25zOgorCitAdGFibGUgQGFzaXMKKworQGl0ZW0gQGNvZGV7LWF9LCBA Y29kZXstLWFsbH0KK1ByaW50IHNpemVzIGZvciBmaWxlcywgbm90IGp1c3QgZGlyZWN0b3Jp ZXMuCiAKLUBpdGVtIGVjaG8KK0BpdGVtIEBjb2Rley0tYmxvY2stc2l6ZT1AdmFye3NpemV9 fQorUHJpbnQgc2l6ZXMgYXMgbnVtYmVyIG9mIGJsb2NrcyBvZiBzaXplIEB2YXJ7c2l6ZX0u CisKK0BpdGVtIEBjb2Rley1ifSwgQGNvZGV7LS1ieXRlc30KK1ByaW50IGZpbGUgc2l6ZXMg aW4gYnl0ZXMuCisKK0BpdGVtIEBjb2Rley1jfSwgQGNvZGV7LS10b3RhbH0KK1ByaW50IGEg Z3JhbmQgdG90YWwgb2YgdGhlIHNpemVzIGF0IHRoZSBlbmQuCisKK0BpdGVtIEBjb2Rley1k fSwgQGNvZGV7LS1tYXgtZGVwdGg9QHZhcntkZXB0aH19CitPbmx5IHByaW50IHNpemVzIGZv ciBkaXJlY3RvcmllcyAob3IgZmlsZXMgd2l0aCBAY29kZXstLWFsbH0pIHRoYXQgYXJlCitA dmFye2RlcHRofSBvciBmZXdlciBsZXZlbHMgYmVsb3cgdGhlIGNvbW1hbmQgbGluZSBhcmd1 bWVudHMuCisKK0BpdGVtIEBjb2Rley1ofSwgQGNvZGV7LS1odW1hbi1yZWFkYWJsZX0KK1By aW50IHNpemVzIGluIGh1bWFuLXJlYWRhYmxlIGZvcm1hdCwgd2l0aCBiaW5hcnkgcHJlZml4 ZXMgKHNvIDEgS0IgaXMKKzEwMjQgYnl0ZXMpLgorCitAaXRlbSBAY29kZXstSH0sIEBjb2Rl ey0tc2l9CitQcmludCBzaXplcyBpbiBodW1hbi1yZWFkYWJsZSBmb3JtYXQsIHdpdGggZGVj aW1hbCBwcmVmaXhlcyAoc28gMSBLQgoraXMgMTAwMCBieXRlcykuCisKK0BpdGVtIEBjb2Rl ey1rfSwgQGNvZGV7LS1raWxvYnl0ZXN9CitQcmludCBmaWxlIHNpemVzIGluIGtpbG9ieXRl cyAobGlrZSBAY29kZXstLWJsb2NrLXNpemU9MTAyNH0pLgorCitAaXRlbSBAY29kZXstTH0s IEBjb2Rley0tZGVyZWZlcmVuY2V9CitGb2xsb3cgc3ltYm9saWMgbGlua3Mgd2hlbiB0cmF2 ZXJzaW5nIGZpbGVzLgorCitAaXRlbSBAY29kZXstbX0sIEBjb2Rley0tbWVnYWJ5dGVzfQor UHJpbnQgZmlsZSBzaXplcyBpbiBtZWdhYnl0ZXMgKGxpa2UgQGNvZGV7LS1ibG9jay1zaXpl PTEwNDg1NzZ9KS4KKworQGl0ZW0gQGNvZGV7LXN9LCBAY29kZXstLXN1bW1hcml6ZX0KK0Rv bid0IHJlY3Vyc2UgaW50byBzdWJkaXJlY3RvcmllcyAobGlrZSBAY29kZXstLW1heC1kZXB0 aD0wfSkuCisKK0BpdGVtIEBjb2Rley14fSwgQGNvZGV7LS1vbmUtZmlsZS1zeXN0ZW19CitT a2lwIGFueSBkaXJlY3RvcmllcyB0aGF0IHJlc2lkZSBvbiBkaWZmZXJlbnQgZmlsZXN5c3Rl bXMuCisKK0BlbmQgdGFibGUKKworQGl0ZW0gZWNobyBbLW4gfCAtTl0gW0B2YXJ7YXJnfV1A ZG90c3t9CiBAY21pbmRleCBlY2hvCi1FY2hvZXMgaXRzIGlucHV0LiAgQnkgZGVmYXVsdCwg dGhpcyBwcmludHMgaW4gYSBMaXNwLWZyaWVuZGx5IGZhc2hpb24KLShzbyB0aGF0IHRoZSB2 YWx1ZSBpcyB1c2VmdWwgdG8gYSBMaXNwIGNvbW1hbmQgdXNpbmcgdGhlIHJlc3VsdCBvZgot QGNvbW1hbmR7ZWNob30gYXMgYW4gYXJndW1lbnQpLiAgSWYgYSBzaW5nbGUgYXJndW1lbnQg aXMgcGFzc2VkLAotQGNvbW1hbmR7ZWNob30gcHJpbnRzIHRoYXQ7IGlmIG11bHRpcGxlIGFy Z3VtZW50cyBhcmUgcGFzc2VkLCBpdAotcHJpbnRzIGEgbGlzdCBvZiBhbGwgdGhlIGFyZ3Vt ZW50czsgb3RoZXJ3aXNlLCBpdCBwcmludHMgdGhlIGVtcHR5Ci1zdHJpbmcuCitQcmludHMg dGhlIHZhbHVlIG9mIGVhY2ggQHZhcnthcmd9LiAgQnkgZGVmYXVsdCwgdGhpcyBwcmludHMg aW4gYQorTGlzcC1mcmllbmRseSBmYXNoaW9uIChzbyB0aGF0IHRoZSB2YWx1ZSBpcyB1c2Vm dWwgdG8gYSBMaXNwIGNvbW1hbmQKK3VzaW5nIHRoZSByZXN1bHQgb2YgQGNvbW1hbmR7ZWNo b30gYXMgYW4gYXJndW1lbnQpLiAgSWYgYSBzaW5nbGUKK2FyZ3VtZW50IGlzIHBhc3NlZCwg QGNvbW1hbmR7ZWNob30gcHJpbnRzIHRoYXQ7IGlmIG11bHRpcGxlIGFyZ3VtZW50cworYXJl IHBhc3NlZCwgaXQgcHJpbnRzIGEgbGlzdCBvZiBhbGwgdGhlIGFyZ3VtZW50czsgb3RoZXJ3 aXNlLCBpdAorcHJpbnRzIHRoZSBlbXB0eSBzdHJpbmcuCiAKIEB2aW5kZXggZXNoZWxsLXBs YWluLWVjaG8tYmVoYXZpb3IKIElmIEBjb2Rle2VzaGVsbC1wbGFpbi1lY2hvLWJlaGF2aW9y fSBpcyBub24tQGNvZGV7bmlsfSwgQGNvbW1hbmR7ZWNob30KIHdpbGwgdHJ5IHRvIGJlaGF2 ZSBtb3JlIGxpa2UgYSBwbGFpbiBzaGVsbCdzIEBjb21tYW5ke2VjaG99LCBwcmludGluZwog ZWFjaCBhcmd1bWVudCBhcyBhIHN0cmluZywgc2VwYXJhdGVkIGJ5IGEgc3BhY2UuCiAKLUBp dGVtIGVudgorWW91IGNhbiBjb250cm9sIHdoZXRoZXIgQGNvbW1hbmR7ZWNob30gb3V0cHV0 cyBhIHRyYWlsaW5nIG5ld2xpbmUKK3VzaW5nIEBjb2Rley1ufSB0byBkaXNhYmxlIHRoZSB0 cmFpbGluZyBuZXdsaW5lICh0aGUgZGVmYXVsdCBiZWhhdmlvcikKK29yIEBjb2Rley1OfSB0 byBlbmFibGUgaXQgKHRoZSBkZWZhdWx0IHdoZW4KK0Bjb2Rle2VzaGVsbC1wbGFpbi1lY2hv LWJlaGF2aW9yfSBpcyBub24tQGNvZGV7bmlsfSkuCisKK0BpdGVtIGVudiBbQHZhcnt2YXJ9 PUB2YXJ7dmFsdWV9XUBkb3Rze30gW0B2YXJ7Y29tbWFuZH1dQGRvdHN7fQogQGNtaW5kZXgg ZW52CiBXaXRoIG5vIGFyZ3VtZW50cywgcHJpbnQgdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQg dmFyaWFibGVzLiAgSWYgeW91CiBwYXNzIGFyZ3VtZW50cyB0byB0aGlzIGNvbW1hbmQsIHRo ZW4gQGNvbW1hbmR7ZW52fSB3aWxsIGV4ZWN1dGUgdGhlCkBAIC02MzAsNyArNzM4LDcgQEAg QnVpbHQtaW5zCiBAc2FtcHtAdmFye3Zhcn09QHZhcnt2YWx1ZX19LCBAY29tbWFuZHtlbnZ9 IHdpbGwgZmlyc3Qgc2V0IEB2YXJ7dmFyfQogdG8gQHZhcnt2YWx1ZX0gYmVmb3JlIHJ1bm5p bmcgdGhlIGNvbW1hbmQuCiAKLUBpdGVtIGVzaGVsbC1kZWJ1ZworQGl0ZW0gZXNoZWxsLWRl YnVnIFtlcnJvciB8IGZvcm0gfCBwcm9jZXNzXUBkb3Rze30KIEBjbWluZGV4IGVzaGVsbC1k ZWJ1ZwogVG9nZ2xlIGRlYnVnZ2luZyBpbmZvcm1hdGlvbiBmb3IgRXNoZWxsIGl0c2VsZi4g IFlvdSBjYW4gcGFzcyB0aGlzCiBjb21tYW5kIG9uZSBvciBtb3JlIG9mIHRoZSBmb2xsb3dp bmcgYXJndW1lbnRzOgpAQCAtNjU4LDY1ICs3NjYsODYgQEAgQnVpbHQtaW5zCiBFc2hlbGwg YnVmZmVyLCBidXQgaWYgQGNvZGV7ZXNoZWxsLWtpbGwtb24tZXhpdH0gaXMgQGNvZGV7bmls fSwgdGhlbgogdGhlIGJ1ZmZlciBpcyBtZXJlbHkgYnVyaWVkIGluc3RlYWQuCiAKLUBpdGVt IGV4cG9ydAorQGl0ZW0gZXhwb3J0IFtAdmFye25hbWV9PUB2YXJ7dmFsdWV9XUBkb3Rze30K IEBjbWluZGV4IGV4cG9ydAogU2V0IGVudmlyb25tZW50IHZhcmlhYmxlcyB1c2luZyBpbnB1 dCBsaWtlIEJhc2gncyBAY29tbWFuZHtleHBvcnR9LCBhcwogaW4gQHNhbXB7ZXhwb3J0IEB2 YXJ7dmFyMX09QHZhcnt2YWwxfSBAdmFye3ZhcjJ9PUB2YXJ7dmFsMn0gQGRvdHN7fX0uCiAK LUBpdGVtIGdyZXAKK0BpdGVtIGdyZXAgW0B2YXJ7YXJnfV1AZG90c3t9CiBAY21pbmRleCBn cmVwCi1AaXRlbXggYWdyZXAKK0BpdGVteCBhZ3JlcCBbQHZhcnthcmd9XUBkb3Rze30KIEBj bWluZGV4IGFncmVwCi1AaXRlbXggZWdyZXAKK0BpdGVteCBlZ3JlcCBbQHZhcnthcmd9XUBk b3Rze30KIEBjbWluZGV4IGVncmVwCi1AaXRlbXggZmdyZXAKK0BpdGVteCBmZ3JlcCBbQHZh cnthcmd9XUBkb3Rze30KIEBjbWluZGV4IGZncmVwCi1AaXRlbXggcmdyZXAKK0BpdGVteCBy Z3JlcCBbQHZhcnthcmd9XUBkb3Rze30KIEBjbWluZGV4IHJncmVwCi1AaXRlbXggZ2xpbXBz ZQorQGl0ZW14IGdsaW1wc2UgW0B2YXJ7YXJnfV1AZG90c3t9CiBAY21pbmRleCBnbGltcHNl CiBUaGUgQGNvbW1hbmR7Z3JlcH0gY29tbWFuZHMgYXJlIGNvbXBhdGlibGUgd2l0aCBHTlUg QGNvbW1hbmR7Z3JlcH0sCi1idXQgdXNlIEVtYWNzJ3MgaW50ZXJuYWwgQGNvZGV7Z3JlcH0g aW5zdGVhZC4KK2J1dCBvcGVuIGEgY29tcGlsYXRpb24gYnVmZmVyIGluIEBjb2Rle2dyZXAt bW9kZX0gaW5zdGVhZC4KIEB4cmVme0dyZXAgU2VhcmNoaW5nLCAsICwgZW1hY3MsIFRoZSBH TlUgRW1hY3MgTWFudWFsfS4KIAogQHZpbmRleCBlc2hlbGwtcGxhaW4tZ3JlcC1iZWhhdmlv cgogSWYgQGNvZGV7ZXNoZWxsLXBsYWluLWdyZXAtYmVoYXZpb3J9IGlzIG5vbi1AY29kZXtu aWx9LCB0aGVuIHRoZXNlCi1jb21tYW5kcyBkbyBub3QgdXNlIEVtYWNzJ3MgaW50ZXJuYWwg QGNvZGV7Z3JlcH0uICBUaGlzIGlzIHRoZSBzYW1lIGFzCi11c2luZyBAc2FtcHthbGlhcyBn cmVwICcqZ3JlcCAkQEAqJ30sIHRob3VnaCB0aGlzIHNldHRpbmcgYXBwbGllcyB0bwotYWxs IG9mIHRoZSBidWlsdC1pbiBjb21tYW5kcyBmb3Igd2hpY2ggeW91IHdvdWxkIG5lZWQgdG8g Y3JlYXRlIGEKLXNlcGFyYXRlIGFsaWFzLgorY29tbWFuZHMgZG8gbm90IHVzZSBvcGVuIGEg Y29tcGlsYXRpb24gYnVmZmVyLCBpbnN0ZWFkIHByaW50aW5nIG91dHB1dAordG8gRXNoZWxs J3MgYnVmZmVyLiAgVGhpcyBpcyB0aGUgc2FtZSBhcyB1c2luZyBAc2FtcHthbGlhcyBncmVw ICcqZ3JlcAorJEBAKid9LCB0aG91Z2ggdGhpcyBzZXR0aW5nIGFwcGxpZXMgdG8gYWxsIG9m IHRoZSBidWlsdC1pbiBjb21tYW5kcworZm9yIHdoaWNoIHlvdSB3b3VsZCBuZWVkIHRvIGNy ZWF0ZSBhIHNlcGFyYXRlIGFsaWFzLgogCi1AaXRlbSBoaXN0b3J5CitAaXRlbSBoaXN0b3J5 IFtAdmFye259XQorQGl0ZW14IGhpc3RvcnkgWy1hcnddIFtAdmFye2ZpbGVuYW1lfV0KIEBj bWluZGV4IGhpc3RvcnkKLVByaW50cyBFc2hlbGwncyBpbnB1dCBoaXN0b3J5LiAgV2l0aCBh IG51bWVyaWMgYXJndW1lbnQgQHZhcntOfSwgdGhpcwotY29tbWFuZCBwcmludHMgdGhlIEB2 YXJ7Tn0gbW9zdCByZWNlbnQgaXRlbXMgaW4gdGhlIGhpc3RvcnkuCitQcmludHMgRXNoZWxs J3MgaW5wdXQgaGlzdG9yeS4gIFdpdGggYSBudW1lcmljIGFyZ3VtZW50IEB2YXJ7bn0sIHRo aXMKK2NvbW1hbmQgcHJpbnRzIHRoZSBAdmFye259IG1vc3QgcmVjZW50IGl0ZW1zIGluIHRo ZSBoaXN0b3J5LgorQWx0ZXJuYXRlbHksIHlvdSBjYW4gc3BlY2lmeSB0aGUgZm9sbG93aW5n IG9wdGlvbnM6CisKK0B0YWJsZSBAYXNpcworCitAaXRlbSBAY29kZXstYX0sIEBjb2Rley0t YXBwZW5kfQorQXBwZW5kIG5ldyBoaXN0b3J5IGl0ZW1zIHRvIHRoZSBoaXN0b3J5IGZpbGUu CiAKLUBpdGVtIGluZm8KK0BpdGVtIEBjb2Rley1yfSwgQGNvZGV7LS1yZWFkfQorUmVhZCBo aXN0b3J5IGl0ZW1zIGZyb20gdGhlIGhpc3RvcnkgZmlsZSBhbmQgYXBwZW5kIHRoZW0gdG8g dGhlCitjdXJyZW50IHNoZWxsJ3MgaGlzdG9yeS4KKworQGl0ZW0gQGNvZGV7LXd9LCBAY29k ZXstLXdyaXRlfQorV3JpdGUgdGhlIGN1cnJlbnQgaGlzdG9yeSBsaXN0IHRvIHRoZSBoaXN0 b3J5IGZpbGUuCisKK0BlbmQgdGFibGUKKworQGl0ZW0gaW5mbyBbQHZhcnttYW51YWx9IFtA dmFye2l0ZW19XUBkb3Rze31dCiBAY21pbmRleCBpbmZvCi1Ccm93c2UgdGhlIGF2YWlsYWJs ZSBJbmZvIGRvY3VtZW50YXRpb24uICBUaGlzIGNvbW1hbmQgaXMgdGhlIHNhbWUgYXMKLXRo ZSBleHRlcm5hbCBAY29tbWFuZHtpbmZvfSBjb21tYW5kLCBidXQgdXNlcyBFbWFjcydzIGlu dGVybmFsIEluZm8KLXJlYWRlci4KLUB4cmVme01pc2MgSGVscCwgLCAsIGVtYWNzLCBUaGUg R05VIEVtYWNzIE1hbnVhbH0uCitCcm93c2UgdGhlIGF2YWlsYWJsZSBJbmZvIGRvY3VtZW50 YXRpb24uICBXaXRoIG5vIGFyZ3VtZW50cywgYnJvd3NlCit0aGUgdG9wLWxldmVsIG1lbnUu ICBPdGhlcndpc2UsIHNob3cgdGhlIG1hbnVhbCBmb3IgQHZhcnttYW51YWx9LAorc2VsZWN0 aW5nIHRoZSBtZW51IGVudHJ5IGZvciBAdmFye2l0ZW19LgorCitUaGlzIGNvbW1hbmQgaXMg dGhlIHNhbWUgYXMgdGhlIGV4dGVybmFsIEBjb21tYW5ke2luZm99IGNvbW1hbmQsIGJ1dAor dXNlcyBFbWFjcydzIGludGVybmFsIEluZm8gcmVhZGVyLiAgQHhyZWZ7TWlzYyBIZWxwLCAs ICwgZW1hY3MsIFRoZQorR05VIEVtYWNzIE1hbnVhbH0uCiAKIEBpdGVtIGpvYnMKIEBjbWlu ZGV4IGpvYnMKIExpc3Qgc3VicHJvY2Vzc2VzIG9mIHRoZSBFbWFjcyBwcm9jZXNzLCBpZiBh bnksIHVzaW5nIHRoZSBmdW5jdGlvbgogQGNvZGV7bGlzdC1wcm9jZXNzZXN9LgogCi1AaXRl bSBraWxsCitAaXRlbSBraWxsIFstQHZhcntzaWduYWx9XSBbQHZhcntwaWR9IHwgQHZhcntw cm9jZXNzfV0KIEBjbWluZGV4IGtpbGwKIEtpbGwgcHJvY2Vzc2VzLiAgVGFrZXMgYSBQSUQg b3IgYSBwcm9jZXNzIG9iamVjdCBhbmQgYW4gb3B0aW9uYWwKLXNpZ25hbCBzcGVjaWZpZXIg d2hpY2ggY2FuIGVpdGhlciBiZSBhIG51bWJlciBvciBhIHNpZ25hbCBuYW1lLgorQHZhcntz aWduYWx9IHNwZWNpZmllciB3aGljaCBjYW4gZWl0aGVyIGJlIGEgbnVtYmVyIG9yIGEgc2ln bmFsIG5hbWUuCiAKLUBpdGVtIGxpc3RpZnkKK0BpdGVtIGxpc3RpZnkgW0B2YXJ7YXJnfV1A ZG90c3t9CiBAY21pbmRleCBsaXN0aWZ5Ci1Fc2hlbGwgdmVyc2lvbiBvZiBAY29kZXtsaXN0 fS4gIEFsbG93cyB5b3UgdG8gY3JlYXRlIGEgbGlzdCB1c2luZyBFc2hlbGwKLXN5bnRheCwg cmF0aGVyIHRoYW4gRWxpc3Agc3ludGF4LiAgRm9yIGV4YW1wbGUsIEBzYW1we2xpc3RpZnkg Zm9vIGJhcn0KLWFuZCBAY29kZXsoImZvbyIgImJhciIpfSBib3RoIGV2YWx1YXRlIHRvIEBj b2RleygiZm9vIiAiYmFyIil9LgorUmV0dXJuIHRoZSBhcmd1bWVudHMgYXMgYSBzaW5nbGUg bGlzdC4gIFdpdGggYSBzaW5nbGUgYXJndW1lbnQsIHJldHVybgoraXQgYXMtaXMgaWYgaXQn cyBhbHJlYWR5IGEgbGlzdCwgb3Igb3RoZXJ3aXNlIHdyYXAgaXQgaW4gYSBsaXN0LiAgV2l0 aAorbXVsdGlwbGUgYXJndW1lbnRzLCByZXR1cm4gYSBsaXN0IG9mIGFsbCBvZiB0aGVtLgog Ci1AaXRlbSBsbgorQGl0ZW0gbG4gW0B2YXJ7b3B0aW9ufV1AZG90c3t9IEB2YXJ7dGFyZ2V0 fSBbQHZhcntsaW5rLW5hbWV9XQorQGl0ZW14IGxuIFtAdmFye29wdGlvbn1dQGRvdHN7fSBA dmFye3RhcmdldH1AZG90c3t9IEB2YXJ7ZGlyZWN0b3J5fQogQGNtaW5kZXggbG4KLUNyZWF0 ZSBsaW5rcyB0byBmaWxlcy4KK0NyZWF0ZSBhIGxpbmsgdG8gdGhlIHNwZWNpZmllZCBAdmFy e3RhcmdldH0gbmFtZWQgQHZhcntsaW5rLW5hbWV9IG9yCitjcmVhdGUgbGlua3MgdG8gbXVs dGlwbGUgQHZhcnt0YXJnZXRzfSBpbiBAdmFye2RpcmVjdG9yeX0uCiAKIEB2aW5kZXggZXNo ZWxsLWxuLW92ZXJ3cml0ZS1maWxlcwogQHZpbmRleCBlc2hlbGwtbG4taW50ZXJhY3RpdmUt cXVlcnkKQEAgLTcyNSw3ICs4NTQsMzAgQEAgQnVpbHQtaW5zCiBAY29kZXtlc2hlbGwtbG4t aW50ZXJhY3RpdmUtcXVlcnl9IGlzIG5vbi1AY29kZXtuaWx9LCB0aGVuCiBAY29tbWFuZHts bn0gd2lsbCBhc2sgYmVmb3JlIG92ZXJ3cml0aW5nIGZpbGVzLgogCi1AaXRlbSBsb2NhdGUK K0Bjb21tYW5ke2xufSBhY2NlcHRzIHRoZSBmb2xsb3dpbmcgb3B0aW9uczoKKworQHRhYmxl IEBhc2lzCisKK0BpdGVtIEBjb2Rley1mfSwgQGNvZGV7LS1mb3JjZX0KK05ldmVyIHByb21w dCBmb3IgY29uZmlybWF0aW9uIGJlZm9yZSBsaW5raW5nIGEgdGFyZ2V0LgorCitAaXRlbSBA Y29kZXstaX0sIEBjb2Rley0taW50ZXJhY3RpdmV9CitQcm9tcHQgZm9yIGNvbmZpcm1hdGlv biBiZWZvcmUgbGlua2luZyB0byBhbiBpdGVtIGlmIHRoZSBzb3VyY2UKK2FscmVhZHkgZXhp c3RzLgorCitAaXRlbSBAY29kZXstbn0sIEBjb2Rley0tcHJldmlld30KK1J1biB0aGUgY29t bWFuZCwgYnV0IGRvbid0IG1vdmUgYW55dGhpbmcuICBUaGlzIGlzIHVzZWZ1bCBpZiB5b3UK K3dhbnQgdG8gcHJldmlldyB3aGF0IHdvdWxkIGJlIGxpbmtlZCB3aGVuIGNhbGxpbmcgQGNv bW1hbmR7bG59LgorCitAaXRlbSBAY29kZXstc30sIEBjb2Rley0tc3ltYm9saWN9CitNYWtl IHN5bWJvbGljIGxpbmtzIGluc3RlYWQgb2YgaGFyZCBsaW5rcy4KKworQGl0ZW0gQGNvZGV7 LXZ9LCBAY29kZXstLXZlcmJvc2V9CitQcmludCB0aGUgbmFtZSBvZiBlYWNoIGZpbGUgYmVm b3JlIGxpbmtpbmcgaXQuCisKK0BlbmQgdGFibGUKKworQGl0ZW0gbG9jYXRlIEB2YXJ7YXJn fUBkb3Rze30KIEBjbWluZGV4IGxvY2F0ZQogQWxpYXMgdG8gRW1hY3MncyBAY29kZXtsb2Nh dGV9IGZ1bmN0aW9uLCB3aGljaCBzaW1wbHkgcnVucyB0aGUgZXh0ZXJuYWwKIEBjb21tYW5k e2xvY2F0ZX0gY29tbWFuZCBhbmQgcGFyc2VzIHRoZSByZXN1bHRzLgpAQCAtNzM2LDUxICs4 ODgsMTI5IEBAIEJ1aWx0LWlucwogaW50ZXJuYWwgQGNvZGV7bG9jYXRlfSBpcyBub3QgdXNl ZC4gIFRoaXMgaXMgdGhlIHNhbWUgYXMgdXNpbmcKIEBzYW1we2FsaWFzIGxvY2F0ZSAnKmxv Y2F0ZSAkQEAqJ30uCiAKLUBpdGVtIGxzCitAaXRlbSBscyBbQHZhcntvcHRpb259XUBkb3Rz e30gW0B2YXJ7ZmlsZX1dQGRvdHN7fQogQGNtaW5kZXggbHMKLUxpc3RzIHRoZSBjb250ZW50 cyBvZiBkaXJlY3Rvcmllcy4KK0xpc3QgaW5mb3JtYXRpb24gYWJvdXQgZWFjaCBAdmFye2Zp bGV9LCBpbmNsdWRpbmcgdGhlIGNvbnRlbnRzIG9mIGFueQorc3BlY2lmaWVkIGRpcmVjdG9y aWVzLiAgSWYgQHZhcntmaWxlfSBpcyB1bnNwZWNpZmllZCwgbGlzdCB0aGUKK2NvbnRlbnRz IG9mIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4KKworQHZpbmRleCBlc2hlbGwtbHMtaW5pdGlh bC1hcmdzCitUaGUgdXNlciBvcHRpb24gQGNvZGV7ZXNoZWxsLWxzLWluaXRpYWwtYXJnc30g Y29udGFpbnMgYSBsaXN0IG9mCithcmd1bWVudHMgdG8gaW5jbHVkZSB3aXRoIGFueSBjYWxs IHRvIEBjb21tYW5ke2xzfS4gIEZvciBleGFtcGxlLCB5b3UKK2NhbiBpbmNsdWRlIHRoZSBv cHRpb24gQG9wdGlvbnstaH0gdG8gYWx3YXlzIHVzZSBhIG1vcmUgaHVtYW4tcmVhZGFibGUK K2Zvcm1hdC4KIAogQHZpbmRleCBlc2hlbGwtbHMtdXNlLWNvbG9ycwogSWYgQGNvZGV7ZXNo ZWxsLWxzLXVzZS1jb2xvcnN9IGlzIG5vbi1AY29kZXtuaWx9LCB0aGUgY29udGVudHMgb2Yg YQogZGlyZWN0b3J5IGlzIGNvbG9yLWNvZGVkIGFjY29yZGluZyB0byBmaWxlIHR5cGUgYW5k IHN0YXR1cy4gIFRoZXNlCiBjb2xvcnMgYW5kIHRoZSByZWdleHBzIHVzZWQgdG8gaWRlbnRp ZnkgdGhlaXIgY29ycmVzcG9uZGluZyBmaWxlcyBjYW4KLWJlIGN1c3RvbWl6ZWQgdmlhIEB3 e0BrYmR7TS14IGN1c3RvbWl6ZS1ncm91cCBAa2V5e1JFVH0gZXNoZWxsLWxzIEBrZXl7UkVU fX19LgorYmUgY3VzdG9taXplZCB2aWEgQHd7QGtiZHtNLXggY3VzdG9taXplLWdyb3VwIEBr ZXl7UkVUfSBlc2hlbGwtbHMKK0BrZXl7UkVUfX19LgorCitAY29tbWFuZHtsc30gc3VwcG9y dHMgdGhlIGZvbGxvd2luZyBvcHRpb25zOgorCitAdGFibGUgQGFzaXMKKworQGl0ZW0gQGNv ZGV7LWF9LCBAY29kZXstLWFsbH0KK0xpc3QgYWxsIGZpbGVzLCBpbmNsdWRpbmcgb25lcyBz dGFydGluZyB3aXRoIEBzYW1wey59LgorCitAaXRlbSBAY29kZXstQX0sIEBjb2Rley0tYWxt b3N0LWFsbH0KK0xpa2UgQGNvZGV7LS1hbGx9LCBidXQgZG9uJ3QgbGlzdCB0aGUgY3VycmVu dCBkaXJlY3RvcnkgKEBmaWxley59KSBvcgordGhlIHBhcmVudCBkaXJlY3RvcnkgKEBmaWxl ey4ufSkuCisKK0BpdGVtIEBjb2Rley1jfSwgQGNvZGV7LS1ieS1jdGltZX0KK1NvcnQgZmls ZXMgYnkgbGFzdCBzdGF0dXMgY2hhbmdlIHRpbWUsIHdpdGggbmV3ZXN0IGZpbGVzIGZpcnN0 LgorCitAaXRlbSBAY29kZXstQ30KK0xpc3QgZW50cmllcyBieSBjb2x1bW5zLgorCitAaXRl bSBAY29kZXstZH0sIEBjb2Rley0tZGlyZWN0b3J5fQorTGlzdCBkaXJlY3RvcnkgZW50cmll cyBpbnN0ZWFkIG9mIHRoZWlyIGNvbnRlbnRzLgorCitAaXRlbSBAY29kZXstaH0sIEBjb2Rl ey0taHVtYW4tcmVhZGFibGV9CitQcmludCBzaXplcyBpbiBodW1hbi1yZWFkYWJsZSBmb3Jt YXQsIHdpdGggYmluYXJ5IHByZWZpeGVzIChzbyAxIEtCIGlzCisxMDI0IGJ5dGVzKS4KKwor QGl0ZW0gQGNvZGV7LUh9LCBAY29kZXstLXNpfQorUHJpbnQgc2l6ZXMgaW4gaHVtYW4tcmVh ZGFibGUgZm9ybWF0LCB3aXRoIGRlY2ltYWwgcHJlZml4ZXMgKHNvIDEgS0IKK2lzIDEwMDAg Ynl0ZXMpLgorCitAaXRlbSBAY29kZXstSUB2YXJ7cGF0dGVybn19LCBAY29kZXstLWlnbm9y ZT1AdmFye3BhdHRlcm59fQorRG9uJ3QgbGlzdCBkaXJlY3RvcnkgZW50cmllcyBtYXRjaGlu ZyBAdmFye3BhdHRlcm59LgorCitAaXRlbSBAY29kZXsta30sIEBjb2Rley0ta2lsb2J5dGVz fQorUHJpbnQgc2l6ZXMgYXMgMTAyNC1ieXRlIGtpbG9ieXRlcy4KIAogQHZpbmRleCBlc2hl bGwtbHMtZGF0ZS1mb3JtYXQKLVRoZSB1c2VyIG9wdGlvbiBAY29kZXtlc2hlbGwtbHMtZGF0 ZS1mb3JtYXR9IGRldGVybWluZXMgaG93IHRoZSBkYXRlCi1pcyBkaXNwbGF5ZWQgd2hlbiB1 c2luZyB0aGUgQG9wdGlvbnstbH0gb3B0aW9uLiAgVGhlIGRhdGUgaXMgcHJvZHVjZWQKLXVz aW5nIHRoZSBmdW5jdGlvbiBAY29kZXtmb3JtYXQtdGltZS1zdHJpbmd9IChAcHhyZWZ7VGlt ZSBQYXJzaW5nLCwsCi1lbGlzcCwgR05VIEVtYWNzIExpc3AgUmVmZXJlbmNlIE1hbnVhbH0p LgorQGl0ZW0gQGNvZGV7LWx9CitVc2UgYSBsb25nIGxpc3RpbmcgZm9ybWF0IHNob3dpbmcg ZGV0YWlscyBmb3IgZWFjaCBmaWxlLiAgVGhlIHVzZXIKK29wdGlvbiBAY29kZXtlc2hlbGwt bHMtZGF0ZS1mb3JtYXR9IGRldGVybWluZXMgaG93IHRoZSBkYXRlIGlzCitkaXNwbGF5ZWQg d2hlbiB1c2luZyB0aGlzIG9wdGlvbi4gIFRoZSBkYXRlIGlzIHByb2R1Y2VkIHVzaW5nIHRo ZQorZnVuY3Rpb24gQGNvZGV7Zm9ybWF0LXRpbWUtc3RyaW5nfSAoQHB4cmVme1RpbWUgUGFy c2luZywsLCBlbGlzcCwgR05VCitFbWFjcyBMaXNwIFJlZmVyZW5jZSBNYW51YWx9KS4KIAot QHZpbmRleCBlc2hlbGwtbHMtaW5pdGlhbC1hcmdzCi1UaGUgdXNlciBvcHRpb24gQGNvZGV7 ZXNoZWxsLWxzLWluaXRpYWwtYXJnc30gY29udGFpbnMgYSBsaXN0IG9mCi1hcmd1bWVudHMg dG8gaW5jbHVkZSB3aXRoIGFueSBjYWxsIHRvIEBjb21tYW5ke2xzfS4gIEZvciBleGFtcGxl LCB5b3UKLWNhbiBpbmNsdWRlIHRoZSBvcHRpb24gQG9wdGlvbnstaH0gdG8gYWx3YXlzIHVz ZSBhIG1vcmUgaHVtYW4tcmVhZGFibGUKLWZvcm1hdC4KK0BpdGVtIEBjb2Rley1MfSwgQGNv ZGV7LS1kZXJlZmVyZW5jZX0KK0ZvbGxvdyBzeW1ib2xpYyBsaW5rcyB3aGVuIGxpc3Rpbmcg ZW50cmllcy4KKworQGl0ZW0gQGNvZGV7LW59LCBAY29kZXstLW51bWVyaWMtdWlkLWdpZH0K K1Nob3cgVUlEcyBhbmQgR0lEcyBudW1lcmljYWxseSwgaW5zdGVhZCBvZiB1c2luZyB0aGVp ciBuYW1lcy4KKworQGl0ZW0gQGNvZGV7LXJ9LCBAY29kZXstLXJldmVyc2V9CitSZXZlcnNl IG9yZGVyIHdoZW4gc29ydGluZy4KKworQGl0ZW0gQGNvZGV7LVJ9LCBAY29kZXstLXJlY3Vy c2l2ZX0KK0xpc3Qgc3ViZGlyZWN0b3JpZXMgcmVjdXJzaXZlbHkuCisKK0BpdGVtIEBjb2Rl ey1zfSwgQGNvZGV7LS1zaXplfQorU2hvdyB0aGUgc2l6ZSBvZiBlYWNoIGZpbGUgaW4gYmxv Y2tzLgogCiBAdmluZGV4IGVzaGVsbC1scy1kZWZhdWx0LWJsb2Nrc2l6ZQotVGhlIHVzZXIg b3B0aW9uIEBjb2Rle2VzaGVsbC1scy1kZWZhdWx0LWJsb2Nrc2l6ZX0gZGV0ZXJtaW5lcyB0 aGUKLWRlZmF1bHQgYmxvY2tzaXplIHVzZWQgd2hlbiBkaXNwbGF5aW5nIGZpbGUgc2l6ZXMg d2l0aCB0aGUgb3B0aW9uCi1Ab3B0aW9uey1zfS4KK0BpdGVtIEBjb2Rley1TfQorU29ydCBi eSBmaWxlIHNpemUsIHdpdGggbGFyZ2VzdCBmaWxlcyBmaXJzdC4gIFRoZSB1c2VyIG9wdGlv bgorQGNvZGV7ZXNoZWxsLWxzLWRlZmF1bHQtYmxvY2tzaXplfSBkZXRlcm1pbmVzIHRoZSBk ZWZhdWx0IGJsb2Nrc2l6ZQordXNlZCB3aGVuIGRpc3BsYXlpbmcgZmlsZSBzaXplcyB3aXRo IHRoaXMgb3B0aW9uLgorCitAaXRlbSBAY29kZXstdH0KK1NvcnQgYnkgbW9kaWZpY2F0aW9u IHRpbWUsIHdpdGggbmV3ZXN0IGZpbGVzIGZpcnN0LgogCi1AaXRlbSBtYWtlCitAaXRlbSBA Y29kZXstdX0KK1NvcnQgYnkgbGFzdCBhY2Nlc3MgdGltZSwgd2l0aCBuZXdlc3QgZmlsZXMg Zmlyc3QuCisKK0BpdGVtIEBjb2Rley1VfQorRG8gbm90IHNvcnQgcmVzdWx0cy4gIEluc3Rl YWQsIGxpc3QgZW50cmllcyBpbiB0aGVpciBkaXJlY3Rvcnkgb3JkZXIuCisKK0BpdGVtIEBj b2Rley14fQorTGlzdCBlbnRyaWVzIGJ5IGxpbmVzIGluc3RlYWQgb2YgYnkgY29sdW1ucy4K KworQGl0ZW0gQGNvZGV7LVh9CitTb3J0IGFscGhhYmV0aWNhbGx5IGJ5IGZpbGUgZXh0ZW5z aW9uLgorCitAaXRlbSBAY29kZXstMX0KK0xpc3Qgb25lIGZpbGUgcGVyIGxpbmUuCisKK0Bl bmQgdGFibGUKKworQGl0ZW0gbWFrZSBbQHZhcnthcmd9XUBkb3Rze30KIEBjbWluZGV4IG1h a2UKIFJ1biBAY29tbWFuZHttYWtlfSB0aHJvdWdoIEBjb2Rle2NvbXBpbGV9IHdoZW4gcnVu IGFzeW5jaHJvbm91c2x5CiAoZS5nLiwgQHNhbXB7bWFrZSAmfSkuICBAeHJlZntDb21waWxh dGlvbiwgLCAsIGVtYWNzLCBUaGUgR05VIEVtYWNzCiBNYW51YWx9LiAgT3RoZXJ3aXNlIGNh bGwgdGhlIGV4dGVybmFsIEBjb21tYW5ke21ha2V9IGNvbW1hbmQuCiAKLUBpdGVtIG1hbgor QGl0ZW0gbWFuIFtAdmFye2FyZ31dQGRvdHN7fQogQGNtaW5kZXggbWFuCiBEaXNwbGF5IE1h biBwYWdlcyB1c2luZyB0aGUgRW1hY3MgQGNvZGV7bWFufSBjb21tYW5kLgogQHhyZWZ7TWFu IFBhZ2UsICwgLCBlbWFjcywgVGhlIEdOVSBFbWFjcyBNYW51YWx9LgogCi1AaXRlbSBta2Rp cgorQGl0ZW0gbWtkaXIgWy1wXSBAdmFye2RpcmVjdG9yeX1AZG90c3t9CiBAY21pbmRleCBt a2RpcgotTWFrZSBuZXcgZGlyZWN0b3JpZXMuCitNYWtlIG5ldyBkaXJlY3Rvcmllcy4gIFdp dGggQGNvZGV7LXB9IG9yIEBjb2Rley0tcGFyZW50c30sCithdXRvbWF0aWNhbGx5IG1ha2Ug YW55IG5lY2Vzc2FyeSBwYXJlbnQgZGlyZWN0b3JpZXMgYXMgd2VsbC4KIAotQGl0ZW0gbXYK K0BpdGVtIG12IFtAdmFye29wdGlvbn1dQGRvdHN7fSBAdmFye3NvdXJjZX0gQHZhcntkZXN0 fQorQGl0ZW14IG12IFtAdmFye29wdGlvbn1dQGRvdHN7fSBAdmFye3NvdXJjZX1AZG90c3t9 IEB2YXJ7ZGlyZWN0b3J5fQogQGNtaW5kZXggbXYKLU1vdmUgb3IgcmVuYW1lIGZpbGVzLgor UmVuYW1lIHRoZSBmaWxlIEB2YXJ7c291cmNlfSB0byBAdmFye2Rlc3R9IG9yIG1vdmUgQHZh cntzb3VyY2V9IGludG8KK0B2YXJ7ZGlyZWN0b3J5fS4KIAogQHZpbmRleCBlc2hlbGwtbXYt b3ZlcndyaXRlLWZpbGVzCiBAdmluZGV4IGVzaGVsbC1tdi1pbnRlcmFjdGl2ZS1xdWVyeQpA QCAtNzg5LDQwICsxMDE5LDkzIEBAIEJ1aWx0LWlucwogQGNvZGV7ZXNoZWxsLW12LWludGVy YWN0aXZlLXF1ZXJ5fSBpcyBub24tQGNvZGV7bmlsfSwgQGNvbW1hbmR7bXZ9CiB3aWxsIHBy b21wdCBiZWZvcmUgb3ZlcndyaXRpbmcgYW55dGhpbmcuCiAKLUBpdGVtIG9jY3VyCitAY29t bWFuZHttdn0gYWNjZXB0cyB0aGUgZm9sbG93aW5nIG9wdGlvbnM6CisKK0B0YWJsZSBAYXNp cworCitAaXRlbSBAY29kZXstZn0sIEBjb2Rley0tZm9yY2V9CitOZXZlciBwcm9tcHQgZm9y IGNvbmZpcm1hdGlvbiBiZWZvcmUgbW92aW5nIGFuIGl0ZW0uCisKK0BpdGVtIEBjb2Rley1p fSwgQGNvZGV7LS1pbnRlcmFjdGl2ZX0KK1Byb21wdCBmb3IgY29uZmlybWF0aW9uIGJlZm9y ZSBtb3ZpbmcgYW4gaXRlbSBpZiB0aGUgdGFyZ2V0IGFscmVhZHkKK2V4aXN0cy4KKworQGl0 ZW0gQGNvZGV7LW59LCBAY29kZXstLXByZXZpZXd9CitSdW4gdGhlIGNvbW1hbmQsIGJ1dCBk b24ndCBtb3ZlIGFueXRoaW5nLiAgVGhpcyBpcyB1c2VmdWwgaWYgeW91Cit3YW50IHRvIHBy ZXZpZXcgd2hhdCB3b3VsZCBiZSBtb3ZlZCB3aGVuIGNhbGxpbmcgQGNvbW1hbmR7bXZ9Lgor CitAaXRlbSBAY29kZXstdn0sIEBjb2Rley0tdmVyYm9zZX0KK1ByaW50IHRoZSBuYW1lIG9m IGVhY2ggaXRlbSBiZWZvcmUgbW92aW5nIGl0LgorCitAZW5kIHRhYmxlCisKK0BpdGVtIG9j Y3VyIEB2YXJ7cmVnZXhwfSBbQHZhcntubGluZXN9XQogQGNtaW5kZXggb2NjdXIKIEFsaWFz IHRvIEVtYWNzJ3MgQGNvZGV7b2NjdXJ9LgogQHhyZWZ7T3RoZXIgUmVwZWF0aW5nIFNlYXJj aCwgLCAsIGVtYWNzLCBUaGUgR05VIEVtYWNzIE1hbnVhbH0uCiAKIEBpdGVtIHBvcGQKK0Bp dGVtIHBvcGQgK0B2YXJ7bn0KIEBjbWluZGV4IHBvcGQKIFBvcCBhIGRpcmVjdG9yeSBmcm9t IHRoZSBkaXJlY3Rvcnkgc3RhY2sgYW5kIHN3aXRjaCB0byBhIGFub3RoZXIgcGxhY2UKLWlu IHRoZSBzdGFjay4KK2luIHRoZSBzdGFjay4gIFRoaXMgY29tbWFuZCBjYW4gdGFrZSB0aGUg Zm9sbG93aW5nIGZvcm1zOgogCi1AaXRlbSBwcmludG5sCitAdGFibGUgQGNvZGUKKworQGl0 ZW0gcG9wZAorUmVtb3ZlIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBmcm9tIHRoZSBkaXJlY3Rv cnkgc3RhY2sgYW5kIGNoYW5nZSB0bwordGhlIGRpcmVjdG9yeSBiZW5lYXRoIGl0LgorCitA aXRlbSBwb3BkICtAdmFye259CitSZW1vdmUgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGZyb20g dGhlIGRpcmVjdG9yeSBzdGFjayBhbmQgY2hhbmdlIHRvCit0aGUgQHZhcntudGh9IGRpcmVj dG9yeSBpbiB0aGUgc3RhY2sgKGNvdW50aW5nIGZyb20gemVybykuCisKK0BlbmQgdGFibGUK KworQGl0ZW0gcHJpbnRubCBbQHZhcnthcmd9XUBkb3Rze30KIEBjbWluZGV4IHByaW50bmwK LVByaW50IHRoZSBhcmd1bWVudHMgc2VwYXJhdGVkIGJ5IG5ld2xpbmVzLgorUHJpbnQgYWxs IHRoZSBAdmFye2FyZ31zIHNlcGFyYXRlZCBieSBuZXdsaW5lcy4KIAogQGl0ZW0gcHVzaGQK K0BpdGVteCBwdXNoZCBAdmFye2RpcmVjdG9yeX0KK0BpdGVteCBwdXNoZCArQHZhcntufQog QGNtaW5kZXggcHVzaGQKIFB1c2ggdGhlIGN1cnJlbnQgZGlyZWN0b3J5IG9udG8gdGhlIGRp cmVjdG9yeSBzdGFjaywgdGhlbiBjaGFuZ2UgdG8KLWFub3RoZXIgZGlyZWN0b3J5LgorYW5v dGhlciBkaXJlY3RvcnkuICBUaGlzIGNvbW1hbmQgY2FuIHRha2UgdGhlIGZvbGxvd2luZyBm b3JtczoKKworQHRhYmxlIEBjb2RlCisKK0B2aW5kZXggZXNoZWxsLXB1c2hkLXRvaG9tZQor QGl0ZW0gcHVzaGQKK1N3YXAgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdpdGggdGhlIGRpcmVj dG9yeSBvbiB0aGUgdG9wIG9mIHRoZSBzdGFjay4KK0lmIEBjb2Rle2VzaGVsbC1wdXNoZC10 b2hvbWV9IGlzIG5vbi1AY29kZXtuaWx9LCBwdXNoIHRoZSBjdXJyZW50CitkaXJlY3Rvcnkg b250byB0aGUgc3RhY2sgYW5kIGNoYW5nZSB0byB0aGUgdXNlcidzIGhvbWUgZGlyZWN0b3J5 IChsaWtlCitAc2FtcHtwdXNoZCB+fSkuCiAKIEB2aW5kZXggZXNoZWxsLXB1c2hkLWR1bmlx dWUKK0BpdGVtIHB1c2hkIEB2YXJ7ZGlyZWN0b3J5fQorUHVzaCB0aGUgY3VycmVudCBkaXJl Y3Rvcnkgb250byB0aGUgc3RhY2sgYW5kIGNoYW5nZSB0bworQHZhcntkaXJlY3Rvcnl9LiAg SWYgQGNvZGV7ZXNoZWxsLXB1c2hkLWR1bmlxdWV9IGlzIG5vbi1AY29kZXtuaWx9LAordGhl biBvbmx5IHVuaXF1ZSBkaXJlY3RvcmllcyB3aWxsIGJlIGFkZGVkIHRvIHRoZSBzdGFjay4K KwogQHZpbmRleCBlc2hlbGwtcHVzaGQtZGV4dHJhY3QKLUlmIEBjb2Rle2VzaGVsbC1wdXNo ZC1kdW5pcXVlfSBpcyBub24tQGNvZGV7bmlsfSwgdGhlbiBvbmx5IHVuaXF1ZQotZGlyZWN0 b3JpZXMgd2lsbCBiZSBhZGRlZCB0byB0aGUgc3RhY2suICBJZgotQGNvZGV7ZXNoZWxsLXB1 c2hkLWRleHRyYWN0fSBpcyBub24tQGNvZGV7bmlsfSwgdGhlbiBAc2FtcHtwdXNoZAotK0B2 YXJ7bn19IHdpbGwgcG9wIHRoZSBAdmFye259dGggZGlyZWN0b3J5IHRvIHRoZSB0b3Agb2Yg dGhlIHN0YWNrLgorQGl0ZW0gcHVzaGQgK0B2YXJ7bn0KK0NoYW5nZSB0byB0aGUgQHZhcntu dGh9IGRpcmVjdG9yeSBpbiB0aGUgZGlyZWN0b3J5IHN0YWNrIChjb3VudGluZworZnJvbSB6 ZXJvKSwgYW5kIGBgcm90YXRlJycgdGhlIHN0YWNrIGJ5IG1vdmluZyBhbnkgZWxlbWVudHMg YmVmb3JlIHRoZQorQHZhcntudGh9IHRvIHRoZSBib3R0b20uICBJZiBAY29kZXtlc2hlbGwt cHVzaGQtZGV4dHJhY3R9IGlzCitub24tQGNvZGV7bmlsfSwgdGhlbiBAc2FtcHtwdXNoZCAr QHZhcntufX0gd2lsbCBpbnN0ZWFkIHBvcCB0aGUKK0B2YXJ7bn10aCBkaXJlY3RvcnkgdG8g dGhlIHRvcCBvZiB0aGUgc3RhY2suCisKK0BlbmQgdGFibGUKIAogQGl0ZW0gcHdkCiBAY21p bmRleCBwd2QKIFByaW50cyB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KIAotQGl0 ZW0gcm0KK0BpdGVtIHJtIFtAdmFye29wdGlvbn1dQGRvdHN7fSBAdmFye2l0ZW19QGRvdHN7 fQogQGNtaW5kZXggcm0KIFJlbW92ZXMgZmlsZXMsIGJ1ZmZlcnMsIHByb2Nlc3Nlcywgb3Ig RW1hY3MgTGlzcCBzeW1ib2xzLCBkZXBlbmRpbmcgb24KLXRoZSBhcmd1bWVudC4KK3RoZSB0 eXBlIG9mIGVhY2ggQHZhcntpdGVtfS4KIAogQHZpbmRleCBlc2hlbGwtcm0taW50ZXJhY3Rp dmUtcXVlcnkKIEB2aW5kZXggZXNoZWxsLXJtLXJlbW92ZXMtZGlyZWN0b3JpZXMKQEAgLTgz Miw1NiArMTExNSw4NCBAQCBCdWlsdC1pbnMKIEBjb21tYW5ke3JtfSBjYW4gYWxzbyByZW1v dmUgZGlyZWN0b3JpZXMuICBPdGhlcndpc2UsIEBjb21tYW5ke3JtZGlyfQogaXMgcmVxdWly ZWQuCiAKLUBpdGVtIHJtZGlyCitAY29tbWFuZHtybX0gYWNjZXB0cyB0aGUgZm9sbG93aW5n IG9wdGlvbnM6CisKK0B0YWJsZSBAYXNpcworCitAaXRlbSBAY29kZXstZn0sIEBjb2Rley0t Zm9yY2V9CitOZXZlciBwcm9tcHQgZm9yIGNvbmZpcm1hdGlvbiBiZWZvcmUgcmVtb3Zpbmcg YW4gaXRlbS4KKworQGl0ZW0gQGNvZGV7LWl9LCBAY29kZXstLWludGVyYWN0aXZlfQorUHJv bXB0IGZvciBjb25maXJtYXRpb24gYmVmb3JlIHJlbW92aW5nIGVhY2ggaXRlbS4KKworQGl0 ZW0gQGNvZGV7LW59LCBAY29kZXstLXByZXZpZXd9CitSdW4gdGhlIGNvbW1hbmQsIGJ1dCBk b24ndCByZW1vdmUgYW55dGhpbmcuICBUaGlzIGlzIHVzZWZ1bCBpZiB5b3UKK3dhbnQgdG8g cHJldmlldyB3aGF0IHdvdWxkIGJlIHJlbW92ZWQgd2hlbiBjYWxsaW5nIEBjb21tYW5ke3Jt fS4KKworQGl0ZW0gQGNvZGV7LXJ9LCBAY29kZXstUn0sIEBjb2Rley0tcmVjdXJzaXZlfQor UmVtb3ZlIGFueSBzcGVjaWZpZWQgZGlyZWN0b3JpZXMgYW5kIHRoZWlyIGNvbnRlbnRzIHJl Y3Vyc2l2ZWx5LgorCitAaXRlbSBAY29kZXstdn0sIEBjb2Rley0tdmVyYm9zZX0KK1ByaW50 IHRoZSBuYW1lIG9mIGVhY2ggaXRlbSBiZWZvcmUgcmVtb3ZpbmcgaXQuCisKK0BlbmQgdGFi bGUKKworQGl0ZW0gcm1kaXIgQHZhcntkaXJlY3Rvcnl9QGRvdHN7fQogQGNtaW5kZXggcm1k aXIKIFJlbW92ZXMgZGlyZWN0b3JpZXMgaWYgdGhleSBhcmUgZW1wdHkuCiAKLUBpdGVtIHNl dAorQGl0ZW0gc2V0IFtAdmFye3Zhcn0gQHZhcnt2YWx1ZX1dQGRvdHN7fQogQGNtaW5kZXgg c2V0CiBTZXQgdmFyaWFibGUgdmFsdWVzLCB1c2luZyB0aGUgZnVuY3Rpb24gQGNvZGV7c2V0 fSBsaWtlIGEgY29tbWFuZAogKEBweHJlZntTZXR0aW5nIFZhcmlhYmxlcywsLCBlbGlzcCwg R05VIEVtYWNzIExpc3AgUmVmZXJlbmNlIE1hbnVhbH0pLgotQSB2YXJpYWJsZSBuYW1lIGNh biBiZSBhIHN5bWJvbCwgaW4gd2hpY2ggY2FzZSBpdCByZWZlcnMgdG8gYSBMaXNwCi12YXJp YWJsZSwgb3IgYSBzdHJpbmcsIHJlZmVycmluZyB0byBhbiBlbnZpcm9ubWVudCB2YXJpYWJs ZQorVGhlIHZhbHVlIG9mIEB2YXJ7dmFyfSBjYW4gYmUgYSBzeW1ib2wsIGluIHdoaWNoIGNh c2UgaXQgcmVmZXJzIHRvIGEKK0xpc3AgdmFyaWFibGUsIG9yIGEgc3RyaW5nLCByZWZlcnJp bmcgdG8gYW4gZW52aXJvbm1lbnQgdmFyaWFibGUKIChAcHhyZWZ7QXJndW1lbnRzfSkuCiAK LUBpdGVtIHNldHEKK0BpdGVtIHNldHEgW0B2YXJ7c3ltYm9sfSBAdmFye3ZhbHVlfV1AZG90 c3t9CiBAY21pbmRleCBzZXRxCiBTZXQgdmFyaWFibGUgdmFsdWVzLCB1c2luZyB0aGUgZnVu Y3Rpb24gQGNvZGV7c2V0cX0gbGlrZSBhIGNvbW1hbmQKIChAcHhyZWZ7U2V0dGluZyBWYXJp YWJsZXMsLCwgZWxpc3AsIEdOVSBFbWFjcyBMaXNwIFJlZmVyZW5jZSBNYW51YWx9KS4KIAot QGl0ZW0gc291cmNlCitAaXRlbSBzb3VyY2UgQHZhcntmaWxlfSBbQHZhcnthcmd1bWVudH1d QGRvdHN7fQogQGNtaW5kZXggc291cmNlCi1Tb3VyY2UgYW4gRXNoZWxsIGZpbGUgaW4gYSBz dWJzaGVsbCBlbnZpcm9ubWVudC4gIFRoaXMgaXMgbm90IHRvIGJlCi1jb25mdXNlZCB3aXRo IHRoZSBjb21tYW5kIEBjb21tYW5key59LCB3aGljaCBzb3VyY2VzIGEgZmlsZSBpbiB0aGUK LWN1cnJlbnQgZW52aXJvbm1lbnQuCitTb3VyY2UgYW4gRXNoZWxsIHNjcmlwdCBuYW1lZCBA dmFye2ZpbGV9IGluIGEgc3Vic2hlbGwgZW52aXJvbm1lbnQsCitwYXNzaW5nIGFueSBAdmFy e2FyZ3VtZW50fXMgdG8gdGhlIHNjcmlwdCAoQHB4cmVme1NjcmlwdHN9KS4gIFRoaXMgaXMK K25vdCB0byBiZSBjb25mdXNlZCB3aXRoIHRoZSBjb21tYW5kIEBjb21tYW5key59LCB3aGlj aCBzb3VyY2VzIGEgZmlsZQoraW4gdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQuCiAKLUBpdGVt IHRpbWUKK0BpdGVtIHRpbWUgQHZhcntjb21tYW5kfUBkb3Rze30KIEBjbWluZGV4IHRpbWUK LVNob3cgdGhlIHRpbWUgZWxhcHNlZCBkdXJpbmcgYSBjb21tYW5kJ3MgZXhlY3V0aW9uLgor U2hvdyB0aGUgdGltZSBlbGFwc2VkIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIEB2YXJ7Y29t bWFuZH0uCiAKLUBpdGVtIHVtYXNrCitAaXRlbSB1bWFzayBbLVNdCitAaXRlbXggdW1hc2sg QHZhcnttb2RlfQogQGNtaW5kZXggdW1hc2sKLVNldCBvciB2aWV3IHRoZSBkZWZhdWx0IGZp bGUgcGVybWlzc2lvbnMgZm9yIG5ld2x5IGNyZWF0ZWQgZmlsZXMgYW5kCi1kaXJlY3Rvcmll cy4KK1ZpZXcgdGhlIGRlZmF1bHQgZmlsZSBwZXJtaXNzaW9ucyBmb3IgbmV3bHkgY3JlYXRl ZCBmaWxlcyBhbmQKK2RpcmVjdG9yaWVzLiAgSWYgeW91IHBhc3MgQGNvZGV7LVN9IG9yIEBj b2Rley0tc3ltYm9saWN9LCB2aWV3IHRoZQorbW9kZSBzeW1ib2xpY2FsbHkuICBXaXRoIEB2 YXJ7bW9kZX0sIHNldCB0aGUgZGVmYXVsdCBwZXJtaXNzaW9ucyB0bwordGhpcyB2YWx1ZS4K IAotQGl0ZW0gdW5zZXQKK0BpdGVtIHVuc2V0IFtAdmFye3Zhcn1dQGRvdHN7fQogQGNtaW5k ZXggdW5zZXQKLVVuc2V0IG9uZSBvciBtb3JlIHZhcmlhYmxlcy4gIEFzIHdpdGggQGNvbW1h bmR7c2V0fSwgYSB2YXJpYWJsZSBuYW1lCi1jYW4gYmUgYSBzeW1ib2wsIGluIHdoaWNoIGNh c2UgaXQgcmVmZXJzIHRvIGEgTGlzcCB2YXJpYWJsZSwgb3IgYQotc3RyaW5nLCByZWZlcnJp bmcgdG8gYW4gZW52aXJvbm1lbnQgdmFyaWFibGUuCitVbnNldCBvbmUgb3IgbW9yZSB2YXJp YWJsZXMuICBBcyB3aXRoIEBjb21tYW5ke3NldH0sIHRoZSB2YWx1ZSBvZgorQHZhcnt2YXJ9 IGNhbiBiZSBhIHN5bWJvbCwgaW4gd2hpY2ggY2FzZSBpdCByZWZlcnMgdG8gYSBMaXNwIHZh cmlhYmxlLAorb3IgYSBzdHJpbmcsIHJlZmVycmluZyB0byBhbiBlbnZpcm9ubWVudCB2YXJp YWJsZS4KIAotQGl0ZW0gd2FpdAorQGl0ZW0gd2FpdCBbQHZhcntwcm9jZXNzfV1AZG90c3t9 CiBAY21pbmRleCB3YWl0Ci1XYWl0IHVudGlsIGEgcHJvY2VzcyBoYXMgc3VjY2Vzc2Z1bGx5 IGNvbXBsZXRlZC4KK1dhaXQgdW50aWwgZWFjaCBzcGVjaWZpZWQgQHZhcntwcm9jZXNzfSBo YXMgZXhpdGVkLgogCi1AaXRlbSB3aGljaAorQGl0ZW0gd2hpY2ggQHZhcntjb21tYW5kfUBk b3Rze30KIEBjbWluZGV4IHdoaWNoCi1JZGVudGlmeSBhIGNvbW1hbmQgYW5kIGl0cyBsb2Nh dGlvbi4KK0ZvciBlYWNoIEB2YXJ7Y29tbWFuZH0sIGlkZW50aWZ5IHdoYXQga2luZCBvZiBj b21tYW5kIGl0IGlzIGFuZCBpdHMKK2xvY2F0aW9uLgogCiBAaXRlbSB3aG9hbWkKIEBjbWlu ZGV4IHdob2FtaQotUHJpbnQgdGhlIGN1cnJlbnQgdXNlci4gIFRoaXMgRXNoZWxsIHZlcnNp b24gb2YgQGNvbW1hbmR7d2hvYW1pfQotc3VwcG9ydHMgVHJhbXAuCitQcmludCB0aGUgY3Vy cmVudCB1c2VyLiAgVGhpcyBFc2hlbGwgdmVyc2lvbiBvZiBAY29tbWFuZHt3aG9hbWl9IGlz Citjb25uZWN0aW9uLWF3YXJlLCBzbyBmb3IgcmVtb3RlIGRpcmVjdG9yaWVzLCBpdCB3aWxs IHByaW50IHRoZSB1c2VyCithc3NvY2lhdGVkIHdpdGggdGhhdCBjb25uZWN0aW9uLgogQGVu ZCB0YWJsZQogCiBAc3Vic2VjdGlvbiBEZWZpbmluZyBuZXcgYnVpbHQtaW4gY29tbWFuZHMK QEAgLTEzNTMsNiArMTY2NCwxMSBAQCBTY3JpcHRzCiBhcmUgaW52b2tlZCBmcm9tIEVzaGVs bCB3aXRoIEBjb21tYW5ke3NvdXJjZX0sIG9yIGZyb20gYW55d2hlcmUgaW4gRW1hY3MKIHdp dGggQGNvZGV7ZXNoZWxsLXNvdXJjZS1maWxlfS4KIAorTGlrZSB3aXRoIGFsaWFzZXMgKEBw eHJlZntBbGlhc2VzfSksIEVzaGVsbCBzY3JpcHRzIGNhbiBhY2NlcHQgYW55CitudW1iZXIg b2YgYXJndW1lbnRzLiAgV2l0aGluIHRoZSBzY3JpcHQsIHlvdSBjYW4gcmVmZXIgdG8gdGhl c2Ugd2l0aAordGhlIHNwZWNpYWwgdmFyaWFibGVzIEBjb2RleyQwfSwgQGNvZGV7JDF9LCBA ZG90c3t9LCBAY29kZXskOX0sIGFuZAorQGNvZGV7JCp9LgorCiBAY21pbmRleCAuCiBJZiB5 b3Ugd2lzaCB0byBsb2FkIGEgc2NyaXB0IGludG8geW91ciBAZW1waHtjdXJyZW50fSBlbnZp cm9ubWVudCwKIHJhdGhlciB0aGFuIGluIGEgc3Vic2hlbGwsIHVzZSB0aGUgQGNvZGV7Ln0g Y29tbWFuZC4KQEAgLTE0NTIsNyArMTc2OCw3IEBAIERvbGxhcnMgRXhwYW5zaW9uCiBAY29t bWFuZHtAdmFye2NvbW1hbmR9fSwgYnV0IHdyaXRlcyB0aGUgb3V0cHV0IHRvIGEgdGVtcG9y YXJ5IGZpbGUgYW5kCiByZXR1cm5zIHRoZSBmaWxlIG5hbWUuCiAKLUBpdGVtICRAdmFye2V4 cHJ9W0B2YXJ7aS4uLn1dCitAaXRlbSAkQHZhcntleHByfVtAdmFye2lAZG90c3t9fV0KIEV4 cGFuZHMgdG8gdGhlIEB2YXJ7aX10aCBlbGVtZW50IG9mIHRoZSByZXN1bHQgb2YgQHZhcntl eHByfSwgYW4KIGV4cHJlc3Npb24gaW4gb25lIG9mIHRoZSBhYm92ZSBmb3JtcyBsaXN0ZWQg aGVyZS4gIElmIG11bHRpcGxlIGluZGljZXMKIGFyZSBzdXBwbGllZCwgdGhpcyB3aWxsIHJl dHVybiBhIGxpc3QgY29udGFpbmluZyB0aGUgZWxlbWVudHMgZm9yIGVhY2gKQEAgLTE1MDEs NyArMTgxNyw3IEBAIERvbGxhcnMgRXhwYW5zaW9uCiBleHBhbmQgdG8gQGNvZGV7Mn0sIGku ZS5AOiB0aGUgc2Vjb25kIGVsZW1lbnQgb2YgdGhlIGZpcnN0IGxpc3QgbWVtYmVyCiAoYWxs IGluZGljZXMgYXJlIHplcm8tYmFzZWQpLgogCi1AaXRlbSAkQHZhcntleHByfVtAdmFye3Jl Z2V4cH0gQHZhcntpLi4ufV0KK0BpdGVtICRAdmFye2V4cHJ9W0B2YXJ7cmVnZXhwfSBAdmFy e2lAZG90c3t9fV0KIEFzIGFib3ZlICh3aGVuIEB2YXJ7ZXhwcn0gZXhwYW5kcyB0byBhIHN0 cmluZyksIGJ1dCB1c2UgQHZhcntyZWdleHB9CiB0byBzcGxpdCB0aGUgc3RyaW5nLiAgQHZh cntyZWdleHB9IGNhbiBiZSBhbnkgZm9ybSBvdGhlciB0aGFuIGEKIG51bWJlci4gIEZvciBl eGFtcGxlLCBAc2FtcHskQHZhcnt2YXJ9WzogMF19IHdpbGwgcmV0dXJuIHRoZSBmaXJzdApA QCAtMjI3NSwxNSArMjU5MSwyMyBAQCBUcmFtcCBleHRlbnNpb25zCiAKIEB0YWJsZSBAY29k ZQogCi1AaXRlbSBzdQorQGl0ZW0gc3UgWy0gfCAtbF0gW0B2YXJ7dXNlcn1dCiBAY21pbmRl eCBzdQotQGl0ZW14IHN1ZG8KK1VzZXMgVFJBTVAncyBAY29tbWFuZHtzdX0gbWV0aG9kIChA cHhyZWZ7SW5saW5lIG1ldGhvZHMsICwgLCB0cmFtcCwKK1RoZSBUcmFtcCBNYW51YWx9KSB0 byBjaGFuZ2UgdGhlIGN1cnJlbnQgdXNlciB0byBAdmFye3VzZXJ9IChvciByb290CitpZiB1 bnNwZWNpZmllZCkuICBXaXRoIEBjb2Rley19LCBAY29kZXstbH0sIG9yIEBjb2Rley0tbG9n aW59LCBwcm92aWRlCithIGxvZ2luIGVudmlyb25tZW50LgorCitAaXRlbSBzdWRvIFstdSBA dmFye3VzZXJ9XSBbLXMgfCBAdmFye2NvbW1hbmR9QGRvdHN7fV0KIEBjbWluZGV4IHN1ZG8K LUBpdGVteCBkb2FzCitAaXRlbXggZG9hcyBbLXUgQHZhcnt1c2VyfV0gWy1zIHwgQHZhcntj b21tYW5kfUBkb3Rze31dCiBAY21pbmRleCBkb2FzCi1Vc2VzIFRSQU1QJ3MgQGNvbW1hbmR7 c3V9LCBAY29tbWFuZHtzdWRvfSwgb3IgQGNvbW1hbmR7ZG9hc30gbWV0aG9kCi0oQHB4cmVm e0lubGluZSBtZXRob2RzLCAsICwgdHJhbXAsIFRoZSBUcmFtcCBNYW51YWx9KSB0byBydW4g YSBjb21tYW5kCi12aWEgQGNvbW1hbmR7c3V9LCBAY29tbWFuZHtzdWRvfSwgb3IgQGNvbW1h bmR7ZG9hc30uCitVc2VzIFRSQU1QJ3MgQGNvbW1hbmR7c3Vkb30gb3IgQGNvbW1hbmR7ZG9h c30gbWV0aG9kIChAcHhyZWZ7SW5saW5lCittZXRob2RzLCAsICwgdHJhbXAsIFRoZSBUcmFt cCBNYW51YWx9KSB0byBydW4gQHZhcntjb21tYW5kfSBhcyByb290Cit2aWEgQGNvbW1hbmR7 c3Vkb30gb3IgQGNvbW1hbmR7ZG9hc30uICBXaGVuIHNwZWNpZnlpbmcgQGNvZGV7LXUKK0B2 YXJ7dXNlcn19IG9yIEBjb2Rley0tdXNlciBAdmFye3VzZXJ9fSwgcnVuIHRoZSBjb21tYW5k IGFzIEB2YXJ7dXNlcn0KK2luc3RlYWQuICBXaXRoIEBjb2Rley1zfSBvciBAY29kZXstLXNo ZWxsfSwgc3RhcnQgYSBzaGVsbCBpbnN0ZWFkIG9mCitydW5uaW5nIEB2YXJ7Y29tbWFuZH0u CiAKIEBlbmQgdGFibGUKIApAQCAtMjI5Niw1OCArMjYyMCw1OCBAQCBFeHRyYSBidWlsdC1p biBjb21tYW5kcwogCiBAdGFibGUgQGNvZGUKIAotQGl0ZW0gY291bnQKK0BpdGVtIGNvdW50 IEB2YXJ7aXRlbX0gQHZhcntzZXF9IFtAdmFye29wdGlvbn1dQGRvdHN7fQogQGNtaW5kZXgg Y291bnQKIEEgd3JhcHBlciBhcm91bmQgdGhlIGZ1bmN0aW9uIEBjb2Rle2NsLWNvdW50fSAo QHB4cmVme1NlYXJjaGluZwogU2VxdWVuY2VzLCwsIGNsLCBHTlUgRW1hY3MgQ29tbW9uIExp c3AgRW11bGF0aW9ufSkuICBUaGlzIGNvbW1hbmQgY2FuCiBiZSB1c2VkIGZvciBjb21wYXJp bmcgbGlzdHMgb2Ygc3RyaW5ncy4KIAotQGl0ZW0gZXhwcgorQGl0ZW0gZXhwciBAdmFye3N0 cn0gW0B2YXJ7c2VwYXJhdG9yfV0gW0B2YXJ7YXJnfV1AZG90c3t9CiBAY21pbmRleCBleHBy CiBBbiBpbXBsZW1lbnRhdGlvbiBvZiBAY29tbWFuZHtleHByfSB1c2luZyB0aGUgQ2FsYyBw YWNrYWdlLgogQHhyZWZ7VG9wLCwsIGNhbGMsIFRoZSBHTlUgRW1hY3MgQ2FsY3VsYXRvcn0u CiAKLUBpdGVtIGZmCitAaXRlbSBmZiBAdmFye2RpcmVjdG9yeX0gQHZhcntwYXR0ZXJufQog QGNtaW5kZXggZmYKIFNob3J0aGFuZCBmb3IgdGhlIHRoZSBmdW5jdGlvbiBAY29kZXtmaW5k LW5hbWUtZGlyZWR9IChAcHhyZWZ7RGlyZWQKIGFuZCBGaW5kLCAsICwgZW1hY3MsIFRoZSBF bWFjcyBFZGl0b3J9KS4KIAotQGl0ZW0gZ2YKK0BpdGVtIGdmIEB2YXJ7ZGlyZWN0b3J5fSBA dmFye3JlZ2V4cH0KIEBjbWluZGV4IGdmCiBTaG9ydGhhbmQgZm9yIHRoZSB0aGUgZnVuY3Rp b24gQGNvZGV7ZmluZC1ncmVwLWRpcmVkfSAoQHB4cmVme0RpcmVkCiBhbmQgRmluZCwgLCAs IGVtYWNzLCBUaGUgRW1hY3MgRWRpdG9yfSkuCiAKLUBpdGVtIGludGVyc2VjdGlvbgorQGl0 ZW0gaW50ZXJzZWN0aW9uIEB2YXJ7bGlzdDF9IEB2YXJ7bGlzdDJ9IFtAdmFye29wdGlvbn1d QGRvdHN7fQogQGNtaW5kZXggaW50ZXJzZWN0aW9uCiBBIHdyYXBwZXIgYXJvdW5kIHRoZSBm dW5jdGlvbiBAY29kZXtjbC1pbnRlcnNlY3Rpb259IChAcHhyZWZ7TGlzdHMgYXMKIFNldHMs LCwgY2wsIEdOVSBFbWFjcyBDb21tb24gTGlzcCBFbXVsYXRpb259KS4gIFRoaXMgY29tbWFu ZAogY2FuIGJlIHVzZWQgZm9yIGNvbXBhcmluZyBsaXN0cyBvZiBzdHJpbmdzLgogCi1AaXRl bSBtaXNtYXRjaAorQGl0ZW0gbWlzbWF0Y2ggQHZhcntzZXExfSBAdmFye3NlcTJ9IFtAdmFy e29wdGlvbn1dQGRvdHN7fQogQGNtaW5kZXggbWlzbWF0Y2gKIEEgd3JhcHBlciBhcm91bmQg dGhlIGZ1bmN0aW9uIEBjb2Rle2NsLW1pc21hdGNofSAoQHB4cmVme1NlYXJjaGluZwogU2Vx dWVuY2VzLCwsIGNsLCBHTlUgRW1hY3MgQ29tbW9uIExpc3AgRW11bGF0aW9ufSkuICBUaGlz IGNvbW1hbmQgY2FuCiBiZSB1c2VkIGZvciBjb21wYXJpbmcgbGlzdHMgb2Ygc3RyaW5ncy4K IAotQGl0ZW0gc2V0LWRpZmZlcmVuY2UKK0BpdGVtIHNldC1kaWZmZXJlbmNlIEB2YXJ7bGlz dDF9IEB2YXJ7bGlzdDJ9IFtAdmFye29wdGlvbn1dQGRvdHN7fQogQGNtaW5kZXggc2V0LWRp ZmZlcmVuY2UKIEEgd3JhcHBlciBhcm91bmQgdGhlIGZ1bmN0aW9uIEBjb2Rle2NsLXNldC1k aWZmZXJlbmNlfSAoQHB4cmVme0xpc3RzCiBhcyBTZXRzLCwsIGNsLCBHTlUgRW1hY3MgQ29t bW9uIExpc3AgRW11bGF0aW9ufSkuICBUaGlzIGNvbW1hbmQgY2FuIGJlCiB1c2VkIGZvciBj b21wYXJpbmcgbGlzdHMgb2Ygc3RyaW5ncy4KIAotQGl0ZW0gc2V0LWV4Y2x1c2l2ZS1vcgor QGl0ZW0gc2V0LWV4Y2x1c2l2ZS1vciBAdmFye2xpc3QxfSBAdmFye2xpc3QyfSBbQHZhcntv cHRpb259XUBkb3Rze30KIEBjbWluZGV4IHNldC1leGNsdXNpdmUtb3IKIEEgd3JhcHBlciBh cm91bmQgdGhlIGZ1bmN0aW9uIEBjb2Rle2NsLXNldC1leGNsdXNpdmUtb3J9IChAcHhyZWZ7 TGlzdHMKIGFzIFNldHMsLCwgY2wsIEdOVSBFbWFjcyBDb21tb24gTGlzcCBFbXVsYXRpb259 KS4gIFRoaXMgY29tbWFuZCBjYW4gYmUKIHVzZWQgZm9yIGNvbXBhcmluZyBsaXN0cyBvZiBz dHJpbmdzLgogCi1AaXRlbSBzdWJzdGl0dXRlCitAaXRlbSBzdWJzdGl0dXRlIEB2YXJ7bmV3 fSBAdmFye29sZH0gQHZhcntzZXF9IFtAdmFye29wdGlvbn1dQGRvdHN7fQogQGNtaW5kZXgg c3Vic3RpdHV0ZQogQSB3cmFwcGVyIGFyb3VuZCB0aGUgZnVuY3Rpb24gQGNvZGV7Y2wtc3Vi c3RpdHV0ZX0gKEBweHJlZntTZXF1ZW5jZQogRnVuY3Rpb25zLCwsIGNsLCBHTlUgRW1hY3Mg Q29tbW9uIExpc3AgRW11bGF0aW9ufSkuICBUaGlzIGNvbW1hbmQgY2FuCiBiZSB1c2VkIGZv ciBjb21wYXJpbmcgbGlzdHMgb2Ygc3RyaW5ncy4KIAotQGl0ZW0gdW5pb24KK0BpdGVtIHVu aW9uIEB2YXJ7bGlzdDF9IEB2YXJ7bGlzdDJ9IFtAdmFye29wdGlvbn1dQGRvdHN7fQogQGNt aW5kZXggdW5pb24KIEEgd3JhcHBlciBhcm91bmQgdGhlIGZ1bmN0aW9uIEBjb2Rle2NsLXVu aW9ufSAoQHB4cmVme0xpc3RzIGFzIFNldHMsLCwKIGNsLCBHTlUgRW1hY3MgQ29tbW9uIExp c3AgRW11bGF0aW9ufSkuICBUaGlzIGNvbW1hbmQgY2FuIGJlIHVzZWQgZm9yCmRpZmYgLS1n aXQgYS9saXNwL2VzaGVsbC9lbS11bml4LmVsIGIvbGlzcC9lc2hlbGwvZW0tdW5peC5lbApp bmRleCBhODhjN2UwOTk0Ni4uMTI5NmIxNjAzZTYgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxs L2VtLXVuaXguZWwKKysrIGIvbGlzcC9lc2hlbGwvZW0tdW5peC5lbApAQCAtNjE4LDExICs2 MTgsMTEgQEAgZXNoZWxsL2xuCiAgICAgIDpwcmVzZXJ2ZS1hcmdzCiAgICAgIDpleHRlcm5h bCAibG4iCiAgICAgIDpzaG93LXVzYWdlCi0gICAgIDp1c2FnZSAiW09QVElPTl0uLi4gVEFS R0VUIFtMSU5LX05BTUVdCisgICAgIDp1c2FnZSAiW09QVElPTl0uLi4gVEFSR0VUIExJTktf TkFNRQogICAgb3I6ICBsbiBbT1BUSU9OXS4uLiBUQVJHRVQuLi4gRElSRUNUT1JZCi1DcmVh dGUgYSBsaW5rIHRvIHRoZSBzcGVjaWZpZWQgVEFSR0VUIHdpdGggb3B0aW9uYWwgTElOS19O QU1FLiAgSWYgdGhlcmUgaXMKLW1vcmUgdGhhbiBvbmUgVEFSR0VULCB0aGUgbGFzdCBhcmd1 bWVudCBtdXN0IGJlIGEgZGlyZWN0b3J5OyAgY3JlYXRlIGxpbmtzCi1pbiBESVJFQ1RPUlkg dG8gZWFjaCBUQVJHRVQuICBDcmVhdGUgaGFyZCBsaW5rcyBieSBkZWZhdWx0LCBzeW1ib2xp YyBsaW5rcworQ3JlYXRlIGEgbGluayB0byB0aGUgc3BlY2lmaWVkIFRBUkdFVCB3aXRoIExJ TktfTkFNRS4gIElmIHRoZXJlIGlzIG1vcmUKK3RoYW4gb25lIFRBUkdFVCwgdGhlIGxhc3Qg YXJndW1lbnQgbXVzdCBiZSBhIGRpcmVjdG9yeTsgIGNyZWF0ZSBsaW5rcyBpbgorRElSRUNU T1JZIHRvIGVhY2ggVEFSR0VULiAgQ3JlYXRlIGhhcmQgbGlua3MgYnkgZGVmYXVsdCwgc3lt Ym9saWMgbGlua3MKIHdpdGggYC0tc3ltYm9saWMnLiAgV2hlbiBjcmVhdGluZyBoYXJkIGxp bmtzLCBlYWNoIFRBUkdFVCBtdXN0IGV4aXN0LiIpCiAgICAobGV0ICgobm8tZGVyZWZlcmVu Y2UgdCkpCiAgICAgIChlc2hlbGwtbXZjcGxuLXRlbXBsYXRlICJsbiIgImxpbmtpbmciCmRp ZmYgLS1naXQgYS9saXNwL2VzaGVsbC9lc2gtZXh0LmVsIGIvbGlzcC9lc2hlbGwvZXNoLWV4 dC5lbAppbmRleCBkYzJiOTNlNTc0Yi4uNDQ4NjFjMjIyYjggMTAwNjQ0Ci0tLSBhL2xpc3Av ZXNoZWxsL2VzaC1leHQuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLWV4dC5lbApAQCAtMjUz LDEwICsyNTMsMTAgQEAgZXNoZWxsL2FkZHBhdGgKICAgIkFkZCBhIHNldCBvZiBwYXRocyB0 byBQQVRILiIKICAgKGVzaGVsbC1ldmFsLXVzaW5nLW9wdGlvbnMKICAgICJhZGRwYXRoIiBh cmdzCi0gICAnKCg/YiAiYmVnaW4iIG5pbCBwcmVwZW5kICJhZGQgcGF0aCBlbGVtZW50IGF0 IGJlZ2lubmluZyIpCisgICAnKCg/YiAiYmVnaW4iIG5pbCBwcmVwZW5kICJhZGQgdG8gYmVn aW5uaW5nIG9mICRQQVRIIikKICAgICAgKD9oICJoZWxwIiBuaWwgbmlsICAiZGlzcGxheSB0 aGlzIHVzYWdlIG1lc3NhZ2UiKQotICAgICA6dXNhZ2UgIlstYl0gUEFUSAotQWRkcyB0aGUg Z2l2ZW4gUEFUSCB0byAkUEFUSC4iKQorICAgICA6dXNhZ2UgIlstYl0gRElSLi4uCitBZGRz IHRoZSBnaXZlbiBESVIgdG8gJFBBVEguIikKICAgIChsZXQgKChwYXRoIChlc2hlbGwtZ2V0 LXBhdGggdCkpKQogICAgICAoaWYgYXJncwogICAgICAgICAgKHByb2duCmRpZmYgLS1naXQg YS9saXNwL2VzaGVsbC9lc2gtdmFyLmVsIGIvbGlzcC9lc2hlbGwvZXNoLXZhci5lbAppbmRl eCA1MzdiYzRiMDY0MS4uMDJiNWM3ODU2MjUgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2Vz aC12YXIuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLXZhci5lbApAQCAtNDMzLDcgKzQzMyw3 IEBAIGVzaGVsbC9lbnYKICAgICAgKD9oICJoZWxwIiBuaWwgbmlsICJzaG93IHRoaXMgdXNh Z2Ugc2NyZWVuIikKICAgICAgOmV4dGVybmFsICJlbnYiCiAgICAgIDpwYXJzZS1sZWFkaW5n LW9wdGlvbnMtb25seQotICAgICA6dXNhZ2UgIltOQU1FPVZBTFVFXS4uLiBbQ09NTUFORCBb QVJHXS4uLl0iKQorICAgICA6dXNhZ2UgIltOQU1FPVZBTFVFXS4uLiBbQ09NTUFORF0uLi4i KQogICAgKGlmIGFyZ3MKICAgICAgICAob3IgKGVzaGVsbC1wYXJzZS1sb2NhbC12YXJpYWJs ZXMgYXJncykKICAgICAgICAgICAgKGVzaGVsbC1uYW1lZC1jb21tYW5kIChjYXIgYXJncykg KGNkciBhcmdzKSkpCi0tIAoyLjI1LjEKCg== --------------7r1vXqKu01vAYWY0erNMj0gq-- From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 02 02:58:29 2024 Received: (at control) by debbugs.gnu.org; 2 Feb 2024 07:58:29 +0000 Received: from localhost ([127.0.0.1]:43643 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVoRQ-0005Za-W9 for submit@debbugs.gnu.org; Fri, 02 Feb 2024 02:58:29 -0500 Received: from mail-ed1-x52d.google.com ([2a00:1450:4864:20::52d]:45552) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rVoRO-0005Z6-HJ for control@debbugs.gnu.org; Fri, 02 Feb 2024 02:58:26 -0500 Received: by mail-ed1-x52d.google.com with SMTP id 4fb4d7f45d1cf-55ff5f6a610so262136a12.3 for ; Thu, 01 Feb 2024 23:58:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706860689; x=1707465489; darn=debbugs.gnu.org; h=to:subject:message-id:date:mime-version:from:from:to:cc:subject :date:message-id:reply-to; bh=5shUmXGWEacvidtu5gCcESC2ZqaKtdFvVic3cMm7w4w=; b=denoP9Dx5MJttubykx8lwNRYeBxTGko/bFAMUdS7psAOmTaVI3P+uTvyXsPHQoETqa MixY0ZRaNy2Mbc/zQkNus2NeOz8ZPgt+QyYnB92LFqDPBwCiHZYCDNf4Pvd//vQ1fh0c n3w0MUtL3jA62eTyaohuCPKdF5OonN7sBJMFl27Yq55I0ekK6XOtX8ehK6oYEnpBBng0 b9Q/jHD9JyU+9yQtWIfJwQI/KU7pCpBeQpvR0p6i3zovDYOgQeDzEtVShxv4uZcTCuy8 PDhw6MLd/dt+d3a+ZDFi8mvuCLmZH2gGEizLIZOf/DnA0z1O2QXw1oOpJJmlYadVGAL5 rUlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706860689; x=1707465489; h=to:subject:message-id:date:mime-version:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=5shUmXGWEacvidtu5gCcESC2ZqaKtdFvVic3cMm7w4w=; b=Ok9w4PTBcpxXS3BJsxQRljnPgUsoOj1WASRg8MrYCR9Y7e28WDRlAOXY3tl5WKthhA 07Ysds/YIb7oNFfO9xXF0B6CyXv+0rV/EP6d6NJ2g2/cji71BhHMB0yc9ew6TPjKMMtw P7qQiK76RjByzQhCHgH8DBNLRuF0aPd+3FMdtSenKKH8DCwsqo5pt1qyVCNBW34u78Ni /RpWNcKKuDIWKH+YQI0Ez2HWGMyBBAaSMNHv7vtyRRXyXbupTbT42YTF0O6TszXqTjZl cAembbXv/bUguQH8OCXrATamD+fwIvDxinWgfRzLR442R9xOoNsGpyMGg5qsnWdUtGhx IzAQ== X-Gm-Message-State: AOJu0Yx5sIGwRQUM4J8Jziw4bnxm2rkDA5/bXtDvcidLwoBs5tGv2zns 0yC772pXVvPaVI8MjZGHstopY30Uw6laKNlDO1rvRAYqV/vPvQCtJrw10F7TsQPqLnLIBPXLIWV sYZTpKGTsRlj/wUefYe6I5lD1k8yl0H2nIvw= X-Google-Smtp-Source: AGHT+IHbFmeaNIij8PhAhOaUuhjNw6LnmYJLvoP06OlBrnKiOmNv1KtLsLJjmnl0XW67r86+afHf9g6/fpM7l8mVqJw= X-Received: by 2002:aa7:cc92:0:b0:55f:8c5d:e560 with SMTP id p18-20020aa7cc92000000b0055f8c5de560mr4990327edt.32.1706860689104; Thu, 01 Feb 2024 23:58:09 -0800 (PST) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Thu, 1 Feb 2024 23:58:08 -0800 From: Stefan Kangas MIME-Version: 1.0 Date: Thu, 1 Feb 2024 23:58:08 -0800 Message-ID: Subject: control message for bug #68838 To: control@debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) severity 68838 wishlist quit From debbugs-submit-bounces@debbugs.gnu.org Mon Feb 05 00:22:10 2024 Received: (at 68838-done) by debbugs.gnu.org; 5 Feb 2024 05:22:11 +0000 Received: from localhost ([127.0.0.1]:50381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rWrQo-0002Zk-La for submit@debbugs.gnu.org; Mon, 05 Feb 2024 00:22:10 -0500 Received: from mail-pj1-x1030.google.com ([2607:f8b0:4864:20::1030]:42207) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rWrQj-0002ZC-BG for 68838-done@debbugs.gnu.org; Mon, 05 Feb 2024 00:22:08 -0500 Received: by mail-pj1-x1030.google.com with SMTP id 98e67ed59e1d1-295f3bf41d5so1873616a91.0 for <68838-done@debbugs.gnu.org>; Sun, 04 Feb 2024 21:21:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1707110507; x=1707715307; darn=debbugs.gnu.org; h=content-transfer-encoding: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=8cqoNvyEBReoh7Uj5WVW4mCDnSAoA1nwDOc6g2Vmvgw=; b=bNfcBYk5f9Ak+6q3beQy1A3GJTj/02Y82KaWpYrCNdSysLXDoOX4kmDlUtrhh14S/r ERNi2kpb8HQ1tVGvNJ6KCpagS2ELjcsNA2e399Vnm9IO4EH33KXdTNbfrwV7Q5HgnoAO L6h8o9DUcZZldwUX05dGaBuk1idoffZQ4WiXYqUTzP/lHCZ8K0ItPNoOjvhtVE3eF/RF sNpQGpc9KH+wDIVbKXBOnWqf4A8JjpLXU1I7TXU7waWLCcJLGA07TCGPt4rRWIPhVsHp /Ozq5k/YnSum2NCeNg4gGQUX4LiCbBlVebeBwHukzd8ChaZEjDYvTIBN4WnqXaI209l0 wOcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707110507; x=1707715307; h=content-transfer-encoding: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=8cqoNvyEBReoh7Uj5WVW4mCDnSAoA1nwDOc6g2Vmvgw=; b=amByiV97FQNVrGmoxFPe8TpCG4ZDNCBUCqpIVJc8xc+muDMy028suj4uxnv+t0wuYi dOS/aYnxW/DC8SXx5Mcp99uS7y7c3sXjva8BheNJ4pa8IQFpjmD193Z0sZM35Q2YvXwl A1PNXpCSwNLrVHJX14HXQG8gDG7OfbM+GAClmIWqsSSTqe95EFiQQEc+7vz+R3+9cLm3 lw6N34ZTGny3BwcSzo+aqDxR3mRe8kc2ccV8H5LFAOQMvvHnvT51JdR5nI3TB9absSiB eBngmulAc49udkSreYafy+tZ6RqyONE/Vn/ZXGVKqVmRyBE9ECsWrEtpRdKGPAI6hWqf 822g== X-Gm-Message-State: AOJu0Yxyn6WuJkx3rZJ3HZfHwLWQp8ORA1MntIjszJXzuvN8HUyJ5Us/ /+HewOrzOOSvO0xGMv2nL/vzF8ymO8sVjxdhSwLTbkx5nB25rPxy X-Google-Smtp-Source: AGHT+IFCo9GilhbwvX53lG1Ky6uL3BVUUbqX8GTmehz7MHyKOEQIhiiPaDQ7NpgCNeuqDAZGmbM22Q== X-Received: by 2002:a17:90a:ea0a:b0:296:530:996e with SMTP id w10-20020a17090aea0a00b002960530996emr6932407pjy.20.1707110507035; Sun, 04 Feb 2024 21:21:47 -0800 (PST) Received: from [192.168.1.2] (076-168-148-233.res.spectrum.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id j3-20020a17090a31c300b0028ce81d9f32sm4744687pjf.16.2024.02.04.21.21.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 04 Feb 2024 21:21:46 -0800 (PST) Message-ID: <2651d9ca-8358-9010-2d57-26c2d37be3f0@gmail.com> Date: Sun, 4 Feb 2024 21:21:46 -0800 MIME-Version: 1.0 Subject: Re: bug#68838: 30.0.50; [PATCH] Document Eshell built-in commands' arguments in the manual Content-Language: en-US From: Jim Porter To: Eli Zaretskii References: <86r0hx1f1f.fsf@gnu.org> <1f4ed2b3-02a3-95a4-84d0-bfd00e889461@gmail.com> In-Reply-To: <1f4ed2b3-02a3-95a4-84d0-bfd00e889461@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 68838-done Cc: 68838-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) I've now merged my latest patch to master as 5c43ef86bf1, so closing this bug. (Mainly so I can get to work on splitting this section up into small chunks.) Of course, if there are any followup issues, just let me know. From unknown Tue Jun 17 22:30:11 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 04 Mar 2024 12:24:09 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator