From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 283441B987 for ; Thu, 10 May 2018 10:11:05 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 May 2018 01:11:04 -0700 Message-Id: <0590c7$1k5bd6@orsmga001.jf.intel.com> Date: 10 May 2018 01:11:02 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,384,1520924400"; d="scan'208";a="54701489" Received: from unknown (HELO [127.0.1.1]) ([10.240.176.154]) by orsmga001.jf.intel.com with ESMTP; 10 May 2018 01:11:02 -0700 Content-Type: multipart/alternative; boundary="===============6065418146683441840==" MIME-Version: 1.0 From: sys_stv@intel.com To: test-report@dpdk.org Cc: xinfengx.zhao@intel.com, zhaoyan.chen@intel.com, peipeix.lu@intel.com Subject: [dpdk-test-report] |FAILURE| pw37401[dpdk-dev, v2, 11/15] ethdev: add transfer attribute to flow API X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 May 2018 08:11:05 -0000 --===============6065418146683441840== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogSW50ZWwtY29tcGlsYXRpb24KVGVzdC1TdGF0dXM6IEZBSUxVUkUKaHR0cDov L2RwZGsub3JnL3BhdGNoLzM3NDAxCgpfYXBwbHkgaXNzdWVzXwoKU3VibWl0dGVyOiBBZHJpZW4g TWF6YXJndWlsIDxhZHJpZW4ubWF6YXJndWlsQDZ3aW5kLmNvbT4KRGF0ZTogMjAxOC0wNC0wNiAx MzoyNTo0OQpEUERLIGdpdCBiYXNlbGluZToKCVJlcG86ZHBkay1tYXN0ZXIsIENvbW1pdElEOiA4 ZWE0MTQzODgzMmEzNjBhZWQyYjdiYTQ5ZmI3NWUzMTBhMmZmMWRjCglSZXBvOmRwZGstbmV4dC1l dmVudGRldiwgQ29tbWl0SUQ6IDY0MGIwZDFlNTEwZTExMTY5NGMyNTE0NTQ2NmYzNzg2NzQ1Mzgz N2YKCVJlcG86ZHBkay1uZXh0LW5ldCwgQ29tbWl0SUQ6IDc3NGMxODkyYzQzNGRiYTA5OTk4Y2Nj NzZiOTU2ZmViNzIyMjQ1NzEKCVJlcG86ZHBkay1uZXh0LWNyeXB0bywgQ29tbWl0SUQ6IDcyOGNh OWIwZDVhYmVhODJjZDAxZGVlNjY0NTQ1NmE5ZDU2MjE1ZjcKCVJlcG86ZHBkay1uZXh0LXZpcnRp bywgQ29tbWl0SUQ6IDAzN2MwOTk2YmM5MjczNDJmMTU3NDI2NzM5ZTBjYjYzZjJkYjg2ODkKCipS ZXBvOiBkcGRrLW1hc3RlcgpDaGVja2luZyBwYXRjaCBhcHAvdGVzdC1wbWQvY21kbGluZV9mbG93 LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CglQUklPUklUWSwKCUlOR1JFU1MsCglF R1JFU1MsCgoJLyogVmFsaWRhdGUvY3JlYXRlIHBhdHRlcm4uICovCglQQVRURVJOLAoKZXJyb3I6 IHBhdGNoIGZhaWxlZDogYXBwL3Rlc3QtcG1kL2NtZGxpbmVfZmxvdy5jOjY5CmVycm9yOiBhcHAv dGVzdC1wbWQvY21kbGluZV9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBh dGNoIGFwcC90ZXN0LXBtZC9jb25maWcuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoK CQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX1BSSU9SSVRZXSA9ICJwcmlvcml0eSBmaWVsZCIs CgkJW1JURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTXSA9ICJpbmdyZXNzIGZpZWxkIiwK CQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0VHUkVTU10gPSAiZWdyZXNzIGZpZWxkIiwKCQlb UlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSXSA9ICJhdHRyaWJ1dGVzIHN0cnVjdHVyZSIsCgkJW1JU RV9GTE9XX0VSUk9SX1RZUEVfSVRFTV9OVU1dID0gInBhdHRlcm4gbGVuZ3RoIiwKCQlbUlRFX0ZM T1dfRVJST1JfVFlQRV9JVEVNX1NQRUNdID0gIml0ZW0gc3BlY2lmaWNhdGlvbiIsCgplcnJvcjog cGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC1wbWQvY29uZmlnLmM6MTIyMwplcnJvcjogYXBwL3Rlc3Qt cG1kL2NvbmZpZy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkb2MvZ3Vp ZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0Li4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9y OgpTcGVjaWZ5aW5nIGJvdGggZGlyZWN0aW9ucyBhdCBvbmNlIGZvciBhIGdpdmVuIHJ1bGUgaXMg bm90IHJlY29tbWVuZGVkIGJ1dAptYXkgYmUgdmFsaWQgaW4gYSBmZXcgY2FzZXMgKGUuZy4gc2hh cmVkIGNvdW50ZXJzKS4KClBhdHRlcm4gaXRlbQp+fn5+fn5+fn5+fn4KCgplcnJvcjogcGF0Y2gg ZmFpbGVkOiBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0OjE3OAplcnJvcjogZG9j L2d1aWRlcy9wcm9nX2d1aWRlL3J0ZV9mbG93LnJzdDogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hl Y2tpbmcgcGF0Y2ggZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdC4u LgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKLSBDaGVjayB3aGV0aGVyIGEgZmxvdyBydWxl IGNhbiBiZSBjcmVhdGVkOjoKCiAgIGZsb3cgdmFsaWRhdGUge3BvcnRfaWR9CiAgICAgICBbZ3Jv dXAge2dyb3VwX2lkfV0gW3ByaW9yaXR5IHtsZXZlbH1dIFtpbmdyZXNzXSBbZWdyZXNzXQogICAg ICAgcGF0dGVybiB7aXRlbX0gWy8ge2l0ZW19IFsuLi5dXSAvIGVuZAotLQogICAgICAgW2dyb3Vw IHtncm91cF9pZH1dIFtwcmlvcml0eSB7bGV2ZWx9XSBbaW5ncmVzc10gW2VncmVzc10KICAgICAg IHBhdHRlcm4ge2l0ZW19IFsvIHtpdGVtfSBbLi4uXV0gLyBlbmQKICAgICAgIGFjdGlvbnMge2Fj dGlvbn0gWy8ge2FjdGlvbn0gWy4uLl1dIC8gZW5kCgoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZG9j L2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdDoyOTcwCmVycm9yOiBkb2Mv Z3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0OiBwYXRjaCBkb2VzIG5vdCBh cHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9ibnh0L2JueHRfZmlsdGVyLmMuLi4KSHVu ayAjMSBzdWNjZWVkZWQgYXQgNzY1IChvZmZzZXQgMTUgbGluZXMpLgpDaGVja2luZyBwYXRjaCBk cml2ZXJzL25ldC9lMTAwMC9pZ2JfZmxvdy5jLi4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDM4OCAo b2Zmc2V0IDkgbGluZXMpLgpIdW5rICMyIHN1Y2NlZWRlZCBhdCA2NTAgKG9mZnNldCAxNyBsaW5l cykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDk2NiAob2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBz dWNjZWVkZWQgYXQgMTI3MiAob2Zmc2V0IDM1IGxpbmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQg MTQ0MCAob2Zmc2V0IDQ0IGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvZW5pYy9l bmljX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCQkgICBOVUxMLAoJ CQkJCSAgICJlZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJCQlyZXR1cm4gLXJ0ZV9lcnJubzsK CQl9IGVsc2UgaWYgKCFhdHRycy0+aW5ncmVzcykgewoJCQlydGVfZmxvd19lcnJvcl9zZXQoZXJy b3IsIEVOT1RTVVAsCgkJCQkJICAgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgpl cnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9lbmljL2VuaWNfZmxvdy5jOjEzMDEKZXJy b3I6IGRyaXZlcnMvbmV0L2VuaWMvZW5pY19mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNo ZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2k0MGUvaTQwZV9mbG93LmMuLi4KSHVuayAjMSBzdWNj ZWVkZWQgYXQgMTkxOSAob2Zmc2V0IDEgbGluZSkuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0 L2l4Z2JlL2l4Z2JlX2Zsb3cuYy4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCA1NjYgKG9mZnNldCA5 IGxpbmVzKS4KSHVuayAjMiBzdWNjZWVkZWQgYXQgODEzIChvZmZzZXQgMTcgbGluZXMpLgpIdW5r ICMzIHN1Y2NlZWRlZCBhdCAxMTIxIChvZmZzZXQgMjYgbGluZXMpLgpIdW5rICM0IHN1Y2NlZWRl ZCBhdCAxMzExIChvZmZzZXQgMzUgbGluZXMpLgpIdW5rICM1IHN1Y2NlZWRlZCBhdCAxNDMzIChv ZmZzZXQgNDQgbGluZXMpLgpIdW5rICM2IHN1Y2NlZWRlZCBhdCAyOTI2IChvZmZzZXQgNTMgbGlu ZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9tbHg0L21seDRfZmxvdy5jLi4uCmVycm9y OiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCXJldHVybiBydGVfZmxvd19lcnJvcl9zZXQKCQkJKGVy cm9yLCBFTk9UU1VQLCBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfRUdSRVNTLAoJCQkgTlVMTCwg ImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CglpZiAoIWF0dHItPmluZ3Jlc3MpCgkJcmV0dXJu IHJ0ZV9mbG93X2Vycm9yX3NldAoJCQkoZXJyb3IsIEVOT1RTVVAsIFJURV9GTE9XX0VSUk9SX1RZ UEVfQVRUUl9JTkdSRVNTLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvbWx4NC9t bHg0X2Zsb3cuYzo2NTIKZXJyb3I6IGRyaXZlcnMvbmV0L21seDQvbWx4NF9mbG93LmM6IHBhdGNo IGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93 LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCQkgICAiZWdyZXNzIGlzIG5vdCBz dXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCX0KCWlmICghYXR0ci0+aW5ncmVzcykg ewoJCXJ0ZV9mbG93X2Vycm9yX3NldChlcnJvciwgRU5PVFNVUCwKCQkJCSAgIFJURV9GTE9XX0VS Uk9SX1RZUEVfQVRUUl9JTkdSRVNTLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQv bWx4NS9tbHg1X2Zsb3cuYzo1NjkKZXJyb3I6IGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmM6 IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L212cHAyL21y dmxfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJICAgIkVncmVzcyBp cyBub3Qgc3VwcG9ydGVkIik7CgkJcmV0dXJuIC1ydGVfZXJybm87Cgl9CgoJcmV0dXJuIDA7Cn0K CmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L212cHAyL21ydmxfZmxvdy5jOjIxODgK ZXJyb3I6IGRyaXZlcnMvbmV0L212cHAyL21ydmxfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBs eQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9zZmMvc2ZjX2Zsb3cuYy4uLgplcnJvcjogd2hp bGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJFZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJCXJl dHVybiAtcnRlX2Vycm5vOwoJfQoJaWYgKGF0dHItPmluZ3Jlc3MgPT0gMCkgewoJCXJ0ZV9mbG93 X2Vycm9yX3NldChlcnJvciwgRU5PVFNVUCwKCQkJCSAgIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRU Ul9JTkdSRVNTLCBhdHRyLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvc2ZjL3Nm Y19mbG93LmM6MTEyNgplcnJvcjogZHJpdmVycy9uZXQvc2ZjL3NmY19mbG93LmM6IHBhdGNoIGRv ZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L3RhcC90YXBfZmxvdy5jLi4u CmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJfTsKCWludCBhY3Rpb24gPSAwOyAvKiBPbmx5 IG9uZSBhY3Rpb24gYXV0aG9yaXplZCBmb3Igbm93ICovCgoJaWYgKGF0dHItPmdyb3VwID4gTUFY X0dST1VQKSB7CgkJcnRlX2Zsb3dfZXJyb3Jfc2V0KAoJCQllcnJvciwgRUlOVkFMLCBSVEVfRkxP V19FUlJPUl9UWVBFX0FUVFJfR1JPVVAsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25l dC90YXAvdGFwX2Zsb3cuYzoxMDQxCmVycm9yOiBkcml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYzog cGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggbGliL2xpYnJ0ZV9ldGhlci9ydGVf Zmxvdy5oLi4uCmVycm9yOiBsaWIvbGlicnRlX2V0aGVyL3J0ZV9mbG93Lmg6IE5vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnkKKlJlcG86IGRwZGstbmV4dC1ldmVudGRldgpDaGVja2luZyBwYXRjaCBh cHAvdGVzdC1wbWQvY21kbGluZV9mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6 CglQUklPUklUWSwKCUlOR1JFU1MsCglFR1JFU1MsCgoJLyogVmFsaWRhdGUvY3JlYXRlIHBhdHRl cm4uICovCglQQVRURVJOLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogYXBwL3Rlc3QtcG1kL2NtZGxp bmVfZmxvdy5jOjY5CmVycm9yOiBhcHAvdGVzdC1wbWQvY21kbGluZV9mbG93LmM6IHBhdGNoIGRv ZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGFwcC90ZXN0LXBtZC9jb25maWcuYy4uLgplcnJv cjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX1BSSU9S SVRZXSA9ICJwcmlvcml0eSBmaWVsZCIsCgkJW1JURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdS RVNTXSA9ICJpbmdyZXNzIGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0VHUkVT U10gPSAiZWdyZXNzIGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSXSA9ICJhdHRy aWJ1dGVzIHN0cnVjdHVyZSIsCgkJW1JURV9GTE9XX0VSUk9SX1RZUEVfSVRFTV9OVU1dID0gInBh dHRlcm4gbGVuZ3RoIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9JVEVNX1NQRUNdID0gIml0ZW0g c3BlY2lmaWNhdGlvbiIsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC1wbWQvY29uZmln LmM6MTIyMwplcnJvcjogYXBwL3Rlc3QtcG1kL2NvbmZpZy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBs eQpDaGVja2luZyBwYXRjaCBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0Li4uCmVy cm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgpTcGVjaWZ5aW5nIGJvdGggZGlyZWN0aW9ucyBhdCBv bmNlIGZvciBhIGdpdmVuIHJ1bGUgaXMgbm90IHJlY29tbWVuZGVkIGJ1dAptYXkgYmUgdmFsaWQg aW4gYSBmZXcgY2FzZXMgKGUuZy4gc2hhcmVkIGNvdW50ZXJzKS4KClBhdHRlcm4gaXRlbQp+fn5+ fn5+fn5+fn4KCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRl X2Zsb3cucnN0OjE3OAplcnJvcjogZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3J0ZV9mbG93LnJzdDog cGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZG9jL2d1aWRlcy90ZXN0cG1kX2Fw cF91Zy90ZXN0cG1kX2Z1bmNzLnJzdC4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKLSBD aGVjayB3aGV0aGVyIGEgZmxvdyBydWxlIGNhbiBiZSBjcmVhdGVkOjoKCiAgIGZsb3cgdmFsaWRh dGUge3BvcnRfaWR9CiAgICAgICBbZ3JvdXAge2dyb3VwX2lkfV0gW3ByaW9yaXR5IHtsZXZlbH1d IFtpbmdyZXNzXSBbZWdyZXNzXQogICAgICAgcGF0dGVybiB7aXRlbX0gWy8ge2l0ZW19IFsuLi5d XSAvIGVuZAotLQogICAgICAgW2dyb3VwIHtncm91cF9pZH1dIFtwcmlvcml0eSB7bGV2ZWx9XSBb aW5ncmVzc10gW2VncmVzc10KICAgICAgIHBhdHRlcm4ge2l0ZW19IFsvIHtpdGVtfSBbLi4uXV0g LyBlbmQKICAgICAgIGFjdGlvbnMge2FjdGlvbn0gWy8ge2FjdGlvbn0gWy4uLl1dIC8gZW5kCgoK ZXJyb3I6IHBhdGNoIGZhaWxlZDogZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0cG1kX2Z1 bmNzLnJzdDoyOTcwCmVycm9yOiBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVu Y3MucnN0OiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9i bnh0L2JueHRfZmlsdGVyLmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgNzY1IChvZmZzZXQgMTUg bGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9lMTAwMC9pZ2JfZmxvdy5jLi4uCkh1 bmsgIzEgc3VjY2VlZGVkIGF0IDM4OCAob2Zmc2V0IDkgbGluZXMpLgpIdW5rICMyIHN1Y2NlZWRl ZCBhdCA2NTAgKG9mZnNldCAxNyBsaW5lcykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDk2NiAob2Zm c2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTI3MiAob2Zmc2V0IDM1IGxpbmVz KS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQ0MCAob2Zmc2V0IDQ0IGxpbmVzKS4KQ2hlY2tpbmcg cGF0Y2ggZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNo aW5nIGZvcjoKCQkJCQkgICBOVUxMLAoJCQkJCSAgICJlZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIp OwoJCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCQl9IGVsc2UgaWYgKCFhdHRycy0+aW5ncmVzcykgewoJ CQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkJICAgUlRFX0ZMT1dfRVJS T1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9l bmljL2VuaWNfZmxvdy5jOjEzMDEKZXJyb3I6IGRyaXZlcnMvbmV0L2VuaWMvZW5pY19mbG93LmM6 IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2k0MGUvaTQw ZV9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgMTkxOSAob2Zmc2V0IDEgbGluZSkuCkNo ZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2Zsb3cuYy4uLgpIdW5rICMxIHN1 Y2NlZWRlZCBhdCA1NjYgKG9mZnNldCA5IGxpbmVzKS4KSHVuayAjMiBzdWNjZWVkZWQgYXQgODEz IChvZmZzZXQgMTcgbGluZXMpLgpIdW5rICMzIHN1Y2NlZWRlZCBhdCAxMTIxIChvZmZzZXQgMjYg bGluZXMpLgpIdW5rICM0IHN1Y2NlZWRlZCBhdCAxMzExIChvZmZzZXQgMzUgbGluZXMpLgpIdW5r ICM1IHN1Y2NlZWRlZCBhdCAxNDMzIChvZmZzZXQgNDQgbGluZXMpLgpIdW5rICM2IHN1Y2NlZWRl ZCBhdCAyOTI2IChvZmZzZXQgNTMgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9t bHg0L21seDRfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCXJldHVybiBy dGVfZmxvd19lcnJvcl9zZXQKCQkJKGVycm9yLCBFTk9UU1VQLCBSVEVfRkxPV19FUlJPUl9UWVBF X0FUVFJfRUdSRVNTLAoJCQkgTlVMTCwgImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CglpZiAo IWF0dHItPmluZ3Jlc3MpCgkJcmV0dXJuIHJ0ZV9mbG93X2Vycm9yX3NldAoJCQkoZXJyb3IsIEVO T1RTVVAsIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLAoKZXJyb3I6IHBhdGNoIGZh aWxlZDogZHJpdmVycy9uZXQvbWx4NC9tbHg0X2Zsb3cuYzo2NTIKZXJyb3I6IGRyaXZlcnMvbmV0 L21seDQvbWx4NF9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRy aXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6 CgkJCQkgICAiZWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJubzsK CX0KCWlmICghYXR0ci0+aW5ncmVzcykgewoJCXJ0ZV9mbG93X2Vycm9yX3NldChlcnJvciwgRU5P VFNVUCwKCQkJCSAgIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLAoKZXJyb3I6IHBh dGNoIGZhaWxlZDogZHJpdmVycy9uZXQvbWx4NS9tbHg1X2Zsb3cuYzo1NjkKZXJyb3I6IGRyaXZl cnMvbmV0L21seDUvbWx4NV9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBh dGNoIGRyaXZlcnMvbmV0L212cHAyL21ydmxfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hp bmcgZm9yOgoJCQkJICAgIkVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJcmV0dXJuIC1ydGVf ZXJybm87Cgl9CgoJcmV0dXJuIDA7Cn0KCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0 L212cHAyL21ydmxfZmxvdy5jOjIxODgKZXJyb3I6IGRyaXZlcnMvbmV0L212cHAyL21ydmxfZmxv dy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9zZmMv c2ZjX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJFZ3Jlc3Mg aXMgbm90IHN1cHBvcnRlZCIpOwoJCXJldHVybiAtcnRlX2Vycm5vOwoJfQoJaWYgKGF0dHItPmlu Z3Jlc3MgPT0gMCkgewoJCXJ0ZV9mbG93X2Vycm9yX3NldChlcnJvciwgRU5PVFNVUCwKCQkJCSAg IFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLCBhdHRyLAoKZXJyb3I6IHBhdGNoIGZh aWxlZDogZHJpdmVycy9uZXQvc2ZjL3NmY19mbG93LmM6MTEyNgplcnJvcjogZHJpdmVycy9uZXQv c2ZjL3NmY19mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZl cnMvbmV0L3RhcC90YXBfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJfTsK CWludCBhY3Rpb24gPSAwOyAvKiBPbmx5IG9uZSBhY3Rpb24gYXV0aG9yaXplZCBmb3Igbm93ICov CgoJaWYgKGF0dHItPmdyb3VwID4gTUFYX0dST1VQKSB7CgkJcnRlX2Zsb3dfZXJyb3Jfc2V0KAoJ CQllcnJvciwgRUlOVkFMLCBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfR1JPVVAsCgplcnJvcjog cGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYzoxMDQxCmVycm9yOiBkcml2 ZXJzL25ldC90YXAvdGFwX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0 Y2ggbGliL2xpYnJ0ZV9ldGhlci9ydGVfZmxvdy5oLi4uCmVycm9yOiBsaWIvbGlicnRlX2V0aGVy L3J0ZV9mbG93Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKKlJlcG86IGRwZGstbmV4dC1u ZXQKQ2hlY2tpbmcgcGF0Y2ggYXBwL3Rlc3QtcG1kL2NtZGxpbmVfZmxvdy5jLi4uCmVycm9yOiB3 aGlsZSBzZWFyY2hpbmcgZm9yOgoJUFJJT1JJVFksCglJTkdSRVNTLAoJRUdSRVNTLAoKCS8qIFZh bGlkYXRlL2NyZWF0ZSBwYXR0ZXJuLiAqLwoJUEFUVEVSTiwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6 IGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zsb3cuYzo2OQplcnJvcjogYXBwL3Rlc3QtcG1kL2NtZGxp bmVfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBhcHAvdGVzdC1w bWQvY29uZmlnLmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJW1JURV9GTE9XX0VS Uk9SX1RZUEVfQVRUUl9QUklPUklUWV0gPSAicHJpb3JpdHkgZmllbGQiLAoJCVtSVEVfRkxPV19F UlJPUl9UWVBFX0FUVFJfSU5HUkVTU10gPSAiaW5ncmVzcyBmaWVsZCIsCgkJW1JURV9GTE9XX0VS Uk9SX1RZUEVfQVRUUl9FR1JFU1NdID0gImVncmVzcyBmaWVsZCIsCgkJW1JURV9GTE9XX0VSUk9S X1RZUEVfQVRUUl0gPSAiYXR0cmlidXRlcyBzdHJ1Y3R1cmUiLAoJCVtSVEVfRkxPV19FUlJPUl9U WVBFX0lURU1fTlVNXSA9ICJwYXR0ZXJuIGxlbmd0aCIsCgkJW1JURV9GTE9XX0VSUk9SX1RZUEVf SVRFTV9TUEVDXSA9ICJpdGVtIHNwZWNpZmljYXRpb24iLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDog YXBwL3Rlc3QtcG1kL2NvbmZpZy5jOjEyMjMKZXJyb3I6IGFwcC90ZXN0LXBtZC9jb25maWcuYzog cGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZG9jL2d1aWRlcy9wcm9nX2d1aWRl L3J0ZV9mbG93LnJzdC4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKU3BlY2lmeWluZyBi b3RoIGRpcmVjdGlvbnMgYXQgb25jZSBmb3IgYSBnaXZlbiBydWxlIGlzIG5vdCByZWNvbW1lbmRl ZCBidXQKbWF5IGJlIHZhbGlkIGluIGEgZmV3IGNhc2VzIChlLmcuIHNoYXJlZCBjb3VudGVycyku CgpQYXR0ZXJuIGl0ZW0Kfn5+fn5+fn5+fn5+CgoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZG9jL2d1 aWRlcy9wcm9nX2d1aWRlL3J0ZV9mbG93LnJzdDoxNzgKZXJyb3I6IGRvYy9ndWlkZXMvcHJvZ19n dWlkZS9ydGVfZmxvdy5yc3Q6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRv Yy9ndWlkZXMvdGVzdHBtZF9hcHBfdWcvdGVzdHBtZF9mdW5jcy5yc3QuLi4KZXJyb3I6IHdoaWxl IHNlYXJjaGluZyBmb3I6Ci0gQ2hlY2sgd2hldGhlciBhIGZsb3cgcnVsZSBjYW4gYmUgY3JlYXRl ZDo6CgogICBmbG93IHZhbGlkYXRlIHtwb3J0X2lkfQogICAgICAgW2dyb3VwIHtncm91cF9pZH1d IFtwcmlvcml0eSB7bGV2ZWx9XSBbaW5ncmVzc10gW2VncmVzc10KICAgICAgIHBhdHRlcm4ge2l0 ZW19IFsvIHtpdGVtfSBbLi4uXV0gLyBlbmQKLS0KICAgICAgIFtncm91cCB7Z3JvdXBfaWR9XSBb cHJpb3JpdHkge2xldmVsfV0gW2luZ3Jlc3NdIFtlZ3Jlc3NdCiAgICAgICBwYXR0ZXJuIHtpdGVt fSBbLyB7aXRlbX0gWy4uLl1dIC8gZW5kCiAgICAgICBhY3Rpb25zIHthY3Rpb259IFsvIHthY3Rp b259IFsuLi5dXSAvIGVuZAoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRvYy9ndWlkZXMvdGVzdHBt ZF9hcHBfdWcvdGVzdHBtZF9mdW5jcy5yc3Q6Mjk3MAplcnJvcjogZG9jL2d1aWRlcy90ZXN0cG1k X2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdDogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcg cGF0Y2ggZHJpdmVycy9uZXQvYm54dC9ibnh0X2ZpbHRlci5jLi4uCkh1bmsgIzEgc3VjY2VlZGVk IGF0IDc2NyAob2Zmc2V0IDE3IGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvZTEw MDAvaWdiX2Zsb3cuYy4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCAzODggKG9mZnNldCA5IGxpbmVz KS4KSHVuayAjMiBzdWNjZWVkZWQgYXQgNjUwIChvZmZzZXQgMTcgbGluZXMpLgpIdW5rICMzIHN1 Y2NlZWRlZCBhdCA5NjYgKG9mZnNldCAyNiBsaW5lcykuCkh1bmsgIzQgc3VjY2VlZGVkIGF0IDEy NzIgKG9mZnNldCAzNSBsaW5lcykuCkh1bmsgIzUgc3VjY2VlZGVkIGF0IDE0NDAgKG9mZnNldCA0 NCBsaW5lcykuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2VuaWMvZW5pY19mbG93LmMuLi4K ZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCQkJICAgTlVMTCwKCQkJCQkgICAiZWdyZXNz IGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQkJcmV0dXJuIC1ydGVfZXJybm87CgkJfSBlbHNlIGlmICgh YXR0cnMtPmluZ3Jlc3MpIHsKCQkJcnRlX2Zsb3dfZXJyb3Jfc2V0KGVycm9yLCBFTk9UU1VQLAoJ CQkJCSAgIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLAoKZXJyb3I6IHBhdGNoIGZh aWxlZDogZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYzoxMzAxCmVycm9yOiBkcml2ZXJzL25l dC9lbmljL2VuaWNfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBk cml2ZXJzL25ldC9pNDBlL2k0MGVfZmxvdy5jLi4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDE5MTkg KG9mZnNldCAxIGxpbmUpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9peGdiZS9peGdiZV9m bG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgNTY2IChvZmZzZXQgOSBsaW5lcykuCkh1bmsg IzIgc3VjY2VlZGVkIGF0IDgxMyAob2Zmc2V0IDE3IGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQg YXQgMTEyMSAob2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTMxMSAob2Zm c2V0IDM1IGxpbmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQzMyAob2Zmc2V0IDQ0IGxpbmVz KS4KSHVuayAjNiBzdWNjZWVkZWQgYXQgMjkyNiAob2Zmc2V0IDUzIGxpbmVzKS4KQ2hlY2tpbmcg cGF0Y2ggZHJpdmVycy9uZXQvbWx4NC9tbHg0X2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNo aW5nIGZvcjoKCQlyZXR1cm4gcnRlX2Zsb3dfZXJyb3Jfc2V0CgkJCShlcnJvciwgRU5PVFNVUCwg UlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0VHUkVTUywKCQkJIE5VTEwsICJlZ3Jlc3MgaXMgbm90 IHN1cHBvcnRlZCIpOwoJaWYgKCFhdHRyLT5pbmdyZXNzKQoJCXJldHVybiBydGVfZmxvd19lcnJv cl9zZXQKCQkJKGVycm9yLCBFTk9UU1VQLCBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVT UywKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDQvbWx4NF9mbG93LmM6NjUy CmVycm9yOiBkcml2ZXJzL25ldC9tbHg0L21seDRfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBs eQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jLi4uCmVycm9yOiB3 aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJICAgImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJ cmV0dXJuIC1ydGVfZXJybm87Cgl9CglpZiAoIWF0dHItPmluZ3Jlc3MpIHsKCQlydGVfZmxvd19l cnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJf SU5HUkVTUywKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93 LmM6NTY5CmVycm9yOiBkcml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jOiBwYXRjaCBkb2VzIG5v dCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYy4uLgpl cnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJFZ3Jlc3MgaXMgbm90IHN1cHBvcnRl ZCIpOwoJCXJldHVybiAtcnRlX2Vycm5vOwoJfQoKCXJldHVybiAwOwp9CgplcnJvcjogcGF0Y2gg ZmFpbGVkOiBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYzoyMTg4CmVycm9yOiBkcml2ZXJz L25ldC9tdnBwMi9tcnZsX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0 Y2ggZHJpdmVycy9uZXQvc2ZjL3NmY19mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBm b3I6CgkJCQkgICAiRWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJu bzsKCX0KCWlmIChhdHRyLT5pbmdyZXNzID09IDApIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoZXJy b3IsIEVOT1RTVVAsCgkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywgYXR0 ciwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jOjExMjYK ZXJyb3I6IGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpD aGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUg c2VhcmNoaW5nIGZvcjoKCX07CglpbnQgYWN0aW9uID0gMDsgLyogT25seSBvbmUgYWN0aW9uIGF1 dGhvcml6ZWQgZm9yIG5vdyAqLwoKCWlmIChhdHRyLT5ncm91cCA+IE1BWF9HUk9VUCkgewoJCXJ0 ZV9mbG93X2Vycm9yX3NldCgKCQkJZXJyb3IsIEVJTlZBTCwgUlRFX0ZMT1dfRVJST1JfVFlQRV9B VFRSX0dST1VQLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93 LmM6MTA0MQplcnJvcjogZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmM6IHBhdGNoIGRvZXMgbm90 IGFwcGx5CkNoZWNraW5nIHBhdGNoIGxpYi9saWJydGVfZXRoZXIvcnRlX2Zsb3cuaC4uLgplcnJv cjogbGliL2xpYnJ0ZV9ldGhlci9ydGVfZmxvdy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 CipSZXBvOiBkcGRrLW5leHQtY3J5cHRvCkNoZWNraW5nIHBhdGNoIGFwcC90ZXN0LXBtZC9jbWRs aW5lX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCVBSSU9SSVRZLAoJSU5H UkVTUywKCUVHUkVTUywKCgkvKiBWYWxpZGF0ZS9jcmVhdGUgcGF0dGVybi4gKi8KCVBBVFRFUk4s CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC1wbWQvY21kbGluZV9mbG93LmM6NjkKZXJy b3I6IGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hl Y2tpbmcgcGF0Y2ggYXBwL3Rlc3QtcG1kL2NvbmZpZy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hp bmcgZm9yOgoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfUFJJT1JJVFldID0gInByaW9yaXR5 IGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1NdID0gImluZ3Jlc3Mg ZmllbGQiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfRUdSRVNTXSA9ICJlZ3Jlc3MgZmll bGQiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJdID0gImF0dHJpYnV0ZXMgc3RydWN0dXJl IiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9JVEVNX05VTV0gPSAicGF0dGVybiBsZW5ndGgiLAoJ CVtSVEVfRkxPV19FUlJPUl9UWVBFX0lURU1fU1BFQ10gPSAiaXRlbSBzcGVjaWZpY2F0aW9uIiwK CmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90ZXN0LXBtZC9jb25maWcuYzoxMjIzCmVycm9yOiBh cHAvdGVzdC1wbWQvY29uZmlnLmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNo IGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3QuLi4KZXJyb3I6IHdoaWxlIHNlYXJj aGluZyBmb3I6ClNwZWNpZnlpbmcgYm90aCBkaXJlY3Rpb25zIGF0IG9uY2UgZm9yIGEgZ2l2ZW4g cnVsZSBpcyBub3QgcmVjb21tZW5kZWQgYnV0Cm1heSBiZSB2YWxpZCBpbiBhIGZldyBjYXNlcyAo ZS5nLiBzaGFyZWQgY291bnRlcnMpLgoKUGF0dGVybiBpdGVtCn5+fn5+fn5+fn5+fgoKCmVycm9y OiBwYXRjaCBmYWlsZWQ6IGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3Q6MTc4CmVy cm9yOiBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0OiBwYXRjaCBkb2VzIG5vdCBh cHBseQpDaGVja2luZyBwYXRjaCBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVu Y3MucnN0Li4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgotIENoZWNrIHdoZXRoZXIgYSBm bG93IHJ1bGUgY2FuIGJlIGNyZWF0ZWQ6OgoKICAgZmxvdyB2YWxpZGF0ZSB7cG9ydF9pZH0KICAg ICAgIFtncm91cCB7Z3JvdXBfaWR9XSBbcHJpb3JpdHkge2xldmVsfV0gW2luZ3Jlc3NdIFtlZ3Jl c3NdCiAgICAgICBwYXR0ZXJuIHtpdGVtfSBbLyB7aXRlbX0gWy4uLl1dIC8gZW5kCi0tCiAgICAg ICBbZ3JvdXAge2dyb3VwX2lkfV0gW3ByaW9yaXR5IHtsZXZlbH1dIFtpbmdyZXNzXSBbZWdyZXNz XQogICAgICAgcGF0dGVybiB7aXRlbX0gWy8ge2l0ZW19IFsuLi5dXSAvIGVuZAogICAgICAgYWN0 aW9ucyB7YWN0aW9ufSBbLyB7YWN0aW9ufSBbLi4uXV0gLyBlbmQKCgplcnJvcjogcGF0Y2ggZmFp bGVkOiBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0OjI5NzAKZXJy b3I6IGRvYy9ndWlkZXMvdGVzdHBtZF9hcHBfdWcvdGVzdHBtZF9mdW5jcy5yc3Q6IHBhdGNoIGRv ZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2JueHQvYm54dF9maWx0ZXIu Yy4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCA3NjUgKG9mZnNldCAxNSBsaW5lcykuCkNoZWNraW5n IHBhdGNoIGRyaXZlcnMvbmV0L2UxMDAwL2lnYl9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQg YXQgMzg4IChvZmZzZXQgOSBsaW5lcykuCkh1bmsgIzIgc3VjY2VlZGVkIGF0IDY1MCAob2Zmc2V0 IDE3IGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQgYXQgOTY2IChvZmZzZXQgMjYgbGluZXMpLgpI dW5rICM0IHN1Y2NlZWRlZCBhdCAxMjcyIChvZmZzZXQgMzUgbGluZXMpLgpIdW5rICM1IHN1Y2Nl ZWRlZCBhdCAxNDQwIChvZmZzZXQgNDQgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25l dC9lbmljL2VuaWNfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJCSAg IE5VTEwsCgkJCQkJICAgImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJCXJldHVybiAtcnRl X2Vycm5vOwoJCX0gZWxzZSBpZiAoIWF0dHJzLT5pbmdyZXNzKSB7CgkJCXJ0ZV9mbG93X2Vycm9y X3NldChlcnJvciwgRU5PVFNVUCwKCQkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5H UkVTUywKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L2VuaWMvZW5pY19mbG93LmM6 MTMwMQplcnJvcjogZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3Qg YXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvaTQwZS9pNDBlX2Zsb3cuYy4uLgpIdW5r ICMxIHN1Y2NlZWRlZCBhdCAxOTE5IChvZmZzZXQgMSBsaW5lKS4KQ2hlY2tpbmcgcGF0Y2ggZHJp dmVycy9uZXQvaXhnYmUvaXhnYmVfZmxvdy5jLi4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDU2NiAo b2Zmc2V0IDkgbGluZXMpLgpIdW5rICMyIHN1Y2NlZWRlZCBhdCA4MTMgKG9mZnNldCAxNyBsaW5l cykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDExMjEgKG9mZnNldCAyNiBsaW5lcykuCkh1bmsgIzQg c3VjY2VlZGVkIGF0IDEzMTEgKG9mZnNldCAzNSBsaW5lcykuCkh1bmsgIzUgc3VjY2VlZGVkIGF0 IDE0MzMgKG9mZnNldCA0NCBsaW5lcykuCkh1bmsgIzYgc3VjY2VlZGVkIGF0IDI5MjYgKG9mZnNl dCA1MyBsaW5lcykuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L21seDQvbWx4NF9mbG93LmMu Li4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJcmV0dXJuIHJ0ZV9mbG93X2Vycm9yX3Nl dAoJCQkoZXJyb3IsIEVOT1RTVVAsIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9FR1JFU1MsCgkJ CSBOVUxMLCAiZWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCWlmICghYXR0ci0+aW5ncmVzcykK CQlyZXR1cm4gcnRlX2Zsb3dfZXJyb3Jfc2V0CgkJCShlcnJvciwgRU5PVFNVUCwgUlRFX0ZMT1df RVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25l dC9tbHg0L21seDRfZmxvdy5jOjY1MgplcnJvcjogZHJpdmVycy9uZXQvbWx4NC9tbHg0X2Zsb3cu YzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvbWx4NS9t bHg1X2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJlZ3Jlc3Mg aXMgbm90IHN1cHBvcnRlZCIpOwoJCXJldHVybiAtcnRlX2Vycm5vOwoJfQoJaWYgKCFhdHRyLT5p bmdyZXNzKSB7CgkJcnRlX2Zsb3dfZXJyb3Jfc2V0KGVycm9yLCBFTk9UU1VQLAoJCQkJICAgUlRF X0ZMT1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2 ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jOjU2OQplcnJvcjogZHJpdmVycy9uZXQvbWx4NS9tbHg1 X2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQv bXZwcDIvbXJ2bF9mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCQkgICAi RWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCX0KCglyZXR1 cm4gMDsKfQoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvbXZwcDIvbXJ2bF9mbG93 LmM6MjE4OAplcnJvcjogZHJpdmVycy9uZXQvbXZwcDIvbXJ2bF9mbG93LmM6IHBhdGNoIGRvZXMg bm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jLi4uCmVy cm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJICAgIkVncmVzcyBpcyBub3Qgc3VwcG9ydGVk Iik7CgkJcmV0dXJuIC1ydGVfZXJybm87Cgl9CglpZiAoYXR0ci0+aW5ncmVzcyA9PSAwKSB7CgkJ cnRlX2Zsb3dfZXJyb3Jfc2V0KGVycm9yLCBFTk9UU1VQLAoJCQkJICAgUlRFX0ZMT1dfRVJST1Jf VFlQRV9BVFRSX0lOR1JFU1MsIGF0dHIsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25l dC9zZmMvc2ZjX2Zsb3cuYzoxMTI2CmVycm9yOiBkcml2ZXJzL25ldC9zZmMvc2ZjX2Zsb3cuYzog cGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvdGFwL3RhcF9m bG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6Cgl9OwoJaW50IGFjdGlvbiA9IDA7 IC8qIE9ubHkgb25lIGFjdGlvbiBhdXRob3JpemVkIGZvciBub3cgKi8KCglpZiAoYXR0ci0+Z3Jv dXAgPiBNQVhfR1JPVVApIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoCgkJCWVycm9yLCBFSU5WQUws IFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9HUk9VUCwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRy aXZlcnMvbmV0L3RhcC90YXBfZmxvdy5jOjEwNDEKZXJyb3I6IGRyaXZlcnMvbmV0L3RhcC90YXBf Zmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBsaWIvbGlicnRlX2V0 aGVyL3J0ZV9mbG93LmguLi4KZXJyb3I6IGxpYi9saWJydGVfZXRoZXIvcnRlX2Zsb3cuaDogTm8g c3VjaCBmaWxlIG9yIGRpcmVjdG9yeQoqUmVwbzogZHBkay1uZXh0LXZpcnRpbwpDaGVja2luZyBw YXRjaCBhcHAvdGVzdC1wbWQvY21kbGluZV9mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGlu ZyBmb3I6CglQUklPUklUWSwKCUlOR1JFU1MsCglFR1JFU1MsCgoJLyogVmFsaWRhdGUvY3JlYXRl IHBhdHRlcm4uICovCglQQVRURVJOLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogYXBwL3Rlc3QtcG1k L2NtZGxpbmVfZmxvdy5jOjY5CmVycm9yOiBhcHAvdGVzdC1wbWQvY21kbGluZV9mbG93LmM6IHBh dGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGFwcC90ZXN0LXBtZC9jb25maWcuYy4u LgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRS X1BSSU9SSVRZXSA9ICJwcmlvcml0eSBmaWVsZCIsCgkJW1JURV9GTE9XX0VSUk9SX1RZUEVfQVRU Ul9JTkdSRVNTXSA9ICJpbmdyZXNzIGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRS X0VHUkVTU10gPSAiZWdyZXNzIGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSXSA9 ICJhdHRyaWJ1dGVzIHN0cnVjdHVyZSIsCgkJW1JURV9GTE9XX0VSUk9SX1RZUEVfSVRFTV9OVU1d ID0gInBhdHRlcm4gbGVuZ3RoIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9JVEVNX1NQRUNdID0g Iml0ZW0gc3BlY2lmaWNhdGlvbiIsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC1wbWQv Y29uZmlnLmM6MTIyMwplcnJvcjogYXBwL3Rlc3QtcG1kL2NvbmZpZy5jOiBwYXRjaCBkb2VzIG5v dCBhcHBseQpDaGVja2luZyBwYXRjaCBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0 Li4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgpTcGVjaWZ5aW5nIGJvdGggZGlyZWN0aW9u cyBhdCBvbmNlIGZvciBhIGdpdmVuIHJ1bGUgaXMgbm90IHJlY29tbWVuZGVkIGJ1dAptYXkgYmUg dmFsaWQgaW4gYSBmZXcgY2FzZXMgKGUuZy4gc2hhcmVkIGNvdW50ZXJzKS4KClBhdHRlcm4gaXRl bQp+fn5+fn5+fn5+fn4KCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkb2MvZ3VpZGVzL3Byb2dfZ3Vp ZGUvcnRlX2Zsb3cucnN0OjE3OAplcnJvcjogZG9jL2d1aWRlcy9wcm9nX2d1aWRlL3J0ZV9mbG93 LnJzdDogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZG9jL2d1aWRlcy90ZXN0 cG1kX2FwcF91Zy90ZXN0cG1kX2Z1bmNzLnJzdC4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZv cjoKLSBDaGVjayB3aGV0aGVyIGEgZmxvdyBydWxlIGNhbiBiZSBjcmVhdGVkOjoKCiAgIGZsb3cg dmFsaWRhdGUge3BvcnRfaWR9CiAgICAgICBbZ3JvdXAge2dyb3VwX2lkfV0gW3ByaW9yaXR5IHts ZXZlbH1dIFtpbmdyZXNzXSBbZWdyZXNzXQogICAgICAgcGF0dGVybiB7aXRlbX0gWy8ge2l0ZW19 IFsuLi5dXSAvIGVuZAotLQogICAgICAgW2dyb3VwIHtncm91cF9pZH1dIFtwcmlvcml0eSB7bGV2 ZWx9XSBbaW5ncmVzc10gW2VncmVzc10KICAgICAgIHBhdHRlcm4ge2l0ZW19IFsvIHtpdGVtfSBb Li4uXV0gLyBlbmQKICAgICAgIGFjdGlvbnMge2FjdGlvbn0gWy8ge2FjdGlvbn0gWy4uLl1dIC8g ZW5kCgoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZG9jL2d1aWRlcy90ZXN0cG1kX2FwcF91Zy90ZXN0 cG1kX2Z1bmNzLnJzdDoyOTcwCmVycm9yOiBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3Rw bWRfZnVuY3MucnN0OiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJz L25ldC9ibnh0L2JueHRfZmlsdGVyLmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgNzY1IChvZmZz ZXQgMTUgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9lMTAwMC9pZ2JfZmxvdy5j Li4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDM4OCAob2Zmc2V0IDkgbGluZXMpLgpIdW5rICMyIHN1 Y2NlZWRlZCBhdCA2NTAgKG9mZnNldCAxNyBsaW5lcykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDk2 NiAob2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTI3MiAob2Zmc2V0IDM1 IGxpbmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQ0MCAob2Zmc2V0IDQ0IGxpbmVzKS4KQ2hl Y2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUg c2VhcmNoaW5nIGZvcjoKCQkJCQkgICBOVUxMLAoJCQkJCSAgICJlZ3Jlc3MgaXMgbm90IHN1cHBv cnRlZCIpOwoJCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCQl9IGVsc2UgaWYgKCFhdHRycy0+aW5ncmVz cykgewoJCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkJICAgUlRFX0ZM T1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJz L25ldC9lbmljL2VuaWNfZmxvdy5jOjEzMDEKZXJyb3I6IGRyaXZlcnMvbmV0L2VuaWMvZW5pY19m bG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2k0 MGUvaTQwZV9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgMTkxOSAob2Zmc2V0IDEgbGlu ZSkuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX2Zsb3cuYy4uLgpIdW5r ICMxIHN1Y2NlZWRlZCBhdCA1NjYgKG9mZnNldCA5IGxpbmVzKS4KSHVuayAjMiBzdWNjZWVkZWQg YXQgODEzIChvZmZzZXQgMTcgbGluZXMpLgpIdW5rICMzIHN1Y2NlZWRlZCBhdCAxMTIxIChvZmZz ZXQgMjYgbGluZXMpLgpIdW5rICM0IHN1Y2NlZWRlZCBhdCAxMzExIChvZmZzZXQgMzUgbGluZXMp LgpIdW5rICM1IHN1Y2NlZWRlZCBhdCAxNDMzIChvZmZzZXQgNDQgbGluZXMpLgpIdW5rICM2IHN1 Y2NlZWRlZCBhdCAyOTI2IChvZmZzZXQgNTMgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJz L25ldC9tbHg0L21seDRfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCXJl dHVybiBydGVfZmxvd19lcnJvcl9zZXQKCQkJKGVycm9yLCBFTk9UU1VQLCBSVEVfRkxPV19FUlJP Ul9UWVBFX0FUVFJfRUdSRVNTLAoJCQkgTlVMTCwgImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7 CglpZiAoIWF0dHItPmluZ3Jlc3MpCgkJcmV0dXJuIHJ0ZV9mbG93X2Vycm9yX3NldAoJCQkoZXJy b3IsIEVOT1RTVVAsIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLAoKZXJyb3I6IHBh dGNoIGZhaWxlZDogZHJpdmVycy9uZXQvbWx4NC9tbHg0X2Zsb3cuYzo2NTIKZXJyb3I6IGRyaXZl cnMvbmV0L21seDQvbWx4NF9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBh dGNoIGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGlu ZyBmb3I6CgkJCQkgICAiZWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9l cnJubzsKCX0KCWlmICghYXR0ci0+aW5ncmVzcykgewoJCXJ0ZV9mbG93X2Vycm9yX3NldChlcnJv ciwgRU5PVFNVUCwKCQkJCSAgIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLAoKZXJy b3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvbWx4NS9tbHg1X2Zsb3cuYzo1NjkKZXJyb3I6 IGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNr aW5nIHBhdGNoIGRyaXZlcnMvbmV0L212cHAyL21ydmxfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBz ZWFyY2hpbmcgZm9yOgoJCQkJICAgIkVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJcmV0dXJu IC1ydGVfZXJybm87Cgl9CgoJcmV0dXJuIDA7Cn0KCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZl cnMvbmV0L212cHAyL21ydmxfZmxvdy5jOjIxODgKZXJyb3I6IGRyaXZlcnMvbmV0L212cHAyL21y dmxfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25l dC9zZmMvc2ZjX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJF Z3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJCXJldHVybiAtcnRlX2Vycm5vOwoJfQoJaWYgKGF0 dHItPmluZ3Jlc3MgPT0gMCkgewoJCXJ0ZV9mbG93X2Vycm9yX3NldChlcnJvciwgRU5PVFNVUCwK CQkJCSAgIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLCBhdHRyLAoKZXJyb3I6IHBh dGNoIGZhaWxlZDogZHJpdmVycy9uZXQvc2ZjL3NmY19mbG93LmM6MTEyNgplcnJvcjogZHJpdmVy cy9uZXQvc2ZjL3NmY19mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNo IGRyaXZlcnMvbmV0L3RhcC90YXBfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9y OgoJfTsKCWludCBhY3Rpb24gPSAwOyAvKiBPbmx5IG9uZSBhY3Rpb24gYXV0aG9yaXplZCBmb3Ig bm93ICovCgoJaWYgKGF0dHItPmdyb3VwID4gTUFYX0dST1VQKSB7CgkJcnRlX2Zsb3dfZXJyb3Jf c2V0KAoJCQllcnJvciwgRUlOVkFMLCBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfR1JPVVAsCgpl cnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYzoxMDQxCmVycm9y OiBkcml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tp bmcgcGF0Y2ggbGliL2xpYnJ0ZV9ldGhlci9ydGVfZmxvdy5oLi4uCmVycm9yOiBsaWIvbGlicnRl X2V0aGVyL3J0ZV9mbG93Lmg6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKCkRQREsgU1RWIHRl YW0= --===============6065418146683441840==--