From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Doyley, Marvin M." Subject: Issue with internal links Date: Thu, 8 Aug 2019 16:56:56 +0000 Message-ID: <4D3A34C7-9A8C-421A-AE42-2590B33C6BE6@ur.rochester.edu> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:57584) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hvlip-0007P8-At for emacs-orgmode@gnu.org; Thu, 08 Aug 2019 12:57:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hvlim-0005Om-NB for emacs-orgmode@gnu.org; Thu, 08 Aug 2019 12:57:03 -0400 Received: from mail-eopbgr810101.outbound.protection.outlook.com ([40.107.81.101]:60499 helo=NAM01-BY2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hvlim-0005NI-5t for emacs-orgmode@gnu.org; Thu, 08 Aug 2019 12:57:00 -0400 Content-Language: en-US Content-ID: <7E6C52585B72414391A6846DBEB47C0C@namprd07.prod.outlook.com> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: emacs-orgmode SGkgdGhlcmUsDQoNCldoZW5ldmVyIEkgZG91YmxlIGNsaWNrIG9uIGFuIGludGVybmFsIGxpbmsg SSBnZXQgdGhlIGZvbGxvd2luZyBlcnJvciDigJx2b2lkLWZ1bmN0aW9uIG9yZy1wYXNzLWxpbmst dG8tc3lzdGVt4oCdDQoNCkRvZXMgYW55Ym9keSBrbm93IGhvdyB0byByZXNvbHZlIHRoaXMuDQoN ClRoYW5rcw0KTQ0KDQpQUy4gIEVuY2xvc2VkIGlzIHRoZSBhIGJhY2sgdHJhY2UgZm9yIGEgc2lt cGxlIGZpbGUNCg0KKiBUZXN0aW5nDQoqIE9uZQ0KKiBUd28NCiAgIFtbKlRlc3RpbmddXS4gICAo SSBhbHNvIHRyaWVkIFtbVGVzdGluZ11dIGFuZCBJIGdvdCB0aGUgc2FtZSBlcnJvcikNCg0KRGVi dWdnZXIgZW50ZXJlZC0tTGlzcCBlcnJvcjogKHZvaWQtZnVuY3Rpb24gb3JnLXBhc3MtbGluay10 by1zeXN0ZW0pDQogIG9yZy1wYXNzLWxpbmstdG8tc3lzdGVtKCIqVGVzdGluZyIpDQogIHJ1bi1o b29rLXdpdGgtYXJncy11bnRpbC1zdWNjZXNzKG9yZy1wYXNzLWxpbmstdG8tc3lzdGVtICIqVGVz dGluZyIpDQogIChpZiAocnVuLWhvb2std2l0aC1hcmdzLXVudGlsLXN1Y2Nlc3MgJ29yZy1vcGVu LWxpbmstZnVuY3Rpb25zIHBhdGgpIG5pbCAoaWYgKG5vdCBhcmcpIChvcmctbWFyay1yaW5nLXB1 c2gpIChzd2l0Y2gtdG8tYnVmZmVyLW90aGVyLXdpbmRvdyAob3JnLWdldC1idWZmZXItZm9yLWlu dGVybmFsLWxpbmsgKGN1cnJlbnQtYnVmZmVyKSkpKSAobGV0ICgoZGVzdGluYXRpb24gKHNhdmUt ZXhjdXJzaW9uIChzYXZlLXJlc3RyaWN0aW9uICh3aWRlbikgKGlmIChlcXVhbCB0eXBlICJyYWRp byIpIChvcmctc2VhcmNoLXJhZGlvLXRhcmdldCAob3JnLWVsZW1lbnQtcHJvcGVydHkgOnBhdGgg Y29udGV4dCkpIChvcmctbGluay1zZWFyY2ggKGNvbmQgKChlcXVhbCB0eXBlICciY3VzdG9tLWlk IikgKGNvbmNhdCAiIyIgcGF0aCkpICgoZXF1YWwgdHlwZSAnImNvZGVyZWYiKSAoZm9ybWF0ICIo JXMpIiBwYXRoKSkgKHQgcGF0aCkpIChhbmQgKGVxdWFsIHR5cGUgImZ1enp5IikgKCsgMiAob3Jn LWVsZW1lbnQtcHJvcGVydHkgOmJlZ2luIGNvbnRleHQpKSkpKSAocG9pbnQpKSkpKSAoaWYgKGFu ZCAoPD0gKHBvaW50LW1pbikgZGVzdGluYXRpb24pICg+PSAocG9pbnQtbWF4KSBkZXN0aW5hdGlv bikpIG5pbCAod2lkZW4pKSAoZ290by1jaGFyIGRlc3RpbmF0aW9uKSkpDQogIChjb25kICgoZXF1 YWwgdHlwZSAiZmlsZSIpIChpZiAoc3RyaW5nLW1hdGNoICJbKj97XSIgKGZpbGUtbmFtZS1ub25k aXJlY3RvcnkgcGF0aCkpIChkaXJlZCBwYXRoKSAobGV0KiAoKG9wdGlvbiAob3JnLWVsZW1lbnQt cHJvcGVydHkgOnNlYXJjaC1vcHRpb24gY29udGV4dCkpIChhcHAgKG9yZy1lbGVtZW50LXByb3Bl cnR5IDphcHBsaWNhdGlvbiBjb250ZXh0KSkgKGRlZGljYXRlZC1mdW5jdGlvbiAob3JnLWxpbmst Z2V0LXBhcmFtZXRlciAoaWYgYXBwIChjb25jYXQgdHlwZSAiKyIgYXBwKSB0eXBlKSA6Zm9sbG93 KSkpIChpZiBkZWRpY2F0ZWQtZnVuY3Rpb24gKGZ1bmNhbGwgZGVkaWNhdGVkLWZ1bmN0aW9uIChj b25jYXQgcGF0aCAoYW5kIG9wdGlvbiAoY29uY2F0ICI6OiIgb3B0aW9uKSkpKSAoYXBwbHkgKGZ1 bmN0aW9uIG9yZy1vcGVuLWZpbGUpIHBhdGggKGNvbmQgKGFyZykgKChlcXVhbCBhcHAgImVtYWNz IikgJ2VtYWNzKSAoKGVxdWFsIGFwcCAic3lzIikgJ3N5c3RlbSkpIChjb25kICgobm90IG9wdGlv bikgbmlsKSAoKHN0cmluZy1tYXRjaC1wICJcXGBbMC05XStcXCciIG9wdGlvbikgKGxpc3QgKHN0 cmluZy10by1udW1iZXIgb3B0aW9uKSkpICh0IChsaXN0IG5pbCBvcHRpb24pKSkpKSkpKSAoKGZ1 bmN0aW9ucCAob3JnLWxpbmstZ2V0LXBhcmFtZXRlciB0eXBlIDpmb2xsb3cpKSAoZnVuY2FsbCAo b3JnLWxpbmstZ2V0LXBhcmFtZXRlciB0eXBlIDpmb2xsb3cpIHBhdGgpKSAoKG1lbWJlciB0eXBl ICcoImNvZGVyZWYiICJjdXN0b20taWQiICJmdXp6eSIgInJhZGlvIikpIChpZiAocnVuLWhvb2st d2l0aC1hcmdzLXVudGlsLXN1Y2Nlc3MgJ29yZy1vcGVuLWxpbmstZnVuY3Rpb25zIHBhdGgpIG5p bCAoaWYgKG5vdCBhcmcpIChvcmctbWFyay1yaW5nLXB1c2gpIChzd2l0Y2gtdG8tYnVmZmVyLW90 aGVyLXdpbmRvdyAob3JnLWdldC1idWZmZXItZm9yLWludGVybmFsLWxpbmsgKGN1cnJlbnQtYnVm ZmVyKSkpKSAobGV0ICgoZGVzdGluYXRpb24gKHNhdmUtZXhjdXJzaW9uIChzYXZlLXJlc3RyaWN0 aW9uICh3aWRlbikgKGlmIChlcXVhbCB0eXBlICJyYWRpbyIpIChvcmctc2VhcmNoLXJhZGlvLXRh cmdldCAob3JnLWVsZW1lbnQtcHJvcGVydHkgOnBhdGggY29udGV4dCkpIChvcmctbGluay1zZWFy Y2ggKGNvbmQgKChlcXVhbCB0eXBlICciY3VzdG9tLWlkIikgKGNvbmNhdCAiIyIgcGF0aCkpICgo ZXF1YWwgdHlwZSAnImNvZGVyZWYiKSAoZm9ybWF0ICIoJXMpIiBwYXRoKSkgKHQgcGF0aCkpIChh bmQgKGVxdWFsIHR5cGUgImZ1enp5IikgKCsgMiAob3JnLWVsZW1lbnQtcHJvcGVydHkgOmJlZ2lu IGNvbnRleHQpKSkpKSAocG9pbnQpKSkpKSAoaWYgKGFuZCAoPD0gKHBvaW50LW1pbikgZGVzdGlu YXRpb24pICg+PSAocG9pbnQtbWF4KSBkZXN0aW5hdGlvbikpIG5pbCAod2lkZW4pKSAoZ290by1j aGFyIGRlc3RpbmF0aW9uKSkpKSAodCAoYnJvd3NlLXVybC1hdC1wb2ludCkpKQ0KICAoc2F2ZS1j dXJyZW50LWJ1ZmZlciAoc2V0LWJ1ZmZlciAob3IgcmVmZXJlbmNlLWJ1ZmZlciAoY3VycmVudC1i dWZmZXIpKSkgKGNvbmQgKChlcXVhbCB0eXBlICJmaWxlIikgKGlmIChzdHJpbmctbWF0Y2ggIlsq P3tdIiAoZmlsZS1uYW1lLW5vbmRpcmVjdG9yeSBwYXRoKSkgKGRpcmVkIHBhdGgpIChsZXQqICgo b3B0aW9uIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6c2VhcmNoLW9wdGlvbiBjb250ZXh0KSkgKGFw cCAob3JnLWVsZW1lbnQtcHJvcGVydHkgOmFwcGxpY2F0aW9uIGNvbnRleHQpKSAoZGVkaWNhdGVk LWZ1bmN0aW9uIChvcmctbGluay1nZXQtcGFyYW1ldGVyIChpZiBhcHAgKGNvbmNhdCB0eXBlICIr IiBhcHApIHR5cGUpIDpmb2xsb3cpKSkgKGlmIGRlZGljYXRlZC1mdW5jdGlvbiAoZnVuY2FsbCBk ZWRpY2F0ZWQtZnVuY3Rpb24gKGNvbmNhdCBwYXRoIChhbmQgb3B0aW9uIChjb25jYXQgIjo6IiBv cHRpb24pKSkpIChhcHBseSAoZnVuY3Rpb24gb3JnLW9wZW4tZmlsZSkgcGF0aCAoY29uZCAoYXJn KSAoKGVxdWFsIGFwcCAiZW1hY3MiKSAnZW1hY3MpICgoZXF1YWwgYXBwICJzeXMiKSAnc3lzdGVt KSkgKGNvbmQgKChub3Qgb3B0aW9uKSBuaWwpICgoc3RyaW5nLW1hdGNoLXAgIlxcYFswLTldK1xc JyIgb3B0aW9uKSAobGlzdCAoc3RyaW5nLXRvLW51bWJlciBvcHRpb24pKSkgKHQgKGxpc3Qgbmls IG9wdGlvbikpKSkpKSkpICgoZnVuY3Rpb25wIChvcmctbGluay1nZXQtcGFyYW1ldGVyIHR5cGUg OmZvbGxvdykpIChmdW5jYWxsIChvcmctbGluay1nZXQtcGFyYW1ldGVyIHR5cGUgOmZvbGxvdykg cGF0aCkpICgobWVtYmVyIHR5cGUgJygiY29kZXJlZiIgImN1c3RvbS1pZCIgImZ1enp5IiAicmFk aW8iKSkgKGlmIChydW4taG9vay13aXRoLWFyZ3MtdW50aWwtc3VjY2VzcyAnb3JnLW9wZW4tbGlu ay1mdW5jdGlvbnMgcGF0aCkgbmlsIChpZiAobm90IGFyZykgKG9yZy1tYXJrLXJpbmctcHVzaCkg KHN3aXRjaC10by1idWZmZXItb3RoZXItd2luZG93IChvcmctZ2V0LWJ1ZmZlci1mb3ItaW50ZXJu YWwtbGluayAoY3VycmVudC1idWZmZXIpKSkpIChsZXQgKChkZXN0aW5hdGlvbiAoc2F2ZS1leGN1 cnNpb24gKHNhdmUtcmVzdHJpY3Rpb24gKHdpZGVuKSAoaWYgKGVxdWFsIHR5cGUgInJhZGlvIikg KG9yZy1zZWFyY2gtcmFkaW8tdGFyZ2V0IChvcmctZWxlbWVudC1wcm9wZXJ0eSA6cGF0aCBjb250 ZXh0KSkgKG9yZy1saW5rLXNlYXJjaCAoY29uZCAoKGVxdWFsIHR5cGUgJyJjdXN0b20taWQiKSAo Y29uY2F0ICIjIiBwYXRoKSkgKChlcXVhbCB0eXBlICciY29kZXJlZiIpIChmb3JtYXQgIiglcyki IHBhdGgpKSAodCBwYXRoKSkgKGFuZCAoZXF1YWwgdHlwZSAiZnV6enkiKSAoKyAyIChvcmctZWxl bWVudC1wcm9wZXJ0eSA6YmVnaW4gY29udGV4dCkpKSkpIChwb2ludCkpKSkpIChpZiAoYW5kICg8 PSAocG9pbnQtbWluKSBkZXN0aW5hdGlvbikgKD49IChwb2ludC1tYXgpIGRlc3RpbmF0aW9uKSkg bmlsICh3aWRlbikpIChnb3RvLWNoYXIgZGVzdGluYXRpb24pKSkpICh0IChicm93c2UtdXJsLWF0 LXBvaW50KSkpKQ0KICAobGV0ICgodHlwZSAob3JnLWVsZW1lbnQtcHJvcGVydHkgOnR5cGUgY29u dGV4dCkpIChwYXRoIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6cGF0aCBjb250ZXh0KSkpIChzYXZl LWN1cnJlbnQtYnVmZmVyIChzZXQtYnVmZmVyIChvciByZWZlcmVuY2UtYnVmZmVyIChjdXJyZW50 LWJ1ZmZlcikpKSAoY29uZCAoKGVxdWFsIHR5cGUgImZpbGUiKSAoaWYgKHN0cmluZy1tYXRjaCAi Wyo/e10iIChmaWxlLW5hbWUtbm9uZGlyZWN0b3J5IHBhdGgpKSAoZGlyZWQgcGF0aCkgKGxldCog KChvcHRpb24gKG9yZy1lbGVtZW50LXByb3BlcnR5IDpzZWFyY2gtb3B0aW9uIGNvbnRleHQpKSAo YXBwIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6YXBwbGljYXRpb24gY29udGV4dCkpIChkZWRpY2F0 ZWQtZnVuY3Rpb24gKG9yZy1saW5rLWdldC1wYXJhbWV0ZXIgKGlmIGFwcCAoY29uY2F0IHR5cGUg IisiIGFwcCkgdHlwZSkgOmZvbGxvdykpKSAoaWYgZGVkaWNhdGVkLWZ1bmN0aW9uIChmdW5jYWxs IGRlZGljYXRlZC1mdW5jdGlvbiAoY29uY2F0IHBhdGggKGFuZCBvcHRpb24gKGNvbmNhdCAiOjoi IG9wdGlvbikpKSkgKGFwcGx5IChmdW5jdGlvbiBvcmctb3Blbi1maWxlKSBwYXRoIChjb25kIChh cmcpICgoZXF1YWwgYXBwICJlbWFjcyIpICdlbWFjcykgKChlcXVhbCBhcHAgInN5cyIpICdzeXN0 ZW0pKSAoY29uZCAoKG5vdCBvcHRpb24pIG5pbCkgKChzdHJpbmctbWF0Y2gtcCAiXFxgWzAtOV0r XFwnIiBvcHRpb24pIChsaXN0IChzdHJpbmctdG8tbnVtYmVyIG9wdGlvbikpKSAodCAobGlzdCBu aWwgb3B0aW9uKSkpKSkpKSkgKChmdW5jdGlvbnAgKG9yZy1saW5rLWdldC1wYXJhbWV0ZXIgdHlw ZSA6Zm9sbG93KSkgKGZ1bmNhbGwgKG9yZy1saW5rLWdldC1wYXJhbWV0ZXIgdHlwZSA6Zm9sbG93 KSBwYXRoKSkgKChtZW1iZXIgdHlwZSAnKCJjb2RlcmVmIiAiY3VzdG9tLWlkIiAiZnV6enkiICJy YWRpbyIpKSAoaWYgKHJ1bi1ob29rLXdpdGgtYXJncy11bnRpbC1zdWNjZXNzICdvcmctb3Blbi1s aW5rLWZ1bmN0aW9ucyBwYXRoKSBuaWwgKGlmIChub3QgYXJnKSAob3JnLW1hcmstcmluZy1wdXNo KSAoc3dpdGNoLXRvLWJ1ZmZlci1vdGhlci13aW5kb3cgKG9yZy1nZXQtYnVmZmVyLWZvci1pbnRl cm5hbC1saW5rIChjdXJyZW50LWJ1ZmZlcikpKSkgKGxldCAoKGRlc3RpbmF0aW9uIChzYXZlLWV4 Y3Vyc2lvbiAoc2F2ZS1yZXN0cmljdGlvbiAod2lkZW4pIChpZiAoZXF1YWwgdHlwZSAicmFkaW8i KSAob3JnLXNlYXJjaC1yYWRpby10YXJnZXQgKG9yZy1lbGVtZW50LXByb3BlcnR5IDpwYXRoIGNv bnRleHQpKSAob3JnLWxpbmstc2VhcmNoIChjb25kICgoZXF1YWwgdHlwZSAnImN1c3RvbS1pZCIp IChjb25jYXQgIiMiIHBhdGgpKSAoKGVxdWFsIHR5cGUgJyJjb2RlcmVmIikgKGZvcm1hdCAiKCVz KSIgcGF0aCkpICh0IHBhdGgpKSAoYW5kIChlcXVhbCB0eXBlICJmdXp6eSIpICgrIDIgKG9yZy1l bGVtZW50LXByb3BlcnR5IDpiZWdpbiBjb250ZXh0KSkpKSkgKHBvaW50KSkpKSkgKGlmIChhbmQg KDw9IChwb2ludC1taW4pIGRlc3RpbmF0aW9uKSAoPj0gKHBvaW50LW1heCkgZGVzdGluYXRpb24p KSBuaWwgKHdpZGVuKSkgKGdvdG8tY2hhciBkZXN0aW5hdGlvbikpKSkgKHQgKGJyb3dzZS11cmwt YXQtcG9pbnQpKSkpKQ0KICAoY29uZCAoKG5vdCB0eXBlKSAodXNlci1lcnJvciAiTm8gbGluayBm b3VuZCIpKSAoKG1lbXEgdHlwZSAnKGNvbW1lbnQgY29tbWVudC1ibG9jayBub2RlLXByb3BlcnR5 IGtleXdvcmQpKSAoY2FsbC1pbnRlcmFjdGl2ZWx5IChmdW5jdGlvbiBvcmctb3Blbi1hdC1wb2lu dC1nbG9iYWwpKSkgKChtZW1xIHR5cGUgJyhoZWFkbGluZSBpbmxpbmV0YXNrKSkgKG9yZy1tYXRj aC1saW5lIG9yZy1jb21wbGV4LWhlYWRpbmctcmVnZXhwKSAoaWYgKGFuZCAobWF0Y2gtYmVnaW5u aW5nIDUpICg+PSAocG9pbnQpIChtYXRjaC1iZWdpbm5pbmcgNSkpICg8IChwb2ludCkgKG1hdGNo LWVuZCA1KSkpIChvcmctdGFncy12aWV3IGFyZyAoc3Vic3RyaW5nIChtYXRjaC1zdHJpbmcgNSkg MCAtMSkpIChsZXQqICgodmFsIChvcmctb2ZmZXItbGlua3MtaW4tZW50cnkgKGN1cnJlbnQtYnVm ZmVyKSAocG9pbnQpIGFyZykpKSAoaWYgKGNvbnNwIHZhbCkgKGxldCogKCh4MTk1IChjYXIgdmFs KSkpIChpZiAobnVsbCB4MTk1KSAocHJvZ24gKHJlcXVpcmUgJ29yZy1hdHRhY2gpIChvcmctYXR0 YWNoLXJldmVhbCAnaWYtZXhpc3RzKSkgKGxldCogKCh4MTk3IChjZHIgdmFsKSkpIChsZXQgKChs aW5rcy1lbmQgeDE5NykgKGxpbmtzIHgxOTUpKSAobGV0ICgoLS1kb2xpc3QtdGFpbC0tIChpZiAo c3RyaW5ncCBsaW5rcykgKGxpc3QgbGlua3MpIGxpbmtzKSkpICh3aGlsZSAtLWRvbGlzdC10YWls LS0gKGxldCAoKGxpbmsgKGNhciAtLWRvbGlzdC10YWlsLS0pKSkgKHNlYXJjaC1mb3J3YXJkIGxp bmsgbmlsIGxpbmtzLWVuZCkgKGdvdG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDApKSAob3JnLW9w ZW4tYXQtcG9pbnQpIChzZXRxIC0tZG9saXN0LXRhaWwtLSAoY2RyIC0tZG9saXN0LXRhaWwtLSkp KSkpKSkpKSBuaWwpKSkpICgob3IgKGVxIHR5cGUgJ2Zvb3Rub3RlLXJlZmVyZW5jZSkgKGFuZCAo ZXEgdHlwZSAnZm9vdG5vdGUtZGVmaW5pdGlvbikgKHNhdmUtZXhjdXJzaW9uIChza2lwLWNoYXJz LWZvcndhcmQgIiBcMDExIikgKGxldCAoKGJlZ2luIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6Y29u dGVudHMtYmVnaW4gY29udGV4dCkpKSAoaWYgYmVnaW4gKDwgKHBvaW50KSBiZWdpbikgKD0gKG9y Zy1lbGVtZW50LXByb3BlcnR5IDpwb3N0LWFmZmlsaWF0ZWQgY29udGV4dCkgKGxpbmUtYmVnaW5u aW5nLXBvc2l0aW9uKSkpKSkpKSAob3JnLWZvb3Rub3RlLWFjdGlvbikpICgoYW5kIChlcSB0eXBl ICdwbGFubmluZykgKG9yZy1pbi1yZWdleHAgb3JnLXRzLXJlZ2V4cC1ib3RoIG5pbCB0KSkgKG9y Zy1mb2xsb3ctdGltZXN0YW1wLWxpbmspKSAoKGFuZCAoZXEgdHlwZSAnY2xvY2spIHZhbHVlICg+ PSAocG9pbnQpIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6YmVnaW4gdmFsdWUpKSAoPD0gKHBvaW50 KSAob3JnLWVsZW1lbnQtcHJvcGVydHkgOmVuZCB2YWx1ZSkpKSAob3JnLWZvbGxvdy10aW1lc3Rh bXAtbGluaykpICgoZXEgdHlwZSAnc3JjLWJsb2NrKSAob3JnLWJhYmVsLW9wZW4tc3JjLWJsb2Nr LXJlc3VsdCkpICgoPj0gKHBvaW50KSAoc2F2ZS1leGN1cnNpb24gKGdvdG8tY2hhciAob3JnLWVs ZW1lbnQtcHJvcGVydHkgOmVuZCBjb250ZXh0KSkgKHNraXAtY2hhcnMtYmFja3dhcmQgIiBcMDEx IikgKHBvaW50KSkpICh1c2VyLWVycm9yICJObyBsaW5rIGZvdW5kIikpICgoZXEgdHlwZSAnaW5s aW5lLXNyYy1ibG9jaykgKG9yZy1iYWJlbC1vcGVuLXNyYy1ibG9jay1yZXN1bHQpKSAoKGVxIHR5 cGUgJ3RpbWVzdGFtcCkgKG9yZy1mb2xsb3ctdGltZXN0YW1wLWxpbmspKSAoKGVxIHR5cGUgJ2xp bmspIChsZXQgKCh0eXBlIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6dHlwZSBjb250ZXh0KSkgKHBh dGggKG9yZy1lbGVtZW50LXByb3BlcnR5IDpwYXRoIGNvbnRleHQpKSkgKHNhdmUtY3VycmVudC1i dWZmZXIgKHNldC1idWZmZXIgKG9yIHJlZmVyZW5jZS1idWZmZXIgKGN1cnJlbnQtYnVmZmVyKSkp IChjb25kICgoZXF1YWwgdHlwZSAiZmlsZSIpIChpZiAoc3RyaW5nLW1hdGNoICJbKj97XSIgKGZp bGUtbmFtZS1ub25kaXJlY3RvcnkgcGF0aCkpIChkaXJlZCBwYXRoKSAobGV0KiAoKG9wdGlvbiAo b3JnLWVsZW1lbnQtcHJvcGVydHkgOnNlYXJjaC1vcHRpb24gY29udGV4dCkpIChhcHAgKG9yZy1l bGVtZW50LXByb3BlcnR5IDphcHBsaWNhdGlvbiBjb250ZXh0KSkgKGRlZGljYXRlZC1mdW5jdGlv biAob3JnLWxpbmstZ2V0LXBhcmFtZXRlciAoaWYgYXBwIChjb25jYXQgdHlwZSAiKyIgYXBwKSB0 eXBlKSA6Zm9sbG93KSkpIChpZiBkZWRpY2F0ZWQtZnVuY3Rpb24gKGZ1bmNhbGwgZGVkaWNhdGVk LWZ1bmN0aW9uIChjb25jYXQgcGF0aCAoYW5kIG9wdGlvbiAoY29uY2F0ICI6OiIgb3B0aW9uKSkp KSAoYXBwbHkgKGZ1bmN0aW9uIG9yZy1vcGVuLWZpbGUpIHBhdGggKGNvbmQgKGFyZykgKChlcXVh bCBhcHAgImVtYWNzIikgJ2VtYWNzKSAoKGVxdWFsIGFwcCAic3lzIikgJ3N5c3RlbSkpIChjb25k ICgobm90IG9wdGlvbikgbmlsKSAoKHN0cmluZy1tYXRjaC1wICJcXGBbMC05XStcXCciIG9wdGlv bikgKGxpc3QgKHN0cmluZy10by1udW1iZXIgb3B0aW9uKSkpICh0IChsaXN0IG5pbCBvcHRpb24p KSkpKSkpKSAoKGZ1bmN0aW9ucCAob3JnLWxpbmstZ2V0LXBhcmFtZXRlciB0eXBlIDpmb2xsb3cp KSAoZnVuY2FsbCAob3JnLWxpbmstZ2V0LXBhcmFtZXRlciB0eXBlIDpmb2xsb3cpIHBhdGgpKSAo KG1lbWJlciB0eXBlICcoImNvZGVyZWYiICJjdXN0b20taWQiICJmdXp6eSIgInJhZGlvIikpIChp ZiAocnVuLWhvb2std2l0aC1hcmdzLXVudGlsLXN1Y2Nlc3MgJ29yZy1vcGVuLWxpbmstZnVuY3Rp b25zIHBhdGgpIG5pbCAoaWYgKG5vdCBhcmcpIChvcmctbWFyay1yaW5nLXB1c2gpIChzd2l0Y2gt dG8tYnVmZmVyLW90aGVyLXdpbmRvdyAob3JnLWdldC1idWZmZXItZm9yLWludGVybmFsLWxpbmsg KGN1cnJlbnQtYnVmZmVyKSkpKSAobGV0ICgoZGVzdGluYXRpb24gKHNhdmUtZXhjdXJzaW9uIChz YXZlLXJlc3RyaWN0aW9uICh3aWRlbikgKGlmIChlcXVhbCB0eXBlICJyYWRpbyIpIChvcmctc2Vh cmNoLXJhZGlvLXRhcmdldCAob3JnLWVsZW1lbnQtcHJvcGVydHkgOnBhdGggY29udGV4dCkpIChv cmctbGluay1zZWFyY2ggKGNvbmQgKChlcXVhbCB0eXBlICciY3VzdG9tLWlkIikgKGNvbmNhdCAi IyIgcGF0aCkpICgoZXF1YWwgdHlwZSAnImNvZGVyZWYiKSAoZm9ybWF0ICIoJXMpIiBwYXRoKSkg KHQgcGF0aCkpIChhbmQgKGVxdWFsIHR5cGUgImZ1enp5IikgKCsgMiAob3JnLWVsZW1lbnQtcHJv cGVydHkgOmJlZ2luIGNvbnRleHQpKSkpKSAocG9pbnQpKSkpKSAoaWYgKGFuZCAoPD0gKHBvaW50 LW1pbikgZGVzdGluYXRpb24pICg+PSAocG9pbnQtbWF4KSBkZXN0aW5hdGlvbikpIG5pbCAod2lk ZW4pKSAoZ290by1jaGFyIGRlc3RpbmF0aW9uKSkpKSAodCAoYnJvd3NlLXVybC1hdC1wb2ludCkp KSkpKSAodCAodXNlci1lcnJvciAiTm8gbGluayBmb3VuZCIpKSkNCiAgKGxldCogKChjb250ZXh0 IChvcmctZWxlbWVudC1saW5lYWdlIChvcmctZWxlbWVudC1jb250ZXh0KSAnKGNsb2NrIGNvbW1l bnQgY29tbWVudC1ibG9jayBmb290bm90ZS1kZWZpbml0aW9uIGZvb3Rub3RlLXJlZmVyZW5jZSBo ZWFkbGluZSBpbmxpbmUtc3JjLWJsb2NrIGlubGluZXRhc2sga2V5d29yZCBsaW5rIG5vZGUtcHJv cGVydHkgcGxhbm5pbmcgc3JjLWJsb2NrIHRpbWVzdGFtcCkgdCkpICh0eXBlIChvcmctZWxlbWVu dC10eXBlIGNvbnRleHQpKSAodmFsdWUgKG9yZy1lbGVtZW50LXByb3BlcnR5IDp2YWx1ZSBjb250 ZXh0KSkpIChjb25kICgobm90IHR5cGUpICh1c2VyLWVycm9yICJObyBsaW5rIGZvdW5kIikpICgo bWVtcSB0eXBlICcoY29tbWVudCBjb21tZW50LWJsb2NrIG5vZGUtcHJvcGVydHkga2V5d29yZCkp IChjYWxsLWludGVyYWN0aXZlbHkgKGZ1bmN0aW9uIG9yZy1vcGVuLWF0LXBvaW50LWdsb2JhbCkp KSAoKG1lbXEgdHlwZSAnKGhlYWRsaW5lIGlubGluZXRhc2spKSAob3JnLW1hdGNoLWxpbmUgb3Jn LWNvbXBsZXgtaGVhZGluZy1yZWdleHApIChpZiAoYW5kIChtYXRjaC1iZWdpbm5pbmcgNSkgKD49 IChwb2ludCkgKG1hdGNoLWJlZ2lubmluZyA1KSkgKDwgKHBvaW50KSAobWF0Y2gtZW5kIDUpKSkg KG9yZy10YWdzLXZpZXcgYXJnIChzdWJzdHJpbmcgKG1hdGNoLXN0cmluZyA1KSAwIC0xKSkgKGxl dCogKCh2YWwgKG9yZy1vZmZlci1saW5rcy1pbi1lbnRyeSAoY3VycmVudC1idWZmZXIpIChwb2lu dCkgYXJnKSkpIChpZiAoY29uc3AgdmFsKSAobGV0KiAoKHgxOTUgKGNhciB2YWwpKSkgKGlmIChu dWxsIHgxOTUpIChwcm9nbiAocmVxdWlyZSAnb3JnLWF0dGFjaCkgKG9yZy1hdHRhY2gtcmV2ZWFs ICdpZi1leGlzdHMpKSAobGV0KiAoKHgxOTcgKGNkciB2YWwpKSkgKGxldCAoKGxpbmtzLWVuZCB4 MTk3KSAobGlua3MgeDE5NSkpIChsZXQgKCgtLWRvbGlzdC10YWlsLS0gKGlmIChzdHJpbmdwIGxp bmtzKSAobGlzdCBsaW5rcykgbGlua3MpKSkgKHdoaWxlIC0tZG9saXN0LXRhaWwtLSAobGV0ICgo bGluayAoY2FyIC0tZG9saXN0LXRhaWwtLSkpKSAoc2VhcmNoLWZvcndhcmQgbGluayBuaWwgbGlu a3MtZW5kKSAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpIChvcmctb3Blbi1hdC1wb2lu dCkgKHNldHEgLS1kb2xpc3QtdGFpbC0tIChjZHIgLS1kb2xpc3QtdGFpbC0tKSkpKSkpKSkpIG5p bCkpKSkgKChvciAoZXEgdHlwZSAnZm9vdG5vdGUtcmVmZXJlbmNlKSAoYW5kIChlcSB0eXBlICdm b290bm90ZS1kZWZpbml0aW9uKSAoc2F2ZS1leGN1cnNpb24gKHNraXAtY2hhcnMtZm9yd2FyZCAi IFwwMTEiKSAobGV0ICgoYmVnaW4gKG9yZy1lbGVtZW50LXByb3BlcnR5IDpjb250ZW50cy1iZWdp biBjb250ZXh0KSkpIChpZiBiZWdpbiAoPCAocG9pbnQpIGJlZ2luKSAoPSAob3JnLWVsZW1lbnQt cHJvcGVydHkgOnBvc3QtYWZmaWxpYXRlZCBjb250ZXh0KSAobGluZS1iZWdpbm5pbmctcG9zaXRp b24pKSkpKSkpIChvcmctZm9vdG5vdGUtYWN0aW9uKSkgKChhbmQgKGVxIHR5cGUgJ3BsYW5uaW5n KSAob3JnLWluLXJlZ2V4cCBvcmctdHMtcmVnZXhwLWJvdGggbmlsIHQpKSAob3JnLWZvbGxvdy10 aW1lc3RhbXAtbGluaykpICgoYW5kIChlcSB0eXBlICdjbG9jaykgdmFsdWUgKD49IChwb2ludCkg KG9yZy1lbGVtZW50LXByb3BlcnR5IDpiZWdpbiB2YWx1ZSkpICg8PSAocG9pbnQpIChvcmctZWxl bWVudC1wcm9wZXJ0eSA6ZW5kIHZhbHVlKSkpIChvcmctZm9sbG93LXRpbWVzdGFtcC1saW5rKSkg KChlcSB0eXBlICdzcmMtYmxvY2spIChvcmctYmFiZWwtb3Blbi1zcmMtYmxvY2stcmVzdWx0KSkg KCg+PSAocG9pbnQpIChzYXZlLWV4Y3Vyc2lvbiAoZ290by1jaGFyIChvcmctZWxlbWVudC1wcm9w ZXJ0eSA6ZW5kIGNvbnRleHQpKSAoc2tpcC1jaGFycy1iYWNrd2FyZCAiIFwwMTEiKSAocG9pbnQp KSkgKHVzZXItZXJyb3IgIk5vIGxpbmsgZm91bmQiKSkgKChlcSB0eXBlICdpbmxpbmUtc3JjLWJs b2NrKSAob3JnLWJhYmVsLW9wZW4tc3JjLWJsb2NrLXJlc3VsdCkpICgoZXEgdHlwZSAndGltZXN0 YW1wKSAob3JnLWZvbGxvdy10aW1lc3RhbXAtbGluaykpICgoZXEgdHlwZSAnbGluaykgKGxldCAo KHR5cGUgKG9yZy1lbGVtZW50LXByb3BlcnR5IDp0eXBlIGNvbnRleHQpKSAocGF0aCAob3JnLWVs ZW1lbnQtcHJvcGVydHkgOnBhdGggY29udGV4dCkpKSAoc2F2ZS1jdXJyZW50LWJ1ZmZlciAoc2V0 LWJ1ZmZlciAob3IgcmVmZXJlbmNlLWJ1ZmZlciAoY3VycmVudC1idWZmZXIpKSkgKGNvbmQgKChl cXVhbCB0eXBlICJmaWxlIikgKGlmIChzdHJpbmctbWF0Y2ggIlsqP3tdIiAoZmlsZS1uYW1lLW5v bmRpcmVjdG9yeSBwYXRoKSkgKGRpcmVkIHBhdGgpIChsZXQqICgob3B0aW9uIChvcmctZWxlbWVu dC1wcm9wZXJ0eSA6c2VhcmNoLW9wdGlvbiBjb250ZXh0KSkgKGFwcCAob3JnLWVsZW1lbnQtcHJv cGVydHkgOmFwcGxpY2F0aW9uIGNvbnRleHQpKSAoZGVkaWNhdGVkLWZ1bmN0aW9uIChvcmctbGlu ay1nZXQtcGFyYW1ldGVyIChpZiBhcHAgKGNvbmNhdCB0eXBlICIrIiBhcHApIHR5cGUpIDpmb2xs b3cpKSkgKGlmIGRlZGljYXRlZC1mdW5jdGlvbiAoZnVuY2FsbCBkZWRpY2F0ZWQtZnVuY3Rpb24g KGNvbmNhdCBwYXRoIChhbmQgb3B0aW9uIChjb25jYXQgIjo6IiBvcHRpb24pKSkpIChhcHBseSAo ZnVuY3Rpb24gb3JnLW9wZW4tZmlsZSkgcGF0aCAoY29uZCAoYXJnKSAoKGVxdWFsIGFwcCAiZW1h Y3MiKSAnZW1hY3MpICgoZXF1YWwgYXBwICJzeXMiKSAnc3lzdGVtKSkgKGNvbmQgKChub3Qgb3B0 aW9uKSBuaWwpICgoc3RyaW5nLW1hdGNoLXAgIlxcYFswLTldK1xcJyIgb3B0aW9uKSAobGlzdCAo c3RyaW5nLXRvLW51bWJlciBvcHRpb24pKSkgKHQgKGxpc3QgbmlsIG9wdGlvbikpKSkpKSkpICgo ZnVuY3Rpb25wIChvcmctbGluay1nZXQtcGFyYW1ldGVyIHR5cGUgOmZvbGxvdykpIChmdW5jYWxs IChvcmctbGluay1nZXQtcGFyYW1ldGVyIHR5cGUgOmZvbGxvdykgcGF0aCkpICgobWVtYmVyIHR5 cGUgJygiY29kZXJlZiIgImN1c3RvbS1pZCIgImZ1enp5IiAicmFkaW8iKSkgKGlmIChydW4taG9v ay13aXRoLWFyZ3MtdW50aWwtc3VjY2VzcyAnb3JnLW9wZW4tbGluay1mdW5jdGlvbnMgcGF0aCkg bmlsIChpZiAobm90IGFyZykgKG9yZy1tYXJrLXJpbmctcHVzaCkgKHN3aXRjaC10by1idWZmZXIt b3RoZXItd2luZG93IChvcmctZ2V0LWJ1ZmZlci1mb3ItaW50ZXJuYWwtbGluayAoY3VycmVudC1i dWZmZXIpKSkpIChsZXQgKChkZXN0aW5hdGlvbiAoc2F2ZS1leGN1cnNpb24gKHNhdmUtcmVzdHJp Y3Rpb24gKHdpZGVuKSAoaWYgKGVxdWFsIHR5cGUgInJhZGlvIikgKG9yZy1zZWFyY2gtcmFkaW8t dGFyZ2V0IChvcmctZWxlbWVudC1wcm9wZXJ0eSA6cGF0aCBjb250ZXh0KSkgKG9yZy1saW5rLXNl YXJjaCAoY29uZCAoKGVxdWFsIHR5cGUgJyJjdXN0b20taWQiKSAoY29uY2F0ICIjIiBwYXRoKSkg KChlcXVhbCB0eXBlICciY29kZXJlZiIpIChmb3JtYXQgIiglcykiIHBhdGgpKSAodCBwYXRoKSkg KGFuZCAoZXF1YWwgdHlwZSAiZnV6enkiKSAoKyAyIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6YmVn aW4gY29udGV4dCkpKSkpIChwb2ludCkpKSkpIChpZiAoYW5kICg8PSAocG9pbnQtbWluKSBkZXN0 aW5hdGlvbikgKD49IChwb2ludC1tYXgpIGRlc3RpbmF0aW9uKSkgbmlsICh3aWRlbikpIChnb3Rv LWNoYXIgZGVzdGluYXRpb24pKSkpICh0IChicm93c2UtdXJsLWF0LXBvaW50KSkpKSkpICh0ICh1 c2VyLWVycm9yICJObyBsaW5rIGZvdW5kIikpKSkNCiAgKGlmIChydW4taG9vay13aXRoLWFyZ3Mt dW50aWwtc3VjY2VzcyAnb3JnLW9wZW4tYXQtcG9pbnQtZnVuY3Rpb25zKSBuaWwgKGxldCogKChj b250ZXh0IChvcmctZWxlbWVudC1saW5lYWdlIChvcmctZWxlbWVudC1jb250ZXh0KSAnKGNsb2Nr IGNvbW1lbnQgY29tbWVudC1ibG9jayBmb290bm90ZS1kZWZpbml0aW9uIGZvb3Rub3RlLXJlZmVy ZW5jZSBoZWFkbGluZSBpbmxpbmUtc3JjLWJsb2NrIGlubGluZXRhc2sga2V5d29yZCBsaW5rIG5v ZGUtcHJvcGVydHkgcGxhbm5pbmcgc3JjLWJsb2NrIHRpbWVzdGFtcCkgdCkpICh0eXBlIChvcmct ZWxlbWVudC10eXBlIGNvbnRleHQpKSAodmFsdWUgKG9yZy1lbGVtZW50LXByb3BlcnR5IDp2YWx1 ZSBjb250ZXh0KSkpIChjb25kICgobm90IHR5cGUpICh1c2VyLWVycm9yICJObyBsaW5rIGZvdW5k IikpICgobWVtcSB0eXBlICcoY29tbWVudCBjb21tZW50LWJsb2NrIG5vZGUtcHJvcGVydHkga2V5 d29yZCkpIChjYWxsLWludGVyYWN0aXZlbHkgKGZ1bmN0aW9uIG9yZy1vcGVuLWF0LXBvaW50LWds b2JhbCkpKSAoKG1lbXEgdHlwZSAnKGhlYWRsaW5lIGlubGluZXRhc2spKSAob3JnLW1hdGNoLWxp bmUgb3JnLWNvbXBsZXgtaGVhZGluZy1yZWdleHApIChpZiAoYW5kIChtYXRjaC1iZWdpbm5pbmcg NSkgKD49IChwb2ludCkgKG1hdGNoLWJlZ2lubmluZyA1KSkgKDwgKHBvaW50KSAobWF0Y2gtZW5k IDUpKSkgKG9yZy10YWdzLXZpZXcgYXJnIChzdWJzdHJpbmcgKG1hdGNoLXN0cmluZyA1KSAwIC0x KSkgKGxldCogKCh2YWwgKG9yZy1vZmZlci1saW5rcy1pbi1lbnRyeSAoY3VycmVudC1idWZmZXIp IChwb2ludCkgYXJnKSkpIChpZiAoY29uc3AgdmFsKSAobGV0KiAoKHgxOTUgKGNhciB2YWwpKSkg KGlmIChudWxsIHgxOTUpIChwcm9nbiAocmVxdWlyZSAnb3JnLWF0dGFjaCkgKG9yZy1hdHRhY2gt cmV2ZWFsICdpZi1leGlzdHMpKSAobGV0KiAoKHgxOTcgKGNkciB2YWwpKSkgKGxldCAoKGxpbmtz LWVuZCB4MTk3KSAobGlua3MgeDE5NSkpIChsZXQgKCgtLWRvbGlzdC10YWlsLS0gKGlmIChzdHJp bmdwIGxpbmtzKSAobGlzdCBsaW5rcykgbGlua3MpKSkgKHdoaWxlIC0tZG9saXN0LXRhaWwtLSAo bGV0ICgobGluayAoY2FyIC0tZG9saXN0LXRhaWwtLSkpKSAoc2VhcmNoLWZvcndhcmQgbGluayBu aWwgbGlua3MtZW5kKSAoZ290by1jaGFyIChtYXRjaC1iZWdpbm5pbmcgMCkpIChvcmctb3Blbi1h dC1wb2ludCkgKHNldHEgLS1kb2xpc3QtdGFpbC0tIChjZHIgLS1kb2xpc3QtdGFpbC0tKSkpKSkp KSkpIG5pbCkpKSkgKChvciAoZXEgdHlwZSAnZm9vdG5vdGUtcmVmZXJlbmNlKSAoYW5kIChlcSB0 eXBlICdmb290bm90ZS1kZWZpbml0aW9uKSAoc2F2ZS1leGN1cnNpb24gKHNraXAtY2hhcnMtZm9y d2FyZCAiIFwwMTEiKSAobGV0ICgoYmVnaW4gKG9yZy1lbGVtZW50LXByb3BlcnR5IDpjb250ZW50 cy1iZWdpbiBjb250ZXh0KSkpIChpZiBiZWdpbiAoPCAocG9pbnQpIGJlZ2luKSAoPSAob3JnLWVs ZW1lbnQtcHJvcGVydHkgOnBvc3QtYWZmaWxpYXRlZCBjb250ZXh0KSAobGluZS1iZWdpbm5pbmct cG9zaXRpb24pKSkpKSkpIChvcmctZm9vdG5vdGUtYWN0aW9uKSkgKChhbmQgKGVxIHR5cGUgJ3Bs YW5uaW5nKSAob3JnLWluLXJlZ2V4cCBvcmctdHMtcmVnZXhwLWJvdGggbmlsIHQpKSAob3JnLWZv bGxvdy10aW1lc3RhbXAtbGluaykpICgoYW5kIChlcSB0eXBlICdjbG9jaykgdmFsdWUgKD49IChw b2ludCkgKG9yZy1lbGVtZW50LXByb3BlcnR5IDpiZWdpbiB2YWx1ZSkpICg8PSAocG9pbnQpIChv cmctZWxlbWVudC1wcm9wZXJ0eSA6ZW5kIHZhbHVlKSkpIChvcmctZm9sbG93LXRpbWVzdGFtcC1s aW5rKSkgKChlcSB0eXBlICdzcmMtYmxvY2spIChvcmctYmFiZWwtb3Blbi1zcmMtYmxvY2stcmVz dWx0KSkgKCg+PSAocG9pbnQpIChzYXZlLWV4Y3Vyc2lvbiAoZ290by1jaGFyIChvcmctZWxlbWVu dC1wcm9wZXJ0eSA6ZW5kIGNvbnRleHQpKSAoc2tpcC1jaGFycy1iYWNrd2FyZCAiIFwwMTEiKSAo cG9pbnQpKSkgKHVzZXItZXJyb3IgIk5vIGxpbmsgZm91bmQiKSkgKChlcSB0eXBlICdpbmxpbmUt c3JjLWJsb2NrKSAob3JnLWJhYmVsLW9wZW4tc3JjLWJsb2NrLXJlc3VsdCkpICgoZXEgdHlwZSAn dGltZXN0YW1wKSAob3JnLWZvbGxvdy10aW1lc3RhbXAtbGluaykpICgoZXEgdHlwZSAnbGluaykg KGxldCAoKHR5cGUgKG9yZy1lbGVtZW50LXByb3BlcnR5IDp0eXBlIGNvbnRleHQpKSAocGF0aCAo b3JnLWVsZW1lbnQtcHJvcGVydHkgOnBhdGggY29udGV4dCkpKSAoc2F2ZS1jdXJyZW50LWJ1ZmZl ciAoc2V0LWJ1ZmZlciAob3IgcmVmZXJlbmNlLWJ1ZmZlciAoY3VycmVudC1idWZmZXIpKSkgKGNv bmQgKChlcXVhbCB0eXBlICJmaWxlIikgKGlmIChzdHJpbmctbWF0Y2ggIlsqP3tdIiAoZmlsZS1u YW1lLW5vbmRpcmVjdG9yeSBwYXRoKSkgKGRpcmVkIHBhdGgpIChsZXQqICgob3B0aW9uIChvcmct ZWxlbWVudC1wcm9wZXJ0eSA6c2VhcmNoLW9wdGlvbiBjb250ZXh0KSkgKGFwcCAob3JnLWVsZW1l bnQtcHJvcGVydHkgOmFwcGxpY2F0aW9uIGNvbnRleHQpKSAoZGVkaWNhdGVkLWZ1bmN0aW9uIChv cmctbGluay1nZXQtcGFyYW1ldGVyIChpZiBhcHAgKGNvbmNhdCB0eXBlICIrIiBhcHApIHR5cGUp IDpmb2xsb3cpKSkgKGlmIGRlZGljYXRlZC1mdW5jdGlvbiAoZnVuY2FsbCBkZWRpY2F0ZWQtZnVu Y3Rpb24gKGNvbmNhdCBwYXRoIChhbmQgb3B0aW9uIChjb25jYXQgIjo6IiBvcHRpb24pKSkpIChh cHBseSAoZnVuY3Rpb24gb3JnLW9wZW4tZmlsZSkgcGF0aCAoY29uZCAoYXJnKSAoKGVxdWFsIGFw cCAiZW1hY3MiKSAnZW1hY3MpICgoZXF1YWwgYXBwICJzeXMiKSAnc3lzdGVtKSkgKGNvbmQgKChu b3Qgb3B0aW9uKSBuaWwpICgoc3RyaW5nLW1hdGNoLXAgIlxcYFswLTldK1xcJyIgb3B0aW9uKSAo bGlzdCAoc3RyaW5nLXRvLW51bWJlciBvcHRpb24pKSkgKHQgKGxpc3QgbmlsIG9wdGlvbikpKSkp KSkpICgoZnVuY3Rpb25wIChvcmctbGluay1nZXQtcGFyYW1ldGVyIHR5cGUgOmZvbGxvdykpIChm dW5jYWxsIChvcmctbGluay1nZXQtcGFyYW1ldGVyIHR5cGUgOmZvbGxvdykgcGF0aCkpICgobWVt YmVyIHR5cGUgJygiY29kZXJlZiIgImN1c3RvbS1pZCIgImZ1enp5IiAicmFkaW8iKSkgKGlmIChy dW4taG9vay13aXRoLWFyZ3MtdW50aWwtc3VjY2VzcyAnb3JnLW9wZW4tbGluay1mdW5jdGlvbnMg cGF0aCkgbmlsIChpZiAobm90IGFyZykgKG9yZy1tYXJrLXJpbmctcHVzaCkgKHN3aXRjaC10by1i dWZmZXItb3RoZXItd2luZG93IChvcmctZ2V0LWJ1ZmZlci1mb3ItaW50ZXJuYWwtbGluayAoY3Vy cmVudC1idWZmZXIpKSkpIChsZXQgKChkZXN0aW5hdGlvbiAoc2F2ZS1leGN1cnNpb24gKHNhdmUt cmVzdHJpY3Rpb24gKHdpZGVuKSAoaWYgKGVxdWFsIHR5cGUgInJhZGlvIikgKG9yZy1zZWFyY2gt cmFkaW8tdGFyZ2V0IChvcmctZWxlbWVudC1wcm9wZXJ0eSA6cGF0aCBjb250ZXh0KSkgKG9yZy1s aW5rLXNlYXJjaCAoY29uZCAoKGVxdWFsIHR5cGUgJyJjdXN0b20taWQiKSAoY29uY2F0ICIjIiBw YXRoKSkgKChlcXVhbCB0eXBlICciY29kZXJlZiIpIChmb3JtYXQgIiglcykiIHBhdGgpKSAodCBw YXRoKSkgKGFuZCAoZXF1YWwgdHlwZSAiZnV6enkiKSAoKyAyIChvcmctZWxlbWVudC1wcm9wZXJ0 eSA6YmVnaW4gY29udGV4dCkpKSkpIChwb2ludCkpKSkpIChpZiAoYW5kICg8PSAocG9pbnQtbWlu KSBkZXN0aW5hdGlvbikgKD49IChwb2ludC1tYXgpIGRlc3RpbmF0aW9uKSkgbmlsICh3aWRlbikp IChnb3RvLWNoYXIgZGVzdGluYXRpb24pKSkpICh0IChicm93c2UtdXJsLWF0LXBvaW50KSkpKSkp ICh0ICh1c2VyLWVycm9yICJObyBsaW5rIGZvdW5kIikpKSkpDQogIG9yZy1vcGVuLWF0LXBvaW50 KG5pbCkNCiAgZnVuY2FsbC1pbnRlcmFjdGl2ZWx5KG9yZy1vcGVuLWF0LXBvaW50IG5pbCkNCiAg Y2FsbC1pbnRlcmFjdGl2ZWx5KG9yZy1vcGVuLWF0LXBvaW50KQ0KICAoY29uZCAoKG9yIChhbmQg KGVxICd0YWJsZSAob3JnLWVsZW1lbnQtdHlwZSBjb250ZXh0KSkgKG5vdCAoZXEgJ3RhYmxlXC5l bCAob3JnLWVsZW1lbnQtcHJvcGVydHkgOnR5cGUgY29udGV4dCkpKSAoPj0gKHBvaW50KSAob3Jn LWVsZW1lbnQtcHJvcGVydHkgOmNvbnRlbnRzLWJlZ2luIGNvbnRleHQpKSAoPCAocG9pbnQpIChv cmctZWxlbWVudC1wcm9wZXJ0eSA6Y29udGVudHMtZW5kIGNvbnRleHQpKSkgKG9yZy1lbGVtZW50 LWxpbmVhZ2UgY29udGV4dCAnKHRhYmxlLXJvdyB0YWJsZS1jZWxsKSB0KSkgKGlmIChvciAobG9v a2luZy1hdC1wICJbIFwwMTFdKiQiKSAoc2F2ZS1leGN1cnNpb24gKHNraXAtY2hhcnMtYmFja3dh cmQgIiBcMDExIikgKGJvbHApKSkgKGluc2VydCAiXG4iKSAob3JnLXRhYmxlLWp1c3RpZnktZmll bGQtbWF5YmUpIChjYWxsLWludGVyYWN0aXZlbHkgKGZ1bmN0aW9uIG9yZy10YWJsZS1uZXh0LXJv dykpKSkgKChhbmQgb3JnLXJldHVybi1mb2xsb3dzLWxpbmsgKG9yIChhbmQgKGVxICdsaW5rIChv cmctZWxlbWVudC10eXBlIGNvbnRleHQpKSAobGV0ICgob3JpZ2luIChwb2ludCkpKSAobGV0ICgo LS1tcG9tIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6ZW5kIGNvbnRleHQpKSkgKHNhdmUtZXhjdXJz aW9uIChpZiAobWFya2VycCAtLW1wb20pIChwcm9nbiAoc2V0LWJ1ZmZlciAobWFya2VyLWJ1ZmZl ciAtLW1wb20pKSkpIChzYXZlLWV4Y3Vyc2lvbiAoc2F2ZS1yZXN0cmljdGlvbiAod2lkZW4pIChn b3RvLWNoYXIgKG9yIC0tbXBvbSAocG9pbnQpKSkgKHNraXAtY2hhcnMtYmFja3dhcmQgIiBcMDEx IikgKD4gKHBvaW50KSBvcmlnaW4pKSkpKSkpIChvcmctaW4tcmVnZXhwIG9yZy10cy1yZWdleHAt Ym90aCBuaWwgdCkgKG9yZy1pbi1yZWdleHAgb3JnLXRzci1yZWdleHAtYm90aCBuaWwgdCkgKG9y Zy1pbi1yZWdleHAgb3JnLWFueS1saW5rLXJlIG5pbCB0KSkpIChjYWxsLWludGVyYWN0aXZlbHkg KGZ1bmN0aW9uIG9yZy1vcGVuLWF0LXBvaW50KSkpICgoYW5kIChub3QgKGJvbHApKSAobGV0ICgo Y2FzZS1mb2xkLXNlYXJjaCBuaWwpKSAob3JnLW1hdGNoLWxpbmUgb3JnLWNvbXBsZXgtaGVhZGlu Zy1yZWdleHApKSkgKGxldCAoKHRhZ3MtY29sdW1uIChhbmQgKG1hdGNoLWJlZ2lubmluZyA1KSAo c2F2ZS1leGN1cnNpb24gKGdvdG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDUpKSAoY3VycmVudC1j b2x1bW4pKSkpIChzdHJpbmcgKGlmIChhbmQgKG1hdGNoLWVuZCA0KSAob3JnLXBvaW50LWluLWdy b3VwIChwb2ludCkgNCkpIChwcm9nbiAoZGVsZXRlLWFuZC1leHRyYWN0LXJlZ2lvbiAocG9pbnQp IChtYXRjaC1lbmQgNCkpKSkpKSAoY29uZCAoKG5vdCAoYW5kIHRhZ3MtY29sdW1uIHN0cmluZykp KSAob3JnLWF1dG8tYWxpZ24tdGFncyAob3JnLWFsaWduLXRhZ3MpKSAodCAob3JnLS1hbGlnbi10 YWdzLWhlcmUgdGFncy1jb2x1bW4pKSkgKGVuZC1vZi1saW5lKSAob3JnLXNob3ctZW50cnkpIChp ZiBpbmRlbnQgKG5ld2xpbmUtYW5kLWluZGVudCkgKG5ld2xpbmUpKSAoaWYgc3RyaW5nIChwcm9n biAoc2F2ZS1leGN1cnNpb24gKGluc2VydCAob3JnLXRyaW0gc3RyaW5nKSkpKSkpKSAoKGFuZCBp bmRlbnQgKG5vdCAoZW9scCkpIChvcmctZWxlbWVudC1saW5lYWdlIGNvbnRleHQgJyhpdGVtKSkp IChsZXQgKCh0cmFpbGluZy1kYXRhIChkZWxldGUtYW5kLWV4dHJhY3QtcmVnaW9uIChwb2ludCkg KGxpbmUtZW5kLXBvc2l0aW9uKSkpKSAobmV3bGluZS1hbmQtaW5kZW50KSAoc2F2ZS1leGN1cnNp b24gKGluc2VydCB0cmFpbGluZy1kYXRhKSkpKSAodCAobGV0ICgoYXV0by1maWxsLWZ1bmN0aW9u IChhbmQgKG5vdCAob3JnLWF0LXByb3BlcnR5LXApKSBhdXRvLWZpbGwtZnVuY3Rpb24pKSkgKGlm IGluZGVudCAobmV3bGluZS1hbmQtaW5kZW50KSAobmV3bGluZSkpKSkpDQogIChsZXQgKChjb250 ZXh0IChpZiBvcmctcmV0dXJuLWZvbGxvd3MtbGluayAob3JnLWVsZW1lbnQtY29udGV4dCkgKG9y Zy1lbGVtZW50LWF0LXBvaW50KSkpKSAoY29uZCAoKG9yIChhbmQgKGVxICd0YWJsZSAob3JnLWVs ZW1lbnQtdHlwZSBjb250ZXh0KSkgKG5vdCAoZXEgJ3RhYmxlXC5lbCAob3JnLWVsZW1lbnQtcHJv cGVydHkgOnR5cGUgY29udGV4dCkpKSAoPj0gKHBvaW50KSAob3JnLWVsZW1lbnQtcHJvcGVydHkg OmNvbnRlbnRzLWJlZ2luIGNvbnRleHQpKSAoPCAocG9pbnQpIChvcmctZWxlbWVudC1wcm9wZXJ0 eSA6Y29udGVudHMtZW5kIGNvbnRleHQpKSkgKG9yZy1lbGVtZW50LWxpbmVhZ2UgY29udGV4dCAn KHRhYmxlLXJvdyB0YWJsZS1jZWxsKSB0KSkgKGlmIChvciAobG9va2luZy1hdC1wICJbIFwwMTFd KiQiKSAoc2F2ZS1leGN1cnNpb24gKHNraXAtY2hhcnMtYmFja3dhcmQgIiBcMDExIikgKGJvbHAp KSkgKGluc2VydCAiXG4iKSAob3JnLXRhYmxlLWp1c3RpZnktZmllbGQtbWF5YmUpIChjYWxsLWlu dGVyYWN0aXZlbHkgKGZ1bmN0aW9uIG9yZy10YWJsZS1uZXh0LXJvdykpKSkgKChhbmQgb3JnLXJl dHVybi1mb2xsb3dzLWxpbmsgKG9yIChhbmQgKGVxICdsaW5rIChvcmctZWxlbWVudC10eXBlIGNv bnRleHQpKSAobGV0ICgob3JpZ2luIChwb2ludCkpKSAobGV0ICgoLS1tcG9tIChvcmctZWxlbWVu dC1wcm9wZXJ0eSA6ZW5kIGNvbnRleHQpKSkgKHNhdmUtZXhjdXJzaW9uIChpZiAobWFya2VycCAt LW1wb20pIChwcm9nbiAoc2V0LWJ1ZmZlciAobWFya2VyLWJ1ZmZlciAtLW1wb20pKSkpIChzYXZl LWV4Y3Vyc2lvbiAoc2F2ZS1yZXN0cmljdGlvbiAod2lkZW4pIChnb3RvLWNoYXIgKG9yIC0tbXBv bSAocG9pbnQpKSkgKHNraXAtY2hhcnMtYmFja3dhcmQgIiBcMDExIikgKD4gKHBvaW50KSBvcmln aW4pKSkpKSkpIChvcmctaW4tcmVnZXhwIG9yZy10cy1yZWdleHAtYm90aCBuaWwgdCkgKG9yZy1p bi1yZWdleHAgb3JnLXRzci1yZWdleHAtYm90aCBuaWwgdCkgKG9yZy1pbi1yZWdleHAgb3JnLWFu eS1saW5rLXJlIG5pbCB0KSkpIChjYWxsLWludGVyYWN0aXZlbHkgKGZ1bmN0aW9uIG9yZy1vcGVu LWF0LXBvaW50KSkpICgoYW5kIChub3QgKGJvbHApKSAobGV0ICgoY2FzZS1mb2xkLXNlYXJjaCBu aWwpKSAob3JnLW1hdGNoLWxpbmUgb3JnLWNvbXBsZXgtaGVhZGluZy1yZWdleHApKSkgKGxldCAo KHRhZ3MtY29sdW1uIChhbmQgKG1hdGNoLWJlZ2lubmluZyA1KSAoc2F2ZS1leGN1cnNpb24gKGdv dG8tY2hhciAobWF0Y2gtYmVnaW5uaW5nIDUpKSAoY3VycmVudC1jb2x1bW4pKSkpIChzdHJpbmcg KGlmIChhbmQgKG1hdGNoLWVuZCA0KSAob3JnLXBvaW50LWluLWdyb3VwIChwb2ludCkgNCkpIChw cm9nbiAoZGVsZXRlLWFuZC1leHRyYWN0LXJlZ2lvbiAocG9pbnQpIChtYXRjaC1lbmQgNCkpKSkp KSAoY29uZCAoKG5vdCAoYW5kIHRhZ3MtY29sdW1uIHN0cmluZykpKSAob3JnLWF1dG8tYWxpZ24t dGFncyAob3JnLWFsaWduLXRhZ3MpKSAodCAob3JnLS1hbGlnbi10YWdzLWhlcmUgdGFncy1jb2x1 bW4pKSkgKGVuZC1vZi1saW5lKSAob3JnLXNob3ctZW50cnkpIChpZiBpbmRlbnQgKG5ld2xpbmUt YW5kLWluZGVudCkgKG5ld2xpbmUpKSAoaWYgc3RyaW5nIChwcm9nbiAoc2F2ZS1leGN1cnNpb24g KGluc2VydCAob3JnLXRyaW0gc3RyaW5nKSkpKSkpKSAoKGFuZCBpbmRlbnQgKG5vdCAoZW9scCkp IChvcmctZWxlbWVudC1saW5lYWdlIGNvbnRleHQgJyhpdGVtKSkpIChsZXQgKCh0cmFpbGluZy1k YXRhIChkZWxldGUtYW5kLWV4dHJhY3QtcmVnaW9uIChwb2ludCkgKGxpbmUtZW5kLXBvc2l0aW9u KSkpKSAobmV3bGluZS1hbmQtaW5kZW50KSAoc2F2ZS1leGN1cnNpb24gKGluc2VydCB0cmFpbGlu Zy1kYXRhKSkpKSAodCAobGV0ICgoYXV0by1maWxsLWZ1bmN0aW9uIChhbmQgKG5vdCAob3JnLWF0 LXByb3BlcnR5LXApKSBhdXRvLWZpbGwtZnVuY3Rpb24pKSkgKGlmIGluZGVudCAobmV3bGluZS1h bmQtaW5kZW50KSAobmV3bGluZSkpKSkpKQ0KICBvcmctcmV0dXJuKCkNCiAgZnVuY2FsbC1pbnRl cmFjdGl2ZWx5KG9yZy1yZXR1cm4pDQogIGNhbGwtaW50ZXJhY3RpdmVseShvcmctcmV0dXJuIG5p bCBuaWwpDQogIGNvbW1hbmQtZXhlY3V0ZShvcmctcmV0dXJuKQ0KDQo=