From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ej1-x62d.google.com (mail-ej1-x62d.google.com [IPv6:2a00:1450:4864:20::62d]) by sourceware.org (Postfix) with ESMTPS id F1B87386F41D for ; Fri, 22 Jan 2021 22:36:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org F1B87386F41D Received: by mail-ej1-x62d.google.com with SMTP id r12so9852166ejb.9 for ; Fri, 22 Jan 2021 14:36:43 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ZoCMPV/tvDs14xq8Fv6X42FoSSR4tSEhyL8tzMhmvB0=; b=br4amPmeQUrkW0VFHq3nBm1M4glxENr6OPFaFR/vfjZS5QscPBTdbvpntqQrB+uIpn aU0uaygMC/OGxGskosiH6GFQRPdY26KFkFWeGDi7LubvJzYan2bCdAJZHgVNKgqtwa2B ytlvpoqqSNV5c5TXSeVE3wnPe3dPrUIoPYgexqXEsOwfX99yTOJCwk5QoZ2DJph72pZd 6M19C6x2rCdXCVaXZu6+EXs3e4EjijLm2yuR64RoHn6AzyYQpqUP06ezopkG9mP0847/ ByfDcI2O/DtR0KJekAepGhfYIhfLbB605+NGl+Wi2MXtN2+KVJpWZyaMhzyDlXFWAE6o mCFQ== X-Gm-Message-State: AOAM5304lqNtbeXnW1lhdNyjh1LorRb8NdNGxR8UkSq0alw1Az79ZEX6 F+h0lmr7ThAyI9jL959jot54N4ndEsSvr0HR4ds= X-Google-Smtp-Source: ABdhPJwWANNMCpEDLufz6DhI7noAeSrEPetSccp1jAE1o9vQvUUn/ATtBCqI8V6NVwTf5PwqkGHtO7nhBX3MV7rZsSk= X-Received: by 2002:a17:906:1dc2:: with SMTP id v2mr4546990ejh.136.1611355003099; Fri, 22 Jan 2021 14:36:43 -0800 (PST) MIME-Version: 1.0 References: <8beca582-97eb-3e4c-1437-162ae896f031@redhat.com> <92edd773-5832-6371-4003-d29d1539202a@redhat.com> <5255efef-0df8-a172-2064-1b1050b36909@redhat.com> In-Reply-To: <5255efef-0df8-a172-2064-1b1050b36909@redhat.com> From: Anthony Sharp Date: Fri, 22 Jan 2021 22:36:06 +0000 Message-ID: Subject: Re: [PATCH] c++: private inheritance access diagnostics fix [PR17314] To: Jason Merrill Cc: gcc-patches@gcc.gnu.org Content-Type: multipart/mixed; boundary="0000000000009136ac05b984d2ba" X-Spam-Status: No, score=-9.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 Jan 2021 22:36:47 -0000 --0000000000009136ac05b984d2ba Content-Type: text/plain; charset="UTF-8" Hi Jason, Attached changes. I just edited the patch file directly. Kind regards, Anthony --0000000000009136ac05b984d2ba Content-Type: text/x-patch; charset="US-ASCII"; name="pr17314_v4.patch" Content-Disposition: attachment; filename="pr17314_v4.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kk8v30fb0 RnJvbSA3OTg0MDIwZjE2ZTcxNTAxN2U2MmI4NjM3ZDJlNjljMWFlYzM0NzhhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRob255IFNoYXJwIDxhbnRob255c2hhcnAxNUBnbWFpbC5j b20+CkRhdGU6IFRodSwgMjEgSmFuIDIwMjEgMTU6MjY6MjUgKzAwMDAKU3ViamVjdDogW1BBVENI XSBjKys6IFByaXZhdGUgaW5oZXJpdGFuY2UgYWNjZXNzIGRpYWdub3N0aWNzIGZpeCBbUFIxNzMx NF0KClRoaXMgcGF0Y2ggZml4ZXMgUFIxNzMxNC4gUHJldmlvdXNseSwgd2hlbiBjbGFzcyBDIGF0 dGVtcHRlZAp0byBhY2Nlc3MgbWVtYmVyIGEgZGVjbGFyZWQgaW4gY2xhc3MgQSB0aHJvdWdoIGNs YXNzIEIsIHdoZXJlIGNsYXNzIEIKcHJpdmF0ZWx5IGluaGVyaXRzIGZyb20gQSBhbmQgY2xhc3Mg QyBpbmhlcml0cyBmcm9tIEIsIEdDQyB3b3VsZCBjb3JyZWN0bHkKcmVwb3J0IGFuIGFjY2VzcyB2 aW9sYXRpb24sIGJ1dCB3b3VsZCBlcnJvbmVvdXNseSByZXBvcnQgdGhhdCB0aGUgcmVhc29uIHdh cwpiZWNhdXNlIGEgd2FzICJwcm90ZWN0ZWQiLCB3aGVuIGluIGZhY3QsIGZyb20gdGhlIHBvaW50 IG9mIHZpZXcgb2YgY2xhc3MgQywKaXQgd2FzIHJlYWxseSAicHJpdmF0ZSIuIFRoaXMgcGF0Y2gg dXBkYXRlcyB0aGUgZGlhZ25vc3RpY3MgY29kZSB0byBnZW5lcmF0ZQptb3JlIGNvcnJlY3QgZXJy b3JzIGluIGNhc2VzIG9mIGZhaWxlZCBpbmhlcml0YW5jZSBzdWNoIGFzIHRoZXNlLgoKVGhlIHJl YXNvbiB0aGlzIGJ1ZyBoYXBwZW5lZCB3YXMgYmVjYXVzZSBHQ0Mgd2FzIGV4YW1pbmluZyB0aGUK ZGVjbGFyZWQgYWNjZXNzIG9mIGRlY2wsIGluc3RlYWQgb2YgbG9va2luZyBhdCBpdCBpbiB0aGUK Y29udGV4dCBvZiBjbGFzcyBpbmhlcml0YW5jZS4KCmdjYy9jcC9DaGFuZ2VMb2c6CgoyMDIxLTAx LTIxICBBbnRob255IFNoYXJwICA8YW50aG9ueXNoYXJwMTVAZ21haWwuY29tPgoKCSogY2FsbC5j IChjb21wbGFpbl9hYm91dF9hY2Nlc3MpOiBBbHRlcmVkIGZ1bmN0aW9uLgoJKiBjcC10cmVlLmgg KGNvbXBsYWluX2Fib3V0X2FjY2Vzcyk6IENoYW5nZWQgcGFyYW1ldGVycyBvZiBmdW5jdGlvbi4K CShnZXRfcGFyZW50X3dpdGhfcHJpdmF0ZV9hY2Nlc3MpOiBEZWNsYXJlZCBuZXcgZnVuY3Rpb24u CgkqIHNlYXJjaC5jIChnZXRfcGFyZW50X3dpdGhfcHJpdmF0ZV9hY2Nlc3MpOiBEZWZpbmVkIG5l dyBmdW5jdGlvbi4KCSogc2VtYW50aWNzLmMgKGVuZm9yY2VfYWNjZXNzKTogTW9kaWZpZWQgZnVu Y3Rpb24uCgkqIHR5cGVjay5jIChjb21wbGFpbl9hYm91dF91bnJlY29nbml6ZWRfbWVtYmVyKTog VXBkYXRlZCBmdW5jdGlvbgoJYXJndW1lbnRzIGluIGNvbXBsYWluX2Fib3V0X2FjY2Vzcy4KCmdj Yy90ZXN0c3VpdGUvQ2hhbmdlTG9nOgoKMjAyMS0wMS0yMSAgQW50aG9ueSBTaGFycCAgPGFudGhv bnlzaGFycDE1QGdtYWlsLmNvbT4KCgkqIGcrKy5kZy9sb29rdXAvc2NvcGVkMS5DOiBNb2RpZmll ZCB0ZXN0Y2FzZSB0byBydW4gc3VjY2Vzc2Z1bGx5IHdpdGgKCWNoYW5nZXMuCgkqIGcrKy5kZy90 YzEvZHIxNDIuQzogU2FtZSBhcyBhYm92ZS4KCSogZysrLmRnL3RjMS9kcjUyLkM6IFNhbWUgYXMg YWJvdmUuCgkqIGcrKy5vbGQtZGVqYS9nKysuYnJlbmRhbi92aXNpYmlsaXR5Ni5DOiBTYW1lIGFz IGFib3ZlLgoJKiBnKysub2xkLWRlamEvZysrLmJyZW5kYW4vdmlzaWJpbGl0eTguQzogU2FtZSBh cyBhYm92ZS4KCSogZysrLm9sZC1kZWphL2crKy5qYXNvbi9hY2Nlc3M4LkM6IFNhbWUgYXMgYWJv dmUuCgkqIGcrKy5vbGQtZGVqYS9nKysubGF3L2FjY2VzczQuQzogU2FtZSBhcyBhYm92ZS4KCSog ZysrLm9sZC1kZWphL2crKy5sYXcvdmlzaWJpbGl0eTEyLkM6IFNhbWUgYXMgYWJvdmUuCgkqIGcr Ky5vbGQtZGVqYS9nKysubGF3L3Zpc2liaWxpdHk0LkM6IFNhbWUgYXMgYWJvdmUuCgkqIGcrKy5v bGQtZGVqYS9nKysubGF3L3Zpc2liaWxpdHk4LkM6IFNhbWUgYXMgYWJvdmUuCgkqIGcrKy5vbGQt ZGVqYS9nKysub3RoZXIvYWNjZXNzNC5DOiBTYW1lIGFzIGFib3ZlLgotLS0KIGdjYy9jcC9jYWxs LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDM4ICsrKysrKysrKysrKysrLS0t LS0KIGdjYy9jcC9jcC10cmVlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICst CiBnY2MvY3Avc2VhcmNoLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAzNSArKysr KysrKysrKysrKysrKwogZ2NjL2NwL3NlbWFudGljcy5jICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgMzEgKysrKysrKysrKysrKystCiBnY2MvY3AvdHlwZWNrLmMgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMyArLQogZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvbG9va3VwL3Njb3Bl ZDEuQyAgICAgICAgIHwgIDQgKy0KIGdjYy90ZXN0c3VpdGUvZysrLmRnL3RjMS9kcjE0Mi5DICAg ICAgICAgICAgICB8ICA4ICsrLS0KIGdjYy90ZXN0c3VpdGUvZysrLmRnL3RjMS9kcjUyLkMgICAg ICAgICAgICAgICB8ICA2ICstLQogLi4uL2crKy5vbGQtZGVqYS9nKysuYnJlbmRhbi92aXNpYmls aXR5Ni5DICAgIHwgIDQgKy0KIC4uLi9nKysub2xkLWRlamEvZysrLmJyZW5kYW4vdmlzaWJpbGl0 eTguQyAgICB8ICA0ICstCiAuLi4vZysrLm9sZC1kZWphL2crKy5qYXNvbi9hY2Nlc3M4LkMgICAg ICAgICAgfCAgNSArKy0KIGdjYy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5sYXcvYWNjZXNz NC5DICB8ICA1ICsrLQogLi4uL2crKy5vbGQtZGVqYS9nKysubGF3L3Zpc2liaWxpdHkxMi5DICAg ICAgIHwgIDcgKystLQogLi4uL2crKy5vbGQtZGVqYS9nKysubGF3L3Zpc2liaWxpdHk0LkMgICAg ICAgIHwgIDUgKystCiAuLi4vZysrLm9sZC1kZWphL2crKy5sYXcvdmlzaWJpbGl0eTguQyAgICAg ICAgfCAgNSArKy0KIC4uLi9nKysub2xkLWRlamEvZysrLm90aGVyL2FjY2VzczQuQyAgICAgICAg ICB8ICA0ICstCiAxNiBmaWxlcyBjaGFuZ2VkLCAxMjkgaW5zZXJ0aW9ucygrKSwgMzkgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvZ2NjL2NwL2NhbGwuYyBiL2djYy9jcC9jYWxsLmMKaW5kZXgg YjZlOWYxMjVhZWIuLjE3NWEzZDliNDIxIDEwMDY0NAotLS0gYS9nY2MvY3AvY2FsbC5jCisrKyBi L2djYy9jcC9jYWxsLmMKQEAgLTcxNDIsMjcgKzcxNDIsNDUgQEAgYnVpbGRfb3BfZGVsZXRlX2Nh bGwgKGVudW0gdHJlZV9jb2RlIGNvZGUsIHRyZWUgYWRkciwgdHJlZSBzaXplLAogLyogSXNzdWUg ZGlhZ25vc3RpY3MgYWJvdXQgYSBkaXNhbGxvd2VkIGFjY2VzcyBvZiBERUNMLCB1c2luZyBESUFH X0RFQ0wKICAgIGluIHRoZSBkaWFnbm9zdGljcy4KIAotICAgSWYgSVNTVUVfRVJST1IgaXMgdHJ1 ZSwgdGhlbiBpc3N1ZSBhbiBlcnJvciBhYm91dCB0aGUKLSAgIGFjY2VzcywgZm9sbG93ZWQgYnkg YSBub3RlIHNob3dpbmcgdGhlIGRlY2xhcmF0aW9uLgotICAgT3RoZXJ3aXNlLCBqdXN0IHNob3cg dGhlIG5vdGUuICAqLworICAgSWYgSVNTVUVfRVJST1IgaXMgdHJ1ZSwgdGhlbiBpc3N1ZSBhbiBl cnJvciBhYm91dCB0aGUgYWNjZXNzLCBmb2xsb3dlZAorICAgYnkgYSBub3RlIHNob3dpbmcgdGhl IGRlY2xhcmF0aW9uLiAgT3RoZXJ3aXNlLCBqdXN0IHNob3cgdGhlIG5vdGUuCisKKyAgIERJQUdf REVDTCBhbmQgRElBR19MT0NBVElPTiB3aWxsIGFsbW9zdCBhbHdheXMgYmUgdGhlIHNhbWUuCisg ICBESUFHX0xPQ0FUSU9OIGlzIGp1c3QgYW5vdGhlciBERUNMLiAgTk9fQUNDRVNTX1JFQVNPTiBp cyBhbiBvcHRpb25hbAorICAgcGFyYW1ldGVyIHVzZWQgdG8gc3BlY2lmeSB3aHkgREVDTCB3YXNu J3QgYWNjZXNzaWJsZSAoZS5nLiBha19wcml2YXRlCisgICB3b3VsZCBiZSBiZWNhdXNlIERFQ0wg d2FzIHByaXZhdGUpLiAgSWYgbm90IHVzaW5nIE5PX0FDQ0VTU19SRUFTT04sCisgICB0aGVuIGl0 IG11c3QgYmUgYWtfbm9uZSwgYW5kIHRoZSBhY2Nlc3MgZmFpbHVyZSByZWFzb24gd2lsbCBiZQor ICAgZmlndXJlZCBvdXQgYnkgbG9va2luZyBhdCB0aGUgcHJvdGVjdGlvbiBvZiBERUNMLiAgKi8K IAogdm9pZAotY29tcGxhaW5fYWJvdXRfYWNjZXNzICh0cmVlIGRlY2wsIHRyZWUgZGlhZ19kZWNs LCBib29sIGlzc3VlX2Vycm9yKQorY29tcGxhaW5fYWJvdXRfYWNjZXNzICh0cmVlIGRlY2wsIHRy ZWUgZGlhZ19kZWNsLCB0cmVlIGRpYWdfbG9jYXRpb24sCitib29sIGlzc3VlX2Vycm9yLCBhY2Nl c3Nfa2luZCBub19hY2Nlc3NfcmVhc29uKQogewotICBpZiAoVFJFRV9QUklWQVRFIChkZWNsKSkK KyAgLyogSWYgd2UgaGF2ZSBub3QgYWxyZWFkeSBmaWd1cmVkIG91dCB3aHkgREVDTCBpcyBpbmFj Y2Vzc2libGUuLi4gICovCisgIGlmIChub19hY2Nlc3NfcmVhc29uID09IGFrX25vbmUpCisgICAg eworICAgICAgLyogRXhhbWluZSB0aGUgYWNjZXNzIG9mIERFQ0wgdG8gZmluZCBvdXQgd2h5LiAg Ki8KKyAgICAgIGlmIChUUkVFX1BSSVZBVEUgKGRlY2wpKQorCW5vX2FjY2Vzc19yZWFzb24gPSBh a19wcml2YXRlOworICAgICAgZWxzZSBpZiAoVFJFRV9QUk9URUNURUQgKGRlY2wpKQorCW5vX2Fj Y2Vzc19yZWFzb24gPSBha19wcm90ZWN0ZWQ7CisgICAgfQorCisgIC8qIE5vdyBnZW5lcmF0ZSBh biBlcnJvciBtZXNzYWdlIGRlcGVuZGluZyBvbiBjYWxjdWxhdGVkIGFjY2Vzcy4gICovCisgIGlm IChub19hY2Nlc3NfcmVhc29uID09IGFrX3ByaXZhdGUpCiAgICAgewogICAgICAgaWYgKGlzc3Vl X2Vycm9yKQogCWVycm9yICgiJXEjRCBpcyBwcml2YXRlIHdpdGhpbiB0aGlzIGNvbnRleHQiLCBk aWFnX2RlY2wpOwotICAgICAgaW5mb3JtIChERUNMX1NPVVJDRV9MT0NBVElPTiAoZGlhZ19kZWNs KSwKLQkgICAgICAiZGVjbGFyZWQgcHJpdmF0ZSBoZXJlIik7CisgICAgICBpbmZvcm0gKERFQ0xf U09VUkNFX0xPQ0FUSU9OIChkaWFnX2xvY2F0aW9uKSwgImRlY2xhcmVkIHByaXZhdGUgaGVyZSIp OwogICAgIH0KLSAgZWxzZSBpZiAoVFJFRV9QUk9URUNURUQgKGRlY2wpKQorICBlbHNlIGlmIChu b19hY2Nlc3NfcmVhc29uID09IGFrX3Byb3RlY3RlZCkKICAgICB7CiAgICAgICBpZiAoaXNzdWVf ZXJyb3IpCiAJZXJyb3IgKCIlcSNEIGlzIHByb3RlY3RlZCB3aXRoaW4gdGhpcyBjb250ZXh0Iiwg ZGlhZ19kZWNsKTsKLSAgICAgIGluZm9ybSAoREVDTF9TT1VSQ0VfTE9DQVRJT04gKGRpYWdfZGVj bCksCi0JICAgICAgImRlY2xhcmVkIHByb3RlY3RlZCBoZXJlIik7CisgICAgICBpbmZvcm0gKERF Q0xfU09VUkNFX0xPQ0FUSU9OIChkaWFnX2xvY2F0aW9uKSwgImRlY2xhcmVkIHByb3RlY3RlZCBo ZXJlIik7CiAgICAgfQorICAvKiBDb3VsZG4ndCBmaWd1cmUgb3V0IHdoeSBERUNMIGlzIGluYWNj ZXNpYmxlLCBzbyBqdXN0IHNheSBpdCdzCisgICAgIGluYWNjZXNzaWJsZS4gICovCiAgIGVsc2UK ICAgICB7CiAgICAgICBpZiAoaXNzdWVfZXJyb3IpCmRpZmYgLS1naXQgYS9nY2MvY3AvY3AtdHJl ZS5oIGIvZ2NjL2NwL2NwLXRyZWUuaAppbmRleCA1MTEzOWY0YTRiZS4uZDUzZDk4ZDIyODQgMTAw NjQ0Ci0tLSBhL2djYy9jcC9jcC10cmVlLmgKKysrIGIvZ2NjL2NwL2NwLXRyZWUuaApAQCAtNjQz NCw3ICs2NDM0LDggQEAgY2xhc3MgYWNjZXNzX2ZhaWx1cmVfaW5mbwogICB0cmVlIG1fZGlhZ19k ZWNsOwogfTsKIAotZXh0ZXJuIHZvaWQgY29tcGxhaW5fYWJvdXRfYWNjZXNzCQkodHJlZSwgdHJl ZSwgYm9vbCk7CitleHRlcm4gdm9pZCBjb21wbGFpbl9hYm91dF9hY2Nlc3MJCSh0cmVlLCB0cmVl LCB0cmVlLCBib29sLAorCQkJCQkJICBhY2Nlc3Nfa2luZCk7CiBleHRlcm4gdm9pZCBwdXNoX2Rl ZmFyZ19jb250ZXh0CQkJKHRyZWUpOwogZXh0ZXJuIHZvaWQgcG9wX2RlZmFyZ19jb250ZXh0CQkJ KHZvaWQpOwogZXh0ZXJuIHRyZWUgY29udmVydF9kZWZhdWx0X2FyZwkJCSh0cmVlLCB0cmVlLCB0 cmVlLCBpbnQsCkBAIC03Mjc0LDYgKzcyNzUsNyBAQCBleHRlcm4gdW5zaWduZWQgZ2V0X3BzZXVk b190aW5mb19pbmRleAkJKHRyZWUpOwogZXh0ZXJuIHRyZWUgZ2V0X3BzZXVkb190aW5mb190eXBl CQkodW5zaWduZWQpOwogCiAvKiBpbiBzZWFyY2guYyAqLworZXh0ZXJuIHRyZWUgZ2V0X3BhcmVu dF93aXRoX3ByaXZhdGVfYWNjZXNzIAkodHJlZSBkZWNsLCB0cmVlIGJpbmZvKTsKIGV4dGVybiBi b29sIGFjY2Vzc2libGVfYmFzZV9wCQkJKHRyZWUsIHRyZWUsIGJvb2wpOwogZXh0ZXJuIHRyZWUg bG9va3VwX2Jhc2UgICAgICAgICAgICAgICAgICAgICAgICAgKHRyZWUsIHRyZWUsIGJhc2VfYWNj ZXNzLAogCQkJCQkJIGJhc2Vfa2luZCAqLCB0c3Vic3RfZmxhZ3NfdCk7CmRpZmYgLS1naXQgYS9n Y2MvY3Avc2VhcmNoLmMgYi9nY2MvY3Avc2VhcmNoLmMKaW5kZXggZGQzNzczZGE0ZjcuLjQ2YTdl Y2IxNDRkIDEwMDY0NAotLS0gYS9nY2MvY3Avc2VhcmNoLmMKKysrIGIvZ2NjL2NwL3NlYXJjaC5j CkBAIC0xMjIsNiArMTIyLDQxIEBAIGRmc19sb29rdXBfYmFzZSAodHJlZSBiaW5mbywgdm9pZCAq ZGF0YV8pCiAgIHJldHVybiBOVUxMX1RSRUU7CiB9CiAKKy8qIFRoaXMgZGVhbHMgd2l0aCBidWcg UFIxNzMxNC4KKworICAgREVDTCBpcyBhIGRlY2xhcmF0aW9uIGFuZCBCSU5GTyByZXByZXNlbnRz IGEgY2xhc3MgdGhhdCBoYXMgYXR0ZW1wdGVkIChidXQKKyAgIGZhaWxlZCkgdG8gYWNjZXNzIERF Q0wuCisKKyAgIEV4YW1pbmUgdGhlIHBhcmVudCBiaW5mb3Mgb2YgQklORk8gYW5kIGRldGVybWlu ZSB3aGV0aGVyIGFueSBvZiB0aGVtIGhhZAorICAgcHJpdmF0ZSBhY2Nlc3MgdG8gREVDTC4gIElm IHRoZXkgZGlkLCByZXR1cm4gdGhlIHBhcmVudCBiaW5mby4gIFRoaXMgaGVscHMKKyAgIGluIGZp Z3VyaW5nIG91dCB0aGUgY29ycmVjdCBlcnJvciBtZXNzYWdlIHRvIHNob3cgKGlmIHRoZSBwYXJl bnRzIGhhZAorICAgYWNjZXNzLCBpdCdzIHRoZWlyIGZhdWx0IGZvciBub3QgZ2l2aW5nIHN1ZmZp Y2llbnQgYWNjZXNzIHRvIEJJTkZPKS4KKworICAgSWYgbm8gcGFyZW50cyBoYWQgYWNjZXNzLCBy ZXR1cm4gTlVMTF9UUkVFLiAgKi8KKwordHJlZQorZ2V0X3BhcmVudF93aXRoX3ByaXZhdGVfYWNj ZXNzICh0cmVlIGRlY2wsIHRyZWUgYmluZm8pCit7CisgIC8qIE9ubHkgQklORk9zIHNob3VsZCBj b21lIHRocm91Z2ggaGVyZS4gICovCisgIGdjY19hc3NlcnQgKFRSRUVfQ09ERSAoYmluZm8pID09 IFRSRUVfQklORk8pOworCisgIHRyZWUgYmFzZV9iaW5mbyA9IE5VTExfVFJFRTsKKworICAvKiBJ dGVyYXRlIHRocm91Z2ggaW1tZWRpYXRlIHBhcmVudCBjbGFzc2VzLiAgKi8KKyAgZm9yIChpbnQg aSA9IDA7IEJJTkZPX0JBU0VfSVRFUkFURSAoYmluZm8sIGksIGJhc2VfYmluZm8pOyBpKyspCisg ICAgeworICAgICAgLyogVGhpcyBwYXJlbnQgaGFkIHByaXZhdGUgYWNjZXNzLiAgVGhlcmVmb3Jl IHRoYXQncyB3aHkgQklORk8gY2FuJ3QKKwkgIGFjY2VzcyBERUNMLiAgKi8KKyAgICAgIGlmIChh Y2Nlc3NfaW5fdHlwZSAoQklORk9fVFlQRSAoYmFzZV9iaW5mbyksIGRlY2wpID09IGFrX3ByaXZh dGUpCisJcmV0dXJuIGJhc2VfYmluZm87CisgICAgfQorCisgIC8qIE5vbmUgb2YgdGhlIHBhcmVu dHMgaGFkIGFjY2Vzcy4gIE5vdGU6IGl0J3MgaW1wb3NzaWJsZSBmb3Igb25lIG9mIHRoZQorICAg ICBwYXJlbnRzIHRvIGhhdmUgaGFkIHB1YmxpYyBvciBwcm90ZWN0ZWQgYWNjZXNzIHRvIERFQ0ws IHNpbmNlIHRoZW4KKyAgICAgQklORk8gd291bGQgaGF2ZSBiZWVuIGFibGUgdG8gYWNjZXNzIERF Q0wgdG9vLiAgKi8KKyAgcmV0dXJuIE5VTExfVFJFRTsKK30KKwogLyogUmV0dXJucyB0cnVlIGlm IHR5cGUgQkFTRSBpcyBhY2Nlc3NpYmxlIGluIFQuICAoQkFTRSBpcyBrbm93biB0byBiZQogICAg YSAocG9zc2libHkgbm9uLXByb3BlcikgYmFzZSBjbGFzcyBvZiBULikgIElmIENPTlNJREVSX0xP Q0FMX1AgaXMKICAgIHRydWUsIGNvbnNpZGVyIGFueSBzcGVjaWFsIGFjY2VzcyBvZiB0aGUgY3Vy cmVudCBzY29wZSwgb3IgYWNjZXNzCmRpZmYgLS1naXQgYS9nY2MvY3Avc2VtYW50aWNzLmMgYi9n Y2MvY3Avc2VtYW50aWNzLmMKaW5kZXggMjQ0ZmM3MGQwMmQuLjEzZDE0MzM0ZmRkIDEwMDY0NAot LS0gYS9nY2MvY3Avc2VtYW50aWNzLmMKKysrIGIvZ2NjL2NwL3NlbWFudGljcy5jCkBAIC0zMTYs NyArMzE2LDM2IEBAIGVuZm9yY2VfYWNjZXNzICh0cmVlIGJhc2V0eXBlX3BhdGgsIHRyZWUgZGVj bCwgdHJlZSBkaWFnX2RlY2wsCiAgICAgICBpZiAoZmxhZ19uZXdfaW5oZXJpdGluZ19jdG9ycykK IAlkaWFnX2RlY2wgPSBzdHJpcF9pbmhlcml0aW5nX2N0b3JzIChkaWFnX2RlY2wpOwogICAgICAg aWYgKGNvbXBsYWluICYgdGZfZXJyb3IpCi0JY29tcGxhaW5fYWJvdXRfYWNjZXNzIChkZWNsLCBk aWFnX2RlY2wsIHRydWUpOworCXsKKwkgIC8qIFdlIHdpbGwgdXN1YWxseSB3YW50IHRvIHBvaW50 IHRvIHRoZSBzYW1lIHBsYWNlIGFzCisJICAgICBkaWFnX2RlY2wgYnV0IG5vdCBhbHdheXMuICAq LworCSAgdHJlZSBkaWFnX2xvY2F0aW9uID0gZGlhZ19kZWNsOworCSAgYWNjZXNzX2tpbmQgcGFy ZW50X2FjY2VzcyA9IGFrX25vbmU7CisKKwkgIC8qIFNlZSBpZiBhbnkgb2YgQkFTRVRZUEVfUEFU SCdzIHBhcmVudHMgaGFkIHByaXZhdGUgYWNjZXNzCisJICAgICB0byBERUNMLiAgSWYgdGhleSBk aWQsIHRoYXQgd2lsbCB0ZWxsIHVzIHdoeSB3ZSBkb24ndC4gICovCisJICB0cmVlIHBhcmVudF9i aW5mbyA9IGdldF9wYXJlbnRfd2l0aF9wcml2YXRlX2FjY2VzcyAoZGVjbCwKKwkJCQkJCQkgICAg ICAgYmFzZXR5cGVfcGF0aCk7CisKKwkgIC8qIElmIGEgcGFyZW50IGhhZCBwcml2YXRlIGFjY2Vz cywgdGhlbiB0aGUgZGlhZ25vc3RpYworCSAgICAgbG9jYXRpb24gREVDTCBzaG91bGQgYmUgdGhh dCBvZiB0aGUgcGFyZW50IGNsYXNzLCBzaW5jZSBpdAorCSAgICAgZmFpbGVkIHRvIGdpdmUgc3Vp dGFibGUgYWNjZXNzIGJ5IHVzaW5nIGEgcHJpdmF0ZQorCSAgICAgaW5oZXJpdGFuY2UuICBCdXQg aWYgREVDTCB3YXMgYWN0dWFsbHkgZGVmaW5lZCBpbiB0aGUgcGFyZW50LAorCSAgICAgaXQgd2Fz bid0IHByaXZhdGVseSBpbmhlcml0ZWQsIGFuZCBzbyB3ZSBkb24ndCBuZWVkIHRvIGRvCisJICAg ICB0aGlzLCBhbmQgY29tcGxhaW5fYWJvdXRfYWNjZXNzIHdpbGwgZmlndXJlIG91dCB3aGF0IHRv CisJICAgICBkby4gICovCisJICBpZiAocGFyZW50X2JpbmZvICE9IE5VTExfVFJFRQorCSAgICAg ICYmIChjb250ZXh0X2Zvcl9uYW1lX2xvb2t1cCAoZGVjbCkKKwkJICE9IEJJTkZPX1RZUEUgKHBh cmVudF9iaW5mbykpKQorCSAgICB7CisJICAgICAgZGlhZ19sb2NhdGlvbiA9IFRZUEVfTkFNRSAo QklORk9fVFlQRSAocGFyZW50X2JpbmZvKSk7CisJICAgICAgcGFyZW50X2FjY2VzcyA9IGFrX3By aXZhdGU7CisJICAgIH0KKworCSAgLyogRmluYWxseSwgZ2VuZXJhdGUgYW4gZXJyb3IgbWVzc2Fn ZS4gICovCisJICBjb21wbGFpbl9hYm91dF9hY2Nlc3MgKGRlY2wsIGRpYWdfZGVjbCwgZGlhZ19s b2NhdGlvbiwgdHJ1ZSwKKwkJCQkgcGFyZW50X2FjY2Vzcyk7CisJfQogICAgICAgaWYgKGFmaSkK IAlhZmktPnJlY29yZF9hY2Nlc3NfZmFpbHVyZSAoYmFzZXR5cGVfcGF0aCwgZGVjbCwgZGlhZ19k ZWNsKTsKICAgICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL2djYy9jcC90eXBlY2suYyBi L2djYy9jcC90eXBlY2suYwppbmRleCBjZDU5MmZkNTU4ZS4uMzhhMjYyMjc1NjkgMTAwNjQ0Ci0t LSBhL2djYy9jcC90eXBlY2suYworKysgYi9nY2MvY3AvdHlwZWNrLmMKQEAgLTI5ODAsNyArMjk4 MCw4IEBAIGNvbXBsYWluX2Fib3V0X3VucmVjb2duaXplZF9tZW1iZXIgKHRyZWUgYWNjZXNzX3Bh dGgsIHRyZWUgbmFtZSwKIAkJICAgIFRSRUVfQ09ERSAoYWNjZXNzX3BhdGgpID09IFRSRUVfQklO Rk8KIAkJICAgID8gVFJFRV9UWVBFIChhY2Nlc3NfcGF0aCkgOiBvYmplY3RfdHlwZSwKIAkJICAg IG5hbWUsIGFmaS5nZXRfZGlhZ19kZWNsICgpKTsKLQkgIGNvbXBsYWluX2Fib3V0X2FjY2VzcyAo YWZpLmdldF9kZWNsICgpLCBhZmkuZ2V0X2RpYWdfZGVjbCAoKSwgZmFsc2UpOworCSAgY29tcGxh aW5fYWJvdXRfYWNjZXNzIChhZmkuZ2V0X2RlY2wgKCksIGFmaS5nZXRfZGlhZ19kZWNsICgpLAor CQkJCSBhZmkuZ2V0X2RpYWdfZGVjbCAoKSwgZmFsc2UsIGFrX25vbmUpOwogCX0KICAgICB9CiAg IGVsc2UKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZysrLmRnL2xvb2t1cC9zY29wZWQxLkMg Yi9nY2MvdGVzdHN1aXRlL2crKy5kZy9sb29rdXAvc2NvcGVkMS5DCmluZGV4IDY2M2Y3MThiNzM0 Li4yZjdmNjAzYjQ5ZiAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvbG9va3VwL3Nj b3BlZDEuQworKysgYi9nY2MvdGVzdHN1aXRlL2crKy5kZy9sb29rdXAvc2NvcGVkMS5DCkBAIC00 LDEyICs0LDEyIEBACiBzdHJ1Y3QgQQogewogICBzdGF0aWMgaW50IGkxOwotICBpbnQgaTI7IC8v IHsgZGctbWVzc2FnZSAiZGVjbGFyZWQiIH0KKyAgaW50IGkyOyAKICAgc3RhdGljIHZvaWQgZjEg KCk7CiAgIHZvaWQgZjIgKCk7CiB9OwogCi1zdHJ1Y3QgQjogcHJpdmF0ZSBBIHsgfTsKK3N0cnVj dCBCOiBwcml2YXRlIEEgeyB9OyAvLyB7IGRnLW1lc3NhZ2UgImRlY2xhcmVkIiB9CiBzdHJ1Y3Qg QzogcHVibGljIEIKIHsKICAgdm9pZCBnICgpCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2cr Ky5kZy90YzEvZHIxNDIuQyBiL2djYy90ZXN0c3VpdGUvZysrLmRnL3RjMS9kcjE0Mi5DCmluZGV4 IDJmMDM3MDIzM2U2Li42ZTIxNmRhODlmMCAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nKysu ZGcvdGMxL2RyMTQyLkMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvdGMxL2RyMTQyLkMKQEAg LTIsMTMgKzIsMTMgQEAKIC8vIE9yaWdpbjogR2lvdmFubmkgQmFqbyA8Z2lvdmFubmliYWpvIGF0 IGdjYyBkb3QgZ251IGRvdCBvcmc+CiAvLyBEUjE0MjogSW5qZWN0aW9uLXJlbGF0ZWQgZXJyb3Jz IGluIGFjY2VzcyBleGFtcGxlIAogCi1jbGFzcyBCIHsgICAgICAgICAgICAgICAgIC8vIHsgZGct bWVzc2FnZSAiZGVjbGFyZWQiIH0KK2NsYXNzIEIgeyAgICAgICAgICAgICAgICAgCiBwdWJsaWM6 Ci0gIGludCBtaTsgICAgICAgICAgICAgICAgIC8vIHsgZGctbWVzc2FnZSAiZGVjbGFyZWQiIH0K LSAgc3RhdGljIGludCBzaTsgICAgICAgICAgLy8geyBkZy1tZXNzYWdlICJkZWNsYXJlZCIgfQor ICBpbnQgbWk7ICAgICAgICAgICAgICAgICAKKyAgc3RhdGljIGludCBzaTsgICAgICAgICAgCiB9 OwogCi1jbGFzcyBEOiBwcml2YXRlIEIgeworY2xhc3MgRDogcHJpdmF0ZSBCIHsgLy8geyBkZy1t ZXNzYWdlICJkZWNsYXJlZCIgfQogfTsKIAogY2xhc3MgREQ6IHB1YmxpYyBEIHsKZGlmZiAtLWdp dCBhL2djYy90ZXN0c3VpdGUvZysrLmRnL3RjMS9kcjUyLkMgYi9nY2MvdGVzdHN1aXRlL2crKy5k Zy90YzEvZHI1Mi5DCmluZGV4IDdjZmY4NDcwMjNmLi4xN2I2NDk2OTE2YyAxMDA2NDQKLS0tIGEv Z2NjL3Rlc3RzdWl0ZS9nKysuZGcvdGMxL2RyNTIuQworKysgYi9nY2MvdGVzdHN1aXRlL2crKy5k Zy90YzEvZHI1Mi5DCkBAIC0xNywxMSArMTcsMTEgQEAgc3RydWN0IEIxIDogQiB7fTsKIHN0cnVj dCBCMiA6IEIge307CiAKIHN0cnVjdCBDCi17IC8vIHsgZGctbWVzc2FnZSAiZGVjbGFyZWQiIH0K LSAgdm9pZCBmb28odm9pZCk7Cit7IAorICB2b2lkIGZvbyh2b2lkKTsgCiB9OwogCi1zdHJ1Y3Qg RCA6IHByaXZhdGUgQyB7fTsKK3N0cnVjdCBEIDogcHJpdmF0ZSBDIHt9OyAvLyB7IGRnLW1lc3Nh Z2UgImRlY2xhcmVkIiB9CiAKIHN0cnVjdCBYOiBBLCBCMSwgQjIsIEQKIHsKZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5icmVuZGFuL3Zpc2liaWxpdHk2LkMgYi9n Y2MvdGVzdHN1aXRlL2crKy5vbGQtZGVqYS9nKysuYnJlbmRhbi92aXNpYmlsaXR5Ni5DCmluZGV4 IDNkZmFmN2ZkMGVhLi44ZDZjNmYxMDgwNiAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nKysu b2xkLWRlamEvZysrLmJyZW5kYW4vdmlzaWJpbGl0eTYuQworKysgYi9nY2MvdGVzdHN1aXRlL2cr Ky5vbGQtZGVqYS9nKysuYnJlbmRhbi92aXNpYmlsaXR5Ni5DCkBAIC0zLDkgKzMsOSBAQAogY2xh c3MgYm90dG9tCiB7CiBwdWJsaWM6Ci0gIGludCBiOyAvLyB7IGRnLW1lc3NhZ2UgIiIgfSBwcml2 YXRlCisgIGludCBiOyAKIH07Ci1jbGFzcyBtaWRkbGUgOiBwcml2YXRlIGJvdHRvbQorY2xhc3Mg bWlkZGxlIDogcHJpdmF0ZSBib3R0b20gLy8geyBkZy1tZXNzYWdlICIiIH0gcHJpdmF0ZQogewog cHVibGljOgogICB2b2lkIGZvbyAoKSB7IGI7IH0KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUv ZysrLm9sZC1kZWphL2crKy5icmVuZGFuL3Zpc2liaWxpdHk4LkMgYi9nY2MvdGVzdHN1aXRlL2cr Ky5vbGQtZGVqYS9nKysuYnJlbmRhbi92aXNpYmlsaXR5OC5DCmluZGV4IDNjNDQzYWZlNjc4Li5j MTY1YjA4NzRhMCAxMDA2NDQKLS0tIGEvZ2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysrLmJy ZW5kYW4vdmlzaWJpbGl0eTguQworKysgYi9nY2MvdGVzdHN1aXRlL2crKy5vbGQtZGVqYS9nKysu YnJlbmRhbi92aXNpYmlsaXR5OC5DCkBAIC01LDkgKzUsOSBAQAogY2xhc3MgZm9vCiB7CiBwdWJs aWM6Ci0gIHN0YXRpYyBpbnQgeTsgLy8geyBkZy1tZXNzYWdlICIiIH0gcHJpdmF0ZQorICBzdGF0 aWMgaW50IHk7IAogfTsKLWNsYXNzIGZvbzEgOiBwcml2YXRlIGZvbworY2xhc3MgZm9vMSA6IHBy aXZhdGUgZm9vIC8vIHsgZGctbWVzc2FnZSAiIiB9IHByaXZhdGUKIHsgfTsKIGNsYXNzIGZvbzIg OiBwdWJsaWMgZm9vMQogeyBwdWJsaWM6CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2crKy5v bGQtZGVqYS9nKysuamFzb24vYWNjZXNzOC5DIGIvZ2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEv ZysrLmphc29uL2FjY2VzczguQwppbmRleCA0NDA0ZDhhZDk1ZC4uMGFhODVkMDQ1N2MgMTAwNjQ0 Ci0tLSBhL2djYy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5qYXNvbi9hY2Nlc3M4LkMKKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysrLmphc29uL2FjY2VzczguQwpAQCAtMywx MyArMywxNCBAQAogLy8gRGF0ZTogMjUgSmFuIDE5OTQgMjM6NDE6MzMgLTA1MDAKIC8vIEJ1Zzog ZysrIGZvcmdldHMgYWNjZXNzIGRlY2xzIGFmdGVyIHRoZSBkZWZpbml0aW9uLgogCi1jbGFzcyBp bmggeyAvLyB7IGRnLW1lc3NhZ2UgIiIgfSBpbmFjY2Vzc2libGUKK2NsYXNzIGluaCB7IAogICAg ICAgICBpbnQgYTsKIHByb3RlY3RlZDoKICAgICAgICAgdm9pZCBteWYoaW50KTsKIH07CiAKLWNs YXNzIG1lbCA6IHByaXZhdGUgaW5oIHsKK2NsYXNzIG1lbCA6IHByaXZhdGUgaW5oIC8vIHsgZGct bWVzc2FnZSAiIiB9IGluYWNjZXNzaWJsZQorewogcHJvdGVjdGVkOgogICAgICAgICBpbnQgdDsK IAlpbmg6Om15ZjsgIC8vIHsgZGctd2FybmluZyAiZGVwcmVjYXRlZCIgfQpkaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysrLmxhdy9hY2Nlc3M0LkMgYi9nY2MvdGVzdHN1 aXRlL2crKy5vbGQtZGVqYS9nKysubGF3L2FjY2VzczQuQwppbmRleCA1NDA3MmNlM2IzMi4uNTdm YTI0YTBkZGUgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5sYXcv YWNjZXNzNC5DCisrKyBiL2djYy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5sYXcvYWNjZXNz NC5DCkBAIC02LDEyICs2LDEzIEBACiAvLyBTdWJqZWN0OiAgZysrIDIuNS41IGRvZXNuJ3Qgd2Fy biBhYm91dCBpbmFjY2Vzc2libGUgdmlydHVhbCBiYXNlIGN0b3IKIC8vIE1lc3NhZ2UtSUQ6IDw5 NDAzMDMwMDI0LkFBMDQ1MzRAc2VzLmNvbT4KIAotY2xhc3MgRm9yY2VMZWFmU3RlcmlsZSB7IC8v IHsgZGctbWVzc2FnZSAiIiB9IAorY2xhc3MgRm9yY2VMZWFmU3RlcmlsZSB7IAogICAgIGZyaWVu ZCBjbGFzcyBTdGVyaWxlOwogICAgICAgRm9yY2VMZWFmU3RlcmlsZSgpIHt9IC8vIHsgZGctbWVz c2FnZSAiIiB9IAogfTsKIAotY2xhc3MgU3RlcmlsZSA6IHByaXZhdGUgdmlydHVhbCBGb3JjZUxl YWZTdGVyaWxlIHsKK2NsYXNzIFN0ZXJpbGUgOiBwcml2YXRlIHZpcnR1YWwgRm9yY2VMZWFmU3Rl cmlsZSAvLyB7IGRnLW1lc3NhZ2UgIiIgfSAKK3sKIHB1YmxpYzoKICAgICBTdGVyaWxlKCkge30K ICAgICBTdGVyaWxlKGNvbnN0IGNoYXIqIC8qYmxhaCovKSB7fQpkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nKysub2xkLWRlamEvZysrLmxhdy92aXNpYmlsaXR5MTIuQyBiL2djYy90ZXN0c3Vp dGUvZysrLm9sZC1kZWphL2crKy5sYXcvdmlzaWJpbGl0eTEyLkMKaW5kZXggNTk0NjdiYTdkODAu LjZiN2ZmNzVkMmNhIDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2crKy5vbGQtZGVqYS9nKysu bGF3L3Zpc2liaWxpdHkxMi5DCisrKyBiL2djYy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5s YXcvdmlzaWJpbGl0eTEyLkMKQEAgLTYsMTEgKzYsMTIgQEAKIC8vIFN1YmplY3Q6ICBtZW1iZXIg YWNjZXNzIHJ1bGUgYnVnCiAvLyBNZXNzYWdlLUlEOiA8OTMwNjMwMDUyOC5BQTE3MTg1QGNvZGEu bWVsLmRpdC5DU0lSTy5BVT4KIHN0cnVjdCBhIHsKLSAgaW50IGFhOyAvLyB7IGRnLW1lc3NhZ2Ug IiIgfSBwcml2YXRlCisgIGludCBhYTsgCiAgICAgICAgIH07CiAKLWNsYXNzIGIgOiBwcml2YXRl IGEgewotICAgICAgICB9OworY2xhc3MgYiA6IHByaXZhdGUgYSAvLyB7IGRnLW1lc3NhZ2UgIiIg fSBwcml2YXRlCit7Cit9OwogCiBjbGFzcyBjIDogcHVibGljIGIgewogICAgICAgICBpbnQgeHgo dm9pZCkgeyByZXR1cm4gKGFhKTsgfSAgLy8gYWEgc2hvdWxkIGJlIGludmlzaWJsZS8vIHsgZGct ZXJyb3IgIiIgfSAuKgpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysr Lmxhdy92aXNpYmlsaXR5NC5DIGIvZ2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysrLmxhdy92 aXNpYmlsaXR5NC5DCmluZGV4IDFjZGVjMWMyYjU1Li42NDQxNTRlNjZmYiAxMDA2NDQKLS0tIGEv Z2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysrLmxhdy92aXNpYmlsaXR5NC5DCisrKyBiL2dj Yy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5sYXcvdmlzaWJpbGl0eTQuQwpAQCAtOCwxMCAr OCwxMSBAQAogCiBjbGFzcyBBIHsKIHB1YmxpYzoKLSAgICAgaW50IGI7IC8vIHsgZGctbWVzc2Fn ZSAiIiB9IHByaXZhdGUKKyAgICAgaW50IGI7IAogfTsKIAotY2xhc3MgQyA6IHByaXZhdGUgQSB7 ICAgICAgICAgICAgICAgICAgIC8vIE5PVEUgV0VMTC4gcHJpdmF0ZSwgbm90IHB1YmxpYworY2xh c3MgQyA6IHByaXZhdGUgQSAvLyB7IGRnLW1lc3NhZ2UgIiIgfSBwcml2YXRlCit7ICAgICAgICAg ICAgICAgICAgIAogcHVibGljOgogICAgICAgICBpbnQgZDsKIH07CmRpZmYgLS1naXQgYS9nY2Mv dGVzdHN1aXRlL2crKy5vbGQtZGVqYS9nKysubGF3L3Zpc2liaWxpdHk4LkMgYi9nY2MvdGVzdHN1 aXRlL2crKy5vbGQtZGVqYS9nKysubGF3L3Zpc2liaWxpdHk4LkMKaW5kZXggNTI0MmRmYzgwNGYu LjQ0NTdkZGY0NmM3IDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2crKy5vbGQtZGVqYS9nKysu bGF3L3Zpc2liaWxpdHk4LkMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysrLmxh dy92aXNpYmlsaXR5OC5DCkBAIC03LDExICs3LDEyIEBACiAvLyBNZXNzYWdlLUlEOiA8bTBub2Yz RS0wMDIxaWZDQGp0cy5jb20KIGNsYXNzIHQxIHsKIHByb3RlY3RlZDoKLSAgICBpbnQgYTsgLy8g eyBkZy1tZXNzYWdlICIiIH0gcHJvdGVjdGVkCisgICAgaW50IGE7IAogfTsKIAogCi1jbGFzcyB0 MiA6IHByaXZhdGUgdDEgeworY2xhc3MgdDIgOiBwcml2YXRlIHQxIC8vIHsgZGctbWVzc2FnZSAi IiB9IHByb3RlY3RlZAoreyAKIHB1YmxpYzoKICAgICBpbnQgYjsKIH07CmRpZmYgLS1naXQgYS9n Y2MvdGVzdHN1aXRlL2crKy5vbGQtZGVqYS9nKysub3RoZXIvYWNjZXNzNC5DIGIvZ2NjL3Rlc3Rz dWl0ZS9nKysub2xkLWRlamEvZysrLm90aGVyL2FjY2VzczQuQwppbmRleCBkM2M4ZDg1YzNmNS4u NmM0NzcwMGRiMTkgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZysrLm9sZC1kZWphL2crKy5v dGhlci9hY2Nlc3M0LkMKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nKysub2xkLWRlamEvZysrLm90aGVy L2FjY2VzczQuQwpAQCAtMSwxMCArMSwxMCBAQAogLy8geyBkZy1kbyBhc3NlbWJsZSAgfQogCi1z dHJ1Y3QgQSB7IC8vIHsgZGctbWVzc2FnZSAiIiB9IGluYWNjZXNzaWJsZQorc3RydWN0IEEgeyAK ICAgc3RhdGljIGludCBpOwogfTsKIAotc3RydWN0IEIgOiBwcml2YXRlIEEgeyB9Oworc3RydWN0 IEIgOiBwcml2YXRlIEEgeyB9OyAvLyB7IGRnLW1lc3NhZ2UgIiIgfSBpbmFjY2Vzc2libGUKIAog c3RydWN0IEMgOiBwdWJsaWMgQiB7CiAgIGludCBmICgpIHsgcmV0dXJuIEE6Omk7IH0gLy8geyBk Zy1lcnJvciAiIiB9IGNvbnRleHQKLS0gCjIuMjUuMQoK --0000000000009136ac05b984d2ba--