From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 38FB31BDDA for ; Fri, 6 Jul 2018 11:51:53 +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 fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 06 Jul 2018 02:51:52 -0700 Message-Id: <0590c7$238o0j@orsmga001.jf.intel.com> Date: 06 Jul 2018 02:51:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,315,1526367600"; d="scan'208";a="70541331" Received: from unknown (HELO [127.0.1.1]) ([10.240.176.154]) by orsmga001.jf.intel.com with ESMTP; 06 Jul 2018 02:51:49 -0700 Content-Type: multipart/alternative; boundary="===============3645424482363936378==" MIME-Version: 1.0 From: sys_stv@intel.com To: test-report@dpdk.org Cc: Subject: [dpdk-test-report] |FAILURE| pw42081[v6, 15/15] vhost: advertize packed ring layout support 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: Fri, 06 Jul 2018 09:51:53 -0000 --===============3645424482363936378== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogSW50ZWwtY29tcGlsYXRpb24KVGVzdC1TdGF0dXM6IEZBSUxVUkUKaHR0cDov L2RwZGsub3JnL3BhdGNoLzQyMDgxCgpfQ29tcGlsYXRpb24gaXNzdWVzXwoKU3VibWl0dGVyOiBN YXhpbWUgQ29xdWVsaW4gPG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPgpEYXRlOiAyMDE4LTA3 LTAyIDA4OjE2OjI5CkRQREsgZ2l0IGJhc2VsaW5lOiBSZXBvOmRwZGstbWFzdGVyLCBDb21taXRJ RDogMDVlMGVlZTAwMDFjYjE5NjcxZWI3ZThkM2RkNjg2ODBhNjk1ZmVhMgoKQnVpbGQgU3VtbWFy eTogMTUgQnVpbGRzIERvbmUsIDIgU3VjY2Vzc2Z1bCwgMTMgRmFpbHVyZXMKClRlc3QgZW52aXJv bm1lbnQgYW5kIGNvbmZpZ3VyYXRpb24gYXMgYmVsb3c6CgpPUzogRkMyNQoJS2VybmVsIFZlcnNp b246IDQuOS4xMy0xMDAuZmMyNC54ODZfNjQKCUNQVSBpbmZvOiBJbnRlbChSKSBYZW9uKFIpIENQ VSBFNS0yNjk5IHYzIEAgMi4zMEdIegoJR0NDIFZlcnNpb246IGdjYyAoR0NDKSA2LjIuMSAyMDE2 MDkxNiAoUmVkIEhhdCA2LjIuMS0yKQoJQ2xhbmcgVmVyc2lvbjogMy44LjAgKHRhZ3MvUkVMRUFT RV8zODAvZmluYWwpCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYwoJeDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MtZGVidWcKCk9TOiBGQzI0CglLZXJuZWwgVmVyc2lvbjogNC45LjEzLTEwMC5m YzI0Lng4Nl82NAoJQ1BVIGluZm86IEludGVsKFIpIFhlb24oUikgQ1BVIEU1LTI2OTkgdjMgQCAy LjMwR0h6CglHQ0MgVmVyc2lvbjogZ2NjIChHQ0MpIDYuMi4xIDIwMTYwOTE2IChSZWQgSGF0IDYu Mi4xLTIpCglDbGFuZyBWZXJzaW9uOiAzLjguMCAodGFncy9SRUxFQVNFXzM4MC9maW5hbCkKCWk2 ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVk Cgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nCgpPUzogQ0VOVE9TCglLZXJuZWwgVmVyc2lv bjogMy4xMC4wLTUxNC4xMC4yLmVsNy54ODZfNjQKCUNQVSBpbmZvOiBJbnRlbChSKSBYZW9uKFIp IENQVSBFNS0yNjk5IHYzIEAgMi4zMEdIegoJR0NDIFZlcnNpb246IGdjYyAoR0NDKSA0LjguNSAy MDE1MDYyMyAoUmVkIEhhdCA0LjguNS00KQoJQ2xhbmcgVmVyc2lvbjogMy40LjIgKHRhZ3MvUkVM RUFTRV8zNC9kb3QyLWZpbmFsKQoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwoJaTY4Ni1u YXRpdmUtbGludXhhcHAtZ2NjCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQKCXg4 Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjCgpPUzogVUIxNjA0CglLZXJuZWwgVmVyc2lvbjogNC40 LjAtNzgtZ2VuZXJpYwoJQ1BVIGluZm86IEludGVsKFIpIFhlb24oUikgQ1BVIEU1LTI2OTkgdjMg QCAyLjMwR0h6CglHQ0MgVmVyc2lvbjogZ2NjIChVYnVudHUgNS40LjAtNnVidW50dTF+MTYuMDQu MTApIDUuNC4wIDIwMTYwNjA5CglDbGFuZyBWZXJzaW9uOiAzLjguMC0ydWJ1bnR1NCAodGFncy9S RUxFQVNFXzM4MC9maW5hbCkKCXg4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjCgl4ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQKCWk2 ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwoKT1M6IEZyZWVCU0QKCUtlcm5lbCBWZXJzaW9uOiAxMC4z LVJFTEVBU0UKCUNQVSBpbmZvOiBJbnRlbChSKSBYZW9uKFIpIENQVSBFNS0yNjk5IHYzIEAgMi4z MEdIeiAoMjI5NC43Ni1NSHogSzgtY2xhc3MgQ1BVKQoJR0NDIFZlcnNpb246IGdjYyAoRnJlZUJT RCBQb3J0cyBDb2xsZWN0aW9uKSA0LjguNQoJQ2xhbmcgVmVyc2lvbjogMy40LjEgKHRhZ3MvUkVM RUFTRV8zNC9kb3QxLWZpbmFsIDIwODAzMikgMjAxNDA1MTIKCXg4Nl82NC1uYXRpdmUtYnNkYXBw LWNsYW5nCgl4ODZfNjQtbmF0aXZlLWJzZGFwcC1nY2MKCipGYWlsZWQgQnVpbGQgIzE6Ck9TOiBG QzI1ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MKICBDQyBydGVfaXB2Nl9mcmFn bWVudGF0aW9uLm8KICBDQyBydGVfaXB2NF9yZWFzc2VtYmx5Lm8KICBDQyB2aXJ0aW9fbmV0Lm8K ICBDQyBydGVfaXB2Nl9yZWFzc2VtYmx5Lm8KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhmaWxsX3Zl Y19idWZfcGFja2VkX2luZGlyZWN04oCZOgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzUyOjEzOiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWTigJkKICBkbGVuID0gZGVzYy0+bGVuOwogICAgICAgICAgICAgXn4KL3RtcC9GQzI1X0s0Ljgu Nl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM3MDozMjog ZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUg dHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICBucl9kZWNzID0gIGRlc2MtPmxl biAvIHNpemVvZihzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQpOwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF5+fn5+fgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgyOjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1 bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgKmxlbiArPSBk ZXNjc1tpXS5sZW47CiAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNV9LNC44LjZf R0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9z cGlubG9jay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0ZDMjVfSzQuOC42X0dD QzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVt cG9vbC5oOjQ0LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMu MS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21idWYuaDoz OCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5OgovdG1wL0ZDMjVfSzQuOC42X0dDQzYu My4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjE2OiB3YXJuaW5n OiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhtYXBfb25lX2Rlc2PigJkgWy1X aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rl c2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgICAgICAgICAgICAgIF4KL3RtcC9GQzI1 X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0 MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1 ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24gb2Yg bWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4cGVj dCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90 bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19u ZXQuYzozODM6Mzogd2FybmluZzogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhtYXBf b25lX2Rlc2PigJkgWy1XbmVzdGVkLWV4dGVybnNdCiAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rl c2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgXn4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2 LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MzozOiBlcnJvcjog aW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk 4oCZCi90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zp cnRpb19uZXQuYzozODM6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKA mHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9G QzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2lu Y2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvRkMy NV9LNC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNs dWRlL3J0ZV9tZW1wb29sLmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0ZDMjVfSzQu OC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9y dGVfbWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9GQzI1X0s0LjguNl9HQ0M2 LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90bXAvRkMyNV9L NC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzogSW4g ZnVuY3Rpb24g4oCYZmlsbF92ZWNfYnVmX3BhY2tlZOKAmToKL3RtcC9GQzI1X0s0LjguNl9HQ0M2 LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOToxNjogd2Fybmlu ZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYZGVzY19pc19hdmFpbOKAmSBb LVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICBpZiAodW5saWtlbHkoIWRlc2NfaXNf YXZhaWwoJmRlc2NzW2F2YWlsX2lkeF0sIHdyYXBfY291bnRlcikpKQogICAgICAgICAgICAgICAg XgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2MvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogaW4gZGVm aW5pdGlvbiBvZiBtYWNybyDigJh1bmxpa2VseeKAmQogI2RlZmluZSB1bmxpa2VseSh4KSBfX2J1 aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3QvdmlydGlvX25ldC5jOjQwOToyOiB3YXJuaW5nOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9u IG9mIOKAmGRlc2NfaXNfYXZhaWzigJkgWy1XbmVzdGVkLWV4dGVybnNdCiAgaWYgKHVubGlrZWx5 KCFkZXNjX2lzX2F2YWlsKCZkZXNjc1thdmFpbF9pZHhdLCB3cmFwX2NvdW50ZXIpKSkKICBefgov dG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9f bmV0LmM6NDA5OjI6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1 Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQxOTozOiBlcnJvcjogaW52YWxpZCB1c2Ug b2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICpidWZf aWQgPSBkZXNjc1thdmFpbF9pZHhdLmluZGV4OwogICBeCi90bXAvRkMyNV9LNC44LjZfR0NDNi4z LjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MjE6MzogZXJyb3I6IGlu dmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKA mQogICBpZiAoZGVzY3NbYXZhaWxfaWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9JTkRJUkVDVCkg ewogICBefgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6NDIyOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlw ZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgIGlmICh1bmxpa2VseShmaWxsX3Zl Y19idWZfcGFja2VkX2luZGlyZWN0KGRldiwgdnEsCiAgICBefgovdG1wL0ZDMjVfSzQuOC42X0dD QzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDI4OjQ6IGVycm9y OiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWTigJkKICAgICpsZW4gKz0gZGVzY3NbYXZhaWxfaWR4XS5sZW47CiAgICBeCi90bXAvRkMyNV9L NC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MzA6 NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19k ZXNjX3BhY2tlZOKAmQogICAgaWYgKHVubGlrZWx5KG1hcF9vbmVfZGVzYyhkZXYsIHZxLCBidWZf dmVjLCAmdmVjX2lkLAogICAgXn4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ugb2Yg dW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCi90bXAvRkMyNV9L NC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mzc6 MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19k ZXNjX3BhY2tlZOKAmQogICBpZiAoKGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVND X0ZfTkVYVCkgPT0gMCkKICAgXn4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhydGVfdmhvc3RfZGVx dWV1ZV9idXJzdOKAmToKL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJy dGVfdmhvc3QvdmlydGlvX25ldC5jOjEzNzc6Nzogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAz IG9mIOKAmGFsbG9jX2NvcHlfaW5kX3RhYmxl4oCZIG1ha2VzIGludGVnZXIgZnJvbSBwb2ludGVy IHdpdGhvdXQgYSBjYXN0IFstV2ludC1jb252ZXJzaW9uXQogICAgICAgJnZxLT5kZXNjW2Rlc2Nf aW5kZXhlc1tpXV0pOwogICAgICAgXgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZXhwZWN0ZWQg4oCYdWlu dDY0X3Qge2FrYSBsb25nIHVuc2lnbmVkIGludH3igJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg 4oCYc3RydWN0IHZyaW5nX2Rlc2MgKuKAmQogYWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZp cnRpb19uZXQgKmRldiwgc3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCiBefn5+fn5+fn5+fn5+ fn5+fn5+fgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6MTM3NjoxMzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0 aW9uIOKAmGFsbG9jX2NvcHlfaW5kX3RhYmxl4oCZCiAgICAgaWRlc2MgPSBhbGxvY19jb3B5X2lu ZF90YWJsZShkZXYsIHZxLAogICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KL3RtcC9G QzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5j OjQxOjE6IG5vdGU6IGRlY2xhcmVkIGhlcmUKIGFsbG9jX2NvcHlfaW5kX3RhYmxlKHN0cnVjdCB2 aXJ0aW9fbmV0ICpkZXYsIHN0cnVjdCB2aG9zdF92aXJ0cXVldWUgKnZxLAogXn5+fn5+fn5+fn5+ fn5+fn5+fn4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL2ludGVybmFsL3J0 ZS5jb21waWxlLXByZS5tazoxMTQ6IHJlY2lwZSBmb3IgdGFyZ2V0ICd2aXJ0aW9fbmV0Lm8nIGZh aWxlZAptYWtlWzVdOiAqKiogW3ZpcnRpb19uZXQub10gRXJyb3IgMQovdG1wL0ZDMjVfSzQuOC42 X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJnZXQg J2xpYnJ0ZV92aG9zdCcgZmFpbGVkCm1ha2VbNF06ICoqKiBbbGlicnRlX3Zob3N0XSBFcnJvciAy Cm1ha2VbNF06ICoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uCiAgQ0MgcnRlX2lw X2ZyYWdfY29tbW9uLm8KICBDQyBpcF9mcmFnX2ludGVybmFsLm8KICBBUiBsaWJydGVfaXBfZnJh Zy5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2lwX2ZyYWcuYQovdG1wL0ZDMjVfSzQuOC42X0dDQzYu My4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbWsvcnRlLnNka2J1aWxkLm1rOjQ5OiByZWNpcGUgZm9yIHRhcmdldCAnbGli JyBmYWlsZWQKbWFrZVszXTogKioqIFtsaWJdIEVycm9yIDIKL3RtcC9GQzI1X0s0LjguNl9HQ0M2 LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtyb290Lm1rOjEwMDogcmVjaXBlIGZvciB0YXJnZXQgJ2Fs bCcgZmFpbGVkCm1ha2VbMl06ICoqKiBbYWxsXSBFcnJvciAyCi90bXAvRkMyNV9LNC44LjZfR0ND Ni4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay9tay9ydGUuc2RraW5zdGFsbC5tazo1NzogcmVjaXBlIGZvciB0YXJnZXQg J3ByZV9pbnN0YWxsJyBmYWlsZWQKbWFrZVsxXTogKioqIFtwcmVfaW5zdGFsbF0gRXJyb3IgMgov dG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka3Jvb3QubWs6Nzk6IHJl Y2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKbWFrZTogKioqIFtpbnN0YWxsXSBFcnJv ciAyCgoqRmFpbGVkIEJ1aWxkICMyOgpPUzogVUIxNjA0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MKPT0gQnVpbGQgbGliL2xpYnJ0ZV9pcF9mcmFnCiAgU1lNTElOSy1GSUxFIGlu Y2x1ZGUvcnRlX2lwX2ZyYWcuaAogIENDIHJ0ZV9pcHY0X2ZyYWdtZW50YXRpb24ubwogIENDIHZp cnRpb19uZXQubwovdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRl X3Zob3N0L3ZpcnRpb19uZXQuYzogSW4gZnVuY3Rpb24g4oCYZmlsbF92ZWNfYnVmX3BhY2tlZF9p bmRpcmVjdOKAmToKL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYuMi4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzUyOjEzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICBkbGVu ID0gZGVzYy0+bGVuOwogICAgICAgICAgICAgXn4KL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYuMi4w L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjMyOiBlcnJvcjogaW52 YWxpZCBhcHBsaWNhdGlvbiBvZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogIG5yX2RlY3MgPSAgZGVzYy0+bGVuIC8gc2l6ZW9m KHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXn5+fn5+Ci90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjM4MjozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVk IHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICpsZW4gKz0gZGVzY3NbaV0u bGVuOwogICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4y LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlubG9j ay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4y LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tZW1wb29s Lmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6Mzgs CiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5OgovdG1wL1VCMTYwNF9LNC44LjBfR0ND Ni4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODM6MTY6IHdhcm5p bmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmG1hcF9vbmVfZGVzY+KAmSBb LVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgaWYgKHVubGlrZWx5KG1hcF9vbmVf ZGVzYyhkZXYsIHZxLCBidWZfdmVjLCAmdmVjX2lkLAogICAgICAgICAgICAgICAgXgovdG1wL1VC MTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9p bmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0aW9u IG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRpbl9l eHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XgovdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zp cnRpb19uZXQuYzozODM6Mzogd2FybmluZzogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDi gJhtYXBfb25lX2Rlc2PigJkgWy1XbmVzdGVkLWV4dGVybnNdCiAgIGlmICh1bmxpa2VseShtYXBf b25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgXn4KL3RtcC9VQjE2MDRfSzQu OC4wX0dDQzYuMi4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6 IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWTigJkKL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYuMi4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmlu ZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdj Yy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAgICAgICBm cm9tIC90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdj Yy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9t IC90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtZ2NjL2luY2x1ZGUvcnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAv VUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjk6Ci90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3QvdmlydGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhmaWxsX3ZlY19idWZfcGFja2Vk4oCZOgov dG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRp b19uZXQuYzo0MDk6MTY6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9u IOKAmGRlc2NfaXNfYXZhaWzigJkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAg aWYgKHVubGlrZWx5KCFkZXNjX2lzX2F2YWlsKCZkZXNjc1thdmFpbF9pZHhdLCB3cmFwX2NvdW50 ZXIpKSkKICAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYuMi4wL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rp b24uaDozODo0MTogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBtYWNybyDigJh1bmxpa2VseeKAmQog I2RlZmluZSB1bmxpa2VseSh4KSBfX2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYu Mi4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjI6IHdhcm5pbmc6 IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYZGVzY19pc19hdmFpbOKAmSBbLVduZXN0 ZWQtZXh0ZXJuc10KICBpZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwoJmRlc2NzW2F2YWlsX2lk eF0sIHdyYXBfY291bnRlcikpKQogIF5+Ci90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOToyOiBlcnJvcjogaW52YWxpZCB1 c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCi90bXAv VUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjQxOTozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0 IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICpidWZfaWQgPSBkZXNjc1thdmFpbF9pZHhdLmluZGV4 OwogICBeCi90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3QvdmlydGlvX25ldC5jOjQyMTozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5 cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgIGlmIChkZXNjc1thdmFpbF9pZHhd LmZsYWdzICYgVlJJTkdfREVTQ19GX0lORElSRUNUKSB7CiAgIF5+Ci90bXAvVUIxNjA0X0s0Ljgu MF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyMjo0OiBl cnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2Nf cGFja2Vk4oCZCiAgICBpZiAodW5saWtlbHkoZmlsbF92ZWNfYnVmX3BhY2tlZF9pbmRpcmVjdChk ZXYsIHZxLAogICAgXn4KL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYuMi4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDI4OjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRl ZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgICpsZW4gKz0gZGVz Y3NbYXZhaWxfaWR4XS5sZW47CiAgICBeCi90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1 c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICBp ZiAodW5saWtlbHkobWFwX29uZV9kZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICBe fgovdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zp cnRpb19uZXQuYzo0MzA6NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKA mHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQovdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mzc6MzogZXJyb3I6IGludmFs aWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQog ICBpZiAoKGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfTkVYVCkgPT0gMCkK ICAgXn4KL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYuMi4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6IEluIGZ1bmN0aW9uIOKAmHJ0ZV92aG9zdF9kZXF1ZXVlX2J1cnN04oCZ OgovdG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zp cnRpb19uZXQuYzoxMzc3Ojc6IHdhcm5pbmc6IHBhc3NpbmcgYXJndW1lbnQgMyBvZiDigJhhbGxv Y19jb3B5X2luZF90YWJsZeKAmSBtYWtlcyBpbnRlZ2VyIGZyb20gcG9pbnRlciB3aXRob3V0IGEg Y2FzdCBbLVdpbnQtY29udmVyc2lvbl0KICAgICAgICZ2cS0+ZGVzY1tkZXNjX2luZGV4ZXNbaV1d KTsKICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuOC4wX0dDQzYuMi4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZXhwZWN0ZWQg4oCYdWludDY0X3Qge2Fr YSBsb25nIHVuc2lnbmVkIGludH3igJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0 IHZyaW5nX2Rlc2MgKuKAmQogYWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZpcnRpb19uZXQg KmRldiwgc3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCiBefn5+fn5+fn5+fn5+fn5+fn5+fgov dG1wL1VCMTYwNF9LNC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRp b19uZXQuYzoxMzc2OjEzOiBlcnJvcjogdG9vIGZldyBhcmd1bWVudHMgdG8gZnVuY3Rpb24g4oCY YWxsb2NfY29weV9pbmRfdGFibGXigJkKICAgICBpZGVzYyA9IGFsbG9jX2NvcHlfaW5kX3RhYmxl KGRldiwgdnEsCiAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fgovdG1wL1VCMTYwNF9L NC44LjBfR0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MTox OiBub3RlOiBkZWNsYXJlZCBoZXJlCiBhbGxvY19jb3B5X2luZF90YWJsZShzdHJ1Y3QgdmlydGlv X25ldCAqZGV2LCBzdHJ1Y3Qgdmhvc3RfdmlydHF1ZXVlICp2cSwKIF5+fn5+fn5+fn5+fn5+fn5+ fn5+Ci90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdj Yy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL2ludGVybmFsL3J0ZS5j b21waWxlLXByZS5tazoxMTQ6IHJlY2lwZSBmb3IgdGFyZ2V0ICd2aXJ0aW9fbmV0Lm8nIGZhaWxl ZAptYWtlWzVdOiAqKiogW3ZpcnRpb19uZXQub10gRXJyb3IgMQovdG1wL1VCMTYwNF9LNC44LjBf R0NDNi4yLjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdldCAn bGlicnRlX3Zob3N0JyBmYWlsZWQKbWFrZVs0XTogKioqIFtsaWJydGVfdmhvc3RdIEVycm9yIDIK bWFrZVs0XTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KICBDQyBydGVfaXB2 Nl9mcmFnbWVudGF0aW9uLm8KICBDQyBydGVfaXB2NF9yZWFzc2VtYmx5Lm8KICBDQyBydGVfaXB2 Nl9yZWFzc2VtYmx5Lm8KICBDQyBydGVfaXBfZnJhZ19jb21tb24ubwogIENDIGlwX2ZyYWdfaW50 ZXJuYWwubwogIEFSIGxpYnJ0ZV9pcF9mcmFnLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfaXBfZnJh Zy5hCi90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdj Yy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtidWlsZC5t azo0OTogcmVjaXBlIGZvciB0YXJnZXQgJ2xpYicgZmFpbGVkCm1ha2VbM106ICoqKiBbbGliXSBF cnJvciAyCi90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtyb290 Lm1rOjEwMDogcmVjaXBlIGZvciB0YXJnZXQgJ2FsbCcgZmFpbGVkCm1ha2VbMl06ICoqKiBbYWxs XSBFcnJvciAyCi90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIuMC94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtp bnN0YWxsLm1rOjU3OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxlZAptYWtl WzFdOiAqKiogW3ByZV9pbnN0YWxsXSBFcnJvciAyCi90bXAvVUIxNjA0X0s0LjguMF9HQ0M2LjIu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL21rL3J0ZS5zZGtyb290Lm1rOjc5OiByZWNpcGUgZm9yIHRhcmdldCAnaW5zdGFs bCcgZmFpbGVkCm1ha2U6ICoqKiBbaW5zdGFsbF0gRXJyb3IgMgoKKkZhaWxlZCBCdWlsZCAjMzoK T1M6IENFTlRPUwpUYXJnZXQ6IHg4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcKICBDQyBydGVf aXB2NF9mcmFnbWVudGF0aW9uLm8KICBDQyB2aG9zdF91c2VyLm8KICBDQyBydGVfaXB2Nl9mcmFn bWVudGF0aW9uLm8KICBDQyB2aXJ0aW9fbmV0Lm8KICBDQyBydGVfaXB2NF9yZWFzc2VtYmx5Lm8K L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92 aXJ0aW9fbmV0LmM6MzUyOjEzOiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUg J3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICBkbGVuID0gZGVzYy0+bGVuOwogICAg ICAgICAgICAgICB+fn5+XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9s aWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24g b2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90 bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOjM1NDozNDogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdz dHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICB2aG9zdF9pb3ZhX3RvX3Z2 YShkZXYsIHZxLCBkZXNjLT5hZGRyLCAmZGxlbiwgVkhPU1RfQUNDRVNTX1JPKTsKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5eCi90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmhvc3QuaDo4ODoxMDogbm90 ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAg ICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkICAgKmRlc2NfcGFja2VkOwogICAg ICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzU4OjI2OiBlcnJvcjogaW5jb21wbGV0 ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICBp ZiAodW5saWtlbHkoZGxlbiA8IGRlc2MtPmxlbikpIHsKICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH5+fn5eCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0 MTogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHko eCkgICAgIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFy YXRpb24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVj dCB2cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAg ICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3QvdmlydGlvX25ldC5jOjM2Mzo0NjogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0 eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBpZGVzY3MgPSBh bGxvY19jb3B5X2luZF90YWJsZShkZXYsIHZxLCBkZXNjLT5hZGRyLCBkZXNjLT5sZW4pOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fl4K L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92 aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdf ZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAq ZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4w X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNzA6MTc6 IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2Nf cGFja2VkJwogICAgICAgIG5yX2RlY3MgPSAgZGVzYy0+bGVuIC8gc2l6ZW9mKHN0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZCk7CiAgICAgICAgICAgICAgICAgICB+fn5+XgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5v dGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAg ICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAg ICAgICAgICAgICAgICAgICAgICBeCi0tCiAgQ0MgcnRlX2lwX2ZyYWdfY29tbW9uLm8KICBDQyBp cF9mcmFnX2ludGVybmFsLm8KICBBUiBsaWJydGVfaXBfZnJhZy5hCiAgSU5TVEFMTC1MSUIgbGli cnRlX2lwX2ZyYWcuYQo9PSBCdWlsZCBsaWIvbGlicnRlX2dybwovdG1wL0NFTlRPU19LMy4xMC4w X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNzA6MjU6 IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mICdzaXplb2YnIHRvIGFuIGluY29tcGxldGUg dHlwZSAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgIG5yX2RlY3MgPSAgZGVzYy0+ bGVuIC8gc2l6ZW9mKHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCk7CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6 MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tl ZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tl ZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MjoxNjogZXJyb3I6IHN1 YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2Nf cGFja2VkJwogICAgICAgICAgICAgICAgKmxlbiArPSBkZXNjc1tpXS5sZW47CiAgICAgICAgICAg ICAgICAgICAgICAgIH5+fn5+XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRp b24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2 cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBe Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOjM4MzoxNjogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVu Y3Rpb24gJ21hcF9vbmVfZGVzYycgaXMgaW52YWxpZCBpbiBDOTkgWy1XaW1wbGljaXQtZnVuY3Rp b24tZGVjbGFyYXRpb25dCiAgICAgICAgICAgICAgICBpZiAodW5saWtlbHkobWFwX29uZV9kZXNj KGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6 IGV4cGFuZGVkIGZyb20gbWFjcm8gJ3VubGlrZWx5JwojZGVmaW5lIHVubGlrZWx5KHgpICAgICBf X2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6Mzg0OjEyOiBlcnJvcjogc3Vic2NyaXB0IG9mIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NzW2ldLmFkZHIs IGRlc2NzW2ldLmxlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfn5+fn5eCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDoz ODo0MTogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtl bHkoeCkgICAgIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVj bGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAg ICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjM0NDo1NTogd2FybmluZzogdW51c2VkIHBhcmFtZXRlciAncGVy bScgWy1XdW51c2VkLXBhcmFtZXRlcl0KICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGJ1 Zl92ZWN0b3IgKmJ1Zl92ZWMsIHVpbnQxNl90ICpsZW4sIHVpbnQ4X3QgcGVybSkKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MDk6MTY6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0 aW9uIG9mIGZ1bmN0aW9uICdkZXNjX2lzX2F2YWlsJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdpbXBs aWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICAgICAgICBpZiAodW5saWtlbHkoIWRlc2NfaXNf YXZhaWwoJmRlc2NzW2F2YWlsX2lkeF0sIHdyYXBfY291bnRlcikpKQogICAgICAgICAgICAgICAg ICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6 IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFjcm8gJ3VubGlrZWx5JwojZGVmaW5lIHVubGlrZWx5KHgp ICAgICBfX2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjM2OiBlcnJvcjogc3Vic2NyaXB0 IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQn CiAgICAgICAgaWYgKHVubGlrZWx5KCFkZXNjX2lzX2F2YWlsKCZkZXNjc1thdmFpbF9pZHhdLCB3 cmFwX2NvdW50ZXIpKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+ XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6 IGV4cGFuZGVkIGZyb20gbWFjcm8gJ3VubGlrZWx5JwojZGVmaW5lIHVubGlrZWx5KHgpICAgICBf X2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9m ICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdf ZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRp b19uZXQuYzo0MTk6MTg6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgICpidWZfaWQg PSBkZXNjc1thdmFpbF9pZHhdLmluZGV4OwogICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+ XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAg ICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyMTox MjogZXJyb3I6IHN1YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSAnc3RydWN0 IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgaWYgKGRlc2NzW2F2YWlsX2lkeF0u ZmxhZ3MgJiBWUklOR19ERVNDX0ZfSU5ESVJFQ1QpIHsKICAgICAgICAgICAgICAgICAgICB+fn5+ fl4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJp bmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQg ICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MjM6 MTQ6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUgJ3N0cnVj dCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAmZGVzY3NbYXZhaWxfaWR4XSwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5eCi90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogZXhwYW5kZWQgZnJv bSBtYWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHkoeCkgICAgIF9fYnVpbHRpbl9leHBl Y3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAg ICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyODox NzogZXJyb3I6IHN1YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSAnc3RydWN0 IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgICAgICAgICAqbGVuICs9IGRlc2Nz W2F2YWlsX2lkeF0ubGVuOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+Xgov dG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zo b3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19k ZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpk ZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMToxMzog ZXJyb3I6IHN1YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSAnc3RydWN0IHZy aW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGRlc2NzW2F2YWlsX2lkeF0uYWRkciwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fl4KL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBleHBhbmRlZCBmcm9t IG1hY3JvICd1bmxpa2VseScKI2RlZmluZSB1bmxpa2VseSh4KSAgICAgX19idWlsdGluX2V4cGVj dCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IHZyaW5n X2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkICAg KmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDM3OjEz OiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdzdHJ1Y3Qg dnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBpZiAoKGRlc2NzW2F2YWlsX2lkeF0u ZmxhZ3MgJiBWUklOR19ERVNDX0ZfTkVYVCkgPT0gMCkKICAgICAgICAgICAgICAgICAgICAgfn5+ fn5eCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IHZy aW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk ICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDAw OjQ2OiB3YXJuaW5nOiB1bnVzZWQgcGFyYW1ldGVyICdwZXJtJyBbLVd1bnVzZWQtcGFyYW1ldGVy XQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90ICpidWZfaWQsIHVpbnQx Nl90ICpsZW4sIHVpbnQ4X3QgcGVybSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MTM3 NzozMzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9uIGNhbGwsIGV4cGVjdGVk IDQsIGhhdmUgMwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmdnEtPmRlc2NbZGVzY19pbmRleGVzW2ldXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NF TlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19u ZXQuYzo0MDoxOiBub3RlOiAnYWxsb2NfY29weV9pbmRfdGFibGUnIGRlY2xhcmVkIGhlcmUKc3Rh dGljIF9fcnRlX2Fsd2F5c19pbmxpbmUgdm9pZCAqCl4KNCB3YXJuaW5ncyBhbmQgMTYgZXJyb3Jz IGdlbmVyYXRlZC4KbWFrZVs1XTogKioqIFt2aXJ0aW9fbmV0Lm9dIEVycm9yIDEKbWFrZVs0XTog KioqIFtsaWJydGVfdmhvc3RdIEVycm9yIDIKbWFrZVs0XTogKioqIFdhaXRpbmcgZm9yIHVuZmlu aXNoZWQgam9icy4uLi4KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZ3JvLmgKICBDQyBydGVf Z3JvLm8KCipGYWlsZWQgQnVpbGQgIzQ6Ck9TOiBDRU5UT1MKVGFyZ2V0OiBpNjg2LW5hdGl2ZS1s aW51eGFwcC1nY2MKICBDQyBzb2NrZXQubwogIENDIHJ0ZV9ldmVudF9jcnlwdG9fYWRhcHRlci5v CiAgQ0Mgdmhvc3QubwogIENDIHZob3N0X3VzZXIubwovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQu OC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jOiBJbiBmdW5jdGlvbiDigJh0 cmFuc2xhdGVfcmluZ19hZGRyZXNzZXPigJk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv aTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdF91c2VyLmM6NDczOjIxOiB3YXJuaW5nOiBjYXN0 IHRvIHBvaW50ZXIgZnJvbSBpbnRlZ2VyIG9mIGRpZmZlcmVudCBzaXplIFstV2ludC10by1wb2lu dGVyLWNhc3RdCiAgIHZxLT5kZXNjX3BhY2tlZCA9IChzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQg KikgcmluZ19hZGRyX3RvX3Z2YQogICAgICAgICAgICAgICAgICAgICBeCiAgQVIgbGlicnRlX2V2 ZW50ZGV2LmEKICBJTlNUQUxMLUxJQiBsaWJydGVfZXZlbnRkZXYuYQo9PSBCdWlsZCBsaWIvbGli cnRlX2lwX2ZyYWcKICBDQyB2aXJ0aW9fbmV0Lm8KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVf aXBfZnJhZy5oCiAgQ0MgcnRlX2lwdjRfZnJhZ21lbnRhdGlvbi5vCi90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6IEluIGZ1bmN0 aW9uIOKAmGZpbGxfdmVjX2J1Zl9wYWNrZWRfaW5kaXJlY3TigJk6Ci90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzUyOjEzOiBl cnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIGRsZW4gPSBk ZXNjLT5sZW47CiAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzU0OjM0OiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICB2aG9zdF9pb3ZhX3RvX3Z2YShkZXYs IHZxLCBkZXNjLT5hZGRyLCAmZGxlbiwgVkhPU1RfQUNDRVNTX1JPKTsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRl X3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21l bXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21idWYuaDoz OCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNTg6MjY6IGVycm9y OiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgaWYgKHVubGlrZWx5 KGRsZW4gPCBkZXNjLT5sZW4pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NF TlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNs dWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0aW9uIG9m IG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRpbl9leHBl Y3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgov dG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjM2Mzo0NjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUKICAgaWRlc2NzID0gYWxsb2NfY29weV9pbmRfdGFibGUoZGV2LCB2cSwgZGVzYy0+YWRk ciwgZGVzYy0+bGVuKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2ZS1saW51eGFwcC1n Y2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3ZpcnRpb19uZXQuYzozNjM6NTg6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgIGlkZXNjcyA9IGFsbG9jX2NvcHlfaW5kX3RhYmxlKGRldiwgdnEsIGRl c2MtPmFkZHIsIGRlc2MtPmxlbik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjE3OiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIG5yX2RlY3MgPSAgZGVzYy0+bGVuIC8g c2l6ZW9mKHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCk7CiAgICAgICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjM3MDozMjogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRv IGluY29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICBucl9kZWNz ID0gIGRlc2MtPmxlbiAvIHNpemVvZihzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQpOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9p Njg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODI6MzogZXJyb3I6IGludmFsaWQg dXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICAq bGVuICs9IGRlc2NzW2ldLmxlbjsKICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2 ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MjoxNjogZXJyb3I6IGRlcmVmZXJl bmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgKmxlbiArPSBkZXNjc1tpXS5sZW47 CiAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRp dmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xh cmF0aW9uIG9mIGZ1bmN0aW9uIOKAmG1hcF9vbmVfZGVzY+KAmSBbLVdpbXBsaWNpdC1mdW5jdGlv bi1kZWNsYXJhdGlvbl0KICAgaWYgKHVubGlrZWx5KG1hcF9vbmVfZGVzYyhkZXYsIHZxLCBidWZf dmVjLCAmdmVjX2lkLAogICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRp dmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6IHdhcm5pbmc6IG5lc3RlZCBleHRlcm4g ZGVjbGFyYXRpb24gb2Yg4oCYbWFwX29uZV9kZXNj4oCZIFstV25lc3RlZC1leHRlcm5zXQovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0 IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0 ZV9zcGlubG9jay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9t ZW1wb29sLmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6 MzgsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2 ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6Mzg0OjEyOiBlcnJv cjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgZGVzY3Nb aV0uYWRkciwgZGVzY3NbaV0ubGVuLAogICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5j aF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5s aWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6 IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWTigJkKICAgaWYgKHVubGlrZWx5KG1hcF9vbmVfZGVzYyhkZXYsIHZxLCBidWZfdmVj LCAmdmVjX2lkLAogICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4w X0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhm NWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlu bG9jay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tZW1wb29s Lmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAg ICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6Mzg0OjI3OiBlcnJvcjogZGVy ZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgZGVzY3NbaV0uYWRk ciwgZGVzY3NbaV0ubGVuLAogICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUv cnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFj cm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4cGVjdCgh ISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0 LmM6IEluIGZ1bmN0aW9uIOKAmGZpbGxfdmVjX2J1Zl9wYWNrZWTigJk6Ci90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjI6 IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGRlc2NfaXNfYXZh aWzigJkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgaWYgKHVubGlrZWx5KCFk ZXNjX2lzX2F2YWlsKCZkZXNjc1thdmFpbF9pZHhdLCB3cmFwX2NvdW50ZXIpKSkKICBeCi90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0 LmM6NDA5OjI6IHdhcm5pbmc6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYZGVzY19p c19hdmFpbOKAmSBbLVduZXN0ZWQtZXh0ZXJuc10KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MDk6MjogZXJyb3I6IGludmFs aWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQpJ biBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5h dGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9p Njg2LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAogICAg ICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9pNjg2 LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVtcG9vbC5oOjQ0LAogICAgICAgICAg ICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2ZS1saW51 eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9pNjg2LW5hdGl2 ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAgIGZy b20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zp cnRpb19uZXQuYzo5OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxp bnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJy dGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOTozNjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRl ciB0byBpbmNvbXBsZXRlIHR5cGUKICBpZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwoJmRlc2Nz W2F2YWlsX2lkeF0sIHdyYXBfY291bnRlcikpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhh cHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6 IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHko eCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE5OjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRl ZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgKmJ1Zl9pZCA9IGRl c2NzW2F2YWlsX2lkeF0uaW5kZXg7CiAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9p Njg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MTk6MTg6IGVycm9yOiBkZXJlZmVy ZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICpidWZfaWQgPSBkZXNjc1thdmFp bF9pZHhdLmluZGV4OwogICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDIxOjM6IGVycm9yOiBp bnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTi gJkKICAgaWYgKGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfSU5ESVJFQ1Qp IHsKICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3QvdmlydGlvX25ldC5jOjQyMToxMjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBp bmNvbXBsZXRlIHR5cGUKICAgaWYgKGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVND X0ZfSU5ESVJFQ1QpIHsKICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyMjo0OiBlcnJvcjogaW52YWxp ZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAg ICBpZiAodW5saWtlbHkoZmlsbF92ZWNfYnVmX3BhY2tlZF9pbmRpcmVjdChkZXYsIHZxLAogICAg XgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2 LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAog ICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5h dGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9p Njg2LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVtcG9vbC5oOjQ0LAogICAgICAg ICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2ZS1s aW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9pNjg2LW5h dGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAg IGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2ZS1saW51eGFwcC1n Y2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3ZpcnRpb19uZXQuYzo5OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZl LWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyMzoxNDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICAmZGVzY3NbYXZhaWxfaWR4XSwKICAgICAg ICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhh cHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6 IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHko eCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDI4OjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRl ZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgICpsZW4gKz0gZGVz Y3NbYXZhaWxfaWR4XS5sZW47CiAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDI4OjE3OiBlcnJvcjogZGVyZWZlcmVu Y2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgKmxlbiArPSBkZXNjc1thdmFpbF9p ZHhdLmxlbjsKICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv aTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMwOjQ6IGVycm9yOiBpbnZhbGlk IHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAg IGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAg IF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwK ICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1u YXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv aTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAg ICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1u YXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAg ICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAt Z2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6OToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIv bGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MzE6MTM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICAgZGVzY3NbYXZhaWxfaWR4XS5hZGRyLAog ICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxp bnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0 aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBu b3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlr ZWx5KHgpIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ugb2Yg dW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICBpZiAodW5s aWtlbHkobWFwX29uZV9kZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICBeCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZl LWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYt bmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlubG9jay5oOjE1OjAsCiAgICAgICAg ICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxp bnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0 aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tZW1wb29sLmg6NDQsCiAgICAgICAgICAgICAg ICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxp bnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAgICAgICAgICAgICAgZnJvbSAv dG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhh cHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92 aG9zdC92aXJ0aW9fbmV0LmM6NDMyOjEzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRv IGluY29tcGxldGUgdHlwZQogICAgICAgIGRlc2NzW2F2YWlsX2lkeF0ubGVuLAogICAgICAgICAg ICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdj Yy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4 YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBk ZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9f YnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0aXZlLWxpbnV4 YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjQzNzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVk IHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgIGlmICgoZGVzY3NbYXZhaWxf aWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9ORVhUKSA9PSAwKQogICBeCi90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDM3OjEz OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICBpZiAo KGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfTkVYVCkgPT0gMCkKICAgICAg ICAgICAgIF4KICBDQyBydGVfaXB2Nl9mcmFnbWVudGF0aW9uLm8KICBDQyBydGVfaXB2NF9yZWFz c2VtYmx5Lm8KICBDQyBydGVfaXB2Nl9yZWFzc2VtYmx5Lm8KLS0KICBDQyBncm9fdnhsYW5fdGNw NC5vCiAgQVIgbGlicnRlX2dyby5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2dyby5hCj09IEJ1aWxk IGxpYi9saWJydGVfYml0cmF0ZXN0YXRzCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6IEluIGZ1bmN0aW9uIOKAmHJ0ZV92aG9z dF9kZXF1ZXVlX2J1cnN04oCZOgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L2k2ODYtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjEzNzc6Nzogd2FybmluZzogcGFzc2luZyBhcmd1 bWVudCAzIG9mIOKAmGFsbG9jX2NvcHlfaW5kX3RhYmxl4oCZIG1ha2VzIGludGVnZXIgZnJvbSBw b2ludGVyIHdpdGhvdXQgYSBjYXN0IFtlbmFibGVkIGJ5IGRlZmF1bHRdCiAgICAgICAmdnEtPmRl c2NbZGVzY19pbmRleGVzW2ldXSk7CiAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZXhwZWN0 ZWQg4oCYdWludDY0X3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0IHZyaW5n X2Rlc2MgKuKAmQogYWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZpcnRpb19uZXQgKmRldiwg c3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCiBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MTM3Nzo3OiBlcnJvcjogdG9v IGZldyBhcmd1bWVudHMgdG8gZnVuY3Rpb24g4oCYYWxsb2NfY29weV9pbmRfdGFibGXigJkKICAg ICAgICZ2cS0+ZGVzY1tkZXNjX2luZGV4ZXNbaV1dKTsKICAgICAgIF4KL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MToxOiBu b3RlOiBkZWNsYXJlZCBoZXJlCiBhbGxvY19jb3B5X2luZF90YWJsZShzdHJ1Y3QgdmlydGlvX25l dCAqZGV2LCBzdHJ1Y3Qgdmhvc3RfdmlydHF1ZXVlICp2cSwKIF4KCipGYWlsZWQgQnVpbGQgIzU6 Ck9TOiBVQjE2MDQKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nCiAgU1lNTElO Sy1GSUxFIGluY2x1ZGUvcnRlX2dyby5oCiAgQ0MgcnRlX2dyby5vCiAgQ0MgZ3JvX3RjcDQubwog IENDIHZpcnRpb19uZXQubwogIENDIGdyb192eGxhbl90Y3A0Lm8KL3RtcC9VQjE2MDRfSzQuNC4w X0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNTI6MTM6 IGVycm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2Nf cGFja2VkJwogICAgICAgIGRsZW4gPSBkZXNjLT5sZW47CiAgICAgICAgICAgICAgIH5+fn5eCi90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9z dC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAqZGVz Y19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0ND NS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhm NWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM1NDozNDogZXJy b3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWQnCiAgICAgICAgICAgICAgICB2aG9zdF9pb3ZhX3RvX3Z2YShkZXYsIHZxLCBkZXNjLT5hZGRy LCAmZGxlbiwgVkhPU1RfQUNDRVNTX1JPKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIH5+fn5eCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9u IG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJp bmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgov dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOjM1ODoyNjogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBlICdz dHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgaWYgKHVubGlrZWx5KGRsZW4gPCBkZXNj LT5sZW4pKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+XgovdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0 MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogZXhwYW5kZWQgZnJvbSBt YWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHkoeCkgICAgIF9fYnVpbHRpbl9leHBlY3Qo ISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgov dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmhv c3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IHZyaW5nX2Rl c2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkICAgKmRl c2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNjM6NDY6IGVy cm9yOiBpbmNvbXBsZXRlIGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2NfcGFj a2VkJwogICAgICAgICAgICAgICAgaWRlc2NzID0gYWxsb2NfY29weV9pbmRfdGFibGUoZGV2LCB2 cSwgZGVzYy0+YWRkciwgZGVzYy0+bGVuKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5eCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJk IGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAg ICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAg ICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJy dGVfdmhvc3QvdmlydGlvX25ldC5jOjM2Mzo1ODogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlv biBvZiB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBpZGVz Y3MgPSBhbGxvY19jb3B5X2luZF90YWJsZShkZXYsIHZxLCBkZXNjLT5hZGRyLCBkZXNjLT5sZW4p OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfn5+fl4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9s aWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24g b2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6MzcwOjE3OiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICBucl9kZWNzID0gIGRlc2MtPmxlbiAvIHNp emVvZihzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQpOwogICAgICAgICAgICAgICAgICAgfn5+fl4K L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zo b3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19k ZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpk ZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjI1OiBl cnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiAnc2l6ZW9mJyB0byBhbiBpbmNvbXBsZXRlIHR5 cGUgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICBucl9kZWNzID0gIGRlc2MtPmxl biAvIHNpemVvZihzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQpOwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6 IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcK ICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsK ICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgyOjE2OiBlcnJvcjogc3Vic2Ny aXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWQnCiAgICAgICAgICAgICAgICAqbGVuICs9IGRlc2NzW2ldLmxlbjsKICAgICAgICAgICAgICAg ICAgICAgICAgfn5+fn5eCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9m ICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdf ZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjM4MzoxNjogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g J21hcF9vbmVfZGVzYycgaXMgaW52YWxpZCBpbiBDOTkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVj bGFyYXRpb25dCiAgICAgICAgICAgICAgICBpZiAodW5saWtlbHkobWFwX29uZV9kZXNjKGRldiwg dnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjM4NDoxMjogZXJyb3I6IHN1YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUg dHlwZSAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBkZXNjc1tpXS5hZGRyLCBkZXNjc1tpXS5sZW4sCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+XgovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogZXhwYW5kZWQg ZnJvbSBtYWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHkoeCkgICAgIF9fYnVpbHRpbl9l eHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IHZy aW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk ICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODQ6 Mjc6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUgJ3N0cnVj dCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZGVzY3NbaV0uYWRkciwgZGVzY3NbaV0ubGVuLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fl4KL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGV4cGFu ZGVkIGZyb20gbWFjcm8gJ3VubGlrZWx5JwojZGVmaW5lIHVubGlrZWx5KHgpICAgICBfX2J1aWx0 aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRl X3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVj dCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3Bh Y2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0 X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6 NDA5OjE2OiB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiAnZGVzY19p c19hdmFpbCcgaXMgaW52YWxpZCBpbiBDOTkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRp b25dCiAgICAgICAgaWYgKHVubGlrZWx5KCFkZXNjX2lzX2F2YWlsKCZkZXNjc1thdmFpbF9pZHhd LCB3cmFwX2NvdW50ZXIpKSkKICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MDk6 MzY6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUgJ3N0cnVj dCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICBpZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwo JmRlc2NzW2F2YWlsX2lkeF0sIHdyYXBfY291bnRlcikpKQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfn5+fn5eCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGlj dGlvbi5oOjM4OjQxOiBub3RlOiBleHBhbmRlZCBmcm9tIG1hY3JvICd1bmxpa2VseScKI2RlZmlu ZSB1bmxpa2VseSh4KSAgICAgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3 YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAg ICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAg ICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQxOToxODogZXJyb3I6IHN1YnNjcmlwdCBvZiBwb2lu dGVyIHRvIGluY29tcGxldGUgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAg ICAgICAgICAgKmJ1Zl9pZCA9IGRlc2NzW2F2YWlsX2lkeF0uaW5kZXg7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgfn5+fn5eCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9u IG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJp bmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgov dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOjQyMToxMjogZXJyb3I6IHN1YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxl dGUgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgaWYgKGRl c2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfSU5ESVJFQ1QpIHsKICAgICAgICAg ICAgICAgICAgICB+fn5+fl4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9s aWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24g b2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6NDIzOjE0OiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0 ZSB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRlc2NzW2F2YWlsX2lkeF0sCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+ XgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTog ZXhwYW5kZWQgZnJvbSBtYWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHkoeCkgICAgIF9f YnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAn c3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rl c2NfcGFja2VkICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19u ZXQuYzo0Mjg6MTc6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgICAgICAgICAgKmxl biArPSBkZXNjc1thdmFpbF9pZHhdLmxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB+fn5+fl4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRl X3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVj dCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3Bh Y2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0 X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6 NDMxOjEzOiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdz dHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3NbYXZhaWxfaWR4XS5hZGRyLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+XgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogZXhwYW5k ZWQgZnJvbSBtYWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHkoeCkgICAgIF9fYnVpbHRp bl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0 IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFj a2VkICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0 MzI6MTM6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUgJ3N0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBkZXNjc1thdmFpbF9pZHhdLmxlbiwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fl4KL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGV4cGFuZGVk IGZyb20gbWFjcm8gJ3VubGlrZWx5JwojZGVmaW5lIHVubGlrZWx5KHgpICAgICBfX2J1aWx0aW5f ZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zo b3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2 cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tl ZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0 LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDM3 OjEzOiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdzdHJ1 Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBpZiAoKGRlc2NzW2F2YWlsX2lk eF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfTkVYVCkgPT0gMCkKICAgICAgICAgICAgICAgICAgICAg fn5+fn5eCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92 aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3Qg dnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0 MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjEz Nzc6MzM6IGVycm9yOiB0b28gZmV3IGFyZ3VtZW50cyB0byBmdW5jdGlvbiBjYWxsLCBleHBlY3Rl ZCA0LCBoYXZlIDMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJnZxLT5kZXNjW2Rlc2NfaW5kZXhlc1tpXV0pOwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19u ZXQuYzo0MDoxOiBub3RlOiAnYWxsb2NfY29weV9pbmRfdGFibGUnIGRlY2xhcmVkIGhlcmUKc3Rh dGljIF9fcnRlX2Fsd2F5c19pbmxpbmUgdm9pZCAqCl4KMiB3YXJuaW5ncyBhbmQgMTkgZXJyb3Jz IGdlbmVyYXRlZC4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9pbnRl cm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTE0OiByZWNpcGUgZm9yIHRhcmdldCAndmlydGlvX25l dC5vJyBmYWlsZWQKbWFrZVs1XTogKioqIFt2aXJ0aW9fbmV0Lm9dIEVycm9yIDEKL3RtcC9VQjE2 MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUg Zm9yIHRhcmdldCAnbGlicnRlX3Zob3N0JyBmYWlsZWQKbWFrZVs0XTogKioqIFtsaWJydGVfdmhv c3RdIEVycm9yIDIKbWFrZVs0XTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4K ICBBUiBsaWJydGVfZ3JvLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfZ3JvLmEKL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc2RrYnVpbGQubWs6NDk6IHJlY2lwZSBm b3IgdGFyZ2V0ICdsaWInIGZhaWxlZAptYWtlWzNdOiAqKiogW2xpYl0gRXJyb3IgMgovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtyb290Lm1rOjEwMDogcmVj aXBlIGZvciB0YXJnZXQgJ2FsbCcgZmFpbGVkCm1ha2VbMl06ICoqKiBbYWxsXSBFcnJvciAyCi90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka2luc3RhbGwubWs6 NTc6IHJlY2lwZSBmb3IgdGFyZ2V0ICdwcmVfaW5zdGFsbCcgZmFpbGVkCm1ha2VbMV06ICoqKiBb cHJlX2luc3RhbGxdIEVycm9yIDIKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9tay9ydGUuc2Rrcm9vdC5tazo3OTogcmVjaXBlIGZvciB0YXJnZXQgJ2luc3RhbGwnIGZhaWxl ZAptYWtlOiAqKiogW2luc3RhbGxdIEVycm9yIDIKCipGYWlsZWQgQnVpbGQgIzY6Ck9TOiBDRU5U T1MKVGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQKICBTWU1MSU5LLUZJ TEUgaW5jbHVkZS9ydGVfaXBfZnJhZy5oCiAgQ0MgcnRlX2lwdjRfZnJhZ21lbnRhdGlvbi5vCiAg Q0MgcnRlX2lwdjZfZnJhZ21lbnRhdGlvbi5vCiAgQ0MgdmlydGlvX25ldC5vCi90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9f bmV0LmM6IEluIGZ1bmN0aW9uIOKAmGZpbGxfdmVjX2J1Zl9wYWNrZWRfaW5kaXJlY3TigJk6Ci90 bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hh cmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6MzUyOjEzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogIGRsZW4gPSBkZXNjLT5sZW47CiAgICAgICAgICAgICBeCi90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6MzU0OjM0OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxl dGUgdHlwZQogICB2aG9zdF9pb3ZhX3RvX3Z2YShkZXYsIHZxLCBkZXNjLT5hZGRyLCAmZGxlbiwg VkhPU1RfQUNDRVNTX1JPKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDox NTowLAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tZW1w b29sLmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQu OC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRl X21idWYuaDozOCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFy ZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3ZpcnRpb19uZXQuYzozNTg6MjY6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlCiAgaWYgKHVubGlrZWx5KGRsZW4gPCBkZXNjLT5sZW4pKSB7CiAgICAgICAg ICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVk aWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtlbHni gJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzYz OjQ2OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICBp ZGVzY3MgPSBhbGxvY19jb3B5X2luZF90YWJsZShkZXYsIHZxLCBkZXNjLT5hZGRyLCBkZXNjLT5s ZW4pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOjM2Mzo1ODogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNv bXBsZXRlIHR5cGUKICAgaWRlc2NzID0gYWxsb2NfY29weV9pbmRfdGFibGUoZGV2LCB2cSwgZGVz Yy0+YWRkciwgZGVzYy0+bGVuKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNzA6MTc6IGVycm9yOiBk ZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgbnJfZGVjcyA9ICBkZXNj LT5sZW4gLyBzaXplb2Yoc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkKTsKICAgICAgICAgICAgICAg ICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1n Y2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjMyOiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBv ZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3Bh Y2tlZOKAmQogIG5yX2RlY3MgPSAgZGVzYy0+bGVuIC8gc2l6ZW9mKHN0cnVjdCB2cmluZ19kZXNj X3BhY2tlZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjM4MjozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0 IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICpsZW4gKz0gZGVzY3NbaV0ubGVuOwogICBeCi90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVk LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92 aXJ0aW9fbmV0LmM6MzgyOjE2OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29t cGxldGUgdHlwZQogICAqbGVuICs9IGRlc2NzW2ldLmxlbjsKICAgICAgICAgICAgICAgIF4KL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFy ZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3ZpcnRpb19uZXQuYzozODM6Mzogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVu Y3Rpb24g4oCYbWFwX29uZV9kZXNj4oCZIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9u XQogICBpZiAodW5saWtlbHkobWFwX29uZV9kZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQs CiAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODM6Mzogd2FybmluZzogbmVzdGVkIGV4dGVybiBkZWNs YXJhdGlvbiBvZiDigJhtYXBfb25lX2Rlc2PigJkgWy1XbmVzdGVkLWV4dGVybnNdCi90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6MzgzOjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhz dHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAogICAgICAgICAgICAgICAgIGZyb20g L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1z aGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tZW1wb29sLmg6NDQsCiAgICAgICAgICAgICAgICAg ZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAg ICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODQ6MTI6IGVycm9y OiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICBkZXNjc1tp XS5hZGRyLCBkZXNjc1tpXS5sZW4sCiAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRl L3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1h Y3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRpbl9leHBlY3Qo ISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg 4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rl c2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1z aGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlubG9jay5oOjE1OjAsCiAgICAgICAgICAgICAg ICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAg ICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWJ1Zi5oOjM4LAogICAgICAg ICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5OgovdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4NDoy NzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAg IGRlc2NzW2ldLmFkZHIsIGRlc2NzW2ldLmxlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj LXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5v dGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtl bHkoeCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6IEluIGZ1bmN0aW9uIOKAmGZpbGxf dmVjX2J1Zl9wYWNrZWTigJk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjI6IHdhcm5pbmc6IGltcGxp Y2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGRlc2NfaXNfYXZhaWzigJkgWy1XaW1wbGlj aXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgaWYgKHVubGlrZWx5KCFkZXNjX2lzX2F2YWlsKCZk ZXNjc1thdmFpbF9pZHhdLCB3cmFwX2NvdW50ZXIpKSkKICBeCi90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5 OjI6IHdhcm5pbmc6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYZGVzY19pc19hdmFp bOKAmSBbLVduZXN0ZWQtZXh0ZXJuc10KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MDk6MjogZXJyb3I6IGlu dmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKA mQpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlubG9j ay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQu OC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRl X21lbXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5 OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj LXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjQwOTozNjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0 byBpbmNvbXBsZXRlIHR5cGUKICBpZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwoJmRlc2NzW2F2 YWlsX2lkeF0sIHdyYXBfY291bnRlcikpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0 MTogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBtYWNybyDigJh1bmxpa2VseeKAmQogI2RlZmluZSB1 bmxpa2VseSh4KSBfX2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MTk6MzogZXJyb3I6IGlu dmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKA mQogICAqYnVmX2lkID0gZGVzY3NbYXZhaWxfaWR4XS5pbmRleDsKICAgXgovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjQxOToxODogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5 cGUKICAgKmJ1Zl9pZCA9IGRlc2NzW2F2YWlsX2lkeF0uaW5kZXg7CiAgICAgICAgICAgICAgICAg IF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdj Yy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRl X3Zob3N0L3ZpcnRpb19uZXQuYzo0MjE6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5l ZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICBpZiAoZGVzY3NbYXZhaWxf aWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9JTkRJUkVDVCkgewogICBeCi90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0 LmM6NDIxOjEyOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlw ZQogICBpZiAoZGVzY3NbYXZhaWxfaWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9JTkRJUkVDVCkg ewogICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDIyOjQ6IGVycm9yOiBpbnZhbGlkIHVz ZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgIGlm ICh1bmxpa2VseShmaWxsX3ZlY19idWZfcGFja2VkX2luZGlyZWN0KGRldiwgdnEsCiAgICBeCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6 MTU6MCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVt cG9vbC5oOjQ0LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0 ZV9tYnVmLmg6MzgsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90 bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hh cmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6NDIzOjE0OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZQogICAgICAgICZkZXNjc1thdmFpbF9pZHhdLAogICAgICAgICAgICAgIF4K L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1z aGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3Rl OiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5 KHgpIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyODo0OiBlcnJvcjogaW52YWxpZCB1 c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICAq bGVuICs9IGRlc2NzW2F2YWlsX2lkeF0ubGVuOwogICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyODox NzogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICps ZW4gKz0gZGVzY3NbYXZhaWxfaWR4XS5sZW47CiAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3Ry dWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICBpZiAodW5saWtlbHkobWFwX29uZV9kZXNjKGRl diwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAgICAgICBm cm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1n Y2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVtcG9vbC5oOjQ0LAogICAgICAgICAgICAg ICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAgICAgICAg ICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMxOjEzOiBl cnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAgIGRl c2NzW2F2YWlsX2lkeF0uYWRkciwKICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRl L3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1h Y3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRpbl9leHBlY3Qo ISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg 4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICBpZiAodW5saWtlbHkobWFwX29uZV9k ZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICBeCkluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj LXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAg ICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVtcG9vbC5oOjQ0LAogICAgICAg ICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAg ICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMy OjEzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAg ICAgIGRlc2NzW2F2YWlsX2lkeF0ubGVuLAogICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2lu Y2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24g b2YgbWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4 cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mt c2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92 aG9zdC92aXJ0aW9fbmV0LmM6NDM3OjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQg dHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgaWYgKChkZXNjc1thdmFpbF9p ZHhdLmZsYWdzICYgVlJJTkdfREVTQ19GX05FWFQpID09IDApCiAgIF4KL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQu Yzo0Mzc6MTM6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBl CiAgIGlmICgoZGVzY3NbYXZhaWxfaWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9ORVhUKSA9PSAw KQogICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhydGVfdmhv c3RfZGVxdWV1ZV9idXJzdOKAmToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzoxMzc3Ojc6IHdhcm5pbmc6IHBh c3NpbmcgYXJndW1lbnQgMyBvZiDigJhhbGxvY19jb3B5X2luZF90YWJsZeKAmSBtYWtlcyBpbnRl Z2VyIGZyb20gcG9pbnRlciB3aXRob3V0IGEgY2FzdCBbZW5hYmxlZCBieSBkZWZhdWx0XQogICAg ICAgJnZxLT5kZXNjW2Rlc2NfaW5kZXhlc1tpXV0pOwogICAgICAgXgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5j OjQxOjE6IG5vdGU6IGV4cGVjdGVkIOKAmHVpbnQ2NF904oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0 eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjICrigJkKIGFsbG9jX2NvcHlfaW5kX3RhYmxlKHN0cnVj dCB2aXJ0aW9fbmV0ICpkZXYsIHN0cnVjdCB2aG9zdF92aXJ0cXVldWUgKnZxLAogXgovdG1wL0NF TlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOjEzNzc6NzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9uIOKA mGFsbG9jX2NvcHlfaW5kX3RhYmxl4oCZCiAgICAgICAmdnEtPmRlc2NbZGVzY19pbmRleGVzW2ld XSk7CiAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZGVjbGFyZWQgaGVyZQog YWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZpcnRpb19uZXQgKmRldiwgc3RydWN0IHZob3N0 X3ZpcnRxdWV1ZSAqdnEsCiBeCgoqRmFpbGVkIEJ1aWxkICM3OgpPUzogQ0VOVE9TClRhcmdldDog eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MKPT0gQnVpbGQgbGliL2xpYnJ0ZV9pcF9mcmFnCiAg U1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2lwX2ZyYWcuaAogIENDIHJ0ZV9pcHY0X2ZyYWdtZW50 YXRpb24ubwogIENDIHZpcnRpb19uZXQubwovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6IEluIGZ1bmN0aW9uIOKAmGZpbGxf dmVjX2J1Zl9wYWNrZWRfaW5kaXJlY3TigJk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNTI6MTM6IGVycm9yOiBkZXJl ZmVyZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgZGxlbiA9IGRlc2MtPmxlbjsK ICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM1NDozNDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9p bnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgdmhvc3RfaW92YV90b192dmEoZGV2LCB2cSwgZGVz Yy0+YWRkciwgJmRsZW4sIFZIT1NUX0FDQ0VTU19STyk7CiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3Bp bmxvY2suaDoxNTowLAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhm NWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21l bXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVm Lmg6MzgsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM1ODoy NjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBpZiAo dW5saWtlbHkoZGxlbiA8IGRlc2MtPmxlbikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICBe Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBk ZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9f YnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzYzOjQ2OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVy IHRvIGluY29tcGxldGUgdHlwZQogICBpZGVzY3MgPSBhbGxvY19jb3B5X2luZF90YWJsZShkZXYs IHZxLCBkZXNjLT5hZGRyLCBkZXNjLT5sZW4pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzYzOjU4OiBlcnJvcjogZGVyZWZlcmVuY2lu ZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICBpZGVzY3MgPSBhbGxvY19jb3B5X2luZF90 YWJsZShkZXYsIHZxLCBkZXNjLT5hZGRyLCBkZXNjLT5sZW4pOwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjE3 OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogIG5yX2Rl Y3MgPSAgZGVzYy0+bGVuIC8gc2l6ZW9mKHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCk7CiAgICAg ICAgICAgICAgICAgXgogIENDIHJ0ZV9pcHY2X2ZyYWdtZW50YXRpb24ubwovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6Mzcw OjMyOiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBvZiDigJhzaXplb2bigJkgdG8gaW5jb21w bGV0ZSB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogIG5yX2RlY3MgPSAgZGVz Yy0+bGVuIC8gc2l6ZW9mKHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCk7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgyOjM6IGVycm9yOiBpbnZhbGlkIHVzZSBv ZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgKmxlbiAr PSBkZXNjc1tpXS5sZW47CiAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MjoxNjogZXJyb3I6IGRlcmVmZXJlbmNp bmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgKmxlbiArPSBkZXNjc1tpXS5sZW47CiAg ICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIv bGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODM6Mzogd2FybmluZzogaW1wbGljaXQgZGVjbGFy YXRpb24gb2YgZnVuY3Rpb24g4oCYbWFwX29uZV9kZXNj4oCZIFstV2ltcGxpY2l0LWZ1bmN0aW9u LWRlY2xhcmF0aW9uXQogICBpZiAodW5saWtlbHkobWFwX29uZV9kZXNjKGRldiwgdnEsIGJ1Zl92 ZWMsICZ2ZWNfaWQsCiAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MzozOiB3YXJuaW5nOiBuZXN0ZWQgZXh0ZXJu IGRlY2xhcmF0aW9uIG9mIOKAmG1hcF9vbmVfZGVzY+KAmSBbLVduZXN0ZWQtZXh0ZXJuc10KL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3Ry dWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5j bHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5U T1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2lu Y2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNs dWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjM4NDoxMjogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRl IHR5cGUKICAgICAgIGRlc2NzW2ldLmFkZHIsIGRlc2NzW2ldLmxlbiwKICAgICAgICAgICAgXgov dG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2MvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogaW4gZGVm aW5pdGlvbiBvZiBtYWNybyDigJh1bmxpa2VseeKAmQogI2RlZmluZSB1bmxpa2VseSh4KSBfX2J1 aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVk IHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgIGlmICh1bmxpa2VseShtYXBf b25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgXgpJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAgICAg ICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tZW1wb29sLmg6NDQsCiAgICAgICAgICAgICAgICAg ZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAgIGZyb20g L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODQ6Mjc6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBvaW50 ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAgICBkZXNjc1tpXS5hZGRyLCBkZXNjc1tpXS5sZW4s CiAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9w cmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtl bHnigJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzogSW4gZnVu Y3Rpb24g4oCYZmlsbF92ZWNfYnVmX3BhY2tlZOKAmToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOToyOiB3YXJuaW5n OiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhkZXNjX2lzX2F2YWls4oCZIFst V2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogIGlmICh1bmxpa2VseSghZGVzY19pc19h dmFpbCgmZGVzY3NbYXZhaWxfaWR4XSwgd3JhcF9jb3VudGVyKSkpCiAgXgovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5 OjI6IHdhcm5pbmc6IG5lc3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYZGVzY19pc19hdmFp bOKAmSBbLVduZXN0ZWQtZXh0ZXJuc10KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOToyOiBlcnJvcjogaW52YWxpZCB1 c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAogICAg ICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAg ICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAgICAgICAg ICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOTozNjogZXJyb3I6IGRlcmVmZXJl bmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICBpZiAodW5saWtlbHkoIWRlc2NfaXNf YXZhaWwoJmRlc2NzW2F2YWlsX2lkeF0sIHdyYXBfY291bnRlcikpKQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlv bi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAj ZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQu OC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE5OjM6IGVycm9yOiBp bnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTi gJkKICAgKmJ1Zl9pZCA9IGRlc2NzW2F2YWlsX2lkeF0uaW5kZXg7CiAgIF4KL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0 MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQx OToxODogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAg KmJ1Zl9pZCA9IGRlc2NzW2F2YWlsX2lkeF0uaW5kZXg7CiAgICAgICAgICAgICAgICAgIF4KL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjQyMTozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3Ry dWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgIGlmIChkZXNjc1thdmFpbF9pZHhdLmZsYWdzICYg VlJJTkdfREVTQ19GX0lORElSRUNUKSB7CiAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyMToxMjogZXJyb3I6IGRl cmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgaWYgKGRlc2NzW2F2YWls X2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfSU5ESVJFQ1QpIHsKICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9f bmV0LmM6NDIyOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1 Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgIGlmICh1bmxpa2VseShmaWxsX3ZlY19idWZfcGFj a2VkX2luZGlyZWN0KGRldiwgdnEsCiAgICBeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NF TlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv aW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9D RU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj L2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9p bmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToK L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOjQyMzoxNDogZXJyb3I6IGRlcmVmZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBs ZXRlIHR5cGUKICAgICAgICAmZGVzY3NbYXZhaWxfaWR4XSwKICAgICAgICAgICAgICBeCi90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdj Yy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0 aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRp bl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6NDI4OjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlw ZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgICpsZW4gKz0gZGVzY3NbYXZhaWxf aWR4XS5sZW47CiAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIv bGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mjg6MTc6IGVycm9yOiBkZXJlZmVyZW5jaW5nIHBv aW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgICAqbGVuICs9IGRlc2NzW2F2YWlsX2lkeF0ubGVu OwogICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ug b2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICBpZiAo dW5saWtlbHkobWFwX29uZV9kZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICBeCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAog ICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAg ICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAgICAg ICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMToxMzogZXJyb3I6IGRlcmVm ZXJlbmNpbmcgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUKICAgICAgICBkZXNjc1thdmFpbF9p ZHhdLmFkZHIsCiAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGlj dGlvbi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZ CiAjZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMwOjQ6IGVycm9y OiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWTigJkKICAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZl Y19pZCwKICAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlu bG9jay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVt cG9vbC5oOjQ0LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFi MjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21idWYu aDozOCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5OgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMyOjEz OiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZQogICAgICAg IGRlc2NzW2F2YWlsX2lkeF0ubGVuLAogICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4w X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVf YnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBtYWNybyDi gJh1bmxpa2VseeKAmQogI2RlZmluZSB1bmxpa2VseSh4KSBfX2J1aWx0aW5fZXhwZWN0KCEhKHgp LCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9DRU5U T1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5j OjQzNzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZy aW5nX2Rlc2NfcGFja2Vk4oCZCiAgIGlmICgoZGVzY3NbYXZhaWxfaWR4XS5mbGFncyAmIFZSSU5H X0RFU0NfRl9ORVhUKSA9PSAwKQogICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mzc6MTM6IGVycm9yOiBkZXJlZmVy ZW5jaW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlCiAgIGlmICgoZGVzY3NbYXZhaWxfaWR4 XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9ORVhUKSA9PSAwKQogICAgICAgICAgICAgXgogIENDIHJ0 ZV9pcHY0X3JlYXNzZW1ibHkubwogIENDIHJ0ZV9pcHY2X3JlYXNzZW1ibHkubwogIENDIHJ0ZV9p cF9mcmFnX2NvbW1vbi5vCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIv bGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzogSW4gZnVuY3Rpb24g4oCYcnRlX3Zob3N0X2RlcXVl dWVfYnVyc3TigJk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3ZpcnRpb19uZXQuYzoxMzc3Ojc6IHdhcm5pbmc6IHBhc3NpbmcgYXJndW1lbnQg MyBvZiDigJhhbGxvY19jb3B5X2luZF90YWJsZeKAmSBtYWtlcyBpbnRlZ2VyIGZyb20gcG9pbnRl ciB3aXRob3V0IGEgY2FzdCBbZW5hYmxlZCBieSBkZWZhdWx0XQogICAgICAgJnZxLT5kZXNjW2Rl c2NfaW5kZXhlc1tpXV0pOwogICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZXhwZWN0ZWQg 4oCYdWludDY0X3TigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rl c2MgKuKAmQogYWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZpcnRpb19uZXQgKmRldiwgc3Ry dWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCiBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzoxMzc3Ojc6IGVycm9yOiB0b28g ZmV3IGFyZ3VtZW50cyB0byBmdW5jdGlvbiDigJhhbGxvY19jb3B5X2luZF90YWJsZeKAmQogICAg ICAgJnZxLT5kZXNjW2Rlc2NfaW5kZXhlc1tpXV0pOwogICAgICAgXgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTog bm90ZTogZGVjbGFyZWQgaGVyZQogYWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZpcnRpb19u ZXQgKmRldiwgc3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCiBeCgoqRmFpbGVkIEJ1aWxkICM4 OgpPUzogVUIxNjA0ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkCiAg Q0MgcnRlX2lwdjRfcmVhc3NlbWJseS5vCiAgQ0MgcnRlX2lwdjZfcmVhc3NlbWJseS5vCiAgQ0Mg cnRlX2lwX2ZyYWdfY29tbW9uLm8KICBDQyB2aXJ0aW9fbmV0Lm8KL3RtcC9VQjE2MDRfSzQuNC4w X0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0 MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOiBJ biBmdW5jdGlvbiDigJhmaWxsX3ZlY19idWZfcGFja2VkX2luZGlyZWN04oCZOgovdG1wL1VCMTYw NF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9f bmV0LmM6MzUyOjEzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUg dHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICBkbGVuID0gZGVzYy0+bGVuOwog ICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjMyOiBlcnJvcjogaW52YWxpZCBhcHBs aWNhdGlvbiBvZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZOKAmQogIG5yX2RlY3MgPSAgZGVzYy0+bGVuIC8gc2l6ZW9mKHN0cnVjdCB2 cmluZ19kZXNjX3BhY2tlZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVk LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92 aXJ0aW9fbmV0LmM6MzgyOjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDi gJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgKmxlbiArPSBkZXNjc1tpXS5sZW47CiAg IF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlubG9j ay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVf bWVtcG9vbC5oOjQ0LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUv cnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5Ogov dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hh cmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6MzgzOjE2OiB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBm dW5jdGlvbiDigJhtYXBfb25lX2Rlc2PigJkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRp b25dCiAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19p ZCwKICAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVk aWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtlbHni gJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODM6 Mzogd2FybmluZzogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhtYXBfb25lX2Rlc2Pi gJkgWy1XbmVzdGVkLWV4dGVybnNdCiAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2 cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6IGVycm9yOiBp bnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTi gJkKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj LXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVk IHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCkluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mt c2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAogICAgICAgICAgICAg ICAgIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAg ICAgICAgICBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9tYnVmLmg6MzgsCiAgICAgICAg ICAgICAgICAgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOiBJbiBmdW5j dGlvbiDigJhmaWxsX3ZlY19idWZfcGFja2Vk4oCZOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjE2OiB3 YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhkZXNjX2lzX2F2YWls 4oCZIFstV2ltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogIGlmICh1bmxpa2VseSghZGVz Y19pc19hdmFpbCgmZGVzY3NbYXZhaWxfaWR4XSwgd3JhcF9jb3VudGVyKSkpCiAgICAgICAgICAg ICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQx OiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVu bGlrZWx5KHgpIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjI6IHdhcm5pbmc6IG5l c3RlZCBleHRlcm4gZGVjbGFyYXRpb24gb2Yg4oCYZGVzY19pc19hdmFpbOKAmSBbLVduZXN0ZWQt ZXh0ZXJuc10KICBpZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwoJmRlc2NzW2F2YWlsX2lkeF0s IHdyYXBfY291bnRlcikpKQogIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOToyOiBlcnJvcjogaW52YWxp ZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCi90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFy ZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3ZpcnRpb19uZXQuYzo0MTk6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBl IOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICAqYnVmX2lkID0gZGVzY3NbYXZhaWxf aWR4XS5pbmRleDsKICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDIxOjM6IGVycm9yOiBpbnZhbGlkIHVz ZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgaWYg KGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfSU5ESVJFQ1QpIHsKICAgXgov dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hh cmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6NDIyOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlw ZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgIGlmICh1bmxpa2VseShmaWxsX3Zl Y19idWZfcGFja2VkX2luZGlyZWN0KGRldiwgdnEsCiAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mjg6 NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19k ZXNjX3BhY2tlZOKAmQogICAgKmxlbiArPSBkZXNjc1thdmFpbF9pZHhdLmxlbjsKICAgIF4KL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg 4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICBpZiAodW5saWtlbHkobWFwX29uZV9k ZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MzA6 NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19k ZXNjX3BhY2tlZOKAmQovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDM3OjM6IGVycm9yOiBpbnZhbGlkIHVzZSBv ZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgaWYgKChk ZXNjc1thdmFpbF9pZHhdLmZsYWdzICYgVlJJTkdfREVTQ19GX05FWFQpID09IDApCiAgIF4KL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhydGVfdmhvc3RfZGVxdWV1ZV9idXJzdOKAmToK L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNo YXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3QvdmlydGlvX25ldC5jOjEzNzc6Nzogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAzIG9mIOKA mGFsbG9jX2NvcHlfaW5kX3RhYmxl4oCZIG1ha2VzIGludGVnZXIgZnJvbSBwb2ludGVyIHdpdGhv dXQgYSBjYXN0IFstV2ludC1jb252ZXJzaW9uXQogICAgICAgJnZxLT5kZXNjW2Rlc2NfaW5kZXhl c1tpXV0pOwogICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZXhwZWN0ZWQg4oCY dWludDY0X3Qge2FrYSBsb25nIHVuc2lnbmVkIGludH3igJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5 cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2MgKuKAmQogYWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0 IHZpcnRpb19uZXQgKmRldiwgc3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCiBeCi90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRp b19uZXQuYzoxMzc2OjEzOiBlcnJvcjogdG9vIGZldyBhcmd1bWVudHMgdG8gZnVuY3Rpb24g4oCY YWxsb2NfY29weV9pbmRfdGFibGXigJkKICAgICBpZGVzYyA9IGFsbG9jX2NvcHlfaW5kX3RhYmxl KGRldiwgdnEsCiAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MToxOiBub3RlOiBkZWNs YXJlZCBoZXJlCiBhbGxvY19jb3B5X2luZF90YWJsZShzdHJ1Y3QgdmlydGlvX25ldCAqZGV2LCBz dHJ1Y3Qgdmhvc3RfdmlydHF1ZXVlICp2cSwKIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4w L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhm NWFiMjE3NmQxNS9kcGRrL21rL2ludGVybmFsL3J0ZS5jb21waWxlLXByZS5tazoxMTQ6IHJlY2lw ZSBmb3IgdGFyZ2V0ICd2aXJ0aW9fbmV0Lm8nIGZhaWxlZAptYWtlWzVdOiAqKiogW3ZpcnRpb19u ZXQub10gRXJyb3IgMQovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bWsvcnRlLnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2xpYnJ0ZV92aG9zdCcgZmFp bGVkCm1ha2VbNF06ICoqKiBbbGlicnRlX3Zob3N0XSBFcnJvciAyCm1ha2VbNF06ICoqKiBXYWl0 aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uCiAgQ0MgaXBfZnJhZ19pbnRlcm5hbC5vCiAgTEQg bGlicnRlX2lwX2ZyYWcuc28uMS4xCiAgSU5TVEFMTC1MSUIgbGlicnRlX2lwX2ZyYWcuc28uMS4x Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1z aGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc2RrYnVp bGQubWs6NDk6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWInIGZhaWxlZAptYWtlWzNdOiAqKiogW2xp Yl0gRXJyb3IgMgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsv cnRlLnNka3Jvb3QubWs6MTAwOiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKbWFrZVsy XTogKioqIFthbGxdIEVycm9yIDIKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjU3OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2lu c3RhbGwnIGZhaWxlZAptYWtlWzFdOiAqKiogW3ByZV9pbnN0YWxsXSBFcnJvciAyCi90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc2Rrcm9vdC5tazo3OTog cmVjaXBlIGZvciB0YXJnZXQgJ2luc3RhbGwnIGZhaWxlZAptYWtlOiAqKiogW2luc3RhbGxdIEVy cm9yIDIKCipGYWlsZWQgQnVpbGQgIzk6Ck9TOiBVQjE2MDQKVGFyZ2V0OiBpNjg2LW5hdGl2ZS1s aW51eGFwcC1nY2MKICBDQyBzb2NrZXQubwogIENDIHJ0ZV9ldmVudF9jcnlwdG9fYWRhcHRlci5v CiAgQ0Mgdmhvc3QubwogIENDIHZob3N0X3VzZXIubwovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdF91c2VyLmM6IEluIGZ1bmN0aW9uIOKAmHRy YW5zbGF0ZV9yaW5nX2FkZHJlc3Nlc+KAmToKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL2k2 ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jOjQ3MzoyMTogd2FybmluZzogY2FzdCB0 byBwb2ludGVyIGZyb20gaW50ZWdlciBvZiBkaWZmZXJlbnQgc2l6ZSBbLVdpbnQtdG8tcG9pbnRl ci1jYXN0XQogICB2cS0+ZGVzY19wYWNrZWQgPSAoc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkICop IHJpbmdfYWRkcl90b192dmEKICAgICAgICAgICAgICAgICAgICAgXgogIEFSIGxpYnJ0ZV9ldmVu dGRldi5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2V2ZW50ZGV2LmEKICBDQyB2aXJ0aW9fbmV0Lm8K L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOiBJbiBmdW5jdGlvbiDigJhmaWxsX3ZlY19idWZfcGFja2VkX2luZGlyZWN04oCZOgov dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9f bmV0LmM6MzUyOjEzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGluY29tcGxldGUg dHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICBkbGVuID0gZGVzYy0+bGVuOwog ICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjMyOiBlcnJvcjogaW52YWxpZCBhcHBsaWNhdGlvbiBv ZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3Bh Y2tlZOKAmQogIG5yX2RlY3MgPSAgZGVzYy0+bGVuIC8gc2l6ZW9mKHN0cnVjdCB2cmluZ19kZXNj X3BhY2tlZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgyOjM6 IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWTigJkKICAgKmxlbiArPSBkZXNjc1tpXS5sZW47CiAgIF4KSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51eGFwcC1n Y2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9pNjg2LW5hdGl2ZS1saW51 eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2suaDoxNTowLAogICAgICAgICAgICAgICAgIGZy b20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxpbnV4YXBw LWdjYy9pbmNsdWRlL3J0ZV9tZW1wb29sLmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2lu Y2x1ZGUvcnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvVUIxNjA0X0s0 LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5OgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0 LmM6MzgzOjE2OiB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJht YXBfb25lX2Rlc2PigJkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgIGlmICh1 bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgICAgICAg ICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxp bnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBp biBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5lIHVubGlrZWx5KHgp IF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6IHdhcm5pbmc6IG5lc3RlZCBleHRlcm4gZGVjbGFy YXRpb24gb2Yg4oCYbWFwX29uZV9kZXNj4oCZIFstV25lc3RlZC1leHRlcm5zXQogICBpZiAodW5s aWtlbHkobWFwX29uZV9kZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgIF4KL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5j OjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZy aW5nX2Rlc2NfcGFja2Vk4oCZCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIv bGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODM6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVu ZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBw LWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2ODYtbmF0aXZlLWxp bnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9zcGlubG9jay5oOjE1OjAsCiAgICAgICAgICAgICAgICAg ZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2Nj LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhh cHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9tIC90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2Mv aW5jbHVkZS9ydGVfbWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19u ZXQuYzogSW4gZnVuY3Rpb24g4oCYZmlsbF92ZWNfYnVmX3BhY2tlZOKAmToKL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQwOTox Njogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYZGVzY19pc19h dmFpbOKAmSBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICBpZiAodW5saWtlbHko IWRlc2NfaXNfYXZhaWwoJmRlc2NzW2F2YWlsX2lkeF0sIHdyYXBfY291bnRlcikpKQogICAgICAg ICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhh cHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6 IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHko eCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1s aW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MDk6Mjogd2FybmluZzogbmVzdGVkIGV4dGVybiBkZWNs YXJhdGlvbiBvZiDigJhkZXNjX2lzX2F2YWls4oCZIFstV25lc3RlZC1leHRlcm5zXQogIGlmICh1 bmxpa2VseSghZGVzY19pc19hdmFpbCgmZGVzY3NbYXZhaWxfaWR4XSwgd3JhcF9jb3VudGVyKSkp CiAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2Nj LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92 aXJ0aW9fbmV0LmM6NDA5OjI6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDi gJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4w L2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQxOTozOiBlcnJvcjogaW52YWxp ZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAg ICpidWZfaWQgPSBkZXNjc1thdmFpbF9pZHhdLmluZGV4OwogICBeCi90bXAvVUIxNjA0X0s0LjQu MF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MjE6MzogZXJy b3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3Bh Y2tlZOKAmQogICBpZiAoZGVzY3NbYXZhaWxfaWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9JTkRJ UkVDVCkgewogICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51 eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRl X3Zob3N0L3ZpcnRpb19uZXQuYzo0MjI6NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5l ZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICAgaWYgKHVubGlrZWx5KGZp bGxfdmVjX2J1Zl9wYWNrZWRfaW5kaXJlY3QoZGV2LCB2cSwKICAgIF4KL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWEx YjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQyODo0OiBl cnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2Nf cGFja2Vk4oCZCiAgICAqbGVuICs9IGRlc2NzW2F2YWlsX2lkeF0ubGVuOwogICAgXgovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6 NDMwOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJp bmdfZGVzY19wYWNrZWTigJkKICAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwg YnVmX3ZlYywgJnZlY19pZCwKICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL2k2ODYt bmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ug b2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCi90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0 Mzc6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZOKAmQogICBpZiAoKGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19E RVNDX0ZfTkVYVCkgPT0gMCkKICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1u YXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6IEluIGZ1bmN0aW9uIOKAmHJ0ZV92aG9zdF9k ZXF1ZXVlX2J1cnN04oCZOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MTM3Nzo3OiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50 IDMgb2Yg4oCYYWxsb2NfY29weV9pbmRfdGFibGXigJkgbWFrZXMgaW50ZWdlciBmcm9tIHBvaW50 ZXIgd2l0aG91dCBhIGNhc3QgWy1XaW50LWNvbnZlcnNpb25dCiAgICAgICAmdnEtPmRlc2NbZGVz Y19pbmRleGVzW2ldXSk7CiAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2 LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MToxOiBub3RlOiBleHBlY3RlZCDigJh1 aW50NjRfdCB7YWthIGxvbmcgbG9uZyB1bnNpZ25lZCBpbnR94oCZIGJ1dCBhcmd1bWVudCBpcyBv ZiB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjICrigJkKIGFsbG9jX2NvcHlfaW5kX3RhYmxlKHN0 cnVjdCB2aXJ0aW9fbmV0ICpkZXYsIHN0cnVjdCB2aG9zdF92aXJ0cXVldWUgKnZxLAogXgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0 LmM6MTM3NjoxMzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9uIOKAmGFsbG9j X2NvcHlfaW5kX3RhYmxl4oCZCiAgICAgaWRlc2MgPSBhbGxvY19jb3B5X2luZF90YWJsZShkZXYs IHZxLAogICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRp dmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZGVjbGFyZWQgaGVyZQogYWxs b2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZpcnRpb19uZXQgKmRldiwgc3RydWN0IHZob3N0X3Zp cnRxdWV1ZSAqdnEsCiBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1s aW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9pbnRl cm5hbC9ydGUuY29tcGlsZS1wcmUubWs6MTE0OiByZWNpcGUgZm9yIHRhcmdldCAndmlydGlvX25l dC5vJyBmYWlsZWQKbWFrZVs1XTogKioqIFt2aXJ0aW9fbmV0Lm9dIEVycm9yIDEKbWFrZVs1XTog KioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KPT0gQnVpbGQgbGliL2xpYnJ0ZV9p cF9mcmFnCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2lwX2ZyYWcuaAogIENDIHJ0ZV9pcHY0 X2ZyYWdtZW50YXRpb24ubwovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUt bGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRl LnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2xpYnJ0ZV92aG9zdCcgZmFpbGVkCm1h a2VbNF06ICoqKiBbbGlicnRlX3Zob3N0XSBFcnJvciAyCm1ha2VbNF06ICoqKiBXYWl0aW5nIGZv ciB1bmZpbmlzaGVkIGpvYnMuLi4uCiAgQ0MgcnRlX2lwdjZfZnJhZ21lbnRhdGlvbi5vCiAgQ0Mg cnRlX2lwdjRfcmVhc3NlbWJseS5vCiAgQ0MgcnRlX2lwdjZfcmVhc3NlbWJseS5vCiAgQ0MgcnRl X2lwX2ZyYWdfY29tbW9uLm8KICBDQyBpcF9mcmFnX2ludGVybmFsLm8KICBBUiBsaWJydGVfaXBf ZnJhZy5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2lwX2ZyYWcuYQovdG1wL1VCMTYwNF9LNC40LjBf R0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka2J1aWxkLm1rOjQ5OiByZWNpcGUgZm9yIHRhcmdldCAn bGliJyBmYWlsZWQKbWFrZVszXTogKioqIFtsaWJdIEVycm9yIDIKL3RtcC9VQjE2MDRfSzQuNC4w X0dDQzUuNC4wL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhm NWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtyb290Lm1rOjEwMDogcmVjaXBlIGZvciB0YXJnZXQg J2FsbCcgZmFpbGVkCm1ha2VbMl06ICoqKiBbYWxsXSBFcnJvciAyCi90bXAvVUIxNjA0X0s0LjQu MF9HQ0M1LjQuMC9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc2RraW5zdGFsbC5tazo1NzogcmVjaXBlIGZvciB0YXJn ZXQgJ3ByZV9pbnN0YWxsJyBmYWlsZWQKbWFrZVsxXTogKioqIFtwcmVfaW5zdGFsbF0gRXJyb3Ig MgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka3Jvb3QubWs6Nzk6 IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQKbWFrZTogKioqIFtpbnN0YWxsXSBF cnJvciAyCgoqRmFpbGVkIEJ1aWxkICMxMDoKT1M6IEZDMjUKVGFyZ2V0OiB4ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy1kZWJ1ZwogIENDIHZob3N0X3VzZXIubwogIEFSIGxpYnJ0ZV9ldmVudGRl di5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2V2ZW50ZGV2LmEKICBDQyB2aXJ0aW9fbmV0Lm8KL3Rt cC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhmaWxsX3ZlY19idWZfcGFja2VkX2luZGlyZWN04oCZ OgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRl YnVnLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6MzUyOjEzOiBlcnJvcjogZGVyZWZlcmVuY2luZyBwb2ludGVyIHRvIGlu Y29tcGxldGUgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICBkbGVuID0gZGVz Yy0+bGVuOwogICAgICAgICAgICAgXn4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM3MDozMjogZXJyb3I6IGludmFs aWQgYXBwbGljYXRpb24gb2Yg4oCYc2l6ZW9m4oCZIHRvIGluY29tcGxldGUgdHlwZSDigJhzdHJ1 Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICBucl9kZWNzID0gIGRlc2MtPmxlbiAvIHNpemVvZihz dHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IF5+fn5+fgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLWRlYnVnLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgyOjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmlu ZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgKmxlbiArPSBkZXNjc1tp XS5sZW47CiAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNV9LNC44LjZfR0NDNi4z LjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9z cGlubG9jay5oOjE1OjAsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0ZDMjVfSzQuOC42X0dD QzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVnLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9y dGVfbWVtcG9vbC5oOjQ0LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9GQzI1X0s0LjguNl9H Q0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUv cnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvRkMyNV9LNC44LjZfR0ND Ni4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFh MWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo5OgovdG1w L0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVnLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6MzgzOjE2OiB3YXJuaW5nOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlv biDigJhtYXBfb25lX2Rlc2PigJkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAg IGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAg ICAgICAgICAgICAgIF4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6 Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZp bmUgdW5saWtlbHkoeCkgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODM6Mzogd2FybmluZzog bmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhtYXBfb25lX2Rlc2PigJkgWy1XbmVzdGVk LWV4dGVybnNdCiAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywg JnZlY19pZCwKICAgXn4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2Yg dW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCi90bXAvRkMyNV9L NC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQu YzozODM6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2 cmluZ19kZXNjX3BhY2tlZOKAmQpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI1X0s0Ljgu Nl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0 MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1 ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvRkMyNV9L NC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9p bmNsdWRlL3J0ZV9tZW1wb29sLmg6NDQsCiAgICAgICAgICAgICAgICAgZnJvbSAvdG1wL0ZDMjVf SzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVnLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mv aW5jbHVkZS9ydGVfbWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9GQzI1X0s0 LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5j Ojk6Ci90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mt ZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zo b3N0L3ZpcnRpb19uZXQuYzogSW4gZnVuY3Rpb24g4oCYZmlsbF92ZWNfYnVmX3BhY2tlZOKAmToK L3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1 Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOjQwOToxNjogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVu Y3Rpb24g4oCYZGVzY19pc19hdmFpbOKAmSBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlv bl0KICBpZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwoJmRlc2NzW2F2YWlsX2lkeF0sIHdyYXBf Y291bnRlcikpKQogICAgICAgICAgICAgICAgXgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVnLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfYnJhbmNo X3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBtYWNybyDigJh1bmxp a2VseeKAmQogI2RlZmluZSB1bmxpa2VseSh4KSBfX2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9GQzI1X0s0Ljgu Nl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0 MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQw OToyOiB3YXJuaW5nOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0aW9uIG9mIOKAmGRlc2NfaXNfYXZh aWzigJkgWy1XbmVzdGVkLWV4dGVybnNdCiAgaWYgKHVubGlrZWx5KCFkZXNjX2lzX2F2YWlsKCZk ZXNjc1thdmFpbF9pZHhdLCB3cmFwX2NvdW50ZXIpKSkKICBefgovdG1wL0ZDMjVfSzQuOC42X0dD QzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVnLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjI6 IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWTigJkKL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQxOTozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5k ZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICpidWZfaWQgPSBk ZXNjc1thdmFpbF9pZHhdLmluZGV4OwogICBeCi90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MjE6MzogZXJyb3I6IGlu dmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKA mQogICBpZiAoZGVzY3NbYXZhaWxfaWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9JTkRJUkVDVCkg ewogICBefgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLWRlYnVnLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDIyOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmlu ZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgIGlmICh1bmxpa2VseShm aWxsX3ZlY19idWZfcGFja2VkX2luZGlyZWN0KGRldiwgdnEsCiAgICBefgovdG1wL0ZDMjVfSzQu OC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVnLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6 NDI4OjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJp bmdfZGVzY19wYWNrZWTigJkKICAgICpsZW4gKz0gZGVzY3NbYXZhaWxfaWR4XS5sZW47CiAgICBe Ci90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVi dWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3ZpcnRpb19uZXQuYzo0MzA6NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBl IOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICAgaWYgKHVubGlrZWx5KG1hcF9vbmVf ZGVzYyhkZXYsIHZxLCBidWZfdmVjLCAmdmVjX2lkLAogICAgXn4KL3RtcC9GQzI1X0s0LjguNl9H Q0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMDo0 OiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rl c2NfcGFja2Vk4oCZCi90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIv bGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mzc6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVu ZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICBpZiAoKGRlc2Nz W2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfTkVYVCkgPT0gMCkKICAgXn4KL3RtcC9G QzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOiBJbiBmdW5jdGlvbiDigJhydGVfdmhvc3RfZGVxdWV1ZV9idXJzdOKAmToKL3RtcC9G QzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjEzNzc6Nzogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAzIG9mIOKAmGFsbG9jX2Nv cHlfaW5kX3RhYmxl4oCZIG1ha2VzIGludGVnZXIgZnJvbSBwb2ludGVyIHdpdGhvdXQgYSBjYXN0 IFstV2ludC1jb252ZXJzaW9uXQogICAgICAgJnZxLT5kZXNjW2Rlc2NfaW5kZXhlc1tpXV0pOwog ICAgICAgXgovdG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLWRlYnVnLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0 ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE6MTogbm90ZTogZXhwZWN0ZWQg4oCYdWludDY0X3Qge2Fr YSBsb25nIHVuc2lnbmVkIGludH3igJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYc3RydWN0 IHZyaW5nX2Rlc2MgKuKAmQogYWxsb2NfY29weV9pbmRfdGFibGUoc3RydWN0IHZpcnRpb19uZXQg KmRldiwgc3RydWN0IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCiBefn5+fn5+fn5+fn5+fn5+fn5+fgov dG1wL0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVn LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92 aXJ0aW9fbmV0LmM6MTM3NjoxMzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9u IOKAmGFsbG9jX2NvcHlfaW5kX3RhYmxl4oCZCiAgICAgaWRlc2MgPSBhbGxvY19jb3B5X2luZF90 YWJsZShkZXYsIHZxLAogICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KL3RtcC9GQzI1 X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1kZWJ1Zy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjQxOjE6IG5vdGU6IGRlY2xhcmVkIGhlcmUKIGFsbG9jX2NvcHlfaW5kX3RhYmxlKHN0cnVj dCB2aXJ0aW9fbmV0ICpkZXYsIHN0cnVjdCB2aG9zdF92aXJ0cXVldWUgKnZxLAogXn5+fn5+fn5+ fn5+fn5+fn5+fn4KL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWdjYy1kZWJ1Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL2lu dGVybmFsL3J0ZS5jb21waWxlLXByZS5tazoxMTQ6IHJlY2lwZSBmb3IgdGFyZ2V0ICd2aXJ0aW9f bmV0Lm8nIGZhaWxlZAptYWtlWzVdOiAqKiogW3ZpcnRpb19uZXQub10gRXJyb3IgMQptYWtlWzVd OiAqKiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLgo9PSBCdWlsZCBsaWIvbGlicnRl X2lwX2ZyYWcKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfaXBfZnJhZy5oCiAgQ0MgcnRlX2lw djRfZnJhZ21lbnRhdGlvbi5vCi90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9tay9ydGUuc3ViZGlyLm1rOjM1OiByZWNpcGUgZm9yIHRhcmdldCAnbGlicnRlX3Zob3N0JyBm YWlsZWQKbWFrZVs0XTogKioqIFtsaWJydGVfdmhvc3RdIEVycm9yIDIKbWFrZVs0XTogKioqIFdh aXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KICBDQyBydGVfaXB2Nl9mcmFnbWVudGF0aW9u Lm8KICBDQyBydGVfaXB2NF9yZWFzc2VtYmx5Lm8KICBDQyBydGVfaXB2Nl9yZWFzc2VtYmx5Lm8K ICBDQyBydGVfaXBfZnJhZ19jb21tb24ubwogIENDIGlwX2ZyYWdfaW50ZXJuYWwubwogIEFSIGxp YnJ0ZV9pcF9mcmFnLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfaXBfZnJhZy5hCi90bXAvRkMyNV9L NC44LjZfR0NDNi4zLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc2RrYnVpbGQubWs6NDk6IHJlY2lw ZSBmb3IgdGFyZ2V0ICdsaWInIGZhaWxlZAptYWtlWzNdOiAqKiogW2xpYl0gRXJyb3IgMgovdG1w L0ZDMjVfSzQuOC42X0dDQzYuMy4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLWRlYnVnLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka3Jvb3QubWs6MTAw OiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKbWFrZVsyXTogKioqIFthbGxdIEVycm9y IDIKL3RtcC9GQzI1X0s0LjguNl9HQ0M2LjMuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1k ZWJ1Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtpbnN0 YWxsLm1rOjU3OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxlZAptYWtlWzFd OiAqKiogW3ByZV9pbnN0YWxsXSBFcnJvciAyCi90bXAvRkMyNV9LNC44LjZfR0NDNi4zLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MtZGVidWcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9tay9ydGUuc2Rrcm9vdC5tazo3OTogcmVjaXBlIGZvciB0YXJnZXQgJ2luc3Rh bGwnIGZhaWxlZAptYWtlOiAqKiogW2luc3RhbGxdIEVycm9yIDIKCipGYWlsZWQgQnVpbGQgIzEx OgpPUzogRkMyNApUYXJnZXQ6IGk2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYwogIENDIHJ0ZV9pcHY0 X3JlYXNzZW1ibHkubwogIENDIHJ0ZV9pcHY2X3JlYXNzZW1ibHkubwogIENDIHZob3N0X3VzZXIu bwogIENDIHJ0ZV9pcF9mcmFnX2NvbW1vbi5vCi90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdF91c2VyLmM6IEluIGZ1bmN0aW9uIOKAmHRyYW5zbGF0 ZV9yaW5nX2FkZHJlc3Nlc+KAmToKL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2 ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIv bGlicnRlX3Zob3N0L3Zob3N0X3VzZXIuYzo0NzM6MjE6IHdhcm5pbmc6IGNhc3QgdG8gcG9pbnRl ciBmcm9tIGludGVnZXIgb2YgZGlmZmVyZW50IHNpemUgWy1XaW50LXRvLXBvaW50ZXItY2FzdF0K ICAgdnEtPmRlc2NfcGFja2VkID0gKHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAqKSByaW5nX2Fk ZHJfdG9fdnZhCiAgICAgICAgICAgICAgICAgICAgIF4KICBDQyBpcF9mcmFnX2ludGVybmFsLm8K ICBDQyB2aXJ0aW9fbmV0Lm8KICBBUiBsaWJydGVfaXBfZnJhZy5hCiAgSU5TVEFMTC1MSUIgbGli cnRlX2lwX2ZyYWcuYQogIENDIHZkcGEubwovdG1wL0ZDMjRfSzQuNS41X0dDQzYuMS4xL2k2ODYt bmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhmaWxsX3ZlY19i dWZfcGFja2VkX2luZGlyZWN04oCZOgovdG1wL0ZDMjRfSzQuNS41X0dDQzYuMS4xL2k2ODYtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM1MjoxMzogZXJyb3I6IGRlcmVmZXJlbmNpbmcg cG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZ CiAgZGxlbiA9IGRlc2MtPmxlbjsKICAgICAgICAgICAgIF5+Ci90bXAvRkMyNF9LNC41LjVfR0ND Ni4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjMyOiBlcnJvcjog aW52YWxpZCBhcHBsaWNhdGlvbiBvZiDigJhzaXplb2bigJkgdG8gaW5jb21wbGV0ZSB0eXBlIOKA mHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogIG5yX2RlY3MgPSAgZGVzYy0+bGVuIC8gc2l6 ZW9mKHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+Ci90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhh cHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92 aG9zdC92aXJ0aW9fbmV0LmM6MzgyOjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQg dHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgKmxlbiArPSBkZXNjc1tpXS5s ZW47CiAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEv aTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6 MCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1u YXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv aTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAg ICAgICAgICAgICBmcm9tIC90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRp dmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAgICBm cm9tIC90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6OToKL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFw cC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zo b3N0L3ZpcnRpb19uZXQuYzozODM6MTY6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9m IGZ1bmN0aW9uIOKAmG1hcF9vbmVfZGVzY+KAmSBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJh dGlvbl0KICAgaWYgKHVubGlrZWx5KG1hcF9vbmVfZGVzYyhkZXYsIHZxLCBidWZfdmVjLCAmdmVj X2lkLAogICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuNS41X0dDQzYuMS4xL2k2ODYtbmF0 aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2k2 ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4 OjQxOiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx54oCZCiAjZGVmaW5l IHVubGlrZWx5KHgpIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuNS41X0dDQzYuMS4xL2k2ODYt bmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MzozOiB3YXJuaW5nOiBuZXN0ZWQgZXh0 ZXJuIGRlY2xhcmF0aW9uIG9mIOKAmG1hcF9vbmVfZGVzY+KAmSBbLVduZXN0ZWQtZXh0ZXJuc10K ICAgaWYgKHVubGlrZWx5KG1hcF9vbmVfZGVzYyhkZXYsIHZxLCBidWZfdmVjLCAmdmVjX2lkLAog ICBefgovdG1wL0ZDMjRfSzQuNS41X0dDQzYuMS4xL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmly dGlvX25ldC5jOjM4MzozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCY c3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCi90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgzOjM6IGVycm9yOiBpbnZhbGlkIHVz ZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGlu dXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRp dmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAg ICAgICBmcm9tIC90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAt Z2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGlu dXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAgICAgICAgICBmcm9t IC90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2Nj L2luY2x1ZGUvcnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAgICBmcm9tIC90bXAvRkMyNF9L NC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3Rt cC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQu YzogSW4gZnVuY3Rpb24g4oCYZmlsbF92ZWNfYnVmX3BhY2tlZOKAmToKL3RtcC9GQzI0X0s0LjUu NV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MDk6MTY6IHdh cm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uIOKAmGRlc2NfaXNfYXZhaWzi gJkgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiAgaWYgKHVubGlrZWx5KCFkZXNj X2lzX2F2YWlsKCZkZXNjc1thdmFpbF9pZHhdLCB3cmFwX2NvdW50ZXIpKSkKICAgICAgICAgICAg ICAgIF4KL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9pNjg2LW5hdGl2ZS1saW51eGFw cC1nY2MvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogaW4gZGVm aW5pdGlvbiBvZiBtYWNybyDigJh1bmxpa2VseeKAmQogI2RlZmluZSB1bmxpa2VseSh4KSBfX2J1 aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF4KL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1n Y2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0 L3ZpcnRpb19uZXQuYzo0MDk6Mjogd2FybmluZzogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBv ZiDigJhkZXNjX2lzX2F2YWls4oCZIFstV25lc3RlZC1leHRlcm5zXQogIGlmICh1bmxpa2VseSgh ZGVzY19pc19hdmFpbCgmZGVzY3NbYXZhaWxfaWR4XSwgd3JhcF9jb3VudGVyKSkpCiAgXn4KL3Rt cC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQu Yzo0MDk6MjogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2 cmluZ19kZXNjX3BhY2tlZOKAmQovdG1wL0ZDMjRfSzQuNS41X0dDQzYuMS4xL2k2ODYtbmF0aXZl LWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQxOTozOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5k ZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgICpidWZfaWQgPSBk ZXNjc1thdmFpbF9pZHhdLmluZGV4OwogICBeCi90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDIxOjM6IGVycm9yOiBpbnZhbGlkIHVz ZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgaWYg KGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfSU5ESVJFQ1QpIHsKICAgXn4K L3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFm OGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19u ZXQuYzo0MjI6NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVj dCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICAgaWYgKHVubGlrZWx5KGZpbGxfdmVjX2J1Zl9wYWNr ZWRfaW5kaXJlY3QoZGV2LCB2cSwKICAgIF5+Ci90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDI4OjQ6IGVycm9yOiBpbnZhbGlkIHVz ZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgICps ZW4gKz0gZGVzY3NbYXZhaWxfaWR4XS5sZW47CiAgICBeCi90bXAvRkMyNF9LNC41LjVfR0NDNi4x LjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMwOjQ6IGVycm9yOiBpbnZh bGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkK ICAgIGlmICh1bmxpa2VseShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwK ICAgIF5+Ci90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2Nj LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92 aXJ0aW9fbmV0LmM6NDMwOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDi gJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9p Njg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mzc6MzogZXJyb3I6IGludmFsaWQg dXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICBp ZiAoKGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfTkVYVCkgPT0gMCkKICAg Xn4KL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRp b19uZXQuYzogSW4gZnVuY3Rpb24g4oCYcnRlX3Zob3N0X2RlcXVldWVfYnVyc3TigJk6Ci90bXAv RkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6 MTM3Nzo3OiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDMgb2Yg4oCYYWxsb2NfY29weV9pbmRf dGFibGXigJkgbWFrZXMgaW50ZWdlciBmcm9tIHBvaW50ZXIgd2l0aG91dCBhIGNhc3QgWy1XaW50 LWNvbnZlcnNpb25dCiAgICAgICAmdnEtPmRlc2NbZGVzY19pbmRleGVzW2ldXSk7CiAgICAgICBe Ci90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9f bmV0LmM6NDE6MTogbm90ZTogZXhwZWN0ZWQg4oCYdWludDY0X3Qge2FrYSBsb25nIGxvbmcgdW5z aWduZWQgaW50feKAmSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVz YyAq4oCZCiBhbGxvY19jb3B5X2luZF90YWJsZShzdHJ1Y3QgdmlydGlvX25ldCAqZGV2LCBzdHJ1 Y3Qgdmhvc3RfdmlydHF1ZXVlICp2cSwKIF5+fn5+fn5+fn5+fn5+fn5+fn5+Ci90bXAvRkMyNF9L NC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MTM3Njox MzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9uIOKAmGFsbG9jX2NvcHlfaW5k X3RhYmxl4oCZCiAgICAgaWRlc2MgPSBhbGxvY19jb3B5X2luZF90YWJsZShkZXYsIHZxLAogICAg ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4KL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9p Njg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MToxOiBub3RlOiBkZWNsYXJlZCBo ZXJlCiBhbGxvY19jb3B5X2luZF90YWJsZShzdHJ1Y3QgdmlydGlvX25ldCAqZGV2LCBzdHJ1Y3Qg dmhvc3RfdmlydHF1ZXVlICp2cSwKIF5+fn5+fn5+fn5+fn5+fn5+fn5+Ci90bXAvRkMyNF9LNC41 LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbWsvaW50ZXJuYWwvcnRlLmNvbXBpbGUtcHJlLm1rOjExNDogcmVj aXBlIGZvciB0YXJnZXQgJ3ZpcnRpb19uZXQubycgZmFpbGVkCm1ha2VbNV06ICoqKiBbdmlydGlv X25ldC5vXSBFcnJvciAxCm1ha2VbNV06ICoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMu Li4uCj09IEJ1aWxkIGxpYi9saWJydGVfZ3JvCi90bXAvRkMyNF9LNC41LjVfR0NDNi4xLjEvaTY4 Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsvbWsvcnRlLnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJnZXQgJ2xpYnJ0ZV92aG9zdCcg ZmFpbGVkCm1ha2VbNF06ICoqKiBbbGlicnRlX3Zob3N0XSBFcnJvciAyCm1ha2VbNF06ICoqKiBX YWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRl X2dyby5oCiAgQ0MgcnRlX2dyby5vCiAgQ0MgZ3JvX3RjcDQubwogIENDIGdyb192eGxhbl90Y3A0 Lm8KICBBUiBsaWJydGVfZ3JvLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfZ3JvLmEKL3RtcC9GQzI0 X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc2RrYnVpbGQubWs6NDk6IHJlY2lwZSBmb3Ig dGFyZ2V0ICdsaWInIGZhaWxlZAptYWtlWzNdOiAqKiogW2xpYl0gRXJyb3IgMgovdG1wL0ZDMjRf SzQuNS41X0dDQzYuMS4xL2k2ODYtbmF0aXZlLWxpbnV4YXBwLWdjYy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtyb290Lm1rOjEwMDogcmVjaXBlIGZvciB0 YXJnZXQgJ2FsbCcgZmFpbGVkCm1ha2VbMl06ICoqKiBbYWxsXSBFcnJvciAyCi90bXAvRkMyNF9L NC41LjVfR0NDNi4xLjEvaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka2luc3RhbGwubWs6NTc6IHJlY2lwZSBmb3Ig dGFyZ2V0ICdwcmVfaW5zdGFsbCcgZmFpbGVkCm1ha2VbMV06ICoqKiBbcHJlX2luc3RhbGxdIEVy cm9yIDIKL3RtcC9GQzI0X0s0LjUuNV9HQ0M2LjEuMS9pNjg2LW5hdGl2ZS1saW51eGFwcC1nY2Mv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9ydGUuc2Rrcm9vdC5tazo3 OTogcmVjaXBlIGZvciB0YXJnZXQgJ2luc3RhbGwnIGZhaWxlZAptYWtlOiAqKiogW2luc3RhbGxd IEVycm9yIDIKCipGYWlsZWQgQnVpbGQgIzEyOgpPUzogRkMyNApUYXJnZXQ6IHg4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLXNoYXJlZAogIENDIHZob3N0X3VzZXIubwogIExEIGxpYnJ0ZV9ldmVu dGRldi5zby40LjEKICBJTlNUQUxMLUxJQiBsaWJydGVfZXZlbnRkZXYuc28uNC4xCiAgQ0Mgdmly dGlvX25ldC5vCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3QvdmlydGlvX25ldC5jOiBJbiBmdW5jdGlvbiDigJhmaWxsX3ZlY19idWZfcGFj a2VkX2luZGlyZWN04oCZOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNTI6MTM6IGVycm9yOiBkZXJlZmVyZW5j aW5nIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tl ZOKAmQogIGRsZW4gPSBkZXNjLT5sZW47CiAgICAgICAgICAgICBefgovdG1wL0ZDMjRfSzQuOS4x M19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4 NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzoz NzA6MzI6IGVycm9yOiBpbnZhbGlkIGFwcGxpY2F0aW9uIG9mIOKAmHNpemVvZuKAmSB0byBpbmNv bXBsZXRlIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCiAgbnJfZGVjcyA9ICBk ZXNjLT5sZW4gLyBzaXplb2Yoc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkKTsKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzgyOjM6IGVycm9yOiBp bnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTi gJkKICAgKmxlbiArPSBkZXNjc1tpXS5sZW47CiAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJl ZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjL2luY2x1ZGUvcnRlX3NwaW5sb2NrLmg6MTU6MCwKICAgICAgICAgICAgICAgICBm cm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj LXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21lbXBvb2wuaDo0NCwKICAgICAgICAgICAgICAg ICBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtZ2NjL2luY2x1ZGUvcnRlX21idWYuaDozOCwKICAgICAgICAgICAgICAg ICBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Z2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJy dGVfdmhvc3QvdmlydGlvX25ldC5jOjk6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjM4MzoxNjogd2FybmluZzog aW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYbWFwX29uZV9kZXNj4oCZIFstV2lt cGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogICBpZiAodW5saWtlbHkobWFwX29uZV9kZXNj KGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICAgICAgICAgICAgICBeCi90bXAvRkMyNF9L NC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj L2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGluIGRlZmluaXRp b24gb2YgbWFjcm8g4oCYdW5saWtlbHnigJkKICNkZWZpbmUgdW5saWtlbHkoeCkgX19idWlsdGlu X2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2Nj LXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjM4MzozOiB3YXJuaW5nOiBuZXN0ZWQgZXh0ZXJuIGRlY2xhcmF0 aW9uIG9mIOKAmG1hcF9vbmVfZGVzY+KAmSBbLVduZXN0ZWQtZXh0ZXJuc10KICAgaWYgKHVubGlr ZWx5KG1hcF9vbmVfZGVzYyhkZXYsIHZxLCBidWZfdmVjLCAmdmVjX2lkLAogICBefgovdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRp b19uZXQuYzozODM6MzogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODM6MzogZXJyb3I6IGlu dmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKA mQpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfc3BpbmxvY2su aDoxNTowLAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVfbWVt cG9vbC5oOjQ0LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4y LjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2MvaW5jbHVkZS9ydGVf bWJ1Zi5oOjM4LAogICAgICAgICAgICAgICAgIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4y LjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFi OGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6OToKL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6IEluIGZ1bmN0aW9uIOKAmGZpbGxfdmVjX2J1Zl9wYWNrZWTigJk6Ci90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjQwOToxNjogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g 4oCYZGVzY19pc19hdmFpbOKAmSBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KICBp ZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwoJmRlc2NzW2F2YWlsX2lkeF0sIHdyYXBfY291bnRl cikpKQogICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZk MTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJl ZGljdGlvbi5oOjM4OjQxOiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmHVubGlrZWx5 4oCZCiAjZGVmaW5lIHVubGlrZWx5KHgpIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19H Q0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MDk6 Mjogd2FybmluZzogbmVzdGVkIGV4dGVybiBkZWNsYXJhdGlvbiBvZiDigJhkZXNjX2lzX2F2YWls 4oCZIFstV25lc3RlZC1leHRlcm5zXQogIGlmICh1bmxpa2VseSghZGVzY19pc19hdmFpbCgmZGVz Y3NbYXZhaWxfaWR4XSwgd3JhcF9jb3VudGVyKSkpCiAgXn4KL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5OjI6 IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWTigJkKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDE5OjM6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1 bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgKmJ1Zl9pZCA9 IGRlc2NzW2F2YWlsX2lkeF0uaW5kZXg7CiAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDIxOjM6IGVycm9y OiBpbnZhbGlkIHVzZSBvZiB1bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWTigJkKICAgaWYgKGRlc2NzW2F2YWlsX2lkeF0uZmxhZ3MgJiBWUklOR19ERVNDX0ZfSU5ESVJF Q1QpIHsKICAgXn4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDIyOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1 bmRlZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgIGlmICh1bmxp a2VseShmaWxsX3ZlY19idWZfcGFja2VkX2luZGlyZWN0KGRldiwgdnEsCiAgICBefgovdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhm MDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRp b19uZXQuYzo0Mjg6NDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZOKAmQogICAgKmxlbiArPSBkZXNjc1thdmFpbF9pZHhdLmxl bjsKICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMwOjQ6IGVycm9yOiBpbnZhbGlkIHVzZSBvZiB1bmRl ZmluZWQgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWTigJkKICAgIGlmICh1bmxpa2Vs eShtYXBfb25lX2Rlc2MoZGV2LCB2cSwgYnVmX3ZlYywgJnZlY19pZCwKICAgIF5+Ci90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYw MWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlv X25ldC5jOjQzMDo0OiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3Ry dWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3 NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzNzozOiBlcnJvcjogaW52 YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk4oCZ CiAgIGlmICgoZGVzY3NbYXZhaWxfaWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9ORVhUKSA9PSAw KQogICBefgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3ZpcnRpb19uZXQuYzogSW4gZnVuY3Rpb24g4oCYcnRlX3Zob3N0X2RlcXVldWVf YnVyc3TigJk6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjEzNzc6Nzogd2FybmluZzogcGFzc2luZyBhcmd1bWVu dCAzIG9mIOKAmGFsbG9jX2NvcHlfaW5kX3RhYmxl4oCZIG1ha2VzIGludGVnZXIgZnJvbSBwb2lu dGVyIHdpdGhvdXQgYSBjYXN0IFstV2ludC1jb252ZXJzaW9uXQogICAgICAgJnZxLT5kZXNjW2Rl c2NfaW5kZXhlc1tpXV0pOwogICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWdjYy1zaGFyZWQvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIx NzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MToxOiBub3RlOiBleHBl Y3RlZCDigJh1aW50NjRfdCB7YWthIGxvbmcgdW5zaWduZWQgaW50feKAmSBidXQgYXJndW1lbnQg aXMgb2YgdHlwZSDigJhzdHJ1Y3QgdnJpbmdfZGVzYyAq4oCZCiBhbGxvY19jb3B5X2luZF90YWJs ZShzdHJ1Y3QgdmlydGlvX25ldCAqZGV2LCBzdHJ1Y3Qgdmhvc3RfdmlydHF1ZXVlICp2cSwKIF5+ fn5+fn5+fn5+fn5+fn5+fn5+Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjEzNzY6MTM6IGVycm9yOiB0b28gZmV3 IGFyZ3VtZW50cyB0byBmdW5jdGlvbiDigJhhbGxvY19jb3B5X2luZF90YWJsZeKAmQogICAgIGlk ZXNjID0gYWxsb2NfY29weV9pbmRfdGFibGUoZGV2LCB2cSwKICAgICAgICAgICAgIF5+fn5+fn5+ fn5+fn5+fn5+fn5+Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtZ2NjLXNoYXJlZC80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xp Yi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQxOjE6IG5vdGU6IGRlY2xhcmVkIGhlcmUKIGFs bG9jX2NvcHlfaW5kX3RhYmxlKHN0cnVjdCB2aXJ0aW9fbmV0ICpkZXYsIHN0cnVjdCB2aG9zdF92 aXJ0cXVldWUgKnZxLAogXn5+fn5+fn5+fn5+fn5+fn5+fn4KL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvaW50ZXJuYWwvcnRlLmNvbXBpbGUtcHJlLm1rOjExNDog cmVjaXBlIGZvciB0YXJnZXQgJ3ZpcnRpb19uZXQubycgZmFpbGVkCm1ha2VbNV06ICoqKiBbdmly dGlvX25ldC5vXSBFcnJvciAxCm1ha2VbNV06ICoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpv YnMuLi4uCj09IEJ1aWxkIGxpYi9saWJydGVfaXBfZnJhZwogIFNZTUxJTkstRklMRSBpbmNsdWRl L3J0ZV9pcF9mcmFnLmgKICBDQyBydGVfaXB2NF9mcmFnbWVudGF0aW9uLm8KL3RtcC9GQzI0X0s0 LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnN1YmRpci5tazozNTogcmVjaXBl IGZvciB0YXJnZXQgJ2xpYnJ0ZV92aG9zdCcgZmFpbGVkCm1ha2VbNF06ICoqKiBbbGlicnRlX3Zo b3N0XSBFcnJvciAyCm1ha2VbNF06ICoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4u CiAgQ0MgcnRlX2lwdjZfZnJhZ21lbnRhdGlvbi5vCiAgQ0MgcnRlX2lwdjRfcmVhc3NlbWJseS5v CiAgQ0MgcnRlX2lwdjZfcmVhc3NlbWJseS5vCiAgQ0MgcnRlX2lwX2ZyYWdfY29tbW9uLm8KICBD QyBpcF9mcmFnX2ludGVybmFsLm8KICBMRCBsaWJydGVfaXBfZnJhZy5zby4xLjEKICBJTlNUQUxM LUxJQiBsaWJydGVfaXBfZnJhZy5zby4xLjEKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbWsvcnRlLnNka2J1aWxkLm1rOjQ5OiByZWNpcGUgZm9yIHRhcmdldCAnbGli JyBmYWlsZWQKbWFrZVszXTogKioqIFtsaWJdIEVycm9yIDIKL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRh YTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka3Jvb3QubWs6MTAwOiByZWNpcGUgZm9yIHRh cmdldCAnYWxsJyBmYWlsZWQKbWFrZVsyXTogKioqIFthbGxdIEVycm9yIDIKL3RtcC9GQzI0X0s0 LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbWsvcnRlLnNka2luc3RhbGwubWs6NTc6IHJl Y2lwZSBmb3IgdGFyZ2V0ICdwcmVfaW5zdGFsbCcgZmFpbGVkCm1ha2VbMV06ICoqKiBbcHJlX2lu c3RhbGxdIEVycm9yIDIKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1nY2Mtc2hhcmVkLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bWsvcnRlLnNka3Jvb3QubWs6Nzk6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQK bWFrZTogKioqIFtpbnN0YWxsXSBFcnJvciAyCgoqRmFpbGVkIEJ1aWxkICMxMzoKT1M6IEZDMjQK VGFyZ2V0OiB4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nCj09IEJ1aWxkIGxpYi9saWJydGVf aXBfZnJhZwogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9pcF9mcmFnLmgKICBDQyBydGVfaXB2 NF9mcmFnbWVudGF0aW9uLm8KICBDQyB2aXJ0aW9fbmV0Lm8KICBDQyBydGVfaXB2Nl9mcmFnbWVu dGF0aW9uLm8KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVf dmhvc3QvdmlydGlvX25ldC5jOjM1MjoxMzogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBv ZiB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgZGxlbiA9IGRlc2MtPmxl bjsKICAgICAgICAgICAgICAgfn5+fl4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9k cGRrL2xpYi9saWJydGVfdmhvc3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJh dGlvbiBvZiAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0 IHZyaW5nX2Rlc2NfcGFja2VkICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAg IF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qv dmlydGlvX25ldC5jOjM1NDozNDogZXJyb3I6IGluY29tcGxldGUgZGVmaW5pdGlvbiBvZiB0eXBl ICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICB2aG9zdF9pb3ZhX3Rv X3Z2YShkZXYsIHZxLCBkZXNjLT5hZGRyLCAmZGxlbiwgVkhPU1RfQUNDRVNTX1JPKTsKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5eCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5v dGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAg ICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAg ICAgICAgICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBk ay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozNTg6MjY6IGVycm9yOiBpbmNvbXBsZXRl IGRlZmluaXRpb24gb2YgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgIGlm ICh1bmxpa2VseShkbGVuIDwgZGVzYy0+bGVuKSkgewogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfn5+fl4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTog bm90ZTogZXhwYW5kZWQgZnJvbSBtYWNybyAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHkoeCkg ICAgIF9fYnVpbHRpbl9leHBlY3QoISEoeCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsv bGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9u IG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJp bmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgov dG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4 ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0 aW9fbmV0LmM6MzYzOjQ2OiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIGlkZXNjcyA9IGFsbG9jX2Nv cHlfaW5kX3RhYmxlKGRldiwgdnEsIGRlc2MtPmFkZHIsIGRlc2MtPmxlbik7CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+XgovdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4 OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNr ZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNr ZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzYzOjU4OiBlcnJvcjogaW5j b21wbGV0ZSBkZWZpbml0aW9uIG9mIHR5cGUgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAg ICAgICAgICAgICAgIGlkZXNjcyA9IGFsbG9jX2NvcHlfaW5kX3RhYmxlKGRldiwgdnEsIGRlc2Mt PmFkZHIsIGRlc2MtPmxlbik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2 LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1 YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3 YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAg ICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAg ICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MzcwOjE3OiBlcnJvcjogaW5jb21wbGV0ZSBkZWZpbml0 aW9uIG9mIHR5cGUgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICBucl9kZWNzID0g IGRlc2MtPmxlbiAvIHNpemVvZihzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQpOwogICAgICAgICAg ICAgICAgICAgfn5+fl4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9s aWJydGVfdmhvc3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAn c3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rl c2NfcGFja2VkICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25l dC5jOjM3MDoyNTogZXJyb3I6IGludmFsaWQgYXBwbGljYXRpb24gb2YgJ3NpemVvZicgdG8gYW4g aW5jb21wbGV0ZSB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgbnJfZGVj cyA9ICBkZXNjLT5sZW4gLyBzaXplb2Yoc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkKTsKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zo b3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19k ZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpk ZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzozODI6MTY6IGVy cm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUgJ3N0cnVjdCB2cmlu Z19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgICpsZW4gKz0gZGVzY3NbaV0ubGVuOwogICAg ICAgICAgICAgICAgICAgICAgICB+fn5+fl4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNs YXJhdGlvbiBvZiAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3Ry dWN0IHZyaW5nX2Rlc2NfcGFja2VkICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAg ICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhv c3QvdmlydGlvX25ldC5jOjM4MzoxNjogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg ZnVuY3Rpb24gJ21hcF9vbmVfZGVzYycgaXMgaW52YWxpZCBpbiBDOTkgWy1XaW1wbGljaXQtZnVu Y3Rpb24tZGVjbGFyYXRpb25dCiAgICAgICAgICAgICAgICBpZiAodW5saWtlbHkobWFwX29uZV9k ZXNjKGRldiwgdnEsIGJ1Zl92ZWMsICZ2ZWNfaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9z dC92aXJ0aW9fbmV0LmM6Mzg0OjEyOiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5j b21wbGV0ZSB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NzW2ldLmFkZHIsIGRlc2NzW2ldLmxl biwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5e Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGV4 cGFuZGVkIGZyb20gbWFjcm8gJ3VubGlrZWx5JwojZGVmaW5lIHVubGlrZWx5KHgpICAgICBfX2J1 aWx0aW5fZXhwZWN0KCEhKHgpLCAwKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJy dGVfdmhvc3Qvdmhvc3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3Ry dWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2Nf cGFja2VkICAgKmRlc2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0 X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5j OjM4NDoyNzogZXJyb3I6IHN1YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSAn c3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBkZXNjc1tpXS5hZGRyLCBkZXNjc1tpXS5sZW4sCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+ XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBl eHBhbmRlZCBmcm9tIG1hY3JvICd1bmxpa2VseScKI2RlZmluZSB1bmxpa2VseSh4KSAgICAgX19i dWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0 cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNj X3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQu Yzo0MDk6MTY6IHdhcm5pbmc6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1bmN0aW9uICdkZXNj X2lzX2F2YWlsJyBpcyBpbnZhbGlkIGluIEM5OSBbLVdpbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJh dGlvbl0KICAgICAgICBpZiAodW5saWtlbHkoIWRlc2NfaXNfYXZhaWwoJmRlc2NzW2F2YWlsX2lk eF0sIHdyYXBfY291bnRlcikpKQogICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQu OS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQx MGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA5 OjM2OiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdzdHJ1 Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgaWYgKHVubGlrZWx5KCFkZXNjX2lzX2F2YWls KCZkZXNjc1thdmFpbF9pZHhdLCB3cmFwX2NvdW50ZXIpKSkKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIH5+fn5+XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGlj dGlvbi5oOjM4OjQxOiBub3RlOiBleHBhbmRlZCBmcm9tIG1hY3JvICd1bmxpa2VseScKI2RlZmlu ZSB1bmxpa2VseSh4KSAgICAgX19idWlsdGluX2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYu Mi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVh YjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndh cmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAg ICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAg ICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGli cnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0MTk6MTg6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRl ciB0byBpbmNvbXBsZXRlIHR5cGUgJ3N0cnVjdCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAg ICAgICAgICpidWZfaWQgPSBkZXNjc1thdmFpbF9pZHhdLmluZGV4OwogICAgICAgICAgICAgICAg ICAgICAgICAgIH5+fn5+XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGli L2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9m ICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdf ZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9f bmV0LmM6NDIxOjEyOiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0 eXBlICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBpZiAoZGVzY3Nb YXZhaWxfaWR4XS5mbGFncyAmIFZSSU5HX0RFU0NfRl9JTkRJUkVDVCkgewogICAgICAgICAgICAg ICAgICAgIH5+fn5+XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xp YnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdz dHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWQgICAqZGVzY19wYWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhl ZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0 LmM6NDIzOjE0OiBlcnJvcjogc3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBl ICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRlc2NzW2F2YWlsX2lkeF0sCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+XgovdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9icmFuY2hfcHJlZGljdGlvbi5oOjM4OjQxOiBub3RlOiBleHBhbmRl ZCBmcm9tIG1hY3JvICd1bmxpa2VseScKI2RlZmluZSB1bmxpa2VseSh4KSAgICAgX19idWlsdGlu X2V4cGVjdCghISh4KSwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zo b3N0L3Zob3N0Lmg6ODg6MTA6IG5vdGU6IGZvcndhcmQgZGVjbGFyYXRpb24gb2YgJ3N0cnVjdCB2 cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgIHN0cnVjdCB2cmluZ19kZXNjX3BhY2tl ZCAgICpkZXNjX3BhY2tlZDsKICAgICAgICAgICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEw ZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9saWIvbGlicnRlX3Zob3N0L3ZpcnRpb19uZXQuYzo0Mjg6 MTc6IGVycm9yOiBzdWJzY3JpcHQgb2YgcG9pbnRlciB0byBpbmNvbXBsZXRlIHR5cGUgJ3N0cnVj dCB2cmluZ19kZXNjX3BhY2tlZCcKICAgICAgICAgICAgICAgICAgICAgICAgKmxlbiArPSBkZXNj c1thdmFpbF9pZHhdLmxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fl4K L3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80 OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmhv c3QuaDo4ODoxMDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IHZyaW5nX2Rl c2NfcGFja2VkJwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkICAgKmRl c2NfcGFja2VkOwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhm NWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzMToxMzogZXJy b3I6IHN1YnNjcmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSAnc3RydWN0IHZyaW5n X2Rlc2NfcGFja2VkJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGRlc2NzW2F2YWlsX2lkeF0uYWRkciwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fl4KL3RtcC9GQzI0X0s0Ljku MTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBk YWExYjhmNWFiMjE3NmQxNS9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfYnJhbmNoX3ByZWRpY3Rpb24uaDozODo0MTogbm90ZTogZXhwYW5kZWQgZnJvbSBtYWNy byAndW5saWtlbHknCiNkZWZpbmUgdW5saWtlbHkoeCkgICAgIF9fYnVpbHRpbl9leHBlY3QoISEo eCksIDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAx ZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdC5o Ojg4OjEwOiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19w YWNrZWQnCiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAqZGVzY19w YWNrZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIu MS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDMyOjEzOiBlcnJvcjog c3Vic2NyaXB0IG9mIHBvaW50ZXIgdG8gaW5jb21wbGV0ZSB0eXBlICdzdHJ1Y3QgdnJpbmdfZGVz Y19wYWNrZWQnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZGVzY3NbYXZhaWxfaWR4XS5sZW4sCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5eCi90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4 ZjVhYjIxNzZkMTUvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X2JyYW5jaF9wcmVkaWN0aW9uLmg6Mzg6NDE6IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFjcm8gJ3Vu bGlrZWx5JwojZGVmaW5lIHVubGlrZWx5KHgpICAgICBfX2J1aWx0aW5fZXhwZWN0KCEhKHgpLCAw KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0 X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0 NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL2xpYi9saWJydGVfdmhvc3Qvdmhvc3QuaDo4ODox MDogbm90ZTogZm9yd2FyZCBkZWNsYXJhdGlvbiBvZiAnc3RydWN0IHZyaW5nX2Rlc2NfcGFja2Vk JwogICAgICAgICAgICAgICAgc3RydWN0IHZyaW5nX2Rlc2NfcGFja2VkICAgKmRlc2NfcGFja2Vk OwogICAgICAgICAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL2xpYi9saWJydGVfdmhvc3QvdmlydGlvX25ldC5jOjQzNzoxMzogZXJyb3I6IHN1YnNj cmlwdCBvZiBwb2ludGVyIHRvIGluY29tcGxldGUgdHlwZSAnc3RydWN0IHZyaW5nX2Rlc2NfcGFj a2VkJwogICAgICAgICAgICAgICAgaWYgKChkZXNjc1thdmFpbF9pZHhdLmZsYWdzICYgVlJJTkdf REVTQ19GX05FWFQpID09IDApCiAgICAgICAgICAgICAgICAgICAgIH5+fn5+XgovdG1wL0ZDMjRf SzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1 ODQxMGRhYTFiOGY1YWIyMTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aG9zdC5oOjg4OjEw OiBub3RlOiBmb3J3YXJkIGRlY2xhcmF0aW9uIG9mICdzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQn CiAgICAgICAgICAgICAgICBzdHJ1Y3QgdnJpbmdfZGVzY19wYWNrZWQgICAqZGVzY19wYWNrZWQ7 CiAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2ZDE1 L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6MTM3NzozMzogZXJyb3I6IHRvbyBm ZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9uIGNhbGwsIGV4cGVjdGVkIDQsIGhhdmUgMwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdnEtPmRlc2NbZGVzY19p bmRleGVzW2ldXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIu MS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIy MTc2ZDE1L2RwZGsvbGliL2xpYnJ0ZV92aG9zdC92aXJ0aW9fbmV0LmM6NDA6MTogbm90ZTogJ2Fs bG9jX2NvcHlfaW5kX3RhYmxlJyBkZWNsYXJlZCBoZXJlCnN0YXRpYyBfX3J0ZV9hbHdheXNfaW5s aW5lIHZvaWQgKgpeCjIgd2FybmluZ3MgYW5kIDE5IGVycm9ycyBnZW5lcmF0ZWQuCi90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVl NDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUvZHBkay9tay9pbnRlcm5hbC9ydGUuY29tcGlsZS1wcmUu bWs6MTE0OiByZWNpcGUgZm9yIHRhcmdldCAndmlydGlvX25ldC5vJyBmYWlsZWQKbWFrZVs1XTog KioqIFt2aXJ0aW9fbmV0Lm9dIEVycm9yIDEKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQx NS9kcGRrL21rL3J0ZS5zdWJkaXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0ICdsaWJydGVfdmhv c3QnIGZhaWxlZAptYWtlWzRdOiAqKiogW2xpYnJ0ZV92aG9zdF0gRXJyb3IgMgptYWtlWzRdOiAq KiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLgogIENDIHJ0ZV9pcHY0X3JlYXNzZW1i bHkubwogIENDIHJ0ZV9pcHY2X3JlYXNzZW1ibHkubwogIENDIHJ0ZV9pcF9mcmFnX2NvbW1vbi5v CiAgQ0MgaXBfZnJhZ19pbnRlcm5hbC5vCiAgQVIgbGlicnRlX2lwX2ZyYWcuYQogIElOU1RBTEwt TElCIGxpYnJ0ZV9pcF9mcmFnLmEKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRr L21rL3J0ZS5zZGtidWlsZC5tazo0OTogcmVjaXBlIGZvciB0YXJnZXQgJ2xpYicgZmFpbGVkCm1h a2VbM106ICoqKiBbbGliXSBFcnJvciAyCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNDhmMDFmOGVlNDU4NDEwZGFhMWI4ZjVhYjIxNzZkMTUv ZHBkay9tay9ydGUuc2Rrcm9vdC5tazoxMDA6IHJlY2lwZSBmb3IgdGFyZ2V0ICdhbGwnIGZhaWxl ZAptYWtlWzJdOiAqKiogW2FsbF0gRXJyb3IgMgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzQ4ZjAxZjhlZTQ1ODQxMGRhYTFiOGY1YWIyMTc2 ZDE1L2RwZGsvbWsvcnRlLnNka2luc3RhbGwubWs6NTc6IHJlY2lwZSBmb3IgdGFyZ2V0ICdwcmVf aW5zdGFsbCcgZmFpbGVkCm1ha2VbMV06ICoqKiBbcHJlX2luc3RhbGxdIEVycm9yIDIKL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy80OGYwMWY4 ZWU0NTg0MTBkYWExYjhmNWFiMjE3NmQxNS9kcGRrL21rL3J0ZS5zZGtyb290Lm1rOjc5OiByZWNp cGUgZm9yIHRhcmdldCAnaW5zdGFsbCcgZmFpbGVkCm1ha2U6ICoqKiBbaW5zdGFsbF0gRXJyb3Ig MgoKRFBESyBTVFYgdGVhbQ== --===============3645424482363936378==--