From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#54470: 29.0.50; [PATCH] Add documentation/tests for Eshell argument expansion Date: Sat, 16 Apr 2022 10:14:43 -0700 Message-ID: <55f95cab-e56f-42ef-43fb-de4fef99ea10@gmail.com> References: <83bky1f6jk.fsf@gnu.org> <83k0ca7fo6.fsf@gnu.org> <83zgkm1p4v.fsf@gnu.org> <25d222b3-9633-708e-6ac7-568c7a89e806@gmail.com> <83a6cl1fsv.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------F7EB05345DF97E50F8E62DEA" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22604"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 54470@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Apr 16 19:15:16 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nfm0x-0005hd-BD for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 16 Apr 2022 19:15:15 +0200 Original-Received: from localhost ([::1]:36462 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nfm0v-0004kQ-Q2 for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 16 Apr 2022 13:15:13 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46168) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nfm0k-0004kG-QX for bug-gnu-emacs@gnu.org; Sat, 16 Apr 2022 13:15:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:40348) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nfm0k-0001f0-Gl for bug-gnu-emacs@gnu.org; Sat, 16 Apr 2022 13:15:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nfm0k-0001XR-9i for bug-gnu-emacs@gnu.org; Sat, 16 Apr 2022 13:15:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 16 Apr 2022 17:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 54470 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 54470-submit@debbugs.gnu.org id=B54470.16501292965892 (code B ref 54470); Sat, 16 Apr 2022 17:15:02 +0000 Original-Received: (at 54470) by debbugs.gnu.org; 16 Apr 2022 17:14:56 +0000 Original-Received: from localhost ([127.0.0.1]:34245 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nfm0b-0001Wt-EH for submit@debbugs.gnu.org; Sat, 16 Apr 2022 13:14:56 -0400 Original-Received: from mail-pj1-f41.google.com ([209.85.216.41]:44823) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nfm0X-0001WY-9k for 54470@debbugs.gnu.org; Sat, 16 Apr 2022 13:14:52 -0400 Original-Received: by mail-pj1-f41.google.com with SMTP id u5-20020a17090a6a8500b001d0b95031ebso3736871pjj.3 for <54470@debbugs.gnu.org>; Sat, 16 Apr 2022 10:14:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:mime-version :in-reply-to:content-language; bh=UF5azUAWQzxGskNMSYJY3iHRwmFDfhrxKyVZZ8izYUo=; b=B5xSZkkS0HUwayTNStfGc4gyL4zjV12rBPIduc/Wtprsj7RuxuVoMVhctiflk44o4r B6pOK11eq6CVF+1iYDzSlSA+s5dcHj+NtA/AYxlnt/iUZKl+2ZmU60iVam1VglrDaZHI BkfBwhQ6i9h69YIo47bbswaahCJHFQBKA0f/TpxvOQm+WplzH8laiSqf9GwWX0d4VAa9 aPMyrP8lX/4w+ZkK+uGlWGwR3ix2jNN6AsZMYGwa3b0TGTt/69DSybDQG6k/2BuRihDK 4eQQBQ140dzjzQ9+6qiIoylfaxbJ8PP+ACzBvM9ukyZOX6qoJy0mrvFYyPfw/YXNLweD zBgQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :mime-version:in-reply-to:content-language; bh=UF5azUAWQzxGskNMSYJY3iHRwmFDfhrxKyVZZ8izYUo=; b=XwoKWO3nZ41hEeCYbHaXxUjGwqq53Gz72NiT7mvjfKBbl4pCmYn71AwDOzQehVPgN6 v8DGwsOJJGjUH0eMKsG+7JAimxI8kTiGcdhNolkun26V25Mu5EP8cOknKGhnKm9GEaJa 34RKq5Tjw4aKydM6lyglUqQUPeO06YMy5tiIzJuoix0hjMaTuiHFzv8RHuKZgjgy8HOm qBMF7qeS7A7P2XGqWkl2yQ3khn/2mq8W+Td3Ta9Khii3xbbClwZ2nZItCN8frIQQUtH6 ghTB8T6/XwmTtCynvc8leqnkkwrcxvLIYXBG48FpqXxDx5tY6kFIBgsZpu6wzitgjMzz 0COg== X-Gm-Message-State: AOAM533pXYLrm7if0/8ZRA/isy/OimaufXgwPQoG/8aKUgr/CZVM22+i aKTdLZplNSWJdNG53OPtQnP+A9yqfE0= X-Google-Smtp-Source: ABdhPJwheqO1QB5YtY5HyNhFKlwpotzcfQGrV4WFSuiJu6vPMPWeadG6oHs+yI74kvOy4hYvKuE0zg== X-Received: by 2002:a17:90a:6781:b0:1cb:11f0:9c51 with SMTP id o1-20020a17090a678100b001cb11f09c51mr10145184pjj.243.1650129283312; Sat, 16 Apr 2022 10:14:43 -0700 (PDT) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id s190-20020a625ec7000000b005061c17c111sm6635162pfb.71.2022.04.16.10.14.42 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 16 Apr 2022 10:14:42 -0700 (PDT) In-Reply-To: <83a6cl1fsv.fsf@gnu.org> Content-Language: en-US X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:230008 Archived-At: This is a multi-part message in MIME format. --------------F7EB05345DF97E50F8E62DEA Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 4/16/2022 3:30 AM, Eli Zaretskii wrote: >> Cc: 54470@debbugs.gnu.org >> From: Jim Porter >> Date: Fri, 15 Apr 2022 21:57:02 -0700 >> >> Can you try the attached patch to see if the tests pass? If it works, >> I'll fold it into the previous patches and resubmit them. (It works for >> me on an MS Windows system, but I don't have build tools on it, so I >> just used the binary release of 28.1 with some of the bits copied from >> my patches to test it out.) > > Yes, this fixes the failures, thanks. Cool, thanks. Here are final patches for merging then (only the second patch is changed from before, but I attached the full series for convenience). --------------F7EB05345DF97E50F8E62DEA Content-Type: text/plain; charset=UTF-8; name="0001-Add-unit-tests-and-documentation-for-Eshell-pattern-.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-Add-unit-tests-and-documentation-for-Eshell-pattern-.pa"; filename*1="tch" RnJvbSBjYmM3MDY3YmQ1NDNhN2FhZjIyY2Q2YjgwZDAzY2E4OTAwMTZmNWUwIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgOCBNYXIgMjAyMiAxNzowNzoyNiAtMDgwMApTdWJqZWN0OiBbUEFU Q0ggMS8zXSBBZGQgdW5pdCB0ZXN0cyBhbmQgZG9jdW1lbnRhdGlvbiBmb3IgRXNoZWxsIHBh dHRlcm4tYmFzZWQKIGdsb2JzCgoqIGxpc3AvZXNoZWxsL2VtLWdsb2IuZWwgKGVzaGVsbC1l eHRlbmRlZC1nbG9iKTogRml4IGRvY3N0cmluZy4KKGVzaGVsbC1nbG9iLWVudHJpZXMpOiBS ZWZlciB0byAnKiovJyBpbiBlcnJvciAodGVjaG5pY2FsbHksICcqKicgY2FuCmVuZCBhIGds b2IsIGJ1dCBpdCBtZWFucyB0aGUgc2FtZSB0aGluZyBhcyAnKicpLgoKKiB0ZXN0L2xpc3Av ZXNoZWxsL2VtLWdsb2ItdGVzdHMuZWw6IE5ldyBmaWxlLgoKKiBkb2MvbWlzYy9lc2hlbGwu dGV4aSAoR2xvYmJpbmcpOiBEb2N1bWVudCBwYXR0ZXJuLWJhc2VkIGdsb2JzLgotLS0KIGRv Yy9taXNjL2VzaGVsbC50ZXhpICAgICAgICAgICAgICB8ICA5NCArKysrKysrKysrKysrKy0t CiBsaXNwL2VzaGVsbC9lbS1nbG9iLmVsICAgICAgICAgICAgfCAgMTQgKystCiB0ZXN0L2xp c3AvZXNoZWxsL2VtLWdsb2ItdGVzdHMuZWwgfCAxNzEgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDI2MiBpbnNlcnRpb25zKCspLCAxNyBkZWxl dGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L2xpc3AvZXNoZWxsL2VtLWdsb2It dGVzdHMuZWwKCmRpZmYgLS1naXQgYS9kb2MvbWlzYy9lc2hlbGwudGV4aSBiL2RvYy9taXNj L2VzaGVsbC50ZXhpCmluZGV4IDM3MmU0YzNmZmIuLjY0ODkxN2Y2MmQgMTAwNjQ0Ci0tLSBh L2RvYy9taXNjL2VzaGVsbC50ZXhpCisrKyBiL2RvYy9taXNjL2VzaGVsbC50ZXhpCkBAIC0x MDg5LDE1ICsxMDg5LDkxIEBAIERvbGxhcnMgRXhwYW5zaW9uCiAKIEBub2RlIEdsb2JiaW5n CiBAc2VjdGlvbiBHbG9iYmluZwotRXNoZWxsJ3MgZ2xvYmJpbmcgc3ludGF4IGlzIHZlcnkg c2ltaWxhciB0byB0aGF0IG9mIFpzaC4gIFVzZXJzIGNvbWluZwotZnJvbSBCYXNoIGNhbiBz dGlsbCB1c2UgQmFzaC1zdHlsZSBnbG9iYmluZywgYXMgdGhlcmUgYXJlIG5vCi1pbmNvbXBh dGliaWxpdGllcy4gIE1vc3QgZ2xvYmJpbmcgaXMgcGF0dGVybi1iYXNlZCBleHBhbnNpb24s IGJ1dCB0aGVyZQotaXMgYWxzbyBwcmVkaWNhdGUtYmFzZWQgZXhwYW5zaW9uLiAgQHhyZWZ7 RmlsZW5hbWUgR2VuZXJhdGlvbiwgLCAsCi16c2gsIFRoZSBaIFNoZWxsIE1hbnVhbH0sCi1m b3IgZnVsbCBzeW50YXguICBUbyBjdXN0b21pemUgdGhlIHN5bnRheCBhbmQgYmVoYXZpb3Ig b2YgZ2xvYmJpbmcgaW4KLUVzaGVsbCBzZWUgdGhlIEN1c3RvbWl6ZUBmb290bm90ZXtAeHJl ZntFYXN5IEN1c3RvbWl6YXRpb24sICwgLCBlbWFjcywKLVRoZSBHTlUgRW1hY3MgTWFudWFs fS59Ci1ncm91cHMgYGBlc2hlbGwtZ2xvYicnIGFuZCBgYGVzaGVsbC1wcmVkJycuCitAdmlu ZGV4IGVzaGVsbC1nbG9iLWNhc2UtaW5zZW5zaXRpdmUKK0VzaGVsbCdzIGdsb2JiaW5nIHN5 bnRheCBpcyB2ZXJ5IHNpbWlsYXIgdG8gdGhhdCBvZiBac2gKKyhAcHhyZWZ7RmlsZW5hbWUg R2VuZXJhdGlvbiwgLCAsIHpzaCwgVGhlIFogU2hlbGwgTWFudWFsfSkuICBVc2VycworY29t aW5nIGZyb20gQmFzaCBjYW4gc3RpbGwgdXNlIEJhc2gtc3R5bGUgZ2xvYmJpbmcsIGFzIHRo ZXJlIGFyZSBubworaW5jb21wYXRpYmlsaXRpZXMuCisKK0J5IGRlZmF1bHQsIGdsb2JzIGFy ZSBjYXNlIHNlbnNpdGl2ZSwgZXhjZXB0IG9uIE1TLURPUy9NUy1XaW5kb3dzCitzeXN0ZW1z LiAgWW91IGNhbiBjb250cm9sIHRoaXMgYmVoYXZpb3IgdmlhIHRoZQorQGNvZGV7ZXNoZWxs LWdsb2ItY2FzZS1pbnNlbnNpdGl2ZX0gb3B0aW9uLiAgWW91IGNhbiBmdXJ0aGVyIGN1c3Rv bWl6ZQordGhlIHN5bnRheCBhbmQgYmVoYXZpb3Igb2YgZ2xvYmJpbmcgaW4gRXNoZWxsIHZp YSB0aGUgQ3VzdG9taXplIGdyb3VwCitgYGVzaGVsbC1nbG9iJycgKEBweHJlZntFYXN5IEN1 c3RvbWl6YXRpb24sICwgLCBlbWFjcywgVGhlIEdOVSBFbWFjcworTWFudWFsfSkuCisKK0B0 YWJsZSBAc2FtcAorCitAaXRlbSAqCitNYXRjaGVzIGFueSBzdHJpbmcgKGluY2x1ZGluZyB0 aGUgZW1wdHkgc3RyaW5nKS4gIEZvciBleGFtcGxlLAorQHNhbXB7Ki5lbH0gbWF0Y2hlcyBh bnkgZmlsZSB3aXRoIHRoZSBAZmlsZXsuZWx9IGV4dGVuc2lvbi4KKworQGl0ZW0gPworTWF0 Y2hlcyBhbnkgc2luZ2xlIGNoYXJhY3Rlci4gIEZvciBleGFtcGxlLCBAc2FtcHs/YXR9IG1h dGNoZXMKK0BmaWxle2NhdH0gYW5kIEBmaWxle2JhdH0sIGJ1dCBub3QgQGZpbGV7Z29hdH0u CisKK0BpdGVtICoqLworTWF0Y2hlcyB6ZXJvIG9yIG1vcmUgc3ViZGlyZWN0b3JpZXMgaW4g YSBmaWxlIG5hbWUuICBGb3IgZXhhbXBsZSwKK0BzYW1weyoqL2Zvby5lbH0gbWF0Y2hlcyBA ZmlsZXtmb28uZWx9LCBAZmlsZXtiYXIvZm9vLmVsfSwKK0BmaWxle2Jhci9iYXovZm9vLmVs fSwgZXRjLiAgTm90ZSB0aGF0IHRoaXMgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGgKK2FueSBv dGhlciBwYXR0ZXJucyBpbiB0aGUgc2FtZSBmaWxlIG5hbWUgc2VnbWVudCwgc28gd2hpbGUK K0BzYW1we2Zvby8qKi9iYXIuZWx9IGlzIGFsbG93ZWQsIEBzYW1we2ZvbyoqL2Jhci5lbH0g aXMgbm90LgorCitAaXRlbSAqKiovCitMaWtlIEBzYW1weyoqL30sIGJ1dCBmb2xsb3dzIHN5 bWxpbmtzIGFzIHdlbGwuCisKK0BjaW5kZXggY2hhcmFjdGVyIHNldHMsIGluIEVzaGVsbCBn bG9iIHBhdHRlcm5zCitAY2luZGV4IGNoYXJhY3RlciBjbGFzc2VzLCBpbiBFc2hlbGwgZ2xv YiBwYXR0ZXJucworQGl0ZW0gWyBAZG90c3t9IF0KK0RlZmluZXMgYSBAZGZue2NoYXJhY3Rl ciBzZXR9IChAcHhyZWZ7UmVnZXhwcywgLCAsIGVtYWNzLCBUaGUgR05VCitFbWFjcyBNYW51 YWx9KS4gIEEgY2hhcmFjdGVyIHNldCBtYXRjaGVzIGNoYXJhY3RlcnMgYmV0d2VlbiB0aGUg dHdvCiticmFja2V0czsgZm9yIGV4YW1wbGUsIEBzYW1we1thZF19IG1hdGNoZXMgQGZpbGV7 YX0gYW5kIEBmaWxle2R9LiAgWW91CitjYW4gYWxzbyBpbmNsdWRlIHJhbmdlcyBvZiBjaGFy YWN0ZXJzIGluIHRoZSBzZXQgYnkgc2VwYXJhdGluZyB0aGUKK3N0YXJ0IGFuZCBlbmQgd2l0 aCBAc2FtcHstfS4gIFRodXMsIEBzYW1we1thLXpdfSBtYXRjaGVzIGFueQorbG93ZXItY2Fz ZSBAYWNyb255bXtBU0NJSX0gbGV0dGVyLiAgTm90ZSB0aGF0LCB1bmxpa2UgaW4gWnNoLAor Y2hhcmFjdGVyIHJhbmdlcyBhcmUgaW50ZXJwcmV0ZWQgaW4gdGhlIFVuaWNvZGUgY29kZXBv aW50IG9yZGVyLCBub3QKK2luIHRoZSBsb2NhbGUtZGVwZW5kZW50IGNvbGxhdGlvbiBvcmRl ci4KKworQWRkaXRpb25hbGx5LCB5b3UgY2FuIGluY2x1ZGUgQGRmbntjaGFyYWN0ZXIgY2xh c3Nlc30gaW4gYSBjaGFyYWN0ZXIKK3NldC4gIEEgQHNhbXB7Wzp9IGFuZCBiYWxhbmNpbmcg QHNhbXB7Ol19IGVuY2xvc2UgYSBjaGFyYWN0ZXIgY2xhc3MKK2luc2lkZSBhIGNoYXJhY3Rl ciBzZXQuICBGb3IgaW5zdGFuY2UsIEBzYW1we1tbOmFsbnVtOl1dfQorbWF0Y2hlcyBhbnkg bGV0dGVyIG9yIGRpZ2l0LiAgQHhyZWZ7Q2hhciBDbGFzc2VzLCAsICwgZWxpc3AsIFRoZSBF bWFjcworTGlzcCBSZWZlcmVuY2UgTWFudWFsfSwgZm9yIGEgbGlzdCBvZiBjaGFyYWN0ZXIg Y2xhc3Nlcy4KKworQGNpbmRleCBjb21wbGVtZW50ZWQgY2hhcmFjdGVyIHNldHMsIGluIEVz aGVsbCBnbG9iIHBhdHRlcm5zCitAaXRlbSBbXiBAZG90c3t9IF0KK0RlZmluZXMgYSBAZGZu e2NvbXBsZW1lbnRlZCBjaGFyYWN0ZXIgc2V0fS4gIFRoaXMgYmVoYXZlcyBqdXN0IGxpa2Ug YQorY2hhcmFjdGVyIHNldCwgYnV0IG1hdGNoZXMgYW55IGNoYXJhY3RlciBAZW1waHtleGNl cHR9IHRoZSBvbmVzCitzcGVjaWZpZWQuCisKK0BjaW5kZXggZ3JvdXBzLCBpbiBFc2hlbGwg Z2xvYiBwYXR0ZXJucworQGl0ZW0gKCBAZG90c3t9ICkKK0RlZmluZXMgYSBAZGZue2dyb3Vw fS4gIEEgZ3JvdXAgbWF0Y2hlcyB0aGUgcGF0dGVybiBiZXR3ZWVuIEBzYW1weyh9CithbmQg QHNhbXB7KX0uICBOb3RlIHRoYXQgYSBncm91cCBjYW4gb25seSBtYXRjaCBhIHNpbmdsZSBm aWxlIG5hbWUKK2NvbXBvbmVudCwgc28gYSBAc2FtcHsvfSBpbnNpZGUgYSBncm91cCB3aWxs IHNpZ25hbCBhbiBlcnJvci4KKworQGl0ZW0gQHZhcnt4fXxAdmFye3l9CitJbnNpZGUgb2Yg YSBncm91cCwgbWF0Y2hlcyBlaXRoZXIgQHZhcnt4fSBvciBAdmFye3l9LiAgRm9yIGV4YW1w bGUsCitAc2FtcHtlKG18c2gpLSp9IG1hdGNoZXMgYW55IGZpbGUgYmVnaW5uaW5nIHdpdGgg QGZpbGV7ZW0tfSBvcgorQGZpbGV7ZXNoLX0uCisKK0BpdGVtIEB2YXJ7eH0jCitNYXRjaGVz IHplcm8gb3IgbW9yZSBjb3BpZXMgb2YgdGhlIGdsb2IgcGF0dGVybiBAdmFye3h9LiAgRm9y IGV4YW1wbGUsCitAc2FtcHtmbyMuZWx9IG1hdGNoZXMgQGZpbGV7Zi5lbH0sIEBmaWxle2Zv LmVsfSwgQGZpbGV7Zm9vLmVsfSwgZXRjLgorCitAaXRlbSBAdmFye3h9IyMKK01hdGNoZXMg b25lIG9yIG1vcmUgY29waWVzIG9mIHRoZSBnbG9iIHBhdHRlcm4gQHZhcnt4fS4gIFRodXMs CitAc2FtcHtmbyMuZWx9IG1hdGNoZXMgQGZpbGV7Zm8uZWx9LCBAZmlsZXtmb28uZWx9LCBA ZmlsZXtmb29vLmVsfSwKK2V0Yy4KKworQGl0ZW0gQHZhcnt4fX5AdmFye3l9CitNYXRjaGVz IGFueXRoaW5nIHRoYXQgbWF0Y2hlcyB0aGUgcGF0dGVybiBAdmFye3h9IGJ1dCBub3QgQHZh cnt5fS4gRm9yCitleGFtcGxlLCBAc2FtcHtbWzpkaWdpdDpdXSN+ND99IG1hdGNoZXMgQGZp bGV7MX0gYW5kIEBmaWxlezEyfSwgYnV0Citub3QgQGZpbGV7NDJ9LiAgTm90ZSB0aGF0IHVu bGlrZSBpbiBac2gsIG9ubHkgYSBzaW5nbGUgQHNhbXB7fn0KK29wZXJhdG9yIGNhbiBiZSB1 c2VkIGluIGEgcGF0dGVybiwgYW5kIGl0IGNhbm5vdCBiZSBpbnNpZGUgb2YgYSBncm91cAor bGlrZSBAc2FtcHsoQHZhcnt4fX5AdmFye3l9KX0uCisKK0BlbmQgdGFibGUKIAogQG5vZGUg SW5wdXQvT3V0cHV0CiBAY2hhcHRlciBJbnB1dC9PdXRwdXQKZGlmZiAtLWdpdCBhL2xpc3Av ZXNoZWxsL2VtLWdsb2IuZWwgYi9saXNwL2VzaGVsbC9lbS1nbG9iLmVsCmluZGV4IDg0MmYy N2E0OTIuLjUyNTMxZmY4OTMgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VtLWdsb2IuZWwK KysrIGIvbGlzcC9lc2hlbGwvZW0tZ2xvYi5lbApAQCAtMjMzLDcgKzIzMywxMCBAQCBlc2hl bGwtZ2xvYi1yZWdleHAKIAkgICAgIlxcJyIpKSkKIAogKGRlZnVuIGVzaGVsbC1leHRlbmRl ZC1nbG9iIChnbG9iKQotICAiUmV0dXJuIGEgbGlzdCBvZiBmaWxlcyBnZW5lcmF0ZWQgZnJv bSBHTE9CLCBwZXJoYXBzIGxvb2tpbmcgZm9yIERJUlMtT05MWS4KKyAgIlJldHVybiBhIGxp c3Qgb2YgZmlsZXMgbWF0Y2hlZCBieSBHTE9CLgorSWYgbm8gZmlsZXMgbWF0Y2gsIHNpZ25h bCBhbiBlcnJvciAoaWYgYGVzaGVsbC1lcnJvci1pZi1uby1nbG9iJworaXMgbm9uLW5pbCks IG9yIG90aGVyd2lzZSByZXR1cm4gR0xPQiBpdHNlbGYuCisKIFRoaXMgZnVuY3Rpb24gYWxt b3N0IGZ1bGx5IHN1cHBvcnRzIHpzaCBzdHlsZSBmaWxlbmFtZSBnZW5lcmF0aW9uCiBzeW50 YXguICBUaGluZ3MgdGhhdCBhcmUgbm90IHN1cHBvcnRlZCBhcmU6CiAKQEAgLTI0MywxMiAr MjQ2LDcgQEAgZXNoZWxsLWV4dGVuZGVkLWdsb2IKICAgIGZvb354KGF8YikgIChhfGIpIHdp bGwgYmUgaW50ZXJwcmV0ZWQgYXMgYSBwcmVkaWNhdGUvbW9kaWZpZXIgbGlzdAogCiBNYWlu bHkgdGhleSBhcmUgbm90IHN1cHBvcnRlZCBiZWNhdXNlIGZpbGUgbWF0Y2hpbmcgaXMgZG9u ZSB3aXRoIEVtYWNzCi1yZWd1bGFyIGV4cHJlc3Npb25zLCBhbmQgdGhlc2UgY2Fubm90IHN1 cHBvcnQgdGhlIGFib3ZlIGNvbnN0cnVjdHMuCi0KLUlmIHRoaXMgcm91dGluZSBmYWlscywg aXQgcmV0dXJucyBuaWwuICBPdGhlcndpc2UsIGl0IHJldHVybnMgYSBsaXN0Ci10aGUgZm9y bToKLQotICAgKElOQ0xVREUtUkVHRVhQIEVYQ0xVREUtUkVHRVhQIChQUkVELUZVTkMtTElT VCkgKE1PRC1GVU5DLUxJU1QpKSIKK3JlZ3VsYXIgZXhwcmVzc2lvbnMsIGFuZCB0aGVzZSBj YW5ub3Qgc3VwcG9ydCB0aGUgYWJvdmUgY29uc3RydWN0cy4iCiAgIChsZXQgKChwYXRocyAo ZXNoZWxsLXNwbGl0LXBhdGggZ2xvYikpCiAgICAgICAgIGVzaGVsbC1nbG9iLW1hdGNoZXMg bWVzc2FnZS1zaG93bikKICAgICAodW53aW5kLXByb3RlY3QKQEAgLTI4Nyw3ICsyODUsNyBA QCBlc2hlbGwtZ2xvYi1lbnRyaWVzCiAJCSAgIGdsb2IgKGNhciBnbG9icykKIAkJICAgbGVu IChsZW5ndGggZ2xvYikpKSkpCiAgICAgKGlmIChhbmQgcmVjdXJzZS1wIChub3QgZ2xvYikp Ci0JKGVycm9yICJgKionIGNhbm5vdCBlbmQgYSBnbG9iYmluZyBwYXR0ZXJuIikpCisJKGVy cm9yICJgKiovJyBjYW5ub3QgZW5kIGEgZ2xvYmJpbmcgcGF0dGVybiIpKQogICAgIChsZXQg KChpbmRleCAxKSkKICAgICAgIChzZXRxIGluY2wgZ2xvYikKICAgICAgICh3aGlsZSAoYW5k IChlcSBpbmNsIGdsb2IpCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZXNoZWxsL2VtLWdsb2It dGVzdHMuZWwgYi90ZXN0L2xpc3AvZXNoZWxsL2VtLWdsb2ItdGVzdHMuZWwKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uOTk3NmIzMmZmZQotLS0gL2Rldi9udWxs CisrKyBiL3Rlc3QvbGlzcC9lc2hlbGwvZW0tZ2xvYi10ZXN0cy5lbApAQCAtMCwwICsxLDE3 MSBAQAorOzs7IGVtLWdsb2ItdGVzdHMuZWwgLS0tIGVtLWdsb2IgdGVzdCBzdWl0ZSAgLSot IGxleGljYWwtYmluZGluZzp0IC0qLQorCis7OyBDb3B5cmlnaHQgKEMpIDIwMjIgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisKKzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdO VSBFbWFjcy4KKworOzsgR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVk aXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKzs7IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Cis7OyB0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgorOzsgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworOzsg R05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCis7OyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgorOzsgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorOzsgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworOzsgWW91IHNob3VsZCBoYXZlIHJlY2Vp dmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKzs7IGFsb25n IHdpdGggR05VIEVtYWNzLiAgSWYgbm90LCBzZWUgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGlj ZW5zZXMvPi4KKworOzs7IENvbW1lbnRhcnk6CisKKzs7IFRlc3RzIGZvciBFc2hlbGwncyBn bG9iIGV4cGFuc2lvbi4KKworOzs7IENvZGU6CisKKyhyZXF1aXJlICdlcnQpCisocmVxdWly ZSAnZW0tZ2xvYikKKworKGRlZm1hY3JvIHdpdGgtZmFrZS1maWxlcyAoZmlsZXMgJnJlc3Qg Ym9keSkKKyAgIkV2YWx1YXRlIEJPRFkgZm9ybXMsIHByZXRlbmRpbmcgdGhhdCBGSUxFUyBl eGlzdCBvbiB0aGUgZmlsZXN5c3RlbS4KK0ZJTEVTIGlzIGEgbGlzdCBvZiBmaWxlIG5hbWVz IHRoYXQgc2hvdWxkIGJlIHJlcG9ydGVkIGFzCithcHByb3ByaWF0ZSBieSBgZmlsZS1uYW1l LWFsbC1jb21wbGV0aW9ucycuICBBbnkgZmlsZSBuYW1lCitjb21wb25lbnQgZW5kaW5nIGlu IFwic3ltbGlua1wiIGlzIHRyZWF0ZWQgYXMgYSBzeW1ib2xpYyBsaW5rLiIKKyAgKGRlY2xh cmUgKGluZGVudCAxKSkKKyAgYChjbC1sZXRmICgoKHN5bWJvbC1mdW5jdGlvbiAnZmlsZS1u YW1lLWFsbC1jb21wbGV0aW9ucykKKyAgICAgICAgICAgICAgKGxhbWJkYSAoZmlsZSBkaXJl Y3RvcnkpCisgICAgICAgICAgICAgICAgKGNsLWFzc2VydCAoc3RyaW5nPSBmaWxlICIiKSkK KyAgICAgICAgICAgICAgICAoc2V0cSBkaXJlY3RvcnkgKGV4cGFuZC1maWxlLW5hbWUgZGly ZWN0b3J5KSkKKyAgICAgICAgICAgICAgICBgKCIuLyIgIi4uLyIKKyAgICAgICAgICAgICAg ICAgICxAKGRlbGV0ZS1kdXBzCisgICAgICAgICAgICAgICAgICAgICAocmVtcSBuaWwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjYXIKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAobGFtYmRhIChmaWxlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KHNldHEgZmlsZSAoZXhwYW5kLWZpbGUtbmFtZSBmaWxlKSkKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICh3aGVuIChzdHJpbmctcHJlZml4LXAgZGlyZWN0b3J5IGZpbGUpCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZXBsYWNlLXJlZ2V4cC1pbi1zdHJp bmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIvLioiICIvIgorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN1YnN0cmluZyBmaWxlIChsZW5ndGggZGly ZWN0b3J5KSkpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAsZmlsZXMpKSkpKSkK KyAgICAgICAgICAgICAoKHN5bWJvbC1mdW5jdGlvbiAnZmlsZS1zeW1saW5rLXApCisgICAg ICAgICAgICAgIChsYW1iZGEgKGZpbGUpCisgICAgICAgICAgICAgICAgKHN0cmluZy1zdWZm aXgtcCAic3ltbGluayIgZmlsZSkpKSkKKyAgICAgLEBib2R5KSkKKworOzs7IFRlc3RzOgor CisoZXJ0LWRlZnRlc3QgZW0tZ2xvYi10ZXN0L21hdGNoLWFueS1zdHJpbmcgKCkKKyAgIlRl c3QgdGhhdCBcIipcIiBwYXR0ZXJuIG1hdGNoZXMgYW55IHN0cmluZy4iCisgICh3aXRoLWZh a2UtZmlsZXMgJygiYS5lbCIgImIuZWwiICJjLnR4dCIgImRpci9hLmVsIikKKyAgICAoc2hv dWxkIChlcXVhbCAoZXNoZWxsLWV4dGVuZGVkLWdsb2IgIiouZWwiKQorICAgICAgICAgICAg ICAgICAgICcoImEuZWwiICJiLmVsIikpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1nbG9iLXRl c3QvbWF0Y2gtYW55LWNoYXJhY3RlciAoKQorICAiVGVzdCB0aGF0IFwiP1wiIHBhdHRlcm4g bWF0Y2hlcyBhbnkgY2hhcmFjdGVyLiIKKyAgKHdpdGgtZmFrZS1maWxlcyAnKCJhLmVsIiAi Yi5lbCIgImNjYy5lbCIgImQudHh0IiAiZGlyL2EuZWwiKQorICAgIChzaG91bGQgKGVxdWFs IChlc2hlbGwtZXh0ZW5kZWQtZ2xvYiAiPy5lbCIpCisgICAgICAgICAgICAgICAgICAgJygi YS5lbCIgImIuZWwiKSkpKSkKKworKGVydC1kZWZ0ZXN0IGVtLWdsb2ItdGVzdC9tYXRjaC1y ZWN1cnNpdmUgKCkKKyAgIlRlc3QgdGhhdCBcIioqL1wiIHJlY3Vyc2l2ZWx5IG1hdGNoZXMg ZGlyZWN0b3JpZXMuIgorICAod2l0aC1mYWtlLWZpbGVzICcoImEuZWwiICJiLmVsIiAiY2Nj LmVsIiAiZC50eHQiICJkaXIvYS5lbCIgImRpci9zdWIvYS5lbCIKKyAgICAgICAgICAgICAg ICAgICAgICJkaXIvc3ltbGluay9hLmVsIiAic3ltbGluay9hLmVsIiAic3ltbGluay9zdWIv YS5lbCIpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICIqKi9h LmVsIikKKyAgICAgICAgICAgICAgICAgICAnKCJhLmVsIiAiZGlyL2EuZWwiICJkaXIvc3Vi L2EuZWwiKSkpKSkKKworKGVydC1kZWZ0ZXN0IGVtLWdsb2ItdGVzdC9tYXRjaC1yZWN1cnNp dmUtZm9sbG93LXN5bWxpbmtzICgpCisgICJUZXN0IHRoYXQgXCIqKiovXCIgcmVjdXJzaXZl bHkgbWF0Y2hlcyBkaXJlY3RvcmllcywgZm9sbG93aW5nIHN5bWxpbmtzLiIKKyAgKHdpdGgt ZmFrZS1maWxlcyAnKCJhLmVsIiAiYi5lbCIgImNjYy5lbCIgImQudHh0IiAiZGlyL2EuZWwi ICJkaXIvc3ViL2EuZWwiCisgICAgICAgICAgICAgICAgICAgICAiZGlyL3N5bWxpbmsvYS5l bCIgInN5bWxpbmsvYS5lbCIgInN5bWxpbmsvc3ViL2EuZWwiKQorICAgIChzaG91bGQgKGVx dWFsIChlc2hlbGwtZXh0ZW5kZWQtZ2xvYiAiKioqL2EuZWwiKQorICAgICAgICAgICAgICAg ICAgICcoImEuZWwiICJkaXIvYS5lbCIgImRpci9zdWIvYS5lbCIgImRpci9zeW1saW5rL2Eu ZWwiCisgICAgICAgICAgICAgICAgICAgICAic3ltbGluay9hLmVsIiAic3ltbGluay9zdWIv YS5lbCIpKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tZ2xvYi10ZXN0L21hdGNoLXJlY3Vyc2l2 ZS1taXhlZCAoKQorICAiVGVzdCBjb21iaW5hdGlvbiBvZiBcIioqL1wiIGFuZCBcIioqKi9c Ii4iCisgICh3aXRoLWZha2UtZmlsZXMgJygiZGlyL2EuZWwiICJkaXIvc3ViL2EuZWwiICJk aXIvc3ViMi9hLmVsIgorICAgICAgICAgICAgICAgICAgICAgImRpci9zeW1saW5rL2EuZWwi ICJkaXIvc3ViL3N5bWxpbmsvYS5lbCIgInN5bWxpbmsvYS5lbCIKKyAgICAgICAgICAgICAg ICAgICAgICJzeW1saW5rL3N1Yi9hLmVsIiAic3ltbGluay9zdWIvc3ltbGluay9hLmVsIikK KyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV4dGVuZGVkLWdsb2IgIioqL3N1Yi8qKiov YS5lbCIpCisgICAgICAgICAgICAgICAgICAgJygiZGlyL3N1Yi9hLmVsIiAiZGlyL3N1Yi9z eW1saW5rL2EuZWwiKSkpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1n bG9iICIqKiovc3ViLyoqL2EuZWwiKQorICAgICAgICAgICAgICAgICAgICcoImRpci9zdWIv YS5lbCIgInN5bWxpbmsvc3ViL2EuZWwiKSkpKSkKKworKGVydC1kZWZ0ZXN0IGVtLWdsb2It dGVzdC9tYXRjaC1jaGFyYWN0ZXItc2V0LWluZGl2aWR1YWwgKCkKKyAgIlRlc3QgXCJbLi4u XVwiIGZvciBpbmRpdmlkdWFsIGNoYXJhY3RlcnMuIgorICAod2l0aC1mYWtlLWZpbGVzICco ImEuZWwiICJiLmVsIiAiYy5lbCIgImQuZWwiICJkaXIvYS5lbCIpCisgICAgKHNob3VsZCAo ZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICJbYWJdLmVsIikKKyAgICAgICAgICAgICAg ICAgICAnKCJhLmVsIiAiYi5lbCIpKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV4 dGVuZGVkLWdsb2IgIlteYWJdLmVsIikKKyAgICAgICAgICAgICAgICAgICAnKCJjLmVsIiAi ZC5lbCIpKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tZ2xvYi10ZXN0L21hdGNoLWNoYXJhY3Rl ci1zZXQtcmFuZ2UgKCkKKyAgIlRlc3QgXCJbLi4uXVwiIGZvciBjaGFyYWN0ZXIgcmFuZ2Vz LiIKKyAgKHdpdGgtZmFrZS1maWxlcyAnKCJhLmVsIiAiYi5lbCIgImMuZWwiICJkLmVsIiAi ZGlyL2EuZWwiKQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXh0ZW5kZWQtZ2xvYiAi W2EtY10uZWwiKQorICAgICAgICAgICAgICAgICAgICcoImEuZWwiICJiLmVsIiAiYy5lbCIp KSkKKyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV4dGVuZGVkLWdsb2IgIlteYS1jXS5l bCIpCisgICAgICAgICAgICAgICAgICAgJygiZC5lbCIpKSkpKQorCisoZXJ0LWRlZnRlc3Qg ZW0tZ2xvYi10ZXN0L21hdGNoLWNoYXJhY3Rlci1zZXQtY2xhc3MgKCkKKyAgIlRlc3QgXCJb Li4uXVwiIGZvciBjaGFyYWN0ZXIgY2xhc3Nlcy4iCisgICh3aXRoLWZha2UtZmlsZXMgJygi MS5lbCIgImEuZWwiICJiLmVsIiAiYy5lbCIgImRpci9hLmVsIikKKyAgICAoc2hvdWxkIChl cXVhbCAoZXNoZWxsLWV4dGVuZGVkLWdsb2IgIltbOmFscGhhOl1dLmVsIikKKyAgICAgICAg ICAgICAgICAgICAnKCJhLmVsIiAiYi5lbCIgImMuZWwiKSkpCisgICAgKHNob3VsZCAoZXF1 YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICJbXls6YWxwaGE6XV0uZWwiKQorICAgICAgICAg ICAgICAgICAgICcoIjEuZWwiKSkpKSkKKworKGVydC1kZWZ0ZXN0IGVtLWdsb2ItdGVzdC9t YXRjaC1jaGFyYWN0ZXItc2V0LW1peGVkICgpCisgICJUZXN0IFwiWy4uLl1cIiB3aXRoIG11 bHRpcGxlIGtpbmRzIG9mIG1lbWJlcnMgYXQgb25jZS4iCisgICh3aXRoLWZha2UtZmlsZXMg JygiMS5lbCIgImEuZWwiICJiLmVsIiAiYy5lbCIgImQuZWwiICJkaXIvYS5lbCIpCisgICAg KHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICJbYWMtZFs6ZGlnaXQ6XV0u ZWwiKQorICAgICAgICAgICAgICAgICAgICcoIjEuZWwiICJhLmVsIiAiYy5lbCIgImQuZWwi KSkpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICJbXmFjLWRb OmRpZ2l0Ol1dLmVsIikKKyAgICAgICAgICAgICAgICAgICAnKCJiLmVsIikpKSkpCisKKyhl cnQtZGVmdGVzdCBlbS1nbG9iLXRlc3QvbWF0Y2gtZ3JvdXAtYWx0ZXJuYXRpdmUgKCkKKyAg IlRlc3QgXCIoeHx5KVwiIG1hdGNoZXMgZWl0aGVyIFwieFwiIG9yIFwieVwiLiIKKyAgKHdp dGgtZmFrZS1maWxlcyAnKCJlbS1hbGlhcy5lbCIgImVtLWJhbm5lci5lbCIgImVzaC1hcmcu ZWwiICJtaXNjLmVsIgorICAgICAgICAgICAgICAgICAgICAgInRlc3QvZW0teHRyYS5lbCIp CisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICJlKG18c2gpLSou ZWwiKQorICAgICAgICAgICAgICAgICAgICcoImVtLWFsaWFzLmVsIiAiZW0tYmFubmVyLmVs IiAiZXNoLWFyZy5lbCIpKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tZ2xvYi10ZXN0L21hdGNo LW4tb3ItbW9yZS1jaGFyYWN0ZXJzICgpCisgICJUZXN0IHRoYXQgXCJ4I1wiIGFuZCBcIngj XCIgbWF0Y2ggemVybyBvciBtb3JlIGluc3RhbmNlcyBvZiBcInhcIi4iCisgICh3aXRoLWZh a2UtZmlsZXMgJygiaC5lbCIgImhhLmVsIiAiaGkuZWwiICJoaWkuZWwiICJkaXIvaGkuZWwi KQorICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXh0ZW5kZWQtZ2xvYiAiaGkjLmVsIikK KyAgICAgICAgICAgICAgICAgICAnKCJoLmVsIiAiaGkuZWwiICJoaWkuZWwiKSkpCisgICAg KHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICJoaSMjLmVsIikKKyAgICAg ICAgICAgICAgICAgICAnKCJoaS5lbCIgImhpaS5lbCIpKSkpKQorCisoZXJ0LWRlZnRlc3Qg ZW0tZ2xvYi10ZXN0L21hdGNoLW4tb3ItbW9yZS1ncm91cHMgKCkKKyAgIlRlc3QgdGhhdCBc Iih4KSNcIiBhbmQgXCIoeCkjXCIgbWF0Y2ggemVybyBvciBtb3JlIGluc3RhbmNlcyBvZiBc Iih4KVwiLiIKKyAgKHdpdGgtZmFrZS1maWxlcyAnKCJoLmVsIiAiaGEuZWwiICJoaS5lbCIg ImhpaS5lbCIgImRpci9oaS5lbCIpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRl bmRlZC1nbG9iICJoaSMuZWwiKQorICAgICAgICAgICAgICAgICAgICcoImguZWwiICJoaS5l bCIgImhpaS5lbCIpKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV4dGVuZGVkLWds b2IgImhpIyMuZWwiKQorICAgICAgICAgICAgICAgICAgICcoImhpLmVsIiAiaGlpLmVsIikp KSkpCisKKyhlcnQtZGVmdGVzdCBlbS1nbG9iLXRlc3QvbWF0Y2gtbi1vci1tb3JlLWNoYXJh Y3Rlci1zZXRzICgpCisgICJUZXN0IHRoYXQgXCJbeF0jXCIgYW5kIFwiW3hdI1wiIG1hdGNo IHplcm8gb3IgbW9yZSBpbnN0YW5jZXMgb2YgXCJbeF1cIi4iCisgICh3aXRoLWZha2UtZmls ZXMgJygidy5lbCIgIndoLmVsIiAid2hhLmVsIiAid2hpLmVsIiAid2hhaGEuZWwiICJkaXIv d2hhLmVsIikKKyAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV4dGVuZGVkLWdsb2IgIndb YWhdIy5lbCIpCisgICAgICAgICAgICAgICAgICAgJygidy5lbCIgIndoLmVsIiAid2hhLmVs IiAid2hhaGEuZWwiKSkpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1n bG9iICJ3W2FoXSMjLmVsIikKKyAgICAgICAgICAgICAgICAgICAnKCJ3aC5lbCIgIndoYS5l bCIgIndoYWhhLmVsIikpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1nbG9iLXRlc3QvbWF0Y2gt eC1idXQtbm90LXkgKCkKKyAgIlRlc3QgdGhhdCBcInh+eVwiIG1hdGNoZXMgXCJ4XCIgYnV0 IG5vdCBcInlcIi4iCisgICh3aXRoLWZha2UtZmlsZXMgJygiMSIgIjEyIiAiMTIzIiAiNDIi ICJkaXIvMSIpCisgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1leHRlbmRlZC1nbG9iICJb WzpkaWdpdDpdXSMjfjQ/IikKKyAgICAgICAgICAgICAgICAgICAnKCIxIiAiMTIiICIxMjMi KSkpKSkKKworKGVydC1kZWZ0ZXN0IGVtLWdsb2ItdGVzdC9uby1tYXRjaGVzICgpCisgICJU ZXN0IGJlaGF2aW9yIHdoZW4gYSBnbG9iIGZhaWxzIHRvIG1hdGNoIGFueSBmaWxlcy4iCisg ICh3aXRoLWZha2UtZmlsZXMgJygiZm9vLmVsIiAiYmFyLmVsIikKKyAgICAoc2hvdWxkIChl cXVhbCAoZXNoZWxsLWV4dGVuZGVkLWdsb2IgIioudHh0IikKKyAgICAgICAgICAgICAgICAg ICAiKi50eHQiKSkKKyAgICAobGV0ICgoZXNoZWxsLWVycm9yLWlmLW5vLWdsb2IgdCkpCisg ICAgICAoc2hvdWxkLWVycm9yIChlc2hlbGwtZXh0ZW5kZWQtZ2xvYiAiKi50eHQiKSkpKSkK KworOzsgZW0tZ2xvYi10ZXN0cy5lbCBlbmRzIGhlcmUKLS0gCjIuMjUuMQoK --------------F7EB05345DF97E50F8E62DEA Content-Type: text/plain; charset=UTF-8; name="0002-Add-unit-tests-and-documentation-for-Eshell-predicat.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0002-Add-unit-tests-and-documentation-for-Eshell-predicat.pa"; filename*1="tch" RnJvbSAwMmM3MTJhZWQ1MTFkMjJkMjI0NDJjNGIzNWZhODZlMjQ3Njk3NTRhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFNhdCwgMTkgTWFyIDIwMjIgMTI6NDE6MTMgLTA3MDAKU3ViamVjdDogW1BB VENIIDIvM10gQWRkIHVuaXQgdGVzdHMgYW5kIGRvY3VtZW50YXRpb24gZm9yIEVzaGVsbAog cHJlZGljYXRlcy9tb2RpZmllcnMKCiogbGlzcC9lc2hlbGwvZXNoLWNtZC5lbCAoZXNoZWxs LWV2YWwtYXJndW1lbnQpOiBOZXcgZnVuY3Rpb24uCgoqIGxpc3AvZXNoZWxsL2VzaC11dGls LmVsIChlc2hlbGwtZmlsZS1hdHRyaWJ1dGVzKTogUGFzcyBvcmlnaW5hbAp2YWx1ZSBvZiBG SUxFIHRvICdmaWxlLWF0dHJpYnV0ZXMnLgoKKiBsaXNwL2VzaGVsbC9lbS1wcmVkLmVsIChl c2hlbGwtcHJlZGljYXRlLWFsaXN0KTogQ2hhbmdlIHNvY2tldCBjaGFyCnRvICc9Jywgc2lu Y2UgJ3MnIGNvbmZsaWN0cyB3aXRoIHNldHVpZC4KKGVzaGVsbC1tb2RpZmllci1hbGlzdCk6 IEZpeCAnRScgKGV2YWwpIG1vZGlmaWVyIGJ5IHVzaW5nCidlc2hlbGwtZXZhbC1hcmd1bWVu dCcuICBBbHNvIGltcHJvdmUgcGVyZm9ybWFuY2Ugb2YgJ08nIChyZXZlcnNlZApzb3J0KSBt b2RpZmllci4KKGVzaGVsbC1tb2RpZmllci1oZWxwLXN0cmluZyk6IEZpeCBkb2N1bWVudGF0 aW9uIG9mIGdsb2JhbApzdWJzdGl0dXRpb24gbW9kaWZpZXIuCihlc2hlbGwtcHJlZC1zdWJz dGl0dXRlKTogRml4IGluZmluaXRlIGxvb3AgaW4gc29tZSBnbG9iYWwKc3Vic3RpdHV0aW9u cy4KKGVzaGVsbC1qb2luLW1lbWJlcnMpOiBGaXggam9pbmluZyB3aXRoIGltcGxpY2l0ICIg IiBkZWxpbWl0ZXIuCgoqIHRlc3QvbGlzcC9lc2hlbGwvZW0tcHJlZC10ZXN0cy5lbDogTmV3 IGZpbGUuCgoqIGRvYy9taXNjL2VzaGVsbC50ZXhpIChBcmd1bWVudCBQcmVkaWNhdGlvbik6 IE5ldyBzZWN0aW9uLgotLS0KIGRvYy9taXNjL2VzaGVsbC50ZXhpICAgICAgICAgICAgICB8 IDI0MCArKysrKysrKysrKysrKwogbGlzcC9lc2hlbGwvZW0tcHJlZC5lbCAgICAgICAgICAg IHwgIDM1ICstCiBsaXNwL2VzaGVsbC9lc2gtY21kLmVsICAgICAgICAgICAgfCAgIDggKwog bGlzcC9lc2hlbGwvZXNoLXV0aWwuZWwgICAgICAgICAgIHwgICA4ICstCiB0ZXN0L2xpc3Av ZXNoZWxsL2VtLXByZWQtdGVzdHMuZWwgfCA1MjEgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrCiA1IGZpbGVzIGNoYW5nZWQsIDc4NiBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlv bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCB0ZXN0L2xpc3AvZXNoZWxsL2VtLXByZWQtdGVz dHMuZWwKCmRpZmYgLS1naXQgYS9kb2MvbWlzYy9lc2hlbGwudGV4aSBiL2RvYy9taXNjL2Vz aGVsbC50ZXhpCmluZGV4IDY0ODkxN2Y2MmQuLjJkNTdlNDhlZDggMTAwNjQ0Ci0tLSBhL2Rv Yy9taXNjL2VzaGVsbC50ZXhpCisrKyBiL2RvYy9taXNjL2VzaGVsbC50ZXhpCkBAIC0xMDAy LDYgKzEwMDIsNyBAQCBFeHBhbnNpb24KIEBtZW51CiAqIERvbGxhcnMgRXhwYW5zaW9uOjoK ICogR2xvYmJpbmc6OgorKiBBcmd1bWVudCBQcmVkaWNhdGlvbiBhbmQgTW9kaWZpY2F0aW9u OjoKIEBlbmQgbWVudQogCiBAbm9kZSBEb2xsYXJzIEV4cGFuc2lvbgpAQCAtMTE3NSw2ICsx MTc2LDI0NSBAQCBHbG9iYmluZwogCiBAZW5kIHRhYmxlCiAKK0Bub2RlIEFyZ3VtZW50IFBy ZWRpY2F0aW9uIGFuZCBNb2RpZmljYXRpb24KK0BzZWN0aW9uIEFyZ3VtZW50IFByZWRpY2F0 aW9uIGFuZCBNb2RpZmljYXRpb24KK0BjaW5kZXggYXJndW1lbnQgcHJlZGljYXRpb24KK0Bj aW5kZXggYXJndW1lbnQgbW9kaWZpY2F0aW9uCitFc2hlbGwgc3VwcG9ydHMgQGRmbnthcmd1 bWVudCBwcmVkaWNhdGlvbn0sIHRvIGZpbHRlciBlbGVtZW50cyBvZiBhCitnbG9iLCBhbmQg QGRmbnthcmd1bWVudCBtb2RpZmljYXRpb259LCB0byBtYW5pcHVsYXRlIGFyZ3VtZW50IHZh bHVlcy4KK1RoZXNlIGFyZSBzaW1pbGFyIHRvIGdsb2IgcXVhbGlmaWVycyBpbiBac2ggKEBw eHJlZntHbG9iIFF1YWxpZmllcnMsICwKKywgenNoLCBUaGUgWiBTaGVsbCBNYW51YWx9KS4K KworUHJlZGljYXRlcyBhbmQgbW9kaWZpZXJzIGFyZSBpbnRyb2R1Y2VkIHdpdGggQHNhbXB7 KEB2YXJ7ZmlsdGVyc30pfQorYWZ0ZXIgYW55IGxpc3QgYXJndW1lbnQsIHdoZXJlIEB2YXJ7 ZmlsdGVyc30gaXMgYSBsaXN0IG9mIHByZWRpY2F0ZXMKK29yIG1vZGlmaWVycy4gIEZvciBl eGFtcGxlLCBAc2FtcHsqKC4pfSBleHBhbmRzIHRvIGFsbCByZWd1bGFyIGZpbGVzCitpbiB0 aGUgY3VycmVudCBkaXJlY3RvcnkgYW5kIEBzYW1weyooXkBAOlVedTApfSBleHBhbmRzIHRv IGFsbAorbm9uLXN5bWxpbmtzIG5vdCBvd25lZCBieSBAY29kZXtyb290fSwgdXBwZXItY2Fz ZWQuCisKK1lvdSBjYW4gY3VzdG9taXplIHRoZSBzeW50YXggYW5kIGJlaGF2aW9yIG9mIHBy ZWRpY2F0ZXMgYW5kIG1vZGlmaWVycworaW4gRXNoZWxsIHZpYSB0aGUgQ3VzdG9taXplIGdy b3VwIGBgZXNoZWxsLXByZWQnJyAoQHB4cmVme0Vhc3kKK0N1c3RvbWl6YXRpb24sICwgLCBl bWFjcywgVGhlIEdOVSBFbWFjcyBNYW51YWx9KS4KKworQG1lbnUKKyogQXJndW1lbnQgUHJl ZGljYXRlczo6CisqIEFyZ3VtZW50IE1vZGlmaWVyczo6CitAZW5kIG1lbnUKKworQG5vZGUg QXJndW1lbnQgUHJlZGljYXRlcworQHN1YnNlY3Rpb24gQXJndW1lbnQgUHJlZGljYXRlcwor WW91IGNhbiB1c2UgYXJndW1lbnQgcHJlZGljYXRlcyB0byBmaWx0ZXIgbGlzdHMgb2YgZmls ZSBuYW1lcyBiYXNlZCBvbgordmFyaW91cyBwcm9wZXJ0aWVzIG9mIHRob3NlIGZpbGVzLiAg VGhpcyBpcyBtb3N0IHVzZWZ1bCB3aGVuIGNvbWJpbmVkCit3aXRoIGdsb2JiaW5nLCBidXQg Y2FuIGJlIHVzZWQgb24gYW55IGxpc3Qgb2YgZmlsZXMgbmFtZXMuICBFc2hlbGwKK3N1cHBv cnRzIHRoZSBmb2xsb3dpbmcgYXJndW1lbnQgcHJlZGljYXRlczoKKworQHRhYmxlIEBhc2lz CisKK0BpdGVtIEBzYW1wey99CitNYXRjaGVzIGRpcmVjdG9yaWVzLgorCitAaXRlbSBAc2Ft cHsufSBAcnsoUGVyaW9kKX0KK01hdGNoZXMgcmVndWxhciBmaWxlcy4KKworQGl0ZW0gQHNh bXB7QEB9CitNYXRjaGVzIHN5bWJvbGljIGxpbmtzLgorCitAaXRlbSBAc2FtcHs9fQorTWF0 Y2hlcyBzb2NrZXRzLgorCitAaXRlbSBAc2FtcHtwfQorTWF0Y2hlcyBuYW1lZCBwaXBlcy4K KworQGl0ZW0gQHNhbXB7JX0KK01hdGNoZXMgYmxvY2sgb3IgY2hhcmFjdGVyIGRldmljZXMu CisKK0BpdGVtIEBzYW1weyVifQorTWF0Y2hlcyBibG9jayBkZXZpY2VzLgorCitAaXRlbSBA c2FtcHslY30KK01hdGNoZXMgY2hhcmFjdGVyIGRldmljZXMuCisKK0BpdGVtIEBzYW1weyp9 CitNYXRjaGVzIHJlZ3VsYXIgZmlsZXMgdGhhdCBjYW4gYmUgZXhlY3V0ZWQgYnkgdGhlIGN1 cnJlbnQgdXNlci4KKworQGl0ZW0gQHNhbXB7cn0KK0BpdGVtIEBzYW1we0F9CitAaXRlbSBA c2FtcHtSfQorTWF0Y2hlcyBmaWxlcyB0aGF0IGFyZSByZWFkYWJsZSBieSB0aGVpciBvd25l cnMgKEBzYW1we3J9KSwgdGhlaXIKK2dyb3VwcyAoQHNhbXB7QX0pLCBvciB0aGUgd29ybGQg KEBzYW1we1J9KS4KKworQGl0ZW0gQHNhbXB7d30KK0BpdGVtIEBzYW1we0l9CitAaXRlbSBA c2FtcHtXfQorTWF0Y2hlcyBmaWxlcyB0aGF0IGFyZSB3cml0YWJsZSBieSB0aGVpciBvd25l cnMgKEBzYW1we3d9KSwgdGhlaXIKK2dyb3VwcyAoQHNhbXB7SX0pLCBvciB0aGUgd29ybGQg KEBzYW1we1d9KS4KKworQGl0ZW0gQHNhbXB7eH0KK0BpdGVtIEBzYW1we0V9CitAaXRlbSBA c2FtcHtYfQorTWF0Y2hlcyBmaWxlcyB0aGF0IGFyZSBleGVjdXRhYmxlIGJ5IHRoZWlyIG93 bmVycyAoQHNhbXB7eH0pLCB0aGVpcgorZ3JvdXBzIChAc2FtcHtFfSksIG9yIHRoZSB3b3Js ZCAoQHNhbXB7WH0pLgorCitAaXRlbSBAc2FtcHtzfQorTWF0Y2hlcyBmaWxlcyB3aXRoIHRo ZSBzZXR1aWQgZmxhZyBzZXQuCisKK0BpdGVtIEBzYW1we1N9CitNYXRjaGVzIGZpbGVzIHdp dGggdGhlIHNldGdpZCBmbGFnIHNldC4KKworQGl0ZW0gQHNhbXB7dH0KK01hdGNoZXMgZmls ZXMgd2l0aCB0aGUgc3RpY2t5IGJpdCBzZXQuCisKK0BpdGVtIEBzYW1we1V9CitNYXRjaGVz IGZpbGVzIG93bmVkIGJ5IHRoZSBjdXJyZW50IGVmZmVjdGl2ZSB1c2VyIElELgorCitAaXRl bSBAc2FtcHtsQG9wdGlvbntbKy1dfUB2YXJ7bn19CitNYXRjaGVzIGZpbGVzIHdpdGggQHZh cntufSBsaW5rcy4gIFdpdGggQG9wdGlvbnsrfSAob3IgQG9wdGlvbnstfSksCittYXRjaGVz IGZpbGVzIHdpdGggbW9yZSB0aGFuIChvciBsZXNzIHRoYW4pIEB2YXJ7bn0gbGlua3MsCity ZXNwZWN0aXZlbHkuCisKK0BpdGVtIEBzYW1we3VAdmFye3VpZH19CitAaXRlbSBAc2FtcHt1 J0B2YXJ7dXNlci1uYW1lfSd9CitNYXRjaGVzIGZpbGVzIG93bmVkIGJ5IHVzZXIgSUQgQHZh cnt1aWR9IG9yIHVzZXIgbmFtZSBAdmFye3VzZXItbmFtZX0uCisKK0BpdGVtIEBzYW1we2dA dmFye2dpZH19CitAaXRlbSBAc2FtcHtnJ0B2YXJ7Z3JvdXAtbmFtZX0nfQorTWF0Y2hlcyBm aWxlcyBvd25lZCBieSBncm91cCBJRCBAdmFye2dpZH0gb3IgZ3JvdXAgbmFtZQorQHZhcntn cm91cC1uYW1lfS4KKworQGl0ZW0gQHNhbXB7YUBvcHRpb257W0B2YXJ7dW5pdH1dfUBvcHRp b257WystXX1AdmFye259fQorQGl0ZW0gQHNhbXB7YUBvcHRpb257WystXX0nQHZhcntmaWxl fSd9CitNYXRjaGVzIGZpbGVzIGxhc3QgYWNjZXNzZWQgZXhhY3RseSBAdmFye259IGRheXMg YWdvLiAgV2l0aCBAb3B0aW9ueyt9Cisob3IgQG9wdGlvbnstfSksIG1hdGNoZXMgZmlsZXMg YWNjZXNzZWQgbW9yZSB0aGFuIChvciBsZXNzIHRoYW4pCitAdmFye259IGRheXMgYWdvLCBy ZXNwZWN0aXZlbHkuCisKK1dpdGggQHZhcnt1bml0fSwgQHZhcntufSBpcyBhIHF1YW50aXR5 IGluIHRoYXQgdW5pdCBvZiB0aW1lLCBzbworQHNhbXB7YXctMX0gbWF0Y2hlcyBmaWxlcyBs YXN0IGFjY2Vzc2VkIHdpdGhpbiBvbmUgd2Vlay4gIEB2YXJ7dW5pdH0KK2NhbiBiZSBAc2Ft cHtNfSAoMzAtZGF5IG1vbnRocyksIEBzYW1we3d9ICh3ZWVrcyksIEBzYW1we2h9IChob3Vy cyksCitAc2FtcHttfSAobWludXRlcyksIG9yIEBzYW1we3N9IChzZWNvbmRzKS4KKworSWYg QHZhcntmaWxlfSBpcyBzcGVjaWZpZWQgaW5zdGVhZCwgY29tcGFyZSBhZ2FpbnN0IHRoZSBt b2RpZmljYXRpb24KK3RpbWUgb2YgQGZpbGV7ZmlsZX0uICBUaHVzLCBAc2FtcHthLSdoZWxs by50eHQnfSBtYXRjaGVzIGFsbCBmaWxlcworYWNjZXNzZWQgYWZ0ZXIgQGZpbGV7aGVsbG8u dHh0fSB3YXMgbGFzdCBhY2Nlc3NlZC4KKworQGl0ZW0gQHNhbXB7bUBvcHRpb257W0B2YXJ7 dW5pdH1dfUBvcHRpb257WystXX1AdmFye259fQorQGl0ZW0gQHNhbXB7bUBvcHRpb257Wyst XX0nQHZhcntmaWxlfSd9CitMaWtlIEBzYW1we2F9LCBidXQgZXhhbWluZXMgbW9kaWZpY2F0 aW9uIHRpbWUuCisKK0BpdGVtIEBzYW1we2NAb3B0aW9ue1tAdmFye3VuaXR9XX1Ab3B0aW9u e1srLV19QHZhcntufX0KK0BpdGVtIEBzYW1we2NAb3B0aW9ue1srLV19J0B2YXJ7ZmlsZX0n fQorTGlrZSBAc2FtcHthfSwgYnV0IGV4YW1pbmVzIHN0YXR1cyBjaGFuZ2UgdGltZS4KKwor QGl0ZW0gQHNhbXB7TEBvcHRpb257W0B2YXJ7dW5pdH1dfUBvcHRpb257WystXX1AdmFye259 fQorTWF0Y2hlcyBmaWxlcyBleGFjdGx5IEB2YXJ7bn0gYnl0ZXMgaW4gc2l6ZS4gIFdpdGgg QG9wdGlvbnsrfSAob3IKK0BvcHRpb257LX0pLCBtYXRjaGVzIGZpbGVzIGxhcmdlciB0aGFu IChvciBzbWFsbGVyIHRoYW4pIEB2YXJ7bn0KK2J5dGVzLCByZXNwZWN0aXZlbHkuCisKK1dp dGggQHZhcnt1bml0fSwgQHZhcntufSBpcyBhIHF1YW50aXR5IGluIHRoYXQgdW5pdCBvZiBz aXplLCBzbworQHNhbXB7TG0rNX0gbWF0Y2hlcyBmaWxlcyBsYXJnZXIgdGhhbiA1IE1pQiBp biBzaXplLiAgQHZhcnt1bml0fSBjYW4KK2JlIG9uZSBvZiB0aGUgZm9sbG93aW5nIChjYXNl LWluc2Vuc2l0aXZlKSBjaGFyYWN0ZXJzOiBAc2FtcHttfQorKG1lZ2FieXRlcyksIEBzYW1w e2t9IChraWxvYnl0ZXMpLCBvciBAc2FtcHtwfSAoNTEyLWJ5dGUgYmxvY2tzKS4KKworQGVu ZCB0YWJsZQorCitUaGUgQHNhbXB7Xn0gYW5kIEBzYW1wey19IG9wZXJhdG9ycyBhcmUgbm90 IGFyZ3VtZW50IHByZWRpY2F0ZXMKK3RoZW1zZWx2ZXMsIGJ1dCB0aGV5IG1vZGlmeSB0aGUg YmVoYXZpb3Igb2YgYWxsIHN1YnNlcXVlbnQgcHJlZGljYXRlcy4KK0BzYW1we159IGludmVy dHMgdGhlIG1lYW5pbmcgb2Ygc3Vic2VxdWVudCBwcmVkaWNhdGVzLCBzbworQHNhbXB7Kihe UldYKX0gZXhwYW5kcyB0byBhbGwgZmlsZXMgd2hvc2UgcGVybWlzc2lvbnMgZGlzYWxsb3cg dGhlCit3b3JsZCBmcm9tIGFjY2Vzc2luZyB0aGVtIGluIGFueSB3YXkgKGkuZS4sIHJlYWRp bmcsIHdyaXRpbmcgdG8sIG9yCittb2RpZnlpbmcgdGhlbSkuICBXaGVuIGV4YW1pbmluZyBh IHN5bWJvbGljIGxpbmssIEBzYW1wey19IGFwcGxpZXMgdGhlCitzdWJzZXF1ZW50IHByZWRp Y2F0ZXMgdG8gdGhlIGxpbmsncyB0YXJnZXQgaW5zdGVhZCBvZiB0aGUgbGluayBpdHNlbGYu CisKK0Bub2RlIEFyZ3VtZW50IE1vZGlmaWVycworQHN1YnNlY3Rpb24gQXJndW1lbnQgTW9k aWZpZXJzCitZb3UgY2FuIHVzZSBhcmd1bWVudCBtb2RpZmllcnMgdG8gbWFuaXB1bGF0ZSBh cmd1bWVudCB2YWx1ZXMuICBGb3IKK2V4YW1wbGUsIHlvdSBjYW4gc29ydCBsaXN0cywgcmVt b3ZlIGR1cGxpY2F0ZSB2YWx1ZXMsIGNhcGl0YWxpemUKK3dvcmRzLCBldGMuICBBbGwgYXJn dW1lbnQgbW9kaWZpZXJzIGFyZSBwcmVmaXhlZCBieSBAc2FtcHs6fSwgc28KK0BzYW1weyRl eGVjLXBhdGgoOmg6dTp4L15cL2hvbWUvKX0gbGlzdHMgYWxsIG9mIHRoZSB1bmlxdWUgcGFy ZW50CitkaXJlY3RvcmllcyBvZiB0aGUgZWxlbWVudHMgaW4gQGNvZGV7ZXhlYy1wYXRofSwg ZXhjbHVkaW5nIHRob3NlIGluCitAZmlsZXsvaG9tZX0uCisKK0B0YWJsZSBAc2FtcAorCitA aXRlbSBFCitSZS1ldmFsdWF0ZXMgdGhlIHZhbHVlIGFzIGFuIEVzaGVsbCBhcmd1bWVudC4g IEZvciBleGFtcGxlLCBpZgorQHZhcntmb299IGlzIEBjb2RleyIkQHtlY2hvIGhpQH0ifSwg dGhlbiB0aGUgcmVzdWx0IG9mIEBzYW1weyRmb28oOkUpfQoraXMgQGNvZGV7aGl9LgorCitA aXRlbSBMCitDb252ZXJ0cyB0aGUgdmFsdWUgdG8gbG93ZXIgY2FzZS4KKworQGl0ZW0gVQor Q29udmVydHMgdGhlIHZhbHVlIHRvIHVwcGVyIGNhc2UuCisKK0BpdGVtIEMKK0NhcGl0YWxp emVzIHRoZSB2YWx1ZS4KKworQGl0ZW0gaAorVHJlYXRpbmcgdGhlIHZhbHVlIGFzIGEgZmls ZSBuYW1lLCBnZXRzIHRoZSBkaXJlY3RvcnkgbmFtZSAodGhlCitgYGhlYWQnJykuICBGb3Ig ZXhhbXBsZSwgQHNhbXB7Zm9vL2Jhci9iYXouZWwoOmgpfSBleHBhbmRzIHRvCitAc2FtcHtm b28vYmFyL30uCisKK0BpdGVtIHQKK1RyZWF0aW5nIHRoZSB2YWx1ZSBhcyBhIGZpbGUgbmFt ZSwgZ2V0cyB0aGUgYmFzZSBuYW1lICh0aGUgYGB0YWlsJycpLgorRm9yIGV4YW1wbGUsIEBz YW1we2Zvby9iYXIvYmF6LmVsKDpoKX0gZXhwYW5kcyB0byBAc2FtcHtiYXouZWx9LgorCitA aXRlbSBlCitUcmVhdGluZyB0aGUgdmFsdWUgYXMgYSBmaWxlIG5hbWUsIGdldHMgdGhlIGZp bmFsIGV4dGVuc2lvbiBvZiB0aGUKK2ZpbGUsIGV4Y2x1ZGluZyB0aGUgZG90LiAgRm9yIGV4 YW1wbGUsIEBzYW1we2Zvby50YXIuZ3ooOmUpfQorZXhwYW5kcyB0byBAY29kZXtnen0uCisK K0BpdGVtIHIKK1RyZWF0aW5nIHRoZSB2YWx1ZSBhcyBhIGZpbGUgbmFtZSwgZ2V0cyB0aGUg ZmlsZSBuYW1lIGV4Y2x1ZGluZyB0aGUKK2ZpbmFsIGV4dGVuc2lvbi4gIEZvciBleGFtcGxl LCBAc2FtcHtmb28vYmFyL2Jhei50YXIuZ3ooOnIpfSBleHBhbmRzCit0byBAc2FtcHtmb28v YmFyL2Jhei50YXJ9LgorCitAaXRlbSBxCitNYXJrcyB0aGF0IHRoZSB2YWx1ZSBzaG91bGQg YmUgaW50ZXJwcmV0ZWQgYnkgRXNoZWxsIGxpdGVyYWxseSwgc28KK3RoYXQgYW55IHNwZWNp YWwgY2hhcmFjdGVycyBsaWtlIEBzYW1weyR9IG5vIGxvbmdlciBoYXZlIGFueSBzcGVjaWFs CittZWFuaW5nLgorCitAaXRlbSBzL0B2YXJ7cGF0dGVybn0vQHZhcntyZXBsYWNlfS8KK1Jl cGxhY2VzIHRoZSBmaXJzdCBpbnN0YW5jZSBvZiB0aGUgcmVndWxhciBleHByZXNzaW9uIEB2 YXJ7cGF0dGVybn0KK3dpdGggQHZhcntyZXBsYWNlfS4gIFNpZ25hbHMgYW4gZXJyb3IgaWYg bm8gbWF0Y2ggaXMgZm91bmQuCisKK0BpdGVtIGdzL0B2YXJ7cGF0dGVybn0vQHZhcntyZXBs YWNlfS8KK1JlcGxhY2VzIGFsbCBpbnN0YW5jZXMgb2YgdGhlIHJlZ3VsYXIgZXhwcmVzc2lv biBAdmFye3BhdHRlcm59IHdpdGgKK0B2YXJ7cmVwbGFjZX0uCisKK0BpdGVtIGkvQHZhcntw YXR0ZXJufS8KK0ZpbHRlcnMgYSBsaXN0IG9mIHZhbHVlcyB0byBpbmNsdWRlIG9ubHkgdGhl IGVsZW1lbnRzIG1hdGNoaW5nIHRoZQorcmVndWxhciBleHByZXNzaW9uIEB2YXJ7cGF0dGVy bn0uCisKK0BpdGVtIHgvQHZhcntwYXR0ZXJufS8KK0ZpbHRlcnMgYSBsaXN0IG9mIHZhbHVl cyB0byBleGNsdWRlIGFsbCB0aGUgZWxlbWVudHMgbWF0Y2hpbmcgdGhlCityZWd1bGFyIGV4 cHJlc3Npb24gQHZhcntwYXR0ZXJufS4KKworQGl0ZW0gUworQGl0ZW0gUy9AdmFye3BhdHRl cm59LworU3BsaXRzIHRoZSB2YWx1ZSB1c2luZyB0aGUgcmVndWxhciBleHByZXNzaW9uIEB2 YXJ7cGF0dGVybn0gYXMgYQorZGVsaW1pdGVyLiAgSWYgQHZhcntwYXR0ZXJufSBpcyBvbWl0 dGVkLCBzcGxpdCBvbiBzcGFjZXMuCisKK0BpdGVtIGoKK0BpdGVtIGovQHZhcntkZWxpbX0v CitKb2lucyBhIGxpc3Qgb2YgdmFsdWVzLCBpbnNlcnRpbmcgdGhlIHN0cmluZyBAdmFye2Rl bGltfSBiZXR3ZWVuIGVhY2gKK3ZhbHVlLiAgSWYgQHZhcntkZWxpbX0gaXMgb21pdHRlZCwg dXNlIGEgc2luZ2xlIHNwYWNlIGFzIHRoZQorZGVsaW1pdGVyLgorCitAaXRlbSBvCitTb3J0 cyBhIGxpc3Qgb2Ygc3RyaW5ncyBpbiBhc2NlbmRpbmcgbGV4aWNvZ3JhcGhpYyBvcmRlciwg Y29tcGFyaW5nCitwYWlycyBvZiBjaGFyYWN0ZXJzIGFjY29yZGluZyB0byB0aGVpciBjaGFy YWN0ZXIgY29kZXMgKEBweHJlZntUZXh0CitDb21wYXJpc29uLCAsICwgZWxpc3AsIFRoZSBF bWFjcyBMaXNwIFJlZmVyZW5jZSBNYW51YWx9KS4KKworQGl0ZW0gTworU29ydHMgYSBsaXN0 IG9mIHN0cmluZ3MgaW4gZGVzY2VuZGluZyBsZXhpY29ncmFwaGljIG9yZGVyLgorCitAaXRl bSB1CitSZW1vdmVzIGFueSBkdXBsaWNhdGUgZWxlbWVudHMgZnJvbSBhIGxpc3Qgb2YgdmFs dWVzLgorCitAaXRlbSBSCitSZXZlcnNlcyB0aGUgb3JkZXIgb2YgYSBsaXN0IG9mIHZhbHVl cy4KKworQGVuZCB0YWJsZQorCiBAbm9kZSBJbnB1dC9PdXRwdXQKIEBjaGFwdGVyIElucHV0 L091dHB1dAogU2luY2UgRXNoZWxsIGRvZXMgbm90IGNvbW11bmljYXRlIHdpdGggYSB0ZXJt aW5hbCBsaWtlIG1vc3QgY29tbWFuZApkaWZmIC0tZ2l0IGEvbGlzcC9lc2hlbGwvZW0tcHJl ZC5lbCBiL2xpc3AvZXNoZWxsL2VtLXByZWQuZWwKaW5kZXggOTcwMzI5ZTEyYS4uOGFmYzg2 ZGQ0MSAxMDA2NDQKLS0tIGEvbGlzcC9lc2hlbGwvZW0tcHJlZC5lbAorKysgYi9saXNwL2Vz aGVsbC9lbS1wcmVkLmVsCkBAIC02OCw3ICs2OCw3IEBAIGVzaGVsbC1wcmVkLWxvYWQtaG9v awogKGRlZmN1c3RvbSBlc2hlbGwtcHJlZGljYXRlLWFsaXN0CiAgICcoKD8vIC4gKGVzaGVs bC1wcmVkLWZpbGUtdHlwZSA/ZCkpICAgOyBkaXJlY3RvcmllcwogICAgICg/LiAuIChlc2hl bGwtcHJlZC1maWxlLXR5cGUgPy0pKSAgIDsgcmVndWxhciBmaWxlcwotICAgICg/cyAuIChl c2hlbGwtcHJlZC1maWxlLXR5cGUgP3MpKSAgIDsgc29ja2V0cworICAgICg/PSAuIChlc2hl bGwtcHJlZC1maWxlLXR5cGUgP3MpKSAgIDsgc29ja2V0cwogICAgICg/cCAuIChlc2hlbGwt cHJlZC1maWxlLXR5cGUgP3ApKSAgIDsgbmFtZWQgcGlwZXMKICAgICAoP0AgLiAoZXNoZWxs LXByZWQtZmlsZS10eXBlID9sKSkgICA7IHN5bWJvbGljIGxpbmtzCiAgICAgKD8lIC4gKGVz aGVsbC1wcmVkLWZpbGUtdHlwZSA/JSkpICAgOyBhbGxvdyB1c2VyIHRvIHNwZWNpZnkgKGMg ZGVmLikKQEAgLTk3LDggKzk3LDggQEAgZXNoZWxsLXByZWRpY2F0ZS1hbGlzdAogICAgICAg ICAgICAgICAgICAobm90IChmaWxlLXN5bWxpbmstcCBmaWxlKSkKICAgICAgICAgICAgICAg ICAgKGZpbGUtZXhlY3V0YWJsZS1wIGZpbGUpKSkpCiAgICAgKD9sIC4gKGVzaGVsbC1wcmVk LWZpbGUtbGlua3MpKQotICAgICg/dSAuIChlc2hlbGwtcHJlZC11c2VyLW9yLWdyb3VwID91 ICJ1c2VyIiAyICdlc2hlbGwtdXNlci1pZCkpCi0gICAgKD9nIC4gKGVzaGVsbC1wcmVkLXVz ZXItb3ItZ3JvdXAgP2cgImdyb3VwIiAzICdlc2hlbGwtZ3JvdXAtaWQpKQorICAgICg/dSAu IChlc2hlbGwtcHJlZC11c2VyLW9yLWdyb3VwID91ICJ1c2VyIiAyICMnZXNoZWxsLXVzZXIt aWQpKQorICAgICg/ZyAuIChlc2hlbGwtcHJlZC11c2VyLW9yLWdyb3VwID9nICJncm91cCIg MyAjJ2VzaGVsbC1ncm91cC1pZCkpCiAgICAgKD9hIC4gKGVzaGVsbC1wcmVkLWZpbGUtdGlt ZSA/YSAiYWNjZXNzIiA0KSkKICAgICAoP20gLiAoZXNoZWxsLXByZWQtZmlsZS10aW1lID9t ICJtb2RpZmljYXRpb24iIDUpKQogICAgICg/YyAuIChlc2hlbGwtcHJlZC1maWxlLXRpbWUg P2MgImNoYW5nZSIgNikpCkBAIC0xMTEsMTIgKzExMSw3IEBAIGVzaGVsbC1wcmVkaWNhdGUt YWxpc3QKICAgOnJpc2t5IHQpCiAKIChkZWZjdXN0b20gZXNoZWxsLW1vZGlmaWVyLWFsaXN0 Ci0gICcoKD9FIC4gKGxhbWJkYSAobHN0KQotICAgICAgICAgICAgKG1hcGNhcgotICAgICAg ICAgICAgIChsYW1iZGEgKHN0cikKLSAgICAgICAgICAgICAgIChlc2hlbGwtc3RyaW5naWZ5 Ci0gICAgICAgICAgICAgICAgKGNhciAoZXNoZWxsLXBhcnNlLWFyZ3VtZW50IHN0cikpKSkK LSAgICAgICAgICAgICBsc3QpKSkKKyAgJygoP0UgLiAobGFtYmRhIChsc3QpIChtYXBjYXIg Iydlc2hlbGwtZXZhbC1hcmd1bWVudCBsc3QpKSkKICAgICAoP0wgLiAobGFtYmRhIChsc3Qp IChtYXBjYXIgIydkb3duY2FzZSBsc3QpKSkKICAgICAoP1UgLiAobGFtYmRhIChsc3QpICht YXBjYXIgIyd1cGNhc2UgbHN0KSkpCiAgICAgKD9DIC4gKGxhbWJkYSAobHN0KSAobWFwY2Fy ICMnY2FwaXRhbGl6ZSBsc3QpKSkKQEAgLTEyOSwxMCArMTI0LDEwIEBAIGVzaGVsbC1tb2Rp Zmllci1hbGlzdAogICAgICg/cSAuIChsYW1iZGEgKGxzdCkgKG1hcGNhciAjJ2VzaGVsbC1l c2NhcGUtYXJnIGxzdCkpKQogICAgICg/dSAuIChsYW1iZGEgKGxzdCkgKHNlcS11bmlxIGxz dCkpKQogICAgICg/byAuIChsYW1iZGEgKGxzdCkgKHNvcnQgbHN0ICMnc3RyaW5nLWxlc3Nw KSkpCi0gICAgKD9PIC4gKGxhbWJkYSAobHN0KSAobnJldmVyc2UgKHNvcnQgbHN0ICMnc3Ry aW5nLWxlc3NwKSkpKQorICAgICg/TyAuIChsYW1iZGEgKGxzdCkgKHNvcnQgbHN0ICMnc3Ry aW5nLWdyZWF0ZXJwKSkpCiAgICAgKD9qIC4gKGVzaGVsbC1qb2luLW1lbWJlcnMpKQogICAg ICg/UyAuIChlc2hlbGwtc3BsaXQtbWVtYmVycykpCi0gICAgKD9SIC4gJ3JldmVyc2UpCisg ICAgKD9SIC4gIydyZXZlcnNlKQogICAgICg/ZyAuIChwcm9nbgogCSAgICAoZm9yd2FyZC1j aGFyKQogCSAgICAoaWYgKGVxIChjaGFyLWJlZm9yZSkgP3MpCkBAIC0xNDIsNyArMTM3LDcg QEAgZXNoZWxsLW1vZGlmaWVyLWFsaXN0CiAgICJBIGxpc3Qgb2YgbW9kaWZpZXJzIHRoYW4g Y2FuIGJlIGFwcGxpZWQgdG8gYW4gYXJndW1lbnQgZXhwYW5zaW9uLgogVGhlIGZvcm1hdCBv ZiBlYWNoIGVudHJ5IGlzCiAKLSAgKENIQVIgRU5UUllXSVNFLVAgTU9ESUZJRVItRlVOQy1T RVhQKSIKKyAgKENIQVIgLiBNT0RJRklFUi1GVU5DLVNFWFApIgogICA6dHlwZSAnKHJlcGVh dCAoY29ucyBjaGFyYWN0ZXIgc2V4cCkpCiAgIDpyaXNreSB0KQogCkBAIC0yMTcsOCArMjEy LDggQEAgZXNoZWxsLW1vZGlmaWVyLWhlbHAtc3RyaW5nCiAgIGkvUEFULyAgZXhjbHVkZSBh bGwgbWVtYmVycyBub3QgbWF0Y2hpbmcgUEFUCiAgIHgvUEFULyAgZXhjbHVkZSBhbGwgbWVt YmVycyBtYXRjaGluZyBQQVQKIAotICBzL3BhdC9tYXRjaC8gIHN1YnN0aXR1dGUgUEFUIHdp dGggTUFUQ0gKLSAgZy9wYXQvbWF0Y2gvICBzdWJzdGl0dXRlIFBBVCB3aXRoIE1BVENIIGZv ciBhbGwgb2NjdXJyZW5jZXMKKyAgcy9wYXQvbWF0Y2gvICAgc3Vic3RpdHV0ZSBQQVQgd2l0 aCBNQVRDSAorICBncy9wYXQvbWF0Y2gvICBzdWJzdGl0dXRlIFBBVCB3aXRoIE1BVENIIGZv ciBhbGwgb2NjdXJyZW5jZXMKIAogRVhBTVBMRVM6CiAgICouYyg6bykgIHNvcnRlZCBsaXN0 IG9mIC5jIGZpbGVzIikKQEAgLTUzNCwxOCArNTI5LDE0IEBAIGVzaGVsbC1wcmVkLXN1YnN0 aXR1dGUKIAkobGFtYmRhIChsc3QpCiAJICAobWFwY2FyCiAgICAgICAgICAgIChsYW1iZGEg KHN0cikKLSAgICAgICAgICAgICAobGV0ICgoaSAwKSkKLSAgICAgICAgICAgICAgICh3aGls ZSAoc2V0cSBpIChzdHJpbmctbWF0Y2ggbWF0Y2ggc3RyIGkpKQotICAgICAgICAgICAgICAg ICAoc2V0cSBzdHIgKHJlcGxhY2UtbWF0Y2ggcmVwbGFjZSB0IG5pbCBzdHIpKSkpCi0gICAg ICAgICAgICAgc3RyKQorICAgICAgICAgICAgIChyZXBsYWNlLXJlZ2V4cC1pbi1zdHJpbmcg bWF0Y2ggcmVwbGFjZSBzdHIgdCkpCiAgICAgICAgICAgIGxzdCkpCiAgICAgICAobGFtYmRh IChsc3QpCiAJKG1hcGNhcgogICAgICAgICAgKGxhbWJkYSAoc3RyKQogICAgICAgICAgICAo aWYgKHN0cmluZy1tYXRjaCBtYXRjaCBzdHIpCi0gICAgICAgICAgICAgICAoc2V0cSBzdHIg KHJlcGxhY2UtbWF0Y2ggcmVwbGFjZSB0IG5pbCBzdHIpKQotICAgICAgICAgICAgIChlcnJv ciAoY29uY2F0IHN0ciAiOiBzdWJzdGl0dXRpb24gZmFpbGVkIikpKQotICAgICAgICAgICBz dHIpCisgICAgICAgICAgICAgICAocmVwbGFjZS1tYXRjaCByZXBsYWNlIHQgbmlsIHN0cikK KyAgICAgICAgICAgICAoZXJyb3IgKGNvbmNhdCBzdHIgIjogc3Vic3RpdHV0aW9uIGZhaWxl ZCIpKSkpCiAgICAgICAgICBsc3QpKSkpKQogCiAoZGVmdW4gZXNoZWxsLWluY2x1ZGUtbWVt YmVycyAoJm9wdGlvbmFsIGludmVydC1wKQpAQCAtNTY4LDcgKzU1OSw3IEBAIGVzaGVsbC1q b2luLW1lbWJlcnMKICAgKGxldCAoKGRlbGltIChjaGFyLWFmdGVyKSkKIAlzdHIgZW5kKQog ICAgIChpZiAobm90IChtZW1xIGRlbGltICcoPycgPy8pKSkKLQkoc2V0cSBkZWxpbSAiICIp CisJKHNldHEgc3RyICIgIikKICAgICAgIChmb3J3YXJkLWNoYXIpCiAgICAgICAoc2V0cSBl bmQgKGVzaGVsbC1maW5kLWRlbGltaXRlciBkZWxpbSBkZWxpbSBuaWwgbmlsIHQpCiAJICAg IHN0ciAoYnVmZmVyLXN1YnN0cmluZy1uby1wcm9wZXJ0aWVzIChwb2ludCkgZW5kKSkKZGlm ZiAtLWdpdCBhL2xpc3AvZXNoZWxsL2VzaC1jbWQuZWwgYi9saXNwL2VzaGVsbC9lc2gtY21k LmVsCmluZGV4IDhiZTExMzZlMzEuLjQyNjE2ZTcwMzcgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNo ZWxsL2VzaC1jbWQuZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLWNtZC5lbApAQCAtMTAwMiw2 ICsxMDAyLDE0IEBAIGVzaGVsbC1pbnZva2UtZGlyZWN0bHkKICAgKGxldCAoKGJhc2UgKGNh ZHIgKG50aCAyIChudGggMiAoY2FkciBjb21tYW5kKSkpKSkpCiAgICAgKGVzaGVsbC0taW52 b2tlLWNvbW1hbmQtZGlyZWN0bHkgYmFzZSkpKQogCisoZGVmdW4gZXNoZWxsLWV2YWwtYXJn dW1lbnQgKGFyZ3VtZW50KQorICAiRXZhbHVhdGUgYSBzaW5nbGUgRXNoZWxsIEFSR1VNRU5U IGFuZCByZXR1cm4gdGhlIHJlc3VsdC4iCisgIChsZXQqICgoZm9ybSAoZXNoZWxsLXdpdGgt dGVtcC1jb21tYW5kIGFyZ3VtZW50CisgICAgICAgICAgICAgICAgIChlc2hlbGwtcGFyc2Ut YXJndW1lbnQpKSkKKyAgICAgICAgIChyZXN1bHQgKGVzaGVsbC1kby1ldmFsIGZvcm0gdCkp KQorICAgIChjbC1hc3NlcnQgKGVxIChjYXIgcmVzdWx0KSAncXVvdGUpKQorICAgIChjYWRy IHJlc3VsdCkpKQorCiAoZGVmdW4gZXNoZWxsLWV2YWwtY29tbWFuZCAoY29tbWFuZCAmb3B0 aW9uYWwgaW5wdXQpCiAgICJFdmFsdWF0ZSB0aGUgZ2l2ZW4gQ09NTUFORCBpdGVyYXRpdmVs eS4iCiAgIChpZiBlc2hlbGwtY3VycmVudC1jb21tYW5kCmRpZmYgLS1naXQgYS9saXNwL2Vz aGVsbC9lc2gtdXRpbC5lbCBiL2xpc3AvZXNoZWxsL2VzaC11dGlsLmVsCmluZGV4IDgwODlk NGQ3NGIuLjNkYTcxMmM3MTkgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VzaC11dGlsLmVs CisrKyBiL2xpc3AvZXNoZWxsL2VzaC11dGlsLmVsCkBAIC01OTIsMTEgKzU5MiwxMSBAQCBl c2hlbGwtZmlsZS1hdHRyaWJ1dGVzCiBUaGUgb3B0aW9uYWwgYXJndW1lbnQgSUQtRk9STUFU IHNwZWNpZmllcyB0aGUgcHJlZmVycmVkIHVpZCBhbmQKIGdpZCBmb3JtYXQuICBWYWxpZCB2 YWx1ZXMgYXJlIGBzdHJpbmcnIGFuZCBgaW50ZWdlcicsIGRlZmF1bHRpbmcgdG8KIGBpbnRl Z2VyJy4gIFNlZSBgZmlsZS1hdHRyaWJ1dGVzJy4iCi0gIChsZXQqICgoZmlsZSAoZXhwYW5k LWZpbGUtbmFtZSBmaWxlKSkKKyAgKGxldCogKChleHBhbmRlZC1maWxlIChleHBhbmQtZmls ZS1uYW1lIGZpbGUpKQogCSBlbnRyeSkKLSAgICAoaWYgKHN0cmluZy1lcXVhbCAoZmlsZS1y ZW1vdGUtcCBmaWxlICdtZXRob2QpICJmdHAiKQotCShsZXQgKChiYXNlIChmaWxlLW5hbWUt bm9uZGlyZWN0b3J5IGZpbGUpKQotCSAgICAgIChkaXIgKGZpbGUtbmFtZS1kaXJlY3Rvcnkg ZmlsZSkpKQorICAgIChpZiAoc3RyaW5nLWVxdWFsIChmaWxlLXJlbW90ZS1wIGV4cGFuZGVk LWZpbGUgJ21ldGhvZCkgImZ0cCIpCisJKGxldCAoKGJhc2UgKGZpbGUtbmFtZS1ub25kaXJl Y3RvcnkgZXhwYW5kZWQtZmlsZSkpCisJICAgICAgKGRpciAoZmlsZS1uYW1lLWRpcmVjdG9y eSBleHBhbmRlZC1maWxlKSkpCiAJICAoaWYgKHN0cmluZy1lcXVhbCAiIiBiYXNlKSAoc2V0 cSBiYXNlICIuIikpCiAJICAodW5sZXNzIGVudHJ5CiAJICAgIChzZXRxIGVudHJ5IChlc2hl bGwtcGFyc2UtYW5nZS1scyBkaXIpKQpkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL2VzaGVsbC9l bS1wcmVkLXRlc3RzLmVsIGIvdGVzdC9saXNwL2VzaGVsbC9lbS1wcmVkLXRlc3RzLmVsCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjc0ZGFkOWY4YjgKLS0tIC9k ZXYvbnVsbAorKysgYi90ZXN0L2xpc3AvZXNoZWxsL2VtLXByZWQtdGVzdHMuZWwKQEAgLTAs MCArMSw1MjEgQEAKKzs7OyBlbS1wcmVkLXRlc3RzLmVsIC0tLSBlbS1wcmVkIHRlc3Qgc3Vp dGUgIC0qLSBsZXhpY2FsLWJpbmRpbmc6dCAtKi0KKworOzsgQ29weXJpZ2h0IChDKSAyMDIy IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCis7OyBUaGlzIGZpbGUgaXMgcGFy dCBvZiBHTlUgRW1hY3MuCisKKzs7IEdOVSBFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cis7OyBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQor OzsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0 aGUgTGljZW5zZSwgb3IKKzs7IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CisKKzs7IEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAorOzsgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2 ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKzs7IE1FUkNIQU5UQUJJTElUWSBvciBGSVRO RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKzs7IEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKzs7IFlvdSBzaG91bGQgaGF2 ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCis7 OyBhbG9uZyB3aXRoIEdOVSBFbWFjcy4gIElmIG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUu b3JnL2xpY2Vuc2VzLz4uCisKKzs7OyBDb21tZW50YXJ5OgorCis7OyBUZXN0cyBmb3IgRXNo ZWxsJ3MgYXJndW1lbnQgcHJlZGljYXRlcy9tb2RpZmllcnMuCisKKzs7OyBDb2RlOgorCiso cmVxdWlyZSAnZXJ0KQorKHJlcXVpcmUgJ2VzaC1tb2RlKQorKHJlcXVpcmUgJ2VzaGVsbCkK KworKHJlcXVpcmUgJ2VzaGVsbC10ZXN0cy1oZWxwZXJzCisgICAgICAgICAoZXhwYW5kLWZp bGUtbmFtZSAiZXNoZWxsLXRlc3RzLWhlbHBlcnMiCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAoZmlsZS1uYW1lLWRpcmVjdG9yeSAob3IgbG9hZC1maWxlLW5hbWUKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0LWRp cmVjdG9yeSkpKSkKKworKGRlZnZhciBlc2hlbGwtdGVzdC12YWx1ZSBuaWwpCisKKyhkZWZ1 biBlc2hlbGwtZXZhbC1wcmVkaWNhdGUgKGluaXRpYWwtdmFsdWUgcHJlZGljYXRlKQorICAi RXZhbHVhdGUgUFJFRElDQVRFIG9uIElOSVRJQUwtVkFMVUUsIHJldHVybmluZyB0aGUgcmVz dWx0LgorUFJFRElDQVRFIGlzIGFuIEVzaGVsbCBhcmd1bWVudCBwcmVkaWNhdGUvbW9kaWZp ZXIuIgorICAobGV0ICgoZXNoZWxsLXRlc3QtdmFsdWUgaW5pdGlhbC12YWx1ZSkpCisgICAg KHdpdGgtdGVtcC1lc2hlbGwKKyAgICAgKGVzaGVsbC1pbnNlcnQtY29tbWFuZAorICAgICAg KGZvcm1hdCAic2V0cSBlc2hlbGwtdGVzdC12YWx1ZSAkZXNoZWxsLXRlc3QtdmFsdWUoJXMp IiBwcmVkaWNhdGUpKSkKKyAgICBlc2hlbGwtdGVzdC12YWx1ZSkpCisKKyhkZWZ1biBlc2hl bGwtcGFyc2UtZmlsZS1uYW1lLWF0dHJpYnV0ZXMgKGZpbGUpCisgICJQYXJzZSBhIGZha2Ug RklMRSBuYW1lIHRvIGRldGVybWluZSBpdHMgYXR0cmlidXRlcy4KK0Zha2UgZmlsZSBuYW1l cyBhcmUgZmlsZSBuYW1lcyBiZWdpbm5pbmcgd2l0aCBcIi9mYWtlL1wiLiAgVGhpcworYWxs b3dzIGRlZmluaW5nIGZpbGUgbmFtZXMgZm9yIGZha2UgZmlsZXMgd2l0aCB2YXJpb3VzIHBy b3BlcnRpZXMKK3RvIHF1ZXJ5IHZpYSBwcmVkaWNhdGVzLiAgQXR0cmlidXRlcyBhcmUgd3Jp dHRlbiBhcyBhCitjb21tYS1zZXBhcmF0ZSBsaXN0IG9mIEFUVFI9VkFMVUUgcGFpcnMgYXMg dGhlIGZpbGUncyBiYXNlIG5hbWUsCitsaWtlOgorCisgIC9mYWtlL3R5cGU9LSxtb2Rlcz0w NzU1LmVsCisKK1RoZSBmb2xsb3dpbmcgYXR0cmlidXRlcyBhcmUgcmVjb2duaXplZDoKKwor ICAqIFwidHlwZVwiOiBBIHNpbmdsZSBjaGFyYWN0ZXIgZGVzY3JpYmluZyB0aGUgZmlsZSB0 eXBlOworICAgIGFjY2VwdHMgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBmaXJzdCBjaGFyYWN0 ZXIgb2YgdGhlIGZpbGUKKyAgICBtb2RlcyBpbiBgbHMgLWwnLgorICAqIFwibW9kZXNcIjog VGhlIGZpbGUncyBwZXJtaXNzaW9uIG1vZGVzLCBpbiBvY3RhbC4KKyAgKiBcImxpbmtzXCI6 IFRoZSBudW1iZXIgb2YgbGlua3MgdG8gdGhpcyBmaWxlLgorICAqIFwidWlkXCI6IFRoZSBV SUQgb2YgdGhlIGZpbGUncyBvd25lci4KKyAgKiBcImdpZFwiOiBUaGUgVUlEIG9mIHRoZSBm aWxlJ3MgZ3JvdXAuCisgICogXCJhdGltZVwiOiBUaGUgdGltZSB0aGUgZmlsZSB3YXMgbGFz dCBhY2Nlc3NlZCwgaW4gc2Vjb25kcworICAgIHNpbmNlIHRoZSBVTklYIGVwb2NoLgorICAq IFwibXRpbWVcIjogQXMgXCJhdGltZVwiLCBidXQgZm9yIG1vZGlmaWNhdGlvbiB0aW1lLgor ICAqIFwiY3RpbWVcIjogQXMgXCJhdGltZVwiLCBidXQgZm9yIGlub2RlIGNoYW5nZSB0aW1l LgorICAqIFwic2l6ZVwiOiBUaGUgZmlsZSdzIHNpemUgaW4gYnl0ZXMuIgorICAobWFwY2Fy IChsYW1iZGEgKGkpCisgICAgICAgICAgICAocGNhc2UgKHNwbGl0LXN0cmluZyBpICI9IikK KyAgICAgICAgICAgICAgKGAoIm1vZGVzIiAsbW9kZXMpCisgICAgICAgICAgICAgICAoY29u cyAnbW9kZXMgKHN0cmluZy10by1udW1iZXIgbW9kZXMgOCkpKQorICAgICAgICAgICAgICAo YCgsKGFuZCAob3IgImxpbmtzIiAidWlkIiAiZ2lkIiAic2l6ZSIpIGtleSkgLHZhbHVlKQor ICAgICAgICAgICAgICAgKGNvbnMgKGludGVybiBrZXkpIChzdHJpbmctdG8tbnVtYmVyIHZh bHVlKSkpCisgICAgICAgICAgICAgIChgKCwoYW5kIChvciAiYXRpbWUiICJtdGltZSIgImN0 aW1lIikga2V5KSAsdmFsdWUpCisgICAgICAgICAgICAgICAoY29ucyAoaW50ZXJuIGtleSkg KHRpbWUtY29udmVydCAoc3RyaW5nLXRvLW51bWJlciB2YWx1ZSkpKSkKKyAgICAgICAgICAg ICAgKGAoLGtleSAsdmFsdWUpCisgICAgICAgICAgICAgICAoY29ucyAoaW50ZXJuIGtleSkg dmFsdWUpKQorICAgICAgICAgICAgICAoXyAoZXJyb3IgImludmFsaWQgZm9ybWF0ICVTIiBp KSkpKQorICAgICAgICAgIChzcGxpdC1zdHJpbmcgKGZpbGUtbmFtZS1iYXNlIGZpbGUpICIs IikpKQorCisoZGVmbWFjcm8gZXNoZWxsLXBhcnRpYWwtbGV0LWZ1bmMgKG92ZXJyaWRlcyAm cmVzdCBib2R5KQorICAiVGVtcG9yYXJpbHkgYmluZCB0byBGVU5DVElPTi1OQU1FcyBhbmQg ZXZhbHVhdGUgQk9EWS4KK1RoaXMgaXMgcm91Z2hseSBhbmFsb2dvdXMgdG8gYWR2aXNpbmcg ZnVuY3Rpb25zLCBidXQgb25seSBkb2VzIHNvCit3aGlsZSBCT0RZIGlzIGV4ZWN1dGluZywg YW5kIG9ubHkgY2FsbHMgTkVXLUZVTkNUSU9OIGlmIGl0cyBmaXJzdAorYXJndW1lbnQgaXMg YSBzdHJpbmcgYmVnaW5uaW5nIHdpdGggXCIvZmFrZS9cIi4KKworVGhpcyBhbGxvd3Mgc2Vs ZWN0aXZlbHkgb3ZlcnJpZGluZyBmdW5jdGlvbnMgdG8gdGVzdCBmaWxlCitwcm9wZXJ0aWVz IHdpdGggZmFrZSBmaWxlcyB3aXRob3V0IGFsdGVyaW5nIHRoZSBmdW5jdGlvbnMnCitiZWhh dmlvciBmb3IgcmVhbCBmaWxlcy4KKworXChmbiAoKEZVTkNUSU9OLU5BTUUgTkVXLUZVTkNU SU9OKSAuLi4pIEJPRFkuLi4pIgorICAoZGVjbGFyZSAoaW5kZW50IDEpKQorICBgKGNsLWxl dGYKKyAgICAgICAsKG1hcGNhcgorICAgICAgICAgKGxhbWJkYSAob3ZlcnJpZGUpCisgICAg ICAgICAgIChsZXQgKChvcmlnLWZ1bmN0aW9uIChzeW1ib2wtZnVuY3Rpb24gKGNhciBvdmVy cmlkZSkpKSkKKyAgICAgICAgICAgICBgKChzeW1ib2wtZnVuY3Rpb24gIycsKGNhciBvdmVy cmlkZSkpCisgICAgICAgICAgICAgICAobGFtYmRhIChmaWxlICZyZXN0IHJlc3QpCisgICAg ICAgICAgICAgICAgIChhcHBseQorICAgICAgICAgICAgICAgICAgKGlmIChhbmQgKHN0cmlu Z3AgZmlsZSkgKHN0cmluZy1wcmVmaXgtcCAiL2Zha2UvIiBmaWxlKSkKKyAgICAgICAgICAg ICAgICAgICAgICAsKGNhZHIgb3ZlcnJpZGUpCisgICAgICAgICAgICAgICAgICAgICxvcmln LWZ1bmN0aW9uKQorICAgICAgICAgICAgICAgICAgZmlsZSByZXN0KSkpKSkKKyAgICAgICAg IG92ZXJyaWRlcykKKyAgICAgLEBib2R5KSkKKworKGRlZm1hY3JvIGVzaGVsbC13aXRoLWZp bGUtYXR0cmlidXRlcy1mcm9tLW5hbWUgKCZyZXN0IGJvZHkpCisgICJUZW1wb3JhcmlseSBv dmVycmlkZSBmaWxlIGF0dHJpYnV0ZSBmdW5jdGlvbnMgYW5kIGV2YWx1YXRlIEJPRFkuIgor ICAoZGVjbGFyZSAoaW5kZW50IDApKQorICBgKGVzaGVsbC1wYXJ0aWFsLWxldC1mdW5jCisg ICAgICAgKChmaWxlLWF0dHJpYnV0ZXMKKyAgICAgICAgIChsYW1iZGEgKGZpbGUgJm9wdGlv bmFsIF9pZC1mb3JtYXQpCisgICAgICAgICAgIChsZXQgKChhdHRycyAoZXNoZWxsLXBhcnNl LWZpbGUtbmFtZS1hdHRyaWJ1dGVzIGZpbGUpKSkKKyAgICAgICAgICAgICAobGlzdCAoZXF1 YWwgKGFsaXN0LWdldCAndHlwZSBhdHRycykgImQiKQorICAgICAgICAgICAgICAgICAgIChv ciAoYWxpc3QtZ2V0ICdsaW5rcyBhdHRycykgMSkKKyAgICAgICAgICAgICAgICAgICAob3Ig KGFsaXN0LWdldCAndWlkIGF0dHJzKSAwKQorICAgICAgICAgICAgICAgICAgIChvciAoYWxp c3QtZ2V0ICdnaWQgYXR0cnMpIDApCisgICAgICAgICAgICAgICAgICAgKG9yIChhbGlzdC1n ZXQgJ2F0aW1lIGF0dHJzKSBuaWwpCisgICAgICAgICAgICAgICAgICAgKG9yIChhbGlzdC1n ZXQgJ210aW1lIGF0dHJzKSBuaWwpCisgICAgICAgICAgICAgICAgICAgKG9yIChhbGlzdC1n ZXQgJ2N0aW1lIGF0dHJzKSBuaWwpCisgICAgICAgICAgICAgICAgICAgKG9yIChhbGlzdC1n ZXQgJ3NpemUgYXR0cnMpIDApCisgICAgICAgICAgICAgICAgICAgKGZvcm1hdCAiJXMtLS0t LS0tLS0iIChvciAoYWxpc3QtZ2V0ICd0eXBlIGF0dHJzKSAiLSIpKQorICAgICAgICAgICAg ICAgICAgIG5pbCAwIDApKSkpCisgICAgICAgIChmaWxlLW1vZGVzCisgICAgICAgICAobGFt YmRhIChmaWxlIF9ub2ZvbGxvdykKKyAgICAgICAgICAgKGxldCAoKGF0dHJzIChlc2hlbGwt cGFyc2UtZmlsZS1uYW1lLWF0dHJpYnV0ZXMgZmlsZSkpKQorICAgICAgICAgICAgIChvciAo YWxpc3QtZ2V0ICdtb2RlcyBhdHRycykgMCkpKSkKKyAgICAgICAgKGZpbGUtZXhpc3RzLXAg IydhbHdheXMpCisgICAgICAgIChmaWxlLXJlZ3VsYXItcAorICAgICAgICAgKGxhbWJkYSAo ZmlsZSkKKyAgICAgICAgICAgKGxldCAoKGF0dHJzIChlc2hlbGwtcGFyc2UtZmlsZS1uYW1l LWF0dHJpYnV0ZXMgZmlsZSkpKQorICAgICAgICAgICAgIChtZW1iZXIgKG9yIChhbGlzdC1n ZXQgJ3R5cGUgYXR0cnMpICItIikgJygiLSIgImwiKSkpKSkKKyAgICAgICAgKGZpbGUtc3lt bGluay1wCisgICAgICAgICAobGFtYmRhIChmaWxlKQorICAgICAgICAgICAobGV0ICgoYXR0 cnMgKGVzaGVsbC1wYXJzZS1maWxlLW5hbWUtYXR0cmlidXRlcyBmaWxlKSkpCisgICAgICAg ICAgICAgKGVxdWFsIChhbGlzdC1nZXQgJ3R5cGUgYXR0cnMpICJsIikpKSkKKyAgICAgICAg KGZpbGUtZXhlY3V0YWJsZS1wCisgICAgICAgICAobGFtYmRhIChmaWxlKQorICAgICAgICAg ICAobGV0ICgoYXR0cnMgKGVzaGVsbC1wYXJzZS1maWxlLW5hbWUtYXR0cmlidXRlcyBmaWxl KSkpCisgICAgICAgICAgICAgOzsgRm9yIHNpbXBsaWNpdHksIGp1c3QgcmV0dXJuIHdoZXRo ZXIgdGhlIGZpbGUgaXMKKyAgICAgICAgICAgICA7OyB3b3JsZC1leGVjdXRhYmxlLgorICAg ICAgICAgICAgICg9IChsb2dhbmQgKG9yIChhbGlzdC1nZXQgJ21vZGVzIGF0dHJzKSAwKSAx KSAxKSkpKSkKKyAgICAgLEBib2R5KSkKKworOzs7IFRlc3RzOgorCisMCis7OyBBcmd1bWVu dCBwcmVkaWNhdGVzCisKKyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRlc3QvcHJlZGljYXRlLWZp bGUtdHlwZXMgKCkKKyAgIlRlc3QgZmlsZSB0eXBlIHByZWRpY2F0ZXMuIgorICAoZXNoZWxs LXdpdGgtZmlsZS1hdHRyaWJ1dGVzLWZyb20tbmFtZQorICAgIChsZXQgKChmaWxlcyAobWFw Y2FyIChsYW1iZGEgKGkpIChmb3JtYXQgIi9mYWtlL3R5cGU9JXMiIGkpKQorICAgICAgICAg ICAgICAgICAgICAgICAgICcoImIiICJjIiAiZC8iICJwIiAicyIgImwiICItIikpKSkKKyAg ICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgIiUiKQor ICAgICAgICAgICAgICAgICAgICAgJygiL2Zha2UvdHlwZT1iIiAiL2Zha2UvdHlwZT1jIikp KQorICAgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAi JWIiKSAnKCIvZmFrZS90eXBlPWIiKSkpCisgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxs LWV2YWwtcHJlZGljYXRlIGZpbGVzICIlYyIpICcoIi9mYWtlL3R5cGU9YyIpKSkKKyAgICAg IChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgIi8iKSAgJygi L2Zha2UvdHlwZT1kLyIpKSkKKyAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1w cmVkaWNhdGUgZmlsZXMgIi4iKSAgJygiL2Zha2UvdHlwZT0tIikpKQorICAgICAgKHNob3Vs ZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAicCIpICAnKCIvZmFrZS90 eXBlPXAiKSkpCisgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRl IGZpbGVzICI9IikgICcoIi9mYWtlL3R5cGU9cyIpKSkKKyAgICAgIChzaG91bGQgKGVxdWFs IChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgIkAiKSAgJygiL2Zha2UvdHlwZT1sIikp KSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tcHJlZC10ZXN0L3ByZWRpY2F0ZS1leGVjdXRhYmxl ICgpCisgICJUZXN0IHRoYXQgXCIqXCIgbWF0Y2hlcyBvbmx5IHJlZ3VsYXIsIG5vbi1zeW1s aW5rIGV4ZWN1dGFibGUgZmlsZXMuIgorICAoZXNoZWxsLXdpdGgtZmlsZS1hdHRyaWJ1dGVz LWZyb20tbmFtZQorICAgIChsZXQgKChmaWxlcyAnKCIvZmFrZS9tb2Rlcz0wNzc3IiAiL2Zh a2UvbW9kZXM9MDY2NiIKKyAgICAgICAgICAgICAgICAgICAiL2Zha2UvdHlwZT1kLG1vZGVz PTA3NzciICIvZmFrZS90eXBlPWwsbW9kZXM9MDc3NyIpKSkKKyAgICAgIChzaG91bGQgKGVx dWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgIioiKQorICAgICAgICAgICAgICAg ICAgICAgJygiL2Zha2UvbW9kZXM9MDc3NyIpKSkpKSkKKworKGRlZm1hY3JvIGVtLXByZWQt dGVzdC0tZmlsZS1tb2Rlcy1kZWZ0ZXN0IChuYW1lIG1vZGUtdGVtcGxhdGUgcHJlZGljYXRl cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZv cHRpb25hbCBkb2NzdHJpbmcpCisgICJEZWZpbmUgTkFNRSBhcyBhIGZpbGUtbW9kZSB0ZXN0 LgorTU9ERS1URU1QTEFURSBpcyBhIGZvcm1hdCBzdHJpbmcgdG8gY29udmVydCBhbiBpbnRl Z2VyIGZyb20gMCB0bworNyB0byBhbiBvY3RhbCBmaWxlIG1vZGUuICBQUkVESUNBVEVTIGlz IGEgbGlzdCBvZiBzdHJpbmdzIGZvciB0aGUKK3JlYWQsIHdyaXRlLCBhbmQgZXhlY3V0ZSBw cmVkaWNhdGVzIHRvIHF1ZXJ5IHRoZSBmaWxlJ3MgbW9kZXMuIgorICAoZGVjbGFyZSAoaW5k ZW50IDQpIChkb2Mtc3RyaW5nIDQpKQorICBgKGVydC1kZWZ0ZXN0ICxuYW1lICgpCisgICAg ICxkb2NzdHJpbmcKKyAgICAgKGVzaGVsbC13aXRoLWZpbGUtYXR0cmlidXRlcy1mcm9tLW5h bWUKKyAgICAgICAobGV0ICgoZmlsZS10ZW1wbGF0ZSAoY29uY2F0ICIvZmFrZS9tb2Rlcz0i ICxtb2RlLXRlbXBsYXRlKSkpCisgICAgICAgICAoY2wtZmxldCAoKG1ha2UtZmlsZXMgKHBl cm1zKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjYXIgKGxhbWJkYSAo aSkgKGZvcm1hdCBmaWxlLXRlbXBsYXRlIGkpKQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcGVybXMpKSkKKyAgICAgICAgICAgKHBjYXNlLWxldCAoKGZpbGVz IChtYWtlLWZpbGVzIChudW1iZXItc2VxdWVuY2UgMCA3KSkpCisgICAgICAgICAgICAgICAg ICAgICAgIChgKCxyZWFkICx3cml0ZSAsZXhlYykgLHByZWRpY2F0ZXMpKQorICAgICAgICAg ICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgcmVhZCkK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFrZS1maWxlcyAnKDQgNSA2IDcpKSkp CisgICAgICAgICAgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBm aWxlcyAoY29uY2F0ICJeIiByZWFkKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAo bWFrZS1maWxlcyAnKDAgMSAyIDMpKSkpCisgICAgICAgICAgICAgKHNob3VsZCAoZXF1YWwg KGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyB3cml0ZSkKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAobWFrZS1maWxlcyAnKDIgMyA2IDcpKSkpCisgICAgICAgICAgICAgKHNo b3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAoY29uY2F0ICJeIiB3 cml0ZSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1ha2UtZmlsZXMgJygwIDEg NCA1KSkpKQorICAgICAgICAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVk aWNhdGUgZmlsZXMgZXhlYykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFrZS1m aWxlcyAnKDEgMyA1IDcpKSkpCisgICAgICAgICAgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVs bC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAoY29uY2F0ICJeIiBleGVjKSkKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAobWFrZS1maWxlcyAnKDAgMiA0IDYpKSkpKSkpKSkpCisKKyhl bS1wcmVkLXRlc3QtLWZpbGUtbW9kZXMtZGVmdGVzdCBlbS1wcmVkLXRlc3QvcHJlZGljYXRl LWZpbGUtbW9kZXMtb3duZXIKKyAgICAiMCVvMDAiICcoInIiICJ3IiAieCIpCisgICAgIlRl c3QgcHJlZGljYXRlcyBmb3IgZmlsZSBwZXJtaXNzaW9ucyBmb3IgdGhlIG93bmVyLiIpCisK KyhlbS1wcmVkLXRlc3QtLWZpbGUtbW9kZXMtZGVmdGVzdCBlbS1wcmVkLXRlc3QvcHJlZGlj YXRlLWZpbGUtbW9kZXMtZ3JvdXAKKyAgICAiMDAlbzAiICcoIkEiICJJIiAiRSIpCisgICAg IlRlc3QgcHJlZGljYXRlcyBmb3IgZmlsZSBwZXJtaXNzaW9ucyBmb3IgdGhlIGdyb3VwLiIp CisKKyhlbS1wcmVkLXRlc3QtLWZpbGUtbW9kZXMtZGVmdGVzdCBlbS1wcmVkLXRlc3QvcHJl ZGljYXRlLWZpbGUtbW9kZXMtd29ybGQKKyAgICAiMDAwJW8iICcoIlIiICJXIiAiWCIpCisg ICAgIlRlc3QgcHJlZGljYXRlcyBmb3IgZmlsZSBwZXJtaXNzaW9ucyBmb3IgdGhlIHdvcmxk LiIpCisKKyhlbS1wcmVkLXRlc3QtLWZpbGUtbW9kZXMtZGVmdGVzdCBlbS1wcmVkLXRlc3Qv cHJlZGljYXRlLWZpbGUtbW9kZXMtZmxhZ3MKKyAgICAiJW8wMDAiICcoInMiICJTIiAidCIp CisgICAgIlRlc3QgcHJlZGljYXRlcyBmb3IgXCJzXCIgKHNldHVpZCksIFwiU1wiIChzZXRn aWQpLCBhbmQgXCJ0XCIgKHN0aWNreSkuIikKKworKGVydC1kZWZ0ZXN0IGVtLXByZWQtdGVz dC9wcmVkaWNhdGUtZWZmZWN0aXZlLXVpZCAoKQorICAiVGVzdCB0aGF0IFwiVVwiIG1hdGNo ZXMgZmlsZXMgb3duZWQgYnkgdGhlIGVmZmVjdGl2ZSBVSUQuIgorICAoZXNoZWxsLXdpdGgt ZmlsZS1hdHRyaWJ1dGVzLWZyb20tbmFtZQorICAgIChjbC1sZXRmICgoKHN5bWJvbC1mdW5j dGlvbiAndXNlci11aWQpIChsYW1iZGEgKCkgMSkpKQorICAgICAgKGxldCAoKGZpbGVzICco Ii9mYWtlL3VpZD0xIiAiL2Zha2UvdWlkPTIiKSkpCisgICAgICAgIChzaG91bGQgKGVxdWFs IChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgIlUiKQorICAgICAgICAgICAgICAgICAg ICAgICAnKCIvZmFrZS91aWQ9MSIpKSkpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRl c3QvcHJlZGljYXRlLWxpbmtzICgpCisgICJUZXN0IHRoYXQgXCJsXCIgZmlsdGVycyBieSBu dW1iZXIgb2YgbGlua3MuIgorICAoZXNoZWxsLXdpdGgtZmlsZS1hdHRyaWJ1dGVzLWZyb20t bmFtZQorICAgIChsZXQgKChmaWxlcyAnKCIvZmFrZS9saW5rcz0xIiAiL2Zha2UvbGlua3M9 MiIgIi9mYWtlL2xpbmtzPTMiKSkpCisgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2 YWwtcHJlZGljYXRlIGZpbGVzICJsMSIpCisgICAgICAgICAgICAgICAgICAgICAnKCIvZmFr ZS9saW5rcz0xIikpKQorICAgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRp Y2F0ZSBmaWxlcyAibCsxIikKKyAgICAgICAgICAgICAgICAgICAgICcoIi9mYWtlL2xpbmtz PTIiICIvZmFrZS9saW5rcz0zIikpKQorICAgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1l dmFsLXByZWRpY2F0ZSBmaWxlcyAibC0zIikKKyAgICAgICAgICAgICAgICAgICAgICcoIi9m YWtlL2xpbmtzPTEiICIvZmFrZS9saW5rcz0yIikpKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0t cHJlZC10ZXN0L3ByZWRpY2F0ZS11aWQgKCkKKyAgIlRlc3QgdGhhdCBcInVcIiBmaWx0ZXJz IGJ5IFVJRC91c2VyIG5hbWUuIgorICAoZXNoZWxsLXdpdGgtZmlsZS1hdHRyaWJ1dGVzLWZy b20tbmFtZQorICAgIChsZXQgKChmaWxlcyAnKCIvZmFrZS91aWQ9MSIgIi9mYWtlL3VpZD0y IikpCisgICAgICAgICAgKHVzZXItbmFtZXMgJygicm9vdCIgIm9uZSIgInR3byIpKSkKKyAg ICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgInUxIikK KyAgICAgICAgICAgICAgICAgICAgICcoIi9mYWtlL3VpZD0xIikpKQorICAgICAgKGNsLWxl dGYgKCgoc3ltYm9sLWZ1bmN0aW9uICdlc2hlbGwtdXNlci1pZCkKKyAgICAgICAgICAgICAg ICAgKGxhbWJkYSAobmFtZSkgKHNlcS1wb3NpdGlvbiB1c2VyLW5hbWVzIG5hbWUpKSkpCisg ICAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgInUn b25lJyIpCisgICAgICAgICAgICAgICAgICAgICAgICcoIi9mYWtlL3VpZD0xIikpKQorICAg ICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlIGZpbGVzICJ1e29u ZX0iKQorICAgICAgICAgICAgICAgICAgICAgICAnKCIvZmFrZS91aWQ9MSIpKSkpKSkpCisK KyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRlc3QvcHJlZGljYXRlLWdpZCAoKQorICAiVGVzdCB0 aGF0IFwiZ1wiIGZpbHRlcnMgYnkgR0lEL2dyb3VwIG5hbWUuIgorICAoZXNoZWxsLXdpdGgt ZmlsZS1hdHRyaWJ1dGVzLWZyb20tbmFtZQorICAgIChsZXQgKChmaWxlcyAnKCIvZmFrZS9n aWQ9MSIgIi9mYWtlL2dpZD0yIikpCisgICAgICAgICAgKGdyb3VwLW5hbWVzICcoInJvb3Qi ICJvbmUiICJ0d28iKSkpCisgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJl ZGljYXRlIGZpbGVzICJnMSIpCisgICAgICAgICAgICAgICAgICAgICAnKCIvZmFrZS9naWQ9 MSIpKSkKKyAgICAgIChjbC1sZXRmICgoKHN5bWJvbC1mdW5jdGlvbiAnZXNoZWxsLWdyb3Vw LWlkKQorICAgICAgICAgICAgICAgICAobGFtYmRhIChuYW1lKSAoc2VxLXBvc2l0aW9uIGdy b3VwLW5hbWVzIG5hbWUpKSkpCisgICAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZh bC1wcmVkaWNhdGUgZmlsZXMgImcnb25lJyIpCisgICAgICAgICAgICAgICAgICAgICAgICco Ii9mYWtlL2dpZD0xIikpKQorICAgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwt cHJlZGljYXRlIGZpbGVzICJne29uZX0iKQorICAgICAgICAgICAgICAgICAgICAgICAnKCIv ZmFrZS9naWQ9MSIpKSkpKSkpCisKKyhkZWZtYWNybyBlbS1wcmVkLXRlc3QtLXRpbWUtZGVm dGVzdCAobmFtZSBmaWxlLWF0dHJpYnV0ZSBwcmVkaWNhdGUKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAmb3B0aW9uYWwgZG9jc3RyaW5nKQorICAiRGVm aW5lIE5BTUUgYXMgYSBmaWxlLXRpbWUgdGVzdC4KK0ZJTEUtQVRUUklCVVRFIGlzIHRoZSBm aWxlJ3MgYXR0cmlidXRlIHRvIHNldCAoZS5nLiBcImF0aW1lXCIpLgorUFJFRElDQVRFIGlz IHRoZSBwcmVkaWNhdGUgdXNlZCB0byBxdWVyeSB0aGF0IGF0dHJpYnV0ZS4iCisgIChkZWNs YXJlIChpbmRlbnQgNCkgKGRvYy1zdHJpbmcgNCkpCisgIGAoZXJ0LWRlZnRlc3QgLG5hbWUg KCkKKyAgICAgLGRvY3N0cmluZworICAgICAoZXNoZWxsLXdpdGgtZmlsZS1hdHRyaWJ1dGVz LWZyb20tbmFtZQorICAgICAgIChjbC1mbGV0ICgobWFrZS1maWxlICh0aW1lKQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgIChmb3JtYXQgIi9mYWtlLyVzPSVkIiAsZmlsZS1hdHRy aWJ1dGUgdGltZSkpKQorICAgICAgICAgKGxldCogKChub3cgKHRpbWUtY29udmVydCBuaWwg J2ludGVnZXIpKQorICAgICAgICAgICAgICAgICh5ZXN0ZXJkYXkgKC0gbm93IDg2NDAwKSkK KyAgICAgICAgICAgICAgICAoZmlsZXMgKG1hcGNhciAjJ21ha2UtZmlsZSAobGlzdCBub3cg eWVzdGVyZGF5KSkpKQorICAgICAgICAgICA7OyBUZXN0IGNvbXBhcmlzb24gYWdhaW5zdCBh IG51bWJlciBvZiBkYXlzLgorICAgICAgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2 YWwtcHJlZGljYXRlCisgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlcyAoY29uY2F0 ICxwcmVkaWNhdGUgIi0xIikpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjYXIg IydtYWtlLWZpbGUgKGxpc3Qgbm93KSkpKQorICAgICAgICAgICAoc2hvdWxkIChlcXVhbCAo ZXNoZWxsLWV2YWwtcHJlZGljYXRlCisgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxl cyAoY29uY2F0ICxwcmVkaWNhdGUgIisxIikpCisgICAgICAgICAgICAgICAgICAgICAgICAg IChtYXBjYXIgIydtYWtlLWZpbGUgKGxpc3QgeWVzdGVyZGF5KSkpKQorICAgICAgICAgICAo c2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlCisgICAgICAgICAgICAgICAg ICAgICAgICAgICBmaWxlcyAoY29uY2F0ICxwcmVkaWNhdGUgIisyIikpCisgICAgICAgICAg ICAgICAgICAgICAgICAgIG5pbCkpCisgICAgICAgICAgIDs7IFRlc3QgY29tcGFyaXNvbiBh Z2FpbnN0IGEgbnVtYmVyIG9mIGhvdXJzLgorICAgICAgICAgICAoc2hvdWxkIChlcXVhbCAo ZXNoZWxsLWV2YWwtcHJlZGljYXRlCisgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxl cyAoY29uY2F0ICxwcmVkaWNhdGUgImgtMSIpKQorICAgICAgICAgICAgICAgICAgICAgICAg ICAobWFwY2FyICMnbWFrZS1maWxlIChsaXN0IG5vdykpKSkKKyAgICAgICAgICAgKHNob3Vs ZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgZmlsZXMgKGNvbmNhdCAscHJlZGljYXRlICJoKzEiKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgKG1hcGNhciAjJ21ha2UtZmlsZSAobGlzdCB5ZXN0ZXJkYXkpKSkpCisg ICAgICAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgIGZpbGVzIChjb25jYXQgLHByZWRpY2F0ZSAiKzQ4Iikp CisgICAgICAgICAgICAgICAgICAgICAgICAgIG5pbCkpCisgICAgICAgICAgIDs7IFRlc3Qg Y29tcGFyaXNvbiBhZ2FpbnN0IGFub3RoZXIgZmlsZS4KKyAgICAgICAgICAgKHNob3VsZCAo ZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgZmlsZXMgKGZvcm1hdCAiJXMtJyVzJyIgLHByZWRpY2F0ZSAobWFrZS1maWxlIG5vdykp KQorICAgICAgICAgICAgICAgICAgICAgICAgICBuaWwpKQorICAgICAgICAgICAoc2hvdWxk IChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlCisgICAgICAgICAgICAgICAgICAgICAg ICAgICBmaWxlcyAoZm9ybWF0ICIlcysnJXMnIiAscHJlZGljYXRlIChtYWtlLWZpbGUgbm93 KSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXBjYXIgIydtYWtlLWZpbGUgKGxp c3QgeWVzdGVyZGF5KSkpKSkpKSkpCisKKyhlbS1wcmVkLXRlc3QtLXRpbWUtZGVmdGVzdCBl bS1wcmVkLXRlc3QvcHJlZGljYXRlLWFjY2Vzcy10aW1lCisgICAgImF0aW1lIiAiYSIKKyAg ICAiVGVzdCB0aGF0IFwiYVwiIGZpbHRlcnMgYnkgYWNjZXNzIHRpbWUuIikKKworKGVtLXBy ZWQtdGVzdC0tdGltZS1kZWZ0ZXN0IGVtLXByZWQtdGVzdC9wcmVkaWNhdGUtbW9kaWZpY2F0 aW9uLXRpbWUKKyAgICAibXRpbWUiICJtIgorICAgICJUZXN0IHRoYXQgXCJtXCIgZmlsdGVy cyBieSBjaGFuZ2UgdGltZS4iKQorCisoZW0tcHJlZC10ZXN0LS10aW1lLWRlZnRlc3QgZW0t cHJlZC10ZXN0L3ByZWRpY2F0ZS1jaGFuZ2UtdGltZQorICAgICJjdGltZSIgImMiCisgICAg IlRlc3QgdGhhdCBcImNcIiBmaWx0ZXJzIGJ5IGNoYW5nZSB0aW1lLiIpCisKKyhlcnQtZGVm dGVzdCBlbS1wcmVkLXRlc3QvcHJlZGljYXRlLXNpemUgKCkKKyAgIlRlc3QgdGhhdCBcIkxc IiBmaWx0ZXJzIGJ5IGZpbGUgc2l6ZS4iCisgIChlc2hlbGwtd2l0aC1maWxlLWF0dHJpYnV0 ZXMtZnJvbS1uYW1lCisgICAgKGxldCAoKGZpbGVzICcoIi9mYWtlL3NpemU9MCIKKyAgICAg ICAgICAgICAgICAgICA7OyAxIGFuZCAyIEtpQi4KKyAgICAgICAgICAgICAgICAgICAiL2Zh a2Uvc2l6ZT0xMDI0IiAiL2Zha2Uvc2l6ZT0yMDQ4IgorICAgICAgICAgICAgICAgICAgIDs7 IDEgYW5kIDIgTWlCLgorICAgICAgICAgICAgICAgICAgICIvZmFrZS9zaXplPTEwNDg1NzYi ICIvZmFrZS9zaXplPTIwOTcxNTIiKSkpCisgICAgICA7OyBTaXplIGluIGJ5dGVzLgorICAg ICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAiTDIwNDgi KQorICAgICAgICAgICAgICAgICAgICAgJygiL2Zha2Uvc2l6ZT0yMDQ4IikpKQorICAgICAg KHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAiTCsyMDQ4IikK KyAgICAgICAgICAgICAgICAgICAgICcoIi9mYWtlL3NpemU9MTA0ODU3NiIgIi9mYWtlL3Np emU9MjA5NzE1MiIpKSkKKyAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVk aWNhdGUgZmlsZXMgIkwtMjA0OCIpCisgICAgICAgICAgICAgICAgICAgICAnKCIvZmFrZS9z aXplPTAiICIvZmFrZS9zaXplPTEwMjQiKSkpCisgICAgICA7OyBTaXplIGluIGJsb2Nrcy4K KyAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgIkxw NCIpCisgICAgICAgICAgICAgICAgICAgICAnKCIvZmFrZS9zaXplPTIwNDgiKSkpCisgICAg ICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlIGZpbGVzICJMcCs0IikK KyAgICAgICAgICAgICAgICAgICAgICcoIi9mYWtlL3NpemU9MTA0ODU3NiIgIi9mYWtlL3Np emU9MjA5NzE1MiIpKSkKKyAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVk aWNhdGUgZmlsZXMgIkxwLTQiKQorICAgICAgICAgICAgICAgICAgICAgJygiL2Zha2Uvc2l6 ZT0wIiAiL2Zha2Uvc2l6ZT0xMDI0IikpKQorICAgICAgOzsgU2l6ZSBpbiBLaUIuCisgICAg ICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlIGZpbGVzICJMazIiKQor ICAgICAgICAgICAgICAgICAgICAgJygiL2Zha2Uvc2l6ZT0yMDQ4IikpKQorICAgICAgKHNo b3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAiTGsrMiIpCisgICAg ICAgICAgICAgICAgICAgICAnKCIvZmFrZS9zaXplPTEwNDg1NzYiICIvZmFrZS9zaXplPTIw OTcxNTIiKSkpCisgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRl IGZpbGVzICJMay0yIikKKyAgICAgICAgICAgICAgICAgICAgICcoIi9mYWtlL3NpemU9MCIg Ii9mYWtlL3NpemU9MTAyNCIpKSkKKyAgICAgIDs7IFNpemUgaW4gTWlCLgorICAgICAgKHNo b3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAiTE0xIikKKyAgICAg ICAgICAgICAgICAgICAgICcoIi9mYWtlL3NpemU9MTA0ODU3NiIpKSkKKyAgICAgIChzaG91 bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgZmlsZXMgIkxNKzEiKQorICAgICAg ICAgICAgICAgICAgICAgJygiL2Zha2Uvc2l6ZT0yMDk3MTUyIikpKQorICAgICAgKHNob3Vs ZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSBmaWxlcyAiTE0tMSIpCisgICAgICAg ICAgICAgICAgICAgICAnKCIvZmFrZS9zaXplPTAiICIvZmFrZS9zaXplPTEwMjQiICIvZmFr ZS9zaXplPTIwNDgiKSkpKSkpCisKKwwKKzs7IEFyZ3VtZW50IG1vZGlmaWVycworCisoZXJ0 LWRlZnRlc3QgZW0tcHJlZC10ZXN0L21vZGlmaWVyLWV2YWwgKCkKKyAgIlRlc3QgdGhhdCBc IjpFXCIgcmUtZXZhbHVhdGVzIHRoZSB2YWx1ZS4iCisgIChzaG91bGQgKGVxdWFsIChlc2hl bGwtZXZhbC1wcmVkaWNhdGUgIiR7ZWNobyBoaX0iICI6RSIpICJoaSIpKQorICAoc2hvdWxk IChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlCisgICAgICAgICAgICAgICAgICAnKCIk e2VjaG8gaGl9IiAiJCh1cGNhc2UgXCJieWVcIikiKSAiOkUiKQorICAgICAgICAgICAgICAg ICAnKCJoaSIgIkJZRSIpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRlc3QvbW9kaWZp ZXItZG93bmNhc2UgKCkKKyAgIlRlc3QgdGhhdCBcIjpMXCIgZG93bmNhc2VzIHZhbHVlcy4i CisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgIkZPTyIgIjpMIikg ImZvbyIpKQorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlICcoIkZP TyIgIkJBUiIpICI6TCIpCisgICAgICAgICAgICAgICAgICcoImZvbyIgImJhciIpKSkpCisK KyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRlc3QvbW9kaWZpZXItdXBjYXNlICgpCisgICJUZXN0 IHRoYXQgXCI6VVwiIHVwY2FzZXMgdmFsdWVzLiIKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVs bC1ldmFsLXByZWRpY2F0ZSAiZm9vIiAiOlUiKSAiRk9PIikpCisgIChzaG91bGQgKGVxdWFs IChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgJygiZm9vIiAiYmFyIikgIjpVIikKKyAgICAgICAg ICAgICAgICAgJygiRk9PIiAiQkFSIikpKSkKKworKGVydC1kZWZ0ZXN0IGVtLXByZWQtdGVz dC9tb2RpZmllci1jYXBpdGFsaXplICgpCisgICJUZXN0IHRoYXQgXCI6Q1wiIGNhcGl0YWxp emVzIHZhbHVlcy4iCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUg ImZvbyBiYXIiICI6QyIpICJGb28gQmFyIikpCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwt ZXZhbC1wcmVkaWNhdGUgJygiZm9vIGJhciIgImJheiIpICI6QyIpCisgICAgICAgICAgICAg ICAgICcoIkZvbyBCYXIiICJCYXoiKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tcHJlZC10ZXN0 L21vZGlmaWVyLWRpcm5hbWUgKCkKKyAgIlRlc3QgdGhhdCBcIjpoXCIgcmV0dXJucyB0aGUg ZGlybmFtZS4iCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgIi9w YXRoL3RvL2ZpbGUuZWwiICI6aCIpICIvcGF0aC90by8iKSkKKyAgKHNob3VsZCAoZXF1YWwg KGVzaGVsbC1ldmFsLXByZWRpY2F0ZQorICAgICAgICAgICAgICAgICAgJygiL3BhdGgvdG8v ZmlsZS5lbCIgIi9vdGhlci9wYXRoLyIpICI6aCIpCisgICAgICAgICAgICAgICAgICcoIi9w YXRoL3RvLyIgIi9vdGhlci9wYXRoLyIpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRl c3QvbW9kaWZpZXItYmFzZW5hbWUgKCkKKyAgIlRlc3QgdGhhdCBcIjp0XCIgcmV0dXJucyB0 aGUgYmFzZW5hbWUuIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRl ICIvcGF0aC90by9maWxlLmVsIiAiOnQiKSAiZmlsZS5lbCIpKQorICAoc2hvdWxkIChlcXVh bCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlCisgICAgICAgICAgICAgICAgICAnKCIvcGF0aC90 by9maWxlLmVsIiAiL290aGVyL3BhdGgvIikgIjp0IikKKyAgICAgICAgICAgICAgICAgJygi ZmlsZS5lbCIgIiIpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRlc3QvbW9kaWZpZXIt ZXh0ZW5zaW9uICgpCisgICJUZXN0IHRoYXQgXCI6ZVwiIHJldHVybnMgdGhlIGV4dGVuc2lv bi4iCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgIi9wYXRoL3Rv L2ZpbGUuZWwiICI6ZSIpICJlbCIpKQorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwt cHJlZGljYXRlCisgICAgICAgICAgICAgICAgICAnKCIvcGF0aC90by9maWxlLmVsIiAiL290 aGVyL3BhdGgvIikgIjplIikKKyAgICAgICAgICAgICAgICAgJygiZWwiIG5pbCkpKSkKKwor KGVydC1kZWZ0ZXN0IGVtLXByZWQtdGVzdC9tb2RpZmllci1zYW5zLWV4dGVuc2lvbiAoKQor ICAiVGVzdCB0aGF0IFwiOnJcIiByZXR1cm5zIHRoZSBmaWxlIG5hbWUgc2FuIGV4dGVuc2lv bi4iCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgIi9wYXRoL3Rv L2ZpbGUuZWwiICI6ciIpCisgICAgICAgICAgICAgICAgICIvcGF0aC90by9maWxlIikpCisg IChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUKKyAgICAgICAgICAgICAg ICAgICcoIi9wYXRoL3RvL2ZpbGUuZWwiICIvb3RoZXIvcGF0aC8iKSAiOnIiKQorICAgICAg ICAgICAgICAgICAnKCIvcGF0aC90by9maWxlIiAiL290aGVyL3BhdGgvIikpKSkKKworKGVy dC1kZWZ0ZXN0IGVtLXByZWQtdGVzdC9tb2RpZmllci1xdW90ZSAoKQorICAiVGVzdCB0aGF0 IFwiOnFcIiBxdW90ZXMgYXJndW1lbnRzLiIKKyAgKHNob3VsZCAoZXF1YWwtaW5jbHVkaW5n LXByb3BlcnRpZXMKKyAgICAgICAgICAgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSAnKCJmb28i ICJiYXIiKSAiOnEiKQorICAgICAgICAgICAobGlzdCAoZXNoZWxsLWVzY2FwZS1hcmcgImZv byIpIChlc2hlbGwtZXNjYXBlLWFyZyAiYmFyIikpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1w cmVkLXRlc3QvbW9kaWZpZXItc3Vic3RpdHV0ZSAoKQorICAiVGVzdCB0aGF0IFwiOnMvUEFU L1JFUC9cIiByZXBsYWNlcyBQQVQgd2l0aCBSRVAgb25jZS4iCisgIChzaG91bGQgKGVxdWFs IChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgImJhciIgIjpzL2EvKi8iKSAiYipyIikpCisgIChz aG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgImJhciIgIjpzfGF8KnwiKSAi YipyIikpCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgJygiZm9v IiAiYmFyIiAiYmF6IikgIjpzL1thb10vKi8iKQorICAgICAgICAgICAgICAgICAnKCJmKm8i ICJiKnIiICJiKnoiKSkpCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNh dGUgJygiZm9vIiAiYmFyIiAiYmF6IikgIjpzfFthb118KnwiKQorICAgICAgICAgICAgICAg ICAnKCJmKm8iICJiKnIiICJiKnoiKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tcHJlZC10ZXN0 L21vZGlmaWVyLWdsb2JhbC1zdWJzdGl0dXRlICgpCisgICJUZXN0IHRoYXQgXCI6cy9QQVQv UkVQL1wiIHJlcGxhY2VzIFBBVCB3aXRoIFJFUCBmb3IgYWxsIG9jY3VycmVuY2VzLiIKKyAg KHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSAiZm9vIiAiOmdzL2EvKi8i KSAiZm9vIikpCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgImZv byIgIjpnc3xhfCp8IikgImZvbyIpKQorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwt cHJlZGljYXRlICJiYXIiICI6Z3MvYS8qLyIpICJiKnIiKSkKKyAgKHNob3VsZCAoZXF1YWwg KGVzaGVsbC1ldmFsLXByZWRpY2F0ZSAiYmFyIiAiOmdzfGF8KnwiKSAiYipyIikpCisgIChz aG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgImZvbyIgIjpncy9vL08vIikg ImZPTyIpKQorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlICcoImZv byIgImJhciIgImJheiIpICI6Z3MvW2FlaW91XS8qLyIpCisgICAgICAgICAgICAgICAgICco ImYqKiIgImIqciIgImIqeiIpKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXBy ZWRpY2F0ZSAnKCJmb28iICJiYXIiICJiYXoiKSAiOmdzfFthZWlvdV18KnwiKQorICAgICAg ICAgICAgICAgICAnKCJmKioiICJiKnIiICJiKnoiKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0t cHJlZC10ZXN0L21vZGlmaWVyLWluY2x1ZGUgKCkKKyAgIlRlc3QgdGhhdCBcIjppL1BBVC9c IiBmaWx0ZXJzIGVsZW1lbnRzIHRvIGluY2x1ZGUgb25seSBvbmVzIG1hdGNoaW5nIFBBVC4i CisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgImZvbyIgIjppL2Ev IikgbmlsKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSAiZm9v IiAiOml8YXwiKSBuaWwpKQorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGlj YXRlICJiYXIiICI6aS9hLyIpICJiYXIiKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1l dmFsLXByZWRpY2F0ZSAiYmFyIiAiOml8YXwiKSAiYmFyIikpCisgIChzaG91bGQgKGVxdWFs IChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgJygiZm9vIiAiYmFyIiAiYmF6IikgIjppL2EvIikK KyAgICAgICAgICAgICAgICAgJygiYmFyIiAiYmF6IikpKQorICAoc2hvdWxkIChlcXVhbCAo ZXNoZWxsLWV2YWwtcHJlZGljYXRlICcoImZvbyIgImJhciIgImJheiIpICI6aXxhfCIpCisg ICAgICAgICAgICAgICAgICcoImJhciIgImJheiIpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1w cmVkLXRlc3QvbW9kaWZpZXItZXhjbHVkZSAoKQorICAiVGVzdCB0aGF0IFwiOngvUEFUL1wi IGZpbHRlcnMgZWxlbWVudHMgdG8gZXhjbHVkZSBhbnkgbWF0Y2hpbmcgUEFULiIKKyAgKHNo b3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSAiZm9vIiAiOngvYS8iKSAiZm9v IikpCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgImZvbyIgIjp4 fGF8IikgImZvbyIpKQorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRl ICJiYXIiICI6eC9hLyIpIG5pbCkpCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1w cmVkaWNhdGUgImJhciIgIjp4fGF8IikgbmlsKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVs bC1ldmFsLXByZWRpY2F0ZSAnKCJmb28iICJiYXIiICJiYXoiKSAiOngvYS8iKQorICAgICAg ICAgICAgICAgICAnKCJmb28iKSkpCisgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1w cmVkaWNhdGUgJygiZm9vIiAiYmFyIiAiYmF6IikgIjp4fGF8IikKKyAgICAgICAgICAgICAg ICAgJygiZm9vIikpKSkKKworKGVydC1kZWZ0ZXN0IGVtLXByZWQtdGVzdC9tb2RpZmllci1z cGxpdCAoKQorICAiVGVzdCB0aGF0IFwiOlNcIiBhbmQgXCI6Uy9QQVQvXCIgc3BsaXQgZWxl bWVudHMgYnkgc3BhY2VzIChvciBQQVQpLiIKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1l dmFsLXByZWRpY2F0ZSAiZm9vIGJhciBiYXoiICI6UyIpCisgICAgICAgICAgICAgICAgICco ImZvbyIgImJhciIgImJheiIpKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXBy ZWRpY2F0ZSAnKCJmb28gYmFyIiAiYmF6IikgIjpTIikKKyAgICAgICAgICAgICAgICAgJygo ImZvbyIgImJhciIpICgiYmF6IikpKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFs LXByZWRpY2F0ZSAiZm9vLWJhci1iYXoiICI6Uy8tLyIpCisgICAgICAgICAgICAgICAgICco ImZvbyIgImJhciIgImJheiIpKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXBy ZWRpY2F0ZSAnKCJmb28tYmFyIiAiYmF6IikgIjpTLy0vIikKKyAgICAgICAgICAgICAgICAg JygoImZvbyIgImJhciIpICgiYmF6IikpKSkpCisKKyhlcnQtZGVmdGVzdCBlbS1wcmVkLXRl c3QvbW9kaWZpZXItam9pbiAoKQorICAiVGVzdCB0aGF0IFwiOmpcIiBhbmQgXCI6ai9ERUxJ TS9cIiBqb2luIGVsZW1lbnRzIGJ5IHNwYWNlcyAob3IgREVMSU0pLiIKKyAgKHNob3VsZCAo ZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSAiZm9vIiAiOmoiKSAiZm9vIikpCisgIChz aG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgJygiZm9vIiAiYmFyIiAiYmF6 IikgIjpqIikKKyAgICAgICAgICAgICAgICAgImZvbyBiYXIgYmF6IikpCisgIChzaG91bGQg KGVxdWFsIChlc2hlbGwtZXZhbC1wcmVkaWNhdGUgImZvbyIgIjpqLy0vIikgImZvbyIpKQor ICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlICcoImZvbyIgImJhciIg ImJheiIpICI6ai8tLyIpCisgICAgICAgICAgICAgICAgICJmb28tYmFyLWJheiIpKSkKKwor KGVydC1kZWZ0ZXN0IGVtLXByZWQtdGVzdC9tb2RpZmllci1zb3J0ICgpCisgICJUZXN0IHRo YXQgXCI6b1wiIHNvcnRzIGVsZW1lbnRzIGluIGxleGljb2dyYXBoaWMgb3JkZXIuIgorICAo c2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlICJmb28iICI6byIpICJmb28i KSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFsLXByZWRpY2F0ZSAnKCJmb28iICJi YXIiICJiYXoiKSAiOm8iKQorICAgICAgICAgICAgICAgICAnKCJiYXIiICJiYXoiICJmb28i KSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tcHJlZC10ZXN0L21vZGlmaWVyLXNvcnQtcmV2ZXJz ZSAoKQorICAiVGVzdCB0aGF0IFwiOm9cIiBzb3J0cyBlbGVtZW50cyBpbiByZXZlcnNlIGxl eGljb2dyYXBoaWMgb3JkZXIuIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJl ZGljYXRlICJmb28iICI6TyIpICJmb28iKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1l dmFsLXByZWRpY2F0ZSAnKCJmb28iICJiYXIiICJiYXoiKSAiOk8iKQorICAgICAgICAgICAg ICAgICAnKCJmb28iICJiYXoiICJiYXIiKSkpKQorCisoZXJ0LWRlZnRlc3QgZW0tcHJlZC10 ZXN0L21vZGlmaWVyLXVuaXF1ZSAoKQorICAiVGVzdCB0aGF0IFwiOnVcIiBmaWx0ZXJzIG91 dCBkdXBsaWNhdGUgZWxlbWVudHMuIgorICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwt cHJlZGljYXRlICJmb28iICI6dSIpICJmb28iKSkKKyAgKHNob3VsZCAoZXF1YWwgKGVzaGVs bC1ldmFsLXByZWRpY2F0ZSAnKCJmb28iICJiYXIiICJiYXoiKSAiOnUiKQorICAgICAgICAg ICAgICAgICAnKCJmb28iICJiYXIiICJiYXoiKSkpCisgIChzaG91bGQgKGVxdWFsIChlc2hl bGwtZXZhbC1wcmVkaWNhdGUgJygiZm9vIiAiYmFyIiAiYmF6IiAiZm9vIikgIjp1IikKKyAg ICAgICAgICAgICAgICAgJygiZm9vIiAiYmFyIiAiYmF6IikpKSkKKworKGVydC1kZWZ0ZXN0 IGVtLXByZWQtdGVzdC9tb2RpZmllci1yZXZlcnNlICgpCisgICJUZXN0IHRoYXQgXCI6clwi IHJldmVyc2VzIHRoZSBvcmRlciBvZiBlbGVtZW50cy4iCisgIChzaG91bGQgKGVxdWFsIChl c2hlbGwtZXZhbC1wcmVkaWNhdGUgImZvbyIgIjpSIikgImZvbyIpKQorICAoc2hvdWxkIChl cXVhbCAoZXNoZWxsLWV2YWwtcHJlZGljYXRlICcoImZvbyIgImJhciIgImJheiIpICI6UiIp CisgICAgICAgICAgICAgICAgICcoImJheiIgImJhciIgImZvbyIpKSkpCisKKwwKKzs7IENv bWJpbmF0aW9ucworCisoZXJ0LWRlZnRlc3QgZW0tcHJlZC10ZXN0L2NvbWJpbmUtcHJlZGlj YXRlLWFuZC1tb2RpZmllciAoKQorICAiVGVzdCBjb21iaW5hdGlvbiBvZiBwcmVkaWNhdGVz IGFuZCBtb2RpZmllcnMuIgorICAoZXNoZWxsLXdpdGgtZmlsZS1hdHRyaWJ1dGVzLWZyb20t bmFtZQorICAgIChsZXQgKChmaWxlcyAnKCIvZmFrZS90eXBlPS0uZWwiICIvZmFrZS90eXBl PS0udHh0IiAiL2Zha2UvdHlwZT1zLmVsIgorICAgICAgICAgICAgICAgICAgICIvZmFrZS9z dWJkaXIvdHlwZT0tLmVsIikpKQorICAgICAgKHNob3VsZCAoZXF1YWwgKGVzaGVsbC1ldmFs LXByZWRpY2F0ZSBmaWxlcyAiLjplOnUiKQorICAgICAgICAgICAgICAgICAgICAgJygiZWwi ICJ0eHQiKSkpKSkpCisKKzs7IGVtLXByZWQtdGVzdHMuZWwgZW5kcyBoZXJlCi0tIAoyLjI1 LjEKCg== --------------F7EB05345DF97E50F8E62DEA Content-Type: text/plain; charset=UTF-8; name="0003-Add-G-argument-predicate-in-Eshell.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0003-Add-G-argument-predicate-in-Eshell.patch" RnJvbSBhMzYyNjU4ZjNkZTZjMWRhM2U1NzA5N2Y0YWE1MTA1MjkyOGMxYWJkIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IEZyaSwgMSBBcHIgMjAyMiAyMjowNjowMiAtMDcwMApTdWJqZWN0OiBbUEFU Q0ggMy8zXSBBZGQgJ0cnIGFyZ3VtZW50IHByZWRpY2F0ZSBpbiBFc2hlbGwKCiogbGlzcC9l c2hlbGwvZW0tcHJlZC5lbCAoZXNoZWxsLXByZWRpY2F0ZS1hbGlzdCk6IEFkZCAnRycgcHJl ZGljYXRlLgooZXNoZWxsLXByZWRpY2F0ZS1oZWxwLXN0cmluZyk6IERvY3VtZW50IGl0LgoK KiB0ZXN0L2xpc3AvZXNoZWxsL2VtLXByZWQtdGVzdHMuZWwKKGVtLXByZWQtdGVzdC9wcmVk aWNhdGUtZWZmZWN0aXZlLWdpZCk6IE5ldyB0ZXN0LgoKKiBkb2MvbWlzYy9lc2hlbGwudGV4 dCAoQXJndW1lbnQgUHJlZGljYXRpb24pOiBEb2N1bWVudCAnRycgcHJlZGljYXRlLgotLS0K IGRvYy9taXNjL2VzaGVsbC50ZXhpICAgICAgICAgICAgICB8IDMgKysrCiBsaXNwL2VzaGVs bC9lbS1wcmVkLmVsICAgICAgICAgICAgfCA5ICsrKysrLS0tLQogdGVzdC9saXNwL2VzaGVs bC9lbS1wcmVkLXRlc3RzLmVsIHwgOCArKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxNiBp bnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9taXNjL2Vz aGVsbC50ZXhpIGIvZG9jL21pc2MvZXNoZWxsLnRleGkKaW5kZXggMmQ1N2U0OGVkOC4uNDEx ZTY5NjA2OSAxMDA2NDQKLS0tIGEvZG9jL21pc2MvZXNoZWxsLnRleGkKKysrIGIvZG9jL21p c2MvZXNoZWxsLnRleGkKQEAgLTEyNjYsNiArMTI2Niw5IEBAIEFyZ3VtZW50IFByZWRpY2F0 ZXMKIEBpdGVtIEBzYW1we1V9CiBNYXRjaGVzIGZpbGVzIG93bmVkIGJ5IHRoZSBjdXJyZW50 IGVmZmVjdGl2ZSB1c2VyIElELgogCitAaXRlbSBAc2FtcHtHfQorTWF0Y2hlcyBmaWxlcyBv d25lZCBieSB0aGUgY3VycmVudCBlZmZlY3RpdmUgZ3JvdXAgSUQuCisKIEBpdGVtIEBzYW1w e2xAb3B0aW9ue1srLV19QHZhcntufX0KIE1hdGNoZXMgZmlsZXMgd2l0aCBAdmFye259IGxp bmtzLiAgV2l0aCBAb3B0aW9ueyt9IChvciBAb3B0aW9uey19KSwKIG1hdGNoZXMgZmlsZXMg d2l0aCBtb3JlIHRoYW4gKG9yIGxlc3MgdGhhbikgQHZhcntufSBsaW5rcywKZGlmZiAtLWdp dCBhL2xpc3AvZXNoZWxsL2VtLXByZWQuZWwgYi9saXNwL2VzaGVsbC9lbS1wcmVkLmVsCmlu ZGV4IDhhZmM4NmRkNDEuLmViNTEwOWI4MmQgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2Vt LXByZWQuZWwKKysrIGIvbGlzcC9lc2hlbGwvZW0tcHJlZC5lbApAQCAtODgsMTAgKzg4LDEw IEBAIGVzaGVsbC1wcmVkaWNhdGUtYWxpc3QKICAgICAgICAgICAgIChpZiAoZmlsZS1leGlz dHMtcCBmaWxlKQogICAgICAgICAgICAgICAgICg9IChmaWxlLWF0dHJpYnV0ZS11c2VyLWlk IChmaWxlLWF0dHJpYnV0ZXMgZmlsZSkpCiAgICAgICAgICAgICAgICAgICAgKHVzZXItdWlk KSkpKSkKLSAgICA7OyAoP0cgLiAobGFtYmRhIChmaWxlKSAgICAgICAgICAgICAgIDsgb3du ZWQgYnkgZWZmZWN0aXZlIGdpZAotICAgIDs7ICAgICAgICAgKGlmIChmaWxlLWV4aXN0cy1w IGZpbGUpCi0gICAgOzsgICAgICAgICAgICAgKD0gKGZpbGUtYXR0cmlidXRlLXVzZXItaWQg KGZpbGUtYXR0cmlidXRlcyBmaWxlKSkKLSAgICA7OyAgICAgICAgICAgICAgICAodXNlci11 aWQpKSkpKQorICAgICg/RyAuIChsYW1iZGEgKGZpbGUpICAgICAgICAgICAgICAgOyBvd25l ZCBieSBlZmZlY3RpdmUgZ2lkCisgICAgICAgICAgICAoaWYgKGZpbGUtZXhpc3RzLXAgZmls ZSkKKyAgICAgICAgICAgICAgICAoPSAoZmlsZS1hdHRyaWJ1dGUtZ3JvdXAtaWQgKGZpbGUt YXR0cmlidXRlcyBmaWxlKSkKKyAgICAgICAgICAgICAgICAgICAoZ3JvdXAtZ2lkKSkpKSkK ICAgICAoPyogLiAobGFtYmRhIChmaWxlKQogICAgICAgICAgICAgKGFuZCAoZmlsZS1yZWd1 bGFyLXAgZmlsZSkKICAgICAgICAgICAgICAgICAgKG5vdCAoZmlsZS1zeW1saW5rLXAgZmls ZSkpCkBAIC0xNjEsNiArMTYxLDcgQEAgZXNoZWxsLXByZWRpY2F0ZS1oZWxwLXN0cmluZwog CiBPV05FUlNISVA6CiAgIFUgICAgICAgICAgICAgICBvd25lZCBieSBlZmZlY3RpdmUgdWlk CisgIEcgICAgICAgICAgICAgICBvd25lZCBieSBlZmZlY3RpdmUgZ2lkCiAgIHUoVUlEfFxc PSd1c2VyXFw9JykgICBvd25lZCBieSBVSUQvdXNlcgogICBnKEdJRHxcXD0nZ3JvdXBcXD0n KSAgb3duZWQgYnkgR0lEL2dyb3VwCiAKZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9lc2hlbGwv ZW0tcHJlZC10ZXN0cy5lbCBiL3Rlc3QvbGlzcC9lc2hlbGwvZW0tcHJlZC10ZXN0cy5lbApp bmRleCA3NGRhZDlmOGI4Li5mYmY4OTQ1MjE1IDEwMDY0NAotLS0gYS90ZXN0L2xpc3AvZXNo ZWxsL2VtLXByZWQtdGVzdHMuZWwKKysrIGIvdGVzdC9saXNwL2VzaGVsbC9lbS1wcmVkLXRl c3RzLmVsCkBAIC0yMjUsNiArMjI1LDE0IEBAIGVtLXByZWQtdGVzdC9wcmVkaWNhdGUtZWZm ZWN0aXZlLXVpZAogICAgICAgICAoc2hvdWxkIChlcXVhbCAoZXNoZWxsLWV2YWwtcHJlZGlj YXRlIGZpbGVzICJVIikKICAgICAgICAgICAgICAgICAgICAgICAgJygiL2Zha2UvdWlkPTEi KSkpKSkpKQogCisoZXJ0LWRlZnRlc3QgZW0tcHJlZC10ZXN0L3ByZWRpY2F0ZS1lZmZlY3Rp dmUtZ2lkICgpCisgICJUZXN0IHRoYXQgXCJHXCIgbWF0Y2hlcyBmaWxlcyBvd25lZCBieSB0 aGUgZWZmZWN0aXZlIEdJRC4iCisgIChlc2hlbGwtd2l0aC1maWxlLWF0dHJpYnV0ZXMtZnJv bS1uYW1lCisgICAgKGNsLWxldGYgKCgoc3ltYm9sLWZ1bmN0aW9uICdncm91cC1naWQpIChs YW1iZGEgKCkgMSkpKQorICAgICAgKGxldCAoKGZpbGVzICcoIi9mYWtlL2dpZD0xIiAiL2Zh a2UvZ2lkPTIiKSkpCisgICAgICAgIChzaG91bGQgKGVxdWFsIChlc2hlbGwtZXZhbC1wcmVk aWNhdGUgZmlsZXMgIkciKQorICAgICAgICAgICAgICAgICAgICAgICAnKCIvZmFrZS9naWQ9 MSIpKSkpKSkpCisKIChlcnQtZGVmdGVzdCBlbS1wcmVkLXRlc3QvcHJlZGljYXRlLWxpbmtz ICgpCiAgICJUZXN0IHRoYXQgXCJsXCIgZmlsdGVycyBieSBudW1iZXIgb2YgbGlua3MuIgog ICAoZXNoZWxsLXdpdGgtZmlsZS1hdHRyaWJ1dGVzLWZyb20tbmFtZQotLSAKMi4yNS4xCgo= --------------F7EB05345DF97E50F8E62DEA--