From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Protesilaos Stavrou Newsgroups: gmane.emacs.bugs Subject: bug#46964: [ELPA]: [PATCH] Replace modus-*-theme with modus-themes from :core Date: Tue, 09 Mar 2021 21:08:22 +0200 Message-ID: <874khk6t7d.fsf@protesilaos.com> References: <87y2f0fq8v.fsf@protesilaos.com> <87sg58tkg7.fsf@tcd.ie> <87h7lofe6b.fsf@protesilaos.com> <87mtvfpgf2.fsf@protesilaos.com> <878s6wqq40.fsf@tcd.ie> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="532"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: 46964@debbugs.gnu.org, Stefan Monnier To: "Basil L. Contovounesios" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Mar 09 21:23:20 2021 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 1lJisx-000AZV-4i for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 09 Mar 2021 21:23:19 +0100 Original-Received: from localhost ([::1]:34472 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lJisw-0006Aw-4M for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 09 Mar 2021 15:23:18 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:55410) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lJhj7-0006Hw-40 for bug-gnu-emacs@gnu.org; Tue, 09 Mar 2021 14:09:05 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:36407) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lJhj4-0001Hk-I2 for bug-gnu-emacs@gnu.org; Tue, 09 Mar 2021 14:09:04 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lJhj4-0000iR-Bq for bug-gnu-emacs@gnu.org; Tue, 09 Mar 2021 14:09:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Protesilaos Stavrou Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 09 Mar 2021 19:09:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46964 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 46964-submit@debbugs.gnu.org id=B46964.16153169152718 (code B ref 46964); Tue, 09 Mar 2021 19:09:02 +0000 Original-Received: (at 46964) by debbugs.gnu.org; 9 Mar 2021 19:08:35 +0000 Original-Received: from localhost ([127.0.0.1]:47953 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lJhid-0000hm-Fg for submit@debbugs.gnu.org; Tue, 09 Mar 2021 14:08:35 -0500 Original-Received: from relay5-d.mail.gandi.net ([217.70.183.197]:46231) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lJhib-0000hX-AB for 46964@debbugs.gnu.org; Tue, 09 Mar 2021 14:08:35 -0500 X-Originating-IP: 94.46.225.161 Original-Received: from kronos (unknown [94.46.225.161]) (Authenticated sender: public@protesilaos.com) by relay5-d.mail.gandi.net (Postfix) with ESMTPSA id A43911C000D; Tue, 9 Mar 2021 19:08:25 +0000 (UTC) In-Reply-To: <878s6wqq40.fsf@tcd.ie> (Basil L. Contovounesios's message of "Tue, 09 Mar 2021 15:54:55 +0000") 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:201940 Archived-At: --=-=-= Content-Type: text/plain On 2021-03-09, 15:54 +0000, "Basil L. Contovounesios" wrote: > Protesilaos Stavrou writes: > >> Thank you! I have amended the patch using the format you recommended. > > Thanks, LGTM. > > Have you been able to verify that the tarball is created properly, > and especially that the contained .info file is nonempty? No, the build always gives me errors. Though I assumed something was wrong on my end (I am not familiar with makefiles). This is not just with the modus-themes. Same for something like project.el. Please see the attached file with the backtrace. On 2021-03-09, 11:46 -0500, Stefan Monnier wrote: >>> - ("modus-operandi-theme":url "https://gitlab.com/protesilaos/modus-themes") >>> - ("modus-vivendi-theme" :url "https://gitlab.com/protesilaos/modus-themes") >> Also wondering if we need to do anything special before "ripping off >> this bandaid"[1], or can we also get away with the money like MELPA? > > I think "overwrite modus-operandi-theme and modus-vivendi-theme with > a small package which depends on modus-themes for compatibility and prints some > kind of deprecation warning, maybe via the autoload mechanism" is the > better way forward (but this can be done calmly once the `modus-themes` > is confirmed to be in good shape). Yes, we can look into this once the package is confirmed to work. I have no strong opinion about how to handle the old packages. I prefer to go with whatever is easier for you. -- Protesilaos Stavrou protesilaos.com --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=2021-03-09-elpa-make-build-backtrace Content-Transfer-Encoding: base64 fi9HaXQvYnVpbGQvZWxwYSAkIG1ha2UgYnVpbGQvcHJvamVjdAplbWFjcyAtLWJhdGNoIC1RIC1s IGFkbWluL2VscGEtYWRtaW4uZWwgXAogICAgICAgICAtZiBlbHBhYS1iYXRjaC1wa2ctc3BlYy1t YWtlLWRlcGVuZGVuY2llcyAucGtnLWRlc2NzLm1rCmVtYWNzIC0tYmF0Y2ggLWwgL2hvbWUvcHJv dC9HaXQvYnVpbGQvZWxwYS9hZG1pbi9lbHBhLWFkbWluLmVsCVwKICAgICAgICAgLWYgZWxwYWEt YmF0Y2gtbWFrZS1vbmUtcGFja2FnZSBwcm9qZWN0CkxpbmtpbmcgZmlsZXMgZm9yIHBhY2thZ2U6 IHByb2plY3QKICBsaXNwL3Byb2dtb2Rlcy9wcm9qZWN0LmVsIC0+IHByb2plY3QuZWwKRGVidWdn ZXIgZW50ZXJlZC0tTGlzcCBlcnJvcjogKHdyb25nLXR5cGUtYXJndW1lbnQgc3RyaW5ncCBuaWwp CiAgY2FsbC1wcm9jZXNzKCJnaXQiIG5pbCB0IG5pbCAicmVzZXQiICItLW1lcmdlIiBuaWwpCiAg YXBwbHkoY2FsbC1wcm9jZXNzICJnaXQiIG5pbCB0IG5pbCAoInJlc2V0IiAiLS1tZXJnZSIgbmls KSkKICBlbHBhYS0tY2FsbCh0ICJnaXQiICJyZXNldCIgIi0tbWVyZ2UiIG5pbCkKICAobGV0ICgo ZGVmYXVsdC1kaXJlY3RvcnkgKGVscGFhLS1kaXJuYW1lIGRpcikpKSAoZWxwYWEtLWNhbGwgdCAi Z2l0IiAicmVzZXQiICItLW1lcmdlIiByZXYpIChlbHBhYS0tbWVzc2FnZSAiUmV2ZXJ0ZWQgdG8g cmVsZWFzZSByZXZpc2lvbiAlc1xuJXMiIHJldiAoYnVmZmVyLXN0cmluZykpKQogIChwcm9nbiAo bGV0ICgoZGVmYXVsdC1kaXJlY3RvcnkgKGVscGFhLS1kaXJuYW1lIGRpcikpKSAoZWxwYWEtLWNh bGwgdCAiZ2l0IiAicmVzZXQiICItLW1lcmdlIiByZXYpIChlbHBhYS0tbWVzc2FnZSAiUmV2ZXJ0 ZWQgdG8gcmVsZWFzZSByZXZpc2lvbiAlc1xuJXMiIHJldiAoYnVmZmVyLXN0cmluZykpKSkKICAo dW53aW5kLXByb3RlY3QgKHByb2duIChsZXQgKChkZWZhdWx0LWRpcmVjdG9yeSAoZWxwYWEtLWRp cm5hbWUgZGlyKSkpIChlbHBhYS0tY2FsbCB0ICJnaXQiICJyZXNldCIgIi0tbWVyZ2UiIHJldikg KGVscGFhLS1tZXNzYWdlICJSZXZlcnRlZCB0byByZWxlYXNlIHJldmlzaW9uICVzXG4lcyIgcmV2 IChidWZmZXItc3RyaW5nKSkpKSAoYW5kIChidWZmZXItbmFtZSB0ZW1wLWJ1ZmZlcikgKGtpbGwt YnVmZmVyIHRlbXAtYnVmZmVyKSkpCiAgKHNhdmUtY3VycmVudC1idWZmZXIgKHNldC1idWZmZXIg dGVtcC1idWZmZXIpICh1bndpbmQtcHJvdGVjdCAocHJvZ24gKGxldCAoKGRlZmF1bHQtZGlyZWN0 b3J5IChlbHBhYS0tZGlybmFtZSBkaXIpKSkgKGVscGFhLS1jYWxsIHQgImdpdCIgInJlc2V0IiAi LS1tZXJnZSIgcmV2KSAoZWxwYWEtLW1lc3NhZ2UgIlJldmVydGVkIHRvIHJlbGVhc2UgcmV2aXNp b24gJXNcbiVzIiByZXYgKGJ1ZmZlci1zdHJpbmcpKSkpIChhbmQgKGJ1ZmZlci1uYW1lIHRlbXAt YnVmZmVyKSAoa2lsbC1idWZmZXIgdGVtcC1idWZmZXIpKSkpCiAgKGxldCAoKHRlbXAtYnVmZmVy IChnZW5lcmF0ZS1uZXctYnVmZmVyICIgKnRlbXAqIiB0KSkpIChzYXZlLWN1cnJlbnQtYnVmZmVy IChzZXQtYnVmZmVyIHRlbXAtYnVmZmVyKSAodW53aW5kLXByb3RlY3QgKHByb2duIChsZXQgKChk ZWZhdWx0LWRpcmVjdG9yeSAoZWxwYWEtLWRpcm5hbWUgZGlyKSkpIChlbHBhYS0tY2FsbCB0ICJn aXQiICJyZXNldCIgIi0tbWVyZ2UiIHJldikgKGVscGFhLS1tZXNzYWdlICJSZXZlcnRlZCB0byBy ZWxlYXNlIHJldmlzaW9uICVzXG4lcyIgcmV2IChidWZmZXItc3RyaW5nKSkpKSAoYW5kIChidWZm ZXItbmFtZSB0ZW1wLWJ1ZmZlcikgKGtpbGwtYnVmZmVyIHRlbXAtYnVmZmVyKSkpKSkKICAoaWYg KGVxdWFsIHJldiBjdXItcmV2KSAoZWxwYWEtLW1lc3NhZ2UgIkN1cnJlbnQgcmV2aXNpb24gaXMg YWxyZWFkeSBkZXNpcmVkIHJldmlzaW9uISIpIChsZXQgKCh0ZW1wLWJ1ZmZlciAoZ2VuZXJhdGUt bmV3LWJ1ZmZlciAiICp0ZW1wKiIgdCkpKSAoc2F2ZS1jdXJyZW50LWJ1ZmZlciAoc2V0LWJ1ZmZl ciB0ZW1wLWJ1ZmZlcikgKHVud2luZC1wcm90ZWN0IChwcm9nbiAobGV0ICgoZGVmYXVsdC1kaXJl Y3RvcnkgLi4uKSkgKGVscGFhLS1jYWxsIHQgImdpdCIgInJlc2V0IiAiLS1tZXJnZSIgcmV2KSAo ZWxwYWEtLW1lc3NhZ2UgIlJldmVydGVkIHRvIHJlbGVhc2UgcmV2aXNpb24gJXNcbiVzIiByZXYg KGJ1ZmZlci1zdHJpbmcpKSkpIChhbmQgKGJ1ZmZlci1uYW1lIHRlbXAtYnVmZmVyKSAoa2lsbC1i dWZmZXIgdGVtcC1idWZmZXIpKSkpKSkKICAobGV0ICgoY3VyLXJldiAobGV0KiAoKGZ0biAoZmls ZS10cnVlbmFtZSAoZXhwYW5kLWZpbGUtbmFtZSAuLi4gZGlyKSkpIChkZWZhdWx0LWRpcmVjdG9y eSAoZmlsZS1uYW1lLWRpcmVjdG9yeSBmdG4pKSkgKHZjLXdvcmtpbmctcmV2aXNpb24gZnRuKSkp KSAoaWYgKGVxdWFsIHJldiBjdXItcmV2KSAoZWxwYWEtLW1lc3NhZ2UgIkN1cnJlbnQgcmV2aXNp b24gaXMgYWxyZWFkeSBkZXNpcmVkIHJldmlzaW9uISIpIChsZXQgKCh0ZW1wLWJ1ZmZlciAoZ2Vu ZXJhdGUtbmV3LWJ1ZmZlciAiICp0ZW1wKiIgdCkpKSAoc2F2ZS1jdXJyZW50LWJ1ZmZlciAoc2V0 LWJ1ZmZlciB0ZW1wLWJ1ZmZlcikgKHVud2luZC1wcm90ZWN0IChwcm9nbiAobGV0ICguLi4pIChl bHBhYS0tY2FsbCB0ICJnaXQiICJyZXNldCIgIi0tbWVyZ2UiIHJldikgKGVscGFhLS1tZXNzYWdl ICJSZXZlcnRlZCB0byByZWxlYXNlIHJldmlzaW9uICVzXG4lcyIgcmV2IC4uLikpKSAoYW5kIChi dWZmZXItbmFtZSB0ZW1wLWJ1ZmZlcikgKGtpbGwtYnVmZmVyIHRlbXAtYnVmZmVyKSkpKSkpKQog IGVscGFhLS1zZWxlY3QtcmV2aXNpb24oIi9ob21lL3Byb3QvR2l0L2J1aWxkL2VscGEvcGFja2Fn ZXMvcHJvamVjdCIgKCJwcm9qZWN0IiA6Y29yZSAibGlzcC9wcm9nbW9kZXMvcHJvamVjdC5lbCIp IG5pbCkKICAocHJvZ24gKGVscGFhLS1zZWxlY3QtcmV2aXNpb24gZGlyIHBrZy1zcGVjIChmdW5j YWxsIHJldmlzaW9uLWZ1bmN0aW9uKSkpCiAgKGlmIHJldmlzaW9uLWZ1bmN0aW9uIChwcm9nbiAo ZWxwYWEtLXNlbGVjdC1yZXZpc2lvbiBkaXIgcGtnLXNwZWMgKGZ1bmNhbGwgcmV2aXNpb24tZnVu Y3Rpb24pKSkpCiAgKGxldCogKChkZXN0ZGlyIChmaWxlLW5hbWUtZGlyZWN0b3J5IHRhcmJhbGwp KSAocGtnbmFtZSAoY2FyIHBrZy1zcGVjKSkgKF8gKGlmIChhbmQgZGVzdGRpciAobm90IChmaWxl LWRpcmVjdG9yeS1wIGRlc3RkaXIpKSkgKHByb2duIChtYWtlLWRpcmVjdG9yeSBkZXN0ZGlyKSkp KSAodmVycyAobnRoIDEgbWV0YWRhdGEpKSAoZWxwYWlnbm9yZSAoZXhwYW5kLWZpbGUtbmFtZSAi LmVscGFpZ25vcmUiIGRpcikpIChpZ25vcmVzIChlbHBhYS0tc3BlYy1nZXQgcGtnLXNwZWMgOmln bm9yZWQtZmlsZXMpKSAocmVuYW1lcyAoZWxwYWEtLXNwZWMtZ2V0IHBrZy1zcGVjIDpyZW5hbWVz KSkgKGxkaXIgKGVscGFhLS1zcGVjLWdldCBwa2ctc3BlYyA6bGlzcC1kaXIpKSAocmUgKGNvbmNh dCAiXFxgIiAocmVnZXhwLXF1b3RlIHBrZ25hbWUpICItXFwoWzAtOV0uKlxcKVxcLlxcKHRhclxc fGVsXFwpXFwoXFwuW2Etel0qelxcKT9cXCciKSkgKG9sZHRhcmJhbGxzIChpZiBvbmUtdGFyYmFs bCBuaWwgKG1hcGNhciAjJyhsYW1iZGEgKGZpbGUpIChzdHJpbmctbWF0Y2ggcmUgZmlsZSkgKGNv bnMgLi4uIGZpbGUpKSAoZGlyZWN0b3J5LWZpbGVzIGRlc3RkaXIgbmlsIHJlKSkpKSkgKGlmIGxk aXIgKHByb2duIChzZXRxIHJlbmFtZXMgKGxldCogKCh2YSAobGlzdCAuLi4gIiIpKSkgKGlmICht ZW1iZXIgdmEgcmVuYW1lcykgcmVuYW1lcyAoY29ucyB2YSByZW5hbWVzKSkpKSkpIChpZiByZXZp c2lvbi1mdW5jdGlvbiAocHJvZ24gKGVscGFhLS1zZWxlY3QtcmV2aXNpb24gZGlyIHBrZy1zcGVj IChmdW5jYWxsIHJldmlzaW9uLWZ1bmN0aW9uKSkpKSAoZWxwYWEtLWNvcHlyaWdodC1jaGVjayBw a2ctc3BlYykgKGVscGFhLS1tYWtlIHBrZy1zcGVjIGRpcikgKGVscGFhLS1idWlsZC1JbmZvIHBr Zy1zcGVjIGRpcikgKGVscGFhLS13cml0ZS1wa2ctZmlsZSBkaXIgcGtnbmFtZSBtZXRhZGF0YSkg KHByb2duIChvciAobm90IChzdHJpbmctbWF0Y2ggIltdWypcXHw/XSIgcGtnbmFtZSkpIChjbC0t YXNzZXJ0aW9uLWZhaWxlZCAnKG5vdCAoc3RyaW5nLW1hdGNoICJbXVsqXFx8P10iIHBrZ25hbWUp KSkpIG5pbCkgKHByb2duIChvciAobm90IChzdHJpbmctbWF0Y2ggIltdWypcXHw/XSIgdmVycykp IChjbC0tYXNzZXJ0aW9uLWZhaWxlZCAnKG5vdCAoc3RyaW5nLW1hdGNoICJbXVsqXFx8P10iIHZl cnMpKSkpIG5pbCkgKGFwcGx5ICMnZWxwYWEtLWNhbGwgbmlsICJ0YXIiIChjb25zICItLWV4Y2x1 ZGUtdmNzIiAoYXBwZW5kIChjb25kIChpZ25vcmVzIChtYXBjYXIgIycuLi4gaWdub3JlcykpICgo ZmlsZS1yZWFkYWJsZS1wIGVscGFpZ25vcmUpIChsaXN0ICItWCIgZWxwYWlnbm9yZSkpKSAobWFw Y2FyICMnKGxhbWJkYSAocikgKGVscGFhLS1tYWtlLXRhci10cmFuc2Zvcm0gcGtnbmFtZSByKSkg cmVuYW1lcykgKGxpc3QgIi0tdHJhbnNmb3JtIiAoZm9ybWF0ICJzfF5wYWNrYWdlcy8lc3wlcy0l c3wiIHBrZ25hbWUgcGtnbmFtZSB2ZXJzKSAiLWNoZiIgdGFyYmFsbCAoY29uY2F0ICJwYWNrYWdl cy8iIHBrZ25hbWUpKSkpKSAoaWYgb25lLXRhcmJhbGwgbmlsIChsZXQqICgocGtnZGVzYyAoZWxw YWEtLXByb2Nlc3MtbXVsdGktZmlsZS1wYWNrYWdlIGRpciBwa2duYW1lICdkb250LXJlbmFtZSkp KSAoZWxwYWEtLW1lc3NhZ2UgIiVzOiAlUyIgcGtnbmFtZSBwa2dkZXNjKSAoZWxwYWEtLXVwZGF0 ZS1hcmNoaXZlLWNvbnRlbnRzIHBrZ2Rlc2MgZGVzdGRpcikgKGlmIChhbmQgbmlsIHJldmlzaW9u LWZ1bmN0aW9uKSAocHJvZ24gKGxldCAoKGRlZmF1bHQtZGlyZWN0b3J5IC4uLikpIChlbHBhYS0t Y2FsbCBuaWwgImdpdCIgInRhZyIgIi1mIiAoZm9ybWF0ICIlcy1yZWxlYXNlLyVzLSVzIiBlbHBh YS0tbmFtZSBwa2duYW1lIHZlcnMpKSkpKSAobGV0ICgobGluayAoZXhwYW5kLWZpbGUtbmFtZSAo Zm9ybWF0ICIlcy50YXIiIHBrZ25hbWUpIGRlc3RkaXIpKSkgKGlmIChmaWxlLXN5bWxpbmstcCBs aW5rKSAocHJvZ24gKGRlbGV0ZS1maWxlIGxpbmspKSkgKG1ha2Utc3ltYm9saWMtbGluayAoZmls ZS1uYW1lLW5vbmRpcmVjdG9yeSB0YXJiYWxsKSBsaW5rKSkgKHNldHEgb2xkdGFyYmFsbHMgKGVs cGFhLS1wcnVuZS1vbGQtdGFyYmFsbHMgdGFyYmFsbCBvbGR0YXJiYWxscyBkZXN0ZGlyKSkgKGxl dCogKChkZWZhdWx0LWRpcmVjdG9yeSAoZXhwYW5kLWZpbGUtbmFtZSBkZXN0ZGlyKSkpIChlbHBh YS0taHRtbC1tYWtlLXBrZyBwa2dkZXNjIHBrZy1zcGVjIChjb25zIChjb25zIHZlcnMgKGZpbGUt bmFtZS1ub25kaXJlY3RvcnkgdGFyYmFsbCkpIG9sZHRhcmJhbGxzKSBkaXIpKSAobWVzc2FnZSAi QnVpbHQgbmV3IHBhY2thZ2UgJXMhIiB0YXJiYWxsKSAnbmV3KSkpCiAgKGNsb3N1cmUgKChvbmUt dGFyYmFsbCkgKHJldmlzaW9uLWZ1bmN0aW9uIGNsb3N1cmUgKCh0YXJiYWxsIC4gImFyY2hpdmUv cHJvamVjdC0wLjUuNC50YXIiKSAobmV3KSAodGFyYmFsbCAuICJhcmNoaXZlLWRldmVsL3Byb2pl Y3QtMC41LjQuMC4yMDIxMDMwOS4yMDYwMS50YXIiKSAoZGV2ZWwtdmVycyAuICIwLjUuNC4wLjIw MjEwMzA5LjIwNjAxIikgKGRhdGUtdmVyc2lvbiAuICIyMDIxMDMwOS4yMDYwMSIpICh2ZXJzIC4g IjAuNS40IikgKG1ldGFkYXRhIG5pbCAiMC41LjQiICJPcGVyYXRpb25zIG9uIHRoZSBjdXJyZW50 IHByb2plY3QiICgoZW1hY3MgKDI2IDEpKSAoeHJlZiAoMSAwIDIpKSkgKCg6dXJsIC4gImh0dHBz Oi8vZWxwYS5nbnUub3JnL3BhY2thZ2VzL3Byb2plY3QuaHRtbCIpKSkgKF8pIChfKSAoZGlyIC4g Ii9ob21lL3Byb3QvR2l0L2J1aWxkL2VscGEvcGFja2FnZXMvcHJvamVjdCIpIChwa2duYW1lIC4g InByb2plY3QiKSAob25lLXRhcmJhbGwpIChwa2ctc3BlYyAicHJvamVjdCIgOmNvcmUgImxpc3Av cHJvZ21vZGVzL3Byb2plY3QuZWwiKSBlbHBhYS0tdGVtcC1maWxlcyB0KSBuaWwgKGVscGFhLS1n ZXQtcmVsZWFzZS1yZXZpc2lvbiBkaXIgcGtnLXNwZWMgdmVycyAocGxpc3QtZ2V0IChjZHIgcGtn LXNwZWMpIDp2ZXJzaW9uLW1hcCkpKSAobWV0YWRhdGEgbmlsICIwLjUuNCIgIk9wZXJhdGlvbnMg b24gdGhlIGN1cnJlbnQgcHJvamVjdCIgKChlbWFjcyAoMjYgMSkpICh4cmVmICgxIDAgMikpKSAo KDp1cmwgLiAiaHR0cHM6Ly9lbHBhLmdudS5vcmcvcGFja2FnZXMvcHJvamVjdC5odG1sIikpKSAo cGtnLXNwZWMgInByb2plY3QiIDpjb3JlICJsaXNwL3Byb2dtb2Rlcy9wcm9qZWN0LmVsIikgKGRp ciAuICIvaG9tZS9wcm90L0dpdC9idWlsZC9lbHBhL3BhY2thZ2VzL3Byb2plY3QiKSAodGFyYmFs bCAuICJhcmNoaXZlL3Byb2plY3QtMC41LjQudGFyIikgZWxwYWEtLXRlbXAtZmlsZXMgdCkgbmls IChsZXQqICgoZGVzdGRpciAoZmlsZS1uYW1lLWRpcmVjdG9yeSB0YXJiYWxsKSkgKHBrZ25hbWUg KGNhciBwa2ctc3BlYykpIChfIChpZiAoYW5kIGRlc3RkaXIgKG5vdCAoZmlsZS1kaXJlY3Rvcnkt cCBkZXN0ZGlyKSkpIChwcm9nbiAobWFrZS1kaXJlY3RvcnkgZGVzdGRpcikpKSkgKHZlcnMgKG50 aCAxIG1ldGFkYXRhKSkgKGVscGFpZ25vcmUgKGV4cGFuZC1maWxlLW5hbWUgIi5lbHBhaWdub3Jl IiBkaXIpKSAoaWdub3JlcyAoZWxwYWEtLXNwZWMtZ2V0IHBrZy1zcGVjIDppZ25vcmVkLWZpbGVz KSkgKHJlbmFtZXMgKGVscGFhLS1zcGVjLWdldCBwa2ctc3BlYyA6cmVuYW1lcykpIChsZGlyIChl bHBhYS0tc3BlYy1nZXQgcGtnLXNwZWMgOmxpc3AtZGlyKSkgKHJlIChjb25jYXQgIlxcYCIgKHJl Z2V4cC1xdW90ZSBwa2duYW1lKSAiLVxcKFswLTldLipcXClcXC5cXCh0YXJcXHxlbFxcKVxcKFxc LlthLXpdKnpcXCk/XFwnIikpIChvbGR0YXJiYWxscyAoaWYgb25lLXRhcmJhbGwgbmlsIChtYXBj YXIgIycobGFtYmRhIC4uLiAuLi4gLi4uKSAoZGlyZWN0b3J5LWZpbGVzIGRlc3RkaXIgbmlsIHJl KSkpKSkgKGlmIGxkaXIgKHByb2duIChzZXRxIHJlbmFtZXMgKGxldCogKCh2YSAuLi4pKSAoaWYg KG1lbWJlciB2YSByZW5hbWVzKSByZW5hbWVzIChjb25zIHZhIHJlbmFtZXMpKSkpKSkgKGlmIHJl dmlzaW9uLWZ1bmN0aW9uIChwcm9nbiAoZWxwYWEtLXNlbGVjdC1yZXZpc2lvbiBkaXIgcGtnLXNw ZWMgKGZ1bmNhbGwgcmV2aXNpb24tZnVuY3Rpb24pKSkpIChlbHBhYS0tY29weXJpZ2h0LWNoZWNr IHBrZy1zcGVjKSAoZWxwYWEtLW1ha2UgcGtnLXNwZWMgZGlyKSAoZWxwYWEtLWJ1aWxkLUluZm8g cGtnLXNwZWMgZGlyKSAoZWxwYWEtLXdyaXRlLXBrZy1maWxlIGRpciBwa2duYW1lIG1ldGFkYXRh KSAocHJvZ24gKG9yIChub3QgKHN0cmluZy1tYXRjaCAiW11bKlxcfD9dIiBwa2duYW1lKSkgKGNs LS1hc3NlcnRpb24tZmFpbGVkICcobm90IChzdHJpbmctbWF0Y2ggIltdWypcXHw/XSIgcGtnbmFt ZSkpKSkgbmlsKSAocHJvZ24gKG9yIChub3QgKHN0cmluZy1tYXRjaCAiW11bKlxcfD9dIiB2ZXJz KSkgKGNsLS1hc3NlcnRpb24tZmFpbGVkICcobm90IChzdHJpbmctbWF0Y2ggIltdWypcXHw/XSIg dmVycykpKSkgbmlsKSAoYXBwbHkgIydlbHBhYS0tY2FsbCBuaWwgInRhciIgKGNvbnMgIi0tZXhj bHVkZS12Y3MiIChhcHBlbmQgKGNvbmQgKGlnbm9yZXMgKG1hcGNhciAuLi4gaWdub3JlcykpICgo ZmlsZS1yZWFkYWJsZS1wIGVscGFpZ25vcmUpIChsaXN0ICItWCIgZWxwYWlnbm9yZSkpKSAobWFw Y2FyICMnKGxhbWJkYSAuLi4gLi4uKSByZW5hbWVzKSAobGlzdCAiLS10cmFuc2Zvcm0iIChmb3Jt YXQgInN8XnBhY2thZ2VzLyVzfCVzLSVzfCIgcGtnbmFtZSBwa2duYW1lIHZlcnMpICItY2hmIiB0 YXJiYWxsIChjb25jYXQgInBhY2thZ2VzLyIgcGtnbmFtZSkpKSkpIChpZiBvbmUtdGFyYmFsbCBu aWwgKGxldCogKChwa2dkZXNjIChlbHBhYS0tcHJvY2Vzcy1tdWx0aS1maWxlLXBhY2thZ2UgZGly IHBrZ25hbWUgJ2RvbnQtcmVuYW1lKSkpIChlbHBhYS0tbWVzc2FnZSAiJXM6ICVTIiBwa2duYW1l IHBrZ2Rlc2MpIChlbHBhYS0tdXBkYXRlLWFyY2hpdmUtY29udGVudHMgcGtnZGVzYyBkZXN0ZGly KSAoaWYgKGFuZCBuaWwgcmV2aXNpb24tZnVuY3Rpb24pIChwcm9nbiAobGV0ICguLi4pIChlbHBh YS0tY2FsbCBuaWwgImdpdCIgInRhZyIgIi1mIiAuLi4pKSkpIChsZXQgKChsaW5rIChleHBhbmQt ZmlsZS1uYW1lIC4uLiBkZXN0ZGlyKSkpIChpZiAoZmlsZS1zeW1saW5rLXAgbGluaykgKHByb2du IChkZWxldGUtZmlsZSBsaW5rKSkpIChtYWtlLXN5bWJvbGljLWxpbmsgKGZpbGUtbmFtZS1ub25k aXJlY3RvcnkgdGFyYmFsbCkgbGluaykpIChzZXRxIG9sZHRhcmJhbGxzIChlbHBhYS0tcHJ1bmUt b2xkLXRhcmJhbGxzIHRhcmJhbGwgb2xkdGFyYmFsbHMgZGVzdGRpcikpIChsZXQqICgoZGVmYXVs dC1kaXJlY3RvcnkgKGV4cGFuZC1maWxlLW5hbWUgZGVzdGRpcikpKSAoZWxwYWEtLWh0bWwtbWFr ZS1wa2cgcGtnZGVzYyBwa2ctc3BlYyAoY29ucyAoY29ucyB2ZXJzIC4uLikgb2xkdGFyYmFsbHMp IGRpcikpIChtZXNzYWdlICJCdWlsdCBuZXcgcGFja2FnZSAlcyEiIHRhcmJhbGwpICduZXcpKSkp KCkKICBmdW5jYWxsKChjbG9zdXJlICgob25lLXRhcmJhbGwpIChyZXZpc2lvbi1mdW5jdGlvbiBj bG9zdXJlICgodGFyYmFsbCAuICJhcmNoaXZlL3Byb2plY3QtMC41LjQudGFyIikgKG5ldykgKHRh cmJhbGwgLiAiYXJjaGl2ZS1kZXZlbC9wcm9qZWN0LTAuNS40LjAuMjAyMTAzMDkuMjA2MDEudGFy IikgKGRldmVsLXZlcnMgLiAiMC41LjQuMC4yMDIxMDMwOS4yMDYwMSIpIChkYXRlLXZlcnNpb24g LiAiMjAyMTAzMDkuMjA2MDEiKSAodmVycyAuICIwLjUuNCIpIChtZXRhZGF0YSBuaWwgIjAuNS40 IiAiT3BlcmF0aW9ucyBvbiB0aGUgY3VycmVudCBwcm9qZWN0IiAoKGVtYWNzIC4uLikgKHhyZWYg Li4uKSkgKCg6dXJsIC4gImh0dHBzOi8vZWxwYS5nbnUub3JnL3BhY2thZ2VzL3Byb2plY3QuaHRt bCIpKSkgKF8pIChfKSAoZGlyIC4gIi9ob21lL3Byb3QvR2l0L2J1aWxkL2VscGEvcGFja2FnZXMv cHJvamVjdCIpIChwa2duYW1lIC4gInByb2plY3QiKSAob25lLXRhcmJhbGwpIChwa2ctc3BlYyAi cHJvamVjdCIgOmNvcmUgImxpc3AvcHJvZ21vZGVzL3Byb2plY3QuZWwiKSBlbHBhYS0tdGVtcC1m aWxlcyB0KSBuaWwgKGVscGFhLS1nZXQtcmVsZWFzZS1yZXZpc2lvbiBkaXIgcGtnLXNwZWMgdmVy cyAocGxpc3QtZ2V0IChjZHIgcGtnLXNwZWMpIDp2ZXJzaW9uLW1hcCkpKSAobWV0YWRhdGEgbmls ICIwLjUuNCIgIk9wZXJhdGlvbnMgb24gdGhlIGN1cnJlbnQgcHJvamVjdCIgKChlbWFjcyAoMjYg MSkpICh4cmVmICgxIDAgMikpKSAoKDp1cmwgLiAiaHR0cHM6Ly9lbHBhLmdudS5vcmcvcGFja2Fn ZXMvcHJvamVjdC5odG1sIikpKSAocGtnLXNwZWMgInByb2plY3QiIDpjb3JlICJsaXNwL3Byb2dt b2Rlcy9wcm9qZWN0LmVsIikgKGRpciAuICIvaG9tZS9wcm90L0dpdC9idWlsZC9lbHBhL3BhY2th Z2VzL3Byb2plY3QiKSAodGFyYmFsbCAuICJhcmNoaXZlL3Byb2plY3QtMC41LjQudGFyIikgZWxw YWEtLXRlbXAtZmlsZXMgdCkgbmlsIChsZXQqICgoZGVzdGRpciAoZmlsZS1uYW1lLWRpcmVjdG9y eSB0YXJiYWxsKSkgKHBrZ25hbWUgKGNhciBwa2ctc3BlYykpIChfIChpZiAoYW5kIGRlc3RkaXIg KG5vdCAuLi4pKSAocHJvZ24gKG1ha2UtZGlyZWN0b3J5IGRlc3RkaXIpKSkpICh2ZXJzIChudGgg MSBtZXRhZGF0YSkpIChlbHBhaWdub3JlIChleHBhbmQtZmlsZS1uYW1lICIuZWxwYWlnbm9yZSIg ZGlyKSkgKGlnbm9yZXMgKGVscGFhLS1zcGVjLWdldCBwa2ctc3BlYyA6aWdub3JlZC1maWxlcykp IChyZW5hbWVzIChlbHBhYS0tc3BlYy1nZXQgcGtnLXNwZWMgOnJlbmFtZXMpKSAobGRpciAoZWxw YWEtLXNwZWMtZ2V0IHBrZy1zcGVjIDpsaXNwLWRpcikpIChyZSAoY29uY2F0ICJcXGAiIChyZWdl eHAtcXVvdGUgcGtnbmFtZSkgIi1cXChbMC05XS4qXFwpXFwuXFwodGFyXFx8ZWxcXClcXChcXC5b YS16XSp6XFwpP1xcJyIpKSAob2xkdGFyYmFsbHMgKGlmIG9uZS10YXJiYWxsIG5pbCAobWFwY2Fy ICMnLi4uIChkaXJlY3RvcnktZmlsZXMgZGVzdGRpciBuaWwgcmUpKSkpKSAoaWYgbGRpciAocHJv Z24gKHNldHEgcmVuYW1lcyAobGV0KiAoLi4uKSAoaWYgLi4uIHJlbmFtZXMgLi4uKSkpKSkgKGlm IHJldmlzaW9uLWZ1bmN0aW9uIChwcm9nbiAoZWxwYWEtLXNlbGVjdC1yZXZpc2lvbiBkaXIgcGtn LXNwZWMgKGZ1bmNhbGwgcmV2aXNpb24tZnVuY3Rpb24pKSkpIChlbHBhYS0tY29weXJpZ2h0LWNo ZWNrIHBrZy1zcGVjKSAoZWxwYWEtLW1ha2UgcGtnLXNwZWMgZGlyKSAoZWxwYWEtLWJ1aWxkLUlu Zm8gcGtnLXNwZWMgZGlyKSAoZWxwYWEtLXdyaXRlLXBrZy1maWxlIGRpciBwa2duYW1lIG1ldGFk YXRhKSAocHJvZ24gKG9yIChub3QgKHN0cmluZy1tYXRjaCAiW11bKlxcfD9dIiBwa2duYW1lKSkg KGNsLS1hc3NlcnRpb24tZmFpbGVkICcobm90IC4uLikpKSBuaWwpIChwcm9nbiAob3IgKG5vdCAo c3RyaW5nLW1hdGNoICJbXVsqXFx8P10iIHZlcnMpKSAoY2wtLWFzc2VydGlvbi1mYWlsZWQgJyhu b3QgLi4uKSkpIG5pbCkgKGFwcGx5ICMnZWxwYWEtLWNhbGwgbmlsICJ0YXIiIChjb25zICItLWV4 Y2x1ZGUtdmNzIiAoYXBwZW5kIChjb25kIChpZ25vcmVzIC4uLikgKC4uLiAuLi4pKSAobWFwY2Fy ICMnLi4uIHJlbmFtZXMpIChsaXN0ICItLXRyYW5zZm9ybSIgKGZvcm1hdCAic3xecGFja2FnZXMv JXN8JXMtJXN8IiBwa2duYW1lIHBrZ25hbWUgdmVycykgIi1jaGYiIHRhcmJhbGwgKGNvbmNhdCAi cGFja2FnZXMvIiBwa2duYW1lKSkpKSkgKGlmIG9uZS10YXJiYWxsIG5pbCAobGV0KiAoKHBrZ2Rl c2MgKGVscGFhLS1wcm9jZXNzLW11bHRpLWZpbGUtcGFja2FnZSBkaXIgcGtnbmFtZSAuLi4pKSkg KGVscGFhLS1tZXNzYWdlICIlczogJVMiIHBrZ25hbWUgcGtnZGVzYykgKGVscGFhLS11cGRhdGUt YXJjaGl2ZS1jb250ZW50cyBwa2dkZXNjIGRlc3RkaXIpIChpZiAoYW5kIG5pbCByZXZpc2lvbi1m dW5jdGlvbikgKHByb2duIChsZXQgLi4uIC4uLikpKSAobGV0ICgobGluayAuLi4pKSAoaWYgKGZp bGUtc3ltbGluay1wIGxpbmspIChwcm9nbiAuLi4pKSAobWFrZS1zeW1ib2xpYy1saW5rIChmaWxl LW5hbWUtbm9uZGlyZWN0b3J5IHRhcmJhbGwpIGxpbmspKSAoc2V0cSBvbGR0YXJiYWxscyAoZWxw YWEtLXBydW5lLW9sZC10YXJiYWxscyB0YXJiYWxsIG9sZHRhcmJhbGxzIGRlc3RkaXIpKSAobGV0 KiAoKGRlZmF1bHQtZGlyZWN0b3J5IC4uLikpIChlbHBhYS0taHRtbC1tYWtlLXBrZyBwa2dkZXNj IHBrZy1zcGVjIChjb25zIC4uLiBvbGR0YXJiYWxscykgZGlyKSkgKG1lc3NhZ2UgIkJ1aWx0IG5l dyBwYWNrYWdlICVzISIgdGFyYmFsbCkgJ25ldykpKSkpCiAgKHByb2duIChlbHBhYS0tY2xlYW4g ZGlyKSAoZnVuY2FsbCBmKSkKICAodW53aW5kLXByb3RlY3QgKHByb2duIChlbHBhYS0tY2xlYW4g ZGlyKSAoZnVuY2FsbCBmKSkgKGVscGFhLS1tZXNzYWdlICJEZWxldGluZyB0ZW1wIGZpbGVzOiAl UyIgZWxwYWEtLXRlbXAtZmlsZXMpIChsZXQgKCgtLWRvbGlzdC10YWlsLS0gZWxwYWEtLXRlbXAt ZmlsZXMpKSAod2hpbGUgLS1kb2xpc3QtdGFpbC0tIChsZXQgKChmIChjYXIgLS1kb2xpc3QtdGFp bC0tKSkpIChpZiAoc3RyaW5ncCBmKSAoZGVsZXRlLWZpbGUgZikgKGZ1bmNhbGwgZikpIChzZXRx IC0tZG9saXN0LXRhaWwtLSAoY2RyIC0tZG9saXN0LXRhaWwtLSkpKSkpKQogIChsZXQgKChlbHBh YS0tdGVtcC1maWxlcyBuaWwpKSAodW53aW5kLXByb3RlY3QgKHByb2duIChlbHBhYS0tY2xlYW4g ZGlyKSAoZnVuY2FsbCBmKSkgKGVscGFhLS1tZXNzYWdlICJEZWxldGluZyB0ZW1wIGZpbGVzOiAl UyIgZWxwYWEtLXRlbXAtZmlsZXMpIChsZXQgKCgtLWRvbGlzdC10YWlsLS0gZWxwYWEtLXRlbXAt ZmlsZXMpKSAod2hpbGUgLS1kb2xpc3QtdGFpbC0tIChsZXQgKChmIChjYXIgLS1kb2xpc3QtdGFp bC0tKSkpIChpZiAoc3RyaW5ncCBmKSAoZGVsZXRlLWZpbGUgZikgKGZ1bmNhbGwgZikpIChzZXRx IC0tZG9saXN0LXRhaWwtLSAoY2RyIC0tZG9saXN0LXRhaWwtLSkpKSkpKSkKICBlbHBhYS0tY2Fs bC13aXRoLXRlbXAtZmlsZXMoIi9ob21lL3Byb3QvR2l0L2J1aWxkL2VscGEvcGFja2FnZXMvcHJv amVjdCIgKGNsb3N1cmUgKChvbmUtdGFyYmFsbCkgKHJldmlzaW9uLWZ1bmN0aW9uIGNsb3N1cmUg KCh0YXJiYWxsIC4gImFyY2hpdmUvcHJvamVjdC0wLjUuNC50YXIiKSAobmV3KSAodGFyYmFsbCAu ICJhcmNoaXZlLWRldmVsL3Byb2plY3QtMC41LjQuMC4yMDIxMDMwOS4yMDYwMS50YXIiKSAoZGV2 ZWwtdmVycyAuICIwLjUuNC4wLjIwMjEwMzA5LjIwNjAxIikgKGRhdGUtdmVyc2lvbiAuICIyMDIx MDMwOS4yMDYwMSIpICh2ZXJzIC4gIjAuNS40IikgKG1ldGFkYXRhIG5pbCAiMC41LjQiICJPcGVy YXRpb25zIG9uIHRoZSBjdXJyZW50IHByb2plY3QiICgoZW1hY3MgLi4uKSAoeHJlZiAuLi4pKSAo KDp1cmwgLiAiaHR0cHM6Ly9lbHBhLmdudS5vcmcvcGFja2FnZXMvcHJvamVjdC5odG1sIikpKSAo XykgKF8pIChkaXIgLiAiL2hvbWUvcHJvdC9HaXQvYnVpbGQvZWxwYS9wYWNrYWdlcy9wcm9qZWN0 IikgKHBrZ25hbWUgLiAicHJvamVjdCIpIChvbmUtdGFyYmFsbCkgKHBrZy1zcGVjICJwcm9qZWN0 IiA6Y29yZSAibGlzcC9wcm9nbW9kZXMvcHJvamVjdC5lbCIpIGVscGFhLS10ZW1wLWZpbGVzIHQp IG5pbCAoZWxwYWEtLWdldC1yZWxlYXNlLXJldmlzaW9uIGRpciBwa2ctc3BlYyB2ZXJzIChwbGlz dC1nZXQgKGNkciBwa2ctc3BlYykgOnZlcnNpb24tbWFwKSkpIChtZXRhZGF0YSBuaWwgIjAuNS40 IiAiT3BlcmF0aW9ucyBvbiB0aGUgY3VycmVudCBwcm9qZWN0IiAoKGVtYWNzICgyNiAxKSkgKHhy ZWYgKDEgMCAyKSkpICgoOnVybCAuICJodHRwczovL2VscGEuZ251Lm9yZy9wYWNrYWdlcy9wcm9q ZWN0Lmh0bWwiKSkpIChwa2ctc3BlYyAicHJvamVjdCIgOmNvcmUgImxpc3AvcHJvZ21vZGVzL3By b2plY3QuZWwiKSAoZGlyIC4gIi9ob21lL3Byb3QvR2l0L2J1aWxkL2VscGEvcGFja2FnZXMvcHJv amVjdCIpICh0YXJiYWxsIC4gImFyY2hpdmUvcHJvamVjdC0wLjUuNC50YXIiKSBlbHBhYS0tdGVt cC1maWxlcyB0KSBuaWwgKGxldCogKChkZXN0ZGlyIChmaWxlLW5hbWUtZGlyZWN0b3J5IHRhcmJh bGwpKSAocGtnbmFtZSAoY2FyIHBrZy1zcGVjKSkgKF8gKGlmIChhbmQgZGVzdGRpciAobm90IC4u LikpIChwcm9nbiAobWFrZS1kaXJlY3RvcnkgZGVzdGRpcikpKSkgKHZlcnMgKG50aCAxIG1ldGFk YXRhKSkgKGVscGFpZ25vcmUgKGV4cGFuZC1maWxlLW5hbWUgIi5lbHBhaWdub3JlIiBkaXIpKSAo aWdub3JlcyAoZWxwYWEtLXNwZWMtZ2V0IHBrZy1zcGVjIDppZ25vcmVkLWZpbGVzKSkgKHJlbmFt ZXMgKGVscGFhLS1zcGVjLWdldCBwa2ctc3BlYyA6cmVuYW1lcykpIChsZGlyIChlbHBhYS0tc3Bl Yy1nZXQgcGtnLXNwZWMgOmxpc3AtZGlyKSkgKHJlIChjb25jYXQgIlxcYCIgKHJlZ2V4cC1xdW90 ZSBwa2duYW1lKSAiLVxcKFswLTldLipcXClcXC5cXCh0YXJcXHxlbFxcKVxcKFxcLlthLXpdKnpc XCk/XFwnIikpIChvbGR0YXJiYWxscyAoaWYgb25lLXRhcmJhbGwgbmlsIChtYXBjYXIgIycuLi4g KGRpcmVjdG9yeS1maWxlcyBkZXN0ZGlyIG5pbCByZSkpKSkpIChpZiBsZGlyIChwcm9nbiAoc2V0 cSByZW5hbWVzIChsZXQqICguLi4pIChpZiAuLi4gcmVuYW1lcyAuLi4pKSkpKSAoaWYgcmV2aXNp b24tZnVuY3Rpb24gKHByb2duIChlbHBhYS0tc2VsZWN0LXJldmlzaW9uIGRpciBwa2ctc3BlYyAo ZnVuY2FsbCByZXZpc2lvbi1mdW5jdGlvbikpKSkgKGVscGFhLS1jb3B5cmlnaHQtY2hlY2sgcGtn LXNwZWMpIChlbHBhYS0tbWFrZSBwa2ctc3BlYyBkaXIpIChlbHBhYS0tYnVpbGQtSW5mbyBwa2ct c3BlYyBkaXIpIChlbHBhYS0td3JpdGUtcGtnLWZpbGUgZGlyIHBrZ25hbWUgbWV0YWRhdGEpIChw cm9nbiAob3IgKG5vdCAoc3RyaW5nLW1hdGNoICJbXVsqXFx8P10iIHBrZ25hbWUpKSAoY2wtLWFz c2VydGlvbi1mYWlsZWQgJyhub3QgLi4uKSkpIG5pbCkgKHByb2duIChvciAobm90IChzdHJpbmct bWF0Y2ggIltdWypcXHw/XSIgdmVycykpIChjbC0tYXNzZXJ0aW9uLWZhaWxlZCAnKG5vdCAuLi4p KSkgbmlsKSAoYXBwbHkgIydlbHBhYS0tY2FsbCBuaWwgInRhciIgKGNvbnMgIi0tZXhjbHVkZS12 Y3MiIChhcHBlbmQgKGNvbmQgKGlnbm9yZXMgLi4uKSAoLi4uIC4uLikpIChtYXBjYXIgIycuLi4g cmVuYW1lcykgKGxpc3QgIi0tdHJhbnNmb3JtIiAoZm9ybWF0ICJzfF5wYWNrYWdlcy8lc3wlcy0l c3wiIHBrZ25hbWUgcGtnbmFtZSB2ZXJzKSAiLWNoZiIgdGFyYmFsbCAoY29uY2F0ICJwYWNrYWdl cy8iIHBrZ25hbWUpKSkpKSAoaWYgb25lLXRhcmJhbGwgbmlsIChsZXQqICgocGtnZGVzYyAoZWxw YWEtLXByb2Nlc3MtbXVsdGktZmlsZS1wYWNrYWdlIGRpciBwa2duYW1lIC4uLikpKSAoZWxwYWEt LW1lc3NhZ2UgIiVzOiAlUyIgcGtnbmFtZSBwa2dkZXNjKSAoZWxwYWEtLXVwZGF0ZS1hcmNoaXZl LWNvbnRlbnRzIHBrZ2Rlc2MgZGVzdGRpcikgKGlmIChhbmQgbmlsIHJldmlzaW9uLWZ1bmN0aW9u KSAocHJvZ24gKGxldCAuLi4gLi4uKSkpIChsZXQgKChsaW5rIC4uLikpIChpZiAoZmlsZS1zeW1s aW5rLXAgbGluaykgKHByb2duIC4uLikpIChtYWtlLXN5bWJvbGljLWxpbmsgKGZpbGUtbmFtZS1u b25kaXJlY3RvcnkgdGFyYmFsbCkgbGluaykpIChzZXRxIG9sZHRhcmJhbGxzIChlbHBhYS0tcHJ1 bmUtb2xkLXRhcmJhbGxzIHRhcmJhbGwgb2xkdGFyYmFsbHMgZGVzdGRpcikpIChsZXQqICgoZGVm YXVsdC1kaXJlY3RvcnkgLi4uKSkgKGVscGFhLS1odG1sLW1ha2UtcGtnIHBrZ2Rlc2MgcGtnLXNw ZWMgKGNvbnMgLi4uIG9sZHRhcmJhbGxzKSBkaXIpKSAobWVzc2FnZSAiQnVpbHQgbmV3IHBhY2th Z2UgJXMhIiB0YXJiYWxsKSAnbmV3KSkpKSkKICAoaWYgKG9yIChmaWxlLXJlYWRhYmxlLXAgdGFy YmFsbCkgKGZpbGUtcmVhZGFibGUtcCAocmVwbGFjZS1yZWdleHAtaW4tc3RyaW5nICJcXC50YXJc XCciICIuZWwiIHRhcmJhbGwpKSkgKHByb2duIChlbHBhYS0tbWVzc2FnZSAiVGFyYmFsbCAlcyBh bHJlYWR5IGJ1aWx0ISIgdGFyYmFsbCkgbmlsKSAoZWxwYWEtLWNhbGwtd2l0aC10ZW1wLWZpbGVz IGRpciAjJyhsYW1iZGEgbmlsIChsZXQqICgoZGVzdGRpciAoZmlsZS1uYW1lLWRpcmVjdG9yeSB0 YXJiYWxsKSkgKHBrZ25hbWUgKGNhciBwa2ctc3BlYykpIChfIChpZiAuLi4gLi4uKSkgKHZlcnMg KG50aCAxIG1ldGFkYXRhKSkgKGVscGFpZ25vcmUgKGV4cGFuZC1maWxlLW5hbWUgIi5lbHBhaWdu b3JlIiBkaXIpKSAoaWdub3JlcyAoZWxwYWEtLXNwZWMtZ2V0IHBrZy1zcGVjIDppZ25vcmVkLWZp bGVzKSkgKHJlbmFtZXMgKGVscGFhLS1zcGVjLWdldCBwa2ctc3BlYyA6cmVuYW1lcykpIChsZGly IChlbHBhYS0tc3BlYy1nZXQgcGtnLXNwZWMgOmxpc3AtZGlyKSkgKHJlIChjb25jYXQgIlxcYCIg Li4uICItXFwoWzAtOV0uKlxcKVxcLlxcKHRhclxcfGVsXFwpXFwoXFwuW2Etel0qelxcKT9cXCci KSkgKG9sZHRhcmJhbGxzIChpZiBvbmUtdGFyYmFsbCBuaWwgLi4uKSkpIChpZiBsZGlyIChwcm9n biAoc2V0cSByZW5hbWVzIC4uLikpKSAoaWYgcmV2aXNpb24tZnVuY3Rpb24gKHByb2duIChlbHBh YS0tc2VsZWN0LXJldmlzaW9uIGRpciBwa2ctc3BlYyAuLi4pKSkgKGVscGFhLS1jb3B5cmlnaHQt Y2hlY2sgcGtnLXNwZWMpIChlbHBhYS0tbWFrZSBwa2ctc3BlYyBkaXIpIChlbHBhYS0tYnVpbGQt SW5mbyBwa2ctc3BlYyBkaXIpIChlbHBhYS0td3JpdGUtcGtnLWZpbGUgZGlyIHBrZ25hbWUgbWV0 YWRhdGEpIChwcm9nbiAob3IgKG5vdCAuLi4pIChjbC0tYXNzZXJ0aW9uLWZhaWxlZCAuLi4pKSBu aWwpIChwcm9nbiAob3IgKG5vdCAuLi4pIChjbC0tYXNzZXJ0aW9uLWZhaWxlZCAuLi4pKSBuaWwp IChhcHBseSAjJ2VscGFhLS1jYWxsIG5pbCAidGFyIiAoY29ucyAiLS1leGNsdWRlLXZjcyIgKGFw cGVuZCAuLi4gLi4uIC4uLikpKSAoaWYgb25lLXRhcmJhbGwgbmlsIChsZXQqICguLi4pIChlbHBh YS0tbWVzc2FnZSAiJXM6ICVTIiBwa2duYW1lIHBrZ2Rlc2MpIChlbHBhYS0tdXBkYXRlLWFyY2hp dmUtY29udGVudHMgcGtnZGVzYyBkZXN0ZGlyKSAoaWYgLi4uIC4uLikgKGxldCAuLi4gLi4uIC4u LikgKHNldHEgb2xkdGFyYmFsbHMgLi4uKSAobGV0KiAuLi4gLi4uKSAobWVzc2FnZSAiQnVpbHQg bmV3IHBhY2thZ2UgJXMhIiB0YXJiYWxsKSAnbmV3KSkpKSkpCiAgZWxwYWEtLW1ha2Utb25lLXRh cmJhbGwoImFyY2hpdmUvcHJvamVjdC0wLjUuNC50YXIiICIvaG9tZS9wcm90L0dpdC9idWlsZC9l bHBhL3BhY2thZ2VzL3Byb2plY3QiICgicHJvamVjdCIgOmNvcmUgImxpc3AvcHJvZ21vZGVzL3By b2plY3QuZWwiKSAobmlsICIwLjUuNCIgIk9wZXJhdGlvbnMgb24gdGhlIGN1cnJlbnQgcHJvamVj dCIgKChlbWFjcyAoMjYgMSkpICh4cmVmICgxIDAgMikpKSAoKDp1cmwgLiAiaHR0cHM6Ly9lbHBh LmdudS5vcmcvcGFja2FnZXMvcHJvamVjdC5odG1sIikpKSAoY2xvc3VyZSAoKHRhcmJhbGwgLiAi YXJjaGl2ZS9wcm9qZWN0LTAuNS40LnRhciIpIChuZXcpICh0YXJiYWxsIC4gImFyY2hpdmUtZGV2 ZWwvcHJvamVjdC0wLjUuNC4wLjIwMjEwMzA5LjIwNjAxLnRhciIpIChkZXZlbC12ZXJzIC4gIjAu NS40LjAuMjAyMTAzMDkuMjA2MDEiKSAoZGF0ZS12ZXJzaW9uIC4gIjIwMjEwMzA5LjIwNjAxIikg KHZlcnMgLiAiMC41LjQiKSAobWV0YWRhdGEgbmlsICIwLjUuNCIgIk9wZXJhdGlvbnMgb24gdGhl IGN1cnJlbnQgcHJvamVjdCIgKChlbWFjcyAoMjYgMSkpICh4cmVmICgxIDAgMikpKSAoKDp1cmwg LiAiaHR0cHM6Ly9lbHBhLmdudS5vcmcvcGFja2FnZXMvcHJvamVjdC5odG1sIikpKSAoXykgKF8p IChkaXIgLiAiL2hvbWUvcHJvdC9HaXQvYnVpbGQvZWxwYS9wYWNrYWdlcy9wcm9qZWN0IikgKHBr Z25hbWUgLiAicHJvamVjdCIpIChvbmUtdGFyYmFsbCkgKHBrZy1zcGVjICJwcm9qZWN0IiA6Y29y ZSAibGlzcC9wcm9nbW9kZXMvcHJvamVjdC5lbCIpIGVscGFhLS10ZW1wLWZpbGVzIHQpIG5pbCAo ZWxwYWEtLWdldC1yZWxlYXNlLXJldmlzaW9uIGRpciBwa2ctc3BlYyB2ZXJzIChwbGlzdC1nZXQg KGNkciBwa2ctc3BlYykgOnZlcnNpb24tbWFwKSkpKQogIChpZiAoZWxwYWEtLW1ha2Utb25lLXRh cmJhbGwgdGFyYmFsbCBkaXIgcGtnLXNwZWMgbWV0YWRhdGEgIycobGFtYmRhIG5pbCAoZWxwYWEt LWdldC1yZWxlYXNlLXJldmlzaW9uIGRpciBwa2ctc3BlYyB2ZXJzIChwbGlzdC1nZXQgKGNkciBw a2ctc3BlYykgOnZlcnNpb24tbWFwKSkpKSAocHJvZ24gKGVscGFhLS1yZWxlYXNlLWVtYWlsIHBr Zy1zcGVjIG1ldGFkYXRhIGRpcikpKQogIChsZXQgKCh0YXJiYWxsIChjb25jYXQgZWxwYWEtLXJl bGVhc2Utc3ViZGlyIChmb3JtYXQgIiVzLSVzLnRhciIgcGtnbmFtZSB2ZXJzKSkpKSAoaWYgKGVs cGFhLS1tYWtlLW9uZS10YXJiYWxsIHRhcmJhbGwgZGlyIHBrZy1zcGVjIG1ldGFkYXRhICMnKGxh bWJkYSBuaWwgKGVscGFhLS1nZXQtcmVsZWFzZS1yZXZpc2lvbiBkaXIgcGtnLXNwZWMgdmVycyAo cGxpc3QtZ2V0IChjZHIgcGtnLXNwZWMpIDp2ZXJzaW9uLW1hcCkpKSkgKHByb2duIChlbHBhYS0t cmVsZWFzZS1lbWFpbCBwa2ctc3BlYyBtZXRhZGF0YSBkaXIpKSkpCiAgKGNvbmQgKG9uZS10YXJi YWxsIG5pbCkgKChvciAoZXF1YWwgdmVycyAiMCIpIChtZW1iZXIgJy00ICh2ZXJzaW9uLXRvLWxp c3QgdmVycykpKSAoY29uZCAoKGVxdWFsIHZlcnMgIjAiKSAoZWxwYWEtLW1lc3NhZ2UgIlBhY2th Z2UgJXMgbm90IHJlbGVhc2VkIHlldCEiIHBrZ25hbWUpKSAoKG5vdCBuZXcpIChlbHBhYS0tbWVz c2FnZSAiTm90aGluZyBuZXcgZm9yIHBhY2thZ2UgJXMhIiBwa2duYW1lKSkgKHQgKGxldCogKChs YXN0LXJlbCAoZWxwYWEtLWdldC1sYXN0LXJlbGVhc2UgcGtnLXNwZWMpKSAodGFyYmFsbCAoY29u Y2F0IGVscGFhLS1yZWxlYXNlLXN1YmRpciAuLi4pKSAobWV0YWRhdGEgKGNvbnMgbmlsIC4uLikp KSAoaWYgKG5vdCBsYXN0LXJlbCkgKGVscGFhLS1tZXNzYWdlICJQYWNrYWdlICVzIG5vdCByZWxl YXNlZCB5ZXQhIiBwa2duYW1lKSAoaWYgKGVscGFhLS1tYWtlLW9uZS10YXJiYWxsIHRhcmJhbGwg ZGlyIHBrZy1zcGVjIG1ldGFkYXRhIC4uLikgKHByb2duIC4uLikpKSkpKSkgKHQgKGxldCAoKHRh cmJhbGwgKGNvbmNhdCBlbHBhYS0tcmVsZWFzZS1zdWJkaXIgKGZvcm1hdCAiJXMtJXMudGFyIiBw a2duYW1lIHZlcnMpKSkpIChpZiAoZWxwYWEtLW1ha2Utb25lLXRhcmJhbGwgdGFyYmFsbCBkaXIg cGtnLXNwZWMgbWV0YWRhdGEgIycobGFtYmRhIG5pbCAoZWxwYWEtLWdldC1yZWxlYXNlLXJldmlz aW9uIGRpciBwa2ctc3BlYyB2ZXJzIC4uLikpKSAocHJvZ24gKGVscGFhLS1yZWxlYXNlLWVtYWls IHBrZy1zcGVjIG1ldGFkYXRhIGRpcikpKSkpKQogIChsZXQqICgoZGF0ZS12ZXJzaW9uIChlbHBh YS0tZ2V0LWRldmVsLXZlcnNpb24gZGlyIHBrZy1zcGVjKSkgKGRldmVsLXZlcnMgKGNvbmNhdCB2 ZXJzIChpZiAoc3RyaW5nLW1hdGNoICJbMC05XVxcJyIgdmVycykgIi4iKSAiMC4iIGRhdGUtdmVy c2lvbikpICh0YXJiYWxsIChvciBvbmUtdGFyYmFsbCAoY29uY2F0IGVscGFhLS1kZXZlbC1zdWJk aXIgKGZvcm1hdCAiJXMtJXMudGFyIiBwa2duYW1lIGRldmVsLXZlcnMpKSkpIChuZXcgKGxldCAo KGVscGFhLS1uYW1lIChjb25jYXQgZWxwYWEtLW5hbWUgIi1kZXZlbCIpKSkgKGVscGFhLS1tYWtl LW9uZS10YXJiYWxsIHRhcmJhbGwgZGlyIHBrZy1zcGVjIChjb25zIG5pbCAoY29ucyBkZXZlbC12 ZXJzIChudGhjZHIgMiBtZXRhZGF0YSkpKSBuaWwgb25lLXRhcmJhbGwpKSkpIChjb25kIChvbmUt dGFyYmFsbCBuaWwpICgob3IgKGVxdWFsIHZlcnMgIjAiKSAobWVtYmVyICctNCAodmVyc2lvbi10 by1saXN0IHZlcnMpKSkgKGNvbmQgKChlcXVhbCB2ZXJzICIwIikgKGVscGFhLS1tZXNzYWdlICJQ YWNrYWdlICVzIG5vdCByZWxlYXNlZCB5ZXQhIiBwa2duYW1lKSkgKChub3QgbmV3KSAoZWxwYWEt LW1lc3NhZ2UgIk5vdGhpbmcgbmV3IGZvciBwYWNrYWdlICVzISIgcGtnbmFtZSkpICh0IChsZXQq ICgobGFzdC1yZWwgLi4uKSAodGFyYmFsbCAuLi4pIChtZXRhZGF0YSAuLi4pKSAoaWYgKG5vdCBs YXN0LXJlbCkgKGVscGFhLS1tZXNzYWdlICJQYWNrYWdlICVzIG5vdCByZWxlYXNlZCB5ZXQhIiBw a2duYW1lKSAoaWYgLi4uIC4uLikpKSkpKSAodCAobGV0ICgodGFyYmFsbCAoY29uY2F0IGVscGFh LS1yZWxlYXNlLXN1YmRpciAoZm9ybWF0ICIlcy0lcy50YXIiIHBrZ25hbWUgdmVycykpKSkgKGlm IChlbHBhYS0tbWFrZS1vbmUtdGFyYmFsbCB0YXJiYWxsIGRpciBwa2ctc3BlYyBtZXRhZGF0YSAj JyhsYW1iZGEgbmlsIC4uLikpIChwcm9nbiAoZWxwYWEtLXJlbGVhc2UtZW1haWwgcGtnLXNwZWMg bWV0YWRhdGEgZGlyKSkpKSkpKQogIChpZiAobnVsbCBtZXRhZGF0YSkgKGVycm9yICJObyBtZXRh ZGF0YSBmb3VuZCBmb3IgcGFja2FnZTogJXMiIHBrZ25hbWUpIChsZXQqICgodiBtZXRhZGF0YSkp IChzZXRjYXIgdiBuaWwpKSAobGV0KiAoKGRhdGUtdmVyc2lvbiAoZWxwYWEtLWdldC1kZXZlbC12 ZXJzaW9uIGRpciBwa2ctc3BlYykpIChkZXZlbC12ZXJzIChjb25jYXQgdmVycyAoaWYgKHN0cmlu Zy1tYXRjaCAiWzAtOV1cXCciIHZlcnMpICIuIikgIjAuIiBkYXRlLXZlcnNpb24pKSAodGFyYmFs bCAob3Igb25lLXRhcmJhbGwgKGNvbmNhdCBlbHBhYS0tZGV2ZWwtc3ViZGlyIChmb3JtYXQgIiVz LSVzLnRhciIgcGtnbmFtZSBkZXZlbC12ZXJzKSkpKSAobmV3IChsZXQgKChlbHBhYS0tbmFtZSAo Y29uY2F0IGVscGFhLS1uYW1lICItZGV2ZWwiKSkpIChlbHBhYS0tbWFrZS1vbmUtdGFyYmFsbCB0 YXJiYWxsIGRpciBwa2ctc3BlYyAoY29ucyBuaWwgKGNvbnMgZGV2ZWwtdmVycyAuLi4pKSBuaWwg b25lLXRhcmJhbGwpKSkpIChjb25kIChvbmUtdGFyYmFsbCBuaWwpICgob3IgKGVxdWFsIHZlcnMg IjAiKSAobWVtYmVyICctNCAodmVyc2lvbi10by1saXN0IHZlcnMpKSkgKGNvbmQgKChlcXVhbCB2 ZXJzICIwIikgKGVscGFhLS1tZXNzYWdlICJQYWNrYWdlICVzIG5vdCByZWxlYXNlZCB5ZXQhIiBw a2duYW1lKSkgKChub3QgbmV3KSAoZWxwYWEtLW1lc3NhZ2UgIk5vdGhpbmcgbmV3IGZvciBwYWNr YWdlICVzISIgcGtnbmFtZSkpICh0IChsZXQqICguLi4gLi4uIC4uLikgKGlmIC4uLiAuLi4gLi4u KSkpKSkgKHQgKGxldCAoKHRhcmJhbGwgKGNvbmNhdCBlbHBhYS0tcmVsZWFzZS1zdWJkaXIgLi4u KSkpIChpZiAoZWxwYWEtLW1ha2Utb25lLXRhcmJhbGwgdGFyYmFsbCBkaXIgcGtnLXNwZWMgbWV0 YWRhdGEgIycuLi4pIChwcm9nbiAoZWxwYWEtLXJlbGVhc2UtZW1haWwgcGtnLXNwZWMgbWV0YWRh dGEgZGlyKSkpKSkpKSkKICAobGV0KiAoKHBrZ25hbWUgKGNhciBwa2ctc3BlYykpIChkaXIgKGV4 cGFuZC1maWxlLW5hbWUgcGtnbmFtZSAicGFja2FnZXMiKSkgKF8gKGNvbmQgKG9uZS10YXJiYWxs IG5pbCkgKChlcSAobnRoIDEgcGtnLXNwZWMpIDpjb3JlKSAoZWxwYWEtLWNvcmUtcGFja2FnZS1z eW5jIHBrZy1zcGVjKSkgKHQgKGVscGFhLS13b3JrdHJlZS1zeW5jIHBrZy1zcGVjKSkpKSAoXyAo ZWxwYWEtLW1lc3NhZ2UgInBrZy1zcGVjIGZvciAlczogJVMiIHBrZ25hbWUgcGtnLXNwZWMpKSAo bWV0YWRhdGEgKGVscGFhLS1tZXRhZGF0YSBkaXIgcGtnLXNwZWMpKSAodmVycyAobnRoIDEgbWV0 YWRhdGEpKSkgKGVscGFhLS1tZXNzYWdlICJtZXRhZGF0YSA9ICVTIiBtZXRhZGF0YSkgKGlmIChu dWxsIG1ldGFkYXRhKSAoZXJyb3IgIk5vIG1ldGFkYXRhIGZvdW5kIGZvciBwYWNrYWdlOiAlcyIg cGtnbmFtZSkgKGxldCogKCh2IG1ldGFkYXRhKSkgKHNldGNhciB2IG5pbCkpIChsZXQqICgoZGF0 ZS12ZXJzaW9uIChlbHBhYS0tZ2V0LWRldmVsLXZlcnNpb24gZGlyIHBrZy1zcGVjKSkgKGRldmVs LXZlcnMgKGNvbmNhdCB2ZXJzIChpZiAoc3RyaW5nLW1hdGNoICJbMC05XVxcJyIgdmVycykgIi4i KSAiMC4iIGRhdGUtdmVyc2lvbikpICh0YXJiYWxsIChvciBvbmUtdGFyYmFsbCAoY29uY2F0IGVs cGFhLS1kZXZlbC1zdWJkaXIgKGZvcm1hdCAiJXMtJXMudGFyIiBwa2duYW1lIGRldmVsLXZlcnMp KSkpIChuZXcgKGxldCAoKGVscGFhLS1uYW1lIC4uLikpIChlbHBhYS0tbWFrZS1vbmUtdGFyYmFs bCB0YXJiYWxsIGRpciBwa2ctc3BlYyAoY29ucyBuaWwgLi4uKSBuaWwgb25lLXRhcmJhbGwpKSkp IChjb25kIChvbmUtdGFyYmFsbCBuaWwpICgob3IgKGVxdWFsIHZlcnMgIjAiKSAobWVtYmVyICct NCAodmVyc2lvbi10by1saXN0IHZlcnMpKSkgKGNvbmQgKChlcXVhbCB2ZXJzICIwIikgKGVscGFh LS1tZXNzYWdlICJQYWNrYWdlICVzIG5vdCByZWxlYXNlZCB5ZXQhIiBwa2duYW1lKSkgKChub3Qg bmV3KSAoZWxwYWEtLW1lc3NhZ2UgIk5vdGhpbmcgbmV3IGZvciBwYWNrYWdlICVzISIgcGtnbmFt ZSkpICh0IChsZXQqIC4uLiAuLi4pKSkpICh0IChsZXQgKCh0YXJiYWxsIC4uLikpIChpZiAoZWxw YWEtLW1ha2Utb25lLXRhcmJhbGwgdGFyYmFsbCBkaXIgcGtnLXNwZWMgbWV0YWRhdGEgLi4uKSAo cHJvZ24gLi4uKSkpKSkpKSkKICBlbHBhYS0tbWFrZS1vbmUtcGFja2FnZSgoInByb2plY3QiIDpj b3JlICJsaXNwL3Byb2dtb2Rlcy9wcm9qZWN0LmVsIikpCiAgKHdoaWxlIGNvbW1hbmQtbGluZS1h cmdzLWxlZnQgKGVscGFhLS1tYWtlLW9uZS1wYWNrYWdlIChlbHBhYS0tZ2V0LXBhY2thZ2Utc3Bl YyAoY2FyLXNhZmUgKHByb2cxIGNvbW1hbmQtbGluZS1hcmdzLWxlZnQgKHNldHEgY29tbWFuZC1s aW5lLWFyZ3MtbGVmdCAoY2RyIGNvbW1hbmQtbGluZS1hcmdzLWxlZnQpKSkpKSkpCiAgZWxwYWEt YmF0Y2gtbWFrZS1vbmUtcGFja2FnZSgpCiAgY29tbWFuZC1saW5lLTEoKCItbCIgIi9ob21lL3By b3QvR2l0L2J1aWxkL2VscGEvYWRtaW4vZWxwYS1hZG1pbi5lbCIgIi1mIiAiZWxwYWEtYmF0Y2gt bWFrZS1vbmUtcGFja2FnZSIgInByb2plY3QiKSkKICBjb21tYW5kLWxpbmUoKQogIG5vcm1hbC10 b3AtbGV2ZWwoKQoKbWFrZTogKioqIFtHTlVtYWtlZmlsZToyMTogYnVpbGQvcHJvamVjdF0gRXJy b3IgMjU1 --=-=-=--