From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id E09D21B971 for ; Thu, 10 May 2018 10:08:09 +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 orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 May 2018 01:08:09 -0700 Message-Id: <0590c7$1k5amp@orsmga001.jf.intel.com> Date: 10 May 2018 01:08:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,384,1520924400"; d="scan'208";a="54700766" Received: from unknown (HELO [127.0.1.1]) ([10.240.176.154]) by orsmga001.jf.intel.com with ESMTP; 10 May 2018 01:08:07 -0700 Content-Type: multipart/alternative; boundary="===============3645633696627180774==" 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| pw37179[dpdk-dev, v1, 12/16] 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:08:11 -0000 --===============3645633696627180774== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogSW50ZWwtY29tcGlsYXRpb24KVGVzdC1TdGF0dXM6IEZBSUxVUkUKaHR0cDov L2RwZGsub3JnL3BhdGNoLzM3MTc5CgpfYXBwbHkgaXNzdWVzXwoKU3VibWl0dGVyOiBBZHJpZW4g TWF6YXJndWlsIDxhZHJpZW4ubWF6YXJndWlsQDZ3aW5kLmNvbT4KRGF0ZTogMjAxOC0wNC0wNCAx NTo1Njo1MQpEUERLIGdpdCBiYXNlbGluZToKCVJlcG86ZHBkay1tYXN0ZXIsIENvbW1pdElEOiA4 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 ayAjMSBzdWNjZWVkZWQgYXQgNzY1IChvZmZzZXQgLTEyIGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2gg ZHJpdmVycy9uZXQvZTEwMDAvaWdiX2Zsb3cuYy4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCAzODgg KG9mZnNldCA5IGxpbmVzKS4KSHVuayAjMiBzdWNjZWVkZWQgYXQgNjUwIChvZmZzZXQgMTcgbGlu ZXMpLgpIdW5rICMzIHN1Y2NlZWRlZCBhdCA5NjYgKG9mZnNldCAyNiBsaW5lcykuCkh1bmsgIzQg c3VjY2VlZGVkIGF0IDEyNzIgKG9mZnNldCAzNSBsaW5lcykuCkh1bmsgIzUgc3VjY2VlZGVkIGF0 IDE0NDAgKG9mZnNldCA0NCBsaW5lcykuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2VuaWMv ZW5pY19mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCQkJICAgTlVMTCwK CQkJCQkgICAiZWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQkJcmV0dXJuIC1ydGVfZXJybm87 CgkJfSBlbHNlIGlmICghYXR0cnMtPmluZ3Jlc3MpIHsKCQkJcnRlX2Zsb3dfZXJyb3Jfc2V0KGVy cm9yLCBFTk9UU1VQLAoJCQkJCSAgIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9JTkdSRVNTLAoK ZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYzoxMzAwCmVy cm9yOiBkcml2ZXJzL25ldC9lbmljL2VuaWNfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpD aGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9pNDBlL2k0MGVfZmxvdy5jLi4uCkh1bmsgIzEgc3Vj Y2VlZGVkIGF0IDE5MTkgKG9mZnNldCAyIGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9u ZXQvaXhnYmUvaXhnYmVfZmxvdy5jLi4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDU2NiAob2Zmc2V0 IDkgbGluZXMpLgpIdW5rICMyIHN1Y2NlZWRlZCBhdCA4MTMgKG9mZnNldCAxNyBsaW5lcykuCkh1 bmsgIzMgc3VjY2VlZGVkIGF0IDExMjEgKG9mZnNldCAyNiBsaW5lcykuCkh1bmsgIzQgc3VjY2Vl ZGVkIGF0IDEzMTEgKG9mZnNldCAzNSBsaW5lcykuCkh1bmsgIzUgc3VjY2VlZGVkIGF0IDE0MzMg KG9mZnNldCA0NCBsaW5lcykuCkh1bmsgIzYgc3VjY2VlZGVkIGF0IDI5MjYgKG9mZnNldCA1MyBs aW5lcykuCkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L21seDQvbWx4NF9mbG93LmMuLi4KZXJy b3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJcmV0dXJuIHJ0ZV9mbG93X2Vycm9yX3NldAoJCQko ZXJyb3IsIEVOT1RTVVAsIFJURV9GTE9XX0VSUk9SX1RZUEVfQVRUUl9FR1JFU1MsCgkJCSBOVUxM LCAiZWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCWlmICghYXR0ci0+aW5ncmVzcykKCQlyZXR1 cm4gcnRlX2Zsb3dfZXJyb3Jfc2V0CgkJCShlcnJvciwgRU5PVFNVUCwgUlRFX0ZMT1dfRVJST1Jf VFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9tbHg0 L21seDRfZmxvdy5jOjY1MgplcnJvcjogZHJpdmVycy9uZXQvbWx4NC9tbHg0X2Zsb3cuYzogcGF0 Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvbWx4NS9tbHg1X2Zs b3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJlZ3Jlc3MgaXMgbm90 IHN1cHBvcnRlZCIpOwoJCXJldHVybiAtcnRlX2Vycm5vOwoJfQoJaWYgKCFhdHRyLT5pbmdyZXNz KSB7CgkJcnRlX2Zsb3dfZXJyb3Jfc2V0KGVycm9yLCBFTk9UU1VQLAoJCQkJICAgUlRFX0ZMT1df RVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25l dC9tbHg1L21seDVfZmxvdy5jOjU2OAplcnJvcjogZHJpdmVycy9uZXQvbWx4NS9tbHg1X2Zsb3cu YzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvbXZwcDIv bXJ2bF9mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCQkgICAiRWdyZXNz IGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCX0KCglyZXR1cm4gMDsK fQoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvbXZwcDIvbXJ2bF9mbG93LmM6MjE4 OAplcnJvcjogZHJpdmVycy9uZXQvbXZwcDIvbXJ2bF9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFw cGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jLi4uCmVycm9yOiB3 aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJICAgIkVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJ cmV0dXJuIC1ydGVfZXJybm87Cgl9CglpZiAoYXR0ci0+aW5ncmVzcyA9PSAwKSB7CgkJcnRlX2Zs b3dfZXJyb3Jfc2V0KGVycm9yLCBFTk9UU1VQLAoJCQkJICAgUlRFX0ZMT1dfRVJST1JfVFlQRV9B VFRSX0lOR1JFU1MsIGF0dHIsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9zZmMv c2ZjX2Zsb3cuYzoxMTI2CmVycm9yOiBkcml2ZXJzL25ldC9zZmMvc2ZjX2Zsb3cuYzogcGF0Y2gg ZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmMu Li4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6Cgl9OwoJaW50IGFjdGlvbiA9IDA7IC8qIE9u bHkgb25lIGFjdGlvbiBhdXRob3JpemVkIGZvciBub3cgKi8KCglpZiAoYXR0ci0+Z3JvdXAgPiBN QVhfR1JPVVApIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoCgkJCWVycm9yLCBFSU5WQUwsIFJURV9G TE9XX0VSUk9SX1RZUEVfQVRUUl9HUk9VUCwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMv bmV0L3RhcC90YXBfZmxvdy5jOjEwNDEKZXJyb3I6IGRyaXZlcnMvbmV0L3RhcC90YXBfZmxvdy5j OiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBsaWIvbGlicnRlX2V0aGVyL3J0 ZV9mbG93LmguLi4KZXJyb3I6IGxpYi9saWJydGVfZXRoZXIvcnRlX2Zsb3cuaDogTm8gc3VjaCBm aWxlIG9yIGRpcmVjdG9yeQoqUmVwbzogZHBkay1uZXh0LWV2ZW50ZGV2CkNoZWNraW5nIHBhdGNo IGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZv cjoKCVBSSU9SSVRZLAoJSU5HUkVTUywKCUVHUkVTUywKCgkvKiBWYWxpZGF0ZS9jcmVhdGUgcGF0 dGVybi4gKi8KCVBBVFRFUk4sCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC1wbWQvY21k bGluZV9mbG93LmM6NjkKZXJyb3I6IGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zsb3cuYzogcGF0Y2gg ZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggYXBwL3Rlc3QtcG1kL2NvbmZpZy5jLi4uCmVy cm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfUFJJ T1JJVFldID0gInByaW9yaXR5IGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0lO R1JFU1NdID0gImluZ3Jlc3MgZmllbGQiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfRUdS RVNTXSA9ICJlZ3Jlc3MgZmllbGQiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJdID0gImF0 dHJpYnV0ZXMgc3RydWN0dXJlIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9JVEVNX05VTV0gPSAi cGF0dGVybiBsZW5ndGgiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0lURU1fU1BFQ10gPSAiaXRl bSBzcGVjaWZpY2F0aW9uIiwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90ZXN0LXBtZC9jb25m aWcuYzoxMjIzCmVycm9yOiBhcHAvdGVzdC1wbWQvY29uZmlnLmM6IHBhdGNoIGRvZXMgbm90IGFw cGx5CkNoZWNraW5nIHBhdGNoIGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3QuLi4K ZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6ClNwZWNpZnlpbmcgYm90aCBkaXJlY3Rpb25zIGF0 IG9uY2UgZm9yIGEgZ2l2ZW4gcnVsZSBpcyBub3QgcmVjb21tZW5kZWQgYnV0Cm1heSBiZSB2YWxp ZCBpbiBhIGZldyBjYXNlcyAoZS5nLiBzaGFyZWQgY291bnRlcnMpLgoKUGF0dGVybiBpdGVtCn5+ fn5+fn5+fn5+fgoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9y dGVfZmxvdy5yc3Q6MTc4CmVycm9yOiBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0 OiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkb2MvZ3VpZGVzL3Rlc3RwbWRf YXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0Li4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgot IENoZWNrIHdoZXRoZXIgYSBmbG93IHJ1bGUgY2FuIGJlIGNyZWF0ZWQ6OgoKICAgZmxvdyB2YWxp ZGF0ZSB7cG9ydF9pZH0KICAgICAgIFtncm91cCB7Z3JvdXBfaWR9XSBbcHJpb3JpdHkge2xldmVs fV0gW2luZ3Jlc3NdIFtlZ3Jlc3NdCiAgICAgICBwYXR0ZXJuIHtpdGVtfSBbLyB7aXRlbX0gWy4u Ll1dIC8gZW5kCi0tCiAgICAgICBbZ3JvdXAge2dyb3VwX2lkfV0gW3ByaW9yaXR5IHtsZXZlbH1d IFtpbmdyZXNzXSBbZWdyZXNzXQogICAgICAgcGF0dGVybiB7aXRlbX0gWy8ge2l0ZW19IFsuLi5d XSAvIGVuZAogICAgICAgYWN0aW9ucyB7YWN0aW9ufSBbLyB7YWN0aW9ufSBbLi4uXV0gLyBlbmQK CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRf ZnVuY3MucnN0OjI5NzAKZXJyb3I6IGRvYy9ndWlkZXMvdGVzdHBtZF9hcHBfdWcvdGVzdHBtZF9m dW5jcy5yc3Q6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0 L2JueHQvYm54dF9maWx0ZXIuYy4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCA3NjUgKG9mZnNldCAt MTIgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9lMTAwMC9pZ2JfZmxvdy5jLi4u Ckh1bmsgIzEgc3VjY2VlZGVkIGF0IDM4OCAob2Zmc2V0IDkgbGluZXMpLgpIdW5rICMyIHN1Y2Nl ZWRlZCBhdCA2NTAgKG9mZnNldCAxNyBsaW5lcykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDk2NiAo b2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTI3MiAob2Zmc2V0IDM1IGxp bmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQ0MCAob2Zmc2V0IDQ0IGxpbmVzKS4KQ2hlY2tp bmcgcGF0Y2ggZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2Vh cmNoaW5nIGZvcjoKCQkJCQkgICBOVUxMLAoJCQkJCSAgICJlZ3Jlc3MgaXMgbm90IHN1cHBvcnRl ZCIpOwoJCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCQl9IGVsc2UgaWYgKCFhdHRycy0+aW5ncmVzcykg ewoJCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkJICAgUlRFX0ZMT1df RVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25l dC9lbmljL2VuaWNfZmxvdy5jOjEzMDAKZXJyb3I6IGRyaXZlcnMvbmV0L2VuaWMvZW5pY19mbG93 LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2k0MGUv aTQwZV9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgMTkxOSAob2Zmc2V0IDIgbGluZXMp LgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9peGdiZS9peGdiZV9mbG93LmMuLi4KSHVuayAj MSBzdWNjZWVkZWQgYXQgNTY2IChvZmZzZXQgOSBsaW5lcykuCkh1bmsgIzIgc3VjY2VlZGVkIGF0 IDgxMyAob2Zmc2V0IDE3IGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQgYXQgMTEyMSAob2Zmc2V0 IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTMxMSAob2Zmc2V0IDM1IGxpbmVzKS4K SHVuayAjNSBzdWNjZWVkZWQgYXQgMTQzMyAob2Zmc2V0IDQ0IGxpbmVzKS4KSHVuayAjNiBzdWNj ZWVkZWQgYXQgMjkyNiAob2Zmc2V0IDUzIGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9u ZXQvbWx4NC9tbHg0X2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQlyZXR1 cm4gcnRlX2Zsb3dfZXJyb3Jfc2V0CgkJCShlcnJvciwgRU5PVFNVUCwgUlRFX0ZMT1dfRVJST1Jf VFlQRV9BVFRSX0VHUkVTUywKCQkJIE5VTEwsICJlZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJ aWYgKCFhdHRyLT5pbmdyZXNzKQoJCXJldHVybiBydGVfZmxvd19lcnJvcl9zZXQKCQkJKGVycm9y LCBFTk9UU1VQLCBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywKCmVycm9yOiBwYXRj aCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDQvbWx4NF9mbG93LmM6NjUyCmVycm9yOiBkcml2ZXJz L25ldC9tbHg0L21seDRfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRj aCBkcml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcg Zm9yOgoJCQkJICAgImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJcmV0dXJuIC1ydGVfZXJy bm87Cgl9CglpZiAoIWF0dHItPmluZ3Jlc3MpIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3Is IEVOT1RTVVAsCgkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywKCmVycm9y OiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmM6NTY4CmVycm9yOiBk cml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2lu ZyBwYXRjaCBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2Vh cmNoaW5nIGZvcjoKCQkJCSAgICJFZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJCXJldHVybiAt cnRlX2Vycm5vOwoJfQoKCXJldHVybiAwOwp9CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJz L25ldC9tdnBwMi9tcnZsX2Zsb3cuYzoyMTg4CmVycm9yOiBkcml2ZXJzL25ldC9tdnBwMi9tcnZs X2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQv c2ZjL3NmY19mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCQkgICAiRWdy ZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCX0KCWlmIChhdHRy LT5pbmdyZXNzID09IDApIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJ CQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywgYXR0ciwKCmVycm9yOiBwYXRj aCBmYWlsZWQ6IGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jOjExMjYKZXJyb3I6IGRyaXZlcnMv bmV0L3NmYy9zZmNfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBk cml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoK CX07CglpbnQgYWN0aW9uID0gMDsgLyogT25seSBvbmUgYWN0aW9uIGF1dGhvcml6ZWQgZm9yIG5v dyAqLwoKCWlmIChhdHRyLT5ncm91cCA+IE1BWF9HUk9VUCkgewoJCXJ0ZV9mbG93X2Vycm9yX3Nl dCgKCQkJZXJyb3IsIEVJTlZBTCwgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0dST1VQLAoKZXJy b3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmM6MTA0MQplcnJvcjog ZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5n IHBhdGNoIGxpYi9saWJydGVfZXRoZXIvcnRlX2Zsb3cuaC4uLgplcnJvcjogbGliL2xpYnJ0ZV9l dGhlci9ydGVfZmxvdy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CipSZXBvOiBkcGRrLW5l eHQtbmV0CkNoZWNraW5nIHBhdGNoIGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zsb3cuYy4uLgplcnJv cjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCVBSSU9SSVRZLAoJSU5HUkVTUywKCUVHUkVTUywKCgkv KiBWYWxpZGF0ZS9jcmVhdGUgcGF0dGVybi4gKi8KCVBBVFRFUk4sCgplcnJvcjogcGF0Y2ggZmFp bGVkOiBhcHAvdGVzdC1wbWQvY21kbGluZV9mbG93LmM6NjkKZXJyb3I6IGFwcC90ZXN0LXBtZC9j bWRsaW5lX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggYXBwL3Rl c3QtcG1kL2NvbmZpZy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCVtSVEVfRkxP V19FUlJPUl9UWVBFX0FUVFJfUFJJT1JJVFldID0gInByaW9yaXR5IGZpZWxkIiwKCQlbUlRFX0ZM T1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1NdID0gImluZ3Jlc3MgZmllbGQiLAoJCVtSVEVfRkxP V19FUlJPUl9UWVBFX0FUVFJfRUdSRVNTXSA9ICJlZ3Jlc3MgZmllbGQiLAoJCVtSVEVfRkxPV19F UlJPUl9UWVBFX0FUVFJdID0gImF0dHJpYnV0ZXMgc3RydWN0dXJlIiwKCQlbUlRFX0ZMT1dfRVJS T1JfVFlQRV9JVEVNX05VTV0gPSAicGF0dGVybiBsZW5ndGgiLAoJCVtSVEVfRkxPV19FUlJPUl9U WVBFX0lURU1fU1BFQ10gPSAiaXRlbSBzcGVjaWZpY2F0aW9uIiwKCmVycm9yOiBwYXRjaCBmYWls ZWQ6IGFwcC90ZXN0LXBtZC9jb25maWcuYzoxMjIzCmVycm9yOiBhcHAvdGVzdC1wbWQvY29uZmln LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRvYy9ndWlkZXMvcHJvZ19n dWlkZS9ydGVfZmxvdy5yc3QuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6ClNwZWNpZnlp bmcgYm90aCBkaXJlY3Rpb25zIGF0IG9uY2UgZm9yIGEgZ2l2ZW4gcnVsZSBpcyBub3QgcmVjb21t ZW5kZWQgYnV0Cm1heSBiZSB2YWxpZCBpbiBhIGZldyBjYXNlcyAoZS5nLiBzaGFyZWQgY291bnRl cnMpLgoKUGF0dGVybiBpdGVtCn5+fn5+fn5+fn5+fgoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRv Yy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3Q6MTc4CmVycm9yOiBkb2MvZ3VpZGVzL3By b2dfZ3VpZGUvcnRlX2Zsb3cucnN0OiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRj aCBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0Li4uCmVycm9yOiB3 aGlsZSBzZWFyY2hpbmcgZm9yOgotIENoZWNrIHdoZXRoZXIgYSBmbG93IHJ1bGUgY2FuIGJlIGNy ZWF0ZWQ6OgoKICAgZmxvdyB2YWxpZGF0ZSB7cG9ydF9pZH0KICAgICAgIFtncm91cCB7Z3JvdXBf aWR9XSBbcHJpb3JpdHkge2xldmVsfV0gW2luZ3Jlc3NdIFtlZ3Jlc3NdCiAgICAgICBwYXR0ZXJu IHtpdGVtfSBbLyB7aXRlbX0gWy4uLl1dIC8gZW5kCi0tCiAgICAgICBbZ3JvdXAge2dyb3VwX2lk fV0gW3ByaW9yaXR5IHtsZXZlbH1dIFtpbmdyZXNzXSBbZWdyZXNzXQogICAgICAgcGF0dGVybiB7 aXRlbX0gWy8ge2l0ZW19IFsuLi5dXSAvIGVuZAogICAgICAgYWN0aW9ucyB7YWN0aW9ufSBbLyB7 YWN0aW9ufSBbLi4uXV0gLyBlbmQKCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkb2MvZ3VpZGVzL3Rl c3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0OjI5NzAKZXJyb3I6IGRvYy9ndWlkZXMvdGVz dHBtZF9hcHBfdWcvdGVzdHBtZF9mdW5jcy5yc3Q6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNr aW5nIHBhdGNoIGRyaXZlcnMvbmV0L2JueHQvYm54dF9maWx0ZXIuYy4uLgpIdW5rICMxIHN1Y2Nl ZWRlZCBhdCA3NjcgKG9mZnNldCAtMTAgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25l dC9lMTAwMC9pZ2JfZmxvdy5jLi4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDM4OCAob2Zmc2V0IDkg bGluZXMpLgpIdW5rICMyIHN1Y2NlZWRlZCBhdCA2NTAgKG9mZnNldCAxNyBsaW5lcykuCkh1bmsg IzMgc3VjY2VlZGVkIGF0IDk2NiAob2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQg YXQgMTI3MiAob2Zmc2V0IDM1IGxpbmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQ0MCAob2Zm c2V0IDQ0IGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cu Yy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCQkgICBOVUxMLAoJCQkJCSAgICJl Z3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCQl9IGVsc2Ug aWYgKCFhdHRycy0+aW5ncmVzcykgewoJCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RT VVAsCgkJCQkJICAgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0 Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9lbmljL2VuaWNfZmxvdy5jOjEzMDAKZXJyb3I6IGRyaXZl cnMvbmV0L2VuaWMvZW5pY19mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBh dGNoIGRyaXZlcnMvbmV0L2k0MGUvaTQwZV9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQg MTkxOSAob2Zmc2V0IDIgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9peGdiZS9p eGdiZV9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgNTY2IChvZmZzZXQgOSBsaW5lcyku Ckh1bmsgIzIgc3VjY2VlZGVkIGF0IDgxMyAob2Zmc2V0IDE3IGxpbmVzKS4KSHVuayAjMyBzdWNj ZWVkZWQgYXQgMTEyMSAob2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTMx MSAob2Zmc2V0IDM1IGxpbmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQzMyAob2Zmc2V0IDQ0 IGxpbmVzKS4KSHVuayAjNiBzdWNjZWVkZWQgYXQgMjkyNiAob2Zmc2V0IDUzIGxpbmVzKS4KQ2hl Y2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvbWx4NC9tbHg0X2Zsb3cuYy4uLgplcnJvcjogd2hpbGUg c2VhcmNoaW5nIGZvcjoKCQlyZXR1cm4gcnRlX2Zsb3dfZXJyb3Jfc2V0CgkJCShlcnJvciwgRU5P VFNVUCwgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0VHUkVTUywKCQkJIE5VTEwsICJlZ3Jlc3Mg aXMgbm90IHN1cHBvcnRlZCIpOwoJaWYgKCFhdHRyLT5pbmdyZXNzKQoJCXJldHVybiBydGVfZmxv d19lcnJvcl9zZXQKCQkJKGVycm9yLCBFTk9UU1VQLCBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJf SU5HUkVTUywKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDQvbWx4NF9mbG93 LmM6NjUyCmVycm9yOiBkcml2ZXJzL25ldC9tbHg0L21seDRfZmxvdy5jOiBwYXRjaCBkb2VzIG5v dCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jLi4uCmVy cm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJICAgImVncmVzcyBpcyBub3Qgc3VwcG9ydGVk Iik7CgkJcmV0dXJuIC1ydGVfZXJybm87Cgl9CglpZiAoIWF0dHItPmluZ3Jlc3MpIHsKCQlydGVf Zmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBF X0FUVFJfSU5HUkVTUywKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDUvbWx4 NV9mbG93LmM6NTY4CmVycm9yOiBkcml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jOiBwYXRjaCBk b2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cu Yy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJFZ3Jlc3MgaXMgbm90IHN1 cHBvcnRlZCIpOwoJCXJldHVybiAtcnRlX2Vycm5vOwoJfQoKCXJldHVybiAwOwp9CgplcnJvcjog cGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYzoyMTg4CmVycm9yOiBk cml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tp bmcgcGF0Y2ggZHJpdmVycy9uZXQvc2ZjL3NmY19mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJj aGluZyBmb3I6CgkJCQkgICAiRWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0 ZV9lcnJubzsKCX0KCWlmIChhdHRyLT5pbmdyZXNzID09IDApIHsKCQlydGVfZmxvd19lcnJvcl9z ZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVT UywgYXR0ciwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5j OjExMjYKZXJyb3I6IGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBh cHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYy4uLgplcnJvcjog d2hpbGUgc2VhcmNoaW5nIGZvcjoKCX07CglpbnQgYWN0aW9uID0gMDsgLyogT25seSBvbmUgYWN0 aW9uIGF1dGhvcml6ZWQgZm9yIG5vdyAqLwoKCWlmIChhdHRyLT5ncm91cCA+IE1BWF9HUk9VUCkg ewoJCXJ0ZV9mbG93X2Vycm9yX3NldCgKCQkJZXJyb3IsIEVJTlZBTCwgUlRFX0ZMT1dfRVJST1Jf VFlQRV9BVFRSX0dST1VQLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvdGFwL3Rh cF9mbG93LmM6MTA0MQplcnJvcjogZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmM6IHBhdGNoIGRv ZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGxpYi9saWJydGVfZXRoZXIvcnRlX2Zsb3cuaC4u LgplcnJvcjogbGliL2xpYnJ0ZV9ldGhlci9ydGVfZmxvdy5oOiBObyBzdWNoIGZpbGUgb3IgZGly ZWN0b3J5CipSZXBvOiBkcGRrLW5leHQtY3J5cHRvCkNoZWNraW5nIHBhdGNoIGFwcC90ZXN0LXBt ZC9jbWRsaW5lX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCVBSSU9SSVRZ LAoJSU5HUkVTUywKCUVHUkVTUywKCgkvKiBWYWxpZGF0ZS9jcmVhdGUgcGF0dGVybi4gKi8KCVBB VFRFUk4sCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC1wbWQvY21kbGluZV9mbG93LmM6 NjkKZXJyb3I6IGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBw bHkKQ2hlY2tpbmcgcGF0Y2ggYXBwL3Rlc3QtcG1kL2NvbmZpZy5jLi4uCmVycm9yOiB3aGlsZSBz ZWFyY2hpbmcgZm9yOgoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfUFJJT1JJVFldID0gInBy aW9yaXR5IGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1NdID0gImlu Z3Jlc3MgZmllbGQiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfRUdSRVNTXSA9ICJlZ3Jl c3MgZmllbGQiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJdID0gImF0dHJpYnV0ZXMgc3Ry dWN0dXJlIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9JVEVNX05VTV0gPSAicGF0dGVybiBsZW5n dGgiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0lURU1fU1BFQ10gPSAiaXRlbSBzcGVjaWZpY2F0 aW9uIiwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90ZXN0LXBtZC9jb25maWcuYzoxMjIzCmVy cm9yOiBhcHAvdGVzdC1wbWQvY29uZmlnLmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5n IHBhdGNoIGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3QuLi4KZXJyb3I6IHdoaWxl IHNlYXJjaGluZyBmb3I6ClNwZWNpZnlpbmcgYm90aCBkaXJlY3Rpb25zIGF0IG9uY2UgZm9yIGEg Z2l2ZW4gcnVsZSBpcyBub3QgcmVjb21tZW5kZWQgYnV0Cm1heSBiZSB2YWxpZCBpbiBhIGZldyBj YXNlcyAoZS5nLiBzaGFyZWQgY291bnRlcnMpLgoKUGF0dGVybiBpdGVtCn5+fn5+fn5+fn5+fgoK CmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVfZmxvdy5yc3Q6 MTc4CmVycm9yOiBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUvcnRlX2Zsb3cucnN0OiBwYXRjaCBkb2Vz IG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3Rw bWRfZnVuY3MucnN0Li4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgotIENoZWNrIHdoZXRo ZXIgYSBmbG93IHJ1bGUgY2FuIGJlIGNyZWF0ZWQ6OgoKICAgZmxvdyB2YWxpZGF0ZSB7cG9ydF9p ZH0KICAgICAgIFtncm91cCB7Z3JvdXBfaWR9XSBbcHJpb3JpdHkge2xldmVsfV0gW2luZ3Jlc3Nd IFtlZ3Jlc3NdCiAgICAgICBwYXR0ZXJuIHtpdGVtfSBbLyB7aXRlbX0gWy4uLl1dIC8gZW5kCi0t CiAgICAgICBbZ3JvdXAge2dyb3VwX2lkfV0gW3ByaW9yaXR5IHtsZXZlbH1dIFtpbmdyZXNzXSBb ZWdyZXNzXQogICAgICAgcGF0dGVybiB7aXRlbX0gWy8ge2l0ZW19IFsuLi5dXSAvIGVuZAogICAg ICAgYWN0aW9ucyB7YWN0aW9ufSBbLyB7YWN0aW9ufSBbLi4uXV0gLyBlbmQKCgplcnJvcjogcGF0 Y2ggZmFpbGVkOiBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0OjI5 NzAKZXJyb3I6IGRvYy9ndWlkZXMvdGVzdHBtZF9hcHBfdWcvdGVzdHBtZF9mdW5jcy5yc3Q6IHBh dGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2JueHQvYm54dF9m aWx0ZXIuYy4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCA3NjUgKG9mZnNldCAtMTIgbGluZXMpLgpD aGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9lMTAwMC9pZ2JfZmxvdy5jLi4uCkh1bmsgIzEgc3Vj Y2VlZGVkIGF0IDM4OCAob2Zmc2V0IDkgbGluZXMpLgpIdW5rICMyIHN1Y2NlZWRlZCBhdCA2NTAg KG9mZnNldCAxNyBsaW5lcykuCkh1bmsgIzMgc3VjY2VlZGVkIGF0IDk2NiAob2Zmc2V0IDI2IGxp bmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTI3MiAob2Zmc2V0IDM1IGxpbmVzKS4KSHVuayAj NSBzdWNjZWVkZWQgYXQgMTQ0MCAob2Zmc2V0IDQ0IGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJp dmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoK CQkJCQkgICBOVUxMLAoJCQkJCSAgICJlZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJCQlyZXR1 cm4gLXJ0ZV9lcnJubzsKCQl9IGVsc2UgaWYgKCFhdHRycy0+aW5ncmVzcykgewoJCQlydGVfZmxv d19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkJICAgUlRFX0ZMT1dfRVJST1JfVFlQRV9B VFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9lbmljL2VuaWNf Zmxvdy5jOjEzMDAKZXJyb3I6IGRyaXZlcnMvbmV0L2VuaWMvZW5pY19mbG93LmM6IHBhdGNoIGRv ZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvbmV0L2k0MGUvaTQwZV9mbG93LmMu Li4KSHVuayAjMSBzdWNjZWVkZWQgYXQgMTkxOSAob2Zmc2V0IDIgbGluZXMpLgpDaGVja2luZyBw YXRjaCBkcml2ZXJzL25ldC9peGdiZS9peGdiZV9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQg YXQgNTY2IChvZmZzZXQgOSBsaW5lcykuCkh1bmsgIzIgc3VjY2VlZGVkIGF0IDgxMyAob2Zmc2V0 IDE3IGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQgYXQgMTEyMSAob2Zmc2V0IDI2IGxpbmVzKS4K SHVuayAjNCBzdWNjZWVkZWQgYXQgMTMxMSAob2Zmc2V0IDM1IGxpbmVzKS4KSHVuayAjNSBzdWNj ZWVkZWQgYXQgMTQzMyAob2Zmc2V0IDQ0IGxpbmVzKS4KSHVuayAjNiBzdWNjZWVkZWQgYXQgMjky NiAob2Zmc2V0IDUzIGxpbmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvbWx4NC9tbHg0 X2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQlyZXR1cm4gcnRlX2Zsb3df ZXJyb3Jfc2V0CgkJCShlcnJvciwgRU5PVFNVUCwgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0VH UkVTUywKCQkJIE5VTEwsICJlZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJaWYgKCFhdHRyLT5p bmdyZXNzKQoJCXJldHVybiBydGVfZmxvd19lcnJvcl9zZXQKCQkJKGVycm9yLCBFTk9UU1VQLCBS VEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRy aXZlcnMvbmV0L21seDQvbWx4NF9mbG93LmM6NjUyCmVycm9yOiBkcml2ZXJzL25ldC9tbHg0L21s eDRfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25l dC9tbHg1L21seDVfZmxvdy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCQkJICAg ImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJcmV0dXJuIC1ydGVfZXJybm87Cgl9CglpZiAo IWF0dHItPmluZ3Jlc3MpIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJ CQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywKCmVycm9yOiBwYXRjaCBmYWls ZWQ6IGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmM6NTY4CmVycm9yOiBkcml2ZXJzL25ldC9t bHg1L21seDVfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2 ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoK CQkJCSAgICJFZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIpOwoJCXJldHVybiAtcnRlX2Vycm5vOwoJ fQoKCXJldHVybiAwOwp9CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL25ldC9tdnBwMi9t cnZsX2Zsb3cuYzoyMTg4CmVycm9yOiBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYzogcGF0 Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvc2ZjL3NmY19mbG93 LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCQkgICAiRWdyZXNzIGlzIG5vdCBz dXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCX0KCWlmIChhdHRyLT5pbmdyZXNzID09 IDApIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkgICBSVEVfRkxP V19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywgYXR0ciwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRy aXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jOjExMjYKZXJyb3I6IGRyaXZlcnMvbmV0L3NmYy9zZmNf Zmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC90 YXAvdGFwX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCX07CglpbnQgYWN0 aW9uID0gMDsgLyogT25seSBvbmUgYWN0aW9uIGF1dGhvcml6ZWQgZm9yIG5vdyAqLwoKCWlmIChh dHRyLT5ncm91cCA+IE1BWF9HUk9VUCkgewoJCXJ0ZV9mbG93X2Vycm9yX3NldCgKCQkJZXJyb3Is IEVJTlZBTCwgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0dST1VQLAoKZXJyb3I6IHBhdGNoIGZh aWxlZDogZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmM6MTA0MQplcnJvcjogZHJpdmVycy9uZXQv dGFwL3RhcF9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGxpYi9s aWJydGVfZXRoZXIvcnRlX2Zsb3cuaC4uLgplcnJvcjogbGliL2xpYnJ0ZV9ldGhlci9ydGVfZmxv dy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CipSZXBvOiBkcGRrLW5leHQtdmlydGlvCkNo ZWNraW5nIHBhdGNoIGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUg c2VhcmNoaW5nIGZvcjoKCVBSSU9SSVRZLAoJSU5HUkVTUywKCUVHUkVTUywKCgkvKiBWYWxpZGF0 ZS9jcmVhdGUgcGF0dGVybi4gKi8KCVBBVFRFUk4sCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAv dGVzdC1wbWQvY21kbGluZV9mbG93LmM6NjkKZXJyb3I6IGFwcC90ZXN0LXBtZC9jbWRsaW5lX2Zs b3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2ggYXBwL3Rlc3QtcG1kL2Nv bmZpZy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCVtSVEVfRkxPV19FUlJPUl9U WVBFX0FUVFJfUFJJT1JJVFldID0gInByaW9yaXR5IGZpZWxkIiwKCQlbUlRFX0ZMT1dfRVJST1Jf VFlQRV9BVFRSX0lOR1JFU1NdID0gImluZ3Jlc3MgZmllbGQiLAoJCVtSVEVfRkxPV19FUlJPUl9U WVBFX0FUVFJfRUdSRVNTXSA9ICJlZ3Jlc3MgZmllbGQiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBF X0FUVFJdID0gImF0dHJpYnV0ZXMgc3RydWN0dXJlIiwKCQlbUlRFX0ZMT1dfRVJST1JfVFlQRV9J VEVNX05VTV0gPSAicGF0dGVybiBsZW5ndGgiLAoJCVtSVEVfRkxPV19FUlJPUl9UWVBFX0lURU1f U1BFQ10gPSAiaXRlbSBzcGVjaWZpY2F0aW9uIiwKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90 ZXN0LXBtZC9jb25maWcuYzoxMjIzCmVycm9yOiBhcHAvdGVzdC1wbWQvY29uZmlnLmM6IHBhdGNo IGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRvYy9ndWlkZXMvcHJvZ19ndWlkZS9ydGVf Zmxvdy5yc3QuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6ClNwZWNpZnlpbmcgYm90aCBk aXJlY3Rpb25zIGF0IG9uY2UgZm9yIGEgZ2l2ZW4gcnVsZSBpcyBub3QgcmVjb21tZW5kZWQgYnV0 Cm1heSBiZSB2YWxpZCBpbiBhIGZldyBjYXNlcyAoZS5nLiBzaGFyZWQgY291bnRlcnMpLgoKUGF0 dGVybiBpdGVtCn5+fn5+fn5+fn5+fgoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRvYy9ndWlkZXMv cHJvZ19ndWlkZS9ydGVfZmxvdy5yc3Q6MTc4CmVycm9yOiBkb2MvZ3VpZGVzL3Byb2dfZ3VpZGUv cnRlX2Zsb3cucnN0OiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVja2luZyBwYXRjaCBkb2MvZ3Vp ZGVzL3Rlc3RwbWRfYXBwX3VnL3Rlc3RwbWRfZnVuY3MucnN0Li4uCmVycm9yOiB3aGlsZSBzZWFy Y2hpbmcgZm9yOgotIENoZWNrIHdoZXRoZXIgYSBmbG93IHJ1bGUgY2FuIGJlIGNyZWF0ZWQ6OgoK ICAgZmxvdyB2YWxpZGF0ZSB7cG9ydF9pZH0KICAgICAgIFtncm91cCB7Z3JvdXBfaWR9XSBbcHJp b3JpdHkge2xldmVsfV0gW2luZ3Jlc3NdIFtlZ3Jlc3NdCiAgICAgICBwYXR0ZXJuIHtpdGVtfSBb LyB7aXRlbX0gWy4uLl1dIC8gZW5kCi0tCiAgICAgICBbZ3JvdXAge2dyb3VwX2lkfV0gW3ByaW9y aXR5IHtsZXZlbH1dIFtpbmdyZXNzXSBbZWdyZXNzXQogICAgICAgcGF0dGVybiB7aXRlbX0gWy8g e2l0ZW19IFsuLi5dXSAvIGVuZAogICAgICAgYWN0aW9ucyB7YWN0aW9ufSBbLyB7YWN0aW9ufSBb Li4uXV0gLyBlbmQKCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkb2MvZ3VpZGVzL3Rlc3RwbWRfYXBw X3VnL3Rlc3RwbWRfZnVuY3MucnN0OjI5NzAKZXJyb3I6IGRvYy9ndWlkZXMvdGVzdHBtZF9hcHBf dWcvdGVzdHBtZF9mdW5jcy5yc3Q6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNo IGRyaXZlcnMvbmV0L2JueHQvYm54dF9maWx0ZXIuYy4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCA3 NjUgKG9mZnNldCAtMTIgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9lMTAwMC9p Z2JfZmxvdy5jLi4uCkh1bmsgIzEgc3VjY2VlZGVkIGF0IDM4OCAob2Zmc2V0IDkgbGluZXMpLgpI dW5rICMyIHN1Y2NlZWRlZCBhdCA2NTAgKG9mZnNldCAxNyBsaW5lcykuCkh1bmsgIzMgc3VjY2Vl ZGVkIGF0IDk2NiAob2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTI3MiAo b2Zmc2V0IDM1IGxpbmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQ0MCAob2Zmc2V0IDQ0IGxp bmVzKS4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9uZXQvZW5pYy9lbmljX2Zsb3cuYy4uLgplcnJv cjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCQkgICBOVUxMLAoJCQkJCSAgICJlZ3Jlc3MgaXMg bm90IHN1cHBvcnRlZCIpOwoJCQlyZXR1cm4gLXJ0ZV9lcnJubzsKCQl9IGVsc2UgaWYgKCFhdHRy cy0+aW5ncmVzcykgewoJCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkJ ICAgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRSX0lOR1JFU1MsCgplcnJvcjogcGF0Y2ggZmFpbGVk OiBkcml2ZXJzL25ldC9lbmljL2VuaWNfZmxvdy5jOjEzMDAKZXJyb3I6IGRyaXZlcnMvbmV0L2Vu aWMvZW5pY19mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFwcGx5CkNoZWNraW5nIHBhdGNoIGRyaXZl cnMvbmV0L2k0MGUvaTQwZV9mbG93LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgMTkxOSAob2Zm c2V0IDIgbGluZXMpLgpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9peGdiZS9peGdiZV9mbG93 LmMuLi4KSHVuayAjMSBzdWNjZWVkZWQgYXQgNTY2IChvZmZzZXQgOSBsaW5lcykuCkh1bmsgIzIg c3VjY2VlZGVkIGF0IDgxMyAob2Zmc2V0IDE3IGxpbmVzKS4KSHVuayAjMyBzdWNjZWVkZWQgYXQg MTEyMSAob2Zmc2V0IDI2IGxpbmVzKS4KSHVuayAjNCBzdWNjZWVkZWQgYXQgMTMxMSAob2Zmc2V0 IDM1IGxpbmVzKS4KSHVuayAjNSBzdWNjZWVkZWQgYXQgMTQzMyAob2Zmc2V0IDQ0IGxpbmVzKS4K SHVuayAjNiBzdWNjZWVkZWQgYXQgMjkyNiAob2Zmc2V0IDUzIGxpbmVzKS4KQ2hlY2tpbmcgcGF0 Y2ggZHJpdmVycy9uZXQvbWx4NC9tbHg0X2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5n IGZvcjoKCQlyZXR1cm4gcnRlX2Zsb3dfZXJyb3Jfc2V0CgkJCShlcnJvciwgRU5PVFNVUCwgUlRF X0ZMT1dfRVJST1JfVFlQRV9BVFRSX0VHUkVTUywKCQkJIE5VTEwsICJlZ3Jlc3MgaXMgbm90IHN1 cHBvcnRlZCIpOwoJaWYgKCFhdHRyLT5pbmdyZXNzKQoJCXJldHVybiBydGVfZmxvd19lcnJvcl9z ZXQKCQkJKGVycm9yLCBFTk9UU1VQLCBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywK CmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDQvbWx4NF9mbG93LmM6NjUyCmVy cm9yOiBkcml2ZXJzL25ldC9tbHg0L21seDRfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpD aGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jLi4uCmVycm9yOiB3aGls ZSBzZWFyY2hpbmcgZm9yOgoJCQkJICAgImVncmVzcyBpcyBub3Qgc3VwcG9ydGVkIik7CgkJcmV0 dXJuIC1ydGVfZXJybm87Cgl9CglpZiAoIWF0dHItPmluZ3Jlc3MpIHsKCQlydGVfZmxvd19lcnJv cl9zZXQoZXJyb3IsIEVOT1RTVVAsCgkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5H UkVTUywKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L21seDUvbWx4NV9mbG93LmM6 NTY4CmVycm9yOiBkcml2ZXJzL25ldC9tbHg1L21seDVfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBh cHBseQpDaGVja2luZyBwYXRjaCBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYy4uLgplcnJv cjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJCSAgICJFZ3Jlc3MgaXMgbm90IHN1cHBvcnRlZCIp OwoJCXJldHVybiAtcnRlX2Vycm5vOwoJfQoKCXJldHVybiAwOwp9CgplcnJvcjogcGF0Y2ggZmFp bGVkOiBkcml2ZXJzL25ldC9tdnBwMi9tcnZsX2Zsb3cuYzoyMTg4CmVycm9yOiBkcml2ZXJzL25l dC9tdnBwMi9tcnZsX2Zsb3cuYzogcGF0Y2ggZG9lcyBub3QgYXBwbHkKQ2hlY2tpbmcgcGF0Y2gg ZHJpdmVycy9uZXQvc2ZjL3NmY19mbG93LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6 CgkJCQkgICAiRWdyZXNzIGlzIG5vdCBzdXBwb3J0ZWQiKTsKCQlyZXR1cm4gLXJ0ZV9lcnJubzsK CX0KCWlmIChhdHRyLT5pbmdyZXNzID09IDApIHsKCQlydGVfZmxvd19lcnJvcl9zZXQoZXJyb3Is IEVOT1RTVVAsCgkJCQkgICBSVEVfRkxPV19FUlJPUl9UWVBFX0FUVFJfSU5HUkVTUywgYXR0ciwK CmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jOjExMjYKZXJy b3I6IGRyaXZlcnMvbmV0L3NmYy9zZmNfZmxvdy5jOiBwYXRjaCBkb2VzIG5vdCBhcHBseQpDaGVj a2luZyBwYXRjaCBkcml2ZXJzL25ldC90YXAvdGFwX2Zsb3cuYy4uLgplcnJvcjogd2hpbGUgc2Vh cmNoaW5nIGZvcjoKCX07CglpbnQgYWN0aW9uID0gMDsgLyogT25seSBvbmUgYWN0aW9uIGF1dGhv cml6ZWQgZm9yIG5vdyAqLwoKCWlmIChhdHRyLT5ncm91cCA+IE1BWF9HUk9VUCkgewoJCXJ0ZV9m bG93X2Vycm9yX3NldCgKCQkJZXJyb3IsIEVJTlZBTCwgUlRFX0ZMT1dfRVJST1JfVFlQRV9BVFRS X0dST1VQLAoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmM6 MTA0MQplcnJvcjogZHJpdmVycy9uZXQvdGFwL3RhcF9mbG93LmM6IHBhdGNoIGRvZXMgbm90IGFw cGx5CkNoZWNraW5nIHBhdGNoIGxpYi9saWJydGVfZXRoZXIvcnRlX2Zsb3cuaC4uLgplcnJvcjog bGliL2xpYnJ0ZV9ldGhlci9ydGVfZmxvdy5oOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CgpE UERLIFNUViB0ZWFt --===============3645633696627180774==--