From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8F24CA0547 for ; Mon, 27 Sep 2021 01:20:59 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5E64A40686; Mon, 27 Sep 2021 01:20:59 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id C81684003D for ; Mon, 27 Sep 2021 01:20:56 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10119"; a="288040752" X-IronPort-AV: E=Sophos;i="5.85,325,1624345200"; d="scan'208";a="288040752" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Sep 2021 16:20:55 -0700 Message-Id: <2e3cb2$gmorm3@fmsmga002-auth.fm.intel.com> Date: 26 Sep 2021 16:20:45 -0700 X-IronPort-AV: E=Sophos;i="5.85,325,1624345200"; d="scan'208";a="560754371" Received: from unknown (HELO localhost.localdomain) ([10.240.183.251]) by fmsmga002-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Sep 2021 16:20:45 -0700 Content-Type: multipart/alternative; boundary="===============0084736591206362369==" MIME-Version: 1.0 From: sys_stv@intel.com To: test-report@dpdk.org, gaoxiangliu0@163.com Cc: Subject: [dpdk-test-report] |FAILURE| pw(99695) sid(19167) job(PER_PATCH_BUILD8168)net/vhost: merge vhost stats loop in vhost Tx/Rx X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: test-report-bounces@dpdk.org Sender: "test-report" --===============0084736591206362369== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 ClRlc3QtTGFiZWw6IEludGVsLWNvbXBpbGF0aW9uClRlc3QtU3RhdHVzOiBGQUlMVVJFCmh0dHA6 Ly9kcGRrLm9yZy9wYXRjaC85OTY5NQoKX0NvbXBpbGF0aW9uIGlzc3Vlc18KClN1Ym1pdHRlcjog R2FveGlhbmcgTGl1IDxnYW94aWFuZ2xpdTBAMTYzLmNvbT4KRGF0ZTogMjAyMS0wOS0yNiAxMjo1 NjoyMwpSZXBseV9tYWlsOiAyMDIxMDkyNjEyNTYyMy44MzMtMS1nYW94aWFuZ2xpdTBAMTYzLmNv bQoKRFBESyBnaXQgYmFzZWxpbmU6IFJlcG86ZHBkay1uZXh0LXZpcnRpbywgQ29tbWl0SUQ6IGVh MmYzZjU4NGVhYWMzOWIwMWFmMmRlNWQwNmQyYTM5MGRmZjE2NjAKCgpNZXNvbiBCdWlsZCBTdW1t YXJ5OiAyMiBCdWlsZHMgRG9uZSwgNSBTdWNjZXNzZnVsLCAxNyBGYWlsdXJlcywgMCBCbG9ja2Vk CgorLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKwp8IG9zICAgICAgICAgICAg IHwgZ2NjLXN0YXRpYyB8IGNsYW5nLXN0YXRpYyB8IGljYy1zdGF0aWMgfCBnY2Mtc2hhcmVkIHwg Z2NjLWRlYnVnIHwgZG9jdW1lbnQgfAorLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0t LS0tKwp8IFVCMjAwNC02NCAgICAgIHwgZmFpbCAgICAgICB8IGZhaWwgICAgICAgICB8IGZhaWwg ICAgICAgfCAgICAgICAgICAgIHwgICAgICAgICAgIHwgZmFpbCAgICAgfAp8IFJIRUw4My02NCAg ICAgIHwgZmFpbCAgICAgICB8IGZhaWwgICAgICAgICB8IGZhaWwgICAgICAgfCBmYWlsICAgICAg IHwgZmFpbCAgICAgIHwgICAgICAgICAgfAp8IEZDMzQtNjQgICAgICAgIHwgZmFpbCAgICAgICB8 IGZhaWwgICAgICAgICB8ICAgICAgICAgICAgfCAgICAgICAgICAgIHwgICAgICAgICAgIHwgICAg ICAgICAgfAp8IFVCMjEwNC02NCAgICAgIHwgZmFpbCAgICAgICB8ICAgICAgICAgICAgICB8ICAg ICAgICAgICAgfCAgICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfAp8IFdJTjEwLTY0 ICAgICAgIHwgICAgICAgICAgICB8IHBhc3MgICAgICAgICB8ICAgICAgICAgICAgfCAgICAgICAg ICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfAp8IFVCMjAwNC0zMiAgICAgIHwgZmFpbCAgICAg ICB8ICAgICAgICAgICAgICB8ICAgICAgICAgICAgfCAgICAgICAgICAgIHwgICAgICAgICAgIHwg ICAgICAgICAgfAp8IENFTlRPUzgzLTY0ICAgIHwgZmFpbCAgICAgICB8IGZhaWwgICAgICAgICB8 ICAgICAgICAgICAgfCAgICAgICAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfAp8IEZyZWVC U0QxMjAxLTY0IHwgcGFzcyAgICAgICB8IHBhc3MgICAgICAgICB8ICAgICAgICAgICAgfCBwYXNz ICAgICAgIHwgcGFzcyAgICAgIHwgICAgICAgICAgfAp8IFNVU0UxNS02NCAgICAgIHwgZmFpbCAg ICAgICB8IGZhaWwgICAgICAgICB8ICAgICAgICAgICAgfCAgICAgICAgICAgIHwgICAgICAgICAg IHwgICAgICAgICAgfAorLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKwpUZXN0 IGVudmlyb25tZW50IGFuZCBjb25maWd1cmF0aW9uIGFzIGJlbG93OgoKCk9TOiBVQjIwMDQtNjQK CUtlcm5lbCBWZXJzaW9uOiA1LjguMC00OC1nZW5lcmljCglHQ0MgVmVyc2lvbjogZ2NjIChVYnVu dHUgMTAuMy4wLTF1YnVudHUxfjIwLjA0KSAxMC4zLjAKCUNsYW5nIFZlcnNpb246IDEwLjAuMC00 dWJ1bnR1MQoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwoJeDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2MKCXg4Nl82NC1uYXRpdmUtbGludXhhcHAtaWNjCgl4ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWRvYwoKT1M6IFJIRUw4My02NAoJS2VybmVsIFZlcnNpb246IDQuMTguMC0zMDUuMy4xLmVs OC54ODZfNjQKCUdDQyBWZXJzaW9uOiBnY2MgKEdDQykgOC40LjEgMjAyMDA5MjggKFJlZCBIYXQg OC40LjEtMSkKCUNsYW5nIFZlcnNpb246IDExLjAuMCAoUmVkIEhhdCAxMS4wLjAtMS5tb2R1bGVf ZWw4LjQuMCs1ODcrNTE4N2NhYzApCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYwoJeDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZwoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mrc2hhcmVk Cgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYytkZWJ1ZwoJeDg2XzY0LW5hdGl2ZS1saW51eGFw cC1pY2MKCk9TOiBGQzM0LTY0CglLZXJuZWwgVmVyc2lvbjogNS4xMS4xNS0zMDAuZmMzNC54ODZf NjQKCUdDQyBWZXJzaW9uOiBnY2MgKEdDQykgMTEuMC4xIDIwMjEwMzI0IChSZWQgSGF0IDExLjAu MS0wKQoJQ2xhbmcgVmVyc2lvbjogMTIuMC4wIChGZWRvcmEgMTIuMC4wLTAuMy5yYzEuZmMzNCkK CXg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n CgpPUzogVUIyMTA0LTY0CglLZXJuZWwgVmVyc2lvbjogNS4xMS4wLTE2LWdlbmVyaWMKCUdDQyBW ZXJzaW9uOiBnY2MgKFVidW50dSAxMC4zLjAtMXVidW50dTEpIDEwLjMuMAoJQ2xhbmcgVmVyc2lv bjogMTIuMC4wLTF1YnVudHUxCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYwoKT1M6IFdJTjEw LTY0CglLZXJuZWwgVmVyc2lvbjogTi9BCglHQ0MgVmVyc2lvbjogTi9BCglDbGFuZyBWZXJzaW9u OiBDbGFuZyA4LjAuMAoJeDg2XzY0LXdpbmRvd3MtY2xhbmcKCk9TOiBVQjIwMDQtMzIKCUtlcm5l bCBWZXJzaW9uOiA1LjguMC00OC1nZW5lcmljCglHQ0MgVmVyc2lvbjogZ2NjIChVYnVudHUgMTAu My4wLTF1YnVudHUxfjIwLjA0KSAxMC4zLjAKCUNsYW5nIFZlcnNpb246IDEwLjAuMC00dWJ1bnR1 MQoJaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjCgpPUzogQ0VOVE9TODMtNjQKCUtlcm5lbCBWZXJz aW9uOiA0LjE4LjAtMjQwLjEuMS5lbDhfMy54ODZfNjQKCUdDQyBWZXJzaW9uOiBnY2MgKEdDQykg OC4zLjEgMjAxOTExMjEgKFJlZCBIYXQgOC4zLjEtNSkKCUNsYW5nIFZlcnNpb246IDEwLjAuMSAo UmVkIEhhdCAxMC4wLjEtMS5tb2R1bGVfZWw4LjMuMCs0NjcrY2IyOThkNWIpCgl4ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWdjYwoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwoKT1M6IEZyZWVC U0QxMjAxLTY0CglLZXJuZWwgVmVyc2lvbjogMTIuMS1SRUxFQVNFCglHQ0MgVmVyc2lvbjogZ2Nj IChGcmVlQlNEIFBvcnRzIENvbGxlY3Rpb24pIDkuMi4wCglDbGFuZyBWZXJzaW9uOiA4LjAuMSAo dGFncy9SRUxFQVNFXzgwMS9maW5hbCAzNjY1ODEpIChiYXNlZCBvbiBMTFZNIDguMC4xKQoJeDg2 XzY0LW5hdGl2ZS1ic2RhcHAtZ2NjCgl4ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZwoJeDg2XzY0 LW5hdGl2ZS1ic2RhcHAtZ2NjK3NoYXJlZAoJeDg2XzY0LW5hdGl2ZS1ic2RhcHAtZ2NjK2RlYnVn CgpPUzogU1VTRTE1LTY0CglLZXJuZWwgVmVyc2lvbjogNS4zLjE4LWxwMTUyLjU3LWRlZmF1bHQK CUdDQyBWZXJzaW9uOiBnY2MgKFNVU0UgTGludXgpIDcuNS4wCglDbGFuZyBWZXJzaW9uOiA5LjAu MQoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1n Y2MKCgoKKkJ1aWxkIEZhaWxlZCAjMToKT1M6IENFTlRPUzgzLTY0ClRhcmdldDogeDg2XzY0LW5h dGl2ZS1saW51eGFwcC1nY2MKRkFJTEVEOiBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEu cC9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gCmdjYyAtSWRyaXZlcnMvbGlidG1wX3J0ZV9u ZXRfdmhvc3QuYS5wIC1JZHJpdmVycyAtSS4uL2RyaXZlcnMgLUlkcml2ZXJzL25ldC92aG9zdCAt SS4uL2RyaXZlcnMvbmV0L3Zob3N0IC1JbGliL2V0aGRldiAtSS4uL2xpYi9ldGhkZXYgLUkuIC1J Li4gLUljb25maWcgLUkuLi9jb25maWcgLUlsaWIvZWFsL2luY2x1ZGUgLUkuLi9saWIvZWFsL2lu Y2x1ZGUgLUlsaWIvZWFsL2xpbnV4L2luY2x1ZGUgLUkuLi9saWIvZWFsL2xpbnV4L2luY2x1ZGUg LUlsaWIvZWFsL3g4Ni9pbmNsdWRlIC1JLi4vbGliL2VhbC94ODYvaW5jbHVkZSAtSWxpYi9lYWwv Y29tbW9uIC1JLi4vbGliL2VhbC9jb21tb24gLUlsaWIvZWFsIC1JLi4vbGliL2VhbCAtSWxpYi9r dmFyZ3MgLUkuLi9saWIva3ZhcmdzIC1JbGliL21ldHJpY3MgLUkuLi9saWIvbWV0cmljcyAtSWxp Yi90ZWxlbWV0cnkgLUkuLi9saWIvdGVsZW1ldHJ5IC1JbGliL25ldCAtSS4uL2xpYi9uZXQgLUls aWIvbWJ1ZiAtSS4uL2xpYi9tYnVmIC1JbGliL21lbXBvb2wgLUkuLi9saWIvbWVtcG9vbCAtSWxp Yi9yaW5nIC1JLi4vbGliL3JpbmcgLUlsaWIvbWV0ZXIgLUkuLi9saWIvbWV0ZXIgLUlkcml2ZXJz L2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kvbGludXgg LUlsaWIvcGNpIC1JLi4vbGliL3BjaSAtSWRyaXZlcnMvYnVzL3ZkZXYgLUkuLi9kcml2ZXJzL2J1 cy92ZGV2IC1JbGliL3Zob3N0IC1JLi4vbGliL3Zob3N0IC1JbGliL2NyeXB0b2RldiAtSS4uL2xp Yi9jcnlwdG9kZXYgLUlsaWIvcmN1IC1JLi4vbGliL3JjdSAtSWxpYi9oYXNoIC1JLi4vbGliL2hh c2ggLWZkaWFnbm9zdGljcy1jb2xvcj1hbHdheXMgLXBpcGUgLURfRklMRV9PRkZTRVRfQklUUz02 NCAtV2FsbCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcuaCAt V2V4dHJhIC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1ub25saXRl cmFsIC1XZm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5nLXBy b3RvdHlwZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9pbnRl ci1hcml0aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3cml0 ZS1zdHJpbmdzIC1Xbm8tcGFja2VkLW5vdC1hbGlnbmVkIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0 aWFsaXplcnMgLURfR05VX1NPVVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQRVJJ TUVOVEFMX0FQSSAtREFMTE9XX0lOVEVSTkFMX0FQSSAtV25vLWZvcm1hdC10cnVuY2F0aW9uIC1E UlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9cG1kLm5ldC52aG9zdCAtTUQgLU1RIGRyaXZlcnMvbGli dG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMubyAtTUYgZHJp dmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5v LmQgLW8gZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhf dmhvc3QuYy5vIC1jIC4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYwouLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MzQwOjE6IGVycm9yOiBleHBlY3RlZCDigJg7 4oCZLCDigJgs4oCZIG9yIOKAmCnigJkgYmVmb3JlIOKAmHvigJkgdG9rZW4KIHsKIF4KLi4vZHJp dmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjI3OToxOiBlcnJvcjog4oCYdmhvc3RfZGV2 X3hzdGF0c19nZXTigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1bmN0 aW9uXQogdmhvc3RfZGV2X3hzdGF0c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0cnVj dCBydGVfZXRoX3hzdGF0ICp4c3RhdHMsCiBefn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJz L25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjUzOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0 YXRzX2dldF9uYW1lc+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVu Y3Rpb25dCiB2aG9zdF9kZXZfeHN0YXRzX2dldF9uYW1lcyhzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRl diBfX3J0ZV91bnVzZWQsCiBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25l dC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjMxOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRz X3Jlc2V04oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC1mdW5jdGlvbl0K IHZob3N0X2Rldl94c3RhdHNfcmVzZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpCiBefn5+fn5+ fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDE6 Mzg6IGVycm9yOiDigJh2cmluZ19zdGF0ZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJy b3I9dW51c2VkLXZhcmlhYmxlXQogc3RhdGljIHN0cnVjdCBydGVfdmhvc3RfdnJpbmdfc3RhdGUg KnZyaW5nX3N0YXRlc1tSVEVfTUFYX0VUSFBPUlRTXTsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBefn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92 aG9zdC5jOjEyNjoyODogZXJyb3I6IOKAmHBtZF9saW5r4oCZIGRlZmluZWQgYnV0IG5vdCB1c2Vk IFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aF9saW5rIHBt ZF9saW5rID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn4KLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNDoyNDogZXJyb3I6IOKAmGludGVybmFsX2xp c3RfbG9ja+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVd CiBzdGF0aWMgcHRocmVhZF9tdXRleF90IGludGVybmFsX2xpc3RfbG9jayA9IFBUSFJFQURfTVVU RVhfSU5JVElBTElaRVI7CiAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+ fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6NTE6MzA6IGVycm9yOiDigJhi YXNlX2V0aF9hZGRy4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJp YWJsZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aGVyX2FkZHIgYmFzZV9ldGhfYWRkciA9IHsKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92 aG9zdC9ydGVfZXRoX3Zob3N0LmM6Mzk6MjA6IGVycm9yOiDigJh2YWxpZF9hcmd1bWVudHPigJkg ZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQogc3RhdGljIGNv bnN0IGNoYXIgKnZhbGlkX2FyZ3VtZW50c1tdID0gewogICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+fn5+fn5+fgpjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwpbOTM4 LzMwMzVdIExpbmtpbmcgc3RhdGljIHRhcmdldCBkcml2ZXJzL2xpYnJ0ZV9tZW1wb29sX29jdGVv bnR4Mi5hCls5MzkvMzAzNV0gR2VuZXJhdGluZyBydGVfbWVtcG9vbF9jbnhrLnN5bV9jaGsgd2l0 aCBhIG1lc29uX2V4ZS5weSBjdXN0b20gY29tbWFuZApbOTQwLzMwMzVdIEdlbmVyYXRpbmcgcnRl X21lbXBvb2xfZHBhYTIuc3ltX2NoayB3aXRoIGEgbWVzb25fZXhlLnB5IGN1c3RvbSBjb21tYW5k Cls5NDEvMzAzNV0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9tZW1wb29s X3JpbmcuYS5wL21lbXBvb2xfcmluZ19ydGVfbWVtcG9vbF9yaW5nLmMubwpbOTQyLzMwMzVdIENv bXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbWVtcG9vbF9idWNrZXQuYS5wL21l bXBvb2xfYnVja2V0X3J0ZV9tZW1wb29sX2J1Y2tldC5jLm8KWzk0My8zMDM1XSBHZW5lcmF0aW5n IHJ0ZV9tZW1wb29sX3N0YWNrLnBtZC5jIHdpdGggYSBjdXN0b20gY29tbWFuZApbOTQ0LzMwMzVd IEdlbmVyYXRpbmcgcnRlX21lbXBvb2xfb2N0ZW9udHguc3ltX2NoayB3aXRoIGEgbWVzb25fZXhl LnB5IGN1c3RvbSBjb21tYW5kCls5NDUvMzAzNV0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMv bGlidG1wX3J0ZV9uZXRfYWZfcGFja2V0LmEucC9uZXRfYWZfcGFja2V0X3J0ZV9ldGhfYWZfcGFj a2V0LmMubwpbOTQ2LzMwMzVdIEdlbmVyYXRpbmcgcnRlX21lbXBvb2xfZHBhYS5zeW1fY2hrIHdp dGggYSBtZXNvbl9leGUucHkgY3VzdG9tIGNvbW1hbmQKWzk0Ny8zMDM1XSBHZW5lcmF0aW5nIHJ0 ZV9jb21tb25fY254ay5zeW1fY2hrIHdpdGggYSBtZXNvbl9leGUucHkgY3VzdG9tIGNvbW1hbmQK Wzk0OC8zMDM1XSBHZW5lcmF0aW5nIHJ0ZV9jb21tb25fc2ZjX2VmeC5zeW1fY2hrIHdpdGggYSBt ZXNvbl9leGUucHkgY3VzdG9tIGNvbW1hbmQKbmluamE6IGJ1aWxkIHN0b3BwZWQKCgoKCipCdWls ZCBGYWlsZWQgIzI6Ck9TOiBDRU5UT1M4My02NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcKRkFJTEVEOiBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucC9uZXRfdmhv c3RfcnRlX2V0aF92aG9zdC5jLm8gCmNsYW5nIC1JZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9z dC5hLnAgLUlkcml2ZXJzIC1JLi4vZHJpdmVycyAtSWRyaXZlcnMvbmV0L3Zob3N0IC1JLi4vZHJp dmVycy9uZXQvdmhvc3QgLUlsaWIvZXRoZGV2IC1JLi4vbGliL2V0aGRldiAtSS4gLUkuLiAtSWNv bmZpZyAtSS4uL2NvbmZpZyAtSWxpYi9lYWwvaW5jbHVkZSAtSS4uL2xpYi9lYWwvaW5jbHVkZSAt SWxpYi9lYWwvbGludXgvaW5jbHVkZSAtSS4uL2xpYi9lYWwvbGludXgvaW5jbHVkZSAtSWxpYi9l YWwveDg2L2luY2x1ZGUgLUkuLi9saWIvZWFsL3g4Ni9pbmNsdWRlIC1JbGliL2VhbC9jb21tb24g LUkuLi9saWIvZWFsL2NvbW1vbiAtSWxpYi9lYWwgLUkuLi9saWIvZWFsIC1JbGliL2t2YXJncyAt SS4uL2xpYi9rdmFyZ3MgLUlsaWIvbWV0cmljcyAtSS4uL2xpYi9tZXRyaWNzIC1JbGliL3RlbGVt ZXRyeSAtSS4uL2xpYi90ZWxlbWV0cnkgLUlsaWIvbmV0IC1JLi4vbGliL25ldCAtSWxpYi9tYnVm IC1JLi4vbGliL21idWYgLUlsaWIvbWVtcG9vbCAtSS4uL2xpYi9tZW1wb29sIC1JbGliL3Jpbmcg LUkuLi9saWIvcmluZyAtSWxpYi9tZXRlciAtSS4uL2xpYi9tZXRlciAtSWRyaXZlcnMvYnVzL3Bj aSAtSS4uL2RyaXZlcnMvYnVzL3BjaSAtSS4uL2RyaXZlcnMvYnVzL3BjaS9saW51eCAtSWxpYi9w Y2kgLUkuLi9saWIvcGNpIC1JZHJpdmVycy9idXMvdmRldiAtSS4uL2RyaXZlcnMvYnVzL3ZkZXYg LUlsaWIvdmhvc3QgLUkuLi9saWIvdmhvc3QgLUlsaWIvY3J5cHRvZGV2IC1JLi4vbGliL2NyeXB0 b2RldiAtSWxpYi9yY3UgLUkuLi9saWIvcmN1IC1JbGliL2hhc2ggLUkuLi9saWIvaGFzaCAtWGNs YW5nIC1mY29sb3ItZGlhZ25vc3RpY3MgLXBpcGUgLURfRklMRV9PRkZTRVRfQklUUz02NCAtV2Fs bCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcuaCAtV2V4dHJh IC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1ub25saXRlcmFsIC1X Zm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5nLXByb3RvdHlw ZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9pbnRlci1hcml0 aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3cml0ZS1zdHJp bmdzIC1Xbm8tYWRkcmVzcy1vZi1wYWNrZWQtbWVtYmVyIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0 aWFsaXplcnMgLURfR05VX1NPVVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQRVJJ TUVOVEFMX0FQSSAtREFMTE9XX0lOVEVSTkFMX0FQSSAtRFJURV9MT0dfREVGQVVMVF9MT0dUWVBF PXBtZC5uZXQudmhvc3QgLU1EIC1NUSBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucC9u ZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gLU1GIGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhv c3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMuby5kIC1vIGRyaXZlcnMvbGlidG1wX3J0 ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMubyAtYyAuLi9kcml2ZXJz L25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMKLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92 aG9zdC5jOjM0MDoxOiBlcnJvcjogZXhwZWN0ZWQgJyknCnsKXgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6MzM5OjM0OiBub3RlOiB0byBtYXRjaCB0aGlzICcoJwp2aG9zdF91 cGRhdGVfc2luZ2xlX3BhY2tldF94c3RhdHMoc3RydWN0IHZob3N0X3F1ZXVlICp2cSwgc3RydWN0 IHJ0ZV9tYnVmICpidWYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6OTg0Ojk6IGVycm9yOiBpbXBsaWNpdCBkZWNs YXJhdGlvbiBvZiBmdW5jdGlvbiAnZmluZF9pbnRlcm5hbF9yZXNvdXJjZScgaXMgaW52YWxpZCBp biBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICBs aXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJjZShpbnRlcm5hbC0+aWZhY2VfbmFtZSk7CiAgICAg ICAgICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjk4NDo3OiBl cnJvcjogaW5jb21wYXRpYmxlIGludGVnZXIgdG8gcG9pbnRlciBjb252ZXJzaW9uIGFzc2lnbmlu ZyB0byAnc3RydWN0IGludGVybmFsX2xpc3QgKicgZnJvbSAnaW50JyBbLVdlcnJvciwtV2ludC1j b252ZXJzaW9uXQogICAgICAgIGxpc3QgPSBmaW5kX2ludGVybmFsX3Jlc291cmNlKGludGVybmFs LT5pZmFjZV9uYW1lKTsKICAgICAgICAgICAgIF4gfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEw MTU6MTQ6IGVycm9yOiB1c2Ugb2YgdW5kZWNsYXJlZCBpZGVudGlmaWVyICd2aG9zdF9vcHMnCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZob3N0X29wcykg PCAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4K Li4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjExMzI6MjogZXJyb3I6IGltcGxp Y2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdxdWV1ZV9zZXR1cCcgaXMgaW52YWxpZCBpbiBD OTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICBxdWV1 ZV9zZXR1cChldGhfZGV2LCBpbnRlcm5hbCk7CiAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6MTEzNjo4OiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg ZnVuY3Rpb24gJ2V0aF92aG9zdF9pbnN0YWxsX2ludHInIGlzIGludmFsaWQgaW4gQzk5IFstV2Vy cm9yLC1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICAgICAgICAgICAgICAgICAg ICAgIGlmIChldGhfdmhvc3RfaW5zdGFsbF9pbnRyKGV0aF9kZXYpIDwgMCkgewogICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6 MTE0NToyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ3VwZGF0ZV9x dWV1aW5nX3N0YXR1cycgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5j dGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICB1cGRhdGVfcXVldWluZ19zdGF0dXMoZXRoX2Rldik7 CiAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTE1NzoyOiBl cnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ3VwZGF0ZV9xdWV1aW5nX3N0 YXR1cycgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNs YXJhdGlvbl0KICAgICAgICB1cGRhdGVfcXVldWluZ19zdGF0dXMoZGV2KTsKICAgICAgICBeCi4u L2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMTc4Ojk6IGVycm9yOiBpbXBsaWNp dCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZmluZF9pbnRlcm5hbF9yZXNvdXJjZScgaXMgaW52 YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAg ICAgICBsaXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJjZShpbnRlcm5hbC0+aWZhY2VfbmFtZSk7 CiAgICAgICAgICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEx Nzg6NzogZXJyb3I6IGluY29tcGF0aWJsZSBpbnRlZ2VyIHRvIHBvaW50ZXIgY29udmVyc2lvbiBh c3NpZ25pbmcgdG8gJ3N0cnVjdCBpbnRlcm5hbF9saXN0IConIGZyb20gJ2ludCcgWy1XZXJyb3Is LVdpbnQtY29udmVyc2lvbl0KICAgICAgICBsaXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJjZShp bnRlcm5hbC0+aWZhY2VfbmFtZSk7CiAgICAgICAgICAgICBeIH5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhv c3QuYzoxMzk0OjI2OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3J4 cV9pbnRyX2VuYWJsZSc7IGRpZCB5b3UgbWVhbiAncnRlX2ludHJfZW5hYmxlJz8KICAgICAgICAu cnhfcXVldWVfaW50cl9lbmFibGUgPSBldGhfcnhxX2ludHJfZW5hYmxlLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBydGVfaW50cl9lbmFibGUKLi4vbGliL2VhbC9pbmNsdWRlL3J0ZV9pbnRl cnJ1cHRzLmg6MTMyOjU6IG5vdGU6ICdydGVfaW50cl9lbmFibGUnIGRlY2xhcmVkIGhlcmUKaW50 IHJ0ZV9pbnRyX2VuYWJsZShjb25zdCBzdHJ1Y3QgcnRlX2ludHJfaGFuZGxlICppbnRyX2hhbmRs ZSk7CiAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMzk1OjI3OiBl cnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3J4cV9pbnRyX2Rpc2FibGUn OyBkaWQgeW91IG1lYW4gJ3J0ZV9pbnRyX2Rpc2FibGUnPwogICAgICAgIC5yeF9xdWV1ZV9pbnRy X2Rpc2FibGUgPSBldGhfcnhxX2ludHJfZGlzYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcnRlX2ludHJfZGlzYWJsZQouLi9saWIvZWFsL2luY2x1ZGUvcnRlX2ludGVycnVwdHMu aDoxNDQ6NTogbm90ZTogJ3J0ZV9pbnRyX2Rpc2FibGUnIGRlY2xhcmVkIGhlcmUKaW50IHJ0ZV9p bnRyX2Rpc2FibGUoY29uc3Qgc3RydWN0IHJ0ZV9pbnRyX2hhbmRsZSAqaW50cl9oYW5kbGUpOwog ICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTM5NDoyNjogZXJyb3I6 IGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGVzIGluaXRpYWxpemluZyAnZXRoX3J4X2VuYWJsZV9p bnRyX3QnIChha2EgJ2ludCAoKikoc3RydWN0IHJ0ZV9ldGhfZGV2ICosIHVuc2lnbmVkIHNob3J0 KScpIHdpdGggYW4gZXhwcmVzc2lvbiBvZiB0eXBlICdpbnQgKGNvbnN0IHN0cnVjdCBydGVfaW50 cl9oYW5kbGUgKiknIFstV2Vycm9yLC1XaW5jb21wYXRpYmxlLXBvaW50ZXItdHlwZXNdCiAgICAg ICAgLnJ4X3F1ZXVlX2ludHJfZW5hYmxlID0gZXRoX3J4cV9pbnRyX2VuYWJsZSwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0 L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMzk1OjI3OiBlcnJvcjogaW5jb21wYXRpYmxlIHBvaW50 ZXIgdHlwZXMgaW5pdGlhbGl6aW5nICdldGhfcnhfZGlzYWJsZV9pbnRyX3QnIChha2EgJ2ludCAo Kikoc3RydWN0IHJ0ZV9ldGhfZGV2ICosIHVuc2lnbmVkIHNob3J0KScpIHdpdGggYW4gZXhwcmVz c2lvbiBvZiB0eXBlICdpbnQgKGNvbnN0IHN0cnVjdCBydGVfaW50cl9oYW5kbGUgKiknIFstV2Vy cm9yLC1XaW5jb21wYXRpYmxlLXBvaW50ZXItdHlwZXNdCiAgICAgICAgLnJ4X3F1ZXVlX2ludHJf ZGlzYWJsZSA9IGV0aF9yeHFfaW50cl9kaXNhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRo X3Zob3N0LmM6MTQ1MzoyNjogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ2V0 aF92aG9zdF9yeCcKICAgICAgICBldGhfZGV2LT5yeF9wa3RfYnVyc3QgPSBldGhfdmhvc3Rfcng7 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9y dGVfZXRoX3Zob3N0LmM6MTQ1NDoyNjogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZp ZXIgJ2V0aF92aG9zdF90eCcKICAgICAgICBldGhfZGV2LT50eF9wa3RfYnVyc3QgPSBldGhfdmhv c3RfdHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92 aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTUyMToyNzogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlk ZW50aWZpZXIgJ2V0aF92aG9zdF9yeCcKICAgICAgICAgICAgICAgIGV0aF9kZXYtPnJ4X3BrdF9i dXJzdCA9IGV0aF92aG9zdF9yeDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjE1MjI6Mjc6IGVycm9y OiB1c2Ugb2YgdW5kZWNsYXJlZCBpZGVudGlmaWVyICdldGhfdmhvc3RfdHgnCiAgICAgICAgICAg ICAgICBldGhfZGV2LT50eF9wa3RfYnVyc3QgPSBldGhfdmhvc3RfdHg7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBeCjE4IGVycm9ycyBnZW5lcmF0ZWQuCls5NTcvMzAz OF0gR2VuZXJhdGluZyBydGVfbWVtcG9vbF9vY3Rlb250eDIucG1kLmMgd2l0aCBhIGN1c3RvbSBj b21tYW5kCls5NTgvMzAzOF0gR2VuZXJhdGluZyBydGVfbWVtcG9vbF9zdGFjay5wbWQuYyB3aXRo IGEgY3VzdG9tIGNvbW1hbmQKWzk1OS8zMDM4XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9s aWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmlydGlvLmMubwpbOTYwLzMwMzhd IEdlbmVyYXRpbmcgcnRlX21lbXBvb2xfYnVja2V0LnN5bV9jaGsgd2l0aCBhIG1lc29uX2V4ZS5w eSBjdXN0b20gY29tbWFuZApbOTYxLzMwMzhdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xp YnRtcF9ydGVfbmV0X2FmX3BhY2tldC5hLnAvbmV0X2FmX3BhY2tldF9ydGVfZXRoX2FmX3BhY2tl dC5jLm8KWzk2Mi8zMDM4XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX21l bXBvb2xfcmluZy5hLnAvbWVtcG9vbF9yaW5nX3J0ZV9tZW1wb29sX3JpbmcuYy5vCls5NjMvMzAz OF0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbmV0L3ZpcnRpby9saWJ2aXJ0aW9fYXZ4NTEy X2xpYi5hLnAvdmlydGlvX3J4dHhfcGFja2VkLmMubwpbOTY0LzMwMzhdIEdlbmVyYXRpbmcgcnRl X2NvbW1vbl9jbnhrLnN5bV9jaGsgd2l0aCBhIG1lc29uX2V4ZS5weSBjdXN0b20gY29tbWFuZApb OTY1LzMwMzhdIEdlbmVyYXRpbmcgcnRlX2NvbW1vbl9zZmNfZWZ4LnN5bV9jaGsgd2l0aCBhIG1l c29uX2V4ZS5weSBjdXN0b20gY29tbWFuZApuaW5qYTogYnVpbGQgc3RvcHBlZAoKCgoKKkJ1aWxk IEZhaWxlZCAjMzoKT1M6IFJIRUw4My02NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjCkZBSUxFRDogZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aG9zdEBzdGEvbmV0X3Zo b3N0X3J0ZV9ldGhfdmhvc3QuYy5vIApnY2MgLUlkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0 X3Zob3N0QHN0YSAtSWRyaXZlcnMgLUkuLi9kcml2ZXJzIC1JZHJpdmVycy9uZXQvdmhvc3QgLUku Li9kcml2ZXJzL25ldC92aG9zdCAtSWxpYi9ldGhkZXYgLUkuLi9saWIvZXRoZGV2IC1JLiAtSS4u LyAtSWNvbmZpZyAtSS4uL2NvbmZpZyAtSWxpYi9lYWwvaW5jbHVkZSAtSS4uL2xpYi9lYWwvaW5j bHVkZSAtSWxpYi9lYWwvbGludXgvaW5jbHVkZSAtSS4uL2xpYi9lYWwvbGludXgvaW5jbHVkZSAt SWxpYi9lYWwveDg2L2luY2x1ZGUgLUkuLi9saWIvZWFsL3g4Ni9pbmNsdWRlIC1JbGliL2VhbC9j b21tb24gLUkuLi9saWIvZWFsL2NvbW1vbiAtSWxpYi9lYWwgLUkuLi9saWIvZWFsIC1JbGliL2t2 YXJncyAtSS4uL2xpYi9rdmFyZ3MgLUlsaWIvdGVsZW1ldHJ5Ly4uL21ldHJpY3MgLUkuLi9saWIv dGVsZW1ldHJ5Ly4uL21ldHJpY3MgLUlsaWIvdGVsZW1ldHJ5IC1JLi4vbGliL3RlbGVtZXRyeSAt SWxpYi9uZXQgLUkuLi9saWIvbmV0IC1JbGliL21idWYgLUkuLi9saWIvbWJ1ZiAtSWxpYi9tZW1w b29sIC1JLi4vbGliL21lbXBvb2wgLUlsaWIvcmluZyAtSS4uL2xpYi9yaW5nIC1JbGliL21ldGVy IC1JLi4vbGliL21ldGVyIC1JZHJpdmVycy9idXMvcGNpIC1JLi4vZHJpdmVycy9idXMvcGNpIC1J Li4vZHJpdmVycy9idXMvcGNpL2xpbnV4IC1JbGliL3BjaSAtSS4uL2xpYi9wY2kgLUlkcml2ZXJz L2J1cy92ZGV2IC1JLi4vZHJpdmVycy9idXMvdmRldiAtSWxpYi92aG9zdCAtSS4uL2xpYi92aG9z dCAtSWxpYi9jcnlwdG9kZXYgLUkuLi9saWIvY3J5cHRvZGV2IC1JbGliL3JjdSAtSS4uL2xpYi9y Y3UgLUlsaWIvaGFzaCAtSS4uL2xpYi9oYXNoIC1mZGlhZ25vc3RpY3MtY29sb3I9YWx3YXlzIC1w aXBlIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQgLVdhbGwgLVdpbnZhbGlkLXBjaCAtV2Vycm9yIC1P MyAtaW5jbHVkZSBydGVfY29uZmlnLmggLVdleHRyYSAtV2Nhc3QtcXVhbCAtV2RlcHJlY2F0ZWQg LVdmb3JtYXQgLVdmb3JtYXQtbm9ubGl0ZXJhbCAtV2Zvcm1hdC1zZWN1cml0eSAtV21pc3Npbmct ZGVjbGFyYXRpb25zIC1XbWlzc2luZy1wcm90b3R5cGVzIC1XbmVzdGVkLWV4dGVybnMgLVdvbGQt c3R5bGUtZGVmaW5pdGlvbiAtV3BvaW50ZXItYXJpdGggLVdzaWduLWNvbXBhcmUgLVdzdHJpY3Qt cHJvdG90eXBlcyAtV3VuZGVmIC1Xd3JpdGUtc3RyaW5ncyAtV25vLXBhY2tlZC1ub3QtYWxpZ25l ZCAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzIC1EX0dOVV9TT1VSQ0UgLWZQSUMgLW1h cmNoPW5hdGl2ZSAtREFMTE9XX0VYUEVSSU1FTlRBTF9BUEkgLURBTExPV19JTlRFUk5BTF9BUEkg LVduby1mb3JtYXQtdHJ1bmNhdGlvbiAtRFJURV9MT0dfREVGQVVMVF9MT0dUWVBFPXBtZC5uZXQu dmhvc3QgLU1EIC1NUSAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aG9zdEBzdGEvbmV0 X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vJyAtTUYgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9u ZXRfdmhvc3RAc3RhL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMuby5kJyAtbyAnZHJpdmVycy9h NzE1MTgxQEB0bXBfcnRlX25ldF92aG9zdEBzdGEvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5v JyAtYyAuLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMKLi4vZHJpdmVycy9uZXQv dmhvc3QvcnRlX2V0aF92aG9zdC5jOjM0MDoxOiBlcnJvcjogZXhwZWN0ZWQg4oCYO+KAmSwg4oCY LOKAmSBvciDigJgp4oCZIGJlZm9yZSDigJh74oCZIHRva2VuCiB7CiBeCi4uL2RyaXZlcnMvbmV0 L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoyNzk6MTogZXJyb3I6IOKAmHZob3N0X2Rldl94c3RhdHNf Z2V04oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC1mdW5jdGlvbl0KIHZo b3N0X2Rldl94c3RhdHNfZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2LCBzdHJ1Y3QgcnRlX2V0 aF94c3RhdCAqeHN0YXRzLAogXn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhv c3QvcnRlX2V0aF92aG9zdC5jOjI1MzoxOiBlcnJvcjog4oCYdmhvc3RfZGV2X3hzdGF0c19nZXRf bmFtZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1bmN0aW9uXQog dmhvc3RfZGV2X3hzdGF0c19nZXRfbmFtZXMoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYgX19ydGVf dW51c2VkLAogXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3Qv cnRlX2V0aF92aG9zdC5jOjIzMToxOiBlcnJvcjog4oCYdmhvc3RfZGV2X3hzdGF0c19yZXNldOKA mSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rpb25dCiB2aG9zdF9k ZXZfeHN0YXRzX3Jlc2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2KQogXn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTQxOjM4OiBlcnJv cjog4oCYdnJpbmdfc3RhdGVz4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNl ZC12YXJpYWJsZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX3Zob3N0X3ZyaW5nX3N0YXRlICp2cmluZ19z dGF0ZXNbUlRFX01BWF9FVEhQT1JUU107CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzox MjY6Mjg6IGVycm9yOiDigJhwbWRfbGlua+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJv cj11bnVzZWQtdmFyaWFibGVdCiBzdGF0aWMgc3RydWN0IHJ0ZV9ldGhfbGluayBwbWRfbGluayA9 IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zo b3N0L3J0ZV9ldGhfdmhvc3QuYzoxMjQ6MjQ6IGVycm9yOiDigJhpbnRlcm5hbF9saXN0X2xvY2vi gJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQogc3RhdGlj IHB0aHJlYWRfbXV0ZXhfdCBpbnRlcm5hbF9saXN0X2xvY2sgPSBQVEhSRUFEX01VVEVYX0lOSVRJ QUxJWkVSOwogICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJp dmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjUxOjMwOiBlcnJvcjog4oCYYmFzZV9ldGhf YWRkcuKAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCiBz dGF0aWMgc3RydWN0IHJ0ZV9ldGhlcl9hZGRyIGJhc2VfZXRoX2FkZHIgPSB7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRl X2V0aF92aG9zdC5jOjM5OjIwOiBlcnJvcjog4oCYdmFsaWRfYXJndW1lbnRz4oCZIGRlZmluZWQg YnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KIHN0YXRpYyBjb25zdCBjaGFy ICp2YWxpZF9hcmd1bWVudHNbXSA9IHsKICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+ fn4KY2MxOiBhbGwgd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKWzE3ODIvMjgyMV0g R2VuZXJhdGluZyBydGVfbmV0X3RodW5kZXJ4LnBtZC5jIHdpdGggYSBjdXN0b20gY29tbWFuZC4K WzE3ODMvMjgyMV0gTGlua2luZyBzdGF0aWMgdGFyZ2V0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRf dmRldl9uZXR2c2MuYS4KWzE3ODQvMjgyMV0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJzL2E3 MTUxODFAQHRtcF9ydGVfbmV0X29jdGVvbnR4MkBzdGEvbmV0X29jdGVvbnR4Ml9vdHgyX3J4LmMu bycuClsxNzg1LzI4MjFdIENvbXBpbGluZyBDIG9iamVjdCAnZHJpdmVycy9hNzE1MTgxQEB0bXBf cnRlX25ldF90eGdiZUBzdGEvbmV0X3R4Z2JlX3R4Z2JlX2V0aGRldi5jLm8nLgpbMTc4Ni8yODIx XSBDb21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmlydGlv QHN0YS9uZXRfdmlydGlvX3ZpcnRpb191c2VyX3Zob3N0X2tlcm5lbF90YXAuYy5vJy4KWzE3ODcv MjgyMV0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zp cnRpb0BzdGEvbmV0X3ZpcnRpb192aXJ0aW9fcGNpX2V0aGRldi5jLm8nLgpbMTc4OC8yODIxXSBD b21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvbmV0L3ZpcnRpby8yMDY3MGYxQEB2aXJ0aW9fYXZ4 NTEyX2xpYkBzdGEvdmlydGlvX3J4dHhfcGFja2VkLmMubycuClsxNzg5LzI4MjFdIENvbXBpbGlu ZyBDIG9iamVjdCAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aXJ0aW9Ac3RhL25ldF92 aXJ0aW9fdmlydGlvX2V0aGRldi5jLm8nLgpbMTc5MC8yODIxXSBDb21waWxpbmcgQyBvYmplY3Qg J2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdHhnYmVAc3RhL25ldF90eGdiZV90eGdiZV9y eHR4LmMubycuCm5pbmphOiBidWlsZCBzdG9wcGVkCgoKCgoqQnVpbGQgRmFpbGVkICM0OgpPUzog U1VTRTE1LTY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwpGQUlMRUQ6IGRy aXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMu byAKY2xhbmcgLUlkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucCAtSWRyaXZlcnMgLUku Li9kcml2ZXJzIC1JZHJpdmVycy9uZXQvdmhvc3QgLUkuLi9kcml2ZXJzL25ldC92aG9zdCAtSWxp Yi9ldGhkZXYgLUkuLi9saWIvZXRoZGV2IC1JLiAtSS4uIC1JY29uZmlnIC1JLi4vY29uZmlnIC1J bGliL2VhbC9pbmNsdWRlIC1JLi4vbGliL2VhbC9pbmNsdWRlIC1JbGliL2VhbC9saW51eC9pbmNs dWRlIC1JLi4vbGliL2VhbC9saW51eC9pbmNsdWRlIC1JbGliL2VhbC94ODYvaW5jbHVkZSAtSS4u L2xpYi9lYWwveDg2L2luY2x1ZGUgLUlsaWIvZWFsL2NvbW1vbiAtSS4uL2xpYi9lYWwvY29tbW9u IC1JbGliL2VhbCAtSS4uL2xpYi9lYWwgLUlsaWIva3ZhcmdzIC1JLi4vbGliL2t2YXJncyAtSWxp Yi9tZXRyaWNzIC1JLi4vbGliL21ldHJpY3MgLUlsaWIvdGVsZW1ldHJ5IC1JLi4vbGliL3RlbGVt ZXRyeSAtSWxpYi9uZXQgLUkuLi9saWIvbmV0IC1JbGliL21idWYgLUkuLi9saWIvbWJ1ZiAtSWxp Yi9tZW1wb29sIC1JLi4vbGliL21lbXBvb2wgLUlsaWIvcmluZyAtSS4uL2xpYi9yaW5nIC1JbGli L21ldGVyIC1JLi4vbGliL21ldGVyIC1JZHJpdmVycy9idXMvcGNpIC1JLi4vZHJpdmVycy9idXMv cGNpIC1JLi4vZHJpdmVycy9idXMvcGNpL2xpbnV4IC1JbGliL3BjaSAtSS4uL2xpYi9wY2kgLUlk cml2ZXJzL2J1cy92ZGV2IC1JLi4vZHJpdmVycy9idXMvdmRldiAtSWxpYi92aG9zdCAtSS4uL2xp Yi92aG9zdCAtSWxpYi9jcnlwdG9kZXYgLUkuLi9saWIvY3J5cHRvZGV2IC1JbGliL3JjdSAtSS4u L2xpYi9yY3UgLUlsaWIvaGFzaCAtSS4uL2xpYi9oYXNoIC1YY2xhbmcgLWZjb2xvci1kaWFnbm9z dGljcyAtcGlwZSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IC1XYWxsIC1XaW52YWxpZC1wY2ggLVdl cnJvciAtTzMgLWluY2x1ZGUgcnRlX2NvbmZpZy5oIC1XZXh0cmEgLVdjYXN0LXF1YWwgLVdkZXBy ZWNhdGVkIC1XZm9ybWF0IC1XZm9ybWF0LW5vbmxpdGVyYWwgLVdmb3JtYXQtc2VjdXJpdHkgLVdt aXNzaW5nLWRlY2xhcmF0aW9ucyAtV21pc3NpbmctcHJvdG90eXBlcyAtV25lc3RlZC1leHRlcm5z IC1Xb2xkLXN0eWxlLWRlZmluaXRpb24gLVdwb2ludGVyLWFyaXRoIC1Xc2lnbi1jb21wYXJlIC1X c3RyaWN0LXByb3RvdHlwZXMgLVd1bmRlZiAtV3dyaXRlLXN0cmluZ3MgLVduby1hZGRyZXNzLW9m LXBhY2tlZC1tZW1iZXIgLVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVycyAtRF9HTlVfU09V UkNFIC1mUElDIC1tYXJjaD1uYXRpdmUgLURBTExPV19FWFBFUklNRU5UQUxfQVBJIC1EQUxMT1df SU5URVJOQUxfQVBJIC1EUlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9cG1kLm5ldC52aG9zdCAtTUQg LU1RIGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zo b3N0LmMubyAtTUYgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0 ZV9ldGhfdmhvc3QuYy5vLmQgLW8gZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0 X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vIC1jIC4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhf dmhvc3QuYwouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MzQwOjE6IGVycm9y OiBleHBlY3RlZCAnKScKewpeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoz Mzk6MzQ6IG5vdGU6IHRvIG1hdGNoIHRoaXMgJygnCnZob3N0X3VwZGF0ZV9zaW5nbGVfcGFja2V0 X3hzdGF0cyhzdHJ1Y3Qgdmhvc3RfcXVldWUgKnZxLCBzdHJ1Y3QgcnRlX21idWYgKmJ1ZgogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9l dGhfdmhvc3QuYzo5ODQ6OTogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9u ICdmaW5kX2ludGVybmFsX3Jlc291cmNlJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdlcnJvciwtV2lt cGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIGxpc3QgPSBmaW5kX2ludGVybmFs X3Jlc291cmNlKGludGVybmFsLT5pZmFjZV9uYW1lKTsKICAgICAgICAgICAgICAgXgouLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6OTg0Ojc6IGVycm9yOiBpbmNvbXBhdGlibGUg aW50ZWdlciB0byBwb2ludGVyIGNvbnZlcnNpb24gYXNzaWduaW5nIHRvICdzdHJ1Y3QgaW50ZXJu YWxfbGlzdCAqJyBmcm9tICdpbnQnIFstV2Vycm9yLC1XaW50LWNvbnZlcnNpb25dCiAgICAgICAg bGlzdCA9IGZpbmRfaW50ZXJuYWxfcmVzb3VyY2UoaW50ZXJuYWwtPmlmYWNlX25hbWUpOwogICAg ICAgICAgICAgXiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgou Li9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTAxNToxNDogZXJyb3I6IHVzZSBv ZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ3Zob3N0X29wcycKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAmdmhvc3Rfb3BzKSA8IDApIHsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6MTEzMjoyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg ZnVuY3Rpb24gJ3F1ZXVlX3NldHVwJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdlcnJvciwtV2ltcGxp Y2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIHF1ZXVlX3NldHVwKGV0aF9kZXYsIGlu dGVybmFsKTsKICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzox MTM2Ojg6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZXRoX3Zob3N0 X2luc3RhbGxfaW50cicgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5j dGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV0aF92aG9zdF9p bnN0YWxsX2ludHIoZXRoX2RldikgPCAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMTQ1OjI6IGVycm9yOiBpbXBs aWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAndXBkYXRlX3F1ZXVpbmdfc3RhdHVzJyBpcyBp bnZhbGlkIGluIEM5OSBbLVdlcnJvciwtV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQog ICAgICAgIHVwZGF0ZV9xdWV1aW5nX3N0YXR1cyhldGhfZGV2KTsKICAgICAgICBeCi4uL2RyaXZl cnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMTU3OjI6IGVycm9yOiBpbXBsaWNpdCBkZWNs YXJhdGlvbiBvZiBmdW5jdGlvbiAndXBkYXRlX3F1ZXVpbmdfc3RhdHVzJyBpcyBpbnZhbGlkIGlu IEM5OSBbLVdlcnJvciwtV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIHVw ZGF0ZV9xdWV1aW5nX3N0YXR1cyhkZXYpOwogICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3Qv cnRlX2V0aF92aG9zdC5jOjExNzg6OTogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1 bmN0aW9uICdmaW5kX2ludGVybmFsX3Jlc291cmNlJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdlcnJv ciwtV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIGxpc3QgPSBmaW5kX2lu dGVybmFsX3Jlc291cmNlKGludGVybmFsLT5pZmFjZV9uYW1lKTsKICAgICAgICAgICAgICAgXgou Li9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTE3ODo3OiBlcnJvcjogaW5jb21w YXRpYmxlIGludGVnZXIgdG8gcG9pbnRlciBjb252ZXJzaW9uIGFzc2lnbmluZyB0byAnc3RydWN0 IGludGVybmFsX2xpc3QgKicgZnJvbSAnaW50JyBbLVdlcnJvciwtV2ludC1jb252ZXJzaW9uXQog ICAgICAgIGxpc3QgPSBmaW5kX2ludGVybmFsX3Jlc291cmNlKGludGVybmFsLT5pZmFjZV9uYW1l KTsKICAgICAgICAgICAgIF4gfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEzOTQ6MjY6IGVycm9y OiB1c2Ugb2YgdW5kZWNsYXJlZCBpZGVudGlmaWVyICdldGhfcnhxX2ludHJfZW5hYmxlJzsgZGlk IHlvdSBtZWFuICdydGVfaW50cl9lbmFibGUnPwogICAgICAgIC5yeF9xdWV1ZV9pbnRyX2VuYWJs ZSA9IGV0aF9yeHFfaW50cl9lbmFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0ZV9p bnRyX2VuYWJsZQouLi9saWIvZWFsL2luY2x1ZGUvcnRlX2ludGVycnVwdHMuaDoxMzI6NTogbm90 ZTogJ3J0ZV9pbnRyX2VuYWJsZScgZGVjbGFyZWQgaGVyZQppbnQgcnRlX2ludHJfZW5hYmxlKGNv bnN0IHN0cnVjdCBydGVfaW50cl9oYW5kbGUgKmludHJfaGFuZGxlKTsKICAgIF4KLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEzOTU6Mjc6IGVycm9yOiB1c2Ugb2YgdW5kZWNs YXJlZCBpZGVudGlmaWVyICdldGhfcnhxX2ludHJfZGlzYWJsZSc7IGRpZCB5b3UgbWVhbiAncnRl X2ludHJfZGlzYWJsZSc/CiAgICAgICAgLnJ4X3F1ZXVlX2ludHJfZGlzYWJsZSA9IGV0aF9yeHFf aW50cl9kaXNhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydGVfaW50cl9kaXNh YmxlCi4uL2xpYi9lYWwvaW5jbHVkZS9ydGVfaW50ZXJydXB0cy5oOjE0NDo1OiBub3RlOiAncnRl X2ludHJfZGlzYWJsZScgZGVjbGFyZWQgaGVyZQppbnQgcnRlX2ludHJfZGlzYWJsZShjb25zdCBz dHJ1Y3QgcnRlX2ludHJfaGFuZGxlICppbnRyX2hhbmRsZSk7CiAgICBeCi4uL2RyaXZlcnMvbmV0 L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMzk0OjI2OiBlcnJvcjogaW5jb21wYXRpYmxlIHBvaW50 ZXIgdHlwZXMgaW5pdGlhbGl6aW5nICdldGhfcnhfZW5hYmxlX2ludHJfdCcgKGFrYSAnaW50ICgq KShzdHJ1Y3QgcnRlX2V0aF9kZXYgKiwgdW5zaWduZWQgc2hvcnQpJykgd2l0aCBhbiBleHByZXNz aW9uIG9mIHR5cGUgJ2ludCAoY29uc3Qgc3RydWN0IHJ0ZV9pbnRyX2hhbmRsZSAqKScgWy1XZXJy b3IsLVdpbmNvbXBhdGlibGUtcG9pbnRlci10eXBlc10KICAgICAgICAucnhfcXVldWVfaW50cl9l bmFibGUgPSBldGhfcnhxX2ludHJfZW5hYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9z dC5jOjEzOTU6Mjc6IGVycm9yOiBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlcyBpbml0aWFsaXpp bmcgJ2V0aF9yeF9kaXNhYmxlX2ludHJfdCcgKGFrYSAnaW50ICgqKShzdHJ1Y3QgcnRlX2V0aF9k ZXYgKiwgdW5zaWduZWQgc2hvcnQpJykgd2l0aCBhbiBleHByZXNzaW9uIG9mIHR5cGUgJ2ludCAo Y29uc3Qgc3RydWN0IHJ0ZV9pbnRyX2hhbmRsZSAqKScgWy1XZXJyb3IsLVdpbmNvbXBhdGlibGUt cG9pbnRlci10eXBlc10KICAgICAgICAucnhfcXVldWVfaW50cl9kaXNhYmxlID0gZXRoX3J4cV9p bnRyX2Rpc2FibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+ fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDUzOjI2OiBl cnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3Zob3N0X3J4JwogICAgICAg IGV0aF9kZXYtPnJ4X3BrdF9idXJzdCA9IGV0aF92aG9zdF9yeDsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDU0 OjI2OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3Zob3N0X3R4Jwog ICAgICAgIGV0aF9kZXYtPnR4X3BrdF9idXJzdCA9IGV0aF92aG9zdF90eDsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3Qu YzoxNTIxOjI3OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3Zob3N0 X3J4JwogICAgICAgICAgICAgICAgZXRoX2Rldi0+cnhfcGt0X2J1cnN0ID0gZXRoX3Zob3N0X3J4 OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25l dC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTUyMjoyNzogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVk IGlkZW50aWZpZXIgJ2V0aF92aG9zdF90eCcKICAgICAgICAgICAgICAgIGV0aF9kZXYtPnR4X3Br dF9idXJzdCA9IGV0aF92aG9zdF90eDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KMTggZXJyb3JzIGdlbmVyYXRlZC4KWzE5NDQvMzAzOV0gQ29tcGlsaW5nIEMgb2Jq ZWN0IGRyaXZlcnMvbGlicnRlX25ldF90aHVuZGVyeC5hLnAvbWVzb24tZ2VuZXJhdGVkXy4uX3J0 ZV9uZXRfdGh1bmRlcngucG1kLmMubwpbMTk0NS8zMDM5XSBHZW5lcmF0aW5nIHJ0ZV9uZXRfdmRl dl9uZXR2c2MucG1kLmMgd2l0aCBhIGN1c3RvbSBjb21tYW5kClsxOTQ2LzMwMzldIENvbXBpbGlu ZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X29jdGVvbnR4Mi5hLnAvbmV0X29jdGVv bnR4Ml9vdHgyX3J4LmMubwpbMTk0Ny8zMDM5XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9s aWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmlydGlvLmMubwpbMTk0OC8zMDM5 XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25l dF92aXJ0aW9fdmlydGlvX3BjaS5jLm8KWzE5NDkvMzAzOV0gQ29tcGlsaW5nIEMgb2JqZWN0IGRy aXZlcnMvbGlidG1wX3J0ZV9uZXRfdmlydGlvLmEucC9uZXRfdmlydGlvX3ZpcnRpb19wY2lfZXRo ZGV2LmMubwpbMTk1MC8zMDM5XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9uZXQvdmlydGlv L2xpYnZpcnRpb19hdng1MTJfbGliLmEucC92aXJ0aW9fcnh0eF9wYWNrZWQuYy5vClsxOTUxLzMw MzldIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3ZpcnRpby5hLnAv bmV0X3ZpcnRpb192aXJ0aW9fZXRoZGV2LmMubwpbMTk1Mi8zMDM5XSBDb21waWxpbmcgQyBvYmpl Y3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF90eGdiZS5hLnAvbmV0X3R4Z2JlX3R4Z2JlX3J4dHgu Yy5vCm5pbmphOiBidWlsZCBzdG9wcGVkCgoKCgoqQnVpbGQgRmFpbGVkICM1OgpPUzogU1VTRTE1 LTY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MKRkFJTEVEOiBkcml2ZXJzL2xp YnRtcF9ydGVfbmV0X3Zob3N0LmEucC9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gCmdjYyAt SWRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wIC1JZHJpdmVycyAtSS4uL2RyaXZlcnMg LUlkcml2ZXJzL25ldC92aG9zdCAtSS4uL2RyaXZlcnMvbmV0L3Zob3N0IC1JbGliL2V0aGRldiAt SS4uL2xpYi9ldGhkZXYgLUkuIC1JLi4gLUljb25maWcgLUkuLi9jb25maWcgLUlsaWIvZWFsL2lu Y2x1ZGUgLUkuLi9saWIvZWFsL2luY2x1ZGUgLUlsaWIvZWFsL2xpbnV4L2luY2x1ZGUgLUkuLi9s aWIvZWFsL2xpbnV4L2luY2x1ZGUgLUlsaWIvZWFsL3g4Ni9pbmNsdWRlIC1JLi4vbGliL2VhbC94 ODYvaW5jbHVkZSAtSWxpYi9lYWwvY29tbW9uIC1JLi4vbGliL2VhbC9jb21tb24gLUlsaWIvZWFs IC1JLi4vbGliL2VhbCAtSWxpYi9rdmFyZ3MgLUkuLi9saWIva3ZhcmdzIC1JbGliL21ldHJpY3Mg LUkuLi9saWIvbWV0cmljcyAtSWxpYi90ZWxlbWV0cnkgLUkuLi9saWIvdGVsZW1ldHJ5IC1JbGli L25ldCAtSS4uL2xpYi9uZXQgLUlsaWIvbWJ1ZiAtSS4uL2xpYi9tYnVmIC1JbGliL21lbXBvb2wg LUkuLi9saWIvbWVtcG9vbCAtSWxpYi9yaW5nIC1JLi4vbGliL3JpbmcgLUlsaWIvbWV0ZXIgLUku Li9saWIvbWV0ZXIgLUlkcml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kgLUkuLi9k cml2ZXJzL2J1cy9wY2kvbGludXggLUlsaWIvcGNpIC1JLi4vbGliL3BjaSAtSWRyaXZlcnMvYnVz L3ZkZXYgLUkuLi9kcml2ZXJzL2J1cy92ZGV2IC1JbGliL3Zob3N0IC1JLi4vbGliL3Zob3N0IC1J bGliL2NyeXB0b2RldiAtSS4uL2xpYi9jcnlwdG9kZXYgLUlsaWIvcmN1IC1JLi4vbGliL3JjdSAt SWxpYi9oYXNoIC1JLi4vbGliL2hhc2ggLWZkaWFnbm9zdGljcy1jb2xvcj1hbHdheXMgLXBpcGUg LURfRklMRV9PRkZTRVRfQklUUz02NCAtV2FsbCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8zIC1p bmNsdWRlIHJ0ZV9jb25maWcuaCAtV2V4dHJhIC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zv cm1hdCAtV2Zvcm1hdC1ub25saXRlcmFsIC1XZm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNs YXJhdGlvbnMgLVdtaXNzaW5nLXByb3RvdHlwZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHls ZS1kZWZpbml0aW9uIC1XcG9pbnRlci1hcml0aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90 b3R5cGVzIC1XdW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFs aXplcnMgLURfR05VX1NPVVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQRVJJTUVO VEFMX0FQSSAtREFMTE9XX0lOVEVSTkFMX0FQSSAtV25vLWZvcm1hdC10cnVuY2F0aW9uIC1EUlRF X0xPR19ERUZBVUxUX0xPR1RZUEU9cG1kLm5ldC52aG9zdCAtTUQgLU1RIGRyaXZlcnMvbGlidG1w X3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMubyAtTUYgZHJpdmVy cy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vLmQg LW8gZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhv c3QuYy5vIC1jIC4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYwouLi9kcml2ZXJz L25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MzQwOjE6IGVycm9yOiBleHBlY3RlZCDigJg74oCZ LCDigJgs4oCZIG9yIOKAmCnigJkgYmVmb3JlIOKAmHvigJkgdG9rZW4KIHsKIF4KLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjI3OToxOiBlcnJvcjog4oCYdmhvc3RfZGV2X3hz dGF0c19nZXTigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1bmN0aW9u XQogdmhvc3RfZGV2X3hzdGF0c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0cnVjdCBy dGVfZXRoX3hzdGF0ICp4c3RhdHMsCiBefn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25l dC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjUzOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRz X2dldF9uYW1lc+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rp b25dCiB2aG9zdF9kZXZfeHN0YXRzX2dldF9uYW1lcyhzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiBf X3J0ZV91bnVzZWQsCiBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92 aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjMxOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRzX3Jl c2V04oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC1mdW5jdGlvbl0KIHZo b3N0X2Rldl94c3RhdHNfcmVzZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpCiBefn5+fn5+fn5+ fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDE6Mzg6 IGVycm9yOiDigJh2cmluZ19zdGF0ZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9 dW51c2VkLXZhcmlhYmxlXQogc3RhdGljIHN0cnVjdCBydGVfdmhvc3RfdnJpbmdfc3RhdGUgKnZy aW5nX3N0YXRlc1tSVEVfTUFYX0VUSFBPUlRTXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBefn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9z dC5jOjEyNjoyODogZXJyb3I6IOKAmHBtZF9saW5r4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFst V2Vycm9yPXVudXNlZC12YXJpYWJsZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aF9saW5rIHBtZF9s aW5rID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn4KLi4vZHJpdmVycy9u ZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNDoyNDogZXJyb3I6IOKAmGludGVybmFsX2xpc3Rf bG9ja+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCiBz dGF0aWMgcHRocmVhZF9tdXRleF90IGludGVybmFsX2xpc3RfbG9jayA9IFBUSFJFQURfTVVURVhf SU5JVElBTElaRVI7CiAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fgou Li9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6NTE6MzA6IGVycm9yOiDigJhiYXNl X2V0aF9hZGRy4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJpYWJs ZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aGVyX2FkZHIgYmFzZV9ldGhfYWRkciA9IHsKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6Mzk6MjA6IGVycm9yOiDigJh2YWxpZF9hcmd1bWVudHPigJkgZGVm aW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQogc3RhdGljIGNvbnN0 IGNoYXIgKnZhbGlkX2FyZ3VtZW50c1tdID0gewogICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+ fn5+fn5+fgpjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwpbMTk1MS8z MDM3XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92ZGV2X25ldHZz Yy5hLnAvbmV0X3ZkZXZfbmV0dnNjX3ZkZXZfbmV0dnNjLmMubwpbMTk1Mi8zMDM3XSBHZW5lcmF0 aW5nIHJ0ZV9uZXRfdGFwLnN5bV9jaGsgd2l0aCBhIGN1c3RvbSBjb21tYW5kICh3cmFwcGVkIGJ5 IG1lc29uIHRvIGNhcHR1cmUgb3V0cHV0KQpbMTk1My8zMDM3XSBDb21waWxpbmcgQyBvYmplY3Qg ZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmlydGlvLmMubwpb MTk1NC8zMDM3XSBHZW5lcmF0aW5nIHJ0ZV9uZXRfdGh1bmRlcnguc3ltX2NoayB3aXRoIGEgY3Vz dG9tIGNvbW1hbmQgKHdyYXBwZWQgYnkgbWVzb24gdG8gY2FwdHVyZSBvdXRwdXQpClsxOTU1LzMw MzddIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL25ldC92aXJ0aW8vbGlidmlydGlvX2F2eDUx Ml9saWIuYS5wL3ZpcnRpb19yeHR4X3BhY2tlZC5jLm8KWzE5NTYvMzAzN10gQ29tcGlsaW5nIEMg b2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmlydGlvLmEucC9uZXRfdmlydGlvX3ZpcnRp b19ldGhkZXYuYy5vClsxOTU3LzMwMzddIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRt cF9ydGVfbmV0X3R4Z2JlLmEucC9uZXRfdHhnYmVfdHhnYmVfcnh0eC5jLm8KbmluamE6IGJ1aWxk IHN0b3BwZWQKCgoKCipCdWlsZCBGYWlsZWQgIzY6Ck9TOiBVQjIwMDQtMzIKVGFyZ2V0OiBpNjg2 LW5hdGl2ZS1saW51eGFwcC1nY2MKRkFJTEVEOiBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0 LmEucC9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gCmdjYyAtSWRyaXZlcnMvbGlidG1wX3J0 ZV9uZXRfdmhvc3QuYS5wIC1JZHJpdmVycyAtSS4uL2RyaXZlcnMgLUlkcml2ZXJzL25ldC92aG9z dCAtSS4uL2RyaXZlcnMvbmV0L3Zob3N0IC1JbGliL2V0aGRldiAtSS4uL2xpYi9ldGhkZXYgLUku IC1JLi4gLUljb25maWcgLUkuLi9jb25maWcgLUlsaWIvZWFsL2luY2x1ZGUgLUkuLi9saWIvZWFs L2luY2x1ZGUgLUlsaWIvZWFsL2xpbnV4L2luY2x1ZGUgLUkuLi9saWIvZWFsL2xpbnV4L2luY2x1 ZGUgLUlsaWIvZWFsL3g4Ni9pbmNsdWRlIC1JLi4vbGliL2VhbC94ODYvaW5jbHVkZSAtSWxpYi9l YWwvY29tbW9uIC1JLi4vbGliL2VhbC9jb21tb24gLUlsaWIvZWFsIC1JLi4vbGliL2VhbCAtSWxp Yi9rdmFyZ3MgLUkuLi9saWIva3ZhcmdzIC1JbGliL21ldHJpY3MgLUkuLi9saWIvbWV0cmljcyAt SWxpYi90ZWxlbWV0cnkgLUkuLi9saWIvdGVsZW1ldHJ5IC1JbGliL25ldCAtSS4uL2xpYi9uZXQg LUlsaWIvbWJ1ZiAtSS4uL2xpYi9tYnVmIC1JbGliL21lbXBvb2wgLUkuLi9saWIvbWVtcG9vbCAt SWxpYi9yaW5nIC1JLi4vbGliL3JpbmcgLUlsaWIvbWV0ZXIgLUkuLi9saWIvbWV0ZXIgLUlkcml2 ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kvbGlu dXggLUlsaWIvcGNpIC1JLi4vbGliL3BjaSAtSWRyaXZlcnMvYnVzL3ZkZXYgLUkuLi9kcml2ZXJz L2J1cy92ZGV2IC1JbGliL3Zob3N0IC1JLi4vbGliL3Zob3N0IC1JbGliL2NyeXB0b2RldiAtSS4u L2xpYi9jcnlwdG9kZXYgLUlsaWIvcmN1IC1JLi4vbGliL3JjdSAtSWxpYi9oYXNoIC1JLi4vbGli L2hhc2ggLWZkaWFnbm9zdGljcy1jb2xvcj1hbHdheXMgLXBpcGUgLURfRklMRV9PRkZTRVRfQklU Uz02NCAtV2FsbCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcu aCAtV2V4dHJhIC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1ub25s aXRlcmFsIC1XZm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5n LXByb3RvdHlwZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9p bnRlci1hcml0aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3 cml0ZS1zdHJpbmdzIC1Xbm8tYWRkcmVzcy1vZi1wYWNrZWQtbWVtYmVyIC1Xbm8tcGFja2VkLW5v dC1hbGlnbmVkIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMgLVduby16ZXJvLWxlbmd0 aC1ib3VuZHMgLVduby1wb2ludGVyLXRvLWludC1jYXN0IC1EX0dOVV9TT1VSQ0UgLW0zMiAtZlBJ QyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQRVJJTUVOVEFMX0FQSSAtREFMTE9XX0lOVEVSTkFM X0FQSSAtV25vLWZvcm1hdC10cnVuY2F0aW9uIC1EUlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9cG1k Lm5ldC52aG9zdCAtTUQgLU1RIGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92 aG9zdF9ydGVfZXRoX3Zob3N0LmMubyAtTUYgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5h LnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vLmQgLW8gZHJpdmVycy9saWJ0bXBfcnRlX25l dF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vIC1jIC4uL2RyaXZlcnMvbmV0 L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYwouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0 LmM6MzQwOjE6IGVycm9yOiBleHBlY3RlZCDigJg74oCZLCDigJgs4oCZIG9yIOKAmCnigJkgYmVm b3JlIOKAmHvigJkgdG9rZW4KICAzNDAgfCB7CiAgICAgIHwgXgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6Mjc5OjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRzX2dldOKA mSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rpb25dCiAgMjc5IHwg dmhvc3RfZGV2X3hzdGF0c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0cnVjdCBydGVf ZXRoX3hzdGF0ICp4c3RhdHMsCiAgICAgIHwgXn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjI1MzoxOiBlcnJvcjog4oCYdmhvc3RfZGV2X3hz dGF0c19nZXRfbmFtZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1 bmN0aW9uXQogIDI1MyB8IHZob3N0X2Rldl94c3RhdHNfZ2V0X25hbWVzKHN0cnVjdCBydGVfZXRo X2RldiAqZGV2IF9fcnRlX3VudXNlZCwKICAgICAgfCBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjMxOjE6IGVycm9yOiDigJh2 aG9zdF9kZXZfeHN0YXRzX3Jlc2V04oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVu dXNlZC1mdW5jdGlvbl0KICAyMzEgfCB2aG9zdF9kZXZfeHN0YXRzX3Jlc2V0KHN0cnVjdCBydGVf ZXRoX2RldiAqZGV2KQogICAgICB8IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9u ZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjE0MTozODogZXJyb3I6IOKAmHZyaW5nX3N0YXRlc+KA mSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCiAgMTQxIHwg c3RhdGljIHN0cnVjdCBydGVfdmhvc3RfdnJpbmdfc3RhdGUgKnZyaW5nX3N0YXRlc1tSVEVfTUFY X0VUSFBPUlRTXTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMjY6Mjg6 IGVycm9yOiDigJhwbWRfbGlua+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVz ZWQtdmFyaWFibGVdCiAgMTI2IHwgc3RhdGljIHN0cnVjdCBydGVfZXRoX2xpbmsgcG1kX2xpbmsg PSB7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn4KLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNDoyNDogZXJyb3I6IOKAmGludGVybmFsX2xp c3RfbG9ja+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVd CiAgMTI0IHwgc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBpbnRlcm5hbF9saXN0X2xvY2sgPSBQVEhS RUFEX01VVEVYX0lOSVRJQUxJWkVSOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgXn5+ fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzo1MToz MDogZXJyb3I6IOKAmGJhc2VfZXRoX2FkZHLigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJy b3I9dW51c2VkLXZhcmlhYmxlXQogICA1MSB8IHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aGVyX2FkZHIg YmFzZV9ldGhfYWRkciA9IHsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjM5OjIwOiBl cnJvcjog4oCYdmFsaWRfYXJndW1lbnRz4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9y PXVudXNlZC12YXJpYWJsZV0KICAgMzkgfCBzdGF0aWMgY29uc3QgY2hhciAqdmFsaWRfYXJndW1l bnRzW10gPSB7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fgpjYzE6 IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwpbMTU3OS8yNDM4XSBMaW5raW5n IHN0YXRpYyB0YXJnZXQgZHJpdmVycy9saWJydGVfbmV0X3RodW5kZXJ4LmEKWzE1ODAvMjQzOF0g TGlua2luZyB0YXJnZXQgZHJpdmVycy9saWJydGVfbmV0X3RhcC5zby4yMi4wClsxNTgxLzI0Mzhd IENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3R4Z2JlLmEucC9uZXRf dHhnYmVfdHhnYmVfdG0uYy5vClsxNTgyLzI0MzhdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJz L2xpYnRtcF9ydGVfbmV0X3ZkZXZfbmV0dnNjLmEucC9uZXRfdmRldl9uZXR2c2NfdmRldl9uZXR2 c2MuYy5vClsxNTgzLzI0MzhdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVf bmV0X3ZpcnRpby5hLnAvbmV0X3ZpcnRpb192aXJ0aW8uYy5vClsxNTg0LzI0MzhdIENvbXBpbGlu ZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3R4Z2JlLmEucC9uZXRfdHhnYmVfdHhn YmVfZXRoZGV2LmMubwpbMTU4NS8yNDM4XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9uZXQv dmlydGlvL2xpYnZpcnRpb19hdng1MTJfbGliLmEucC92aXJ0aW9fcnh0eF9wYWNrZWQuYy5vClsx NTg2LzI0MzhdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3ZpcnRp by5hLnAvbmV0X3ZpcnRpb192aXJ0aW9fZXRoZGV2LmMubwpbMTU4Ny8yNDM4XSBDb21waWxpbmcg QyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF90eGdiZS5hLnAvbmV0X3R4Z2JlX3R4Z2Jl X3J4dHguYy5vCm5pbmphOiBidWlsZCBzdG9wcGVkCgoKCgoqQnVpbGQgRmFpbGVkICM3OgpPUzog VUIyMDA0LTY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwpGQUlMRUQ6IGRy aXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMu byAKY2xhbmcgLUlkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucCAtSWRyaXZlcnMgLUku Li9kcml2ZXJzIC1JZHJpdmVycy9uZXQvdmhvc3QgLUkuLi9kcml2ZXJzL25ldC92aG9zdCAtSWxp Yi9ldGhkZXYgLUkuLi9saWIvZXRoZGV2IC1JLiAtSS4uIC1JY29uZmlnIC1JLi4vY29uZmlnIC1J bGliL2VhbC9pbmNsdWRlIC1JLi4vbGliL2VhbC9pbmNsdWRlIC1JbGliL2VhbC9saW51eC9pbmNs dWRlIC1JLi4vbGliL2VhbC9saW51eC9pbmNsdWRlIC1JbGliL2VhbC94ODYvaW5jbHVkZSAtSS4u L2xpYi9lYWwveDg2L2luY2x1ZGUgLUlsaWIvZWFsL2NvbW1vbiAtSS4uL2xpYi9lYWwvY29tbW9u IC1JbGliL2VhbCAtSS4uL2xpYi9lYWwgLUlsaWIva3ZhcmdzIC1JLi4vbGliL2t2YXJncyAtSWxp Yi9tZXRyaWNzIC1JLi4vbGliL21ldHJpY3MgLUlsaWIvdGVsZW1ldHJ5IC1JLi4vbGliL3RlbGVt ZXRyeSAtSWxpYi9uZXQgLUkuLi9saWIvbmV0IC1JbGliL21idWYgLUkuLi9saWIvbWJ1ZiAtSWxp Yi9tZW1wb29sIC1JLi4vbGliL21lbXBvb2wgLUlsaWIvcmluZyAtSS4uL2xpYi9yaW5nIC1JbGli L21ldGVyIC1JLi4vbGliL21ldGVyIC1JZHJpdmVycy9idXMvcGNpIC1JLi4vZHJpdmVycy9idXMv cGNpIC1JLi4vZHJpdmVycy9idXMvcGNpL2xpbnV4IC1JbGliL3BjaSAtSS4uL2xpYi9wY2kgLUlk cml2ZXJzL2J1cy92ZGV2IC1JLi4vZHJpdmVycy9idXMvdmRldiAtSWxpYi92aG9zdCAtSS4uL2xp Yi92aG9zdCAtSWxpYi9jcnlwdG9kZXYgLUkuLi9saWIvY3J5cHRvZGV2IC1JbGliL3JjdSAtSS4u L2xpYi9yY3UgLUlsaWIvaGFzaCAtSS4uL2xpYi9oYXNoIC1YY2xhbmcgLWZjb2xvci1kaWFnbm9z dGljcyAtcGlwZSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IC1XYWxsIC1XaW52YWxpZC1wY2ggLVdl cnJvciAtTzMgLWluY2x1ZGUgcnRlX2NvbmZpZy5oIC1XZXh0cmEgLVdjYXN0LXF1YWwgLVdkZXBy ZWNhdGVkIC1XZm9ybWF0IC1XZm9ybWF0LW5vbmxpdGVyYWwgLVdmb3JtYXQtc2VjdXJpdHkgLVdt aXNzaW5nLWRlY2xhcmF0aW9ucyAtV21pc3NpbmctcHJvdG90eXBlcyAtV25lc3RlZC1leHRlcm5z IC1Xb2xkLXN0eWxlLWRlZmluaXRpb24gLVdwb2ludGVyLWFyaXRoIC1Xc2lnbi1jb21wYXJlIC1X c3RyaWN0LXByb3RvdHlwZXMgLVd1bmRlZiAtV3dyaXRlLXN0cmluZ3MgLVduby1hZGRyZXNzLW9m LXBhY2tlZC1tZW1iZXIgLVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVycyAtRF9HTlVfU09V UkNFIC1mUElDIC1tYXJjaD1uYXRpdmUgLURBTExPV19FWFBFUklNRU5UQUxfQVBJIC1EQUxMT1df SU5URVJOQUxfQVBJIC1EUlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9cG1kLm5ldC52aG9zdCAtTUQg LU1RIGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zo b3N0LmMubyAtTUYgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0 ZV9ldGhfdmhvc3QuYy5vLmQgLW8gZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0 X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vIC1jIC4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhf dmhvc3QuYwouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MzQwOjE6IGVycm9y OiBleHBlY3RlZCAnKScKewpeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoz Mzk6MzQ6IG5vdGU6IHRvIG1hdGNoIHRoaXMgJygnCnZob3N0X3VwZGF0ZV9zaW5nbGVfcGFja2V0 X3hzdGF0cyhzdHJ1Y3Qgdmhvc3RfcXVldWUgKnZxLCBzdHJ1Y3QgcnRlX21idWYgKmJ1ZgogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9l dGhfdmhvc3QuYzo5ODQ6OTogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9u ICdmaW5kX2ludGVybmFsX3Jlc291cmNlJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdlcnJvciwtV2lt cGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIGxpc3QgPSBmaW5kX2ludGVybmFs X3Jlc291cmNlKGludGVybmFsLT5pZmFjZV9uYW1lKTsKICAgICAgICAgICAgICAgXgouLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6OTg0Ojc6IGVycm9yOiBpbmNvbXBhdGlibGUg aW50ZWdlciB0byBwb2ludGVyIGNvbnZlcnNpb24gYXNzaWduaW5nIHRvICdzdHJ1Y3QgaW50ZXJu YWxfbGlzdCAqJyBmcm9tICdpbnQnIFstV2Vycm9yLC1XaW50LWNvbnZlcnNpb25dCiAgICAgICAg bGlzdCA9IGZpbmRfaW50ZXJuYWxfcmVzb3VyY2UoaW50ZXJuYWwtPmlmYWNlX25hbWUpOwogICAg ICAgICAgICAgXiB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgou Li9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTAxNToxNDogZXJyb3I6IHVzZSBv ZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ3Zob3N0X29wcycKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAmdmhvc3Rfb3BzKSA8IDApIHsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6MTEzMjoyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg ZnVuY3Rpb24gJ3F1ZXVlX3NldHVwJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdlcnJvciwtV2ltcGxp Y2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIHF1ZXVlX3NldHVwKGV0aF9kZXYsIGlu dGVybmFsKTsKICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzox MTM2Ojg6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZXRoX3Zob3N0 X2luc3RhbGxfaW50cicgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5j dGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV0aF92aG9zdF9p bnN0YWxsX2ludHIoZXRoX2RldikgPCAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMTQ1OjI6IGVycm9yOiBpbXBs aWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAndXBkYXRlX3F1ZXVpbmdfc3RhdHVzJyBpcyBp bnZhbGlkIGluIEM5OSBbLVdlcnJvciwtV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQog ICAgICAgIHVwZGF0ZV9xdWV1aW5nX3N0YXR1cyhldGhfZGV2KTsKICAgICAgICBeCi4uL2RyaXZl cnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMTU3OjI6IGVycm9yOiBpbXBsaWNpdCBkZWNs YXJhdGlvbiBvZiBmdW5jdGlvbiAndXBkYXRlX3F1ZXVpbmdfc3RhdHVzJyBpcyBpbnZhbGlkIGlu IEM5OSBbLVdlcnJvciwtV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIHVw ZGF0ZV9xdWV1aW5nX3N0YXR1cyhkZXYpOwogICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3Qv cnRlX2V0aF92aG9zdC5jOjExNzg6OTogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1 bmN0aW9uICdmaW5kX2ludGVybmFsX3Jlc291cmNlJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdlcnJv ciwtV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICAgICAgIGxpc3QgPSBmaW5kX2lu dGVybmFsX3Jlc291cmNlKGludGVybmFsLT5pZmFjZV9uYW1lKTsKICAgICAgICAgICAgICAgXgou Li9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTE3ODo3OiBlcnJvcjogaW5jb21w YXRpYmxlIGludGVnZXIgdG8gcG9pbnRlciBjb252ZXJzaW9uIGFzc2lnbmluZyB0byAnc3RydWN0 IGludGVybmFsX2xpc3QgKicgZnJvbSAnaW50JyBbLVdlcnJvciwtV2ludC1jb252ZXJzaW9uXQog ICAgICAgIGxpc3QgPSBmaW5kX2ludGVybmFsX3Jlc291cmNlKGludGVybmFsLT5pZmFjZV9uYW1l KTsKICAgICAgICAgICAgIF4gfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEzOTQ6MjY6IGVycm9y OiB1c2Ugb2YgdW5kZWNsYXJlZCBpZGVudGlmaWVyICdldGhfcnhxX2ludHJfZW5hYmxlJzsgZGlk IHlvdSBtZWFuICdydGVfaW50cl9lbmFibGUnPwogICAgICAgIC5yeF9xdWV1ZV9pbnRyX2VuYWJs ZSA9IGV0aF9yeHFfaW50cl9lbmFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0ZV9p bnRyX2VuYWJsZQouLi9saWIvZWFsL2luY2x1ZGUvcnRlX2ludGVycnVwdHMuaDoxMzI6NTogbm90 ZTogJ3J0ZV9pbnRyX2VuYWJsZScgZGVjbGFyZWQgaGVyZQppbnQgcnRlX2ludHJfZW5hYmxlKGNv bnN0IHN0cnVjdCBydGVfaW50cl9oYW5kbGUgKmludHJfaGFuZGxlKTsKICAgIF4KLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEzOTU6Mjc6IGVycm9yOiB1c2Ugb2YgdW5kZWNs YXJlZCBpZGVudGlmaWVyICdldGhfcnhxX2ludHJfZGlzYWJsZSc7IGRpZCB5b3UgbWVhbiAncnRl X2ludHJfZGlzYWJsZSc/CiAgICAgICAgLnJ4X3F1ZXVlX2ludHJfZGlzYWJsZSA9IGV0aF9yeHFf aW50cl9kaXNhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fn5+fgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydGVfaW50cl9kaXNh YmxlCi4uL2xpYi9lYWwvaW5jbHVkZS9ydGVfaW50ZXJydXB0cy5oOjE0NDo1OiBub3RlOiAncnRl X2ludHJfZGlzYWJsZScgZGVjbGFyZWQgaGVyZQppbnQgcnRlX2ludHJfZGlzYWJsZShjb25zdCBz dHJ1Y3QgcnRlX2ludHJfaGFuZGxlICppbnRyX2hhbmRsZSk7CiAgICBeCi4uL2RyaXZlcnMvbmV0 L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMzk0OjI2OiBlcnJvcjogaW5jb21wYXRpYmxlIHBvaW50 ZXIgdHlwZXMgaW5pdGlhbGl6aW5nICdldGhfcnhfZW5hYmxlX2ludHJfdCcgKGFrYSAnaW50ICgq KShzdHJ1Y3QgcnRlX2V0aF9kZXYgKiwgdW5zaWduZWQgc2hvcnQpJykgd2l0aCBhbiBleHByZXNz aW9uIG9mIHR5cGUgJ2ludCAoY29uc3Qgc3RydWN0IHJ0ZV9pbnRyX2hhbmRsZSAqKScgWy1XZXJy b3IsLVdpbmNvbXBhdGlibGUtcG9pbnRlci10eXBlc10KICAgICAgICAucnhfcXVldWVfaW50cl9l bmFibGUgPSBldGhfcnhxX2ludHJfZW5hYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9z dC5jOjEzOTU6Mjc6IGVycm9yOiBpbmNvbXBhdGlibGUgcG9pbnRlciB0eXBlcyBpbml0aWFsaXpp bmcgJ2V0aF9yeF9kaXNhYmxlX2ludHJfdCcgKGFrYSAnaW50ICgqKShzdHJ1Y3QgcnRlX2V0aF9k ZXYgKiwgdW5zaWduZWQgc2hvcnQpJykgd2l0aCBhbiBleHByZXNzaW9uIG9mIHR5cGUgJ2ludCAo Y29uc3Qgc3RydWN0IHJ0ZV9pbnRyX2hhbmRsZSAqKScgWy1XZXJyb3IsLVdpbmNvbXBhdGlibGUt cG9pbnRlci10eXBlc10KICAgICAgICAucnhfcXVldWVfaW50cl9kaXNhYmxlID0gZXRoX3J4cV9p bnRyX2Rpc2FibGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+ fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDUzOjI2OiBl cnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3Zob3N0X3J4JwogICAgICAg IGV0aF9kZXYtPnJ4X3BrdF9idXJzdCA9IGV0aF92aG9zdF9yeDsKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDU0 OjI2OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3Zob3N0X3R4Jwog ICAgICAgIGV0aF9kZXYtPnR4X3BrdF9idXJzdCA9IGV0aF92aG9zdF90eDsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3Qu YzoxNTIxOjI3OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3Zob3N0 X3J4JwogICAgICAgICAgICAgICAgZXRoX2Rldi0+cnhfcGt0X2J1cnN0ID0gZXRoX3Zob3N0X3J4 OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25l dC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTUyMjoyNzogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVk IGlkZW50aWZpZXIgJ2V0aF92aG9zdF90eCcKICAgICAgICAgICAgICAgIGV0aF9kZXYtPnR4X3Br dF9idXJzdCA9IGV0aF92aG9zdF90eDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KMTggZXJyb3JzIGdlbmVyYXRlZC4KWzE5NDkvMzA1OF0gQ29tcGlsaW5nIEMgb2Jq ZWN0IGRyaXZlcnMvbGlicnRlX25ldF92ZGV2X25ldHZzYy5hLnAvbWVzb24tZ2VuZXJhdGVkXy4u X3J0ZV9uZXRfdmRldl9uZXR2c2MucG1kLmMubwpbMTk1MC8zMDU4XSBDb21waWxpbmcgQyBvYmpl Y3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmlydGlvX3Bj aS5jLm8KWzE5NTEvMzA1OF0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9u ZXRfdmlydGlvLmEucC9uZXRfdmlydGlvX3ZpcnRpb19yeHR4X3NpbXBsZS5jLm8KWzE5NTIvMzA1 OF0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbmV0L3ZpcnRpby9saWJ2aXJ0aW9fYXZ4NTEy X2xpYi5hLnAvdmlydGlvX3J4dHhfcGFja2VkLmMubwpbMTk1My8zMDU4XSBDb21waWxpbmcgQyBv YmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmlydHF1 ZXVlLmMubwpbMTk1NC8zMDU4XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRl X25ldF92aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmlydGlvX2V0aGRldi5jLm8KWzE5NTUvMzA1OF0g Q29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdHhnYmUuYS5wL25ldF90 eGdiZV90eGdiZV9yeHR4LmMubwpbMTk1Ni8zMDU4XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVy cy9saWJ0bXBfcnRlX25ldF9vY3Rlb250eDIuYS5wL25ldF9vY3Rlb250eDJfb3R4Ml9yeC5jLm8K WzE5NTcvMzA1OF0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmly dGlvLmEucC9uZXRfdmlydGlvX3ZpcnRpb19yeHR4LmMubwpuaW5qYTogYnVpbGQgc3RvcHBlZAoK CgoKKkJ1aWxkIEZhaWxlZCAjODoKT1M6IFVCMjAwNC02NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUt bGludXhhcHAtZ2NjCkZBSUxFRDogZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0 X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vIApnY2MgLUlkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zo b3N0LmEucCAtSWRyaXZlcnMgLUkuLi9kcml2ZXJzIC1JZHJpdmVycy9uZXQvdmhvc3QgLUkuLi9k cml2ZXJzL25ldC92aG9zdCAtSWxpYi9ldGhkZXYgLUkuLi9saWIvZXRoZGV2IC1JLiAtSS4uIC1J Y29uZmlnIC1JLi4vY29uZmlnIC1JbGliL2VhbC9pbmNsdWRlIC1JLi4vbGliL2VhbC9pbmNsdWRl IC1JbGliL2VhbC9saW51eC9pbmNsdWRlIC1JLi4vbGliL2VhbC9saW51eC9pbmNsdWRlIC1JbGli L2VhbC94ODYvaW5jbHVkZSAtSS4uL2xpYi9lYWwveDg2L2luY2x1ZGUgLUlsaWIvZWFsL2NvbW1v biAtSS4uL2xpYi9lYWwvY29tbW9uIC1JbGliL2VhbCAtSS4uL2xpYi9lYWwgLUlsaWIva3Zhcmdz IC1JLi4vbGliL2t2YXJncyAtSWxpYi9tZXRyaWNzIC1JLi4vbGliL21ldHJpY3MgLUlsaWIvdGVs ZW1ldHJ5IC1JLi4vbGliL3RlbGVtZXRyeSAtSWxpYi9uZXQgLUkuLi9saWIvbmV0IC1JbGliL21i dWYgLUkuLi9saWIvbWJ1ZiAtSWxpYi9tZW1wb29sIC1JLi4vbGliL21lbXBvb2wgLUlsaWIvcmlu ZyAtSS4uL2xpYi9yaW5nIC1JbGliL21ldGVyIC1JLi4vbGliL21ldGVyIC1JZHJpdmVycy9idXMv cGNpIC1JLi4vZHJpdmVycy9idXMvcGNpIC1JLi4vZHJpdmVycy9idXMvcGNpL2xpbnV4IC1JbGli L3BjaSAtSS4uL2xpYi9wY2kgLUlkcml2ZXJzL2J1cy92ZGV2IC1JLi4vZHJpdmVycy9idXMvdmRl diAtSWxpYi92aG9zdCAtSS4uL2xpYi92aG9zdCAtSWxpYi9jcnlwdG9kZXYgLUkuLi9saWIvY3J5 cHRvZGV2IC1JbGliL3JjdSAtSS4uL2xpYi9yY3UgLUlsaWIvaGFzaCAtSS4uL2xpYi9oYXNoIC1m ZGlhZ25vc3RpY3MtY29sb3I9YWx3YXlzIC1waXBlIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQgLVdh bGwgLVdpbnZhbGlkLXBjaCAtV2Vycm9yIC1PMyAtaW5jbHVkZSBydGVfY29uZmlnLmggLVdleHRy YSAtV2Nhc3QtcXVhbCAtV2RlcHJlY2F0ZWQgLVdmb3JtYXQgLVdmb3JtYXQtbm9ubGl0ZXJhbCAt V2Zvcm1hdC1zZWN1cml0eSAtV21pc3NpbmctZGVjbGFyYXRpb25zIC1XbWlzc2luZy1wcm90b3R5 cGVzIC1XbmVzdGVkLWV4dGVybnMgLVdvbGQtc3R5bGUtZGVmaW5pdGlvbiAtV3BvaW50ZXItYXJp dGggLVdzaWduLWNvbXBhcmUgLVdzdHJpY3QtcHJvdG90eXBlcyAtV3VuZGVmIC1Xd3JpdGUtc3Ry aW5ncyAtV25vLWFkZHJlc3Mtb2YtcGFja2VkLW1lbWJlciAtV25vLXBhY2tlZC1ub3QtYWxpZ25l ZCAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzIC1Xbm8temVyby1sZW5ndGgtYm91bmRz IC1EX0dOVV9TT1VSQ0UgLWZQSUMgLW1hcmNoPW5hdGl2ZSAtREFMTE9XX0VYUEVSSU1FTlRBTF9B UEkgLURBTExPV19JTlRFUk5BTF9BUEkgLVduby1mb3JtYXQtdHJ1bmNhdGlvbiAtRFJURV9MT0df REVGQVVMVF9MT0dUWVBFPXBtZC5uZXQudmhvc3QgLU1EIC1NUSBkcml2ZXJzL2xpYnRtcF9ydGVf bmV0X3Zob3N0LmEucC9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gLU1GIGRyaXZlcnMvbGli dG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMuby5kIC1vIGRy aXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMu byAtYyAuLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMKLi4vZHJpdmVycy9uZXQv dmhvc3QvcnRlX2V0aF92aG9zdC5jOjM0MDoxOiBlcnJvcjogZXhwZWN0ZWQg4oCYO+KAmSwg4oCY LOKAmSBvciDigJgp4oCZIGJlZm9yZSDigJh74oCZIHRva2VuCiAgMzQwIHwgewogICAgICB8IF4K Li4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjI3OToxOiBlcnJvcjog4oCYdmhv c3RfZGV2X3hzdGF0c19nZXTigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2Vk LWZ1bmN0aW9uXQogIDI3OSB8IHZob3N0X2Rldl94c3RhdHNfZ2V0KHN0cnVjdCBydGVfZXRoX2Rl diAqZGV2LCBzdHJ1Y3QgcnRlX2V0aF94c3RhdCAqeHN0YXRzLAogICAgICB8IF5+fn5+fn5+fn5+ fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoyNTM6MTogZXJy b3I6IOKAmHZob3N0X2Rldl94c3RhdHNfZ2V0X25hbWVz4oCZIGRlZmluZWQgYnV0IG5vdCB1c2Vk IFstV2Vycm9yPXVudXNlZC1mdW5jdGlvbl0KICAyNTMgfCB2aG9zdF9kZXZfeHN0YXRzX2dldF9u YW1lcyhzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiBfX3J0ZV91bnVzZWQsCiAgICAgIHwgXn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5j OjIzMToxOiBlcnJvcjog4oCYdmhvc3RfZGV2X3hzdGF0c19yZXNldOKAmSBkZWZpbmVkIGJ1dCBu b3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rpb25dCiAgMjMxIHwgdmhvc3RfZGV2X3hzdGF0 c19yZXNldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldikKICAgICAgfCBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDE6Mzg6IGVycm9y OiDigJh2cmluZ19zdGF0ZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2Vk LXZhcmlhYmxlXQogIDE0MSB8IHN0YXRpYyBzdHJ1Y3QgcnRlX3Zob3N0X3ZyaW5nX3N0YXRlICp2 cmluZ19zdGF0ZXNbUlRFX01BWF9FVEhQT1JUU107CiAgICAgIHwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVf ZXRoX3Zob3N0LmM6MTI2OjI4OiBlcnJvcjog4oCYcG1kX2xpbmvigJkgZGVmaW5lZCBidXQgbm90 IHVzZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQogIDEyNiB8IHN0YXRpYyBzdHJ1Y3QgcnRl X2V0aF9saW5rIHBtZF9saW5rID0gewogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg IF5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMjQ6MjQ6IGVy cm9yOiDigJhpbnRlcm5hbF9saXN0X2xvY2vigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJy b3I9dW51c2VkLXZhcmlhYmxlXQogIDEyNCB8IHN0YXRpYyBwdGhyZWFkX211dGV4X3QgaW50ZXJu YWxfbGlzdF9sb2NrID0gUFRIUkVBRF9NVVRFWF9JTklUSUFMSVpFUjsKICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9y dGVfZXRoX3Zob3N0LmM6NTE6MzA6IGVycm9yOiDigJhiYXNlX2V0aF9hZGRy4oCZIGRlZmluZWQg YnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KICAgNTEgfCBzdGF0aWMgc3Ry dWN0IHJ0ZV9ldGhlcl9hZGRyIGJhc2VfZXRoX2FkZHIgPSB7CiAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9l dGhfdmhvc3QuYzozOToyMDogZXJyb3I6IOKAmHZhbGlkX2FyZ3VtZW50c+KAmSBkZWZpbmVkIGJ1 dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCiAgIDM5IHwgc3RhdGljIGNvbnN0 IGNoYXIgKnZhbGlkX2FyZ3VtZW50c1tdID0gewogICAgICB8ICAgICAgICAgICAgICAgICAgICBe fn5+fn5+fn5+fn5+fn4KY2MxOiBhbGwgd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMK WzE5NDEvMzA1OF0gR2VuZXJhdGluZyBydGVfbmV0X3ZkZXZfbmV0dnNjLnBtZC5jIHdpdGggYSBj dXN0b20gY29tbWFuZApbMTk0Mi8zMDU4XSBHZW5lcmF0aW5nIHJ0ZV9uZXRfdGFwLnN5bV9jaGsg d2l0aCBhIG1lc29uX2V4ZS5weSBjdXN0b20gY29tbWFuZApbMTk0My8zMDU4XSBDb21waWxpbmcg QyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmly dGlvLmMubwpbMTk0NC8zMDU4XSBHZW5lcmF0aW5nIHJ0ZV9uZXRfdGh1bmRlcnguc3ltX2NoayB3 aXRoIGEgbWVzb25fZXhlLnB5IGN1c3RvbSBjb21tYW5kClsxOTQ1LzMwNThdIENvbXBpbGluZyBD IG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3R4Z2JlLmEucC9uZXRfdHhnYmVfdHhnYmVf ZXRoZGV2LmMubwpbMTk0Ni8zMDU4XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9uZXQvdmly dGlvL2xpYnZpcnRpb19hdng1MTJfbGliLmEucC92aXJ0aW9fcnh0eF9wYWNrZWQuYy5vClsxOTQ3 LzMwNThdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3ZpcnRpby5h LnAvbmV0X3ZpcnRpb192aXJ0aW9fZXRoZGV2LmMubwpbMTk0OC8zMDU4XSBDb21waWxpbmcgQyBv YmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF90eGdiZS5hLnAvbmV0X3R4Z2JlX3R4Z2JlX3J4 dHguYy5vClsxOTQ5LzMwNThdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVf bmV0X29jdGVvbnR4Mi5hLnAvbmV0X29jdGVvbnR4Ml9vdHgyX3J4LmMubwpuaW5qYTogYnVpbGQg c3RvcHBlZAoKCgoKKkJ1aWxkIEZhaWxlZCAjOToKT1M6IFVCMjAwNC02NApUYXJnZXQ6IHg4Nl82 NC1uYXRpdmUtbGludXhhcHAtaWNjCkZBSUxFRDogZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9z dC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vIAppY2MgLUlkcml2ZXJzL2xpYnRtcF9y dGVfbmV0X3Zob3N0LmEucCAtSWRyaXZlcnMgLUkuLi9kcml2ZXJzIC1JZHJpdmVycy9uZXQvdmhv c3QgLUkuLi9kcml2ZXJzL25ldC92aG9zdCAtSWxpYi9ldGhkZXYgLUkuLi9saWIvZXRoZGV2IC1J LiAtSS4uIC1JY29uZmlnIC1JLi4vY29uZmlnIC1JbGliL2VhbC9pbmNsdWRlIC1JLi4vbGliL2Vh bC9pbmNsdWRlIC1JbGliL2VhbC9saW51eC9pbmNsdWRlIC1JLi4vbGliL2VhbC9saW51eC9pbmNs dWRlIC1JbGliL2VhbC94ODYvaW5jbHVkZSAtSS4uL2xpYi9lYWwveDg2L2luY2x1ZGUgLUlsaWIv ZWFsL2NvbW1vbiAtSS4uL2xpYi9lYWwvY29tbW9uIC1JbGliL2VhbCAtSS4uL2xpYi9lYWwgLUls aWIva3ZhcmdzIC1JLi4vbGliL2t2YXJncyAtSWxpYi9tZXRyaWNzIC1JLi4vbGliL21ldHJpY3Mg LUlsaWIvdGVsZW1ldHJ5IC1JLi4vbGliL3RlbGVtZXRyeSAtSWxpYi9uZXQgLUkuLi9saWIvbmV0 IC1JbGliL21idWYgLUkuLi9saWIvbWJ1ZiAtSWxpYi9tZW1wb29sIC1JLi4vbGliL21lbXBvb2wg LUlsaWIvcmluZyAtSS4uL2xpYi9yaW5nIC1JbGliL21ldGVyIC1JLi4vbGliL21ldGVyIC1JZHJp dmVycy9idXMvcGNpIC1JLi4vZHJpdmVycy9idXMvcGNpIC1JLi4vZHJpdmVycy9idXMvcGNpL2xp bnV4IC1JbGliL3BjaSAtSS4uL2xpYi9wY2kgLUlkcml2ZXJzL2J1cy92ZGV2IC1JLi4vZHJpdmVy cy9idXMvdmRldiAtSWxpYi92aG9zdCAtSS4uL2xpYi92aG9zdCAtSWxpYi9jcnlwdG9kZXYgLUku Li9saWIvY3J5cHRvZGV2IC1JbGliL3JjdSAtSS4uL2xpYi9yY3UgLUlsaWIvaGFzaCAtSS4uL2xp Yi9oYXNoIC1waXBlIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQgLVdhbGwgLXczIC1kaWFnLWRpc2Fi bGU6cmVtYXJrIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcuaCAtV2V4dHJhIC1XY2Fz dC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1zZWN1cml0eSAtV21pc3Npbmct ZGVjbGFyYXRpb25zIC1XbWlzc2luZy1wcm90b3R5cGVzIC1Xb2xkLXN0eWxlLWRlZmluaXRpb24g LVdwb2ludGVyLWFyaXRoIC1Xc2lnbi1jb21wYXJlIC1Xc3RyaWN0LXByb3RvdHlwZXMgLVd1bmRl ZiAtV3dyaXRlLXN0cmluZ3MgLVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVycyAtZGlhZy1k aXNhYmxlPTE4MSAtZGlhZy1kaXNhYmxlPTE4OCAtZGlhZy1kaXNhYmxlPTIyMDMgLWRpYWctZGlz YWJsZT0yMjc5IC1kaWFnLWRpc2FibGU9MjU1NyAtZGlhZy1kaXNhYmxlPTMxNzkgLWRpYWctZGlz YWJsZT0zNjU2IC1EX0dOVV9TT1VSQ0UgLWZQSUMgLW1hcmNoPW5hdGl2ZSAtREFMTE9XX0VYUEVS SU1FTlRBTF9BUEkgLURBTExPV19JTlRFUk5BTF9BUEkgLURSVEVfTE9HX0RFRkFVTFRfTE9HVFlQ RT1wbWQubmV0LnZob3N0IC1NRCAtTVEgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAv bmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vIC1NRiBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zo b3N0LmEucC9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8uZCAtbyBkcml2ZXJzL2xpYnRtcF9y dGVfbmV0X3Zob3N0LmEucC9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gLWMgLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhf dmhvc3QuYygzNDApOiBlcnJvcjogZXhwZWN0ZWQgYSAiKSIKICB7CiAgXgoKLi4vZHJpdmVycy9u ZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jKDQwNSk6IGVycm9yOiBleHByZXNzaW9uIG11c3QgaGF2 ZSBwb2ludGVyIHR5cGUKICAJCXItPnN0YXRzLT54c3RhdHNbVkhPU1RfQllURV0gKz0gYnVmc1tp XS0+cGt0X2xlbjsKICAJCV4KCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYyg0 MDcpOiBlcnJvciAjMTY3OiBhcmd1bWVudCBvZiB0eXBlICJzdHJ1Y3QgcnRlX21idWYgKioiIGlz IGluY29tcGF0aWJsZSB3aXRoIHBhcmFtZXRlciBvZiB0eXBlICJzdHJ1Y3QgcnRlX21idWYgKiIK ICAJCXZob3N0X3VwZGF0ZV9zaW5nbGVfcGFja2V0X3hzdGF0cyhyLCBidWZzKTsKICAJCSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCgouLi9kcml2ZXJzL25ldC92aG9zdC9y dGVfZXRoX3Zob3N0LmMoNDY2KTogZXJyb3IgIzE2NzogYXJndW1lbnQgb2YgdHlwZSAic3RydWN0 IHJ0ZV9tYnVmICoqIiBpcyBpbmNvbXBhdGlibGUgd2l0aCBwYXJhbWV0ZXIgb2YgdHlwZSAic3Ry dWN0IHJ0ZV9tYnVmICoiCiAgCQl2aG9zdF91cGRhdGVfc2luZ2xlX3BhY2tldF94c3RhdHMociwg YnVmcyk7CiAgCQkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgoKLi4vZHJp dmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jKDQ3NSk6IGVycm9yOiBleHByZXNzaW9uIG11 c3QgaGF2ZSBwb2ludGVyIHR5cGUKICAJci0+c3RhdHMtPnhzdGF0c1tWSE9TVF9CWVRFXSArPSBu Yl9ieXRlczsKICAJXgoKLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jKDQ3Nik6 IGVycm9yOiBzdHJ1Y3QgInZob3N0X3F1ZXVlIiBoYXMgbm8gZmllbGQgInhzdGF0cyIKICAJci0+ eHN0YXRzLT54c3RhdHNbVkhPU1RfTUlTU0VEX1BLVF0gKz0gbmJfbWlzc2VkOwogIAkgICBeCgou Li9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMoNDc3KTogZXJyb3I6IHN0cnVjdCAi dmhvc3RfcXVldWUiIGhhcyBubyBmaWVsZCAieHN0YXRzIgogIAlyLT54c3RhdHMtPnhzdGF0c1tW SE9TVF9VTklDQVNUX1BLVF0gKz0gbmJfbWlzc2VkOwogIAkgICBeCgpjb21waWxhdGlvbiBhYm9y dGVkIGZvciAuLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMgKGNvZGUgMikKWzE4 OTUvMzAwOV0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmlydGlv LmEucC9uZXRfdmlydGlvX3ZpcnRpby5jLm8KWzE4OTYvMzAwOV0gR2VuZXJhdGluZyBydGVfbmV0 X3NvZnRuaWMucG1kLmMgd2l0aCBhIGN1c3RvbSBjb21tYW5kClsxODk3LzMwMDldIENvbXBpbGlu ZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3ZkZXZfbmV0dnNjLmEucC9uZXRfdmRl dl9uZXR2c2NfdmRldl9uZXR2c2MuYy5vClsxODk4LzMwMDldIENvbXBpbGluZyBDIG9iamVjdCBk cml2ZXJzL25ldC90eGdiZS9iYXNlL2xpYnR4Z2JlX2Jhc2UuYS5wL3R4Z2JlX3BoeS5jLm8KWzE4 OTkvMzAwOV0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdHhnYmUu YS5wL25ldF90eGdiZV90eGdiZV9ldGhkZXZfdmYuYy5vClsxOTAwLzMwMDldIENvbXBpbGluZyBD IG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3RhcC5hLnAvbmV0X3RhcF9ydGVfZXRoX3Rh cC5jLm8KWzE5MDEvMzAwOV0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9u ZXRfdHhnYmUuYS5wL25ldF90eGdiZV90eGdiZV9ldGhkZXYuYy5vClsxOTAyLzMwMDldIENvbXBp bGluZyBDIG9iamVjdCBkcml2ZXJzL25ldC92aXJ0aW8vbGlidmlydGlvX2F2eDUxMl9saWIuYS5w L3ZpcnRpb19yeHR4X3BhY2tlZC5jLm8KWzE5MDMvMzAwOV0gQ29tcGlsaW5nIEMgb2JqZWN0IGRy aXZlcnMvbGlidG1wX3J0ZV9uZXRfdGh1bmRlcnguYS5wL25ldF90aHVuZGVyeF9uaWN2Zl9ldGhk ZXYuYy5vClsxOTA0LzMwMDldIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVf bmV0X29jdGVvbnR4Mi5hLnAvbmV0X29jdGVvbnR4Ml9vdHgyX3J4LmMubwpbMTkwNS8zMDA5XSBD b21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF9vY3Rlb250eDIuYS5wL25l dF9vY3Rlb250eDJfb3R4Ml90eC5jLm8KbmluamE6IGJ1aWxkIHN0b3BwZWQKCgoKCipCdWlsZCBG YWlsZWQgIzEwOgpPUzogVUIyMTA0LTY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1n Y2MKRkFJTEVEOiBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucC9uZXRfdmhvc3RfcnRl X2V0aF92aG9zdC5jLm8gCmdjYyAtSWRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wIC1J ZHJpdmVycyAtSS4uL2RyaXZlcnMgLUlkcml2ZXJzL25ldC92aG9zdCAtSS4uL2RyaXZlcnMvbmV0 L3Zob3N0IC1JbGliL2V0aGRldiAtSS4uL2xpYi9ldGhkZXYgLUkuIC1JLi4gLUljb25maWcgLUku Li9jb25maWcgLUlsaWIvZWFsL2luY2x1ZGUgLUkuLi9saWIvZWFsL2luY2x1ZGUgLUlsaWIvZWFs L2xpbnV4L2luY2x1ZGUgLUkuLi9saWIvZWFsL2xpbnV4L2luY2x1ZGUgLUlsaWIvZWFsL3g4Ni9p bmNsdWRlIC1JLi4vbGliL2VhbC94ODYvaW5jbHVkZSAtSWxpYi9lYWwvY29tbW9uIC1JLi4vbGli L2VhbC9jb21tb24gLUlsaWIvZWFsIC1JLi4vbGliL2VhbCAtSWxpYi9rdmFyZ3MgLUkuLi9saWIv a3ZhcmdzIC1JbGliL21ldHJpY3MgLUkuLi9saWIvbWV0cmljcyAtSWxpYi90ZWxlbWV0cnkgLUku Li9saWIvdGVsZW1ldHJ5IC1JbGliL25ldCAtSS4uL2xpYi9uZXQgLUlsaWIvbWJ1ZiAtSS4uL2xp Yi9tYnVmIC1JbGliL21lbXBvb2wgLUkuLi9saWIvbWVtcG9vbCAtSWxpYi9yaW5nIC1JLi4vbGli L3JpbmcgLUlsaWIvbWV0ZXIgLUkuLi9saWIvbWV0ZXIgLUlkcml2ZXJzL2J1cy9wY2kgLUkuLi9k cml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kvbGludXggLUlsaWIvcGNpIC1JLi4v bGliL3BjaSAtSWRyaXZlcnMvYnVzL3ZkZXYgLUkuLi9kcml2ZXJzL2J1cy92ZGV2IC1JbGliL3Zo b3N0IC1JLi4vbGliL3Zob3N0IC1JbGliL2NyeXB0b2RldiAtSS4uL2xpYi9jcnlwdG9kZXYgLUls aWIvcmN1IC1JLi4vbGliL3JjdSAtSWxpYi9oYXNoIC1JLi4vbGliL2hhc2ggLWZkaWFnbm9zdGlj cy1jb2xvcj1hbHdheXMgLXBpcGUgLURfRklMRV9PRkZTRVRfQklUUz02NCAtV2FsbCAtV2ludmFs aWQtcGNoIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcuaCAtV2V4dHJhIC1XY2FzdC1x dWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1ub25saXRlcmFsIC1XZm9ybWF0LXNl Y3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5nLXByb3RvdHlwZXMgLVduZXN0 ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9pbnRlci1hcml0aCAtV3NpZ24t Y29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1Xbm8t YWRkcmVzcy1vZi1wYWNrZWQtbWVtYmVyIC1Xbm8tcGFja2VkLW5vdC1hbGlnbmVkIC1Xbm8tbWlz c2luZy1maWVsZC1pbml0aWFsaXplcnMgLVduby16ZXJvLWxlbmd0aC1ib3VuZHMgLURfR05VX1NP VVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQRVJJTUVOVEFMX0FQSSAtREFMTE9X X0lOVEVSTkFMX0FQSSAtV25vLWZvcm1hdC10cnVuY2F0aW9uIC1EUlRFX0xPR19ERUZBVUxUX0xP R1RZUEU9cG1kLm5ldC52aG9zdCAtTUQgLU1RIGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3Qu YS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMubyAtTUYgZHJpdmVycy9saWJ0bXBfcnRlX25l dF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vLmQgLW8gZHJpdmVycy9saWJ0 bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vIC1jIC4uL2Ry aXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYwouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVf ZXRoX3Zob3N0LmM6MzQwOjE6IGVycm9yOiBleHBlY3RlZCDigJg74oCZLCDigJgs4oCZIG9yIOKA mCnigJkgYmVmb3JlIOKAmHvigJkgdG9rZW4KICAzNDAgfCB7CiAgICAgIHwgXgouLi9kcml2ZXJz L25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6Mjc5OjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0 YXRzX2dldOKAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rpb25d CiAgMjc5IHwgdmhvc3RfZGV2X3hzdGF0c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0 cnVjdCBydGVfZXRoX3hzdGF0ICp4c3RhdHMsCiAgICAgIHwgXn5+fn5+fn5+fn5+fn5+fn5+fn4K Li4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjI1MzoxOiBlcnJvcjog4oCYdmhv c3RfZGV2X3hzdGF0c19nZXRfbmFtZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9 dW51c2VkLWZ1bmN0aW9uXQogIDI1MyB8IHZob3N0X2Rldl94c3RhdHNfZ2V0X25hbWVzKHN0cnVj dCBydGVfZXRoX2RldiAqZGV2IF9fcnRlX3VudXNlZCwKICAgICAgfCBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjMxOjE6IGVy cm9yOiDigJh2aG9zdF9kZXZfeHN0YXRzX3Jlc2V04oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFst V2Vycm9yPXVudXNlZC1mdW5jdGlvbl0KICAyMzEgfCB2aG9zdF9kZXZfeHN0YXRzX3Jlc2V0KHN0 cnVjdCBydGVfZXRoX2RldiAqZGV2KQogICAgICB8IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4v ZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjE0MTozODogZXJyb3I6IOKAmHZyaW5n X3N0YXRlc+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVd CiAgMTQxIHwgc3RhdGljIHN0cnVjdCBydGVfdmhvc3RfdnJpbmdfc3RhdGUgKnZyaW5nX3N0YXRl c1tSVEVfTUFYX0VUSFBPUlRTXTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3Qu YzoxMjY6Mjg6IGVycm9yOiDigJhwbWRfbGlua+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdl cnJvcj11bnVzZWQtdmFyaWFibGVdCiAgMTI2IHwgc3RhdGljIHN0cnVjdCBydGVfZXRoX2xpbmsg cG1kX2xpbmsgPSB7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn4K Li4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNDoyNDogZXJyb3I6IOKAmGlu dGVybmFsX2xpc3RfbG9ja+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQt dmFyaWFibGVdCiAgMTI0IHwgc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBpbnRlcm5hbF9saXN0X2xv Y2sgPSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSOwogICAgICB8ICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhv c3QuYzo1MTozMDogZXJyb3I6IOKAmGJhc2VfZXRoX2FkZHLigJkgZGVmaW5lZCBidXQgbm90IHVz ZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQogICA1MSB8IHN0YXRpYyBzdHJ1Y3QgcnRlX2V0 aGVyX2FkZHIgYmFzZV9ldGhfYWRkciA9IHsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5j OjM5OjIwOiBlcnJvcjog4oCYdmFsaWRfYXJndW1lbnRz4oCZIGRlZmluZWQgYnV0IG5vdCB1c2Vk IFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KICAgMzkgfCBzdGF0aWMgY29uc3QgY2hhciAqdmFs aWRfYXJndW1lbnRzW10gPSB7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+ fn5+fgpjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwpbMTk0Mi8zMDcy XSBHZW5lcmF0aW5nIHJ0ZV9uZXRfdGFwLnN5bV9jaGsgd2l0aCBhIGN1c3RvbSBjb21tYW5kICh3 cmFwcGVkIGJ5IG1lc29uIHRvIGNhcHR1cmUgb3V0cHV0KQpbMTk0My8zMDcyXSBHZW5lcmF0aW5n IHJ0ZV9uZXRfdGh1bmRlcnguc3ltX2NoayB3aXRoIGEgY3VzdG9tIGNvbW1hbmQgKHdyYXBwZWQg YnkgbWVzb24gdG8gY2FwdHVyZSBvdXRwdXQpClsxOTQ0LzMwNzJdIENvbXBpbGluZyBDIG9iamVj dCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3ZkZXZfbmV0dnNjLmEucC9uZXRfdmRldl9uZXR2c2Nf dmRldl9uZXR2c2MuYy5vClsxOTQ1LzMwNzJdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xp YnRtcF9ydGVfbmV0X3ZpcnRpby5hLnAvbmV0X3ZpcnRpb192aXJ0aW8uYy5vClsxOTQ2LzMwNzJd IENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3ZpcnRpby5hLnAvbmV0 X3ZpcnRpb192aXJ0aW9fcGNpX2V0aGRldi5jLm8KWzE5NDcvMzA3Ml0gQ29tcGlsaW5nIEMgb2Jq ZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfb2N0ZW9udHgyLmEucC9uZXRfb2N0ZW9udHgyX290 eDJfcnguYy5vClsxOTQ4LzMwNzJdIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL25ldC92aXJ0 aW8vbGlidmlydGlvX2F2eDUxMl9saWIuYS5wL3ZpcnRpb19yeHR4X3BhY2tlZC5jLm8KWzE5NDkv MzA3Ml0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmlydGlvLmEu cC9uZXRfdmlydGlvX3ZpcnRpb19ldGhkZXYuYy5vClsxOTUwLzMwNzJdIENvbXBpbGluZyBDIG9i amVjdCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3R4Z2JlLmEucC9uZXRfdHhnYmVfdHhnYmVfcnh0 eC5jLm8KbmluamE6IGJ1aWxkIHN0b3BwZWQKCgoKCipCdWlsZCBGYWlsZWQgIzExOgpPUzogVUIy MDA0LTY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1kb2MKRkFJTEVEOiBkcml2ZXJz L2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zob3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5j Lm8gCmdjYyAtSWRyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmhvc3RAc3RhIC1JZHJpdmVy cyAtSS4uL2RyaXZlcnMgLUlkcml2ZXJzL25ldC92aG9zdCAtSS4uL2RyaXZlcnMvbmV0L3Zob3N0 IC1JbGliL2V0aGRldiAtSS4uL2xpYi9ldGhkZXYgLUkuIC1JLi4vIC1JY29uZmlnIC1JLi4vY29u ZmlnIC1JbGliL2VhbC9pbmNsdWRlIC1JLi4vbGliL2VhbC9pbmNsdWRlIC1JbGliL2VhbC9saW51 eC9pbmNsdWRlIC1JLi4vbGliL2VhbC9saW51eC9pbmNsdWRlIC1JbGliL2VhbC94ODYvaW5jbHVk ZSAtSS4uL2xpYi9lYWwveDg2L2luY2x1ZGUgLUlsaWIvZWFsL2NvbW1vbiAtSS4uL2xpYi9lYWwv Y29tbW9uIC1JbGliL2VhbCAtSS4uL2xpYi9lYWwgLUlsaWIva3ZhcmdzIC1JLi4vbGliL2t2YXJn cyAtSWxpYi90ZWxlbWV0cnkvLi4vbWV0cmljcyAtSS4uL2xpYi90ZWxlbWV0cnkvLi4vbWV0cmlj cyAtSWxpYi90ZWxlbWV0cnkgLUkuLi9saWIvdGVsZW1ldHJ5IC1JbGliL25ldCAtSS4uL2xpYi9u ZXQgLUlsaWIvbWJ1ZiAtSS4uL2xpYi9tYnVmIC1JbGliL21lbXBvb2wgLUkuLi9saWIvbWVtcG9v bCAtSWxpYi9yaW5nIC1JLi4vbGliL3JpbmcgLUlsaWIvbWV0ZXIgLUkuLi9saWIvbWV0ZXIgLUlk cml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kv bGludXggLUlsaWIvcGNpIC1JLi4vbGliL3BjaSAtSWRyaXZlcnMvYnVzL3ZkZXYgLUkuLi9kcml2 ZXJzL2J1cy92ZGV2IC1JbGliL3Zob3N0IC1JLi4vbGliL3Zob3N0IC1JbGliL2NyeXB0b2RldiAt SS4uL2xpYi9jcnlwdG9kZXYgLUlsaWIvcmN1IC1JLi4vbGliL3JjdSAtSWxpYi9oYXNoIC1JLi4v bGliL2hhc2ggLWZkaWFnbm9zdGljcy1jb2xvcj1hbHdheXMgLXBpcGUgLURfRklMRV9PRkZTRVRf QklUUz02NCAtV2FsbCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25m aWcuaCAtV2V4dHJhIC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1u b25saXRlcmFsIC1XZm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNz aW5nLXByb3RvdHlwZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1X cG9pbnRlci1hcml0aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYg LVd3cml0ZS1zdHJpbmdzIC1Xbm8tYWRkcmVzcy1vZi1wYWNrZWQtbWVtYmVyIC1Xbm8tcGFja2Vk LW5vdC1hbGlnbmVkIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMgLVduby16ZXJvLWxl bmd0aC1ib3VuZHMgLURfR05VX1NPVVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQ RVJJTUVOVEFMX0FQSSAtREFMTE9XX0lOVEVSTkFMX0FQSSAtV25vLWZvcm1hdC10cnVuY2F0aW9u IC1EUlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9cG1kLm5ldC52aG9zdCAtTUQgLU1RICdkcml2ZXJz L2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zob3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5j Lm8nIC1NRiAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aG9zdEBzdGEvbmV0X3Zob3N0 X3J0ZV9ldGhfdmhvc3QuYy5vLmQnIC1vICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zo b3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8nIC1jIC4uL2RyaXZlcnMvbmV0L3Zo b3N0L3J0ZV9ldGhfdmhvc3QuYwouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6 MzQwOjE6IGVycm9yOiBleHBlY3RlZCDigJg74oCZLCDigJgs4oCZIG9yIOKAmCnigJkgYmVmb3Jl IOKAmHvigJkgdG9rZW4KICAzNDAgfCB7CiAgICAgIHwgXgouLi9kcml2ZXJzL25ldC92aG9zdC9y dGVfZXRoX3Zob3N0LmM6Mjc5OjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRzX2dldOKAmSBk ZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rpb25dCiAgMjc5IHwgdmhv c3RfZGV2X3hzdGF0c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0cnVjdCBydGVfZXRo X3hzdGF0ICp4c3RhdHMsCiAgICAgIHwgXn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9u ZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjI1MzoxOiBlcnJvcjog4oCYdmhvc3RfZGV2X3hzdGF0 c19nZXRfbmFtZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1bmN0 aW9uXQogIDI1MyB8IHZob3N0X2Rldl94c3RhdHNfZ2V0X25hbWVzKHN0cnVjdCBydGVfZXRoX2Rl diAqZGV2IF9fcnRlX3VudXNlZCwKICAgICAgfCBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgou Li9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjMxOjE6IGVycm9yOiDigJh2aG9z dF9kZXZfeHN0YXRzX3Jlc2V04oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNl ZC1mdW5jdGlvbl0KICAyMzEgfCB2aG9zdF9kZXZfeHN0YXRzX3Jlc2V0KHN0cnVjdCBydGVfZXRo X2RldiAqZGV2KQogICAgICB8IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQv dmhvc3QvcnRlX2V0aF92aG9zdC5jOjE0MTozODogZXJyb3I6IOKAmHZyaW5nX3N0YXRlc+KAmSBk ZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCiAgMTQxIHwgc3Rh dGljIHN0cnVjdCBydGVfdmhvc3RfdnJpbmdfc3RhdGUgKnZyaW5nX3N0YXRlc1tSVEVfTUFYX0VU SFBPUlRTXTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+ fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMjY6Mjg6IGVy cm9yOiDigJhwbWRfbGlua+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQt dmFyaWFibGVdCiAgMTI2IHwgc3RhdGljIHN0cnVjdCBydGVfZXRoX2xpbmsgcG1kX2xpbmsgPSB7 CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn4KLi4vZHJpdmVycy9u ZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNDoyNDogZXJyb3I6IOKAmGludGVybmFsX2xpc3Rf bG9ja+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCiAg MTI0IHwgc3RhdGljIHB0aHJlYWRfbXV0ZXhfdCBpbnRlcm5hbF9saXN0X2xvY2sgPSBQVEhSRUFE X01VVEVYX0lOSVRJQUxJWkVSOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+ fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzo1MTozMDog ZXJyb3I6IOKAmGJhc2VfZXRoX2FkZHLigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9 dW51c2VkLXZhcmlhYmxlXQogICA1MSB8IHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aGVyX2FkZHIgYmFz ZV9ldGhfYWRkciA9IHsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjM5OjIwOiBlcnJv cjog4oCYdmFsaWRfYXJndW1lbnRz4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVu dXNlZC12YXJpYWJsZV0KICAgMzkgfCBzdGF0aWMgY29uc3QgY2hhciAqdmFsaWRfYXJndW1lbnRz W10gPSB7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fgpjYzE6IGFs bCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwpbMTgxNC8yNjUwXSBDb21waWxpbmcg QyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdHhnYmVAc3RhL25ldF90eGdi ZV90eGdiZV90bS5jLm8nLgpbMTgxNS8yNjUwXSBDb21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMv YTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmRldl9uZXR2c2NAc3RhL25ldF92ZGV2X25ldHZzY192ZGV2 X25ldHZzYy5jLm8nLgpbMTgxNi8yNjUwXSBDb21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvYTcx NTE4MUBAdG1wX3J0ZV9uZXRfdmlydGlvQHN0YS9uZXRfdmlydGlvX3ZpcnRpb191c2VyX3Zob3N0 X2tlcm5lbF90YXAuYy5vJy4KWzE4MTcvMjY1MF0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJz L2E3MTUxODFAQHRtcF9ydGVfbmV0X3ZpcnRpb0BzdGEvbmV0X3ZpcnRpb192aXJ0aW8uYy5vJy4K WzE4MTgvMjY1MF0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVf bmV0X3R4Z2JlQHN0YS9uZXRfdHhnYmVfdHhnYmVfZXRoZGV2LmMubycuClsxODE5LzI2NTBdIENv bXBpbGluZyBDIG9iamVjdCAnZHJpdmVycy9uZXQvdmlydGlvLzIwNjcwZjFAQHZpcnRpb19hdng1 MTJfbGliQHN0YS92aXJ0aW9fcnh0eF9wYWNrZWQuYy5vJy4KWzE4MjAvMjY1MF0gQ29tcGlsaW5n IEMgb2JqZWN0ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3ZpcnRpb0BzdGEvbmV0X3Zp cnRpb192aXJ0aW9fZXRoZGV2LmMubycuClsxODIxLzI2NTBdIENvbXBpbGluZyBDIG9iamVjdCAn ZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF90eGdiZUBzdGEvbmV0X3R4Z2JlX3R4Z2JlX3J4 dHguYy5vJy4KWzE4MjIvMjY1MF0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJzL2E3MTUxODFA QHRtcF9ydGVfbmV0X29jdGVvbnR4MkBzdGEvbmV0X29jdGVvbnR4Ml9vdHgyX3J4LmMubycuCm5p bmphOiBidWlsZCBzdG9wcGVkCgoKCgoqQnVpbGQgRmFpbGVkICMxMjoKT1M6IEZDMzQtNjQKVGFy Z2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYwpGQUlMRUQ6IGRyaXZlcnMvbGlidG1wX3J0 ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMubyAKZ2NjIC1JZHJpdmVy cy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAgLUlkcml2ZXJzIC1JLi4vZHJpdmVycyAtSWRyaXZl cnMvbmV0L3Zob3N0IC1JLi4vZHJpdmVycy9uZXQvdmhvc3QgLUlsaWIvZXRoZGV2IC1JLi4vbGli L2V0aGRldiAtSS4gLUkuLiAtSWNvbmZpZyAtSS4uL2NvbmZpZyAtSWxpYi9lYWwvaW5jbHVkZSAt SS4uL2xpYi9lYWwvaW5jbHVkZSAtSWxpYi9lYWwvbGludXgvaW5jbHVkZSAtSS4uL2xpYi9lYWwv bGludXgvaW5jbHVkZSAtSWxpYi9lYWwveDg2L2luY2x1ZGUgLUkuLi9saWIvZWFsL3g4Ni9pbmNs dWRlIC1JbGliL2VhbC9jb21tb24gLUkuLi9saWIvZWFsL2NvbW1vbiAtSWxpYi9lYWwgLUkuLi9s aWIvZWFsIC1JbGliL2t2YXJncyAtSS4uL2xpYi9rdmFyZ3MgLUlsaWIvbWV0cmljcyAtSS4uL2xp Yi9tZXRyaWNzIC1JbGliL3RlbGVtZXRyeSAtSS4uL2xpYi90ZWxlbWV0cnkgLUlsaWIvbmV0IC1J Li4vbGliL25ldCAtSWxpYi9tYnVmIC1JLi4vbGliL21idWYgLUlsaWIvbWVtcG9vbCAtSS4uL2xp Yi9tZW1wb29sIC1JbGliL3JpbmcgLUkuLi9saWIvcmluZyAtSWxpYi9tZXRlciAtSS4uL2xpYi9t ZXRlciAtSWRyaXZlcnMvYnVzL3BjaSAtSS4uL2RyaXZlcnMvYnVzL3BjaSAtSS4uL2RyaXZlcnMv YnVzL3BjaS9saW51eCAtSWxpYi9wY2kgLUkuLi9saWIvcGNpIC1JZHJpdmVycy9idXMvdmRldiAt SS4uL2RyaXZlcnMvYnVzL3ZkZXYgLUlsaWIvdmhvc3QgLUkuLi9saWIvdmhvc3QgLUlsaWIvY3J5 cHRvZGV2IC1JLi4vbGliL2NyeXB0b2RldiAtSWxpYi9yY3UgLUkuLi9saWIvcmN1IC1JbGliL2hh c2ggLUkuLi9saWIvaGFzaCAtZmRpYWdub3N0aWNzLWNvbG9yPWFsd2F5cyAtcGlwZSAtRF9GSUxF X09GRlNFVF9CSVRTPTY0IC1XYWxsIC1XaW52YWxpZC1wY2ggLVdlcnJvciAtTzMgLWluY2x1ZGUg cnRlX2NvbmZpZy5oIC1XZXh0cmEgLVdjYXN0LXF1YWwgLVdkZXByZWNhdGVkIC1XZm9ybWF0IC1X Zm9ybWF0LW5vbmxpdGVyYWwgLVdmb3JtYXQtc2VjdXJpdHkgLVdtaXNzaW5nLWRlY2xhcmF0aW9u cyAtV21pc3NpbmctcHJvdG90eXBlcyAtV25lc3RlZC1leHRlcm5zIC1Xb2xkLXN0eWxlLWRlZmlu aXRpb24gLVdwb2ludGVyLWFyaXRoIC1Xc2lnbi1jb21wYXJlIC1Xc3RyaWN0LXByb3RvdHlwZXMg LVd1bmRlZiAtV3dyaXRlLXN0cmluZ3MgLVduby1hZGRyZXNzLW9mLXBhY2tlZC1tZW1iZXIgLVdu by1wYWNrZWQtbm90LWFsaWduZWQgLVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVycyAtV25v LXplcm8tbGVuZ3RoLWJvdW5kcyAtRF9HTlVfU09VUkNFIC1mUElDIC1tYXJjaD1uYXRpdmUgLURB TExPV19FWFBFUklNRU5UQUxfQVBJIC1EQUxMT1dfSU5URVJOQUxfQVBJIC1Xbm8tZm9ybWF0LXRy dW5jYXRpb24gLURSVEVfTE9HX0RFRkFVTFRfTE9HVFlQRT1wbWQubmV0LnZob3N0IC1NRCAtTVEg ZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3Qu Yy5vIC1NRiBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucC9uZXRfdmhvc3RfcnRlX2V0 aF92aG9zdC5jLm8uZCAtbyBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucC9uZXRfdmhv c3RfcnRlX2V0aF92aG9zdC5jLm8gLWMgLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9z dC5jCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzozNDA6MTogZXJyb3I6IGV4 cGVjdGVkIOKAmDvigJksIOKAmCzigJkgb3Ig4oCYKeKAmSBiZWZvcmUg4oCYe+KAmSB0b2tlbgog IDM0MCB8IHsKICAgICAgfCBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoy Nzk6MTogZXJyb3I6IOKAmHZob3N0X2Rldl94c3RhdHNfZ2V04oCZIGRlZmluZWQgYnV0IG5vdCB1 c2VkIFstV2Vycm9yPXVudXNlZC1mdW5jdGlvbl0KICAyNzkgfCB2aG9zdF9kZXZfeHN0YXRzX2dl dChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwgc3RydWN0IHJ0ZV9ldGhfeHN0YXQgKnhzdGF0cywK ICAgICAgfCBefn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRo X3Zob3N0LmM6MjUzOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRzX2dldF9uYW1lc+KAmSBk ZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rpb25dCiAgMjUzIHwgdmhv c3RfZGV2X3hzdGF0c19nZXRfbmFtZXMoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYgX19ydGVfdW51 c2VkLAogICAgICB8IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zo b3N0L3J0ZV9ldGhfdmhvc3QuYzoyMzE6MTogZXJyb3I6IOKAmHZob3N0X2Rldl94c3RhdHNfcmVz ZXTigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1bmN0aW9uXQogIDIz MSB8IHZob3N0X2Rldl94c3RhdHNfcmVzZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpCiAgICAg IHwgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zo b3N0LmM6MTQxOjM4OiBlcnJvcjog4oCYdnJpbmdfc3RhdGVz4oCZIGRlZmluZWQgYnV0IG5vdCB1 c2VkIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KICAxNDEgfCBzdGF0aWMgc3RydWN0IHJ0ZV92 aG9zdF92cmluZ19zdGF0ZSAqdnJpbmdfc3RhdGVzW1JURV9NQVhfRVRIUE9SVFNdOwogICAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn4KLi4vZHJp dmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNjoyODogZXJyb3I6IOKAmHBtZF9saW5r 4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KICAxMjYg fCBzdGF0aWMgc3RydWN0IHJ0ZV9ldGhfbGluayBwbWRfbGluayA9IHsKICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRo X3Zob3N0LmM6MTI0OjI0OiBlcnJvcjog4oCYaW50ZXJuYWxfbGlzdF9sb2Nr4oCZIGRlZmluZWQg YnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KICAxMjQgfCBzdGF0aWMgcHRo cmVhZF9tdXRleF90IGludGVybmFsX2xpc3RfbG9jayA9IFBUSFJFQURfTVVURVhfSU5JVElBTEla RVI7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn4KLi4v ZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjUxOjMwOiBlcnJvcjog4oCYYmFzZV9l dGhfYWRkcuKAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVd CiAgIDUxIHwgc3RhdGljIHN0cnVjdCBydGVfZXRoZXJfYWRkciBiYXNlX2V0aF9hZGRyID0gewog ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fgouLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6Mzk6MjA6IGVycm9yOiDigJh2YWxpZF9hcmd1 bWVudHPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQog ICAzOSB8IHN0YXRpYyBjb25zdCBjaGFyICp2YWxpZF9hcmd1bWVudHNbXSA9IHsKICAgICAgfCAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+CmNjMTogYWxsIHdhcm5pbmdzIGJlaW5n IHRyZWF0ZWQgYXMgZXJyb3JzCls5NjQvMzAzN10gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMv bGlidG1wX3J0ZV9tZW1wb29sX2J1Y2tldC5hLnAvbWVtcG9vbF9idWNrZXRfcnRlX21lbXBvb2xf YnVja2V0LmMubwpbOTY1LzMwMzddIEdlbmVyYXRpbmcgcnRlX21lbXBvb2xfb2N0ZW9udHgyLnN5 bV9jaGsgd2l0aCBhIG1lc29uX2V4ZS5weSBjdXN0b20gY29tbWFuZApbOTY2LzMwMzddIEdlbmVy YXRpbmcgcnRlX21lbXBvb2xfcmluZy5zeW1fY2hrIHdpdGggYSBtZXNvbl9leGUucHkgY3VzdG9t IGNvbW1hbmQKWzk2Ny8zMDM3XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRl X25ldF9hZl9wYWNrZXQuYS5wL25ldF9hZl9wYWNrZXRfcnRlX2V0aF9hZl9wYWNrZXQuYy5vCls5 NjgvMzAzN10gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfYXJrLmEu cC9uZXRfYXJrX2Fya19tcHUuYy5vCls5NjkvMzAzN10gR2VuZXJhdGluZyBydGVfbWVtcG9vbF9z dGFjay5zeW1fY2hrIHdpdGggYSBtZXNvbl9leGUucHkgY3VzdG9tIGNvbW1hbmQKWzk3MC8zMDM3 XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25l dF92aXJ0aW9fdmlydGlvLmMubwpbOTcxLzMwMzddIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJz L25ldC92aXJ0aW8vbGlidmlydGlvX2F2eDUxMl9saWIuYS5wL3ZpcnRpb19yeHR4X3BhY2tlZC5j Lm8KWzk3Mi8zMDM3XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92 aXJ0aW8uYS5wL25ldF92aXJ0aW9fdmlydGlvX2V0aGRldi5jLm8KWzk3My8zMDM3XSBHZW5lcmF0 aW5nIHJ0ZV9jb21tb25fY254ay5zeW1fY2hrIHdpdGggYSBtZXNvbl9leGUucHkgY3VzdG9tIGNv bW1hbmQKWzk3NC8zMDM3XSBHZW5lcmF0aW5nIHJ0ZV9jb21tb25fc2ZjX2VmeC5zeW1fY2hrIHdp dGggYSBtZXNvbl9leGUucHkgY3VzdG9tIGNvbW1hbmQKbmluamE6IGJ1aWxkIHN0b3BwZWQKCgoK CipCdWlsZCBGYWlsZWQgIzEzOgpPUzogRkMzNC02NApUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcKRkFJTEVEOiBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEucC9uZXRf dmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gCmNsYW5nIC1JZHJpdmVycy9saWJ0bXBfcnRlX25ldF92 aG9zdC5hLnAgLUlkcml2ZXJzIC1JLi4vZHJpdmVycyAtSWRyaXZlcnMvbmV0L3Zob3N0IC1JLi4v ZHJpdmVycy9uZXQvdmhvc3QgLUlsaWIvZXRoZGV2IC1JLi4vbGliL2V0aGRldiAtSS4gLUkuLiAt SWNvbmZpZyAtSS4uL2NvbmZpZyAtSWxpYi9lYWwvaW5jbHVkZSAtSS4uL2xpYi9lYWwvaW5jbHVk ZSAtSWxpYi9lYWwvbGludXgvaW5jbHVkZSAtSS4uL2xpYi9lYWwvbGludXgvaW5jbHVkZSAtSWxp Yi9lYWwveDg2L2luY2x1ZGUgLUkuLi9saWIvZWFsL3g4Ni9pbmNsdWRlIC1JbGliL2VhbC9jb21t b24gLUkuLi9saWIvZWFsL2NvbW1vbiAtSWxpYi9lYWwgLUkuLi9saWIvZWFsIC1JbGliL2t2YXJn cyAtSS4uL2xpYi9rdmFyZ3MgLUlsaWIvbWV0cmljcyAtSS4uL2xpYi9tZXRyaWNzIC1JbGliL3Rl bGVtZXRyeSAtSS4uL2xpYi90ZWxlbWV0cnkgLUlsaWIvbmV0IC1JLi4vbGliL25ldCAtSWxpYi9t YnVmIC1JLi4vbGliL21idWYgLUlsaWIvbWVtcG9vbCAtSS4uL2xpYi9tZW1wb29sIC1JbGliL3Jp bmcgLUkuLi9saWIvcmluZyAtSWxpYi9tZXRlciAtSS4uL2xpYi9tZXRlciAtSWRyaXZlcnMvYnVz L3BjaSAtSS4uL2RyaXZlcnMvYnVzL3BjaSAtSS4uL2RyaXZlcnMvYnVzL3BjaS9saW51eCAtSWxp Yi9wY2kgLUkuLi9saWIvcGNpIC1JZHJpdmVycy9idXMvdmRldiAtSS4uL2RyaXZlcnMvYnVzL3Zk ZXYgLUlsaWIvdmhvc3QgLUkuLi9saWIvdmhvc3QgLUlsaWIvY3J5cHRvZGV2IC1JLi4vbGliL2Ny eXB0b2RldiAtSWxpYi9yY3UgLUkuLi9saWIvcmN1IC1JbGliL2hhc2ggLUkuLi9saWIvaGFzaCAt WGNsYW5nIC1mY29sb3ItZGlhZ25vc3RpY3MgLXBpcGUgLURfRklMRV9PRkZTRVRfQklUUz02NCAt V2FsbCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcuaCAtV2V4 dHJhIC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1ub25saXRlcmFs IC1XZm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5nLXByb3Rv dHlwZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9pbnRlci1h cml0aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3cml0ZS1z dHJpbmdzIC1Xbm8tYWRkcmVzcy1vZi1wYWNrZWQtbWVtYmVyIC1Xbm8tbWlzc2luZy1maWVsZC1p bml0aWFsaXplcnMgLURfR05VX1NPVVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQ RVJJTUVOVEFMX0FQSSAtREFMTE9XX0lOVEVSTkFMX0FQSSAtRFJURV9MT0dfREVGQVVMVF9MT0dU WVBFPXBtZC5uZXQudmhvc3QgLU1EIC1NUSBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3Zob3N0LmEu cC9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gLU1GIGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRf dmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMuby5kIC1vIGRyaXZlcnMvbGlidG1w X3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMubyAtYyAuLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMKLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0 aF92aG9zdC5jOjM0MDoxOiBlcnJvcjogZXhwZWN0ZWQgJyknCnsKXgouLi9kcml2ZXJzL25ldC92 aG9zdC9ydGVfZXRoX3Zob3N0LmM6MzM5OjM0OiBub3RlOiB0byBtYXRjaCB0aGlzICcoJwp2aG9z dF91cGRhdGVfc2luZ2xlX3BhY2tldF94c3RhdHMoc3RydWN0IHZob3N0X3F1ZXVlICp2cSwgc3Ry dWN0IHJ0ZV9tYnVmICpidWYKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9k cml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6OTg0Ojk6IGVycm9yOiBpbXBsaWNpdCBk ZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZmluZF9pbnRlcm5hbF9yZXNvdXJjZScgaXMgaW52YWxp ZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAg ICBsaXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJjZShpbnRlcm5hbC0+aWZhY2VfbmFtZSk7CiAg ICAgICAgICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjk4NDo3 OiBlcnJvcjogaW5jb21wYXRpYmxlIGludGVnZXIgdG8gcG9pbnRlciBjb252ZXJzaW9uIGFzc2ln bmluZyB0byAnc3RydWN0IGludGVybmFsX2xpc3QgKicgZnJvbSAnaW50JyBbLVdlcnJvciwtV2lu dC1jb252ZXJzaW9uXQogICAgICAgIGxpc3QgPSBmaW5kX2ludGVybmFsX3Jlc291cmNlKGludGVy bmFsLT5pZmFjZV9uYW1lKTsKICAgICAgICAgICAgIF4gfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5j OjEwMTU6MTQ6IGVycm9yOiB1c2Ugb2YgdW5kZWNsYXJlZCBpZGVudGlmaWVyICd2aG9zdF9vcHMn CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZob3N0X29w cykgPCAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjExMzI6MjogZXJyb3I6IGlt cGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdxdWV1ZV9zZXR1cCcgaXMgaW52YWxpZCBp biBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICBx dWV1ZV9zZXR1cChldGhfZGV2LCBpbnRlcm5hbCk7CiAgICAgICAgXgouLi9kcml2ZXJzL25ldC92 aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTEzNjo4OiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24g b2YgZnVuY3Rpb24gJ2V0aF92aG9zdF9pbnN0YWxsX2ludHInIGlzIGludmFsaWQgaW4gQzk5IFst V2Vycm9yLC1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgICAgICAgICAgICAgICAg ICAgICAgIGlmIChldGhfdmhvc3RfaW5zdGFsbF9pbnRyKGV0aF9kZXYpIDwgMCkgewogICAgICAg ICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0 LmM6MTE0NToyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ3VwZGF0 ZV9xdWV1aW5nX3N0YXR1cycgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1m dW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICB1cGRhdGVfcXVldWluZ19zdGF0dXMoZXRoX2Rl dik7CiAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTE1Nzoy OiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ3VwZGF0ZV9xdWV1aW5n X3N0YXR1cycgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1k ZWNsYXJhdGlvbl0KICAgICAgICB1cGRhdGVfcXVldWluZ19zdGF0dXMoZGV2KTsKICAgICAgICBe Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMTc4Ojk6IGVycm9yOiBpbXBs aWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZmluZF9pbnRlcm5hbF9yZXNvdXJjZScgaXMg aW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0K ICAgICAgICBsaXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJjZShpbnRlcm5hbC0+aWZhY2VfbmFt ZSk7CiAgICAgICAgICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5j OjExNzg6NzogZXJyb3I6IGluY29tcGF0aWJsZSBpbnRlZ2VyIHRvIHBvaW50ZXIgY29udmVyc2lv biBhc3NpZ25pbmcgdG8gJ3N0cnVjdCBpbnRlcm5hbF9saXN0IConIGZyb20gJ2ludCcgWy1XZXJy b3IsLVdpbnQtY29udmVyc2lvbl0KICAgICAgICBsaXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJj ZShpbnRlcm5hbC0+aWZhY2VfbmFtZSk7CiAgICAgICAgICAgICBeIH5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhf dmhvc3QuYzoxMzk0OjI2OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRo X3J4cV9pbnRyX2VuYWJsZSc7IGRpZCB5b3UgbWVhbiAncnRlX2ludHJfZW5hYmxlJz8KICAgICAg ICAucnhfcXVldWVfaW50cl9lbmFibGUgPSBldGhfcnhxX2ludHJfZW5hYmxlLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBydGVfaW50cl9lbmFibGUKLi4vbGliL2VhbC9pbmNsdWRlL3J0ZV9p bnRlcnJ1cHRzLmg6MTMyOjU6IG5vdGU6ICdydGVfaW50cl9lbmFibGUnIGRlY2xhcmVkIGhlcmUK aW50IHJ0ZV9pbnRyX2VuYWJsZShjb25zdCBzdHJ1Y3QgcnRlX2ludHJfaGFuZGxlICppbnRyX2hh bmRsZSk7CiAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMzk1OjI3 OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmllciAnZXRoX3J4cV9pbnRyX2Rpc2Fi bGUnOyBkaWQgeW91IG1lYW4gJ3J0ZV9pbnRyX2Rpc2FibGUnPwogICAgICAgIC5yeF9xdWV1ZV9p bnRyX2Rpc2FibGUgPSBldGhfcnhxX2ludHJfZGlzYWJsZSwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcnRlX2ludHJfZGlzYWJsZQouLi9saWIvZWFsL2luY2x1ZGUvcnRlX2ludGVycnVw dHMuaDoxNDQ6NTogbm90ZTogJ3J0ZV9pbnRyX2Rpc2FibGUnIGRlY2xhcmVkIGhlcmUKaW50IHJ0 ZV9pbnRyX2Rpc2FibGUoY29uc3Qgc3RydWN0IHJ0ZV9pbnRyX2hhbmRsZSAqaW50cl9oYW5kbGUp OwogICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTM5NDoyNjogZXJy b3I6IGluY29tcGF0aWJsZSBmdW5jdGlvbiBwb2ludGVyIHR5cGVzIGluaXRpYWxpemluZyAnZXRo X3J4X2VuYWJsZV9pbnRyX3QnIChha2EgJ2ludCAoKikoc3RydWN0IHJ0ZV9ldGhfZGV2ICosIHVu c2lnbmVkIHNob3J0KScpIHdpdGggYW4gZXhwcmVzc2lvbiBvZiB0eXBlICdpbnQgKGNvbnN0IHN0 cnVjdCBydGVfaW50cl9oYW5kbGUgKiknIFstV2Vycm9yLC1XaW5jb21wYXRpYmxlLWZ1bmN0aW9u LXBvaW50ZXItdHlwZXNdCiAgICAgICAgLnJ4X3F1ZXVlX2ludHJfZW5hYmxlID0gZXRoX3J4cV9p bnRyX2VuYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+ fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMzk1OjI3OiBlcnJv cjogaW5jb21wYXRpYmxlIGZ1bmN0aW9uIHBvaW50ZXIgdHlwZXMgaW5pdGlhbGl6aW5nICdldGhf cnhfZGlzYWJsZV9pbnRyX3QnIChha2EgJ2ludCAoKikoc3RydWN0IHJ0ZV9ldGhfZGV2ICosIHVu c2lnbmVkIHNob3J0KScpIHdpdGggYW4gZXhwcmVzc2lvbiBvZiB0eXBlICdpbnQgKGNvbnN0IHN0 cnVjdCBydGVfaW50cl9oYW5kbGUgKiknIFstV2Vycm9yLC1XaW5jb21wYXRpYmxlLWZ1bmN0aW9u LXBvaW50ZXItdHlwZXNdCiAgICAgICAgLnJ4X3F1ZXVlX2ludHJfZGlzYWJsZSA9IGV0aF9yeHFf aW50cl9kaXNhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTQ1MzoyNjog ZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ2V0aF92aG9zdF9yeCcKICAgICAg ICBldGhfZGV2LT5yeF9wa3RfYnVyc3QgPSBldGhfdmhvc3Rfcng7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTQ1 NDoyNjogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ2V0aF92aG9zdF90eCcK ICAgICAgICBldGhfZGV2LT50eF9wa3RfYnVyc3QgPSBldGhfdmhvc3RfdHg7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0 LmM6MTUyMToyNzogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIgJ2V0aF92aG9z dF9yeCcKICAgICAgICAgICAgICAgIGV0aF9kZXYtPnJ4X3BrdF9idXJzdCA9IGV0aF92aG9zdF9y eDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KLi4vZHJpdmVycy9u ZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjE1MjI6Mjc6IGVycm9yOiB1c2Ugb2YgdW5kZWNsYXJl ZCBpZGVudGlmaWVyICdldGhfdmhvc3RfdHgnCiAgICAgICAgICAgICAgICBldGhfZGV2LT50eF9w a3RfYnVyc3QgPSBldGhfdmhvc3RfdHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeCjE4IGVycm9ycyBnZW5lcmF0ZWQuCls5NDUvMzAzN10gQ29tcGlsaW5nIEMgb2Jq ZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9tZW1wb29sX3N0YWNrLmEucC9tZW1wb29sX3N0YWNrX3J0 ZV9tZW1wb29sX3N0YWNrLmMubwpbOTQ2LzMwMzddIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJz L2xpYnRtcF9ydGVfbWVtcG9vbF9vY3Rlb250eDIuYS5wL21lbXBvb2xfb2N0ZW9udHgyX290eDJf bWVtcG9vbF9vcHMuYy5vCls5NDcvMzAzN10gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGli dG1wX3J0ZV9tZW1wb29sX2J1Y2tldC5hLnAvbWVtcG9vbF9idWNrZXRfcnRlX21lbXBvb2xfYnVj a2V0LmMubwpbOTQ4LzMwMzddIENvbXBpbGluZyBDIG9iamVjdCBkcml2ZXJzL2xpYnRtcF9ydGVf bmV0X3ZpcnRpby5hLnAvbmV0X3ZpcnRpb192aXJ0aW8uYy5vCls5NDkvMzAzN10gQ29tcGlsaW5n IEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfYWZfcGFja2V0LmEucC9uZXRfYWZfcGFj a2V0X3J0ZV9ldGhfYWZfcGFja2V0LmMubwpbOTUwLzMwMzddIENvbXBpbGluZyBDIG9iamVjdCBk cml2ZXJzL2xpYnRtcF9ydGVfbWVtcG9vbF9yaW5nLmEucC9tZW1wb29sX3JpbmdfcnRlX21lbXBv b2xfcmluZy5jLm8KWzk1MS8zMDM3XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9uZXQvdmly dGlvL2xpYnZpcnRpb19hdng1MTJfbGliLmEucC92aXJ0aW9fcnh0eF9wYWNrZWQuYy5vCls5NTIv MzAzN10gR2VuZXJhdGluZyBydGVfY29tbW9uX2NueGsuc3ltX2NoayB3aXRoIGEgbWVzb25fZXhl LnB5IGN1c3RvbSBjb21tYW5kCls5NTMvMzAzN10gR2VuZXJhdGluZyBydGVfY29tbW9uX3NmY19l Znguc3ltX2NoayB3aXRoIGEgbWVzb25fZXhlLnB5IGN1c3RvbSBjb21tYW5kCm5pbmphOiBidWls ZCBzdG9wcGVkCgoKCgoqQnVpbGQgRmFpbGVkICMxNDoKT1M6IFJIRUw4My02NApUYXJnZXQ6IHg4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcKRkFJTEVEOiBkcml2ZXJzL2E3MTUxODFAQHRtcF9y dGVfbmV0X3Zob3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gCmNsYW5nIC1JZHJp dmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aG9zdEBzdGEgLUlkcml2ZXJzIC1JLi4vZHJpdmVy cyAtSWRyaXZlcnMvbmV0L3Zob3N0IC1JLi4vZHJpdmVycy9uZXQvdmhvc3QgLUlsaWIvZXRoZGV2 IC1JLi4vbGliL2V0aGRldiAtSS4gLUkuLi8gLUljb25maWcgLUkuLi9jb25maWcgLUlsaWIvZWFs L2luY2x1ZGUgLUkuLi9saWIvZWFsL2luY2x1ZGUgLUlsaWIvZWFsL2xpbnV4L2luY2x1ZGUgLUku Li9saWIvZWFsL2xpbnV4L2luY2x1ZGUgLUlsaWIvZWFsL3g4Ni9pbmNsdWRlIC1JLi4vbGliL2Vh bC94ODYvaW5jbHVkZSAtSWxpYi9lYWwvY29tbW9uIC1JLi4vbGliL2VhbC9jb21tb24gLUlsaWIv ZWFsIC1JLi4vbGliL2VhbCAtSWxpYi9rdmFyZ3MgLUkuLi9saWIva3ZhcmdzIC1JbGliL3RlbGVt ZXRyeS8uLi9tZXRyaWNzIC1JLi4vbGliL3RlbGVtZXRyeS8uLi9tZXRyaWNzIC1JbGliL3RlbGVt ZXRyeSAtSS4uL2xpYi90ZWxlbWV0cnkgLUlsaWIvbmV0IC1JLi4vbGliL25ldCAtSWxpYi9tYnVm IC1JLi4vbGliL21idWYgLUlsaWIvbWVtcG9vbCAtSS4uL2xpYi9tZW1wb29sIC1JbGliL3Jpbmcg LUkuLi9saWIvcmluZyAtSWxpYi9tZXRlciAtSS4uL2xpYi9tZXRlciAtSWRyaXZlcnMvYnVzL3Bj aSAtSS4uL2RyaXZlcnMvYnVzL3BjaSAtSS4uL2RyaXZlcnMvYnVzL3BjaS9saW51eCAtSWxpYi9w Y2kgLUkuLi9saWIvcGNpIC1JZHJpdmVycy9idXMvdmRldiAtSS4uL2RyaXZlcnMvYnVzL3ZkZXYg LUlsaWIvdmhvc3QgLUkuLi9saWIvdmhvc3QgLUlsaWIvY3J5cHRvZGV2IC1JLi4vbGliL2NyeXB0 b2RldiAtSWxpYi9yY3UgLUkuLi9saWIvcmN1IC1JbGliL2hhc2ggLUkuLi9saWIvaGFzaCAtWGNs YW5nIC1mY29sb3ItZGlhZ25vc3RpY3MgLXBpcGUgLURfRklMRV9PRkZTRVRfQklUUz02NCAtV2Fs bCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcuaCAtV2V4dHJh IC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1ub25saXRlcmFsIC1X Zm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5nLXByb3RvdHlw ZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9pbnRlci1hcml0 aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3cml0ZS1zdHJp bmdzIC1Xbm8tYWRkcmVzcy1vZi1wYWNrZWQtbWVtYmVyIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0 aWFsaXplcnMgLURfR05VX1NPVVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQRVJJ TUVOVEFMX0FQSSAtREFMTE9XX0lOVEVSTkFMX0FQSSAtRFJURV9MT0dfREVGQVVMVF9MT0dUWVBF PXBtZC5uZXQudmhvc3QgLU1EIC1NUSAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aG9z dEBzdGEvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vJyAtTUYgJ2RyaXZlcnMvYTcxNTE4MUBA dG1wX3J0ZV9uZXRfdmhvc3RAc3RhL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMuby5kJyAtbyAn ZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aG9zdEBzdGEvbmV0X3Zob3N0X3J0ZV9ldGhf dmhvc3QuYy5vJyAtYyAuLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMKLi4vZHJp dmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjM0MDoxOiBlcnJvcjogZXhwZWN0ZWQgJykn CnsKXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MzM5OjM0OiBub3RlOiB0 byBtYXRjaCB0aGlzICcoJwp2aG9zdF91cGRhdGVfc2luZ2xlX3BhY2tldF94c3RhdHMoc3RydWN0 IHZob3N0X3F1ZXVlICp2cSwgc3RydWN0IHJ0ZV9tYnVmICpidWYKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6OTg0 Ojk6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZmluZF9pbnRlcm5h bF9yZXNvdXJjZScgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlv bi1kZWNsYXJhdGlvbl0KICAgICAgICBsaXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJjZShpbnRl cm5hbC0+aWZhY2VfbmFtZSk7CiAgICAgICAgICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3Qv cnRlX2V0aF92aG9zdC5jOjk4NDo3OiBlcnJvcjogaW5jb21wYXRpYmxlIGludGVnZXIgdG8gcG9p bnRlciBjb252ZXJzaW9uIGFzc2lnbmluZyB0byAnc3RydWN0IGludGVybmFsX2xpc3QgKicgZnJv bSAnaW50JyBbLVdlcnJvciwtV2ludC1jb252ZXJzaW9uXQogICAgICAgIGxpc3QgPSBmaW5kX2lu dGVybmFsX3Jlc291cmNlKGludGVybmFsLT5pZmFjZV9uYW1lKTsKICAgICAgICAgICAgIF4gfn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQv dmhvc3QvcnRlX2V0aF92aG9zdC5jOjEwMTU6MTQ6IGVycm9yOiB1c2Ugb2YgdW5kZWNsYXJlZCBp ZGVudGlmaWVyICd2aG9zdF9vcHMnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgJnZob3N0X29wcykgPCAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9z dC5jOjExMzI6MjogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdxdWV1 ZV9zZXR1cCcgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1k ZWNsYXJhdGlvbl0KICAgICAgICBxdWV1ZV9zZXR1cChldGhfZGV2LCBpbnRlcm5hbCk7CiAgICAg ICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTEzNjo4OiBlcnJvcjog aW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24gJ2V0aF92aG9zdF9pbnN0YWxsX2ludHIn IGlzIGludmFsaWQgaW4gQzk5IFstV2Vycm9yLC1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRp b25dCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChldGhfdmhvc3RfaW5zdGFsbF9pbnRyKGV0 aF9kZXYpIDwgMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25l dC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTE0NToyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRp b24gb2YgZnVuY3Rpb24gJ3VwZGF0ZV9xdWV1aW5nX3N0YXR1cycgaXMgaW52YWxpZCBpbiBDOTkg Wy1XZXJyb3IsLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICB1cGRhdGVf cXVldWluZ19zdGF0dXMoZXRoX2Rldik7CiAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9y dGVfZXRoX3Zob3N0LmM6MTE1NzoyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVu Y3Rpb24gJ3VwZGF0ZV9xdWV1aW5nX3N0YXR1cycgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3Is LVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICB1cGRhdGVfcXVldWluZ19z dGF0dXMoZGV2KTsKICAgICAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3Qu YzoxMTc4Ojk6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZmluZF9p bnRlcm5hbF9yZXNvdXJjZScgaXMgaW52YWxpZCBpbiBDOTkgWy1XZXJyb3IsLVdpbXBsaWNpdC1m dW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICBsaXN0ID0gZmluZF9pbnRlcm5hbF9yZXNvdXJj ZShpbnRlcm5hbC0+aWZhY2VfbmFtZSk7CiAgICAgICAgICAgICAgIF4KLi4vZHJpdmVycy9uZXQv dmhvc3QvcnRlX2V0aF92aG9zdC5jOjExNzg6NzogZXJyb3I6IGluY29tcGF0aWJsZSBpbnRlZ2Vy IHRvIHBvaW50ZXIgY29udmVyc2lvbiBhc3NpZ25pbmcgdG8gJ3N0cnVjdCBpbnRlcm5hbF9saXN0 IConIGZyb20gJ2ludCcgWy1XZXJyb3IsLVdpbnQtY29udmVyc2lvbl0KICAgICAgICBsaXN0ID0g ZmluZF9pbnRlcm5hbF9yZXNvdXJjZShpbnRlcm5hbC0+aWZhY2VfbmFtZSk7CiAgICAgICAgICAg ICBeIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZl cnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxMzk0OjI2OiBlcnJvcjogdXNlIG9mIHVuZGVj bGFyZWQgaWRlbnRpZmllciAnZXRoX3J4cV9pbnRyX2VuYWJsZSc7IGRpZCB5b3UgbWVhbiAncnRl X2ludHJfZW5hYmxlJz8KICAgICAgICAucnhfcXVldWVfaW50cl9lbmFibGUgPSBldGhfcnhxX2lu dHJfZW5hYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+ fn5+fn4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydGVfaW50cl9lbmFibGUKLi4v bGliL2VhbC9pbmNsdWRlL3J0ZV9pbnRlcnJ1cHRzLmg6MTMyOjU6IG5vdGU6ICdydGVfaW50cl9l bmFibGUnIGRlY2xhcmVkIGhlcmUKaW50IHJ0ZV9pbnRyX2VuYWJsZShjb25zdCBzdHJ1Y3QgcnRl X2ludHJfaGFuZGxlICppbnRyX2hhbmRsZSk7CiAgICBeCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0 ZV9ldGhfdmhvc3QuYzoxMzk1OjI3OiBlcnJvcjogdXNlIG9mIHVuZGVjbGFyZWQgaWRlbnRpZmll ciAnZXRoX3J4cV9pbnRyX2Rpc2FibGUnOyBkaWQgeW91IG1lYW4gJ3J0ZV9pbnRyX2Rpc2FibGUn PwogICAgICAgIC5yeF9xdWV1ZV9pbnRyX2Rpc2FibGUgPSBldGhfcnhxX2ludHJfZGlzYWJsZSwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnRlX2ludHJfZGlzYWJsZQouLi9saWIvZWFs L2luY2x1ZGUvcnRlX2ludGVycnVwdHMuaDoxNDQ6NTogbm90ZTogJ3J0ZV9pbnRyX2Rpc2FibGUn IGRlY2xhcmVkIGhlcmUKaW50IHJ0ZV9pbnRyX2Rpc2FibGUoY29uc3Qgc3RydWN0IHJ0ZV9pbnRy X2hhbmRsZSAqaW50cl9oYW5kbGUpOwogICAgXgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRo X3Zob3N0LmM6MTM5NDoyNjogZXJyb3I6IGluY29tcGF0aWJsZSBmdW5jdGlvbiBwb2ludGVyIHR5 cGVzIGluaXRpYWxpemluZyAnZXRoX3J4X2VuYWJsZV9pbnRyX3QnIChha2EgJ2ludCAoKikoc3Ry dWN0IHJ0ZV9ldGhfZGV2ICosIHVuc2lnbmVkIHNob3J0KScpIHdpdGggYW4gZXhwcmVzc2lvbiBv ZiB0eXBlICdpbnQgKGNvbnN0IHN0cnVjdCBydGVfaW50cl9oYW5kbGUgKiknIFstV2Vycm9yLC1X aW5jb21wYXRpYmxlLWZ1bmN0aW9uLXBvaW50ZXItdHlwZXNdCiAgICAgICAgLnJ4X3F1ZXVlX2lu dHJfZW5hYmxlID0gZXRoX3J4cV9pbnRyX2VuYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhf dmhvc3QuYzoxMzk1OjI3OiBlcnJvcjogaW5jb21wYXRpYmxlIGZ1bmN0aW9uIHBvaW50ZXIgdHlw ZXMgaW5pdGlhbGl6aW5nICdldGhfcnhfZGlzYWJsZV9pbnRyX3QnIChha2EgJ2ludCAoKikoc3Ry dWN0IHJ0ZV9ldGhfZGV2ICosIHVuc2lnbmVkIHNob3J0KScpIHdpdGggYW4gZXhwcmVzc2lvbiBv ZiB0eXBlICdpbnQgKGNvbnN0IHN0cnVjdCBydGVfaW50cl9oYW5kbGUgKiknIFstV2Vycm9yLC1X aW5jb21wYXRpYmxlLWZ1bmN0aW9uLXBvaW50ZXItdHlwZXNdCiAgICAgICAgLnJ4X3F1ZXVlX2lu dHJfZGlzYWJsZSA9IGV0aF9yeHFfaW50cl9kaXNhYmxlLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVf ZXRoX3Zob3N0LmM6MTQ1MzoyNjogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50aWZpZXIg J2V0aF92aG9zdF9yeCcKICAgICAgICBldGhfZGV2LT5yeF9wa3RfYnVyc3QgPSBldGhfdmhvc3Rf cng7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6MTQ1NDoyNjogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVkIGlkZW50 aWZpZXIgJ2V0aF92aG9zdF90eCcKICAgICAgICBldGhfZGV2LT50eF9wa3RfYnVyc3QgPSBldGhf dmhvc3RfdHg7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgouLi9kcml2ZXJzL25l dC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MTUyMToyNzogZXJyb3I6IHVzZSBvZiB1bmRlY2xhcmVk IGlkZW50aWZpZXIgJ2V0aF92aG9zdF9yeCcKICAgICAgICAgICAgICAgIGV0aF9kZXYtPnJ4X3Br dF9idXJzdCA9IGV0aF92aG9zdF9yeDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjE1MjI6Mjc6IGVy cm9yOiB1c2Ugb2YgdW5kZWNsYXJlZCBpZGVudGlmaWVyICdldGhfdmhvc3RfdHgnCiAgICAgICAg ICAgICAgICBldGhfZGV2LT50eF9wa3RfYnVyc3QgPSBldGhfdmhvc3RfdHg7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCjE4IGVycm9ycyBnZW5lcmF0ZWQuClsxNzg1 LzI4MjFdIENvbXBpbGluZyBDIG9iamVjdCAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92 aXJ0aW9Ac3RhL25ldF92aXJ0aW9fdmlydGlvLmMubycuClsxNzg2LzI4MjFdIENvbXBpbGluZyBD IG9iamVjdCAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92ZGV2X25ldHZzY0BzdGEvbmV0 X3ZkZXZfbmV0dnNjX3ZkZXZfbmV0dnNjLmMubycuClsxNzg3LzI4MjFdIENvbXBpbGluZyBDIG9i amVjdCAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aXJ0aW9Ac3RhL25ldF92aXJ0aW9f dmlydGlvX3VzZXJfdmhvc3Rfa2VybmVsX3RhcC5jLm8nLgpbMTc4OC8yODIxXSBDb21waWxpbmcg QyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmlydGlvQHN0YS9uZXRfdmly dGlvX3ZpcnRpb19wY2lfZXRoZGV2LmMubycuClsxNzg5LzI4MjFdIENvbXBpbGluZyBDIG9iamVj dCAnZHJpdmVycy9uZXQvdmlydGlvLzIwNjcwZjFAQHZpcnRpb19hdng1MTJfbGliQHN0YS92aXJ0 aW9fcnh0eF9wYWNrZWQuYy5vJy4KWzE3OTAvMjgyMV0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2 ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3R4Z2JlQHN0YS9uZXRfdHhnYmVfdHhnYmVfZXRoZGV2 LmMubycuClsxNzkxLzI4MjFdIENvbXBpbGluZyBDIG9iamVjdCAnZHJpdmVycy9hNzE1MTgxQEB0 bXBfcnRlX25ldF9vY3Rlb250eDJAc3RhL25ldF9vY3Rlb250eDJfb3R4Ml9yeC5jLm8nLgpbMTc5 Mi8yODIxXSBDb21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRf dmlydGlvQHN0YS9uZXRfdmlydGlvX3ZpcnRpb19ldGhkZXYuYy5vJy4KWzE3OTMvMjgyMV0gQ29t cGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3R4Z2JlQHN0YS9u ZXRfdHhnYmVfdHhnYmVfcnh0eC5jLm8nLgpuaW5qYTogYnVpbGQgc3RvcHBlZAoKCgoKKkJ1aWxk IEZhaWxlZCAjMTU6Ck9TOiBSSEVMODMtNjQKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYytzaGFyZWQKRkFJTEVEOiBkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zob3N0QHN0 YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8gCmdjYyAtSWRyaXZlcnMvYTcxNTE4MUBAdG1w X3J0ZV9uZXRfdmhvc3RAc3RhIC1JZHJpdmVycyAtSS4uL2RyaXZlcnMgLUlkcml2ZXJzL25ldC92 aG9zdCAtSS4uL2RyaXZlcnMvbmV0L3Zob3N0IC1JbGliL2V0aGRldiAtSS4uL2xpYi9ldGhkZXYg LUkuIC1JLi4vIC1JY29uZmlnIC1JLi4vY29uZmlnIC1JbGliL2VhbC9pbmNsdWRlIC1JLi4vbGli L2VhbC9pbmNsdWRlIC1JbGliL2VhbC9saW51eC9pbmNsdWRlIC1JLi4vbGliL2VhbC9saW51eC9p bmNsdWRlIC1JbGliL2VhbC94ODYvaW5jbHVkZSAtSS4uL2xpYi9lYWwveDg2L2luY2x1ZGUgLUls aWIvZWFsL2NvbW1vbiAtSS4uL2xpYi9lYWwvY29tbW9uIC1JbGliL2VhbCAtSS4uL2xpYi9lYWwg LUlsaWIva3ZhcmdzIC1JLi4vbGliL2t2YXJncyAtSWxpYi90ZWxlbWV0cnkvLi4vbWV0cmljcyAt SS4uL2xpYi90ZWxlbWV0cnkvLi4vbWV0cmljcyAtSWxpYi90ZWxlbWV0cnkgLUkuLi9saWIvdGVs ZW1ldHJ5IC1JbGliL25ldCAtSS4uL2xpYi9uZXQgLUlsaWIvbWJ1ZiAtSS4uL2xpYi9tYnVmIC1J bGliL21lbXBvb2wgLUkuLi9saWIvbWVtcG9vbCAtSWxpYi9yaW5nIC1JLi4vbGliL3JpbmcgLUls aWIvbWV0ZXIgLUkuLi9saWIvbWV0ZXIgLUlkcml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1 cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kvbGludXggLUlsaWIvcGNpIC1JLi4vbGliL3BjaSAt SWRyaXZlcnMvYnVzL3ZkZXYgLUkuLi9kcml2ZXJzL2J1cy92ZGV2IC1JbGliL3Zob3N0IC1JLi4v bGliL3Zob3N0IC1JbGliL2NyeXB0b2RldiAtSS4uL2xpYi9jcnlwdG9kZXYgLUlsaWIvcmN1IC1J Li4vbGliL3JjdSAtSWxpYi9oYXNoIC1JLi4vbGliL2hhc2ggLWZkaWFnbm9zdGljcy1jb2xvcj1h bHdheXMgLXBpcGUgLURfRklMRV9PRkZTRVRfQklUUz02NCAtV2FsbCAtV2ludmFsaWQtcGNoIC1X ZXJyb3IgLU8zIC1pbmNsdWRlIHJ0ZV9jb25maWcuaCAtV2V4dHJhIC1XY2FzdC1xdWFsIC1XZGVw cmVjYXRlZCAtV2Zvcm1hdCAtV2Zvcm1hdC1ub25saXRlcmFsIC1XZm9ybWF0LXNlY3VyaXR5IC1X bWlzc2luZy1kZWNsYXJhdGlvbnMgLVdtaXNzaW5nLXByb3RvdHlwZXMgLVduZXN0ZWQtZXh0ZXJu cyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9pbnRlci1hcml0aCAtV3NpZ24tY29tcGFyZSAt V3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1Xbm8tcGFja2VkLW5v dC1hbGlnbmVkIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMgLURfR05VX1NPVVJDRSAt ZlBJQyAtbWFyY2g9bmF0aXZlIC1EQUxMT1dfRVhQRVJJTUVOVEFMX0FQSSAtREFMTE9XX0lOVEVS TkFMX0FQSSAtV25vLWZvcm1hdC10cnVuY2F0aW9uIC1EUlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9 cG1kLm5ldC52aG9zdCAtTUQgLU1RICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zob3N0 QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8nIC1NRiAnZHJpdmVycy9hNzE1MTgxQEB0 bXBfcnRlX25ldF92aG9zdEBzdGEvbmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vLmQnIC1vICdk cml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zob3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92 aG9zdC5jLm8nIC1jIC4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYwouLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MzQwOjE6IGVycm9yOiBleHBlY3RlZCDigJg7 4oCZLCDigJgs4oCZIG9yIOKAmCnigJkgYmVmb3JlIOKAmHvigJkgdG9rZW4KIHsKIF4KLi4vZHJp dmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjI3OToxOiBlcnJvcjog4oCYdmhvc3RfZGV2 X3hzdGF0c19nZXTigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1bmN0 aW9uXQogdmhvc3RfZGV2X3hzdGF0c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0cnVj dCBydGVfZXRoX3hzdGF0ICp4c3RhdHMsCiBefn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJz L25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjUzOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0 YXRzX2dldF9uYW1lc+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVu Y3Rpb25dCiB2aG9zdF9kZXZfeHN0YXRzX2dldF9uYW1lcyhzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRl diBfX3J0ZV91bnVzZWQsCiBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25l dC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6MjMxOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRz X3Jlc2V04oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC1mdW5jdGlvbl0K IHZob3N0X2Rldl94c3RhdHNfcmVzZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpCiBefn5+fn5+ fn5+fn5+fn5+fn5+fn5+Ci4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDE6 Mzg6IGVycm9yOiDigJh2cmluZ19zdGF0ZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJy b3I9dW51c2VkLXZhcmlhYmxlXQogc3RhdGljIHN0cnVjdCBydGVfdmhvc3RfdnJpbmdfc3RhdGUg KnZyaW5nX3N0YXRlc1tSVEVfTUFYX0VUSFBPUlRTXTsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBefn5+fn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92 aG9zdC5jOjEyNjoyODogZXJyb3I6IOKAmHBtZF9saW5r4oCZIGRlZmluZWQgYnV0IG5vdCB1c2Vk IFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aF9saW5rIHBt ZF9saW5rID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn4KLi4vZHJpdmVy cy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNDoyNDogZXJyb3I6IOKAmGludGVybmFsX2xp c3RfbG9ja+KAmSBkZWZpbmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVd CiBzdGF0aWMgcHRocmVhZF9tdXRleF90IGludGVybmFsX2xpc3RfbG9jayA9IFBUSFJFQURfTVVU RVhfSU5JVElBTElaRVI7CiAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+ fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6NTE6MzA6IGVycm9yOiDigJhi YXNlX2V0aF9hZGRy4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJp YWJsZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aGVyX2FkZHIgYmFzZV9ldGhfYWRkciA9IHsKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92 aG9zdC9ydGVfZXRoX3Zob3N0LmM6Mzk6MjA6IGVycm9yOiDigJh2YWxpZF9hcmd1bWVudHPigJkg ZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQogc3RhdGljIGNv bnN0IGNoYXIgKnZhbGlkX2FyZ3VtZW50c1tdID0gewogICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+fn5+fn5+fgpjYzE6IGFsbCB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwpbMTgw NS8yNjU0XSBDb21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRf dmlydGlvQHN0YS9uZXRfdmlydGlvX3ZpcnRpby5jLm8nLgpbMTgwNi8yNjU0XSBDb21waWxpbmcg QyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmRldl9uZXR2c2NAc3RhL25l dF92ZGV2X25ldHZzY192ZGV2X25ldHZzYy5jLm8nLgpbMTgwNy8yNjU0XSBDb21waWxpbmcgQyBv YmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmlydGlvQHN0YS9uZXRfdmlydGlv X3ZpcnRpb19wY2lfZXRoZGV2LmMubycuClsxODA4LzI2NTRdIExpbmtpbmcgdGFyZ2V0IGRyaXZl cnMvbGlicnRlX25ldF90aHVuZGVyeC5zby4yMi4wLgpbMTgwOS8yNjU0XSBDb21waWxpbmcgQyBv YmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmlydGlvQHN0YS9uZXRfdmlydGlv X3ZpcnRpb19ldGhkZXYuYy5vJy4KWzE4MTAvMjY1NF0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2 ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3ZpcnRpb0BzdGEvbmV0X3ZpcnRpb192aXJ0aW9fcGNp LmMubycuClsxODExLzI2NTRdIENvbXBpbGluZyBDIG9iamVjdCAnZHJpdmVycy9uZXQvdmlydGlv LzIwNjcwZjFAQHZpcnRpb19hdng1MTJfbGliQHN0YS92aXJ0aW9fcnh0eF9wYWNrZWQuYy5vJy4K WzE4MTIvMjY1NF0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVf bmV0X3R4Z2JlQHN0YS9uZXRfdHhnYmVfdHhnYmVfZXRoZGV2LmMubycuClsxODEzLzI2NTRdIENv bXBpbGluZyBDIG9iamVjdCAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF90eGdiZUBzdGEv bmV0X3R4Z2JlX3R4Z2JlX3J4dHguYy5vJy4KWzE4MTQvMjY1NF0gQ29tcGlsaW5nIEMgb2JqZWN0 ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3ZpcnRpb0BzdGEvbmV0X3ZpcnRpb192aXJ0 aW9fcnh0eC5jLm8nLgpbMTgxNS8yNjU0XSBDb21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvYTcx NTE4MUBAdG1wX3J0ZV9uZXRfb2N0ZW9udHgyQHN0YS9uZXRfb2N0ZW9udHgyX290eDJfcnguYy5v Jy4KbmluamE6IGJ1aWxkIHN0b3BwZWQKCgoKCipCdWlsZCBGYWlsZWQgIzE2OgpPUzogUkhFTDgz LTY0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MrZGVidWcKRkFJTEVEOiBkcml2 ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zob3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9z dC5jLm8gCmdjYyAtSWRyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmhvc3RAc3RhIC1JZHJp dmVycyAtSS4uL2RyaXZlcnMgLUlkcml2ZXJzL25ldC92aG9zdCAtSS4uL2RyaXZlcnMvbmV0L3Zo b3N0IC1JbGliL2V0aGRldiAtSS4uL2xpYi9ldGhkZXYgLUkuIC1JLi4vIC1JY29uZmlnIC1JLi4v Y29uZmlnIC1JbGliL2VhbC9pbmNsdWRlIC1JLi4vbGliL2VhbC9pbmNsdWRlIC1JbGliL2VhbC9s aW51eC9pbmNsdWRlIC1JLi4vbGliL2VhbC9saW51eC9pbmNsdWRlIC1JbGliL2VhbC94ODYvaW5j bHVkZSAtSS4uL2xpYi9lYWwveDg2L2luY2x1ZGUgLUlsaWIvZWFsL2NvbW1vbiAtSS4uL2xpYi9l YWwvY29tbW9uIC1JbGliL2VhbCAtSS4uL2xpYi9lYWwgLUlsaWIva3ZhcmdzIC1JLi4vbGliL2t2 YXJncyAtSWxpYi90ZWxlbWV0cnkvLi4vbWV0cmljcyAtSS4uL2xpYi90ZWxlbWV0cnkvLi4vbWV0 cmljcyAtSWxpYi90ZWxlbWV0cnkgLUkuLi9saWIvdGVsZW1ldHJ5IC1JbGliL25ldCAtSS4uL2xp Yi9uZXQgLUlsaWIvbWJ1ZiAtSS4uL2xpYi9tYnVmIC1JbGliL21lbXBvb2wgLUkuLi9saWIvbWVt cG9vbCAtSWxpYi9yaW5nIC1JLi4vbGliL3JpbmcgLUlsaWIvbWV0ZXIgLUkuLi9saWIvbWV0ZXIg LUlkcml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9wY2kgLUkuLi9kcml2ZXJzL2J1cy9w Y2kvbGludXggLUlsaWIvcGNpIC1JLi4vbGliL3BjaSAtSWRyaXZlcnMvYnVzL3ZkZXYgLUkuLi9k cml2ZXJzL2J1cy92ZGV2IC1JbGliL3Zob3N0IC1JLi4vbGliL3Zob3N0IC1JbGliL2NyeXB0b2Rl diAtSS4uL2xpYi9jcnlwdG9kZXYgLUlsaWIvcmN1IC1JLi4vbGliL3JjdSAtSWxpYi9oYXNoIC1J Li4vbGliL2hhc2ggLWZkaWFnbm9zdGljcy1jb2xvcj1hbHdheXMgLXBpcGUgLURfRklMRV9PRkZT RVRfQklUUz02NCAtV2FsbCAtV2ludmFsaWQtcGNoIC1XZXJyb3IgLU8yIC1nIC1pbmNsdWRlIHJ0 ZV9jb25maWcuaCAtV2V4dHJhIC1XY2FzdC1xdWFsIC1XZGVwcmVjYXRlZCAtV2Zvcm1hdCAtV2Zv cm1hdC1ub25saXRlcmFsIC1XZm9ybWF0LXNlY3VyaXR5IC1XbWlzc2luZy1kZWNsYXJhdGlvbnMg LVdtaXNzaW5nLXByb3RvdHlwZXMgLVduZXN0ZWQtZXh0ZXJucyAtV29sZC1zdHlsZS1kZWZpbml0 aW9uIC1XcG9pbnRlci1hcml0aCAtV3NpZ24tY29tcGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1X dW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1Xbm8tcGFja2VkLW5vdC1hbGlnbmVkIC1Xbm8tbWlzc2lu Zy1maWVsZC1pbml0aWFsaXplcnMgLURfR05VX1NPVVJDRSAtZlBJQyAtbWFyY2g9bmF0aXZlIC1E QUxMT1dfRVhQRVJJTUVOVEFMX0FQSSAtREFMTE9XX0lOVEVSTkFMX0FQSSAtV25vLWZvcm1hdC10 cnVuY2F0aW9uIC1EUlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9cG1kLm5ldC52aG9zdCAtTUQgLU1R ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3Zob3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0 aF92aG9zdC5jLm8nIC1NRiAnZHJpdmVycy9hNzE1MTgxQEB0bXBfcnRlX25ldF92aG9zdEBzdGEv bmV0X3Zob3N0X3J0ZV9ldGhfdmhvc3QuYy5vLmQnIC1vICdkcml2ZXJzL2E3MTUxODFAQHRtcF9y dGVfbmV0X3Zob3N0QHN0YS9uZXRfdmhvc3RfcnRlX2V0aF92aG9zdC5jLm8nIC1jIC4uL2RyaXZl cnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYwouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRo X3Zob3N0LmM6MzQwOjE6IGVycm9yOiBleHBlY3RlZCDigJg74oCZLCDigJgs4oCZIG9yIOKAmCni gJkgYmVmb3JlIOKAmHvigJkgdG9rZW4KIHsKIF4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0 aF92aG9zdC5jOjI3OToxOiBlcnJvcjog4oCYdmhvc3RfZGV2X3hzdGF0c19nZXTigJkgZGVmaW5l ZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLWZ1bmN0aW9uXQogdmhvc3RfZGV2X3hzdGF0 c19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0cnVjdCBydGVfZXRoX3hzdGF0ICp4c3Rh dHMsCiBefn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zo b3N0LmM6MjUzOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRzX2dldF9uYW1lc+KAmSBkZWZp bmVkIGJ1dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtZnVuY3Rpb25dCiB2aG9zdF9kZXZfeHN0 YXRzX2dldF9uYW1lcyhzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiBfX3J0ZV91bnVzZWQsCiBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0 LmM6MjMxOjE6IGVycm9yOiDigJh2aG9zdF9kZXZfeHN0YXRzX3Jlc2V04oCZIGRlZmluZWQgYnV0 IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC1mdW5jdGlvbl0KIHZob3N0X2Rldl94c3RhdHNfcmVz ZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpCiBefn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4uL2Ry aXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYzoxNDE6Mzg6IGVycm9yOiDigJh2cmluZ19z dGF0ZXPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQog c3RhdGljIHN0cnVjdCBydGVfdmhvc3RfdnJpbmdfc3RhdGUgKnZyaW5nX3N0YXRlc1tSVEVfTUFY X0VUSFBPUlRTXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+ fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jOjEyNjoyODogZXJyb3I6 IOKAmHBtZF9saW5r4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJp YWJsZV0KIHN0YXRpYyBzdHJ1Y3QgcnRlX2V0aF9saW5rIHBtZF9saW5rID0gewogICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn4KLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92 aG9zdC5jOjEyNDoyNDogZXJyb3I6IOKAmGludGVybmFsX2xpc3RfbG9ja+KAmSBkZWZpbmVkIGJ1 dCBub3QgdXNlZCBbLVdlcnJvcj11bnVzZWQtdmFyaWFibGVdCiBzdGF0aWMgcHRocmVhZF9tdXRl eF90IGludGVybmFsX2xpc3RfbG9jayA9IFBUSFJFQURfTVVURVhfSU5JVElBTElaRVI7CiAgICAg ICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9z dC9ydGVfZXRoX3Zob3N0LmM6NTE6MzA6IGVycm9yOiDigJhiYXNlX2V0aF9hZGRy4oCZIGRlZmlu ZWQgYnV0IG5vdCB1c2VkIFstV2Vycm9yPXVudXNlZC12YXJpYWJsZV0KIHN0YXRpYyBzdHJ1Y3Qg cnRlX2V0aGVyX2FkZHIgYmFzZV9ldGhfYWRkciA9IHsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+fn5+fn5+fgouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmM6 Mzk6MjA6IGVycm9yOiDigJh2YWxpZF9hcmd1bWVudHPigJkgZGVmaW5lZCBidXQgbm90IHVzZWQg Wy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQogc3RhdGljIGNvbnN0IGNoYXIgKnZhbGlkX2FyZ3Vt ZW50c1tdID0gewogICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fgpjYzE6IGFsbCB3 YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVycm9ycwpbMTc5Ni8yODIxXSBHZW5lcmF0aW5nIHJ0 ZV9uZXRfdmRldl9uZXR2c2MucG1kLmMgd2l0aCBhIGN1c3RvbSBjb21tYW5kLgpbMTc5Ny8yODIx XSBDb21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmlydGlv QHN0YS9uZXRfdmlydGlvX3ZpcnRpb191c2VyX3Zob3N0X2tlcm5lbF90YXAuYy5vJy4KWzE3OTgv MjgyMV0gQ29tcGlsaW5nIEMgb2JqZWN0ICdkcml2ZXJzL25ldC92aXJ0aW8vMjA2NzBmMUBAdmly dGlvX2F2eDUxMl9saWJAc3RhL3ZpcnRpb19yeHR4X3BhY2tlZC5jLm8nLgpbMTc5OS8yODIxXSBD b21waWxpbmcgQyBvYmplY3QgJ2RyaXZlcnMvYTcxNTE4MUBAdG1wX3J0ZV9uZXRfdmlydGlvQHN0 YS9uZXRfdmlydGlvX3ZpcnRpb19ldGhkZXYuYy5vJy4KWzE4MDAvMjgyMV0gQ29tcGlsaW5nIEMg b2JqZWN0ICdkcml2ZXJzL2E3MTUxODFAQHRtcF9ydGVfbmV0X3R4Z2JlQHN0YS9uZXRfdHhnYmVf dHhnYmVfcnh0eC5jLm8nLgpuaW5qYTogYnVpbGQgc3RvcHBlZAoKCgoKKkJ1aWxkIEZhaWxlZCAj MTc6Ck9TOiBSSEVMODMtNjQKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWljYwpGQUlM RUQ6IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zo b3N0LmMubyAKaWNjIC1JZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAgLUlkcml2ZXJz IC1JLi4vZHJpdmVycyAtSWRyaXZlcnMvbmV0L3Zob3N0IC1JLi4vZHJpdmVycy9uZXQvdmhvc3Qg LUlsaWIvZXRoZGV2IC1JLi4vbGliL2V0aGRldiAtSS4gLUkuLiAtSWNvbmZpZyAtSS4uL2NvbmZp ZyAtSWxpYi9lYWwvaW5jbHVkZSAtSS4uL2xpYi9lYWwvaW5jbHVkZSAtSWxpYi9lYWwvbGludXgv aW5jbHVkZSAtSS4uL2xpYi9lYWwvbGludXgvaW5jbHVkZSAtSWxpYi9lYWwveDg2L2luY2x1ZGUg LUkuLi9saWIvZWFsL3g4Ni9pbmNsdWRlIC1JbGliL2VhbC9jb21tb24gLUkuLi9saWIvZWFsL2Nv bW1vbiAtSWxpYi9lYWwgLUkuLi9saWIvZWFsIC1JbGliL2t2YXJncyAtSS4uL2xpYi9rdmFyZ3Mg LUlsaWIvbWV0cmljcyAtSS4uL2xpYi9tZXRyaWNzIC1JbGliL3RlbGVtZXRyeSAtSS4uL2xpYi90 ZWxlbWV0cnkgLUlsaWIvbmV0IC1JLi4vbGliL25ldCAtSWxpYi9tYnVmIC1JLi4vbGliL21idWYg LUlsaWIvbWVtcG9vbCAtSS4uL2xpYi9tZW1wb29sIC1JbGliL3JpbmcgLUkuLi9saWIvcmluZyAt SWxpYi9tZXRlciAtSS4uL2xpYi9tZXRlciAtSWRyaXZlcnMvYnVzL3BjaSAtSS4uL2RyaXZlcnMv YnVzL3BjaSAtSS4uL2RyaXZlcnMvYnVzL3BjaS9saW51eCAtSWxpYi9wY2kgLUkuLi9saWIvcGNp IC1JZHJpdmVycy9idXMvdmRldiAtSS4uL2RyaXZlcnMvYnVzL3ZkZXYgLUlsaWIvdmhvc3QgLUku Li9saWIvdmhvc3QgLUlsaWIvY3J5cHRvZGV2IC1JLi4vbGliL2NyeXB0b2RldiAtSWxpYi9yY3Ug LUkuLi9saWIvcmN1IC1JbGliL2hhc2ggLUkuLi9saWIvaGFzaCAtcGlwZSAtRF9GSUxFX09GRlNF VF9CSVRTPTY0IC1XYWxsIC13MyAtZGlhZy1kaXNhYmxlOnJlbWFyayAtV2Vycm9yIC1PMyAtaW5j bHVkZSBydGVfY29uZmlnLmggLVdleHRyYSAtV2Nhc3QtcXVhbCAtV2RlcHJlY2F0ZWQgLVdmb3Jt YXQgLVdmb3JtYXQtc2VjdXJpdHkgLVdtaXNzaW5nLWRlY2xhcmF0aW9ucyAtV21pc3NpbmctcHJv dG90eXBlcyAtV29sZC1zdHlsZS1kZWZpbml0aW9uIC1XcG9pbnRlci1hcml0aCAtV3NpZ24tY29t cGFyZSAtV3N0cmljdC1wcm90b3R5cGVzIC1XdW5kZWYgLVd3cml0ZS1zdHJpbmdzIC1Xbm8tbWlz c2luZy1maWVsZC1pbml0aWFsaXplcnMgLWRpYWctZGlzYWJsZT0xODEgLWRpYWctZGlzYWJsZT0x ODggLWRpYWctZGlzYWJsZT0yMjAzIC1kaWFnLWRpc2FibGU9MjI3OSAtZGlhZy1kaXNhYmxlPTI1 NTcgLWRpYWctZGlzYWJsZT0zMTc5IC1kaWFnLWRpc2FibGU9MzY1NiAtRF9HTlVfU09VUkNFIC1m UElDIC1tYXJjaD1uYXRpdmUgLURBTExPV19FWFBFUklNRU5UQUxfQVBJIC1EQUxMT1dfSU5URVJO QUxfQVBJIC1EUlRFX0xPR19ERUZBVUxUX0xPR1RZUEU9cG1kLm5ldC52aG9zdCAtTUQgLU1RIGRy aXZlcnMvbGlidG1wX3J0ZV9uZXRfdmhvc3QuYS5wL25ldF92aG9zdF9ydGVfZXRoX3Zob3N0LmMu byAtTUYgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0X3J0ZV9ldGhf dmhvc3QuYy5vLmQgLW8gZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aG9zdC5hLnAvbmV0X3Zob3N0 X3J0ZV9ldGhfdmhvc3QuYy5vIC1jIC4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3Qu YwouLi9kcml2ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMoMzQwKTogZXJyb3I6IGV4cGVj dGVkIGEgIikiCiAgewogIF4KCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYyg0 MDUpOiBlcnJvcjogZXhwcmVzc2lvbiBtdXN0IGhhdmUgcG9pbnRlciB0eXBlCiAgCQlyLT5zdGF0 cy0+eHN0YXRzW1ZIT1NUX0JZVEVdICs9IGJ1ZnNbaV0tPnBrdF9sZW47CiAgCQleCgouLi9kcml2 ZXJzL25ldC92aG9zdC9ydGVfZXRoX3Zob3N0LmMoNDA3KTogZXJyb3IgIzE2NzogYXJndW1lbnQg b2YgdHlwZSAic3RydWN0IHJ0ZV9tYnVmICoqIiBpcyBpbmNvbXBhdGlibGUgd2l0aCBwYXJhbWV0 ZXIgb2YgdHlwZSAic3RydWN0IHJ0ZV9tYnVmICoiCiAgCQl2aG9zdF91cGRhdGVfc2luZ2xlX3Bh Y2tldF94c3RhdHMociwgYnVmcyk7CiAgCQkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXgoKLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0aF92aG9zdC5jKDQ2Nik6IGVycm9y ICMxNjc6IGFyZ3VtZW50IG9mIHR5cGUgInN0cnVjdCBydGVfbWJ1ZiAqKiIgaXMgaW5jb21wYXRp YmxlIHdpdGggcGFyYW1ldGVyIG9mIHR5cGUgInN0cnVjdCBydGVfbWJ1ZiAqIgogIAkJdmhvc3Rf dXBkYXRlX3NpbmdsZV9wYWNrZXRfeHN0YXRzKHIsIGJ1ZnMpOwogIAkJICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF4KCi4uL2RyaXZlcnMvbmV0L3Zob3N0L3J0ZV9ldGhfdmhv c3QuYyg0NzUpOiBlcnJvcjogZXhwcmVzc2lvbiBtdXN0IGhhdmUgcG9pbnRlciB0eXBlCiAgCXIt PnN0YXRzLT54c3RhdHNbVkhPU1RfQllURV0gKz0gbmJfYnl0ZXM7CiAgCV4KCi4uL2RyaXZlcnMv bmV0L3Zob3N0L3J0ZV9ldGhfdmhvc3QuYyg0NzYpOiBlcnJvcjogc3RydWN0ICJ2aG9zdF9xdWV1 ZSIgaGFzIG5vIGZpZWxkICJ4c3RhdHMiCiAgCXItPnhzdGF0cy0+eHN0YXRzW1ZIT1NUX01JU1NF RF9QS1RdICs9IG5iX21pc3NlZDsKICAJICAgXgoKLi4vZHJpdmVycy9uZXQvdmhvc3QvcnRlX2V0 aF92aG9zdC5jKDQ3Nyk6IGVycm9yOiBzdHJ1Y3QgInZob3N0X3F1ZXVlIiBoYXMgbm8gZmllbGQg InhzdGF0cyIKICAJci0+eHN0YXRzLT54c3RhdHNbVkhPU1RfVU5JQ0FTVF9QS1RdICs9IG5iX21p c3NlZDsKICAJICAgXgoKY29tcGlsYXRpb24gYWJvcnRlZCBmb3IgLi4vZHJpdmVycy9uZXQvdmhv c3QvcnRlX2V0aF92aG9zdC5jIChjb2RlIDIpClsxOTI3LzMwNzJdIENvbXBpbGluZyBDIG9iamVj dCBkcml2ZXJzL2xpYnRtcF9ydGVfbmV0X3RhcC5hLnAvbmV0X3RhcF9ydGVfZXRoX3RhcC5jLm8K WzE5MjgvMzA3Ml0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmRl dl9uZXR2c2MuYS5wL25ldF92ZGV2X25ldHZzY192ZGV2X25ldHZzYy5jLm8KWzE5MjkvMzA3Ml0g Q29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdmlydGlvLmEucC9uZXRf dmlydGlvX3ZpcnRpby5jLm8KWzE5MzAvMzA3Ml0gTGlua2luZyB0YXJnZXQgZHJpdmVycy9saWJy dGVfbmV0X3NvZnRuaWMuc28uMjIuMApbMTkzMS8zMDcyXSBDb21waWxpbmcgQyBvYmplY3QgZHJp dmVycy9saWJ0bXBfcnRlX25ldF90aHVuZGVyeC5hLnAvbmV0X3RodW5kZXJ4X25pY3ZmX2V0aGRl di5jLm8KWzE5MzIvMzA3Ml0gQ29tcGlsaW5nIEMgb2JqZWN0IGRyaXZlcnMvbmV0L3ZpcnRpby9s aWJ2aXJ0aW9fYXZ4NTEyX2xpYi5hLnAvdmlydGlvX3J4dHhfcGFja2VkLmMubwpbMTkzMy8zMDcy XSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF92aXJ0aW8uYS5wL25l dF92aXJ0aW9fdmlydGlvX2V0aGRldi5jLm8KWzE5MzQvMzA3Ml0gQ29tcGlsaW5nIEMgb2JqZWN0 IGRyaXZlcnMvbGlidG1wX3J0ZV9uZXRfdHhnYmUuYS5wL25ldF90eGdiZV90eGdiZV9yeHR4LmMu bwpbMTkzNS8zMDcyXSBDb21waWxpbmcgQyBvYmplY3QgZHJpdmVycy9saWJ0bXBfcnRlX25ldF9v Y3Rlb250eDIuYS5wL25ldF9vY3Rlb250eDJfb3R4Ml90eC5jLm8KbmluamE6IGJ1aWxkIHN0b3Bw ZWQKCgpEUERLIFNUViB0ZWFtCg== --===============0084736591206362369==--