From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stephen Leake Newsgroups: gmane.emacs.bugs Subject: bug#59556: eglot sends first didOpen before didChangeConfiguration. Date: Thu, 24 Nov 2022 17:24:56 -0800 Message-ID: <86k03jhllj.fsf@stephe-leake.org> 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="5232"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: 59556@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Nov 25 02:26:25 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oyNTz-0001Aq-Qy for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 25 Nov 2022 02:26:24 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oyNTm-0000IU-CA; Thu, 24 Nov 2022 20:26:10 -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 1oyNTg-0000FV-CG for bug-gnu-emacs@gnu.org; Thu, 24 Nov 2022 20:26:06 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oyNTe-0005q9-Ry for bug-gnu-emacs@gnu.org; Thu, 24 Nov 2022 20:26:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oyNTd-0000WT-Nj for bug-gnu-emacs@gnu.org; Thu, 24 Nov 2022 20:26:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Stephen Leake Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 25 Nov 2022 01:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 59556 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.16693395201955 (code B ref -1); Fri, 25 Nov 2022 01:26:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 25 Nov 2022 01:25:20 +0000 Original-Received: from localhost ([127.0.0.1]:60884 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oyNSy-0000VS-6H for submit@debbugs.gnu.org; Thu, 24 Nov 2022 20:25:20 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:40898) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oyNSw-0000VI-9h for submit@debbugs.gnu.org; Thu, 24 Nov 2022 20:25:18 -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 1oyNSw-0007l1-1I for bug-gnu-emacs@gnu.org; Thu, 24 Nov 2022 20:25:18 -0500 Original-Received: from gproxy4-pub.mail.unifiedlayer.com ([69.89.23.142]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oyNSt-0005Rn-H1 for bug-gnu-emacs@gnu.org; Thu, 24 Nov 2022 20:25:17 -0500 Original-Received: from cmgw12.mail.unifiedlayer.com (unknown [10.0.90.127]) by progateway6.mail.pro1.eigbox.com (Postfix) with ESMTP id 9F3AC1004931D for ; Fri, 25 Nov 2022 01:24:58 +0000 (UTC) Original-Received: from host2007.hostmonster.com ([67.20.76.71]) by cmsmtp with ESMTP id yNSboOHf3mSzkyNSboiAHA; Fri, 25 Nov 2022 01:24:58 +0000 X-Authority-Reason: nr=8 X-Authority-Analysis: v=2.4 cv=PKDKRdmC c=1 sm=1 tr=0 ts=6380196a a=dWLzHQi6WpdymmZIwiVdBw==:117 a=Fln8i1WyhtedwaIJAdHvmw==:17 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 a=9xFQ1JgjjksA:10:nop_rcvd_month_year a=vvvmwbhNdt4A:10:endurance_base64_authed_username_1 a=Dy9dXtnXAAAA:8 a=Ge3DEsK2G2LPnVjLTPwA:9 a=wYTIttWBmVc3K_r9oQoA:9 a=7b_YKI4FLZevj963FIVU:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=stephe-leake.org; s=default; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=fh2d7fnVxuul2lpI4akSanMQMjSatIhmcSKtgDVxPxE=; b=etyoVI+k/HA+/oqK/PC1t88lqc nbfRmnayxtsQaklJkFHBbsZGN0+9NIbXxl4ZMD3LzftkvO6QmwgyMZuAbko2Z3F8Qpz/5Tx6Z3DEj 6xHLiutMYfJUZp6IRhkmQ+tuMNpye0b0Ahhf0MRH3Zs3KORX2JovW4ux2RRn+ScpLda6ki+3zU8Iy q3aqA9tt8kAs0/7onx6UvuAnTPq6CpPa6tLFk+QiDDSPa+VRCkSncDDB+KhXcqx+sfS6nRNjgakLS diYAFNrPVm60LEC25ldtRhmTmZvrsB7YYCfLmn1esMEvfLMT/O1RB490cw7tCD06Hc5wj1przQpJS FCokIX7A==; Original-Received: from 135-180-197-170.fiber.dynamic.sonic.net ([135.180.197.170]:56242 helo=DESKTOP-G20DCG1) by host2007.hostmonster.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1oyNSb-0049oI-BA for bug-gnu-emacs@gnu.org; Thu, 24 Nov 2022 18:24:57 -0700 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - host2007.hostmonster.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - stephe-leake.org X-BWhitelist: no X-Source-IP: 135.180.197.170 X-Source-L: No X-Exim-ID: 1oyNSb-0049oI-BA X-Source-Sender: 135-180-197-170.fiber.dynamic.sonic.net (DESKTOP-G20DCG1) [135.180.197.170]:56242 X-Source-Auth: stephen_leake@stephe-leake.org X-Email-Count: 1 X-Source-Cap: c3RlcGhlbGU7c3RlcGhlbGU7aG9zdDIwMDcuaG9zdG1vbnN0ZXIuY29t X-Local-Domain: yes Received-SPF: pass client-ip=69.89.23.142; envelope-from=stephen_leake@stephe-leake.org; helo=gproxy4-pub.mail.unifiedlayer.com X-Spam_score_int: 16 X-Spam_score: 1.6 X-Spam_bar: + X-Spam_report: (1.6 / 5.0 requ) BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_SBL_CSS=3.335, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action 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:248945 Archived-At: --=-=-= Content-Type: text/plain I'm running emacs master, in Debian testing, with ada_language_server version 23, and a development version of ada-mode. In the simplest configuration, ada-mode starts eglot from a function on ada-mode hook. That's how the tree-sitter and wisi parsers are started, as well, when they are configured. The user just installs the Ada language server, opens an Ada mode file, and expects to get eglot services; they don't have to type M-x eglot. As part of eglot startup, ada-mode binds eglot-workspace-configuration with a parameter for ada_language_server (als) specifying the compiler project file. That should be passed in initializationOptions, but the current als doesn't support that (I've submitted an issue to als on that). Then eglot sends textDocument/didOpen before it sends workspace/didChangeConfiguration, so the server reports errors when it opens the document without the compiler project file. The attached log shows the LSP messages, captured from the *EGLOT ada-mode...* buffer. The sequence of lisp calls is this: find-file runs ada-mode, which runs ada-mode-hook, which calls ada-eglot-setup, which binds eglot-workspace-configuration and calls eglot. That calls eglot-connect, which sends the initialize message, and in effect queues the didChangeConfiguration message to be sent after the initialize response is received. ada-mode returns to find-file, which runs find-file-hook, which has eglot--maybe-activate-editing-mode; that calls eglot--signal-textDocument/didOpen without checking if the server is done processing initialize. So the server gets the didOpen message before it gets the didChangeConfiguration messages, and possibly before the initialize response is sent, which would violate the LSP startup protocol (https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#initialize). I can eliminate the errors by starting eglot via a wisi project before any Ada files are opened, and waiting a short time. But the use case presented above is typical for a newbie (not expected to use a wisi project), and it is also how Eurocontrol expects things to work for their complex projects, so I'd like to be able to eliminate the errors. One way to fix this is for eglot--maybe-activate-editing-mode to check if the server is initialized (maybe by checking if eglot--capabilities is set?), and enqueue the didOpen message to be sent after the initialize response is recieved if not. I did not look in jsonrpc for an "enqueue" function; it would be similar to the :success-fn arg in jsonrpc-async-request, so I assume there's a way to do it. -- -- Stephe --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=debug-1.log Content-Transfer-Encoding: base64 W2ludGVybmFsXSBUaHUgTm92IDI0IDE0OjU3OjM0IDIwMjI6Cig6bWVzc2FnZSAiUnVubmluZyBs YW5ndWFnZSBzZXJ2ZXI6IC9Qcm9qZWN0cy9hZGFfbGFuZ3VhZ2Vfc2VydmVyLy5vYmovc2VydmVy L2FkYV9sYW5ndWFnZV9zZXJ2ZXIiKQpbY2xpZW50LXJlcXVlc3RdIChpZDoxKSBUaHUgTm92IDI0 IDE0OjU3OjM0IDIwMjI6Cig6anNvbnJwYyAiMi4wIiA6aWQgMSA6bWV0aG9kICJpbml0aWFsaXpl IiA6cGFyYW1zCiAgICAgICAgICAoOnByb2Nlc3NJZCAxMjM2NjAgOnJvb3RQYXRoICIvUHJvamVj dHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvIiA6cm9vdFVyaSAiZmlsZTovLy9Qcm9qZWN0cy9v cmcuZW1hY3MuYWRhLW1vZGUvdGVzdCIgOmluaXRpYWxpemF0aW9uT3B0aW9ucyAjcyhoYXNoLXRh YmxlIHNpemUgMSB0ZXN0IGVxbCByZWhhc2gtc2l6ZSAxLjUgcmVoYXNoLXRocmVzaG9sZCAwLjgx MjUgZGF0YQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoKSkKICAgICAgICAgICAgICAgICAgICAgIDpjYXBhYmlsaXRpZXMKICAgICAgICAgICAgICAg ICAgICAgICg6d29ya3NwYWNlCiAgICAgICAgICAgICAgICAgICAgICAgKDphcHBseUVkaXQgdCA6 ZXhlY3V0ZUNvbW1hbmQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoOmR5bmFt aWNSZWdpc3RyYXRpb24gOmpzb24tZmFsc2UpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgOndvcmtzcGFjZUVkaXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo OmRvY3VtZW50Q2hhbmdlcyB0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpk aWRDaGFuZ2VXYXRjaGVkRmlsZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo OmR5bmFtaWNSZWdpc3RyYXRpb24gdCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICA6c3ltYm9sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDpkeW5hbWljUmVn aXN0cmF0aW9uIDpqc29uLWZhbHNlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDpjb25maWd1cmF0aW9uIHQgOnNlbWFudGljVG9rZW5zCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgKDpyZWZyZXNoU3VwcG9ydCA6anNvbi1mYWxzZSkKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA6d29ya3NwYWNlRm9sZGVycyB0IDpwcm9ncmVzcyB0KQogICAg ICAgICAgICAgICAgICAgICAgIDp0ZXh0RG9jdW1lbnQKICAgICAgICAgICAgICAgICAgICAgICAo OnN5bmNocm9uaXphdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAoOmR5bmFtaWNSZWdpc3Ry YXRpb24gOmpzb24tZmFsc2UgOndpbGxTYXZlIHQgOndpbGxTYXZlV2FpdFVudGlsIHQgOmRpZFNh dmUgdCkKICAgICAgICAgICAgICAgICAgICAgICAgOmNvbXBsZXRpb24KICAgICAgICAgICAgICAg ICAgICAgICAgKDpkeW5hbWljUmVnaXN0cmF0aW9uIDpqc29uLWZhbHNlIDpjb21wbGV0aW9uSXRl bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDpzbmlwcGV0 U3VwcG9ydCA6anNvbi1mYWxzZSA6ZGVwcmVjYXRlZFN1cHBvcnQgdCA6dGFnU3VwcG9ydAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoOnZhbHVlU2V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBbMV0pKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgOmNvbnRleHRTdXBwb3J0IHQpCiAgICAgICAgICAgICAgICAgICAgICAg IDpob3ZlcgogICAgICAgICAgICAgICAgICAgICAgICAoOmR5bmFtaWNSZWdpc3RyYXRpb24gOmpz b24tZmFsc2UgOmNvbnRlbnRGb3JtYXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFsibWFya2Rvd24iICJwbGFpbnRleHQiXSkKICAgICAgICAgICAgICAgICAg ICAgICAgOnNpZ25hdHVyZUhlbHAKICAgICAgICAgICAgICAgICAgICAgICAgKDpkeW5hbWljUmVn aXN0cmF0aW9uIDpqc29uLWZhbHNlIDpzaWduYXR1cmVJbmZvcm1hdGlvbgogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDpwYXJhbWV0ZXJJbmZvcm1hdGlvbgog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg6bGFiZWxPZmZz ZXRTdXBwb3J0IHQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgOmFjdGl2ZVBhcmFtZXRlclN1cHBvcnQgdCkpCiAgICAgICAgICAgICAgICAgICAgICAgIDpy ZWZlcmVuY2VzCiAgICAgICAgICAgICAgICAgICAgICAgICg6ZHluYW1pY1JlZ2lzdHJhdGlvbiA6 anNvbi1mYWxzZSkKICAgICAgICAgICAgICAgICAgICAgICAgOmRlZmluaXRpb24KICAgICAgICAg ICAgICAgICAgICAgICAgKDpkeW5hbWljUmVnaXN0cmF0aW9uIDpqc29uLWZhbHNlIDpsaW5rU3Vw cG9ydCB0KQogICAgICAgICAgICAgICAgICAgICAgICA6ZGVjbGFyYXRpb24KICAgICAgICAgICAg ICAgICAgICAgICAgKDpkeW5hbWljUmVnaXN0cmF0aW9uIDpqc29uLWZhbHNlIDpsaW5rU3VwcG9y dCB0KQogICAgICAgICAgICAgICAgICAgICAgICA6aW1wbGVtZW50YXRpb24KICAgICAgICAgICAg ICAgICAgICAgICAgKDpkeW5hbWljUmVnaXN0cmF0aW9uIDpqc29uLWZhbHNlIDpsaW5rU3VwcG9y dCB0KQogICAgICAgICAgICAgICAgICAgICAgICA6dHlwZURlZmluaXRpb24KICAgICAgICAgICAg ICAgICAgICAgICAgKDpkeW5hbWljUmVnaXN0cmF0aW9uIDpqc29uLWZhbHNlIDpsaW5rU3VwcG9y dCB0KQogICAgICAgICAgICAgICAgICAgICAgICA6ZG9jdW1lbnRTeW1ib2wKICAgICAgICAgICAg ICAgICAgICAgICAgKDpkeW5hbWljUmVnaXN0cmF0aW9uIDpqc29uLWZhbHNlIDpoaWVyYXJjaGlj YWxEb2N1bWVudFN5bWJvbFN1cHBvcnQgdCA6c3ltYm9sS2luZAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKDp2YWx1ZVNldAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsxIDIgMyA0IDUgNiA3IDggOSAxMCAxMSAxMiAx MyAxNCAxNSAxNiAxNyAxOCAxOSAyMCAyMSAyMiAyMyAyNCAyNSAyNl0pKQogICAgICAgICAgICAg ICAgICAgICAgICA6ZG9jdW1lbnRIaWdobGlnaHQKICAgICAgICAgICAgICAgICAgICAgICAgKDpk eW5hbWljUmVnaXN0cmF0aW9uIDpqc29uLWZhbHNlKQogICAgICAgICAgICAgICAgICAgICAgICA6 Y29kZUFjdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAoOmR5bmFtaWNSZWdpc3RyYXRpb24g Ompzb24tZmFsc2UgOmNvZGVBY3Rpb25MaXRlcmFsU3VwcG9ydAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKDpjb2RlQWN0aW9uS2luZAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg6dmFsdWVTZXQKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJxdWlja2ZpeCIgInJlZmFjdG9y IiAicmVmYWN0b3IuZXh0cmFjdCIgInJlZmFjdG9yLmlubGluZSIgInJlZmFjdG9yLnJld3JpdGUi ICJzb3VyY2UiICJzb3VyY2Uub3JnYW5pemVJbXBvcnRzIl0pKQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgOmlzUHJlZmVycmVkU3VwcG9ydCB0KQogICAgICAg ICAgICAgICAgICAgICAgICA6Zm9ybWF0dGluZwogICAgICAgICAgICAgICAgICAgICAgICAoOmR5 bmFtaWNSZWdpc3RyYXRpb24gOmpzb24tZmFsc2UpCiAgICAgICAgICAgICAgICAgICAgICAgIDpy YW5nZUZvcm1hdHRpbmcKICAgICAgICAgICAgICAgICAgICAgICAgKDpkeW5hbWljUmVnaXN0cmF0 aW9uIDpqc29uLWZhbHNlKQogICAgICAgICAgICAgICAgICAgICAgICA6cmVuYW1lCiAgICAgICAg ICAgICAgICAgICAgICAgICg6ZHluYW1pY1JlZ2lzdHJhdGlvbiA6anNvbi1mYWxzZSkKICAgICAg ICAgICAgICAgICAgICAgICAgOnB1Ymxpc2hEaWFnbm9zdGljcwogICAgICAgICAgICAgICAgICAg ICAgICAoOnJlbGF0ZWRJbmZvcm1hdGlvbiA6anNvbi1mYWxzZSA6Y29kZURlc2NyaXB0aW9uU3Vw cG9ydCA6anNvbi1mYWxzZSA6dGFnU3VwcG9ydAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoOnZhbHVlU2V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBbMSAyXSkpCiAgICAgICAgICAgICAgICAgICAgICAgIDpzZW1hbnRp Y1Rva2VucwogICAgICAgICAgICAgICAgICAgICAgICAoOmR5bmFtaWNSZWdpc3RyYXRpb24gOmpz b24tZmFsc2UgOnJlcXVlc3RzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAoOmZ1bGwgdCA6cmFuZ2UgdCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDp0b2tlblR5cGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBbImNvbW1lbnQiICJrZXl3b3JkIiAic3RyaW5nIiAibnVtYmVyIiAi cmVnZXhwIiAib3BlcmF0b3IiICJuYW1lc3BhY2UiICJ0eXBlIiAic3RydWN0IiAiY2xhc3MiICJp bnRlcmZhY2UiICJlbnVtIiAidHlwZVBhcmFtZXRlciIgImZ1bmN0aW9uIiAibWV0aG9kIiAibWVt YmVyIiAiZmllbGQiICJwcm9wZXJ0eSIgImV2ZW50IiAibWFjcm8iICJ2YXJpYWJsZSIgInBhcmFt ZXRlciIgImxhYmVsIiAiZW51bUNvbnN0YW50IiAiZW51bU1lbWJlciIgImRlcGVuZGVudCIgImNv bmNlcHQiXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnRv a2VuTW9kaWZpZXJzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBbImRlY2xhcmF0aW9uIiAiZGVmaW5pdGlvbiIgImltcGxlbWVudGF0aW9uIiAicmVhZG9ubHki ICJzdGF0aWMiICJhYnN0cmFjdCIgImFzeW5jIiAibW9kaWZpY2F0aW9uIiAiZGVwcmVjYXRlZCIg ImRvY3VtZW50YXRpb24iICJkZWZhdWx0TGlicmFyeSJdCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6Zm9ybWF0cwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgWyJyZWxhdGl2ZSJdCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA6b3ZlcmxhcHBpbmdUb2tlblN1cHBvcnQgOmpzb24tZmFs c2UgOm11bHRpbGluZVRva2VuU3VwcG9ydCB0KSkKICAgICAgICAgICAgICAgICAgICAgICA6ZXhw ZXJpbWVudGFsICNzKGhhc2gtdGFibGUgc2l6ZSAxIHRlc3QgZXFsIHJlaGFzaC1zaXplIDEuNSBy ZWhhc2gtdGhyZXNob2xkIDAuODEyNSBkYXRhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICgpKSkKICAgICAgICAgICAgICAgICAgICAgIDp3b3Jrc3Bh Y2VGb2xkZXJzCiAgICAgICAgICAgICAgICAgICAgICBbKDp1cmkgImZpbGU6Ly8vUHJvamVjdHMv b3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QiIDpuYW1lICIvUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1t b2RlL3Rlc3QvIildKSkKW3NlcnZlci1yZXBseV0gKGlkOjEpIFRodSBOb3YgMjQgMTQ6NTc6MzQg MjAyMjoKKDpqc29ucnBjICIyLjAiIDppZCAxIDpyZXN1bHQKICAgICAgICAgICg6Y2FwYWJpbGl0 aWVzCiAgICAgICAgICAgKDp0ZXh0RG9jdW1lbnRTeW5jIDIgOmNvbXBsZXRpb25Qcm92aWRlcgog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoOnRyaWdnZXJDaGFyYWN0ZXJzCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBbIi4iICIsIiAiJyIgIigiXQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgOnJlc29sdmVQcm92aWRlciB0KQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICA6aG92ZXJQcm92aWRlciB0IDpzaWduYXR1cmVIZWxwUHJvdmlkZXIKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKDp0cmlnZ2VyQ2hhcmFjdGVycwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgWyIsIiAiKCJdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6 cmV0cmlnZ2VyQ2hhcmFjdGVycwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyIIIl0p CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpkZWNsYXJhdGlvblByb3ZpZGVyIHQgOmRl ZmluaXRpb25Qcm92aWRlciB0IDp0eXBlRGVmaW5pdGlvblByb3ZpZGVyIHQgOmltcGxlbWVudGF0 aW9uUHJvdmlkZXIgdCA6cmVmZXJlbmNlc1Byb3ZpZGVyIHQgOmRvY3VtZW50SGlnaGxpZ2h0UHJv dmlkZXIgdCA6ZG9jdW1lbnRTeW1ib2xQcm92aWRlciB0IDpjb2RlQWN0aW9uUHJvdmlkZXIKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKDpjb2RlQWN0aW9uS2luZHMKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFsicXVpY2tmaXgiICJyZWZhY3Rvci5yZXdyaXRlIl0pCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDpkb2N1bWVudEZvcm1hdHRpbmdQcm92aWRlciB0IDpk b2N1bWVudFJhbmdlRm9ybWF0dGluZ1Byb3ZpZGVyIHQgOnJlbmFtZVByb3ZpZGVyIG5pbCA6Zm9s ZGluZ1JhbmdlUHJvdmlkZXIgdCA6ZXhlY3V0ZUNvbW1hbmRQcm92aWRlcgogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoOmNvbW1hbmRzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBbImFscy1vdGhlci1maWxlIiAiYWxzLW5hbWVkLXBhcmFtZXRlcnMiICJhbHMtcmVmYWN0b3It aW1wb3J0cyIgImFscy1zdXBwcmVzcy1zZXBhcmF0ZSIgImFscy1yZWZhY3Rvci1leHRyYWN0LXN1 YnByb2dyYW0iICJhbHMtcmVmYWN0b3ItaW50cm9kdWNlLXBhcmFtZXRlciIgImFscy1yZWZhY3Rv ci1wdWxsX3VwX2RlY2xhcmF0aW9uIiAiYWxzLXJlZmFjdG9yLWFkZC1wYXJhbWV0ZXJzIiAiYWxz LXJlZmFjdG9yLXJlbW92ZS1wYXJhbWV0ZXJzIiAiYWxzLXJlZmFjdG9yLW1vdmUtcGFyYW1ldGVy IiAiYWxzLXJlZmFjdG9yLWNoYW5nZS1wYXJhbWV0ZXItbW9kZSIgImFscy1yZWZhY3Rvci1jaGFu Z2VfcGFyYW1ldGVyc190eXBlIiAiYWxzLXJlZmFjdG9yLWNoYW5nZV9wYXJhbWV0ZXJzX2RlZmF1 bHRfdmFsdWUiXSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnNlbWFudGljVG9rZW5z UHJvdmlkZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDpsZWdlbmQKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICg6dG9rZW5UeXBlcwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFsibmFtZXNwYWNlIiAidHlwZSIgImNsYXNzIiAiZW51bSIgImludGVyZmFjZSIg InN0cnVjdCIgInR5cGVQYXJhbWV0ZXIiICJwYXJhbWV0ZXIiICJ2YXJpYWJsZSIgInByb3BlcnR5 IiAiZW51bU1lbWJlciIgImZ1bmN0aW9uIiAia2V5d29yZCIgImNvbW1lbnQiICJzdHJpbmciICJu dW1iZXIiICJvcGVyYXRvciJdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOnRva2Vu TW9kaWZpZXJzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyJkZWNsYXJhdGlvbiIg ImRlZmluaXRpb24iICJyZWFkb25seSIgInN0YXRpYyIgImRlcHJlY2F0ZWQiICJhYnN0cmFjdCIg Im1vZGlmaWNhdGlvbiIgImRvY3VtZW50YXRpb24iICJkZWZhdWx0TGlicmFyeSJdKQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgOnJhbmdlIHQgOmZ1bGwgbmlsKQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICA6d29ya3NwYWNlU3ltYm9sUHJvdmlkZXIgdCA6Y2FsbEhpZXJhcmNo eVByb3ZpZGVyIG5pbCA6YWxzU2hvd0RlcHNQcm92aWRlciB0IDphbHNSZWZlcmVuY2VLaW5kcwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbInJlZmVyZW5jZSIgImFjY2VzcyIgIndyaXRl IiAiY2FsbCIgImRpc3BhdGNoaW5nIGNhbGwiICJwYXJlbnQiICJjaGlsZCIgIm92ZXJyaWRpbmci XQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6YWxzQ2hlY2tTeW50YXhQcm92aWRlciB0 KQogICAgICAgICAgIDpzZXJ2ZXJJbmZvCiAgICAgICAgICAgKDpuYW1lICIiIDpsb2dfZmlsZW5h bWUgIiIpKSkKW2NsaWVudC1ub3RpZmljYXRpb25dIFRodSBOb3YgMjQgMTQ6NTc6MzQgMjAyMjoK KDpqc29ucnBjICIyLjAiIDptZXRob2QgImluaXRpYWxpemVkIiA6cGFyYW1zICNzKGhhc2gtdGFi bGUgc2l6ZSAxIHRlc3QgZXFsIHJlaGFzaC1zaXplIDEuNSByZWhhc2gtdGhyZXNob2xkIDAuODEy NSBkYXRhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICgpKSkKW2NsaWVudC1ub3RpZmljYXRpb25dIFRodSBOb3YgMjQgMTQ6NTc6MzQg MjAyMjoKKDpqc29ucnBjICIyLjAiIDptZXRob2QgInRleHREb2N1bWVudC9kaWRPcGVuIiA6cGFy YW1zCiAgICAgICAgICAoOnRleHREb2N1bWVudAogICAgICAgICAgICg6dXJpICJmaWxlOi8vL1By b2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYiIgOnZlcnNpb24gMCA6bGFu Z3VhZ2VJZCAiQWRhIiA6dGV4dCAicHJvY2VkdXJlIERlYnVnXG5pc1xuICAgLS0gRm9yICdpbmRl bnQtbGluZScsIGRvIGluc2VydCBzcGFjZXMgb24gYW4gZW1wdHkgbGluZVxuICAgLS1FTUFDU0NN RDoocHJvZ24gKGZvcndhcmQtbGluZSAyKShpbmRlbnQtZm9yLXRhYi1jb21tYW5kKShjdXJyZW50 LWNvbHVtbikpXG4gICAtLUVNQUNTUkVTVUxUOihjbC1lY2FzZSBhZGEtaW5kZW50LWJhY2tlbmQg KGVnbG90IDApKHdpc2kgMykpXG5cbiAgIC0tIEZvciAnaW5kZW50LXJlZ2lvbicsIGRvbid0IGlu c2VydCBzcGFjZXMgb24gYW4gZW1wdHkgbGluZVxuICAgLS1FTUFDU0NNRDoodW5sZXNzIChlcSBh ZGEtc3RhdGVtZW50LWJhY2tlbmQgJ25vbmUpICAoZm9yd2FyZC1saW5lIDIpKHdpc2ktaW5kZW50 LXN0YXRlbWVudCkoY3VycmVudC1jb2x1bW4pKVxuICAgLS1FTUFDU1JFU1VMVDoodW5sZXNzIChl cSBhZGEtc3RhdGVtZW50LWJhY2tlbmQgJ25vbmUpIDApXG5cbiAgIC0tIG5ld2xpbmUgYXQgc3Rh cnQgb2YgY29tbWVudDsgaW5kZW50LWFjY29yZGluZy10by1tb2RlIGlzIGNhbGxlZFxuICAgLS0g d2l0aCB0aGUgY29tbWVudCB0ZXh0IGV4cG9zZWQgaWYgZm9udC1sb2NrIGlzIGludm9rZWQgZHVy aW5nIHRoZVxuICAgLS0gZnVuY3Rpb24uIE5vIGxvbmdlciBoYXBwZW5zIHdpdGggRW1hY3MgMjgg KGFuZCBwb3NzaWJseSBlYXJsaWVyKSxcbiAgIC0tIGV2ZW4gd2l0aCBqaXQtbG9jay1kZWZlci10 aW1lIG5pbC4gS2VlcGluZyB0ZXN0IGluIGNhc2UgaXQgY29tZXNcbiAgIC0tIGJhY2suXG4gICAt LVxuICAgLS1FTUFDU0NNRDoocHJvZ24gKGZvcndhcmQtbGluZSAyKShiYWNrLXRvLWluZGVudGF0 aW9uKShmb3J3YXJkLWNoYXIgMikgKGNvbW1lbnQtaW5kZW50LW5ldy1saW5lKShpbmRlbnQtZm9y LXRhYi1jb21tYW5kKSlcbiAgIC0tXG4gICAtLWlzOyB1c2VkIHRvIGNhdXNlIGFuIHVucmVjb2du aXplZCBcImlzXCJcbiAgIC0tRU1BQ1NDTUQ6KHByb2duIChmb3J3YXJkLWxpbmUgLTIpKGtpbGwt bGluZSAxKSlcblxuICAgLS0gdGVzdGluZyBhdXRvLWNhc2VcblxuICAgLS1FTUFDU0NNRDoocHJv Z24gKGVuZC1vZi1saW5lIDEpKG5ld2xpbmUtYW5kLWluZGVudCkoZXhlY3V0ZS1rYmQtbWFjcm8g XCJBXCIpKGNoYXItYmVmb3JlKSlcbiAgIC0tRU1BQ1NSRVNVTFQ6P0FcbiAgIC0tRU1BQ1NDTUQ6 KHByb2duIChmb3J3YXJkLWxpbmUgLTIpKGtpbGwtbGluZSAxKSlcblxuICAgLS1FTUFDU0NNRDoo cHJvZ24gKGVuZC1vZi1saW5lIDEpKG5ld2xpbmUtYW5kLWluZGVudCkoZXhlY3V0ZS1rYmQtbWFj cm8gXCJhXCIpKGNoYXItYmVmb3JlKSlcbiAgIC0tRU1BQ1NSRVNVTFQ6P2FcbiAgIC0tRU1BQ1ND TUQ6KHByb2duIChmb3J3YXJkLWxpbmUgLTIpKGtpbGwtbGluZSAxKSlcblxuICAgLS1FTUFDU0NN RDoocHJvZ24gKGVuZC1vZi1saW5lIDEpKG5ld2xpbmUtYW5kLWluZGVudCkoZXhlY3V0ZS1rYmQt bWFjcm8gXCJhX2IgXCIpKGxldCAoKGNhc2UtZm9sZC1zZWFyY2ggbmlsKSkobG9va2luZy1iYWNr IFwiQV9CIFwiKSkpXG4gICAtLUVNQUNTUkVTVUxUOnRcbiAgIC0tRU1BQ1NDTUQ6KHByb2duIChm b3J3YXJkLWxpbmUgLTIpKGtpbGwtbGluZSAxKSlcblxuICAgLS1FTUFDU0NNRDoocHJvZ24gKGVu ZC1vZi1saW5lIDEpKG5ld2xpbmUtYW5kLWluZGVudCkoZXhlY3V0ZS1rYmQtbWFjcm8gXCJmb29f YmFyX2JheiBcIikobGV0ICgoY2FzZS1mb2xkLXNlYXJjaCBuaWwpKShsb29raW5nLWJhY2sgXCJG b29fQmFyX0JheiBcIikpKVxuICAgLS1FTUFDU1JFU1VMVDp0XG4gICAtLUVNQUNTQ01EOihwcm9n biAoZm9yd2FyZC1saW5lIC0yKShraWxsLWxpbmUgMSkpXG5cbiAgIC0tRU1BQ1NDTUQ6KHByb2du IChmb3J3YXJkLWxpbmUgMSkoZG93bmNhc2Utd29yZCAxKShleGVjdXRlLWtiZC1tYWNybyBcIlxc Qy11XFxDLWNcXEMtd1wiKShsZXQgKChjYXNlLWZvbGQtc2VhcmNoIG5pbCkpKGxvb2tpbmctYmFj ayBcIkFkYV9JZGVudGlmaWVyXCIpKSlcbiAgIC0tIEFkYV9JZGVudGlmaWVyIGluIGNvbW1lbnQ7 IGZvcmNlIGF1dG8tY2FzZVxuICAgLS1FTUFDU1JFU1VMVDp0XG5cbmJlZ2luXG4gICAtLUVNQUNT Q01EOih1bmxlc3MgKGVxIGFkYS1zdGF0ZW1lbnQtYmFja2VuZCAnbm9uZSkgKGVuZC1vZi1saW5l IDIpKGtpbGwtbGluZSAyKShuZXdsaW5lLWFuZC1pbmRlbnQpKGluc2VydCBcImVuZCBsb29wO1wi KShuZXdsaW5lLWFuZC1pbmRlbnQpKHdpc2ktZ290by1zdGF0ZW1lbnQtc3RhcnQpKGxvb2tpbmct YXQgXCJmb3IgRmlsZV9OYW1lXCIpKVxuICAgZm9yIEZpbGVfTmFtZSBpbiBGaWxlX05hbWVzIGxv b3BcbiAgIGVuZCBsb29wO1xuICAgLS1FTUFDU1JFU1VMVDoobm90IChlcSBhZGEtc3RhdGVtZW50 LWJhY2tlbmQgJ25vbmUpKVxuICAgLS1FTUFDU0NNRDoodW5sZXNzIChlcSBhZGEtc3RhdGVtZW50 LWJhY2tlbmQgJ25vbmUpIChiZWdpbm5pbmctb2YtbGluZSAtMikod2lzaS1nb3RvLXN0YXRlbWVu dC1lbmQpKGxvb2tpbmctYmFjayBcImVuZCBsb29wXCIpKVxuICAgLS1FTUFDU1JFU1VMVDoobm90 IChlcSBhZGEtc3RhdGVtZW50LWJhY2tlbmQgJ25vbmUpKVxuXG4gICAtLSBJbnNlcnQgYSBjb21t ZW50IGFmdGVyIGNvZGU7IHVzZWQgdG8gc2lnbmFsIGVycm9yLlxuICAgLS1FTUFDU0NNRDoocHJv Z24gKGVuZC1vZi1saW5lIDIpKGJhY2t3YXJkLWRlbGV0ZS1jaGFyIDIpKGNvbW1lbnQtZHdpbSBu aWwpKGxvb2tpbmctYmFjayBcIi0tJFwiKSlcbiAgIEUgOj0gKDEgPT4gICAgICAgICAgICAgICAg ICAgLS1cbiAgICAgICAgICAgJ0EnKTtcbiAgIC0tRU1BQ1NSRVNVTFQ6dFxuXG5lbmQgRGVidWc7 XG4iKSkpCltjbGllbnQtbm90aWZpY2F0aW9uXSBUaHUgTm92IDI0IDE0OjU3OjM0IDIwMjI6Cig6 anNvbnJwYyAiMi4wIiA6bWV0aG9kICJ3b3Jrc3BhY2UvZGlkQ2hhbmdlQ29uZmlndXJhdGlvbiIg OnBhcmFtcwogICAgICAgICAgKDpzZXR0aW5ncwogICAgICAgICAgICg6YWRhCiAgICAgICAgICAg ICgocHJvamVjdEZpbGUgLiAiL1Byb2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2FkYV9t b2RlLmdwciIpKSkpKQpbaW50ZXJuYWxdIFRodSBOb3YgMjQgMTQ6NTc6MzQgMjAyMjoKKDptZXNz YWdlICIvUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiOjQ6IHRlc3Qg KHByb2duIChmb3J3YXJkLWxpbmUgMikoaW5kZW50LWZvci10YWItY29tbWFuZCkoY3VycmVudC1j b2x1bW4pKSIpCltjbGllbnQtcmVxdWVzdF0gKGlkOjIpIFRodSBOb3YgMjQgMTQ6NTc6MzQgMjAy MjoKKDpqc29ucnBjICIyLjAiIDppZCAyIDptZXRob2QgInRleHREb2N1bWVudC9yYW5nZUZvcm1h dHRpbmciIDpwYXJhbXMKICAgICAgICAgICg6dGV4dERvY3VtZW50CiAgICAgICAgICAgKDp1cmkg ImZpbGU6Ly8vUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIikKICAg ICAgICAgICA6b3B0aW9ucwogICAgICAgICAgICg6dGFiU2l6ZSAzIDppbnNlcnRTcGFjZXMgdCA6 aW5zZXJ0RmluYWxOZXdsaW5lIHQgOnRyaW1GaW5hbE5ld2xpbmVzIHQpCiAgICAgICAgICAgOnJh bmdlCiAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAoOmxpbmUgNSA6Y2hhcmFjdGVyIDAp CiAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgKDpsaW5lIDYgOmNoYXJhY3RlciAwKSkpKQpb c3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA1OiBpbGxlZ2FsIGNo YXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA2OiBp bGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFk YjozOjA3OiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9s X2NoYXJzLmFkYjozOjA4OiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2Np aV9jb250cm9sX2NoYXJzLmFkYjozOjA5OiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFf bW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjEwOiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3Rk ZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjExOiBpbGxlZ2FsIGNoYXJh Y3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjEyOiBpbGxl Z2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjoz OjEzOiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2No YXJzLmFkYjo1OjAxOiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1yZWNvdmVy X3BhcnRpYWxfMDkuYWRiOjQ6MTk6IG1pc3Npbmcgc3RyaW5nIHF1b3RlCltzdGRlcnJdIGFkYV9t b2RlLXJlY292ZXJfcGFydGlhbF8xMi5hZGI6MjQ6MzM6IG1pc3Npbmcgc3RyaW5nIHF1b3RlCltz dGRlcnJdIGFkYV9tb2RlLXJlY292ZXJfcGFydGlhbF8wOC5hZGI6NToxNjogbWlzc2luZyBzdHJp bmcgcXVvdGUKW3N0ZGVycl0gYWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6MzowNTog aWxsZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5h ZGI6MzowNjogaWxsZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRhX21vZGUtYXNjaWlfY29udHJv bF9jaGFycy5hZGI6MzowNzogaWxsZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRhX21vZGUtYXNj aWlfY29udHJvbF9jaGFycy5hZGI6MzowODogaWxsZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRh X21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6MzowOTogaWxsZWdhbCBjaGFyYWN0ZXIKW3N0 ZGVycl0gYWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6MzoxMDogaWxsZWdhbCBjaGFy YWN0ZXIKW3N0ZGVycl0gYWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6MzoxMTogaWxs ZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6 MzoxMjogaWxsZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRhX21vZGUtYXNjaWlfY29udHJvbF9j aGFycy5hZGI6MzoxMzogaWxsZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRhX21vZGUtYXNjaWlf Y29udHJvbF9jaGFycy5hZGI6NTowMTogaWxsZWdhbCBjaGFyYWN0ZXIKW3N0ZGVycl0gYWRhX21v ZGUtcmVjb3Zlcl9wYXJ0aWFsXzA5LmFkYjo0OjE5OiBtaXNzaW5nIHN0cmluZyBxdW90ZQpbc3Rk ZXJyXSBhZGFfbW9kZS1yZWNvdmVyX3BhcnRpYWxfMTIuYWRiOjI0OjMzOiBtaXNzaW5nIHN0cmlu ZyBxdW90ZQpbc3RkZXJyXSBhZGFfbW9kZS1yZWNvdmVyX3BhcnRpYWxfMDguYWRiOjU6MTY6IG1p c3Npbmcgc3RyaW5nIHF1b3RlCltzZXJ2ZXItbm90aWZpY2F0aW9uXSBUaHUgTm92IDI0IDE0OjU3 OjM0IDIwMjI6Cig6anNvbnJwYyAiMi4wIiA6bWV0aG9kICJ3aW5kb3cvc2hvd01lc3NhZ2UiIDpw YXJhbXMKICAgICAgICAgICg6dHlwZSAxIDptZXNzYWdlICJNb3JlIHRoYW4gb25lIC5ncHIgZm91 bmQuXG5Ob3RlOiB5b3UgY2FuIGNvbmZpZ3VyZSBhIHByb2plY3QgIHRocm91Z2ggdGhlIGFkYS5w cm9qZWN0RmlsZSBzZXR0aW5nLiIpKQpbc2VydmVyLW5vdGlmaWNhdGlvbl0gVGh1IE5vdiAyNCAx NDo1NzozNCAyMDIyOgooOmpzb25ycGMgIjIuMCIgOm1ldGhvZCAidGV4dERvY3VtZW50L3B1Ymxp c2hEaWFnbm9zdGljcyIgOnBhcmFtcwogICAgICAgICAgKDp1cmkgImZpbGU6Ly8vUHJvamVjdHMv b3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIiA6ZGlhZ25vc3RpY3MKICAgICAgICAg ICAgICAgIFsoOnJhbmdlCiAgICAgICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAg ICAgICg6bGluZSAwIDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgICAgICAgIDplbmQKICAgICAg ICAgICAgICAgICAgICg6bGluZSAwIDpjaGFyYWN0ZXIgMCkpCiAgICAgICAgICAgICAgICAgIDpz ZXZlcml0eSAxIDpzb3VyY2UgInByb2plY3QiIDptZXNzYWdlICJObyBwcm9qZWN0IHdhcyBsb2Fk ZWQsIGJlY2F1c2UgbW9yZSB0aGFuIG9uZSBwcm9qZWN0IGZpbGUgaGFzIGJlZW4gZm91bmQgaW4g dGhlIHJvb3QgZGlyZWN0b3J5LiBQbGVhc2UgY2hhbmdlIGNvbmZpZ3VyYXRpb24gdG8gcG9pbnQg YSBjb3JyZWN0IHByb2plY3QgZmlsZS4iKV0pKQpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250 cm9sX2NoYXJzLmFkYjozOjA1OiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1h c2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA2OiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBh ZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA3OiBpbGxlZ2FsIGNoYXJhY3Rlcgpb c3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA4OiBpbGxlZ2FsIGNo YXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA5OiBp bGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFk YjozOjEwOiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9s X2NoYXJzLmFkYjozOjExOiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1hc2Np aV9jb250cm9sX2NoYXJzLmFkYjozOjEyOiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3RkZXJyXSBhZGFf bW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjEzOiBpbGxlZ2FsIGNoYXJhY3Rlcgpbc3Rk ZXJyXSBhZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjo1OjAxOiBpbGxlZ2FsIGNoYXJh Y3Rlcgpbc3RkZXJyXSBhZGFfbW9kZS1yZWNvdmVyX3BhcnRpYWxfMDkuYWRiOjQ6MTk6IG1pc3Np bmcgc3RyaW5nIHF1b3RlCltzdGRlcnJdIGFkYV9tb2RlLXJlY292ZXJfcGFydGlhbF8xMi5hZGI6 MjQ6MzM6IG1pc3Npbmcgc3RyaW5nIHF1b3RlCltzdGRlcnJdIGFkYV9tb2RlLXJlY292ZXJfcGFy dGlhbF8wOC5hZGI6NToxNjogbWlzc2luZyBzdHJpbmcgcXVvdGUKW3NlcnZlci1ub3RpZmljYXRp b25dIFRodSBOb3YgMjQgMTQ6NTc6MzQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDptZXRob2QgIndp bmRvdy9zaG93TWVzc2FnZSIgOnBhcmFtcwogICAgICAgICAgKDp0eXBlIDIgOm1lc3NhZ2UgImFk YV9tb2RlLWFzY2lpX2NvbnRyb2xfY2hhcnMuYWRiOjM6MDU6IGlsbGVnYWwgY2hhcmFjdGVyXG5h ZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA2OiBpbGxlZ2FsIGNoYXJhY3Rlclxu YWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6MzowNzogaWxsZWdhbCBjaGFyYWN0ZXJc bmFkYV9tb2RlLWFzY2lpX2NvbnRyb2xfY2hhcnMuYWRiOjM6MDg6IGlsbGVnYWwgY2hhcmFjdGVy XG5hZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjA5OiBpbGxlZ2FsIGNoYXJhY3Rl clxuYWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6MzoxMDogaWxsZWdhbCBjaGFyYWN0 ZXJcbmFkYV9tb2RlLWFzY2lpX2NvbnRyb2xfY2hhcnMuYWRiOjM6MTE6IGlsbGVnYWwgY2hhcmFj dGVyXG5hZGFfbW9kZS1hc2NpaV9jb250cm9sX2NoYXJzLmFkYjozOjEyOiBpbGxlZ2FsIGNoYXJh Y3RlclxuYWRhX21vZGUtYXNjaWlfY29udHJvbF9jaGFycy5hZGI6MzoxMzogaWxsZWdhbCBjaGFy YWN0ZXJcbmFkYV9tb2RlLWFzY2lpX2NvbnRyb2xfY2hhcnMuYWRiOjU6MDE6IGlsbGVnYWwgY2hh cmFjdGVyXG5hZGFfbW9kZS1yZWNvdmVyX3BhcnRpYWxfMDkuYWRiOjQ6MTk6IG1pc3Npbmcgc3Ry aW5nIHF1b3RlXG5hZGFfbW9kZS1yZWNvdmVyX3BhcnRpYWxfMTIuYWRiOjI0OjMzOiBtaXNzaW5n IHN0cmluZyBxdW90ZVxuYWRhX21vZGUtcmVjb3Zlcl9wYXJ0aWFsXzA4LmFkYjo1OjE2OiBtaXNz aW5nIHN0cmluZyBxdW90ZVxuIikpCltjbGllbnQtcmVxdWVzdF0gKGlkOjMpIFRodSBOb3YgMjQg MTQ6NTc6MzQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDppZCAzIDptZXRob2QgInRleHREb2N1bWVu dC9kb2N1bWVudFN5bWJvbCIgOnBhcmFtcwogICAgICAgICAgKDp0ZXh0RG9jdW1lbnQKICAgICAg ICAgICAoOnVyaSAiZmlsZTovLy9Qcm9qZWN0cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1 Zy5hZGIiKSkpCltzZXJ2ZXItbm90aWZpY2F0aW9uXSBUaHUgTm92IDI0IDE0OjU3OjM0IDIwMjI6 Cig6anNvbnJwYyAiMi4wIiA6bWV0aG9kICJ0ZXh0RG9jdW1lbnQvcHVibGlzaERpYWdub3N0aWNz IiA6cGFyYW1zCiAgICAgICAgICAoOnVyaSAiZmlsZTovLy9Qcm9qZWN0cy9vcmcuZW1hY3MuYWRh LW1vZGUvdGVzdC9kZWJ1Zy5hZGIiIDpkaWFnbm9zdGljcwogICAgICAgICAgICAgICAgW10pKQpb c2VydmVyLXJlcXVlc3RdIChpZDoyKSBUaHUgTm92IDI0IDE0OjU3OjM0IDIwMjI6Cig6anNvbnJw YyAiMi4wIiA6aWQgMiA6bWV0aG9kICJjbGllbnQvcmVnaXN0ZXJDYXBhYmlsaXR5IiA6cGFyYW1z CiAgICAgICAgICAoOnJlZ2lzdHJhdGlvbnMKICAgICAgICAgICBbKDppZCAiZm0tMSIgOm1ldGhv ZCAid29ya3NwYWNlL2RpZENoYW5nZVdhdGNoZWRGaWxlcyIgOnJlZ2lzdGVyT3B0aW9ucwogICAg ICAgICAgICAgICAgICg6d2F0Y2hlcnMKICAgICAgICAgICAgICAgICAgWyg6Z2xvYlBhdHRlcm4g Ii9Qcm9qZWN0cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC8qIildKSldKSkKW2NsaWVudC1yZXBs eV0gKGlkOjIpIFRodSBOb3YgMjQgMTQ6NTc6MzQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDppZCAy IDpyZXN1bHQgbmlsKQpbc2VydmVyLXJlcGx5XSAoaWQ6MikgVGh1IE5vdiAyNCAxNDo1NzozNCAy MDIyOgooOmpzb25ycGMgIjIuMCIgOmlkIDIgOnJlc3VsdAogICAgICAgICAgWyg6cmFuZ2UKICAg ICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgKDpsaW5lIDAgOmNoYXJhY3RlciAxNSkKICAg ICAgICAgICAgIDplbmQKICAgICAgICAgICAgICg6bGluZSAxIDpjaGFyYWN0ZXIgMCkpCiAgICAg ICAgICAgIDpuZXdUZXh0ICIgIikKICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICg6c3Rh cnQKICAgICAgICAgICAgICg6bGluZSAyIDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgIDplbmQK ICAgICAgICAgICAgICg6bGluZSAyIDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgIDpuZXdUZXh0 ICIiKQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAg KDpsaW5lIDMgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgKDps aW5lIDMgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAgICAgICAgICAg KDpyYW5nZQogICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUgNCA6Y2hhcmFj dGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgNCA6Y2hhcmFjdGVy IDMpKQogICAgICAgICAgICA6bmV3VGV4dCAiIikKICAgICAgICAgICAoOnJhbmdlCiAgICAgICAg ICAgICg6c3RhcnQKICAgICAgICAgICAgICg6bGluZSA2IDpjaGFyYWN0ZXIgMCkKICAgICAgICAg ICAgIDplbmQKICAgICAgICAgICAgICg6bGluZSA2IDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAg IDpuZXdUZXh0ICIiKQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAogICAg ICAgICAgICAgKDpsaW5lIDcgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgOmVuZAogICAgICAg ICAgICAgKDpsaW5lIDcgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAg ICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUg OCA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgOCA6 Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICA6bmV3VGV4dCAiIikKICAgICAgICAgICAoOnJhbmdl CiAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICg6bGluZSAxMCA6Y2hhcmFjdGVyIDAp CiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgMTAgOmNoYXJhY3RlciAzKSkK ICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAo OnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUgMTEgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAg OmVuZAogICAgICAgICAgICAgKDpsaW5lIDExIDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgIDpu ZXdUZXh0ICIiKQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAogICAgICAg ICAgICAgKDpsaW5lIDEyIDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgIDplbmQKICAgICAgICAg ICAgICg6bGluZSAxMiA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICA6bmV3VGV4dCAiIikKICAg ICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICg6bGluZSAx MyA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgMTMg OmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAgICAgICAgICAgKDpyYW5n ZQogICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUgMTQgOmNoYXJhY3RlciAw KQogICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgKDpsaW5lIDE0IDpjaGFyYWN0ZXIgMykp CiAgICAgICAgICAgIDpuZXdUZXh0ICIiKQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAg KDpzdGFydAogICAgICAgICAgICAgKDpsaW5lIDE1IDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAg IDplbmQKICAgICAgICAgICAgICg6bGluZSAxNSA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICA6 bmV3VGV4dCAiIikKICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICg6c3RhcnQKICAgICAg ICAgICAgICg6bGluZSAxNiA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAg ICAgICAoOmxpbmUgMTYgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAg ICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUg MTcgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgKDpsaW5lIDE3 IDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgIDpuZXdUZXh0ICIiKQogICAgICAgICAgICg6cmFu Z2UKICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgKDpsaW5lIDE4IDpjaGFyYWN0ZXIg MCkKICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICg6bGluZSAxOCA6Y2hhcmFjdGVyIDMp KQogICAgICAgICAgICA6bmV3VGV4dCAiIikKICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAg ICg6c3RhcnQKICAgICAgICAgICAgICg6bGluZSAxOSA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAg ICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgMTkgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAg Om5ld1RleHQgIiIpCiAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAoOnN0YXJ0CiAgICAg ICAgICAgICAoOmxpbmUgMjEgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgOmVuZAogICAgICAg ICAgICAgKDpsaW5lIDIxIDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgIDpuZXdUZXh0ICIiKQog ICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgKDpsaW5l IDIzIDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICg6bGluZSAy MyA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICA6bmV3VGV4dCAiIikKICAgICAgICAgICAoOnJh bmdlCiAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICg6bGluZSAyNCA6Y2hhcmFjdGVy IDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgMjQgOmNoYXJhY3RlciAz KSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAg ICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUgMjUgOmNoYXJhY3RlciAwKQogICAgICAgICAg ICAgOmVuZAogICAgICAgICAgICAgKDpsaW5lIDI1IDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAg IDpuZXdUZXh0ICIiKQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAogICAg ICAgICAgICAgKDpsaW5lIDI3IDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgIDplbmQKICAgICAg ICAgICAgICg6bGluZSAyNyA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICA6bmV3VGV4dCAiIikK ICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICg6bGlu ZSAyOCA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUg MjggOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAgICAgICAgICAgKDpy YW5nZQogICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUgMjkgOmNoYXJhY3Rl ciAwKQogICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgKDpsaW5lIDI5IDpjaGFyYWN0ZXIg MykpCiAgICAgICAgICAgIDpuZXdUZXh0ICIiKQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAg ICAgKDpzdGFydAogICAgICAgICAgICAgKDpsaW5lIDMxIDpjaGFyYWN0ZXIgMCkKICAgICAgICAg ICAgIDplbmQKICAgICAgICAgICAgICg6bGluZSAzMSA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAg ICA6bmV3VGV4dCAiIikKICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICg6c3RhcnQKICAg ICAgICAgICAgICg6bGluZSAzMiA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAg ICAgICAgICAoOmxpbmUgMzIgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIp CiAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxp bmUgMzMgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgKDpsaW5l IDMzIDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgIDpuZXdUZXh0ICIiKQogICAgICAgICAgICg6 cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgKDpsaW5lIDM1IDpjaGFyYWN0 ZXIgMCkKICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICg6bGluZSAzNSA6Y2hhcmFjdGVy IDMpKQogICAgICAgICAgICA6bmV3VGV4dCAiIikKICAgICAgICAgICAoOnJhbmdlCiAgICAgICAg ICAgICg6c3RhcnQKICAgICAgICAgICAgICg6bGluZSAzNiA6Y2hhcmFjdGVyIDApCiAgICAgICAg ICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgMzYgOmNoYXJhY3RlciAzKSkKICAgICAgICAg ICAgOm5ld1RleHQgIiIpCiAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAoOnN0YXJ0CiAg ICAgICAgICAgICAoOmxpbmUgMzcgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgOmVuZAogICAg ICAgICAgICAgKDpsaW5lIDM3IDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgIDpuZXdUZXh0ICIi KQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgKDps aW5lIDM5IDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICg6bGlu ZSAzOSA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICA6bmV3VGV4dCAiIikKICAgICAgICAgICAo OnJhbmdlCiAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICg6bGluZSA0MCA6Y2hhcmFj dGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAoOmxpbmUgNDAgOmNoYXJhY3Rl ciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpCiAgICAgICAgICAgKDpyYW5nZQogICAgICAg ICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAoOmxpbmUgNDEgOmNoYXJhY3RlciAwKQogICAgICAg ICAgICAgOmVuZAogICAgICAgICAgICAgKDpsaW5lIDQxIDpjaGFyYWN0ZXIgMykpCiAgICAgICAg ICAgIDpuZXdUZXh0ICIiKQogICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgKDpzdGFydAog ICAgICAgICAgICAgKDpsaW5lIDUzIDpjaGFyYWN0ZXIgNykKICAgICAgICAgICAgIDplbmQKICAg ICAgICAgICAgICg6bGluZSA1MyA6Y2hhcmFjdGVyIDYpKQogICAgICAgICAgICA6bmV3VGV4dCAi XG4gICAgIikKICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAg ICAgICg6bGluZSA1NCA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAg ICAoOmxpbmUgNTQgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgOm5ld1RleHQgIiIpXSkKW2lu dGVybmFsXSBUaHUgTm92IDI0IDE0OjU3OjM0IDIwMjI6Cig6bWVzc2FnZSAiL1Byb2plY3RzL29y Zy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYjo3OiB0ZXN0ICh1bmxlc3MgKGVxIGFkYS1z dGF0ZW1lbnQtYmFja2VuZCAnbm9uZSkgIChmb3J3YXJkLWxpbmUgMikod2lzaS1pbmRlbnQtc3Rh dGVtZW50KShjdXJyZW50LWNvbHVtbikpIikKW2ludGVybmFsXSBUaHUgTm92IDI0IDE0OjU3OjM0 IDIwMjI6Cig6bWVzc2FnZSAiL1Byb2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVn LmFkYjoxNjogdGVzdCAocHJvZ24gKGZvcndhcmQtbGluZSAyKShiYWNrLXRvLWluZGVudGF0aW9u KShmb3J3YXJkLWNoYXIgMikgKGNvbW1lbnQtaW5kZW50LW5ldy1saW5lKShpbmRlbnQtZm9yLXRh Yi1jb21tYW5kKSkiKQpbY2xpZW50LW5vdGlmaWNhdGlvbl0gVGh1IE5vdiAyNCAxNDo1NzozNCAy MDIyOgooOmpzb25ycGMgIjIuMCIgOm1ldGhvZCAidGV4dERvY3VtZW50L2RpZENoYW5nZSIgOnBh cmFtcwogICAgICAgICAgKDp0ZXh0RG9jdW1lbnQKICAgICAgICAgICAoOnVyaSAiZmlsZTovLy9Q cm9qZWN0cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGIiIDp2ZXJzaW9uIDM5KQog ICAgICAgICAgIDpjb250ZW50Q2hhbmdlcwogICAgICAgICAgIFsoOnJhbmdlCiAgICAgICAgICAg ICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDU0IDpjaGFyYWN0ZXIgMCkKICAgICAgICAg ICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDU0IDpjaGFyYWN0ZXIgMykpCiAgICAgICAg ICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpyYW5nZQogICAgICAg ICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSA1MyA6Y2hhcmFjdGVyIDcpCiAgICAg ICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSA1MyA6Y2hhcmFjdGVyIDgpKQogICAg ICAgICAgICAgOnJhbmdlTGVuZ3RoIDEgOnRleHQgIlxuICAgICIpCiAgICAgICAgICAgICg6cmFu Z2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgNDEgOmNoYXJhY3Rl ciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUgNDEgOmNoYXJhY3Rl ciAzKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAo OnJhbmdlCiAgICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDQwIDpjaGFy YWN0ZXIgMCkKICAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDQwIDpjaGFy YWN0ZXIgMykpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAg ICAgKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSAzOSA6 Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAzOSA6 Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDMgOnRleHQgIiIpCiAgICAg ICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUg MzcgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUg MzcgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQog ICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDps aW5lIDM2IDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDps aW5lIDM2IDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAi IikKICAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAg ICg6bGluZSAzNSA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAg ICg6bGluZSAzNSA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDMgOnRl eHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAg ICAgICAoOmxpbmUgMzMgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAg ICAgICAoOmxpbmUgMzMgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAz IDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICAoOnN0YXJ0CiAgICAg ICAgICAgICAgKDpsaW5lIDMyIDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgICA6ZW5kCiAgICAg ICAgICAgICAgKDpsaW5lIDMyIDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgICA6cmFuZ2VMZW5n dGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAog ICAgICAgICAgICAgICg6bGluZSAzMSA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVuZAog ICAgICAgICAgICAgICg6bGluZSAzMSA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICAgOnJhbmdl TGVuZ3RoIDMgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3Rh cnQKICAgICAgICAgICAgICAoOmxpbmUgMjkgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDpl bmQKICAgICAgICAgICAgICAoOmxpbmUgMjkgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgIDpy YW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICAo OnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDI4IDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAg ICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDI4IDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAg ICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAg ICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSAyNyA6Y2hhcmFjdGVyIDApCiAgICAgICAg ICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAyNyA6Y2hhcmFjdGVyIDMpKQogICAgICAg ICAgICAgOnJhbmdlTGVuZ3RoIDMgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAg ICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMjUgOmNoYXJhY3RlciAwKQogICAg ICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUgMjUgOmNoYXJhY3RlciAzKSkKICAg ICAgICAgICAgIDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdlCiAg ICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDI0IDpjaGFyYWN0ZXIgMCkK ICAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDI0IDpjaGFyYWN0ZXIgMykp CiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpyYW5n ZQogICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSAyMyA6Y2hhcmFjdGVy IDApCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAyMyA6Y2hhcmFjdGVy IDMpKQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDMgOnRleHQgIiIpCiAgICAgICAgICAgICg6 cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMjEgOmNoYXJh Y3RlciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUgMjEgOmNoYXJh Y3RlciAzKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAg ICAoOnJhbmdlCiAgICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDE5IDpj aGFyYWN0ZXIgMCkKICAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDE5IDpj aGFyYWN0ZXIgMykpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAg ICAgICAgKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSAx OCA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAx OCA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDMgOnRleHQgIiIpCiAg ICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxp bmUgMTcgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxp bmUgMTcgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIi KQogICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAg KDpsaW5lIDE2IDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAg KDpsaW5lIDE2IDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4 dCAiIikKICAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAg ICAgICg6bGluZSAxNSA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAg ICAgICg6bGluZSAxNSA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDMg OnRleHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAg ICAgICAgICAoOmxpbmUgMTQgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAg ICAgICAgICAoOmxpbmUgMTQgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0 aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICAoOnN0YXJ0CiAg ICAgICAgICAgICAgKDpsaW5lIDEzIDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAgICA6ZW5kCiAg ICAgICAgICAgICAgKDpsaW5lIDEzIDpjaGFyYWN0ZXIgMykpCiAgICAgICAgICAgICA6cmFuZ2VM ZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFy dAogICAgICAgICAgICAgICg6bGluZSAxMiA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVu ZAogICAgICAgICAgICAgICg6bGluZSAxMiA6Y2hhcmFjdGVyIDMpKQogICAgICAgICAgICAgOnJh bmdlTGVuZ3RoIDMgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6 c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMTEgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAg IDplbmQKICAgICAgICAgICAgICAoOmxpbmUgMTEgOmNoYXJhY3RlciAzKSkKICAgICAgICAgICAg IDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAg ICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDEwIDpjaGFyYWN0ZXIgMCkKICAgICAgICAg ICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDEwIDpjaGFyYWN0ZXIgMykpCiAgICAgICAg ICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpyYW5nZQogICAgICAg ICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSA4IDpjaGFyYWN0ZXIgMCkKICAgICAg ICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDggOmNoYXJhY3RlciAzKSkKICAgICAg ICAgICAgIDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdlCiAgICAg ICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDcgOmNoYXJhY3RlciAwKQogICAg ICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUgNyA6Y2hhcmFjdGVyIDMpKQogICAg ICAgICAgICAgOnJhbmdlTGVuZ3RoIDMgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAg ICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgNiA6Y2hhcmFjdGVyIDApCiAg ICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSA2IDpjaGFyYWN0ZXIgMykpCiAg ICAgICAgICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpyYW5nZQog ICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSA0IDpjaGFyYWN0ZXIgMCkK ICAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDQgOmNoYXJhY3RlciAzKSkK ICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdl CiAgICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDMgOmNoYXJhY3RlciAw KQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUgMyA6Y2hhcmFjdGVyIDMp KQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDMgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFu Z2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMiA6Y2hhcmFjdGVy IDApCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAyIDpjaGFyYWN0ZXIg MykpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMyA6dGV4dCAiIikKICAgICAgICAgICAgKDpy YW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSAwIDpjaGFyYWN0 ZXIgMTUpCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAxIDpjaGFyYWN0 ZXIgMCkpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMSA6dGV4dCAiICIpCiAgICAgICAgICAg ICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMTcgOmNo YXJhY3RlciAyKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUgMTcgOmNo YXJhY3RlciAyKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAwIDp0ZXh0ICJcbiIpCiAgICAg ICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUg MTggOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUg MTggOmNoYXJhY3RlciAwKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAwIDp0ZXh0ICJcbiIp CiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAo OmxpbmUgMTggOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAo OmxpbmUgMTggOmNoYXJhY3RlciAwKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAwIDp0ZXh0 ICItLSIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAg ICAgICAoOmxpbmUgMTggOmNoYXJhY3RlciAyKQogICAgICAgICAgICAgIDplbmQKICAgICAgICAg ICAgICAoOmxpbmUgMTkgOmNoYXJhY3RlciAwKSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAx IDp0ZXh0ICIiKV0pKQpbY2xpZW50LXJlcXVlc3RdIChpZDo0KSBUaHUgTm92IDI0IDE0OjU3OjM0 IDIwMjI6Cig6anNvbnJwYyAiMi4wIiA6aWQgNCA6bWV0aG9kICJ0ZXh0RG9jdW1lbnQvcmFuZ2VG b3JtYXR0aW5nIiA6cGFyYW1zCiAgICAgICAgICAoOnRleHREb2N1bWVudAogICAgICAgICAgICg6 dXJpICJmaWxlOi8vL1Byb2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYiIp CiAgICAgICAgICAgOm9wdGlvbnMKICAgICAgICAgICAoOnRhYlNpemUgMyA6aW5zZXJ0U3BhY2Vz IHQgOmluc2VydEZpbmFsTmV3bGluZSB0IDp0cmltRmluYWxOZXdsaW5lcyB0KQogICAgICAgICAg IDpyYW5nZQogICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgKDpsaW5lIDE4IDpjaGFyYWN0 ZXIgMCkKICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAoOmxpbmUgMTkgOmNoYXJhY3RlciAw KSkpKQpbaW50ZXJuYWxdIFRodSBOb3YgMjQgMTQ6NTc6NDQgMjAyMjoKKDptZXNzYWdlICIuLi4g anNvbnJwYy1lcnJvcjogKHJlcXVlc3QgaWQ9NCBmYWlsZWQ6IChqc29ucnBjLWVycm9yLW1lc3Nh Z2UgLiBUaW1lZCBvdXQpKSIpCltpbnRlcm5hbF0gVGh1IE5vdiAyNCAxNDo1Nzo0NCAyMDIyOgoo Om1lc3NhZ2UgIi9Qcm9qZWN0cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGI6MjA6 IHRlc3QgKHByb2duIChmb3J3YXJkLWxpbmUgLTIpKGtpbGwtbGluZSAxKSkiKQpbaW50ZXJuYWxd IFRodSBOb3YgMjQgMTQ6NTc6NDQgMjAyMjoKKDptZXNzYWdlICIvUHJvamVjdHMvb3JnLmVtYWNz LmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiOjIzOiB0ZXN0IChwcm9nbiAoZW5kLW9mLWxpbmUgMSko bmV3bGluZS1hbmQtaW5kZW50KShleGVjdXRlLWtiZC1tYWNybyBcIkFcIikoY2hhci1iZWZvcmUp KSIpCltjbGllbnQtbm90aWZpY2F0aW9uXSBUaHUgTm92IDI0IDE0OjU3OjQ0IDIwMjI6Cig6anNv bnJwYyAiMi4wIiA6bWV0aG9kICJ0ZXh0RG9jdW1lbnQvZGlkQ2hhbmdlIiA6cGFyYW1zCiAgICAg ICAgICAoOnRleHREb2N1bWVudAogICAgICAgICAgICg6dXJpICJmaWxlOi8vL1Byb2plY3RzL29y Zy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYiIgOnZlcnNpb24gNDEpCiAgICAgICAgICAg OmNvbnRlbnRDaGFuZ2VzCiAgICAgICAgICAgWyg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQK ICAgICAgICAgICAgICAoOmxpbmUgMTcgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQK ICAgICAgICAgICAgICAoOmxpbmUgMTggOmNoYXJhY3RlciAwKSkKICAgICAgICAgICAgIDpyYW5n ZUxlbmd0aCAzIDp0ZXh0ICIiKQogICAgICAgICAgICAoOnJhbmdlCiAgICAgICAgICAgICAoOnN0 YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDIyIDpjaGFyYWN0ZXIgOTApCiAgICAgICAgICAgICAg OmVuZAogICAgICAgICAgICAgICg6bGluZSAyMiA6Y2hhcmFjdGVyIDkwKSkKICAgICAgICAgICAg IDpyYW5nZUxlbmd0aCAwIDp0ZXh0ICJcbiIpXSkpCltjbGllbnQtcmVxdWVzdF0gKGlkOjUpIFRo dSBOb3YgMjQgMTQ6NTc6NDQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDppZCA1IDptZXRob2QgInRl eHREb2N1bWVudC9yYW5nZUZvcm1hdHRpbmciIDpwYXJhbXMKICAgICAgICAgICg6dGV4dERvY3Vt ZW50CiAgICAgICAgICAgKDp1cmkgImZpbGU6Ly8vUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2Rl L3Rlc3QvZGVidWcuYWRiIikKICAgICAgICAgICA6b3B0aW9ucwogICAgICAgICAgICg6dGFiU2l6 ZSAzIDppbnNlcnRTcGFjZXMgdCA6aW5zZXJ0RmluYWxOZXdsaW5lIHQgOnRyaW1GaW5hbE5ld2xp bmVzIHQpCiAgICAgICAgICAgOnJhbmdlCiAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAo OmxpbmUgMjMgOmNoYXJhY3RlciAwKQogICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICg6bGlu ZSAyNCA6Y2hhcmFjdGVyIDApKSkpCltpbnRlcm5hbF0gVGh1IE5vdiAyNCAxNDo1Nzo1NCAyMDIy OgooOm1lc3NhZ2UgIi4uLiBqc29ucnBjLWVycm9yOiAocmVxdWVzdCBpZD01IGZhaWxlZDogKGpz b25ycGMtZXJyb3ItbWVzc2FnZSAuIFRpbWVkIG91dCkpIikKW2ludGVybmFsXSBUaHUgTm92IDI0 IDE0OjU3OjU0IDIwMjI6Cig6bWVzc2FnZSAiL1Byb2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90 ZXN0L2RlYnVnLmFkYjoyNjogdGVzdCAocHJvZ24gKGZvcndhcmQtbGluZSAtMikoa2lsbC1saW5l IDEpKSIpCltpbnRlcm5hbF0gVGh1IE5vdiAyNCAxNDo1Nzo1NCAyMDIyOgooOm1lc3NhZ2UgIi9Q cm9qZWN0cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGI6Mjc6IHRlc3QgKHByb2du IChlbmQtb2YtbGluZSAxKShuZXdsaW5lLWFuZC1pbmRlbnQpKGV4ZWN1dGUta2JkLW1hY3JvIFwi YVwiKShjaGFyLWJlZm9yZSkpIikKW2NsaWVudC1ub3RpZmljYXRpb25dIFRodSBOb3YgMjQgMTQ6 NTc6NTQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDptZXRob2QgInRleHREb2N1bWVudC9kaWRDaGFu Z2UiIDpwYXJhbXMKICAgICAgICAgICg6dGV4dERvY3VtZW50CiAgICAgICAgICAgKDp1cmkgImZp bGU6Ly8vUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIiA6dmVyc2lv biA0MykKICAgICAgICAgICA6Y29udGVudENoYW5nZXMKICAgICAgICAgICBbKDpyYW5nZQogICAg ICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSAyMyA6Y2hhcmFjdGVyIDApCiAg ICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAyNCA6Y2hhcmFjdGVyIDApKQog ICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDEgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UK ICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMjYgOmNoYXJhY3RlciA5 MCkKICAgICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDI2IDpjaGFyYWN0ZXIg OTApKQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDAgOnRleHQgIlxuIildKSkKW2NsaWVudC1y ZXF1ZXN0XSAoaWQ6NikgVGh1IE5vdiAyNCAxNDo1Nzo1NCAyMDIyOgooOmpzb25ycGMgIjIuMCIg OmlkIDYgOm1ldGhvZCAidGV4dERvY3VtZW50L3JhbmdlRm9ybWF0dGluZyIgOnBhcmFtcwogICAg ICAgICAgKDp0ZXh0RG9jdW1lbnQKICAgICAgICAgICAoOnVyaSAiZmlsZTovLy9Qcm9qZWN0cy9v cmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGIiKQogICAgICAgICAgIDpvcHRpb25zCiAg ICAgICAgICAgKDp0YWJTaXplIDMgOmluc2VydFNwYWNlcyB0IDppbnNlcnRGaW5hbE5ld2xpbmUg dCA6dHJpbUZpbmFsTmV3bGluZXMgdCkKICAgICAgICAgICA6cmFuZ2UKICAgICAgICAgICAoOnN0 YXJ0CiAgICAgICAgICAgICg6bGluZSAyNyA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgIDplbmQK ICAgICAgICAgICAgKDpsaW5lIDI4IDpjaGFyYWN0ZXIgMCkpKSkKW2ludGVybmFsXSBUaHUgTm92 IDI0IDE0OjU4OjA0IDIwMjI6Cig6bWVzc2FnZSAiLi4uIGpzb25ycGMtZXJyb3I6IChyZXF1ZXN0 IGlkPTYgZmFpbGVkOiAoanNvbnJwYy1lcnJvci1tZXNzYWdlIC4gVGltZWQgb3V0KSkiKQpbaW50 ZXJuYWxdIFRodSBOb3YgMjQgMTQ6NTg6MDQgMjAyMjoKKDptZXNzYWdlICIvUHJvamVjdHMvb3Jn LmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiOjMwOiB0ZXN0IChwcm9nbiAoZm9yd2FyZC1s aW5lIC0yKShraWxsLWxpbmUgMSkpIikKW2ludGVybmFsXSBUaHUgTm92IDI0IDE0OjU4OjA0IDIw MjI6Cig6bWVzc2FnZSAiL1Byb2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFk YjozMTogdGVzdCAocHJvZ24gKGVuZC1vZi1saW5lIDEpKG5ld2xpbmUtYW5kLWluZGVudCkoZXhl Y3V0ZS1rYmQtbWFjcm8gXCJhX2IgXCIpKGxldCAoKGNhc2UtZm9sZC1zZWFyY2ggbmlsKSkobG9v a2luZy1iYWNrIFwiQV9CIFwiKSkpIikKW2NsaWVudC1ub3RpZmljYXRpb25dIFRodSBOb3YgMjQg MTQ6NTg6MDQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDptZXRob2QgInRleHREb2N1bWVudC9kaWRD aGFuZ2UiIDpwYXJhbXMKICAgICAgICAgICg6dGV4dERvY3VtZW50CiAgICAgICAgICAgKDp1cmkg ImZpbGU6Ly8vUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIiA6dmVy c2lvbiA0NSkKICAgICAgICAgICA6Y29udGVudENoYW5nZXMKICAgICAgICAgICBbKDpyYW5nZQog ICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6bGluZSAyNyA6Y2hhcmFjdGVyIDAp CiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAyOCA6Y2hhcmFjdGVyIDAp KQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDEgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFu Z2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMzAgOmNoYXJhY3Rl ciAxMzEpCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6bGluZSAzMCA6Y2hhcmFj dGVyIDEzMSkpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGggMCA6dGV4dCAiXG4iKV0pKQpbY2xp ZW50LXJlcXVlc3RdIChpZDo3KSBUaHUgTm92IDI0IDE0OjU4OjA0IDIwMjI6Cig6anNvbnJwYyAi Mi4wIiA6aWQgNyA6bWV0aG9kICJ0ZXh0RG9jdW1lbnQvcmFuZ2VGb3JtYXR0aW5nIiA6cGFyYW1z CiAgICAgICAgICAoOnRleHREb2N1bWVudAogICAgICAgICAgICg6dXJpICJmaWxlOi8vL1Byb2pl Y3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYiIpCiAgICAgICAgICAgOm9wdGlv bnMKICAgICAgICAgICAoOnRhYlNpemUgMyA6aW5zZXJ0U3BhY2VzIHQgOmluc2VydEZpbmFsTmV3 bGluZSB0IDp0cmltRmluYWxOZXdsaW5lcyB0KQogICAgICAgICAgIDpyYW5nZQogICAgICAgICAg ICg6c3RhcnQKICAgICAgICAgICAgKDpsaW5lIDMxIDpjaGFyYWN0ZXIgMCkKICAgICAgICAgICAg OmVuZAogICAgICAgICAgICAoOmxpbmUgMzIgOmNoYXJhY3RlciAwKSkpKQpbaW50ZXJuYWxdIFRo dSBOb3YgMjQgMTQ6NTg6MTQgMjAyMjoKKDptZXNzYWdlICIuLi4ganNvbnJwYy1lcnJvcjogKHJl cXVlc3QgaWQ9NyBmYWlsZWQ6IChqc29ucnBjLWVycm9yLW1lc3NhZ2UgLiBUaW1lZCBvdXQpKSIp CltpbnRlcm5hbF0gVGh1IE5vdiAyNCAxNDo1ODoxNCAyMDIyOgooOm1lc3NhZ2UgIi9Qcm9qZWN0 cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGI6MzQ6IHRlc3QgKHByb2duIChmb3J3 YXJkLWxpbmUgLTIpKGtpbGwtbGluZSAxKSkiKQpbaW50ZXJuYWxdIFRodSBOb3YgMjQgMTQ6NTg6 MTQgMjAyMjoKKDptZXNzYWdlICIvUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVi dWcuYWRiOjM1OiB0ZXN0IChwcm9nbiAoZW5kLW9mLWxpbmUgMSkobmV3bGluZS1hbmQtaW5kZW50 KShleGVjdXRlLWtiZC1tYWNybyBcImZvb19iYXJfYmF6IFwiKShsZXQgKChjYXNlLWZvbGQtc2Vh cmNoIG5pbCkpKGxvb2tpbmctYmFjayBcIkZvb19CYXJfQmF6IFwiKSkpIikKW2NsaWVudC1ub3Rp ZmljYXRpb25dIFRodSBOb3YgMjQgMTQ6NTg6MTQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDptZXRo b2QgInRleHREb2N1bWVudC9kaWRDaGFuZ2UiIDpwYXJhbXMKICAgICAgICAgICg6dGV4dERvY3Vt ZW50CiAgICAgICAgICAgKDp1cmkgImZpbGU6Ly8vUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2Rl L3Rlc3QvZGVidWcuYWRiIiA6dmVyc2lvbiA0NykKICAgICAgICAgICA6Y29udGVudENoYW5nZXMK ICAgICAgICAgICBbKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAgICAgICAgICAgICg6 bGluZSAzMSA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAgICg6 bGluZSAzMiA6Y2hhcmFjdGVyIDApKQogICAgICAgICAgICAgOnJhbmdlTGVuZ3RoIDEgOnRleHQg IiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAg ICAoOmxpbmUgMzQgOmNoYXJhY3RlciAxNDcpCiAgICAgICAgICAgICAgOmVuZAogICAgICAgICAg ICAgICg6bGluZSAzNCA6Y2hhcmFjdGVyIDE0NykpCiAgICAgICAgICAgICA6cmFuZ2VMZW5ndGgg MCA6dGV4dCAiXG4iKV0pKQpbY2xpZW50LXJlcXVlc3RdIChpZDo4KSBUaHUgTm92IDI0IDE0OjU4 OjE0IDIwMjI6Cig6anNvbnJwYyAiMi4wIiA6aWQgOCA6bWV0aG9kICJ0ZXh0RG9jdW1lbnQvcmFu Z2VGb3JtYXR0aW5nIiA6cGFyYW1zCiAgICAgICAgICAoOnRleHREb2N1bWVudAogICAgICAgICAg ICg6dXJpICJmaWxlOi8vL1Byb2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFk YiIpCiAgICAgICAgICAgOm9wdGlvbnMKICAgICAgICAgICAoOnRhYlNpemUgMyA6aW5zZXJ0U3Bh Y2VzIHQgOmluc2VydEZpbmFsTmV3bGluZSB0IDp0cmltRmluYWxOZXdsaW5lcyB0KQogICAgICAg ICAgIDpyYW5nZQogICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgKDpsaW5lIDM1IDpjaGFy YWN0ZXIgMCkKICAgICAgICAgICAgOmVuZAogICAgICAgICAgICAoOmxpbmUgMzYgOmNoYXJhY3Rl ciAwKSkpKQpbaW50ZXJuYWxdIFRodSBOb3YgMjQgMTQ6NTg6MjQgMjAyMjoKKDptZXNzYWdlICIu Li4ganNvbnJwYy1lcnJvcjogKHJlcXVlc3QgaWQ9OCBmYWlsZWQ6IChqc29ucnBjLWVycm9yLW1l c3NhZ2UgLiBUaW1lZCBvdXQpKSIpCltpbnRlcm5hbF0gVGh1IE5vdiAyNCAxNDo1ODoyNCAyMDIy OgooOm1lc3NhZ2UgIi9Qcm9qZWN0cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGI6 Mzg6IHRlc3QgKHByb2duIChmb3J3YXJkLWxpbmUgLTIpKGtpbGwtbGluZSAxKSkiKQpbaW50ZXJu YWxdIFRodSBOb3YgMjQgMTQ6NTg6MjQgMjAyMjoKKDptZXNzYWdlICIvUHJvamVjdHMvb3JnLmVt YWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiOjM5OiB0ZXN0IChwcm9nbiAoZm9yd2FyZC1saW5l IDEpKGRvd25jYXNlLXdvcmQgMSkoZXhlY3V0ZS1rYmQtbWFjcm8gXCJcXEMtdVxcQy1jXFxDLXdc IikobGV0ICgoY2FzZS1mb2xkLXNlYXJjaCBuaWwpKShsb29raW5nLWJhY2sgXCJBZGFfSWRlbnRp ZmllclwiKSkpIikKW2NsaWVudC1yZXF1ZXN0XSAoaWQ6OSkgVGh1IE5vdiAyNCAxNDo1ODoyNCAy MDIyOgooOmpzb25ycGMgIjIuMCIgOmlkIDkgOm1ldGhvZCAidGV4dERvY3VtZW50L2RvY3VtZW50 U3ltYm9sIiA6cGFyYW1zCiAgICAgICAgICAoOnRleHREb2N1bWVudAogICAgICAgICAgICg6dXJp ICJmaWxlOi8vL1Byb2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYiIpKSkK W2NsaWVudC1ub3RpZmljYXRpb25dIFRodSBOb3YgMjQgMTQ6NTg6MzQgMjAyMjoKKDpqc29ucnBj ICIyLjAiIDptZXRob2QgInRleHREb2N1bWVudC9kaWRDaGFuZ2UiIDpwYXJhbXMKICAgICAgICAg ICg6dGV4dERvY3VtZW50CiAgICAgICAgICAgKDp1cmkgImZpbGU6Ly8vUHJvamVjdHMvb3JnLmVt YWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIiA6dmVyc2lvbiA0OSkKICAgICAgICAgICA6Y29u dGVudENoYW5nZXMKICAgICAgICAgICBbKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAg ICAgICAgICAgICg6bGluZSAzNSA6Y2hhcmFjdGVyIDApCiAgICAgICAgICAgICAgOmVuZAogICAg ICAgICAgICAgICg6bGluZSAzNiA6Y2hhcmFjdGVyIDApKQogICAgICAgICAgICAgOnJhbmdlTGVu Z3RoIDEgOnRleHQgIiIpCiAgICAgICAgICAgICg6cmFuZ2UKICAgICAgICAgICAgICg6c3RhcnQK ICAgICAgICAgICAgICAoOmxpbmUgMzkgOmNoYXJhY3RlciAwKQogICAgICAgICAgICAgIDplbmQK ICAgICAgICAgICAgICAoOmxpbmUgMzkgOmNoYXJhY3RlciA2KSkKICAgICAgICAgICAgIDpyYW5n ZUxlbmd0aCA2IDp0ZXh0ICItLSBhZGEiKV0pKQpbY2xpZW50LXJlcXVlc3RdIChpZDoxMCkgVGh1 IE5vdiAyNCAxNDo1ODozNCAyMDIyOgooOmpzb25ycGMgIjIuMCIgOmlkIDEwIDptZXRob2QgInRl eHREb2N1bWVudC9zZW1hbnRpY1Rva2Vucy9yYW5nZSIgOnBhcmFtcwogICAgICAgICAgKDp0ZXh0 RG9jdW1lbnQKICAgICAgICAgICAoOnVyaSAiZmlsZTovLy9Qcm9qZWN0cy9vcmcuZW1hY3MuYWRh LW1vZGUvdGVzdC9kZWJ1Zy5hZGIiKQogICAgICAgICAgIDpyYW5nZQogICAgICAgICAgICg6c3Rh cnQKICAgICAgICAgICAgKDpsaW5lIDAgOmNoYXJhY3RlciAwKQogICAgICAgICAgICA6ZW5kCiAg ICAgICAgICAgICg6bGluZSAzNCA6Y2hhcmFjdGVyIDE1KSkpKQpbY2xpZW50LXJlcXVlc3RdIChp ZDoxMSkgVGh1IE5vdiAyNCAxNDo1ODozNCAyMDIyOgooOmpzb25ycGMgIjIuMCIgOmlkIDExIDpt ZXRob2QgInRleHREb2N1bWVudC9zZW1hbnRpY1Rva2Vucy9yYW5nZSIgOnBhcmFtcwogICAgICAg ICAgKDp0ZXh0RG9jdW1lbnQKICAgICAgICAgICAoOnVyaSAiZmlsZTovLy9Qcm9qZWN0cy9vcmcu ZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGIiKQogICAgICAgICAgIDpyYW5nZQogICAgICAg ICAgICg6c3RhcnQKICAgICAgICAgICAgKDpsaW5lIDM5IDpjaGFyYWN0ZXIgNikKICAgICAgICAg ICAgOmVuZAogICAgICAgICAgICAoOmxpbmUgNTggOmNoYXJhY3RlciAwKSkpKQpbY2xpZW50LXJl cXVlc3RdIChpZDoxMikgVGh1IE5vdiAyNCAxNDo1ODozNCAyMDIyOgooOmpzb25ycGMgIjIuMCIg OmlkIDEyIDptZXRob2QgInRleHREb2N1bWVudC9zZW1hbnRpY1Rva2Vucy9yYW5nZSIgOnBhcmFt cwogICAgICAgICAgKDp0ZXh0RG9jdW1lbnQKICAgICAgICAgICAoOnVyaSAiZmlsZTovLy9Qcm9q ZWN0cy9vcmcuZW1hY3MuYWRhLW1vZGUvdGVzdC9kZWJ1Zy5hZGIiKQogICAgICAgICAgIDpyYW5n ZQogICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgKDpsaW5lIDM0IDpjaGFyYWN0ZXIgMTUp CiAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgKDpsaW5lIDM5IDpjaGFyYWN0ZXIgNikpKSkK W2NsaWVudC1ub3RpZmljYXRpb25dIFRodSBOb3YgMjQgMTQ6NTg6MzQgMjAyMjoKKDpqc29ucnBj ICIyLjAiIDptZXRob2QgInRleHREb2N1bWVudC9kaWRDaGFuZ2UiIDpwYXJhbXMKICAgICAgICAg ICg6dGV4dERvY3VtZW50CiAgICAgICAgICAgKDp1cmkgImZpbGU6Ly8vUHJvamVjdHMvb3JnLmVt YWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIiA6dmVyc2lvbiA1MikKICAgICAgICAgICA6Y29u dGVudENoYW5nZXMKICAgICAgICAgICBbKDpyYW5nZQogICAgICAgICAgICAgKDpzdGFydAogICAg ICAgICAgICAgICg6bGluZSAzOSA6Y2hhcmFjdGVyIDMpCiAgICAgICAgICAgICAgOmVuZAogICAg ICAgICAgICAgICg6bGluZSAzOSA6Y2hhcmFjdGVyIDE3KSkKICAgICAgICAgICAgIDpyYW5nZUxl bmd0aCAxNCA6dGV4dCAiYWRhX2lkZW50aWZpZXIiKQogICAgICAgICAgICAoOnJhbmdlCiAgICAg ICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICAgKDpsaW5lIDM5IDpjaGFyYWN0ZXIgMykKICAg ICAgICAgICAgICA6ZW5kCiAgICAgICAgICAgICAgKDpsaW5lIDM5IDpjaGFyYWN0ZXIgNCkpCiAg ICAgICAgICAgICA6cmFuZ2VMZW5ndGggMSA6dGV4dCAiQSIpCiAgICAgICAgICAgICg6cmFuZ2UK ICAgICAgICAgICAgICg6c3RhcnQKICAgICAgICAgICAgICAoOmxpbmUgMzkgOmNoYXJhY3RlciA3 KQogICAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgICAoOmxpbmUgMzkgOmNoYXJhY3RlciA4 KSkKICAgICAgICAgICAgIDpyYW5nZUxlbmd0aCAxIDp0ZXh0ICJJIildKSkKW2NsaWVudC1yZXF1 ZXN0XSAoaWQ6MTMpIFRodSBOb3YgMjQgMTQ6NTg6MzQgMjAyMjoKKDpqc29ucnBjICIyLjAiIDpp ZCAxMyA6bWV0aG9kICJ0ZXh0RG9jdW1lbnQvc2VtYW50aWNUb2tlbnMvcmFuZ2UiIDpwYXJhbXMK ICAgICAgICAgICg6dGV4dERvY3VtZW50CiAgICAgICAgICAgKDp1cmkgImZpbGU6Ly8vUHJvamVj dHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIikKICAgICAgICAgICA6cmFuZ2UK ICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICg6bGluZSAzOSA6Y2hhcmFjdGVyIDMpCiAg ICAgICAgICAgIDplbmQKICAgICAgICAgICAgKDpsaW5lIDM5IDpjaGFyYWN0ZXIgNCkpKSkKW2Ns aWVudC1yZXF1ZXN0XSAoaWQ6MTQpIFRodSBOb3YgMjQgMTQ6NTg6MzQgMjAyMjoKKDpqc29ucnBj ICIyLjAiIDppZCAxNCA6bWV0aG9kICJ0ZXh0RG9jdW1lbnQvc2VtYW50aWNUb2tlbnMvcmFuZ2Ui IDpwYXJhbXMKICAgICAgICAgICg6dGV4dERvY3VtZW50CiAgICAgICAgICAgKDp1cmkgImZpbGU6 Ly8vUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiIikKICAgICAgICAg ICA6cmFuZ2UKICAgICAgICAgICAoOnN0YXJ0CiAgICAgICAgICAgICg6bGluZSAzOSA6Y2hhcmFj dGVyIDcpCiAgICAgICAgICAgIDplbmQKICAgICAgICAgICAgKDpsaW5lIDM5IDpjaGFyYWN0ZXIg OCkpKSkKW2ludGVybmFsXSBUaHUgTm92IDI0IDE0OjU4OjM1IDIwMjI6Cig6bWVzc2FnZSAiL1By b2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYjo0NDogdGVzdCAodW5sZXNz IChlcSBhZGEtc3RhdGVtZW50LWJhY2tlbmQgJ25vbmUpIChlbmQtb2YtbGluZSAyKShraWxsLWxp bmUgMikobmV3bGluZS1hbmQtaW5kZW50KShpbnNlcnQgXCJlbmQgbG9vcDtcIikobmV3bGluZS1h bmQtaW5kZW50KSh3aXNpLWdvdG8tc3RhdGVtZW50LXN0YXJ0KShsb29raW5nLWF0IFwiZm9yIEZp bGVfTmFtZVwiKSkiKQpbaW50ZXJuYWxdIFRodSBOb3YgMjQgMTQ6NTg6MzUgMjAyMjoKKDptZXNz YWdlICIvUHJvamVjdHMvb3JnLmVtYWNzLmFkYS1tb2RlL3Rlc3QvZGVidWcuYWRiOjQ4OiB0ZXN0 ICh1bmxlc3MgKGVxIGFkYS1zdGF0ZW1lbnQtYmFja2VuZCAnbm9uZSkgKGJlZ2lubmluZy1vZi1s aW5lIC0yKSh3aXNpLWdvdG8tc3RhdGVtZW50LWVuZCkobG9va2luZy1iYWNrIFwiZW5kIGxvb3Bc IikpIikKW2ludGVybmFsXSBUaHUgTm92IDI0IDE0OjU4OjM1IDIwMjI6Cig6bWVzc2FnZSAiL1By b2plY3RzL29yZy5lbWFjcy5hZGEtbW9kZS90ZXN0L2RlYnVnLmFkYjo1MjogdGVzdCAocHJvZ24g KGVuZC1vZi1saW5lIDIpKGJhY2t3YXJkLWRlbGV0ZS1jaGFyIDIpKGNvbW1lbnQtZHdpbSBuaWwp KGxvb2tpbmctYmFjayBcIi0tJFwiKSkiKQo= --=-=-=--