From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Denis Zubarev Newsgroups: gmane.emacs.bugs Subject: bug#67061: [PATCH] Improve syntax highlighting for python-ts-mode Date: Sat, 30 Dec 2023 13:53:38 +0300 Message-ID: <124811703927449@mail.yandex.ru> References: <8734xdni6y.fsf@yandex.ru> <831qcwycbj.fsf@gnu.org> <83v8a3qh6m.fsf@gnu.org> <834jhadvkt.fsf@gnu.org> <7aee7e42-c07d-9131-18a9-4806f07d4267@gutov.dev> <83a5qw7izt.fsf@gnu.org> <172531702081590@mail.yandex.ru> <212931702208489@mail.yandex.ru> <0c6e2e14-b494-a8cb-3893-ffb39577baf9@gutov.dev> <7b17c99d-6e4b-43b3-af93-993901a3a4ea@gmail.com> <95071702343720@mail.yandex.ru> <78ffdcf3-e322-49ea-a0d5-d0485ade9e73@gmail.com> <7371702772641@mail.yandex.ru> <8915940C-F69C-4CAE-80E8-4F70C5753061@gmail.com> <240311702778783@mail.yandex.ru> <83h6k9dzl6.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----==--bound.31493.ajvwwkfnk4mrpgm2.vla.yp-c.yandex.net" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="25074"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "dmitry@gutov.dev" , "casouri@gmail.com" , "67061@debbugs.gnu.org" <67061@debbugs.gnu.org> To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Dec 30 11:54:26 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rJWz3-0006Jq-N4 for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 30 Dec 2023 11:54:25 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rJWyh-0002vw-Sx; Sat, 30 Dec 2023 05:54:03 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rJWyf-0002vY-V8 for bug-gnu-emacs@gnu.org; Sat, 30 Dec 2023 05:54:01 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rJWyf-0004VP-Mo for bug-gnu-emacs@gnu.org; Sat, 30 Dec 2023 05:54:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rJWyg-0000Ev-3k for bug-gnu-emacs@gnu.org; Sat, 30 Dec 2023 05:54:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Denis Zubarev Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 30 Dec 2023 10:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 67061 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 67061-submit@debbugs.gnu.org id=B67061.1703933633905 (code B ref 67061); Sat, 30 Dec 2023 10:54:02 +0000 Original-Received: (at 67061) by debbugs.gnu.org; 30 Dec 2023 10:53:53 +0000 Original-Received: from localhost ([127.0.0.1]:43142 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rJWyV-0000EW-FR for submit@debbugs.gnu.org; Sat, 30 Dec 2023 05:53:52 -0500 Original-Received: from forward102a.mail.yandex.net ([2a02:6b8:c0e:500:1:45:d181:d102]:55140) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rJWyS-0000EE-DU for 67061@debbugs.gnu.org; Sat, 30 Dec 2023 05:53:50 -0500 Original-Received: from mail-nwsmtp-mxback-production-main-63.vla.yp-c.yandex.net (mail-nwsmtp-mxback-production-main-63.vla.yp-c.yandex.net [IPv6:2a02:6b8:c1d:6294:0:640:ff91:0]) by forward102a.mail.yandex.net (Yandex) with ESMTP id B505F608F2; Sat, 30 Dec 2023 13:53:39 +0300 (MSK) Original-Received: from mail.yandex.ru (2a02:6b8:c0d:33a1:0:640:612:0 [2a02:6b8:c0d:33a1:0:640:612:0]) by mail-nwsmtp-mxback-production-main-63.vla.yp-c.yandex.net (mxback/Yandex) with HTTP id ZrUUU7BOvuQ0-0GcnhFyE; Sat, 30 Dec 2023 13:53:39 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1703933619; bh=FkEqce+9K1KnnxMSTiUuHV2Gt71H3Kp/0R+0NuHojqM=; h=Message-Id:References:Date:Cc:Subject:In-Reply-To:To:From; b=Cj5I27VVpslOvwCtQueSIQ9/wQ9/kWzBsOvVc80gLFozgDNaSfZ8yieFAAgCtG1iG fRRQGotSHeEvFEIeqUziJvTJesb4JpSsezZSVbFNqupX4tXCYiJdTum7IEncEz7Zbp sB+J7ABYfvo5D6PThiDVhFYdwEH0gTiVE8X7ZFWI= Authentication-Results: mail-nwsmtp-mxback-production-main-63.vla.yp-c.yandex.net; dkim=pass header.i=@yandex.ru Original-Received: by ajvwwkfnk4mrpgm2.vla.yp-c.yandex.net with HTTP; Sat, 30 Dec 2023 13:53:38 +0300 In-Reply-To: <83h6k9dzl6.fsf@gnu.org> X-Mailer: Yamail [ http://yandex.ru ] 5.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:277076 Archived-At: ------==--bound.31493.ajvwwkfnk4mrpgm2.vla.yp-c.yandex.net Content-Transfer-Encoding: base64 Content-Type: text/html; charset=utf-8 PGRpdj48ZGl2Pkl0IHNlZW1zLCB0aGVyZSBpcyBubyBjb25zZW5zdXMgYWJvdXQgbmV3IHZhcmlh YmxlLWRlZmluaXRpb24gZmVhdHVyZS4gU28gSSByZW1vdmVkIGl0IGZyb20gdGhpcyBwYXRjaC48 L2Rpdj48ZGl2PkxhdGVyIEkgd2lsbCBzZW5kIGEgbmV3IHBhdGNoIGZvciBkaXNjdXNzaW5nIGl0 LjwvZGl2PjxkaXY+wqA8L2Rpdj48ZGl2PkkgcmViYXNlZCBvbiB0aGUgbGF0ZXN0IGVtYWNzLTI5 IGFuZCBhbHNvIGZpeGVkIGEgdGVzdCB0aGF0IGZhaWxlZCBvbiB0aGlzIGJyYW5jaC48L2Rpdj48 ZGl2PlBsZWFzZSBmaW5kIHRoZSBwYXRjaCBpbiB0aGUgYXR0YWNobWVudC48L2Rpdj48L2Rpdj48 ZGl2PsKgPC9kaXY+PGRpdj4yMy4xMi4yMDIzLCAxMjo0MiwgIkVsaSBaYXJldHNraWkiICZsdDtl bGl6QGdudS5vcmcmZ3Q7OjwvZGl2PjxibG9ja3F1b3RlPjxibG9ja3F1b3RlPsKgRnJvbTogRGVu aXMgWnViYXJldiAmbHQ7PGEgaHJlZj0ibWFpbHRvOmR2enViYXJldkB5YW5kZXgucnUiIHJlbD0i bm9vcGVuZXIgbm9yZWZlcnJlciI+ZHZ6dWJhcmV2QHlhbmRleC5ydTwvYT4mZ3Q7PGJyIC8+wqBD YzogRG1pdHJ5IEd1dG92ICZsdDs8YSBocmVmPSJtYWlsdG86ZG1pdHJ5QGd1dG92LmRldiIgcmVs PSJub29wZW5lciBub3JlZmVycmVyIj5kbWl0cnlAZ3V0b3YuZGV2PC9hPiZndDssPGJyIC8+wqDC oMKgwqDCoMKgwqDCoMKgRWxpIFphcmV0c2tpaSAmbHQ7PGEgaHJlZj0ibWFpbHRvOmVsaXpAZ251 Lm9yZyIgcmVsPSJub29wZW5lciBub3JlZmVycmVyIj5lbGl6QGdudS5vcmc8L2E+Jmd0Oyw8YnIg Lz7CoMKgwqDCoMKgwqDCoMKgwqAiPGEgaHJlZj0ibWFpbHRvOjY3MDYxQGRlYmJ1Z3MuZ251Lm9y ZyIgcmVsPSJub29wZW5lciBub3JlZmVycmVyIj42NzA2MUBkZWJidWdzLmdudS5vcmc8L2E+IiAm bHQ7PGEgaHJlZj0ibWFpbHRvOjY3MDYxQGRlYmJ1Z3MuZ251Lm9yZyIgcmVsPSJub29wZW5lciBu b3JlZmVycmVyIj42NzA2MUBkZWJidWdzLmdudS5vcmc8L2E+Jmd0OzxiciAvPsKgRGF0ZTogU3Vu LCAxNyBEZWMgMjAyMyAwNTowNzowMSArMDMwMDxiciAvPsKgPGJyIC8+wqAmZ3Q7IFRoYW5rcy4g SSB0aGluayB0aGUgb25seSB0aGluZyB0aGF04oCZcyBzdGlsbCB1cCB0byBkaXNjdXNzaW9uIGlz IHRoZSB2YXJpYWJsZS1kZWZpbml0aW9uIHJ1bGVzLiBPdGhlcnMgY2FuPGJyIC8+wqBiZSBtZXJn ZWQgdG8gZW1hY3MtMjkuPGJyIC8+wqDCoDxiciAvPsKgSSBjYW4gZXh0cmFjdCBwYXJ0IHdpdGgg dmFyaWFibGUtZGVmaW5pdGlvbiBpbnRvIHRoZSBuZXh0IHBhdGNoLjxiciAvPsKgSW4gY2FzZSBp dCBpcyBvaywgSSBhdHRhY2hlZCBwYXRjaCB3aXRob3V0IG5ldyB2YXJpYWJsZS1kZWZpbml0aW9u IGZlYXR1cmUuPC9ibG9ja3F1b3RlPjxwPjxiciAvPlRoYW5rcywgYnV0IGl0IGRvZXNuJ3QgYXBw bHkgY2xlYW5seSB0byB0aGUgY3VycmVudCBlbWFjcy0yOSBicmFuY2guPGJyIC8+V291bGQgeW91 IG1pbmQgcGxlYXNlIHJlYmFzaW5nIHRoZSBwYXRjaCBvbiB0aGUgZW1hY3MtMjkgYnJhbmNoIGFu ZDxiciAvPnJlc3VibWl0dGluZyBpdD88L3A+PC9ibG9ja3F1b3RlPg== ------==--bound.31493.ajvwwkfnk4mrpgm2.vla.yp-c.yandex.net Content-Disposition: attachment; filename="0008-Improve-syntax-highlighting-for-python-ts-mode.patch" Content-Transfer-Encoding: base64 Content-Type: text/x-diff; name="0008-Improve-syntax-highlighting-for-python-ts-mode.patch" RnJvbSBiN2ExNzA2NzNlMjZlOWNmMmQwNDkxMDdhNzJjZTZkZjBhOGEyMzBlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEZW5pcyBadWJhcmV2IDxkdnp1YmFyZXZAeWFuZGV4LnJ1PgpE YXRlOiBTYXQsIDExIE5vdiAyMDIzIDA0OjU1OjQ0ICswMzAwClN1YmplY3Q6IFtQQVRDSF0gSW1w cm92ZSBzeW50YXggaGlnaGxpZ2h0aW5nIGZvciBweXRob24tdHMtbW9kZQoKRml4IGZvbnRpZmlj YXRpb24gb2Ygc3RyaW5ncyBpbnNpZGUgb2YgZi1zdHJpbmdzIGludGVycG9sYXRpb24sIGUuZy4g Zm9yCmYiYmVnIHsnbmVzdGVkJ30iIC0gJ25lc3RlZCcgd2FzIG5vdCBmb250aWZpZWQgYXMgc3Ry aW5nLiAgRG8gbm90Cm92ZXJyaWRlIHRoZSBmYWNlIG9mIGJ1aWx0aW4gZnVuY3Rpb25zIChhbGws IGJ5dGVzIGV0Yy4pIHdpdGggdGhlCmZ1bmN0aW9uIGNhbGwgZmFjZS4gIEFkZCBtaXNzaW5nIGFz c2lnbm1lbnQgZXhwcmVzc2lvbnMgKDo9ICo9KS4KRm9udGlmeSBidWlsdC1pbnMgKGRpY3QsbGlz dCxldGMuKSBhcyB0eXBlcyB3aGVuIHRoZXkgYXJlIHVzZWQgaW4gdHlwZQpoaW50cy4gIEhpZ2hs aWdodCB1bmlvbiB0eXBlcyAodHlwZTF8dHlwZTIpLiAgSGlnaGxpZ2h0IGJhc2UgY2xhc3MgbmFt ZXMKaW4gdGhlIGNsYXNzIGRlZmluaXRpb24uICBGb250aWZ5IGNsYXNzIHBhdHRlcm5zIGluIGNh c2Ugc3RhdGVtZW50cy4KSGlnaGxpZ2h0IHRoZSBzZWNvbmQgYXJndW1lbnQgYXMgYSB0eXBlIGlu IGlzaW5zdGFuY2UvaXNzdWJjbGFzcyBjYWxsLgpIaWdobGlnaHQgZG90dGVkIGRlY29yYXRvciBu YW1lcy4KCiogbGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsIChweXRob24tLXRyZWVzaXQta2V5d29y ZHMpOiBBZGQgY29tcG91bmQKa2V5d29yZCAiaXMgbm90Ii4KKHB5dGhvbi0tdHJlZXNpdC1idWls dGluLXR5cGVzKTogTmV3IHZhcmlhYmxlIHRoYXQgc3RvcmVzIGFsbCBweXRob24KYnVpbHQtaW4g dHlwZXMuCihweXRob24tLXRyZWVzaXQtdHlwZS1yZWdleCk6IE5ldyB2YXJpYWJsZS4gUmVnZXgg bWF0Y2hlcyBpZiB0ZXh0IGlzIGVpdGhlcgpidWlsdC1pbiB0eXBlIG9yIHRleHQgc3RhcnRzIHdp dGggY2FwaXRhbCBsZXR0ZXIuCihweXRob24tLXRyZWVzaXQtYnVpbHRpbnMpOiBFeHRyYWN0IGJ1 aWx0LWluIHR5cGVzIHRvIG90aGVyIHZhcmlhYmxlLgoocHl0aG9uLS10cmVlc2l0LWZvbnRpZnkt c3RyaW5nKTogZml4IGYtc3RyaW5nIGludGVycG9sYXRpb24uIEVuYWJsZQppbnRlcnBvbGF0aW9u IGhpZ2hsaWdodGluZyBvbmx5IGlmIHN0cmluZy1pbnRlcnBvbGF0aW9uIGlzIHByZXNlbnRlZCBv bgp0aGUgZW5hYmxlZCBsZXZlbHMgb2YgdHJlZXNpdC1mb250LWxvY2stZmVhdHVyZS1saXN0Lgoo cHl0aG9uLS10cmVlc2l0LWZvbnRpZnktc3RyaW5nLWludGVycG9sYXRpb24pOiBSZW1vdmUgZnVu Y3Rpb24uCihweXRob24tLXRyZWVzaXQtZm9udGlmeS11bmlvbi10eXBlcyk6IEZvbnRpZnkgbmVz dGVkIHVuaW9uIHR5cGVzLgoocHl0aG9uLS10cmVlc2l0LWZvbnRpZnktdW5pb24tdHlwZXMtc3Ry aWN0KTogRm9udGlmeSBuZXN0ZWQgdW5pb24KdHlwZXMsIG9ubHkgaWYgdHlwZSBpZGVudGlmaWVy IG1hdGNoZXMgYWdhaW5zdApweXRob24tLXRyZWVzaXQtdHlwZS1yZWdleC4KKHB5dGhvbi0tdHJl ZXNpdC1mb250aWZ5LWRvdHRlZC1kZWNvcmF0b3IpOiBGb250aWZ5IGFsbCBwYXJ0cyBvZgpkb3R0 ZWQgZGVjb3JhdG9yIG5hbWUuCihweXRob24tLXRyZWVzaXQtc2V0dGluZ3MpOiBDaGFuZ2UvYWRk IHJ1bGVzLgoqIHRlc3QvbGlzcC9wcm9nbW9kZXMvcHl0aG9uLXRlc3RzLmVsIChweXRob24tdHMt dGVzdHMtd2l0aC10ZW1wLWJ1ZmZlcik6CmZ1bmN0aW9uIGZvciBzZXR0aW5nIHVwIHRlc3QgYnVm ZmVyLgoocHl0aG9uLXRzLW1vZGUtY29tcG91bmQta2V5d29yZHMtZmFjZSkKKHB5dGhvbi10cy1t b2RlLW5hbWVkLWFzc2lnbmVtZW50LWZhY2UtMSkKKHB5dGhvbi10cy1tb2RlLWFzc2lnbmVtZW50 LWZhY2UtMikKKHB5dGhvbi10cy1tb2RlLW5lc3RlZC10eXBlcy1mYWNlLTEpCihweXRob24tdHMt bW9kZS11bmlvbi10eXBlcy1mYWNlLTEpCihweXRob24tdHMtbW9kZS11bmlvbi10eXBlcy1mYWNl LTIpCihweXRob24tdHMtbW9kZS10eXBlcy1mYWNlLTEpCihweXRob24tdHMtbW9kZS10eXBlcy1m YWNlLTIpCihweXRob24tdHMtbW9kZS10eXBlcy1mYWNlLTMpCihweXRob24tdHMtbW9kZS1pc2lu c3RhbmNlLXR5cGUtZmFjZS0xKQoocHl0aG9uLXRzLW1vZGUtaXNpbnN0YW5jZS10eXBlLWZhY2Ut MikKKHB5dGhvbi10cy1tb2RlLWlzaW5zdGFuY2UtdHlwZS1mYWNlLTMpCihweXRob24tdHMtbW9k ZS1zdXBlcmNsYXNzLXR5cGUtZmFjZSkKKHB5dGhvbi10cy1tb2RlLWNsYXNzLXBhdHRlcm5zLWZh Y2UpCihweXRob24tdHMtbW9kZS1kb3R0ZWQtZGVjb3JhdG9yLWZhY2UtMSkKKHB5dGhvbi10cy1t b2RlLWRvdHRlZC1kZWNvcmF0b3ItZmFjZS0yKQoocHl0aG9uLXRzLW1vZGUtYnVpbHRpbi1jYWxs LWZhY2UpCihweXRob24tdHMtbW9kZS1pbnRlcnBvbGF0aW9uLW5lc3RlZC1zdHJpbmcpCihweXRo b24tdHMtbW9kZS1kaXNhYmxlZC1zdHJpbmctaW50ZXJwb2xhdGlvbikKKHB5dGhvbi10cy1tb2Rl LWludGVycG9sYXRpb24tZG9jLXN0cmluZyk6IEFkZCB0ZXN0cy4KLS0tCiBsaXNwL3Byb2dtb2Rl cy9weXRob24uZWwgICAgICAgICAgICB8IDI0MCArKysrKysrKysrKysrKysrLS0tLS0tCiB0ZXN0 L2xpc3AvcHJvZ21vZGVzL3B5dGhvbi10ZXN0cy5lbCB8IDMwMiArKysrKysrKysrKysrKysrKysr KysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDQ4MCBpbnNlcnRpb25zKCspLCA2MiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9saXNwL3Byb2dtb2Rlcy9weXRob24uZWwgYi9saXNwL3Byb2dt b2Rlcy9weXRob24uZWwKaW5kZXggZDcyNTAxNDhmYS4uZjVmODlhZDU1MiAxMDA2NDQKLS0tIGEv bGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsCisrKyBiL2xpc3AvcHJvZ21vZGVzL3B5dGhvbi5lbApA QCAtOTY5LDE5ICs5NjksMzAgQEAgcHl0aG9uLS10cmVlc2l0LWtleXdvcmRzCiAgICAgInJhaXNl IiAicmV0dXJuIiAidHJ5IiAid2hpbGUiICJ3aXRoIiAieWllbGQiCiAgICAgOzsgVGhlc2UgYXJl IHRlY2huaWNhbGx5IG9wZXJhdG9ycywgYnV0IHdlIGZvbnRpZnkgdGhlbSBhcwogICAgIDs7IGtl eXdvcmRzLgotICAgICJhbmQiICJpbiIgImlzIiAibm90IiAib3IiICJub3QgaW4iKSkKKyAgICAi YW5kIiAiaW4iICJpcyIgIm5vdCIgIm9yIiAibm90IGluIiAiaXMgbm90IikpCisKKyhkZWZ2YXIg cHl0aG9uLS10cmVlc2l0LWJ1aWx0aW4tdHlwZXMKKyAgJygiaW50IiAiZmxvYXQiICJjb21wbGV4 IiAiYm9vbCIgImxpc3QiICJ0dXBsZSIgInJhbmdlIiAic3RyIgorICAgICJieXRlcyIgImJ5dGVh cnJheSIgIm1lbW9yeXZpZXciICJzZXQiICJmcm96ZW5zZXQiICJkaWN0IikpCisKKyhkZWZ2YXIg cHl0aG9uLS10cmVlc2l0LXR5cGUtcmVnZXgKKyAgKHJ4LXRvLXN0cmluZyBgKHNlcSBib2wgKG9y CisgICAgICAgICAgICAgICAgICAgICAgICAgICAsQHB5dGhvbi0tdHJlZXNpdC1idWlsdGluLXR5 cGVzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VxICg/ICAiXyIpIChhbnkgIkEtWiIp ICgrIChhbnkgImEtekEtWl8wLTkiKSkpKQorICAgICAgICAgICAgICAgICAgZW9sKSkpCiAKIChk ZWZ2YXIgcHl0aG9uLS10cmVlc2l0LWJ1aWx0aW5zCi0gICcoImFicyIgImFsbCIgImFueSIgImFz Y2lpIiAiYmluIiAiYm9vbCIgImJyZWFrcG9pbnQiICJieXRlYXJyYXkiCi0gICAgImJ5dGVzIiAi Y2FsbGFibGUiICJjaHIiICJjbGFzc21ldGhvZCIgImNvbXBpbGUiICJjb21wbGV4IgotICAgICJk ZWxhdHRyIiAiZGljdCIgImRpciIgImRpdm1vZCIgImVudW1lcmF0ZSIgImV2YWwiICJleGVjIgot ICAgICJmaWx0ZXIiICJmbG9hdCIgImZvcm1hdCIgImZyb3plbnNldCIgImdldGF0dHIiICJnbG9i YWxzIgotICAgICJoYXNhdHRyIiAiaGFzaCIgImhlbHAiICJoZXgiICJpZCIgImlucHV0IiAiaW50 IiAiaXNpbnN0YW5jZSIKLSAgICAiaXNzdWJjbGFzcyIgIml0ZXIiICJsZW4iICJsaXN0IiAibG9j YWxzIiAibWFwIiAibWF4IgotICAgICJtZW1vcnl2aWV3IiAibWluIiAibmV4dCIgIm9iamVjdCIg Im9jdCIgIm9wZW4iICJvcmQiICJwb3ciCi0gICAgInByaW50IiAicHJvcGVydHkiICJyYW5nZSIg InJlcHIiICJyZXZlcnNlZCIgInJvdW5kIiAic2V0IgotICAgICJzZXRhdHRyIiAic2xpY2UiICJz b3J0ZWQiICJzdGF0aWNtZXRob2QiICJzdHIiICJzdW0iICJzdXBlciIKLSAgICAidHVwbGUiICJ0 eXBlIiAidmFycyIgInppcCIgIl9faW1wb3J0X18iKSkKKyAgKGFwcGVuZCBweXRob24tLXRyZWVz aXQtYnVpbHRpbi10eXBlcworICAgICAgICAgICcoImFicyIgImFsbCIgImFueSIgImFzY2lpIiAi YmluIiAiYnJlYWtwb2ludCIKKyAgICAgICAgICAgICJjYWxsYWJsZSIgImNociIgImNsYXNzbWV0 aG9kIiAiY29tcGlsZSIKKyAgICAgICAgICAgICJkZWxhdHRyIiAiZGlyIiAiZGl2bW9kIiAiZW51 bWVyYXRlIiAiZXZhbCIgImV4ZWMiCisgICAgICAgICAgICAiZmlsdGVyIiAiZm9ybWF0IiAiZ2V0 YXR0ciIgImdsb2JhbHMiCisgICAgICAgICAgICAiaGFzYXR0ciIgImhhc2giICJoZWxwIiAiaGV4 IiAiaWQiICJpbnB1dCIgImlzaW5zdGFuY2UiCisgICAgICAgICAgICAiaXNzdWJjbGFzcyIgIml0 ZXIiICJsZW4iICJsb2NhbHMiICJtYXAiICJtYXgiCisgICAgICAgICAgICAibWluIiAibmV4dCIg Im9iamVjdCIgIm9jdCIgIm9wZW4iICJvcmQiICJwb3ciCisgICAgICAgICAgICAicHJpbnQiICJw cm9wZXJ0eSIgInJlcHIiICJyZXZlcnNlZCIgInJvdW5kIgorICAgICAgICAgICAgInNldGF0dHIi ICJzbGljZSIgInNvcnRlZCIgInN0YXRpY21ldGhvZCIgInN1bSIgInN1cGVyIgorICAgICAgICAg ICAgInR5cGUiICJ2YXJzIiAiemlwIiAiX19pbXBvcnRfXyIpKSkKIAogKGRlZnZhciBweXRob24t LXRyZWVzaXQtY29uc3RhbnRzCiAgICcoIkVsbGlwc2lzIiAiRmFsc2UiICJOb25lIiAiTm90SW1w bGVtZW50ZWQiICJUcnVlIiAiX19kZWJ1Z19fIgpAQCAtMTAzMiw5ICsxMDQzLDcgQEAgcHl0aG9u LS10cmVlc2l0LWZvbnRpZnktc3RyaW5nCiBmLXN0cmluZ3MuICBPVkVSUklERSBpcyB0aGUgb3Zl cnJpZGUgZmxhZyBkZXNjcmliZWQgaW4KIGB0cmVlc2l0LWZvbnQtbG9jay1ydWxlcycuICBTVEFS VCBhbmQgRU5EIG1hcmsgdGhlIHJlZ2lvbiB0byBiZQogZm9udGlmaWVkLiIKLSAgKGxldCogKChz dHJpbmctYmVnICh0cmVlc2l0LW5vZGUtc3RhcnQgbm9kZSkpCi0gICAgICAgICAoc3RyaW5nLWVu ZCAodHJlZXNpdC1ub2RlLWVuZCBub2RlKSkKLSAgICAgICAgIChtYXliZS1leHByZXNzaW9uICh0 cmVlc2l0LW5vZGUtcGFyZW50IG5vZGUpKQorICAobGV0KiAoKG1heWJlLWV4cHJlc3Npb24gKHRy ZWVzaXQtbm9kZS1wYXJlbnQgbm9kZSkpCiAgICAgICAgICAoZ3JhbmRwYXJlbnQgKHRyZWVzaXQt bm9kZS1wYXJlbnQKICAgICAgICAgICAgICAgICAgICAgICAgKHRyZWVzaXQtbm9kZS1wYXJlbnQK ICAgICAgICAgICAgICAgICAgICAgICAgIG1heWJlLWV4cHJlc3Npb24pKSkKQEAgLTEwNjIsMjgg KzEwNzEsOTIgQEAgcHl0aG9uLS10cmVlc2l0LWZvbnRpZnktc3RyaW5nCiAgICAgICAgICAgICAg ICAgICAgICAgICAoZXF1YWwgKHRyZWVzaXQtbm9kZS10eXBlIG1heWJlLWV4cHJlc3Npb24pCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImV4cHJlc3Npb25fc3RhdGVtZW50IikpCiAg ICAgICAgICAgICAgICAgICAgJ2ZvbnQtbG9jay1kb2MtZmFjZQotICAgICAgICAgICAgICAgICAn Zm9udC1sb2NrLXN0cmluZy1mYWNlKSkpCi0gICAgOzsgRG9uJ3QgaGlnaGxpZ2h0IHN0cmluZyBw cmVmaXhlcyBsaWtlIGYvci9iLgotICAgIChzYXZlLWV4Y3Vyc2lvbgotICAgICAgKGdvdG8tY2hh ciBzdHJpbmctYmVnKQotICAgICAgKHdoZW4gKHJlLXNlYXJjaC1mb3J3YXJkICJbXCInXSIgc3Ry aW5nLWVuZCB0KQotICAgICAgICAoc2V0cSBzdHJpbmctYmVnIChtYXRjaC1iZWdpbm5pbmcgMCkp KSkKLSAgICAodHJlZXNpdC1mb250aWZ5LXdpdGgtb3ZlcnJpZGUKLSAgICAgc3RyaW5nLWJlZyBz dHJpbmctZW5kIGZhY2Ugb3ZlcnJpZGUgc3RhcnQgZW5kKSkpCi0KLShkZWZ1biBweXRob24tLXRy ZWVzaXQtZm9udGlmeS1zdHJpbmctaW50ZXJwb2xhdGlvbgotICAgIChub2RlIF8gc3RhcnQgZW5k ICZyZXN0IF8pCi0gICJGb250aWZ5IHN0cmluZyBpbnRlcnBvbGF0aW9uLgotTk9ERSBpcyB0aGUg c3RyaW5nIG5vZGUuICBEbyBub3QgZm9udGlmeSB0aGUgaW5pdGlhbCBmIGZvcgotZi1zdHJpbmdz LiAgU1RBUlQgYW5kIEVORCBtYXJrIHRoZSByZWdpb24gdG8gYmUKKyAgICAgICAgICAgICAgICAg J2ZvbnQtbG9jay1zdHJpbmctZmFjZSkpCisKKyAgICAgICAgIChpZ25vcmUtaW50ZXJwb2xhdGlv biAobm90CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXEtc29tZQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxhbWJkYSAoZmVhdHMpIChtZW1xICdzdHJpbmct aW50ZXJwb2xhdGlvbiBmZWF0cykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo c2VxLXRha2UgdHJlZXNpdC1mb250LWxvY2stZmVhdHVyZS1saXN0IHRyZWVzaXQtZm9udC1sb2Nr LWxldmVsKSkpKQorICAgICAgICAgOzsgSWYgaW50ZXJwb2xhdGlvbiBpcyBlbmFibGVkLCBoaWdo bGlnaHQgb25seQorICAgICAgICAgOzsgc3RyaW5nX3N0YXJ0L3N0cmluZ19jb250ZW50L3N0cmlu Z19lbmQgY2hpbGRyZW4uICBEbyBub3QKKyAgICAgICAgIDs7IHRvdWNoIGludGVycG9sYXRpb24g bm9kZSB0aGF0IGNhbiBvY2N1ciBpbnNpZGUgb2YgdGhlCisgICAgICAgICA7OyBzdHJpbmcuCisg ICAgICAgICAoc3RyaW5nLW5vZGVzIChpZiBpZ25vcmUtaW50ZXJwb2xhdGlvbgorICAgICAgICAg ICAgICAgICAgICAgICAgICAgKGxpc3Qgbm9kZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAo dHJlZXNpdC1maWx0ZXItY2hpbGQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbm9kZQorICAg ICAgICAgICAgICAgICAgICAgICAgICAobGFtYmRhIChjaCkgKG1lbWJlciAodHJlZXNpdC1ub2Rl LXR5cGUgY2gpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICcoInN0cmluZ19zdGFydCIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAic3RyaW5nX2NvbnRlbnQiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgInN0cmluZ19lbmQiKSkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgIHQpKSkpCisKKyAgICAoZG9saXN0IChzdHJpbmctbm9kZSBzdHJpbmctbm9kZXMpCisg ICAgICAobGV0ICgoc3RyaW5nLWJlZyAodHJlZXNpdC1ub2RlLXN0YXJ0IHN0cmluZy1ub2RlKSkK KyAgICAgICAgICAgIChzdHJpbmctZW5kICh0cmVlc2l0LW5vZGUtZW5kIHN0cmluZy1ub2RlKSkp CisgICAgICAgICh3aGVuIChvciBpZ25vcmUtaW50ZXJwb2xhdGlvbgorICAgICAgICAgICAgICAg ICAgKGVxdWFsICh0cmVlc2l0LW5vZGUtdHlwZSBzdHJpbmctbm9kZSkgInN0cmluZ19zdGFydCIp KQorICAgICAgICAgIDs7IERvbid0IGhpZ2hsaWdodCBzdHJpbmcgcHJlZml4ZXMgbGlrZSBmL3Iv Yi4KKyAgICAgICAgICAoc2F2ZS1leGN1cnNpb24KKyAgICAgICAgICAgIChnb3RvLWNoYXIgc3Ry aW5nLWJlZykKKyAgICAgICAgICAgICh3aGVuIChyZS1zZWFyY2gtZm9yd2FyZCAiW1wiJ10iIHN0 cmluZy1lbmQgdCkKKyAgICAgICAgICAgICAgKHNldHEgc3RyaW5nLWJlZyAobWF0Y2gtYmVnaW5u aW5nIDApKSkpKQorCisgICAgICAgICh0cmVlc2l0LWZvbnRpZnktd2l0aC1vdmVycmlkZQorICAg ICAgICAgc3RyaW5nLWJlZyBzdHJpbmctZW5kIGZhY2Ugb3ZlcnJpZGUgc3RhcnQgZW5kKSkpKSkK KworKGRlZnVuIHB5dGhvbi0tdHJlZXNpdC1mb250aWZ5LXVuaW9uLXR5cGVzIChub2RlIG92ZXJy aWRlIHN0YXJ0IGVuZCAmb3B0aW9uYWwgdHlwZS1yZWdleCAmcmVzdCBfKQorICAiRm9udGlmeSBu ZXN0ZWQgdW5pb24gdHlwZXMgaW4gdGhlIHR5cGUgaGludHMuCitGb3IgZXhhbWxwZSwgTHZsMSB8 IEx2bDJbTHZsM1tMdmw0W0x2bDUgfCBOb25lXV0sIEx2bDJdLiAgVGhpcworc3RydWN0dXJlIGlz IHJlcHJlc2VudGVkIHZpYSBuZXN0aW5nIGJpbmFyeV9vcGVyYXRvciBhbmQKK3N1YnNjcmlwdCBu b2Rlcy4gIFRoaXMgZnVuY3Rpb24gaXRlcmF0ZXMgb3ZlciBhbGwgbGV2ZWxzIGFuZAoraGlnaGxp Z2h0IGlkZW50aWZpZXIgbm9kZXMuIElmIFRZUEUtUkVHRVggaXMgbm90IG5pbCBmb250aWZ5IHR5 cGUKK2lkZW50aWZpZXIgb25seSBpZiBpdCBtYXRjaGVzIGFnYWluc3QgVFlQRS1SRUdFWC4gTk9E RSBpcyB0aGUKK2JpbmFyeV9vcGVyYXRvciBub2RlLiAgT1ZFUlJJREUgaXMgdGhlIG92ZXJyaWRl IGZsYWcgZGVzY3JpYmVkIGluCitgdHJlZXNpdC1mb250LWxvY2stcnVsZXMnLiAgU1RBUlQgYW5k IEVORCBtYXJrIHRoZSByZWdpb24gdG8gYmUKK2ZvbnRpZmllZC4iCisgIChkb2xpc3QgKGNoaWxk ICh0cmVlc2l0LW5vZGUtY2hpbGRyZW4gbm9kZSB0KSkKKyAgICAobGV0IChmb250LW5vZGUpCisg ICAgICAocGNhc2UgKHRyZWVzaXQtbm9kZS10eXBlIGNoaWxkKQorICAgICAgICAoKG9yICJpZGVu dGlmaWVyIiAibm9uZSIpCisgICAgICAgICAoc2V0cSBmb250LW5vZGUgY2hpbGQpKQorICAgICAg ICAoImF0dHJpYnV0ZSIKKyAgICAgICAgICh3aGVuLWxldCAoKHR5cGUtbm9kZSAodHJlZXNpdC1u b2RlLWNoaWxkLWJ5LWZpZWxkLW5hbWUgY2hpbGQgImF0dHJpYnV0ZSIpKSkKKyAgICAgICAgICAg KHNldHEgZm9udC1ub2RlIHR5cGUtbm9kZSkpKQorICAgICAgICAoKG9yICJiaW5hcnlfb3BlcmF0 b3IiICJzdWJzY3JpcHQiKQorICAgICAgICAgKHB5dGhvbi0tdHJlZXNpdC1mb250aWZ5LXVuaW9u LXR5cGVzIGNoaWxkIG92ZXJyaWRlIHN0YXJ0IGVuZCB0eXBlLXJlZ2V4KSkpCisKKyAgICAgICh3 aGVuIChhbmQgZm9udC1ub2RlCisgICAgICAgICAgICAgICAgIChvciAobnVsbCB0eXBlLXJlZ2V4 KQorICAgICAgICAgICAgICAgICAgICAgKGxldCAoKGNhc2UtZm9sZC1zZWFyY2ggbmlsKSkKKyAg ICAgICAgICAgICAgICAgICAgICAgKHN0cmluZy1tYXRjaC1wIHR5cGUtcmVnZXggKHRyZWVzaXQt bm9kZS10ZXh0IGZvbnQtbm9kZSkpKSkpCisgICAgICAgICh0cmVlc2l0LWZvbnRpZnktd2l0aC1v dmVycmlkZQorICAgICAgICAgKHRyZWVzaXQtbm9kZS1zdGFydCBmb250LW5vZGUpICh0cmVlc2l0 LW5vZGUtZW5kIGZvbnQtbm9kZSkKKyAgICAgICAgICdmb250LWxvY2stdHlwZS1mYWNlIG92ZXJy aWRlIHN0YXJ0IGVuZCkpKSkpCisKKyhkZWZ1biBweXRob24tLXRyZWVzaXQtZm9udGlmeS11bmlv bi10eXBlcy1zdHJpY3QgKG5vZGUgb3ZlcnJpZGUgc3RhcnQgZW5kICZyZXN0IF8pCisgICJGb250 aWZ5IG5lc3RlZCB1bmlvbiB0eXBlcy4KK1NhbWUgYXMgYHB5dGhvbi0tdHJlZXNpdC1mb250aWZ5 LXVuaW9uLXR5cGVzJyBidXQgdHlwZSBpZGVudGlmaWVyCitzaG91bGQgbWF0Y2ggYWdhaW5zdCBg cHl0aG9uLS10cmVlc2l0LXR5cGUtcmVnZXgnLiAgRm9yIE5PREUsCitPVkVSUklERSwgU1RBUlQg YW5kIEVORCBkZXNjcmlwdGlvbiBzZWUKK2BweXRob24tLXRyZWVzaXQtZm9udGlmeS11bmlvbi10 eXBlcycuIgorICAocHl0aG9uLS10cmVlc2l0LWZvbnRpZnktdW5pb24tdHlwZXMgbm9kZSBvdmVy cmlkZSBzdGFydCBlbmQgcHl0aG9uLS10cmVlc2l0LXR5cGUtcmVnZXgpKQorCisoZGVmdW4gcHl0 aG9uLS10cmVlc2l0LWZvbnRpZnktZG90dGVkLWRlY29yYXRvciAobm9kZSBvdmVycmlkZSBzdGFy dCBlbmQgJnJlc3QgXykKKyAgIkZvbnRpZnkgZG90dGVkIGRlY29yYXRvcnMuCitGb3IgZXhhbXBs ZSBAcHl0ZXMubWFyay5za2lwLiAgSXRlcmF0ZSBvdmVyIGFsbCBuZXN0ZWQgYXR0cmlidXRlCitu b2RlcyBhbmQgaGlnaGxpZ2h0IGlkZW50aWZpZXIgbm9kZXMuICBOT0RFIGlzIHRoZSBmaXJzdCBh dHRyaWJ1dGUKK25vZGUuICBPVkVSUklERSBpcyB0aGUgb3ZlcnJpZGUgZmxhZyBkZXNjcmliZWQg aW4KK2B0cmVlc2l0LWZvbnQtbG9jay1ydWxlcycuICBTVEFSVCBhbmQgRU5EIG1hcmsgdGhlIHJl Z2lvbiB0byBiZQogZm9udGlmaWVkLiIKLSAgOzsgVGhpcyBpcyBraW5kIG9mIGEgaGFjaywgaXQg YmFzaWNhbGx5IHJlbW92ZXMgdGhlIGZhY2UgYXBwbGllZCBieQotICA7OyB0aGUgc3RyaW5nIGZl YXR1cmUsIHNvIHRoYXQgZm9sbG93aW5nIGZlYXR1cmVzIGNhbiBhcHBseSB0aGVpcgotICA7OyBm YWNlLgotICAobGV0ICgobi1zdGFydCAodHJlZXNpdC1ub2RlLXN0YXJ0IG5vZGUpKQotICAgICAg ICAobi1lbmQgKHRyZWVzaXQtbm9kZS1lbmQgbm9kZSkpKQotICAgIChyZW1vdmUtdGV4dC1wcm9w ZXJ0aWVzCi0gICAgIChtYXggc3RhcnQgbi1zdGFydCkgKG1pbiBlbmQgbi1lbmQpICcoZmFjZSkp KSkKKyAgKGRvbGlzdCAoY2hpbGQgKHRyZWVzaXQtbm9kZS1jaGlsZHJlbiBub2RlIHQpKQorICAg IChwY2FzZSAodHJlZXNpdC1ub2RlLXR5cGUgY2hpbGQpCisgICAgICAoImlkZW50aWZpZXIiCisg ICAgICAgKHRyZWVzaXQtZm9udGlmeS13aXRoLW92ZXJyaWRlCisgICAgICAgICh0cmVlc2l0LW5v ZGUtc3RhcnQgY2hpbGQpICh0cmVlc2l0LW5vZGUtZW5kIGNoaWxkKQorICAgICAgICAnZm9udC1s b2NrLXR5cGUtZmFjZSBvdmVycmlkZSBzdGFydCBlbmQpKQorICAgICAgKCJhdHRyaWJ1dGUiCisg ICAgICAgKHB5dGhvbi0tdHJlZXNpdC1mb250aWZ5LWRvdHRlZC1kZWNvcmF0b3IgY2hpbGQgb3Zl cnJpZGUgc3RhcnQgZW5kKSkpKSkKIAogKGRlZnZhciBweXRob24tLXRyZWVzaXQtc2V0dGluZ3MK ICAgKHRyZWVzaXQtZm9udC1sb2NrLXJ1bGVzCkBAIC0xMDkzLDE0ICsxMTY2LDkgQEAgcHl0aG9u LS10cmVlc2l0LXNldHRpbmdzCiAKICAgIDpmZWF0dXJlICdzdHJpbmcKICAgIDpsYW5ndWFnZSAn cHl0aG9uCi0gICAnKChzdHJpbmcpIEBweXRob24tLXRyZWVzaXQtZm9udGlmeS1zdHJpbmcpCisg ICAnKChzdHJpbmcpIEBweXRob24tLXRyZWVzaXQtZm9udGlmeS1zdHJpbmcKKyAgICAgKGludGVy cG9sYXRpb24gWyJ7IiAifSJdIEBmb250LWxvY2stbWlzYy1wdW5jdHVhdGlvbi1mYWNlKSkKIAot ICAgOzsgSEFDSzogVGhpcyBmZWF0dXJlIG11c3QgY29tZSBhZnRlciB0aGUgc3RyaW5nIGZlYXR1 cmUgYW5kIGJlZm9yZQotICAgOzsgb3RoZXIgZmVhdHVyZXMuICBNYXliZSB3ZSBzaG91bGQgbWFr ZSBzdHJpbmctaW50ZXJwb2xhdGlvbiBhbgotICAgOzsgb3B0aW9uIHJhdGhlciB0aGFuIGEgZmVh dHVyZS4KLSAgIDpmZWF0dXJlICdzdHJpbmctaW50ZXJwb2xhdGlvbgotICAgOmxhbmd1YWdlICdw eXRob24KLSAgICcoKGludGVycG9sYXRpb24pIEBweXRob24tLXRyZWVzaXQtZm9udGlmeS1zdHJp bmctaW50ZXJwb2xhdGlvbikKIAogICAgOmZlYXR1cmUgJ2tleXdvcmQKICAgIDpsYW5ndWFnZSAn cHl0aG9uCkBAIC0xMTE3LDEyICsxMTg1LDYgQEAgcHl0aG9uLS10cmVlc2l0LXNldHRpbmdzCiAg ICAgIChwYXJhbWV0ZXJzIChpZGVudGlmaWVyKSBAZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFj ZSkKICAgICAgKHBhcmFtZXRlcnMgKGRlZmF1bHRfcGFyYW1ldGVyIG5hbWU6IChpZGVudGlmaWVy KSBAZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZSkpKQogCi0gICA6ZmVhdHVyZSAnZnVuY3Rp b24KLSAgIDpsYW5ndWFnZSAncHl0aG9uCi0gICAnKChjYWxsIGZ1bmN0aW9uOiAoaWRlbnRpZmll cikgQGZvbnQtbG9jay1mdW5jdGlvbi1jYWxsLWZhY2UpCi0gICAgIChjYWxsIGZ1bmN0aW9uOiAo YXR0cmlidXRlCi0gICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlOiAoaWRlbnRpZmllcikg QGZvbnQtbG9jay1mdW5jdGlvbi1jYWxsLWZhY2UpKSkKLQogICAgOmZlYXR1cmUgJ2J1aWx0aW4K ICAgIDpsYW5ndWFnZSAncHl0aG9uCiAgICBgKCgoaWRlbnRpZmllcikgQGZvbnQtbG9jay1idWls dGluLWZhY2UKQEAgLTExMzMsNiArMTE5NSwxOSBAQCBweXRob24tLXRyZWVzaXQtc2V0dGluZ3MK ICAgICAgICAgICAgICAgICAgICAgICBlb2wpKQogICAgICAgICAgICAgICBAZm9udC1sb2NrLWJ1 aWx0aW4tZmFjZSkpKQogCisgICA6ZmVhdHVyZSAnZGVjb3JhdG9yCisgICA6bGFuZ3VhZ2UgJ3B5 dGhvbgorICAgJygoZGVjb3JhdG9yICJAIiBAZm9udC1sb2NrLXR5cGUtZmFjZSkKKyAgICAgKGRl Y29yYXRvciAoY2FsbCBmdW5jdGlvbjogKGlkZW50aWZpZXIpIEBmb250LWxvY2stdHlwZS1mYWNl KSkKKyAgICAgKGRlY29yYXRvciAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10eXBlLWZhY2UpCisg ICAgIChkZWNvcmF0b3IgWyhhdHRyaWJ1dGUpIChjYWxsIChhdHRyaWJ1dGUpKV0gQHB5dGhvbi0t dHJlZXNpdC1mb250aWZ5LWRvdHRlZC1kZWNvcmF0b3IpKQorCisgICA6ZmVhdHVyZSAnZnVuY3Rp b24KKyAgIDpsYW5ndWFnZSAncHl0aG9uCisgICAnKChjYWxsIGZ1bmN0aW9uOiAoaWRlbnRpZmll cikgQGZvbnQtbG9jay1mdW5jdGlvbi1jYWxsLWZhY2UpCisgICAgIChjYWxsIGZ1bmN0aW9uOiAo YXR0cmlidXRlCisgICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlOiAoaWRlbnRpZmllcikg QGZvbnQtbG9jay1mdW5jdGlvbi1jYWxsLWZhY2UpKSkKKwogICAgOmZlYXR1cmUgJ2NvbnN0YW50 CiAgICA6bGFuZ3VhZ2UgJ3B5dGhvbgogICAgJyhbKHRydWUpIChmYWxzZSkgKG5vbmUpXSBAZm9u dC1sb2NrLWNvbnN0YW50LWZhY2UpCkBAIC0xMTQ0LDMwICsxMjE5LDcxIEBAIHB5dGhvbi0tdHJl ZXNpdC1zZXR0aW5ncwogICAgICAgICAgICAgICAgICBAZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUt ZmFjZSkKICAgICAgKGFzc2lnbm1lbnQgbGVmdDogKGF0dHJpYnV0ZQogICAgICAgICAgICAgICAg ICAgICAgICAgYXR0cmlidXRlOiAoaWRlbnRpZmllcikKLSAgICAgICAgICAgICAgICAgICAgICAg IEBmb250LWxvY2stcHJvcGVydHktdXNlLWZhY2UpKQotICAgICAocGF0dGVybl9saXN0IChpZGVu dGlmaWVyKQorICAgICAgICAgICAgICAgICAgICAgICAgQGZvbnQtbG9jay12YXJpYWJsZS1uYW1l LWZhY2UpKQorICAgICAoYXVnbWVudGVkX2Fzc2lnbm1lbnQgbGVmdDogKGlkZW50aWZpZXIpCisg ICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZSkK KyAgICAgKG5hbWVkX2V4cHJlc3Npb24gbmFtZTogKGlkZW50aWZpZXIpCisgICAgICAgICAgICAg ICAgICAgICAgIEBmb250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlKQorICAgICAocGF0dGVybl9s aXN0IFsoaWRlbnRpZmllcikKKyAgICAgICAgICAgICAgICAgICAgKGxpc3Rfc3BsYXRfcGF0dGVy biAoaWRlbnRpZmllcikpXQogICAgICAgICAgICAgICAgICAgIEBmb250LWxvY2stdmFyaWFibGUt bmFtZS1mYWNlKQotICAgICAodHVwbGVfcGF0dGVybiAoaWRlbnRpZmllcikKKyAgICAgKHR1cGxl X3BhdHRlcm4gWyhpZGVudGlmaWVyKQorICAgICAgICAgICAgICAgICAgICAgKGxpc3Rfc3BsYXRf cGF0dGVybiAoaWRlbnRpZmllcikpXQogICAgICAgICAgICAgICAgICAgICBAZm9udC1sb2NrLXZh cmlhYmxlLW5hbWUtZmFjZSkKLSAgICAgKGxpc3RfcGF0dGVybiAoaWRlbnRpZmllcikKLSAgICAg ICAgICAgICAgICAgICBAZm9udC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZSkKLSAgICAgKGxpc3Rf c3BsYXRfcGF0dGVybiAoaWRlbnRpZmllcikKLSAgICAgICAgICAgICAgICAgICAgICAgICBAZm9u dC1sb2NrLXZhcmlhYmxlLW5hbWUtZmFjZSkpCisgICAgIChsaXN0X3BhdHRlcm4gWyhpZGVudGlm aWVyKQorICAgICAgICAgICAgICAgICAgICAobGlzdF9zcGxhdF9wYXR0ZXJuIChpZGVudGlmaWVy KSldCisgICAgICAgICAgICAgICAgICAgQGZvbnQtbG9jay12YXJpYWJsZS1uYW1lLWZhY2UpKQog Ci0gICA6ZmVhdHVyZSAnZGVjb3JhdG9yCi0gICA6bGFuZ3VhZ2UgJ3B5dGhvbgotICAgJygoZGVj b3JhdG9yICJAIiBAZm9udC1sb2NrLXR5cGUtZmFjZSkKLSAgICAgKGRlY29yYXRvciAoY2FsbCBm dW5jdGlvbjogKGlkZW50aWZpZXIpIEBmb250LWxvY2stdHlwZS1mYWNlKSkKLSAgICAgKGRlY29y YXRvciAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10eXBlLWZhY2UpKQogCiAgICA6ZmVhdHVyZSAn dHlwZQogICAgOmxhbmd1YWdlICdweXRob24KKyAgIDs7IE92ZXJyaWRlIGJ1aWx0LWluIGZhY2Vz IHdoZW4gZGljdC9saXN0IGFyZSB1c2VkIGZvciB0eXBlIGhpbnRzLgorICAgOm92ZXJyaWRlIHQK ICAgIGAoKChpZGVudGlmaWVyKSBAZm9udC1sb2NrLXR5cGUtZmFjZQogICAgICAgKDptYXRjaCAs KHJ4LXRvLXN0cmluZwogICAgICAgICAgICAgICAgIGAoc2VxIGJvbCAob3IgLEBweXRob24tLXRy ZWVzaXQtZXhjZXB0aW9ucykKLSAgICAgICAgICAgICAgICAgICAgICBlb2wpKQorICAgICAgICAg ICAgICAgICAgZW9sKSkKICAgICAgICAgICAgICAgQGZvbnQtbG9jay10eXBlLWZhY2UpKQotICAg ICAodHlwZSAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10eXBlLWZhY2UpKQorICAgICAodHlwZSBb KGlkZW50aWZpZXIpIChub25lKV0gQGZvbnQtbG9jay10eXBlLWZhY2UpCisgICAgICh0eXBlIChh dHRyaWJ1dGUgYXR0cmlidXRlOiAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10eXBlLWZhY2UpKQor ICAgICA7OyBXZSBkb24ndCB3YW50IHRvIGhpZ2hsaWdodCBhIHBhY2thZ2Ugb2YgdGhlIHR5cGUK KyAgICAgOzsgKGUuZy4gcGFjay5DbGFzc05hbWUpLiAgU28gZXhwbGljaXRseSBleGNsdWRlIHBh dHRlcm5zIHdpdGgKKyAgICAgOzsgYXR0cmlidXRlLCBzaW5jZSB3ZSBoYW5kbGUgZG90dGVkIHR5 cGUgbmFtZSBpbiB0aGUgcHJldmlvdXMKKyAgICAgOzsgcnVsZS4gIFRoZSBmb2xsb3dpbmcgcnVs ZSBoYW5kbGUKKyAgICAgOzsgZ2VuZXJpY190eXBlL2xpc3QvdHVwbGUvc3BsYXRfdHlwZSBub2Rl cy4KKyAgICAgKHR5cGUgKF8gIWF0dHJpYnV0ZSBbWyhpZGVudGlmaWVyKSAobm9uZSldIEBmb250 LWxvY2stdHlwZS1mYWNlCisgICAgICAgICAgICAgICAgICAgICAgICAgIChhdHRyaWJ1dGUgYXR0 cmlidXRlOiAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10eXBlLWZhY2UpIF0pKQorICAgICA7OyBj b2xsZWN0aW9ucy5hYmMuSXRlcmF0b3JbVF0gY2FzZS4KKyAgICAgKHR5cGUgKHN1YnNjcmlwdCAo YXR0cmlidXRlIGF0dHJpYnV0ZTogKGlkZW50aWZpZXIpIEBmb250LWxvY2stdHlwZS1mYWNlKSkp CisgICAgIDs7IE5lc3RlZCBvcHRpb25hbCB0eXBlIGhpbnRzLCBlLmcuIHZhbDogTHZsMSB8IEx2 bDJbTHZsM1tMdmw0XV0uCisgICAgICh0eXBlIChiaW5hcnlfb3BlcmF0b3IpIEBweXRob24tLXRy ZWVzaXQtZm9udGlmeS11bmlvbi10eXBlcykKKyAgICAgOztjbGFzcyBUeXBlKEJhc2UxLCBTZXF1 ZW5jZVtUXSkuCisgICAgIChjbGFzc19kZWZpbml0aW9uCisgICAgICBzdXBlcmNsYXNzZXM6Cisg ICAgICAoYXJndW1lbnRfbGlzdCBbKGlkZW50aWZpZXIpIEBmb250LWxvY2stdHlwZS1mYWNlCisg ICAgICAgICAgICAgICAgICAgICAgKGF0dHJpYnV0ZSBhdHRyaWJ1dGU6IChpZGVudGlmaWVyKSBA Zm9udC1sb2NrLXR5cGUtZmFjZSkKKyAgICAgICAgICAgICAgICAgICAgICAoc3Vic2NyaXB0IChp ZGVudGlmaWVyKSBAZm9udC1sb2NrLXR5cGUtZmFjZSkKKyAgICAgICAgICAgICAgICAgICAgICAo c3Vic2NyaXB0IChhdHRyaWJ1dGUgYXR0cmlidXRlOiAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10 eXBlLWZhY2UpKV0pKQorCisgICAgIDs7IFBhdGVybiBtYXRjaGluZzogY2FzZSBbc3RyKCksIHBh Y2swLlR5cGUwKCldLiAgVGFrZSBvbmx5IHRoZQorICAgICA7OyBsYXN0IGlkZW50aWZpZXIuCisg ICAgIChjbGFzc19wYXR0ZXJuIChkb3R0ZWRfbmFtZSAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10 eXBlLWZhY2UgOmFuY2hvcikpCisKKyAgICAgOzsgSGlnaGxpZ2h0IHRoZSBzZWNvbmQgYXJndW1l bnQgYXMgYSB0eXBlIGluIGlzaW5zdGFuY2UvaXNzdWJjbGFzcy4KKyAgICAgKChjYWxsIGZ1bmN0 aW9uOiAoaWRlbnRpZmllcikgQGZ1bmMtbmFtZQorICAgICAgICAgICAgKGFyZ3VtZW50X2xpc3Qg OmFuY2hvciAoXykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoaWRlbnRpZmllcikgQGZv bnQtbG9jay10eXBlLWZhY2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYXR0cmlidXRl IGF0dHJpYnV0ZTogKGlkZW50aWZpZXIpIEBmb250LWxvY2stdHlwZS1mYWNlKQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICh0dXBsZSAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10eXBlLWZh Y2UpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHR1cGxlIChhdHRyaWJ1dGUgYXR0cmli dXRlOiAoaWRlbnRpZmllcikgQGZvbnQtbG9jay10eXBlLWZhY2UpKV0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICg6bWF0Y2ggLHB5dGhvbi0tdHJlZXNpdC10eXBlLXJlZ2V4IEBmb250LWxv Y2stdHlwZS1mYWNlKSkpCisgICAgICAoOm1hdGNoICJeaXNcXCg/Omluc3RhbmNlXFx8c3ViY2xh c3NcXCkkIiBAZnVuYy1uYW1lKSkKKworICAgICA7OyBpc2luc3RhbmNlKHQsIGludHxmbG9hdCku CisgICAgICgoY2FsbCBmdW5jdGlvbjogKGlkZW50aWZpZXIpIEBmdW5jLW5hbWUKKyAgICAgICAg ICAgIChhcmd1bWVudF9saXN0IDphbmNob3IgKF8pCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAoYmluYXJ5X29wZXJhdG9yKSBAcHl0aG9uLS10cmVlc2l0LWZvbnRpZnktdW5pb24tdHlwZXMt c3RyaWN0KSkKKyAgICAgICg6bWF0Y2ggIl5pc1xcKD86aW5zdGFuY2VcXHxzdWJjbGFzc1xcKSQi IEBmdW5jLW5hbWUpKSkKIAogICAgOmZlYXR1cmUgJ2VzY2FwZS1zZXF1ZW5jZQogICAgOmxhbmd1 YWdlICdweXRob24KZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9wcm9nbW9kZXMvcHl0aG9uLXRlc3Rz LmVsIGIvdGVzdC9saXNwL3Byb2dtb2Rlcy9weXRob24tdGVzdHMuZWwKaW5kZXggZTFiNGMwYTc0 Yy4uNTkyODc5NzBjYSAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL3Byb2dtb2Rlcy9weXRob24tdGVz dHMuZWwKKysrIGIvdGVzdC9saXNwL3Byb2dtb2Rlcy9weXRob24tdGVzdHMuZWwKQEAgLTcxMjIs NiArNzEyMiwzMDggQEAgcHl0aG9uLXRlc3RzLS1mbHltYWtlLWNvbW1hbmQtb3V0cHV0LXBhdHRl cm4KICAgICAgICAgICAgICAgICAgICAgICAgICAiVW51c2VkIGltcG9ydCBhLmIuYyAodW51c2Vk LWltcG9ydCkiCiAgICAgICAgICAgICAgICAgICAgICAgICJXMDYxMTogVW51c2VkIGltcG9ydCBh LmIuYyAodW51c2VkLWltcG9ydCkiKSkpKSkpCiAKKzs7OyBweXRob24tdHMtbW9kZSBmb250LWxv Y2sgdGVzdHMKKworKGRlZm1hY3JvIHB5dGhvbi10cy10ZXN0cy13aXRoLXRlbXAtYnVmZmVyIChj b250ZW50cyAmcmVzdCBib2R5KQorICAiQ3JlYXRlIGEgYHB5dGhvbi10cy1tb2RlJyBlbmFibGVk IHRlbXAgYnVmZmVyIHdpdGggQ09OVEVOVFMuCitCT0RZIGlzIGNvZGUgdG8gYmUgZXhlY3V0ZWQg d2l0aGluIHRoZSB0ZW1wIGJ1ZmZlci4gIFBvaW50IGlzCithbHdheXMgbG9jYXRlZCBhdCB0aGUg YmVnaW5uaW5nIG9mIGJ1ZmZlci4iCisgIChkZWNsYXJlIChpbmRlbnQgMSkgKGRlYnVnIHQpKQor ICBgKHdpdGgtdGVtcC1idWZmZXIKKyAgICAgKHNraXAtdW5sZXNzICh0cmVlc2l0LXJlYWR5LXAg J3B5dGhvbikpCisgICAgIChyZXF1aXJlICdweXRob24pCisgICAgIChsZXQgKChweXRob24taW5k ZW50LWd1ZXNzLWluZGVudC1vZmZzZXQgbmlsKSkKKyAgICAgICAocHl0aG9uLXRzLW1vZGUpCisg ICAgICAgKHNldG9wdCB0cmVlc2l0LWZvbnQtbG9jay1sZXZlbCAzKQorICAgICAgIChpbnNlcnQg LGNvbnRlbnRzKQorICAgICAgIChmb250LWxvY2stZW5zdXJlKQorICAgICAgIChnb3RvLWNoYXIg KHBvaW50LW1pbikpCisgICAgICAgLEBib2R5KSkpCisKKyhlcnQtZGVmdGVzdCBweXRob24tdHMt bW9kZS1jb21wb3VuZC1rZXl3b3Jkcy1mYWNlICgpCisgIChkb2xpc3QgKHRlc3QgJygiaXMgbm90 IiAibm90IGluIikpCisgICAgKHB5dGhvbi10cy10ZXN0cy13aXRoLXRlbXAtYnVmZmVyCisgICAg IChjb25jYXQgInQgIiB0ZXN0ICIgdCIpCisgICAgIChmb3J3YXJkLXRvLXdvcmQgMSkKKyAgICAg KHNob3VsZCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQtbG9jay1rZXl3b3JkLWZhY2UpKQorICAg ICAoZm9yd2FyZC10by13b3JkIDEpCisgICAgIChzaG91bGQgKGVxIChmYWNlLWF0LXBvaW50KSBm b250LWxvY2sta2V5d29yZC1mYWNlKSkpKSkKKworKGVydC1kZWZ0ZXN0IHB5dGhvbi10cy1tb2Rl LW5hbWVkLWFzc2lnbmVtZW50LWZhY2UtMSAoKQorICAocHl0aG9uLXRzLXRlc3RzLXdpdGgtdGVt cC1idWZmZXIKKyAgICJ2YXIgOj0gMyIKKyAgIChzaG91bGQgKGVxIChmYWNlLWF0LXBvaW50KSBm b250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlKSkpKQorCisoZXJ0LWRlZnRlc3QgcHl0aG9uLXRz LW1vZGUtYXNzaWduZW1lbnQtZmFjZS0yICgpCisgIChweXRob24tdHMtdGVzdHMtd2l0aC10ZW1w LWJ1ZmZlcgorICAgInZhciwgKnJlc3QgPSBjYWxsKCkiCisgICAoZG9saXN0ICh0ZXN0ICcoInZh ciIgInJlc3QiKSkKKyAgICAgKHNlYXJjaC1mb3J3YXJkIHRlc3QpCisgICAgIChnb3RvLWNoYXIg KG1hdGNoLWJlZ2lubmluZyAwKSkKKyAgICAgKHNob3VsZCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZv bnQtbG9jay12YXJpYWJsZS1uYW1lLWZhY2UpKSkpCisKKyAgKHB5dGhvbi10cy10ZXN0cy13aXRo LXRlbXAtYnVmZmVyCisgICAiZGVmIGZ1bmMoKmFyZ3MpOiIKKyAgIChkb2xpc3QgKHRlc3QgJygi YXJncyIpKQorICAgICAoc2VhcmNoLWZvcndhcmQgdGVzdCkKKyAgICAgKGdvdG8tY2hhciAobWF0 Y2gtYmVnaW5uaW5nIDApKQorICAgICAoc2hvdWxkIChub3QgKGVxIChmYWNlLWF0LXBvaW50KSBm b250LWxvY2stdmFyaWFibGUtbmFtZS1mYWNlKSkpKSkpCisKKyhlcnQtZGVmdGVzdCBweXRob24t dHMtbW9kZS1uZXN0ZWQtdHlwZXMtZmFjZS0xICgpCisgIChweXRob24tdHMtdGVzdHMtd2l0aC10 ZW1wLWJ1ZmZlcgorICAgImRlZiBmdW5jKHY6ZGljdFsgbGlzdFsgdHVwbGVbc3RyXSBdLCBpbnQg fCBOb25lXSB8IE5vbmUpOiIKKyAgIChkb2xpc3QgKHRlc3QgJygiZGljdCIgImxpc3QiICJ0dXBs ZSIgInN0ciIgImludCIgIk5vbmUiICJOb25lIikpCisgICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0 KQorICAgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisgICAgIChzaG91bGQgKGVx IChmYWNlLWF0LXBvaW50KSBmb250LWxvY2stdHlwZS1mYWNlKSkpKSkKKworKGVydC1kZWZ0ZXN0 IHB5dGhvbi10cy1tb2RlLXVuaW9uLXR5cGVzLWZhY2UtMSAoKQorICAocHl0aG9uLXRzLXRlc3Rz LXdpdGgtdGVtcC1idWZmZXIKKyAgICJkZWYgZih2YWw6IHR1cGxlW3R1cGxlLCBsaXN0W0x2bDEg fCBMdmwyW0x2bDNbTHZsNFtMdmw1IHwgTm9uZV1dLCBMdmwyXV1dKToiCisgICAoZG9saXN0ICh0 ZXN0ICcoInR1cGxlIiAidHVwbGUiICJsaXN0IiAiTHZsMSIgIkx2bDIiICJMdmwzIiAiTHZsNCIg Ikx2bDUiICJOb25lIiAiTHZsMiIpKQorICAgICAoc2VhcmNoLWZvcndhcmQgdGVzdCkKKyAgICAg KGdvdG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDApKQorICAgICAoc2hvdWxkIChlcSAoZmFjZS1h dC1wb2ludCkgZm9udC1sb2NrLXR5cGUtZmFjZSkpKSkpCisKKyhlcnQtZGVmdGVzdCBweXRob24t dHMtbW9kZS11bmlvbi10eXBlcy1mYWNlLTIgKCkKKyAgKHB5dGhvbi10cy10ZXN0cy13aXRoLXRl bXAtYnVmZmVyCisgICAiZGVmIGYodmFsOiBUeXBlMCB8IFR5cGUxW1R5cGUyLCBwYWNrMC5UeXBl M10gfCBwYWNrMS5wYWNrMi5UeXBlNCB8IE5vbmUpOiIKKyAgIChkb2xpc3QgKHRlc3QgJygiVHlw ZTAiICJUeXBlMSIgIlR5cGUyIiAiVHlwZTMiICJUeXBlNCIgIk5vbmUiKSkKKyAgICAgKHNlYXJj aC1mb3J3YXJkIHRlc3QpCisgICAgIChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkKKyAg ICAgKHNob3VsZCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQtbG9jay10eXBlLWZhY2UpKSkKKwor ICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgIChkb2xpc3QgKHRlc3QgJygicGFjazAiICJw YWNrMSIgInBhY2syIikpCisgICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0KQorICAgICAoZ290by1j aGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisgICAgIChzaG91bGQgKG5vdCAoZXEgKGZhY2UtYXQt cG9pbnQpIGZvbnQtbG9jay10eXBlLWZhY2UpKSkpKSkKKworKGVydC1kZWZ0ZXN0IHB5dGhvbi10 cy1tb2RlLXR5cGVzLWZhY2UtMSAoKQorICAocHl0aG9uLXRzLXRlc3RzLXdpdGgtdGVtcC1idWZm ZXIKKyAgICJkZWYgZih2YWw6IENhbGxhYmxlW1tUeXBlMF0sIChUeXBlMSwgVHlwZTIpXSk6Igor ICAgKGRvbGlzdCAodGVzdCAnKCJDYWxsYWJsZSIgIlR5cGUwIiAiVHlwZTEiICJUeXBlMiIpKQor ICAgICAoc2VhcmNoLWZvcndhcmQgdGVzdCkKKyAgICAgKGdvdG8tY2hhciAobWF0Y2gtYmVnaW5u aW5nIDApKQorICAgICAoc2hvdWxkIChlcSAoZmFjZS1hdC1wb2ludCkgZm9udC1sb2NrLXR5cGUt ZmFjZSkpKSkpCisKKyhlcnQtZGVmdGVzdCBweXRob24tdHMtbW9kZS10eXBlcy1mYWNlLTIgKCkK KyAgKHB5dGhvbi10cy10ZXN0cy13aXRoLXRlbXAtYnVmZmVyCisgICAiZGVmIGFubm90Myh2YWw6 cGFjazAuVHlwZTApLT5wYWNrMS5wYWNrMi5wYWNrMy5UeXBlMToiCisgICAoZG9saXN0ICh0ZXN0 ICcoIlR5cGUwIiAiVHlwZTEiKSkKKyAgICAgKHNlYXJjaC1mb3J3YXJkIHRlc3QpCisgICAgIChn b3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkKKyAgICAgKHNob3VsZCAoZXEgKGZhY2UtYXQt cG9pbnQpIGZvbnQtbG9jay10eXBlLWZhY2UpKSkKKyAgIChnb3RvLWNoYXIgKHBvaW50LW1pbikp CisgICAoZG9saXN0ICh0ZXN0ICcoInBhY2swIiAicGFjazEiICJwYWNrMiIgInBhY2szIikpCisg ICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0KQorICAgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5p bmcgMCkpCisgICAgIChzaG91bGQgKG5vdCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQtbG9jay10 eXBlLWZhY2UpKSkpKSkKKworKGVydC1kZWZ0ZXN0IHB5dGhvbi10cy1tb2RlLXR5cGVzLWZhY2Ut MyAoKQorICAocHl0aG9uLXRzLXRlc3RzLXdpdGgtdGVtcC1idWZmZXIKKyAgICJkZWYgYW5ub3Qz KHZhbDpjb2xsZWN0aW9ucy5hYmMuSXRlcmF0b3JbVHlwZTBdKToiCisgICAoZG9saXN0ICh0ZXN0 ICcoIkl0ZXJhdG9yIiAiVHlwZTAiKSkKKyAgICAgKHNlYXJjaC1mb3J3YXJkIHRlc3QpCisgICAg IChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkKKyAgICAgKHNob3VsZCAoZXEgKGZhY2Ut YXQtcG9pbnQpIGZvbnQtbG9jay10eXBlLWZhY2UpKSkKKyAgIChnb3RvLWNoYXIgKHBvaW50LW1p bikpCisgICAoZG9saXN0ICh0ZXN0ICcoImNvbGxlY3Rpb25zIiAiYWJjIikpCisgICAgIChzZWFy Y2gtZm9yd2FyZCB0ZXN0KQorICAgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisg ICAgIChzaG91bGQgKG5vdCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQtbG9jay10eXBlLWZhY2Up KSkpKSkKKworKGVydC1kZWZ0ZXN0IHB5dGhvbi10cy1tb2RlLWlzaW5zdGFuY2UtdHlwZS1mYWNl LTEgKCkKKyAgKHB5dGhvbi10cy10ZXN0cy13aXRoLXRlbXAtYnVmZmVyCisgICAiaXNpbnN0YW5j ZSh2YXIxLCBwa2cuVHlwZTApCisgICAgaXNpbnN0YW5jZSh2YXIyLCAoc3RyLCBkaWN0LCBUeXBl MSwgdHlwZShOb25lKSkpCisgICAgaXNpbnN0YW5jZSh2YXIzLCBteV90eXBlKCkpIgorCisgICAo ZG9saXN0ICh0ZXN0ICcoInZhcjEiICJwa2ciICJ2YXIyIiAidHlwZSIgIk5vbmUiICJ2YXIzIiAi bXlfdHlwZSIpKQorICAgICAobGV0ICgoY2FzZS1mb2xkLXNlYXJjaCBuaWwpKQorICAgICAgIChz ZWFyY2gtZm9yd2FyZCB0ZXN0KSkKKyAgICAgKGdvdG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDAp KQorICAgICAoc2hvdWxkIChub3QgKGVxIChmYWNlLWF0LXBvaW50KSBmb250LWxvY2stdHlwZS1m YWNlKSkpKQorCisgICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgKGRvbGlzdCAodGVzdCAn KCJUeXBlMCIgInN0ciIgImRpY3QiICJUeXBlMSIpKQorICAgICAoc2VhcmNoLWZvcndhcmQgdGVz dCkKKyAgICAgKGdvdG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDApKQorICAgICAoc2hvdWxkIChl cSAoZmFjZS1hdC1wb2ludCkgZm9udC1sb2NrLXR5cGUtZmFjZSkpKSkpCisKKyhlcnQtZGVmdGVz dCBweXRob24tdHMtbW9kZS1pc2luc3RhbmNlLXR5cGUtZmFjZS0yICgpCisgIChweXRob24tdHMt dGVzdHMtd2l0aC10ZW1wLWJ1ZmZlcgorICAgImlzc3ViY2xhc3MobXl0eXBlLCBpbnR8bGlzdHxj b2xsZWN0aW9ucy5hYmMuSXRlcmFibGUpIgorICAgKGRvbGlzdCAodGVzdCAnKCJpbnQiICJsaXN0 IiAiSXRlcmFibGUiKSkKKyAgICAgKHNlYXJjaC1mb3J3YXJkIHRlc3QpCisgICAgIChnb3RvLWNo YXIgKG1hdGNoLWJlZ2lubmluZyAwKSkKKyAgICAgKHNob3VsZCAoZXEgKGZhY2UtYXQtcG9pbnQp IGZvbnQtbG9jay10eXBlLWZhY2UpKSkpKQorCisoZXJ0LWRlZnRlc3QgcHl0aG9uLXRzLW1vZGUt aXNpbnN0YW5jZS10eXBlLWZhY2UtMyAoKQorICAocHl0aG9uLXRzLXRlc3RzLXdpdGgtdGVtcC1i dWZmZXIKKyAgICJpc3N1YmNsYXNzKG15dHlwZSwgdHlwZXZhcjEpCisgICAgaXNpbnN0YW5jZSht eXR5cGUsIChUeXBlMSwgdHlwZXZhcjIsIHR1cGxlLCBhYmMuQ29sbCkpCisgICAgaXNpbnN0YW5j ZShteXR5cGUsIHBrZzAuVHlwZTJ8c2VsZi50eXBldmFyM3x0eXBldmFyNCkiCisKKyAgIChkb2xp c3QgKHRlc3QgJygidHlwZXZhcjEiICJ0eXBldmFyMiIgInBrZzAiICJzZWxmIiAidHlwZXZhcjMi ICJ0eXBldmFyNCIpKQorICAgICAoc2VhcmNoLWZvcndhcmQgdGVzdCkKKyAgICAgKGdvdG8tY2hh ciAobWF0Y2gtYmVnaW5uaW5nIDApKQorICAgICAoc2hvdWxkIChub3QgKGVxIChmYWNlLWF0LXBv aW50KSBmb250LWxvY2stdHlwZS1mYWNlKSkpKQorCisgICAoZ290by1jaGFyIChwb2ludC1taW4p KQorICAgKGRvbGlzdCAodGVzdCAnKCJUeXBlMSIgInR1cGxlIiAiQ29sbCIgIlR5cGUyIikpCisg ICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0KQorICAgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5p bmcgMCkpCisgICAgIChzaG91bGQgKGVxIChmYWNlLWF0LXBvaW50KSBmb250LWxvY2stdHlwZS1m YWNlKSkpKSkKKworKGVydC1kZWZ0ZXN0IHB5dGhvbi10cy1tb2RlLXN1cGVyY2xhc3MtdHlwZS1m YWNlICgpCisgIChweXRob24tdHMtdGVzdHMtd2l0aC10ZW1wLWJ1ZmZlcgorICAgImNsYXNzIFRl bXAoQmFzZTEsIHBhY2swLkJhc2UyLCAgU2VxdWVuY2VbVDEsIFQyXSk6IgorCisgICAoZG9saXN0 ICh0ZXN0ICcoIkJhc2UxIiAiQmFzZTIiICJTZXF1ZW5jZSIgIlQxIiAiVDIiKSkKKyAgICAgKHNl YXJjaC1mb3J3YXJkIHRlc3QpCisgICAgIChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkK KyAgICAgKHNob3VsZCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQtbG9jay10eXBlLWZhY2UpKSkK KworICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgIChkb2xpc3QgKHRlc3QgJygicGFjazAi KSkKKyAgICAgKHNlYXJjaC1mb3J3YXJkIHRlc3QpCisgICAgIChnb3RvLWNoYXIgKG1hdGNoLWJl Z2lubmluZyAwKSkKKyAgICAgKHNob3VsZCAobm90IChlcSAoZmFjZS1hdC1wb2ludCkgZm9udC1s b2NrLXR5cGUtZmFjZSkpKSkpKQorCisoZXJ0LWRlZnRlc3QgcHl0aG9uLXRzLW1vZGUtY2xhc3Mt cGF0dGVybnMtZmFjZSAoKQorICAocHl0aG9uLXRzLXRlc3RzLXdpdGgtdGVtcC1idWZmZXIKKyAg ICJtYXRjaCB0dDoKKyAgICAgICAgY2FzZSBzdHIoKToKKyAgICAgICAgICAgIHBhc3MKKyAgICAg ICAgY2FzZSBbVHlwZTAoKSB8IGJ5dGVzKGIpIHwgcGFjazAucGFjazEuVHlwZTEoKV06CisgICAg ICAgICAgICBwYXNzCisgICAgICAgIGNhc2UgeydpJzogaW50KGkpLCAnZic6IGZsb2F0KCkgYXMg Zn06CisgICAgICAgICAgICBwYXNzIgorCisgICAoZG9saXN0ICh0ZXN0ICcoInN0ciIgIlR5cGUw IiAiYnl0ZXMiICJUeXBlMSIgImludCIgImZsb2F0IikpCisgICAgIChzZWFyY2gtZm9yd2FyZCB0 ZXN0KQorICAgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisgICAgIChzaG91bGQg KGVxIChmYWNlLWF0LXBvaW50KSBmb250LWxvY2stdHlwZS1mYWNlKSkpCisKKyAgIChnb3RvLWNo YXIgKHBvaW50LW1pbikpCisgICAoZG9saXN0ICh0ZXN0ICcoInBhY2swIiAicGFjazEiKSkKKyAg ICAgKHNlYXJjaC1mb3J3YXJkIHRlc3QpCisgICAgIChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmlu ZyAwKSkKKyAgICAgKHNob3VsZCAobm90IChlcSAoZmFjZS1hdC1wb2ludCkgZm9udC1sb2NrLXR5 cGUtZmFjZSkpKSkpKQorCisoZXJ0LWRlZnRlc3QgcHl0aG9uLXRzLW1vZGUtZG90dGVkLWRlY29y YXRvci1mYWNlLTEgKCkKKyAgKHB5dGhvbi10cy10ZXN0cy13aXRoLXRlbXAtYnVmZmVyCisgICAi QHB5dGVzdC5tYXJrLnNraXAKKyAgICBAcHl0ZXN0Lm1hcmsuc2tpcChyZWFzb249J21zZycpCisg ICAgZGVmIHRlc3QoKToiCisKKyAgIChkb2xpc3QgKHRlc3QgJygicHl0ZXN0IiAibWFyayIgInNr aXAiICJweXRlc3QiICJtYXJrIiAic2tpcCIpKQorICAgICAoc2VhcmNoLWZvcndhcmQgdGVzdCkK KyAgICAgKGdvdG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDApKQorICAgICAoc2hvdWxkIChlcSAo ZmFjZS1hdC1wb2ludCkgZm9udC1sb2NrLXR5cGUtZmFjZSkpKSkpCisKKyhlcnQtZGVmdGVzdCBw eXRob24tdHMtbW9kZS1kb3R0ZWQtZGVjb3JhdG9yLWZhY2UtMiAoKQorICAocHl0aG9uLXRzLXRl c3RzLXdpdGgtdGVtcC1idWZmZXIKKyAgICJAcHl0ZXN0Lm1hcmsuc2tpcChyZWFzb249J21zZycp CisgICAgZGVmIHRlc3QoKToiCisKKyAgIChzZXRvcHQgdHJlZXNpdC1mb250LWxvY2stbGV2ZWwg NCkKKyAgIChkb2xpc3QgKHRlc3QgJygicHl0ZXN0IiAibWFyayIgInNraXAiKSkKKyAgICAgKHNl YXJjaC1mb3J3YXJkIHRlc3QpCisgICAgIChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkK KyAgICAgKHNob3VsZCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQtbG9jay10eXBlLWZhY2UpKSkp KQorCisoZXJ0LWRlZnRlc3QgcHl0aG9uLXRzLW1vZGUtYnVpbHRpbi1jYWxsLWZhY2UgKCkKKyAg KHB5dGhvbi10cy10ZXN0cy13aXRoLXRlbXAtYnVmZmVyCisgICAiYWxsKCkiCisgICA7OyBlbmFi bGUgJ2Z1bmN0aW9uJyBmZWF0dXJlIGZyb20gNHRoIGxldmVsCisgICAoc2V0b3B0IHRyZWVzaXQt Zm9udC1sb2NrLWxldmVsIDQpCisgICAoc2hvdWxkIChlcSAoZmFjZS1hdC1wb2ludCkgZm9udC1s b2NrLWJ1aWx0aW4tZmFjZSkpKSkKKworKGVydC1kZWZ0ZXN0IHB5dGhvbi10cy1tb2RlLWludGVy cG9sYXRpb24tbmVzdGVkLXN0cmluZyAoKQorICAocHl0aG9uLXRzLXRlc3RzLXdpdGgtdGVtcC1i dWZmZXIKKyAgICJ0ID0gZlwiYmVnIHtUcnVlICsgJ3N0cmluZyd9XCIiCisKKyAgIChzZWFyY2gt Zm9yd2FyZCAiVHJ1ZSIpCisgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisgICAo c2hvdWxkIChlcSAoZmFjZS1hdC1wb2ludCkgZm9udC1sb2NrLWNvbnN0YW50LWZhY2UpKQorCisg ICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgKGRvbGlzdCAodGVzdCAnKCJmIiAieyIgIisi ICJ9IikpCisgICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0KQorICAgICAoZ290by1jaGFyIChtYXRj aC1iZWdpbm5pbmcgMCkpCisgICAgIChzaG91bGQgKG5vdCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZv bnQtbG9jay1zdHJpbmctZmFjZSkpKSkKKworCisgICAoZ290by1jaGFyIChwb2ludC1taW4pKQor ICAgKGRvbGlzdCAodGVzdCAnKCJiZWciICInc3RyaW5nJyIgIlwiIikpCisgICAgIChzZWFyY2gt Zm9yd2FyZCB0ZXN0KQorICAgICAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisgICAg IChzaG91bGQgKGVxIChmYWNlLWF0LXBvaW50KSBmb250LWxvY2stc3RyaW5nLWZhY2UpKSkpKQor CisoZXJ0LWRlZnRlc3QgcHl0aG9uLXRzLW1vZGUtbGV2ZWwtZm9udGlmaWNhdGlvbi13by1pbnRl cnBvbGF0aW9uICgpCisgIChweXRob24tdHMtdGVzdHMtd2l0aC10ZW1wLWJ1ZmZlcgorICAgInQg PSBmXCJiZWcge1RydWUgKyB2YXJ9XCIiCisKKyAgIChzZXRvcHQgdHJlZXNpdC1mb250LWxvY2st bGV2ZWwgMikKKyAgIChzZWFyY2gtZm9yd2FyZCAiZiIpCisgICAoZ290by1jaGFyIChtYXRjaC1i ZWdpbm5pbmcgMCkpCisgICAoc2hvdWxkIChub3QgKGVxIChmYWNlLWF0LXBvaW50KSBmb250LWxv Y2stc3RyaW5nLWZhY2UpKSkKKworICAgKGRvbGlzdCAodGVzdCAnKCJcIiIgImJlZyIgInsiICJU cnVlIiAidmFyIiAifSIgIlwiIikpCisgICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0KQorICAgICAo Z290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisgICAgIChzaG91bGQgKGVxIChmYWNlLWF0 LXBvaW50KSBmb250LWxvY2stc3RyaW5nLWZhY2UpKSkpKQorCisoZXJ0LWRlZnRlc3QgcHl0aG9u LXRzLW1vZGUtZGlzYWJsZWQtc3RyaW5nLWludGVycG9sYXRpb24gKCkKKyAgKHB5dGhvbi10cy10 ZXN0cy13aXRoLXRlbXAtYnVmZmVyCisgICAidCA9IGZcImJlZyB7VHJ1ZSArIHZhcn1cIiIKKwor ICAgKHVud2luZC1wcm90ZWN0CisgICAgICAgKHByb2duCisgICAgICAgICAoc2V0ZiAobnRoIDIg dHJlZXNpdC1mb250LWxvY2stZmVhdHVyZS1saXN0KQorICAgICAgICAgICAgICAgKHJlbXEgJ3N0 cmluZy1pbnRlcnBvbGF0aW9uIChudGggMiB0cmVlc2l0LWZvbnQtbG9jay1mZWF0dXJlLWxpc3Qp KSkKKyAgICAgICAgIChzZXRvcHQgdHJlZXNpdC1mb250LWxvY2stbGV2ZWwgMykKKworICAgICAg ICAgKHNlYXJjaC1mb3J3YXJkICJmIikKKyAgICAgICAgIChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lu bmluZyAwKSkKKyAgICAgICAgIChzaG91bGQgKG5vdCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQt bG9jay1zdHJpbmctZmFjZSkpKQorCisgICAgICAgICAoZG9saXN0ICh0ZXN0ICcoIlwiIiAiYmVn IiAieyIgIlRydWUiICJ2YXIiICJ9IiAiXCIiKSkKKyAgICAgICAgICAgKHNlYXJjaC1mb3J3YXJk IHRlc3QpCisgICAgICAgICAgIChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkKKyAgICAg ICAgICAgKHNob3VsZCAoZXEgKGZhY2UtYXQtcG9pbnQpIGZvbnQtbG9jay1zdHJpbmctZmFjZSkp KSkKKworICAgIChzZXRmIChudGggMiB0cmVlc2l0LWZvbnQtbG9jay1mZWF0dXJlLWxpc3QpCisg ICAgICAgICAgKGFwcGVuZCAobnRoIDIgdHJlZXNpdC1mb250LWxvY2stZmVhdHVyZS1saXN0KSAn KHN0cmluZy1pbnRlcnBvbGF0aW9uKSkpKSkpCisKKyhlcnQtZGVmdGVzdCBweXRob24tdHMtbW9k ZS1pbnRlcnBvbGF0aW9uLWRvYy1zdHJpbmcgKCkKKyAgKHB5dGhvbi10cy10ZXN0cy13aXRoLXRl bXAtYnVmZmVyCisgICAiZlwiXCJcImJlZyB7J3MxJyArIFRydWUgKyAnczInfSBlbmRcIlwiXCIi CisKKyAgIChzZWFyY2gtZm9yd2FyZCAiVHJ1ZSIpCisgICAoZ290by1jaGFyIChtYXRjaC1iZWdp bm5pbmcgMCkpCisgICAoc2hvdWxkIChlcSAoZmFjZS1hdC1wb2ludCkgZm9udC1sb2NrLWNvbnN0 YW50LWZhY2UpKQorCisgICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgKGRvbGlzdCAodGVz dCAnKCJmIiAieyIgIisiICJ9IikpCisgICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0KQorICAgICAo Z290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpCisgICAgIChzaG91bGQgKG5vdCAoZXEgKGZh Y2UtYXQtcG9pbnQpIGZvbnQtbG9jay1zdHJpbmctZmFjZSkpKSkKKworICAgKGdvdG8tY2hhciAo cG9pbnQtbWluKSkKKyAgIChkb2xpc3QgKHRlc3QgJygiXCJcIlwiIiAiYmVnIiAiZW5kIiAiXCJc IlwiIikpCisgICAgIChzZWFyY2gtZm9yd2FyZCB0ZXN0KQorICAgICAoZ290by1jaGFyIChtYXRj aC1iZWdpbm5pbmcgMCkpCisgICAgIChzaG91bGQgKGVxIChmYWNlLWF0LXBvaW50KSBmb250LWxv Y2stZG9jLWZhY2UpKSkKKworICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgIChkb2xpc3Qg KHRlc3QgJygiJ3MxJyIgIidzMiciKSkKKyAgICAgKHNlYXJjaC1mb3J3YXJkIHRlc3QpCisgICAg IChnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkKKyAgICAgKHNob3VsZCAoZXEgKGZhY2Ut YXQtcG9pbnQpIGZvbnQtbG9jay1zdHJpbmctZmFjZSkpKSkpCisKIChwcm92aWRlICdweXRob24t dGVzdHMpCiAKIDs7OyBweXRob24tdGVzdHMuZWwgZW5kcyBoZXJlCi0tIAoyLjM0LjEKCg== ------==--bound.31493.ajvwwkfnk4mrpgm2.vla.yp-c.yandex.net--