From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 66AC01B00B for ; Mon, 8 Jan 2018 07:43:26 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Jan 2018 22:43:25 -0800 Message-Id: <1f4ae4$o3pqh@orsmga002.jf.intel.com> Date: 07 Jan 2018 22:43:23 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,329,1511856000"; d="scan'208";a="25290577" Received: from unknown (HELO localhost.localdomain) ([10.240.176.250]) by orsmga002.jf.intel.com with ESMTP; 07 Jan 2018 22:43:23 -0800 Content-Type: multipart/alternative; boundary="===============4625213070281917569==" MIME-Version: 1.0 From: sys_stv@intel.com To: test-report@dpdk.org CC: anatoly.burakov@intel.com Subject: [dpdk-test-report] |FAILURE| pw32421 [PATCH 10/23] eal: read hugepage counts from node-specific sysfs path X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Jan 2018 06:43:27 -0000 --===============4625213070281917569== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogSW50ZWwtY29tcGlsYXRpb24KVGVzdC1TdGF0dXM6IEZBSUxVUkUKCmh0dHA6 Ly9kcGRrLm9yZy9wYXRjaC8zMjQyMQoKX0NvbXBpbGF0aW9uIGlzc3Vlc18KClN1Ym1pdHRlcjog QW5hdG9seSBCdXJha292IDxhbmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPgpEYXRlOiBUdWUsIDE5 IERlYyAyMDE3IDExOjA0OjMzICswMDAwCkRQREsgZ2l0IGJhc2VsaW5lOiBSZXBvOmRwZGssIEJy YW5jaDptYXN0ZXIsIENvbW1pdElEOmExMmYyMjY3ODkxNTZlZDFmMmY1NjM5NTY3NDA4Mzc5ZmUy ZTZhNDYKClBhdGNoMzI0MjEtMzI0MjEgLS0+IGNvbXBpbGUgZXJyb3IKQnVpbGQgU3VtbWFyeTog MTYgQnVpbGRzIERvbmUsIDIgU3VjY2Vzc2Z1bCwgMTQgRmFpbHVyZXMKClRlc3QgZW52aXJvbm1l bnQgYW5kIGNvbmZpZ3VyYXRpb24gYXMgYmVsb3c6Ck9TOiBSSEVMNy4zXzY0CiAgICBLZXJuZWwg VmVyc2lvbjozLjEwLjAtNTE0LjE2LjEuZWw3Lng4Nl82NAogICAgQ1BVIGluZm86SW50ZWwoUikg WGVvbihSKSBDUFUgRTUtMjY5OSB2NCBAIDIuMjBHSHoKICAgIEdDQyBWZXJzaW9uOmdjYyAoR0ND KSA0LjguNSAyMDE1MDYyMyAoUmVkIEhhdCA0LjguNS0xMSkKICAgIENsYW5nIFZlcnNpb246TkEK ICAgIHg4Nl82NC1uYXRpdmUtbGludXhhcHAtaWNjCk9TOiBGcmVlQlNEMTAuM182NAogICAgS2Vy bmVsIFZlcnNpb246MTAuMy1SRUxFQVNFCiAgICBDUFUgaW5mbzogSW50ZWwoUikgWGVvbihSKSBD UFUgRTUtMjY5OSB2NCBAIDIuMjBHSHogKDIxOTQuOTctTUh6IEs4LWNsYXNzIENQVSkKICAgIEdD QyBWZXJzaW9uOmdjYyAoRnJlZUJTRCBQb3J0cyBDb2xsZWN0aW9uKSA0LjguNQogICAgQ2xhbmcg VmVyc2lvbjozLjQuMQogICAgeDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcKICAgIHg4Nl82NC1u YXRpdmUtYnNkYXBwLWdjYwpPUzogRkMyNF82NAogICAgS2VybmVsIFZlcnNpb246NC45LjEzLTEw MC5mYzI0Lng4Nl82NAogICAgQ1BVIGluZm86SW50ZWwoUikgWGVvbihSKSBDUFUgRTUtMjY5OSB2 MyBAIDIuMzBHSHoKICAgIEdDQyBWZXJzaW9uOmdjYyAoR0NDKSA2LjIuMSAyMDE2MDkxNiAoUmVk IEhhdCA2LjIuMS0yKQogICAgQ2xhbmcgVmVyc2lvbjozLjguMAogICAgeDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MtZGVidWcKICAgIGk2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwogICAgeDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2MKICAgIHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZAogICAgeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwpPUzogVUIxNjA0XzY0CiAgICBLZXJu ZWwgVmVyc2lvbjo0LjQuMC03OC1nZW5lcmljCiAgICBDUFUgaW5mbzpJbnRlbChSKSBYZW9uKFIp IENQVSBFNS0yNjk5IHYzIEAgMi4zMEdIegogICAgR0NDIFZlcnNpb246Z2NjIChVYnVudHUgNS40 LjAtNnVidW50dTF+MTYuMDQuNCkgNS40LjAgMjAxNjA2MDkKICAgIENsYW5nIFZlcnNpb246My44 LjAKICAgIGk2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwogICAgeDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2MKICAgIHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZAogICAgeDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZwpPUzogQ2VudE9TN182NAogICAgS2VybmVsIFZlcnNpb246My4x MC4wLTUxNC4xMC4yLmVsNy54ODZfNjQKICAgIENQVSBpbmZvOkludGVsKFIpIFhlb24oUikgQ1BV IEU1LTI2OTkgdjMgQCAyLjMwR0h6CiAgICBHQ0MgVmVyc2lvbjpnY2MgKEdDQykgNC44LjUgMjAx NTA2MjMgKFJlZCBIYXQgNC44LjUtNCkKICAgIENsYW5nIFZlcnNpb246My40LjIKICAgIGk2ODYt bmF0aXZlLWxpbnV4YXBwLWdjYwogICAgeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwogICAg eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkCiAgICB4ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYwoKRmFpbGVkIEJ1aWxkICMxOgpPUzogUkhFTDcuM182NApUYXJnZXQ6IHg4Nl82NC1u YXRpdmUtbGludXhhcHAtaWNjClNZTUxJTkstRklMRSBpbmNsdWRlL2V4ZWMtZW52L3J0ZV9rbmlf Y29tbW9uLmgvaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGlu dXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmMoMzQ3KTogZXJyb3I6IHN0cnVjdCAiaW50ZXJu YWxfY29uZmlnIiBoYXMgbm8gZmllbGQgImxlZ2FjeV9tZW0iCiAgCQlpZiAoIWludGVybmFsX2Nv bmZpZy5sZWdhY3lfbWVtKQogIAkJICAgICAgICAgICAgICAgICAgICAgXgpjb21waWxhdGlvbiBh Ym9ydGVkIGZvciAvaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwv bGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmMgKGNvZGUgMikKCgpGYWlsZWQgQnVpbGQg IzI6Ck9TOiBGQzI0XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcK ClNZTUxJTkstRklMRSBpbmNsdWRlL2V4ZWMtZW52L3J0ZV9rbmlfY29tbW9uLmgvaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdl cGFnZV9pbmZvLmM6IEluIGZ1bmN0aW9uIOKAmGVhbF9odWdlcGFnZV9pbmZvX2luaXTigJk6Ci9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwv ZWFsX2h1Z2VwYWdlX2luZm8uYzozNDc6MjM6IGVycm9yOiDigJhzdHJ1Y3QgaW50ZXJuYWxfY29u Zmln4oCZIGhhcyBubyBtZW1iZXIgbmFtZWQg4oCYbGVnYWN5X21lbeKAmQogICBpZiAoIWludGVy bmFsX2NvbmZpZy5sZWdhY3lfbWVtKQogICAgICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVn ZXBhZ2VfaW5mby5jOjM0ODoyMDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0 aW9uIOKAmHJ0ZV9udW1fc29ja2V0c+KAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNs YXJhdGlvbl0KICAgIGZvciAoaSA9IDA7IGkgPCBydGVfbnVtX3NvY2tldHMoKTsgaSsrKSB7CiAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzoz NDg6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYcnRlX251bV9zb2Nr ZXRz4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9u dW1fc29ja2V0cygpOyBpKyspIHsKICAgIF5+fgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRp b24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmM6MzQ4OjE4 OiBlcnJvcjogY29tcGFyaXNvbiBiZXR3ZWVuIHNpZ25lZCBhbmQgdW5zaWduZWQgaW50ZWdlciBl eHByZXNzaW9ucyBbLVdlcnJvcj1zaWduLWNvbXBhcmVdCiAgICBmb3IgKGkgPSAwOyBpIDwgcnRl X251bV9zb2NrZXRzKCk7IGkrKykgewogICAgICAgICAgICAgICAgICBeCmNjMTogYWxsIHdhcm5p bmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTEwOiByZWNpcGUgZm9yIHRhcmdldCAn ZWFsX2h1Z2VwYWdlX2luZm8ubycgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdldCAnZWFsJyBmYWlsZWQKL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJkaXIubWs6MzU6IHJlY2lwZSBm b3IgdGFyZ2V0ICdsaW51eGFwcCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdldCAnbGlicnRlX2VhbCcgZmFp bGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2RrYnVpbGQubWs6NDg6 IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWInIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGls YXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTAwOiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWls ZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1 OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6Nzk6IHJlY2lwZSBmb3IgdGFyZ2V0ICdp bnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVpbGQgIzM6Ck9TOiBGQzI0XzY0ClRhcmdldDogaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjClNZTUxJTkstRklMRSBpbmNsdWRlL2V4ZWMtZW52L3J0ZV9r bmlfY29tbW9uLmgvaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwv bGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmM6IEluIGZ1bmN0aW9uIOKAmGVhbF9odWdl cGFnZV9pbmZvX2luaXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGli cnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzozNDc6MjM6IGVycm9yOiDi gJhzdHJ1Y3QgaW50ZXJuYWxfY29uZmln4oCZIGhhcyBubyBtZW1iZXIgbmFtZWQg4oCYbGVnYWN5 X21lbeKAmQogICBpZiAoIWludGVybmFsX2NvbmZpZy5sZWdhY3lfbWVtKQogICAgICAgICAgICAg ICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFs L2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODoyMDogZXJyb3I6IGltcGxpY2l0 IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmHJ0ZV9udW1fc29ja2V0c+KAmSBbLVdlcnJvcj1p bXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIGZvciAoaSA9IDA7IGkgPCBydGVfbnVt X3NvY2tldHMoKTsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+Ci9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwv ZWFsX2h1Z2VwYWdlX2luZm8uYzozNDg6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRp b24gb2Yg4oCYcnRlX251bV9zb2NrZXRz4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAg Zm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAgIF5+fgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9o dWdlcGFnZV9pbmZvLmM6MzQ4OjE4OiBlcnJvcjogY29tcGFyaXNvbiBiZXR3ZWVuIHNpZ25lZCBh bmQgdW5zaWduZWQgaW50ZWdlciBleHByZXNzaW9ucyBbLVdlcnJvcj1zaWduLWNvbXBhcmVdCiAg ICBmb3IgKGkgPSAwOyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewogICAgICAgICAgICAg ICAgICBeCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTEw OiByZWNpcGUgZm9yIHRhcmdldCAnZWFsX2h1Z2VwYWdlX2luZm8ubycgZmFpbGVkCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRh cmdldCAnZWFsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5z dWJkaXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaW51eGFwcCcgZmFpbGVkCi9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRh cmdldCAnbGlicnRlX2VhbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9t ay9ydGUuc2RrYnVpbGQubWs6NDg6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWInIGZhaWxlZAovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTAwOiByZWNpcGUg Zm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21r L3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZh aWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6Nzk6 IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVpbGQgIzQ6Ck9T OiBGQzI0XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MKU1lNTElOSy1GSUxF IGluY2x1ZGUvZXhlYy1lbnYvcnRlX2tuaV9jb21tb24uaC9ob21lL3BhdGNoV29ya09yZy9jb21w aWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzog SW4gZnVuY3Rpb24g4oCYZWFsX2h1Z2VwYWdlX2luZm9faW5pdOKAmToKL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2Vf aW5mby5jOjM0NzoyMzogZXJyb3I6IOKAmHN0cnVjdCBpbnRlcm5hbF9jb25maWfigJkgaGFzIG5v IG1lbWJlciBuYW1lZCDigJhsZWdhY3lfbWVt4oCZCiAgIGlmICghaW50ZXJuYWxfY29uZmlnLmxl Z2FjeV9tZW0pCiAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29t cGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmM6 MzQ4OjIwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYcnRlX251 bV9zb2NrZXRz4oCZIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAg Zm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAgICAgICAgICAgICAg ICAgICBefn5+fn5+fn5+fn5+fn4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9s aWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODo0OiBlcnJvcjog bmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhydGVfbnVtX3NvY2tldHPigJkgWy1XZXJy b3I9bmVzdGVkLWV4dGVybnNdCiAgICBmb3IgKGkgPSAwOyBpIDwgcnRlX251bV9zb2NrZXRzKCk7 IGkrKykgewogICAgXn5+Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRl X2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzozNDg6MTg6IGVycm9yOiBjb21w YXJpc29uIGJldHdlZW4gc2lnbmVkIGFuZCB1bnNpZ25lZCBpbnRlZ2VyIGV4cHJlc3Npb25zIFst V2Vycm9yPXNpZ24tY29tcGFyZV0KICAgIGZvciAoaSA9IDA7IGkgPCBydGVfbnVtX3NvY2tldHMo KTsgaSsrKSB7CiAgICAgICAgICAgICAgICAgIF4KY2MxOiBhbGwgd2FybmluZ3MgYmVpbmcgdHJl YXRlZCBhcyBlcnJvcnMKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL2ludGVybmFs L3J0ZS5jb21waWxlLXByZS5tazoxMTA6IHJlY2lwZSBmb3IgdGFyZ2V0ICdlYWxfaHVnZXBhZ2Vf aW5mby5vJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJk aXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdlYWwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vbWsvcnRlLnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2xp bnV4YXBwJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJk aXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWJydGVfZWFsJyBmYWlsZWQKL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtidWlsZC5tazo0ODogcmVjaXBlIGZvciB0 YXJnZXQgJ2xpYicgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUu c2Rrcm9vdC5tazoxMDA6IHJlY2lwZSBmb3IgdGFyZ2V0ICdhbGwnIGZhaWxlZAovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka2luc3RhbGwubWs6ODU6IHJlY2lwZSBmb3Ig dGFyZ2V0ICdwcmVfaW5zdGFsbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9tay9ydGUuc2Rrcm9vdC5tazo3OTogcmVjaXBlIGZvciB0YXJnZXQgJ2luc3RhbGwnIGZhaWxl ZAoKCkZhaWxlZCBCdWlsZCAjNToKT1M6IEZDMjRfNjQKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWdjYy1zaGFyZWQKClNZTUxJTkstRklMRSBpbmNsdWRlL2V4ZWMtZW52L3J0ZV9rbmlf Y29tbW9uLmgvaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGlu dXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmM6IEluIGZ1bmN0aW9uIOKAmGVhbF9odWdlcGFn ZV9pbmZvX2luaXTigJk6Ci9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRl X2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzozNDc6MjM6IGVycm9yOiDigJhz dHJ1Y3QgaW50ZXJuYWxfY29uZmln4oCZIGhhcyBubyBtZW1iZXIgbmFtZWQg4oCYbGVnYWN5X21l beKAmQogICBpZiAoIWludGVybmFsX2NvbmZpZy5sZWdhY3lfbWVtKQogICAgICAgICAgICAgICAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xp bnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODoyMDogZXJyb3I6IGltcGxpY2l0IGRl Y2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmHJ0ZV9udW1fc29ja2V0c+KAmSBbLVdlcnJvcj1pbXBs aWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgIGZvciAoaSA9IDA7IGkgPCBydGVfbnVtX3Nv Y2tldHMoKTsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+Ci9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFs X2h1Z2VwYWdlX2luZm8uYzozNDg6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24g b2Yg4oCYcnRlX251bV9zb2NrZXRz4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAgZm9y IChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAgIF5+fgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdl cGFnZV9pbmZvLmM6MzQ4OjE4OiBlcnJvcjogY29tcGFyaXNvbiBiZXR3ZWVuIHNpZ25lZCBhbmQg dW5zaWduZWQgaW50ZWdlciBleHByZXNzaW9ucyBbLVdlcnJvcj1zaWduLWNvbXBhcmVdCiAgICBm b3IgKGkgPSAwOyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewogICAgICAgICAgICAgICAg ICBeCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTEwOiBy ZWNpcGUgZm9yIHRhcmdldCAnZWFsX2h1Z2VwYWdlX2luZm8ubycgZmFpbGVkCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdl dCAnZWFsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJk aXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaW51eGFwcCcgZmFpbGVkCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdl dCAnbGlicnRlX2VhbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9y dGUuc2RrYnVpbGQubWs6NDg6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWInIGZhaWxlZAovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTAwOiByZWNpcGUgZm9y IHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0 ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxl ZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6Nzk6IHJl Y2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVpbGQgIzY6Ck9TOiBG QzI0XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwpTWU1MSU5LLUZJTEUg aW5jbHVkZS9leGVjLWVudi9ydGVfa25pX2NvbW1vbi5oL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0 NzoyNDogZXJyb3I6IG5vIG1lbWJlciBuYW1lZCAnbGVnYWN5X21lbScgaW4gJ3N0cnVjdCBpbnRl cm5hbF9jb25maWcnCiAgICAgICAgICAgICAgICBpZiAoIWludGVybmFsX2NvbmZpZy5sZWdhY3lf bWVtKQogICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn4gXgovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFn ZV9pbmZvLmM6MzQ4OjIwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g J3J0ZV9udW1fc29ja2V0cycgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1m dW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsg aSA8IHJ0ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVf ZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODoxODogZXJyb3I6IGNvbXBh cmlzb24gb2YgaW50ZWdlcnMgb2YgZGlmZmVyZW50IHNpZ25zOiAndW5zaWduZWQgaW50JyBhbmQg J2ludCcgWy1XZXJyb3IsLVdzaWduLWNvbXBhcmVdCiAgICAgICAgICAgICAgICAgICAgICAgIGZv ciAoaSA9IDA7IGkgPCBydGVfbnVtX3NvY2tldHMoKTsgaSsrKSB7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIH4gXiB+fn5+fn5+fn5+fn5+fn5+fgozIGVycm9ycyBnZW5lcmF0 ZWQuCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGls ZS1wcmUubWs6MTEwOiByZWNpcGUgZm9yIHRhcmdldCAnZWFsX2h1Z2VwYWdlX2luZm8ubycgZmFp bGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiBy ZWNpcGUgZm9yIHRhcmdldCAnZWFsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL21rL3J0ZS5zdWJkaXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaW51eGFwcCcgZmFp bGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiBy ZWNpcGUgZm9yIHRhcmdldCAnbGlicnRlX2VhbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9ydGUuc2RrYnVpbGQubWs6NDg6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWIn IGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6 MTAwOiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2Nv bXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJl X2luc3RhbGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNk a3Jvb3QubWs6Nzk6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQg QnVpbGQgIzc6Ck9TOiBVQjE2MDRfNjQKVGFyZ2V0OiBpNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MK U1lNTElOSy1GSUxFIGluY2x1ZGUvZXhlYy1lbnYvcnRlX2tuaV9jb21tb24uaC9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2Vw YWdlX2luZm8uYzogSW4gZnVuY3Rpb24g4oCYZWFsX2h1Z2VwYWdlX2luZm9faW5pdOKAmToKL2hv bWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9l YWxfaHVnZXBhZ2VfaW5mby5jOjM0NzoyMzogZXJyb3I6IOKAmHN0cnVjdCBpbnRlcm5hbF9jb25m aWfigJkgaGFzIG5vIG1lbWJlciBuYW1lZCDigJhsZWdhY3lfbWVt4oCZCiAgIGlmICghaW50ZXJu YWxfY29uZmlnLmxlZ2FjeV9tZW0pCiAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRj aFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdl cGFnZV9pbmZvLmM6MzQ4OjIwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rp b24g4oCYcnRlX251bV9zb2NrZXRz4oCZIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xh cmF0aW9uXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAg ICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGli cnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzozNDg6NDogZXJyb3I6IG5l c3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYcnRlX251bV9zb2NrZXRz4oCZIFstV2Vycm9y PW5lc3RlZC1leHRlcm5zXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBp KyspIHsKICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFs L2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODoxODogZXJyb3I6IGNvbXBhcmlz b24gYmV0d2VlbiBzaWduZWQgYW5kIHVuc2lnbmVkIGludGVnZXIgZXhwcmVzc2lvbnMgWy1XZXJy b3I9c2lnbi1jb21wYXJlXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBp KyspIHsKICAgICAgICAgICAgICAgICAgXgpjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVk IGFzIGVycm9ycwovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvaW50ZXJuYWwvcnRl LmNvbXBpbGUtcHJlLm1rOjExMDogcmVjaXBlIGZvciB0YXJnZXQgJ2VhbF9odWdlcGFnZV9pbmZv Lm8nIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnN1YmRpci5t azozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2VhbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdldCAnbGludXhh cHAnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnN1YmRpci5t azozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2xpYnJ0ZV9lYWwnIGZhaWxlZAovaG9tZS9wYXRjaFdv cmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka2J1aWxkLm1rOjQ4OiByZWNpcGUgZm9yIHRhcmdl dCAnbGliJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGty b290Lm1rOjEwMDogcmVjaXBlIGZvciB0YXJnZXQgJ2FsbCcgZmFpbGVkCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9tay9ydGUuc2RraW5zdGFsbC5tazo4NTogcmVjaXBlIGZvciB0YXJn ZXQgJ3ByZV9pbnN0YWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21r L3J0ZS5zZGtyb290Lm1rOjc5OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFsbCcgZmFpbGVkCgoK RmFpbGVkIEJ1aWxkICM4OgpPUzogVUIxNjA0XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2MKU1lNTElOSy1GSUxFIGluY2x1ZGUvZXhlYy1lbnYvcnRlX2tuaV9jb21tb24uaC9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwv ZWFsX2h1Z2VwYWdlX2luZm8uYzogSW4gZnVuY3Rpb24g4oCYZWFsX2h1Z2VwYWdlX2luZm9faW5p dOKAmToKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4 YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0NzoyMzogZXJyb3I6IOKAmHN0cnVjdCBpbnRl cm5hbF9jb25maWfigJkgaGFzIG5vIG1lbWJlciBuYW1lZCDigJhsZWdhY3lfbWVt4oCZCiAgIGlm ICghaW50ZXJuYWxfY29uZmlnLmxlZ2FjeV9tZW0pCiAgICAgICAgICAgICAgICAgICAgICAgXgov aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFs L2VhbF9odWdlcGFnZV9pbmZvLmM6MzQ4OjIwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24g b2YgZnVuY3Rpb24g4oCYcnRlX251bV9zb2NrZXRz4oCZIFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0 aW9uLWRlY2xhcmF0aW9uXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBp KyspIHsKICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlv bi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzozNDg6NDog ZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYcnRlX251bV9zb2NrZXRz4oCZ IFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29j a2V0cygpOyBpKyspIHsKICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9s aWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODoxODogZXJyb3I6 IGNvbXBhcmlzb24gYmV0d2VlbiBzaWduZWQgYW5kIHVuc2lnbmVkIGludGVnZXIgZXhwcmVzc2lv bnMgWy1XZXJyb3I9c2lnbi1jb21wYXJlXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29j a2V0cygpOyBpKyspIHsKICAgICAgICAgICAgICAgICAgXgpjYzE6IGFsbCB3YXJuaW5ncyBiZWlu ZyB0cmVhdGVkIGFzIGVycm9ycwovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvaW50 ZXJuYWwvcnRlLmNvbXBpbGUtcHJlLm1rOjExMDogcmVjaXBlIGZvciB0YXJnZXQgJ2VhbF9odWdl cGFnZV9pbmZvLm8nIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRl LnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2VhbCcgZmFpbGVkCi9ob21lL3BhdGNo V29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdl dCAnbGludXhhcHAnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRl LnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2xpYnJ0ZV9lYWwnIGZhaWxlZAovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka2J1aWxkLm1rOjQ4OiByZWNpcGUg Zm9yIHRhcmdldCAnbGliJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21r L3J0ZS5zZGtyb290Lm1rOjEwMDogcmVjaXBlIGZvciB0YXJnZXQgJ2FsbCcgZmFpbGVkCi9ob21l L3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2RraW5zdGFsbC5tazo4NTogcmVjaXBl IGZvciB0YXJnZXQgJ3ByZV9pbnN0YWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBp bGF0aW9uL21rL3J0ZS5zZGtyb290Lm1rOjc5OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFsbCcg ZmFpbGVkCgoKRmFpbGVkIEJ1aWxkICM5OgpPUzogVUIxNjA0XzY0ClRhcmdldDogeDg2XzY0LW5h dGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkCgpTWU1MSU5LLUZJTEUgaW5jbHVkZS9leGVjLWVudi9y dGVfa25pX2NvbW1vbi5oL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVf ZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOiBJbiBmdW5jdGlvbiDigJhlYWxf aHVnZXBhZ2VfaW5mb19pbml04oCZOgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGli L2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmM6MzQ3OjIzOiBlcnJv cjog4oCYc3RydWN0IGludGVybmFsX2NvbmZpZ+KAmSBoYXMgbm8gbWVtYmVyIG5hbWVkIOKAmGxl Z2FjeV9tZW3igJkKICAgaWYgKCFpbnRlcm5hbF9jb25maWcubGVnYWN5X21lbSkKICAgICAgICAg ICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRl X2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzozNDg6MjA6IGVycm9yOiBpbXBs aWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhydGVfbnVtX3NvY2tldHPigJkgWy1XZXJy b3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICBmb3IgKGkgPSAwOyBpIDwgcnRl X251bV9zb2NrZXRzKCk7IGkrKykgewogICAgICAgICAgICAgICAgICAgIF4KL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBh Z2VfaW5mby5jOjM0ODo0OiBlcnJvcjogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhy dGVfbnVtX3NvY2tldHPigJkgWy1XZXJyb3I9bmVzdGVkLWV4dGVybnNdCiAgICBmb3IgKGkgPSAw OyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewogICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZv LmM6MzQ4OjE4OiBlcnJvcjogY29tcGFyaXNvbiBiZXR3ZWVuIHNpZ25lZCBhbmQgdW5zaWduZWQg aW50ZWdlciBleHByZXNzaW9ucyBbLVdlcnJvcj1zaWduLWNvbXBhcmVdCiAgICBmb3IgKGkgPSAw OyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewogICAgICAgICAgICAgICAgICBeCmNjMTog YWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTEwOiByZWNpcGUgZm9y IHRhcmdldCAnZWFsX2h1Z2VwYWdlX2luZm8ubycgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdldCAnZWFsJyBm YWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zdWJkaXIubWs6MzU6 IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaW51eGFwcCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdldCAnbGlicnRl X2VhbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc2RrYnVp bGQubWs6NDg6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWInIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtP cmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTAwOiByZWNpcGUgZm9yIHRhcmdldCAn YWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21rL3J0ZS5zZGtpbnN0 YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxlZAovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6Nzk6IHJlY2lwZSBmb3Ig dGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVpbGQgIzEwOgpPUzogVUIxNjA0XzY0 ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwpTWU1MSU5LLUZJTEUgaW5jbHVk ZS9leGVjLWVudi9ydGVfa25pX2NvbW1vbi5oL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9u L2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0NzoyNDog ZXJyb3I6IG5vIG1lbWJlciBuYW1lZCAnbGVnYWN5X21lbScgaW4gJ3N0cnVjdCBpbnRlcm5hbF9j b25maWcnCiAgICAgICAgICAgICAgICBpZiAoIWludGVybmFsX2NvbmZpZy5sZWdhY3lfbWVtKQog ICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn4gXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZv LmM6MzQ4OjIwOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ3J0ZV9u dW1fc29ja2V0cycgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlv bi1kZWNsYXJhdGlvbl0KICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IHJ0 ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xp bnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODoxODogZXJyb3I6IGNvbXBhcmlzb24g b2YgaW50ZWdlcnMgb2YgZGlmZmVyZW50IHNpZ25zOiAndW5zaWduZWQgaW50JyBhbmQgJ2ludCcg Wy1XZXJyb3IsLVdzaWduLWNvbXBhcmVdCiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoaSA9 IDA7IGkgPCBydGVfbnVtX3NvY2tldHMoKTsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIH4gXiB+fn5+fn5+fn5+fn5+fn5+fgozIGVycm9ycyBnZW5lcmF0ZWQuCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUu bWs6MTEwOiByZWNpcGUgZm9yIHRhcmdldCAnZWFsX2h1Z2VwYWdlX2luZm8ubycgZmFpbGVkCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUg Zm9yIHRhcmdldCAnZWFsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL21r L3J0ZS5zdWJkaXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaW51eGFwcCcgZmFpbGVkCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUg Zm9yIHRhcmdldCAnbGlicnRlX2VhbCcgZmFpbGVkCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxh dGlvbi9tay9ydGUuc2RrYnVpbGQubWs6NDg6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWInIGZhaWxl ZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3QubWs6MTAwOiBy ZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0 aW9uL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjg1OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3Rh bGwnIGZhaWxlZAovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbWsvcnRlLnNka3Jvb3Qu bWs6Nzk6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKCgpGYWlsZWQgQnVpbGQg IzExOgpPUzogQ2VudE9TN182NApUYXJnZXQ6IGk2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwpTWU1M SU5LLUZJTEUgaW5jbHVkZS9leGVjLWVudi9ydGVfa25pX2NvbW1vbi5oL2hvbWUvcGF0Y2hXb3Jr T3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBhZ2Vf aW5mby5jOiBJbiBmdW5jdGlvbiDigJhlYWxfaHVnZXBhZ2VfaW5mb19pbml04oCZOgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9o dWdlcGFnZV9pbmZvLmM6MzQ3OjIzOiBlcnJvcjog4oCYc3RydWN0IGludGVybmFsX2NvbmZpZ+KA mSBoYXMgbm8gbWVtYmVyIG5hbWVkIOKAmGxlZ2FjeV9tZW3igJkKICAgaWYgKCFpbnRlcm5hbF9j b25maWcubGVnYWN5X21lbSkKICAgICAgICAgICAgICAgICAgICAgICBeCi9ob21lL3BhdGNoV29y a09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdl X2luZm8uYzozNDg6NDogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKA mHJ0ZV9udW1fc29ja2V0c+KAmSBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlv bl0KICAgIGZvciAoaSA9IDA7IGkgPCBydGVfbnVtX3NvY2tldHMoKTsgaSsrKSB7CiAgICBeCi9o b21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwv ZWFsX2h1Z2VwYWdlX2luZm8uYzozNDg6NDogZXJyb3I6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRp b24gb2Yg4oCYcnRlX251bV9zb2NrZXRz4oCZIFstV2Vycm9yPW5lc3RlZC1leHRlcm5zXQovaG9t ZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2Vh bF9odWdlcGFnZV9pbmZvLmM6MzQ4OjE4OiBlcnJvcjogY29tcGFyaXNvbiBiZXR3ZWVuIHNpZ25l ZCBhbmQgdW5zaWduZWQgaW50ZWdlciBleHByZXNzaW9ucyBbLVdlcnJvcj1zaWduLWNvbXBhcmVd CiAgICBmb3IgKGkgPSAwOyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewogICAgICAgICAg ICAgICAgICBeCmNjMTogYWxsIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCgoKRmFp bGVkIEJ1aWxkICMxMjoKT1M6IENlbnRPUzdfNjQKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nClNZTUxJTkstRklMRSBpbmNsdWRlL2V4ZWMtZW52L3J0ZV9rbmlfY29tbW9uLmgv aG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFs L2VhbF9odWdlcGFnZV9pbmZvLmM6MzQ3OjI0OiBlcnJvcjogbm8gbWVtYmVyIG5hbWVkICdsZWdh Y3lfbWVtJyBpbiAnc3RydWN0IGludGVybmFsX2NvbmZpZycKICAgICAgICAgICAgICAgIGlmICgh aW50ZXJuYWxfY29uZmlnLmxlZ2FjeV9tZW0pCiAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+ fn5+fn5+fiBeCi9ob21lL3BhdGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9s aW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8uYzozNDg6MjA6IGVycm9yOiBpbXBsaWNpdCBk ZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAncnRlX251bV9zb2NrZXRzJyBpcyBpbnZhbGlkIGluIEM5 OSBbLVdlcnJvciwtV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgICAgICAg ICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZv LmM6MzQ4OjE4OiBlcnJvcjogY29tcGFyaXNvbiBvZiBpbnRlZ2VycyBvZiBkaWZmZXJlbnQgc2ln bnM6ICd1bnNpZ25lZCBpbnQnIGFuZCAnaW50JyBbLVdlcnJvciwtV3NpZ24tY29tcGFyZV0KICAg ICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBp KyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfiBeIH5+fn5+fn5+fn5+ fn5+fn5+CjMgZXJyb3JzIGdlbmVyYXRlZC4KCgpGYWlsZWQgQnVpbGQgIzEzOgpPUzogQ2VudE9T N182NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZAoKU1lNTElOSy1G SUxFIGluY2x1ZGUvZXhlYy1lbnYvcnRlX2tuaV9jb21tb24uaC9ob21lL3BhdGNoV29ya09yZy9j b21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1Z2VwYWdlX2luZm8u YzogSW4gZnVuY3Rpb24g4oCYZWFsX2h1Z2VwYWdlX2luZm9faW5pdOKAmToKL2hvbWUvcGF0Y2hX b3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVnZXBh Z2VfaW5mby5jOjM0NzoyMzogZXJyb3I6IOKAmHN0cnVjdCBpbnRlcm5hbF9jb25maWfigJkgaGFz IG5vIG1lbWJlciBuYW1lZCDigJhsZWdhY3lfbWVt4oCZCiAgIGlmICghaW50ZXJuYWxfY29uZmln LmxlZ2FjeV9tZW0pCiAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9wYXRjaFdvcmtPcmcv Y29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9odWdlcGFnZV9pbmZv LmM6MzQ4OjQ6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhydGVf bnVtX3NvY2tldHPigJkgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAg ICBmb3IgKGkgPSAwOyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewogICAgXgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9o dWdlcGFnZV9pbmZvLmM6MzQ4OjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9m IOKAmHJ0ZV9udW1fc29ja2V0c+KAmSBbLVdlcnJvcj1uZXN0ZWQtZXh0ZXJuc10KL2hvbWUvcGF0 Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWxfaHVn ZXBhZ2VfaW5mby5jOjM0ODoxODogZXJyb3I6IGNvbXBhcmlzb24gYmV0d2VlbiBzaWduZWQgYW5k IHVuc2lnbmVkIGludGVnZXIgZXhwcmVzc2lvbnMgWy1XZXJyb3I9c2lnbi1jb21wYXJlXQogICAg Zm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAgICAgICAgICAgICAg ICAgXgpjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwoKCkZhaWxlZCBC dWlsZCAjMTQ6Ck9TOiBDZW50T1M3XzY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1n Y2MKU1lNTElOSy1GSUxFIGluY2x1ZGUvZXhlYy1lbnYvcnRlX2tuaV9jb21tb24uaC9ob21lL3Bh dGNoV29ya09yZy9jb21waWxhdGlvbi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvZWFsX2h1 Z2VwYWdlX2luZm8uYzogSW4gZnVuY3Rpb24g4oCYZWFsX2h1Z2VwYWdlX2luZm9faW5pdOKAmToK L2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2Vh bC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0NzoyMzogZXJyb3I6IOKAmHN0cnVjdCBpbnRlcm5hbF9j b25maWfigJkgaGFzIG5vIG1lbWJlciBuYW1lZCDigJhsZWdhY3lfbWVt4oCZCiAgIGlmICghaW50 ZXJuYWxfY29uZmlnLmxlZ2FjeV9tZW0pCiAgICAgICAgICAgICAgICAgICAgICAgXgovaG9tZS9w YXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2VhbF9o dWdlcGFnZV9pbmZvLmM6MzQ4OjQ6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5j dGlvbiDigJhydGVfbnVtX3NvY2tldHPigJkgWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVj bGFyYXRpb25dCiAgICBmb3IgKGkgPSAwOyBpIDwgcnRlX251bV9zb2NrZXRzKCk7IGkrKykgewog ICAgXgovaG9tZS9wYXRjaFdvcmtPcmcvY29tcGlsYXRpb24vbGliL2xpYnJ0ZV9lYWwvbGludXhh cHAvZWFsL2VhbF9odWdlcGFnZV9pbmZvLmM6MzQ4OjQ6IGVycm9yOiBuZXN0ZWQgZXh0ZXJuIGRl Y2xhcmF0aW9uIG9mIOKAmHJ0ZV9udW1fc29ja2V0c+KAmSBbLVdlcnJvcj1uZXN0ZWQtZXh0ZXJu c10KL2hvbWUvcGF0Y2hXb3JrT3JnL2NvbXBpbGF0aW9uL2xpYi9saWJydGVfZWFsL2xpbnV4YXBw L2VhbC9lYWxfaHVnZXBhZ2VfaW5mby5jOjM0ODoxODogZXJyb3I6IGNvbXBhcmlzb24gYmV0d2Vl biBzaWduZWQgYW5kIHVuc2lnbmVkIGludGVnZXIgZXhwcmVzc2lvbnMgWy1XZXJyb3I9c2lnbi1j b21wYXJlXQogICAgZm9yIChpID0gMDsgaSA8IHJ0ZV9udW1fc29ja2V0cygpOyBpKyspIHsKICAg ICAgICAgICAgICAgICAgXgpjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9y cwoKCkRQREsgU1RWIHRlYW0K --===============4625213070281917569==--