From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 3A7241B8B4 for ; Thu, 10 Jan 2019 19:48:23 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Jan 2019 10:48:22 -0800 Message-Id: <0590c7$3opac7@orsmga001.jf.intel.com> Date: 10 Jan 2019 10:48:19 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,462,1539673200"; d="scan'208";a="126658951" Received: from unknown (HELO [127.0.1.1]) ([10.240.176.205]) by orsmga001.jf.intel.com with ESMTP; 10 Jan 2019 10:48:19 -0800 Content-Type: multipart/alternative; boundary="===============4991645416388769787==" MIME-Version: 1.0 From: sys_stv@intel.com To: test-report@dpdk.org Cc: Subject: [dpdk-test-report] |FAILURE| pw49632[v3, 1/2] mbuf: add function returning default buffer address X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Jan 2019 18:48:26 -0000 --===============4991645416388769787== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogSW50ZWwtY29tcGlsYXRpb24KVGVzdC1TdGF0dXM6IEZBSUxVUkUKaHR0cDov L2RwZGsub3JnL3BhdGNoLzQ5NjMyCgpfQ29tcGlsYXRpb24gaXNzdWVzXwoKU3VibWl0dGVyOiBZ b25nc2VvayBLb2ggPHlza29oQG1lbGxhbm94LmNvbT4KRGF0ZTogMjAxOS0wMS0xMCAxODozNToy NwpEUERLIGdpdCBiYXNlbGluZTogUmVwbzpkcGRrLW1hc3RlciwgQ29tbWl0SUQ6IGE5NThhNWMw N2Y0YjVlNzE1OTIxYTJmMjJjOTMxMTQyNDE3Mjg3YTUKCkJ1aWxkIFN1bW1hcnk6IDE1IEJ1aWxk cyBEb25lLCAxMSBTdWNjZXNzZnVsLCA0IEZhaWx1cmVzCgpUZXN0IGVudmlyb25tZW50IGFuZCBj b25maWd1cmF0aW9uIGFzIGJlbG93OgoKT1M6IEZDMjUKCUtlcm5lbCBWZXJzaW9uOiA0LjUuNS0z MDAuZmMyNC54ODZfNjQKCUNQVSBpbmZvOiBJbnRlbChSKSBYZW9uKFIpIENQVSBFNS0yNjk5IHYz IEAgMi4zMEdIegoJR0NDIFZlcnNpb246IGdjYyAoR0NDKSA2LjEuMSAyMDE2MDUxMCAoUmVkIEhh dCA2LjEuMS0yKQoJQ2xhbmcgVmVyc2lvbjogMy44LjAgKHRhZ3MvUkVMRUFTRV8zODAvZmluYWwp Cgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYwoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mt ZGVidWcKCk9TOiBGQzI0CglLZXJuZWwgVmVyc2lvbjogNC4xMS4xMi0xMDAuZmMyNC54ODZfNjQK CUNQVSBpbmZvOiBJbnRlbChSKSBYZW9uKFIpIENQVSBFNS0yNjk5IHYzIEAgMi4zMEdIegoJR0ND IFZlcnNpb246IGdjYyAoR0NDKSA2LjMuMSAyMDE2MTIyMSAoUmVkIEhhdCA2LjMuMS0xKQoJQ2xh bmcgVmVyc2lvbjogMy44LjEgKHRhZ3MvUkVMRUFTRV8zODEvZmluYWwpCgl4ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nCglpNjg2LW5hdGl2ZS1saW51eGFwcC1nY2MKCXg4Nl82NC1uYXRpdmUt bGludXhhcHAtZ2NjLXNoYXJlZAoKT1M6IENFTlRPUwoJS2VybmVsIFZlcnNpb246IDMuMTAuMC05 NTcuMS4zLmVsNy54ODZfNjQKCUNQVSBpbmZvOiBJbnRlbChSKSBYZW9uKFIpIENQVSBFNS0yNjk5 IHYzIEAgMi4zMEdIegoJR0NDIFZlcnNpb246IGdjYyAoR0NDKSA0LjguNSAyMDE1MDYyMyAoUmVk IEhhdCA0LjguNS0zNikKCUNsYW5nIFZlcnNpb246IDMuNC4yICh0YWdzL1JFTEVBU0VfMzQvZG90 Mi1maW5hbCkKCXg4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcKCWk2ODYtbmF0aXZlLWxpbnV4 YXBwLWdjYwoJeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1nY2Mtc2hhcmVkCgl4ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWdjYwoKT1M6IFVCMTYwNAoJS2VybmVsIFZlcnNpb246IDQuNC4wLTc4LWdlbmVy aWMKCUNQVSBpbmZvOiBJbnRlbChSKSBYZW9uKFIpIENQVSBFNS0yNjk5IHYzIEAgMi4zMEdIegoJ R0NDIFZlcnNpb246IGdjYyAoVWJ1bnR1IDUuNC4wLTZ1YnVudHUxfjE2LjA0LjEwKSA1LjQuMCAy MDE2MDYwOQoJQ2xhbmcgVmVyc2lvbjogMy44LjAtMnVidW50dTQgKHRhZ3MvUkVMRUFTRV8zODAv ZmluYWwpCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWdjYwoJeDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZwoJaTY4Ni1uYXRpdmUtbGludXhhcHAtZ2NjCgl4ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWdjYy1zaGFyZWQKCk9TOiBGcmVlQlNECglLZXJuZWwgVmVyc2lvbjogMTAuMy1SRUxFQVNFCglD UFUgaW5mbzogSW50ZWwoUikgWGVvbihSKSBDUFUgRTUtMjY5OSB2MyBAIDIuMzBHSHogKDIyOTQu NzUtTUh6IEs4LWNsYXNzIENQVSkKCUdDQyBWZXJzaW9uOiBnY2MgKEZyZWVCU0QgUG9ydHMgQ29s bGVjdGlvbikgNy4zLjAKCUNsYW5nIFZlcnNpb246IDMuNC4xICh0YWdzL1JFTEVBU0VfMzQvZG90 MS1maW5hbCAyMDgwMzIpIDIwMTQwNTEyCgl4ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZwoJeDg2 XzY0LW5hdGl2ZS1ic2RhcHAtZ2NjCgoqRmFpbGVkIEJ1aWxkICMxOgpPUzogVUIxNjA0ClRhcmdl dDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwogIENDIHJ0ZV9tYnVmLm8KICBBUiBsaWJy dGVfbWVtYmVyLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfbWVtYmVyLmEKICBDQyBydGVfbWJ1Zl9w dHlwZS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL2xpYi9saWJydGVfbWJ1Zi9ydGVfbWJ1Zi5jOjI4OgovdG1wL1VCMTYwNF9LNC40 LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJl Y2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVk LWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMTox OiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRl cHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1 Y3QgcnRlX21lbXBvb2wgKm1wKQpeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfbWJ1Zi9ydGVfbWJ1Zl9wdHlwZS5j Ojc6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0 LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4g ZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVj dCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVy YXRlZC4KICBDQyBydGVfbWJ1Zl9wb29sX29wcy5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xp Yi9saWJydGVfbWJ1Zi9ydGVfbWJ1Zl9wb29sX29wcy5jOjg6Ci90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRl ZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVj bGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wp OwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5v dGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVj YXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBy dGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfbWJ1Zi5h CiAgSU5TVEFMTC1MSUIgbGlicnRlX21idWYuYQo9PSBCdWlsZCBsaWIvbGlicnRlX25ldAo9PSBC dWlsZCBsaWIvbGlicnRlX2JiZGV2CiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2JiZGV2X29w LmgKLS0KICBDQyBydGVfY3J5cHRvZGV2Lm8KICBBUiBsaWJydGVfbmV0LmEKICBJTlNUQUxMLUxJ QiBsaWJydGVfbmV0LmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9jb21wcmVzc2RldgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGli cnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRvZGV2LmM6MzU6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6 ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRl ZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVf bWVtcG9vbCAqbXApCl4KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfY29tcC5oCiAgU1lNTElO Sy1GSUxFIGluY2x1ZGUvcnRlX2NvbXByZXNzZGV2LmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9y dGVfY29tcHJlc3NkZXZfcG1kLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfY29tcHJlc3Nk ZXZfaW50ZXJuYWwuaAogIENDIHJ0ZV9jb21wcmVzc2Rldi5vCjEgd2FybmluZyBnZW5lcmF0ZWQu CiAgQ0MgcnRlX2NyeXB0b2Rldl9wbWQubwogIENDIHJ0ZV9jb21wcmVzc2Rldl9wbWQubwpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9s aWIvbGlicnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRvZGV2X3BtZC5jOjc6CkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf Y3J5cHRvZGV2L3J0ZV9jcnlwdG9kZXZfcG1kLmg6MjU6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6 ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRl ZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVf bWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfY3J5cHRvZGV2 LmEKICBJTlNUQUxMLUxJQiBsaWJydGVfY3J5cHRvZGV2LmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9z Y2hlZAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9zY2hlZC5oCiAgU1lNTElOSy1GSUxFIGlu Y2x1ZGUvcnRlX3NjaGVkX2NvbW1vbi5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3JlZC5o CiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2FwcHJveC5oCiAgQ0MgcnRlX3NjaGVkLm8KICBD QyBydGVfY29tcC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0ND NS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfc2NoZWQvcnRlX3NjaGVkLmM6MTU6Ci90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicg aXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2Rl cHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkciht ZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBt YXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBBUiBsaWJydGVfY29tcHJlc3NkZXYuYQog IElOU1RBTEwtTElCIGxpYnJ0ZV9jb21wcmVzc2Rldi5hCiAgQ0MgcnRlX3JlZC5vCjEgd2Fybmlu ZyBnZW5lcmF0ZWQuCj09IEJ1aWxkIGxpYi9saWJydGVfcmVvcmRlcgogIFNZTUxJTkstRklMRSBp bmNsdWRlL3J0ZV9yZW9yZGVyLmgKICBDQyBydGVfcmVvcmRlci5vCiAgQ0MgcnRlX2FwcHJveC5v CiAgQVIgbGlicnRlX3NjaGVkLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfc2NoZWQuYQo9PSBCdWls ZCBsaWIvbGlicnRlX2V0aGRldgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3Jlb3JkZXIvcnRlX3Jlb3JkZXIuYzo5 OgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZf YnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxl IEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZf YnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40 LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4 cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3Qg cnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCi0tCiAgU1lNTElOSy1GSUxF IGluY2x1ZGUvcnRlX2V0aGRldl9jb3JlLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZXRo ZGV2X3BjaS5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2V0aGRldl92ZGV2LmgKICBTWU1M SU5LLUZJTEUgaW5jbHVkZS9ydGVfZXRoX2N0cmwuaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0 ZV9kZXZfaW5mby5oCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUv cnRlX2Zsb3cuaAogIEFSIGxpYnJ0ZV9yZW9yZGVyLmEKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9y dGVfZmxvd19kcml2ZXIuaAogIElOU1RBTEwtTElCIGxpYnJ0ZV9yZW9yZGVyLmEKICBTWU1MSU5L LUZJTEUgaW5jbHVkZS9ydGVfdG0uaAotLQogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ldmVu dF9ldGhfdHhfYWRhcHRlci5oCiAgQ0MgcnRlX2V2ZW50ZGV2Lm8KSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9zZWN1 cml0eS9ydGVfc2VjdXJpdHkuYzo5OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9zZWN1cml0 eS5oOjI4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4w L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0 by5oOjIwOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRl X21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Yg c3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRl X21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYw NF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBi ZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihz dHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBn ZW5lcmF0ZWQuCiAgQVIgbGlicnRlX3NlY3VyaXR5LmEKICBJTlNUQUxMLUxJQiBsaWJydGVfc2Vj dXJpdHkuYQogIENDIHJ0ZV9ldmVudF9yaW5nLm8KICBDQyBydGVfZXZlbnRfZXRoX3J4X2FkYXB0 ZXIubwo9PSBCdWlsZCBsaWIvbGlicnRlX3Jhd2RldgotLQogIENDIHJ0ZV9pcHY0X2ZyYWdtZW50 YXRpb24ubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4w L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwdjRfZnJhZ21lbnRhdGlvbi5jOjEy OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21tb24uaDo4OgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRl X2lwX2ZyYWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9pcC5oOjIyOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZf YnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVf bWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1w KQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX2lwdjZfZnJhZ21lbnRhdGlvbi5vCiAg Q0Mgc29ja2V0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcHY2X2ZyYWdtZW50YXRpb24u YzoxMDoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL2lwX2ZyYWdfY29tbW9uLmg6ODoKSW4gZmlsZSBp bmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xp YnJ0ZV9pcF9mcmFnL3J0ZV9pcF9mcmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfaXAuaDoyMjoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4 NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wg aXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNd CiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAg ICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUK cnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29s ICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9pcHY0X3JlYXNzZW1ibHkubwog IENDIHZob3N0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcHY0X3JlYXNzZW1ibHkuYzo5 OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21tb24uaDo4OgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRl X2lwX2ZyYWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9pcC5oOjIyOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZf YnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVf bWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1w KQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX2lwdjZfcmVhc3NlbWJseS5vCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xp Yi9saWJydGVfaXBfZnJhZy9ydGVfaXB2Nl9yZWFzc2VtYmx5LmM6OToKSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9p cF9mcmFnL2lwX2ZyYWdfY29tbW9uLmg6ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcF9m cmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfaXAu aDoyMjoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0 YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9t YnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVl biBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIENDIHJ0ZV9pcF9mcmFnX2NvbW1vbi5vCiAgQ0Mgdmhvc3RfdXNlci5vCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xp Yi9saWJydGVfaXBfZnJhZy9ydGVfaXBfZnJhZ19jb21tb24uYzoxMToKSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9p cF9mcmFnL2lwX2ZyYWdfY29tbW9uLmg6ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcF9m cmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfaXAu aDoyMjoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0 YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9t YnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVl biBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIENDIGlwX2ZyYWdfaW50ZXJuYWwubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBf ZnJhZ19pbnRlcm5hbC5jOjEwOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21tb24u aDo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9pcC5oOjIyOgovdG1wL1VCMTYwNF9LNC40 LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJl Y2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVk LWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMTox OiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRl cHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1 Y3QgcnRlX21lbXBvb2wgKm1wKQpeCiAgQ0MgdmlydGlvX25ldC5vCjEgd2FybmluZyBnZW5lcmF0 ZWQuCiAgQVIgbGlicnRlX2lwX2ZyYWcuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9pcF9mcmFnLmEK ICBDQyB2ZHBhLm8KICBDQyB2aG9zdF9jcnlwdG8ubwo9PSBCdWlsZCBsaWIvbGlicnRlX2dybwog IFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ncm8uaAogIENDIHJ0ZV9ncm8ubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGli cnRlX2dyby9ydGVfZ3JvLmM6NjoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTog d2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90 IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAg ICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAg IF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21i dWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkK XgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIGdyb190Y3A0Lm8KSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9ncm8v Z3JvX3RjcDQuYzo2OgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5n OiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBh cnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1 cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHIn IGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZf YWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2Fy bmluZyBnZW5lcmF0ZWQuCiAgQ0MgZ3JvX3Z4bGFuX3RjcDQubwpJbiBmaWxlIGluY2x1ZGVkIGZy b20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2dyby9n cm9fdnhsYW5fdGNwNC5jOjY6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdh cm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5 ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAg IHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBe Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfZ3JvLmEKICBJTlNUQUxMLUxJQiBsaWJy dGVfZ3JvLmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9iaXRyYXRlc3RhdHMKICBBUiBsaWJydGVfdmhv c3QuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV92aG9zdC5hCi0tCiAgU1lNTElOSy1GSUxFIGluY2x1 ZGUvcnRlX2xhdGVuY3lzdGF0cy5oCiAgQ0MgcnRlX2xhdGVuY3lzdGF0cy5vCkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJy dGVfYml0cmF0ZXN0YXRzL3J0ZV9iaXRyYXRlLmM6NjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhkZXYuaDoxNTg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvaW5jbHVkZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVk IGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9t ZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2xhdGVuY3lzdGF0cy9ydGVfbGF0ZW5jeXN0YXRz LmM6MTA6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVf bWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBz dGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVf bWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0 X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJl ZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0 cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdl bmVyYXRlZC4KICBBUiBsaWJydGVfYml0cmF0ZXN0YXRzLmEKICBJTlNUQUxMLUxJQiBsaWJydGVf Yml0cmF0ZXN0YXRzLmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9rbmkKMSB3YXJuaW5nIGdlbmVyYXRl ZC4KICBBUiBsaWJydGVfbGF0ZW5jeXN0YXRzLmEKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVf a25pLmgKICBJTlNUQUxMLUxJQiBsaWJydGVfbGF0ZW5jeXN0YXRzLmEKICBDQyBydGVfa25pLm8K PT0gQnVpbGQgbGliL2xpYnJ0ZV9kaXN0cmlidXRvcgogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0 ZV9kaXN0cmlidXRvci5oCiAgQ0MgcnRlX2Rpc3RyaWJ1dG9yX3YyMC5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf a25pL3J0ZV9rbmkuYzoxNjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQu MF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9ldGhkZXYuaDoxNTg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40 LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fy bmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHll dCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAg cmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4K L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZf YnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJ biBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay9saWIvbGlicnRlX2Rpc3RyaWJ1dG9yL3J0ZV9kaXN0cmlidXRvcl92MjAuYzo4OgovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHIn IGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdk ZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIo bWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkg bWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mg cnRlX2Rpc3RyaWJ1dG9yLm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfa25pLmEK ICBJTlNUQUxMLUxJQiBsaWJydGVfa25pLmEKICBDQyBydGVfZGlzdHJpYnV0b3JfbWF0Y2hfc3Nl Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvbGliL2xpYnJ0ZV9kaXN0cmlidXRvci9ydGVfZGlzdHJpYnV0b3IuYzo4OgovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHIn IGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdk ZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIo bWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkg bWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZGlzdHJpYnV0b3Iv cnRlX2Rpc3RyaWJ1dG9yX21hdGNoX3NzZS5jOjU6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3lt Ym9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRp b25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAg ICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdy dGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBo ZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVt cG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KPT0gQnVpbGQgbGliL2xpYnJ0ZV9wZHVt cAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9wZHVtcC5oCiAgQ0MgcnRlX3BkdW1wLm8KMSB3 YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfZGlzdHJpYnV0b3IuYQogIElOU1RBTEwtTElC IGxpYnJ0ZV9kaXN0cmlidXRvci5hCj09IEJ1aWxkIGxpYi9saWJydGVfZ3NvCiAgU1lNTElOSy1G SUxFIGluY2x1ZGUvcnRlX2dzby5oCiAgQ0MgcnRlX2dzby5vCkluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL3J0 ZV9nc28uYzo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0 aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9l dGhlci5oOjIzOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAn cnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQg b2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4g cnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhh cyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRk cihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2Fybmlu ZyBnZW5lcmF0ZWQuCiAgQ0MgZ3NvX2NvbW1vbi5vCiAgQVIgbGlicnRlX3BkdW1wLmEKICBJTlNU QUxMLUxJQiBsaWJydGVfcGR1bXAuYQo9PSBCdWlsZCBsaWIvbGlicnRlX2JwZgogIFNZTUxJTkst RklMRSBpbmNsdWRlL2JwZl9kZWYuaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9icGYuaAog IFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9icGZfZXRoZGV2LmgKICBDQyBicGYubwpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIv bGlicnRlX2dzby9nc29fY29tbW9uLmM6MTE6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb19jb21tb24u aDoxMDoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0 YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9t YnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRf SzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVl biBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIENDIGdzb190Y3A0Lm8KICBDQyBicGZfZXhlYy5vCkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3Nv L2dzb190Y3A0LmM6NToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28vZ3NvX2NvbW1vbi5oOjEwOgovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHIn IGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdk ZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIo bWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkg bWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mg Z3NvX3R1bm5lbF90Y3A0Lm8KICBDQyBicGZfbG9hZC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb190 dW5uZWxfdGNwNC5jOjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBf R0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb19jb21tb24uaDoxMDoKL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1X ZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRy KG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5 IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVm ICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEND IGdzb191ZHA0Lm8KICBDQyBicGZfcGt0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28vZ3NvX3VkcDQuYzo1 OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay9saWIvbGlicnRlX2dzby9nc29fY29tbW9uLmg6MTA6Ci90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRl ZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVj bGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wp OwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5v dGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVj YXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBy dGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfZ3NvLmEK ICBJTlNUQUxMLUxJQiBsaWJydGVfZ3NvLmEKICBDQyBicGZfdmFsaWRhdGUubwo9PSBCdWlsZCBs aWIvbGlicnRlX3BvcnQKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfcG9ydC5oCi0tCiAgU1lN TElOSy1GSUxFIGluY2x1ZGUvcnRlX3BvcnRfc291cmNlX3NpbmsuaAogIFNZTUxJTkstRklMRSBp bmNsdWRlL3J0ZV9wb3J0X3N5bV9jcnlwdG8uaAogIENDIHJ0ZV9wb3J0X2V0aGRldi5vCiAgQ0Mg YnBmX2ppdF94ODYubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfZXRoZGV2LmM6NzoKL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkg Wy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9h ZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNp dGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgog IENDIHJ0ZV9wb3J0X3JpbmcubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfcmluZy5jOjc6 Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9i dWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUg QUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9i dWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQu MF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhw bGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBy dGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBBUiBsaWJydGVfYnBmLmEK ICBJTlNUQUxMLUxJQiBsaWJydGVfYnBmLmEKICBDQyBydGVfcG9ydF9mcmFnLm8KSW4gZmlsZSBp bmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xp YnJ0ZV9wb3J0L3J0ZV9wb3J0X2ZyYWcuYzo2OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX2V0aGVyLmg6MjM6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9s IGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25z XQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAg ICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVf bWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJl CnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9v bCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfcG9ydF9yYXMubwoxIHdhcm5p bmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9wb3J0X3NjaGVkLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9t IC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9wb3J0L3J0 ZV9wb3J0X3Jhcy5jOjY6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBf R0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9y dGVfZXRoZXIuaDoyMzoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fybmlu ZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBw YXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0 dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVm X2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9s aWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfc2NoZWQuYzo2OgovdG1wL1VCMTYwNF9LNC40LjBfR0ND NS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6 IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xh cmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsK ICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3Rl OiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0 ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRl X21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3BvcnRfZmQubwox IHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9wb3J0X2tuaS5vCkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9y dC9ydGVfcG9ydF9mZC5jOjg6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdh cm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5 ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAg IHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBe Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsvbGliL2xpYnJ0ZV9wb3J0L3J0ZV9wb3J0X2tuaS5jOjM4OgpJbiBmaWxlIGluY2x1ZGVkIGZy b20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2tuaS5oOjIzOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGVyLmg6MjM6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6 ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRl ZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVf bWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfcG9ydF9zb3VyY2Vf c2luay5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3BvcnRfc3ltX2NyeXB0by5vCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L2xpYi9saWJydGVfcG9ydC9ydGVfcG9ydF9zeW1fY3J5cHRvLmM6OToKSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9w b3J0L3J0ZV9wb3J0X3N5bV9jcnlwdG8uaDoyMzoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv VUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVk IGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9t ZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfc291cmNlX3NpbmsuYzo3 OgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZf YnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxl IEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZf YnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40 LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4 cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3Qg cnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0 ZWQuCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX3BvcnQuYQogIElOU1RBTEwtTElC IGxpYnJ0ZV9wb3J0LmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV90YWJsZQogIFNZTUxJTkstRklMRSBp bmNsdWRlL3J0ZV90YWJsZS5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3RhYmxlX2xwbS5o Ci0tCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3RhYmxlX2FycmF5LmgKICBTWU1MSU5LLUZJ TEUgaW5jbHVkZS9ydGVfdGFibGVfc3R1Yi5oCiAgQ0MgcnRlX3RhYmxlX2xwbS5vCiAgQ0MgcnRl X3RhYmxlX2xwbV9pcHY2Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQu MF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVfbHBtLmM6OToK L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBB QkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1 Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4w X0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUv cnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBs aWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0 ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZy b20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3RhYmxl L3J0ZV90YWJsZV9scG1faXB2Ni5jOjk6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQw Ojk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlz IG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQog ICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAg ICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0 ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAq bXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVf dGFibGVfYWNsLm8KICBDQyBydGVfdGFibGVfaGFzaF9jdWNrb28ubwpJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3Rh YmxlL3J0ZV90YWJsZV9oYXNoX2N1Y2tvby5jOjg6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3lt Ym9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRp b25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAg ICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdy dGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBo ZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVt cG9vbCAqbXApCl4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVfYWNsLmM6OToKL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1X ZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRy KG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5 IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVm ICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEND IHJ0ZV90YWJsZV9oYXNoX2tleTgubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV90YWJs ZV9oYXNoX2tleTE2Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVfaGFzaF9rZXk4LmM6 ODoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVm X2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJs ZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVm X2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBl eHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3Rh YmxlL3J0ZV90YWJsZV9oYXNoX2tleTE2LmM6ODoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4w L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1i b2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlv bnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAg ICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0 ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhl cmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1w b29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV90YWJsZV9oYXNoX2tleTMy Lm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfaGFzaF9leHQubwpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIv bGlicnRlX3RhYmxlL3J0ZV90YWJsZV9oYXNoX2tleTMyLmM6ODoKL3RtcC9VQjE2MDRfSzQuNC4w X0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUv cnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNh dGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1k ZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9v bCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTog bm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXBy ZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0 IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJsZV9oYXNoX2V4 dC5jOjk6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVf bWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBz dGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVf bWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0 X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJl ZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0 cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdl bmVyYXRlZC4KICBDQyBydGVfdGFibGVfaGFzaF9scnUubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgog IENDIHJ0ZV90YWJsZV9hcnJheS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3RhYmxlX2hhc2hf bHJ1LmM6OToKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0 ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9m IHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0 ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2 MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMg YmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIo c3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGli cnRlX3RhYmxlL3J0ZV90YWJsZV9hcnJheS5jOjk6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3lt Ym9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRp b25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAg ICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdy dGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBo ZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVt cG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfc3R1Yi5vCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L2xpYi9saWJydGVfdGFibGUvcnRlX3RhYmxlX3N0dWIuYzo3OgovdG1wL1VCMTYwNF9LNC40LjBf R0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9y dGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0 ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRl Y2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29s KTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBu b3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJl Y2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3Qg cnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCjEgd2FybmluZyBnZW5lcmF0 ZWQuCiAgQVIgbGlicnRlX3RhYmxlLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfdGFibGUuYQo9PSBC dWlsZCBsaWIvbGlicnRlX2Zsb3dfY2xhc3NpZnkKPT0gQnVpbGQgbGliL2xpYnJ0ZV9waXBlbGlu ZQogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9mbG93X2NsYXNzaWZ5LmgKLS0KICBBUiBsaWJy dGVfbWVtcG9vbF9zdGFjay5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX21lbXBvb2xfc3RhY2suYQog IENDIG9jdGVvbnR4X2ZwYXZmLm8KICBDQyBydGVfbWVtcG9vbF9vY3Rlb250eC5vCkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZl cnMvbWVtcG9vbC9vY3Rlb250eC9vY3Rlb250eF9mcGF2Zi5jOjIxOgovdG1wL1VCMTYwNF9LNC40 LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJl Y2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVk LWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMTox OiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRl cHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1 Y3QgcnRlX21lbXBvb2wgKm1wKQpeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvbWVtcG9vbC9vY3Rlb250eC9ydGVfbWVt cG9vbF9vY3Rlb250eC5jOjg6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdh cm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5 ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAg IHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBe Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBQTURJTkZPIG9jdGVvbnR4X2ZwYXZmLm8ucG1kLmMKICBD QyBvY3Rlb250eF9mcGF2Zi5vLnBtZC5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgTEQgb2N0ZW9u dHhfZnBhdmYubwogIEFSIGxpYnJ0ZV9tZW1wb29sX29jdGVvbnR4LmEKICBJTlNUQUxMLUxJQiBs aWJydGVfbWVtcG9vbF9vY3Rlb250eC5hCj09IEJ1aWxkIGRyaXZlcnMvbmV0Cj09IEJ1aWxkIGRy aXZlcnMvYmFzZWJhbmQKPT0gQnVpbGQgZHJpdmVycy9uZXQvYWZfcGFja2V0Cj09IEJ1aWxkIGRy aXZlcnMvYmFzZWJhbmQvbnVsbAogIENDIHJ0ZV9ldGhfYWZfcGFja2V0Lm8KICBDQyBiYmRldl9u dWxsLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsvZHJpdmVycy9uZXQvYWZfcGFja2V0L3J0ZV9ldGhfYWZfcGFja2V0LmM6OToKL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkg Wy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9h ZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNp dGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgog IFBNRElORk8gcnRlX2V0aF9hZl9wYWNrZXQuby5wbWQuYwogIENDIHJ0ZV9ldGhfYWZfcGFja2V0 Lm8ucG1kLm8KICBMRCBydGVfZXRoX2FmX3BhY2tldC5vCiAgQVIgbGlicnRlX3BtZF9hZl9wYWNr ZXQuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9wbWRfYWZfcGFja2V0LmEKLS0KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9u ZXQvYXJrL2Fya19ldGhkZXYuYzoxMDoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0 X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9ldGhkZXZfcGNpLmg6NDE6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfZXRoZGV2X2RyaXZlci5oOjE4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9t IC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhlci5oOjIzOgovdG1wL1VCMTYwNF9LNC40LjBfR0ND NS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjg0MDo5OiBlcnJvcjogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZXJyb3IsLVdkZXByZWNhdGVk LWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMTox OiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRl cHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1 Y3QgcnRlX21lbXBvb2wgKm1wKQpeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL29jdGVvbnR4L290eF9jcnlw dG9kZXYuYzo3OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2Ny eXB0b2Rldi5oOjIyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dD QzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X2NyeXB0by5oOjIwOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5n OiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBh cnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1 cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHIn IGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZf YWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgZXJy b3IgZ2VuZXJhdGVkLgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL21rL2lu dGVybmFsL3J0ZS5jb21waWxlLXByZS5tazoxMTQ6IHJlY2lwZSBmb3IgdGFyZ2V0ICdhcmtfZXRo ZGV2Lm8nIGZhaWxlZAptYWtlWzZdOiAqKiogW2Fya19ldGhkZXYub10gRXJyb3IgMQovdG1wL1VC MTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL21rL3J0ZS5zdWJkaXIubWs6MzU6IHJlY2lw ZSBmb3IgdGFyZ2V0ICdhcmsnIGZhaWxlZAptYWtlWzVdOiAqKiogW2Fya10gRXJyb3IgMgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL21rL3J0ZS5zdWJkaXIubWs6MzU6IHJl Y2lwZSBmb3IgdGFyZ2V0ICduZXQnIGZhaWxlZAptYWtlWzRdOiAqKiogW25ldF0gRXJyb3IgMgpt YWtlWzRdOiAqKiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLgogIENDIG90eF9jcnlw dG9kZXZfY2FwYWJpbGl0aWVzLm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBQTURJTkZPIG90eF9j cnlwdG9kZXYuby5wbWQuYwogIENDIG90eF9jcnlwdG9kZXYuby5wbWQubwogIExEIG90eF9jcnlw dG9kZXYubwo9PSBCdWlsZCBkcml2ZXJzL2NyeXB0by9zY2hlZHVsZXIKICBTWU1MSU5LLUZJTEUg aW5jbHVkZS9ydGVfY3J5cHRvZGV2X3NjaGVkdWxlcl9vcGVyYXRpb25zLmgKICBTWU1MSU5LLUZJ TEUgaW5jbHVkZS9ydGVfY3J5cHRvZGV2X3NjaGVkdWxlci5oCkluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL29j dGVvbnR4L290eF9jcnlwdG9kZXZfY2FwYWJpbGl0aWVzLmM6NToKSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXBy ZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRl ZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+ cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6 MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBk ZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3Ry dWN0IHJ0ZV9tZW1wb29sICptcCkKXgogIENDIHNjaGVkdWxlcl9wbWQubwoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIENDIG90eF9jcnlwdG9kZXZfaHdfYWNjZXNzLm8KICBDQyBvdHhfY3J5cHRvZGV2 X21ib3gubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4w L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by9zY2hlZHVsZXIvc2NoZWR1bGVyX3BtZC5jOjY6Cklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6 CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6 Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9i dWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUg QUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9i dWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQu MF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhw bGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBy dGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBDQyBvdHhfY3J5cHRvZGV2 X29wcy5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mgc2NoZWR1bGVyX3BtZF9vcHMubwpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9k cml2ZXJzL2NyeXB0by9vY3Rlb250eC9vdHhfY3J5cHRvZGV2X29wcy5jOjc6CkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicg aXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2Rl cHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkciht ZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBt YXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv VUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9jcnlwdG8vc2NoZWR1bGVy L3NjaGVkdWxlcl9wbWRfb3BzLmM6OToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0 X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIx NjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4 NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wg aXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNd CiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAg ICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUK cnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29s ICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9jcnlwdG9kZXZfc2NoZWR1bGVy Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvZHJpdmVycy9jcnlwdG8vc2NoZWR1bGVyL3J0ZV9jcnlwdG9kZXZfc2NoZWR1bGVyLmM6 NDoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9yZW9yZGVyLmg6 MTg6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0 LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4g ZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVj dCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVy YXRlZC4KICBDQyBzY2hlZHVsZXJfcm91bmRyb2Jpbi5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL3NjaGVk dWxlci9zY2hlZHVsZXJfcm91bmRyb2Jpbi5jOjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv dG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6 ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRl ZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVf bWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBzY2hlZHVsZXJfcGt0X3Np emVfZGlzdHIubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by9zY2hlZHVsZXIvc2NoZWR1bGVyX3BrdF9zaXpl X2Rpc3RyLmM6NToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9j cnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9H Q0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9jcnlwdG8uaDoyMDoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fybmlu ZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBw YXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0 dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVm X2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdh cm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9wbWRfb2N0ZW9udHhfY3J5cHRvLmEKICBJTlNU QUxMLUxJQiBsaWJydGVfcG1kX29jdGVvbnR4X2NyeXB0by5hCj09IEJ1aWxkIGRyaXZlcnMvY3J5 cHRvL251bGwKICBDQyBudWxsX2NyeXB0b19wbWQubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEND IHNjaGVkdWxlcl9mYWlsb3Zlci5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9L NC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL251bGwvbnVsbF9jcnlwdG9f cG1kLmM6NjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQu MC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlw dG9kZXZfcG1kLmg6MjU6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5p bmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQg cGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJl dHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRk cicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1 Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv ZHJpdmVycy9jcnlwdG8vc2NoZWR1bGVyL3NjaGVkdWxlcl9mYWlsb3Zlci5jOjU6CkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAv VUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRk cicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFst V2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRk cihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1 LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRs eSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1 ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBQ TURJTkZPIG51bGxfY3J5cHRvX3BtZC5vLnBtZC5jCiAgQ0MgbnVsbF9jcnlwdG9fcG1kLm8ucG1k Lm8KICBMRCBudWxsX2NyeXB0b19wbWQubwogIENDIG51bGxfY3J5cHRvX3BtZF9vcHMubwoxIHdh cm5pbmcgZ2VuZXJhdGVkLgogIENDIHNjaGVkdWxlcl9tdWx0aWNvcmUubwpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2Ny eXB0by9udWxsL251bGxfY3J5cHRvX3BtZF9vcHMuYzo5OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0b2Rldl9wbWQuaDoyNToKL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXBy ZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRl ZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+ cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6 MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBk ZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3Ry dWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9w bWRfbnVsbF9jcnlwdG8uYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9wbWRfbnVsbF9jcnlwdG8uYQo9 PSBCdWlsZCBkcml2ZXJzL2NyeXB0by9kcGFhMl9zZWMKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9jcnlwdG8vc2NoZWR1 bGVyL3NjaGVkdWxlcl9tdWx0aWNvcmUuYzo2OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9V QjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX2NyeXB0b2Rldi5oOjIyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40 LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5 bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0 aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAg ICAgICAgICAgICAgXgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQg aGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21l bXBvb2wgKm1wKQpeCiAgQ0MgZHBhYTJfc2VjX2Rwc2VjaS5vCjEgd2FybmluZyBnZW5lcmF0ZWQu CiAgQVIgbGlicnRlX3BtZF9jcnlwdG9fc2NoZWR1bGVyLmEKICBJTlNUQUxMLUxJQiBsaWJydGVf cG1kX2NyeXB0b19zY2hlZHVsZXIuYQo9PSBCdWlsZCBkcml2ZXJzL2NyeXB0by9kcGFhX3NlYwog IENDIGRwYWFfc2VjLm8KICBQTURJTkZPIGRwYWFfc2VjLm8ucG1kLmMKLS0KICBJTlNUQUxMLUxJ QiBsaWJydGVfcG1kX2RwYWEyX3NlYy5hCiAgQ0MgY2FhbV9qcl9jYXBhYmlsaXRpZXMubwo9PSBC dWlsZCBkcml2ZXJzL2NyeXB0by92aXJ0aW8KICBDQyB2aXJ0cXVldWUubwpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2Ny eXB0by92aXJ0aW8vdmlydHF1ZXVlLmM6NzoKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4 NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wg aXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNd CiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAg ICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUK cnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29s ICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHZpcnRpb19wY2kubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJz L2NyeXB0by92aXJ0aW8vdmlydGlvX3BjaS5jOjE1OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by92aXJ0aW8v dmlydGlvX3BjaS5oOjEyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQuNC4w X0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUv cnRlX2NyeXB0b2Rldi5oOjIyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2MDRfSzQu NC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3 YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3Qg eWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAg ICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAg XgovdG1wL1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVm X2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1 Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpe CjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgdmlydGlvX3J4dHgubwpJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0 by92aXJ0aW8vdmlydGlvX3J4dHguYzo0OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9VQjE2 MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX2NyeXB0b2Rldl9wbWQuaDoyNToKL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUu NC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KL3RtcC9VQjE2MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVk IGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9t ZW1wb29sICptcCkKXgogIFBNRElORk8gY2FhbV9qci5vLnBtZC5jCiAgQ0MgY2FhbV9qci5vLnBt ZC5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgdmlydGlvX2NyeXB0b2Rldi5vCiAgTEQgY2Fh bV9qci5vCiAgQ0MgY2FhbV9qcl9ody5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYw NF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL3ZpcnRpby92aXJ0aW9f Y3J5cHRvZGV2LmM6MTE6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40LjBf R0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9y dGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL1VCMTYwNF9LNC40 LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdh cm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5 ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAg IHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBe Ci90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K ICBDQyBjYWFtX2pyX3Vpby5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgUE1ESU5GTyB2aXJ0aW9f Y3J5cHRvZGV2Lm8ucG1kLmMKICBDQyB2aXJ0aW9fY3J5cHRvZGV2Lm8ucG1kLm8KICBMRCB2aXJ0 aW9fY3J5cHRvZGV2Lm8KICBBUiBsaWJydGVfcG1kX3ZpcnRpb19jcnlwdG8uYQogIElOU1RBTEwt TElCIGxpYnJ0ZV9wbWRfdmlydGlvX2NyeXB0by5hCiAgQVIgbGlicnRlX3BtZF9jYWFtX2pyLmEK ICBJTlNUQUxMLUxJQiBsaWJydGVfcG1kX2NhYW1fanIuYQovdG1wL1VCMTYwNF9LNC40LjBfR0ND NS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL21rL3J0ZS5zZGtidWlsZC5tazo0OTogcmVjaXBlIGZvciB0YXJnZXQg J2RyaXZlcnMnIGZhaWxlZAptYWtlWzNdOiAqKiogW2RyaXZlcnNdIEVycm9yIDIKL3RtcC9VQjE2 MDRfSzQuNC4wX0dDQzUuNC4wL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9tay9ydGUuc2Rrcm9vdC5tazoxMDA6IHJlY2lw ZSBmb3IgdGFyZ2V0ICdhbGwnIGZhaWxlZAptYWtlWzJdOiAqKiogW2FsbF0gRXJyb3IgMgovdG1w L1VCMTYwNF9LNC40LjBfR0NDNS40LjAveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL21rL3J0ZS5zZGtpbnN0YWxsLm1rOjU3 OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwnIGZhaWxlZAptYWtlWzFdOiAqKiogW3By ZV9pbnN0YWxsXSBFcnJvciAyCi90bXAvVUIxNjA0X0s0LjQuMF9HQ0M1LjQuMC94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv bWsvcnRlLnNka3Jvb3QubWs6Nzk6IHJlY2lwZSBmb3IgdGFyZ2V0ICdpbnN0YWxsJyBmYWlsZWQK bWFrZTogKioqIFtpbnN0YWxsXSBFcnJvciAyCgoqRmFpbGVkIEJ1aWxkICMyOgpPUzogQ0VOVE9T ClRhcmdldDogeDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZwogIENDIHJ0ZV9tYnVmLm8KICBB UiBsaWJydGVfbHBtLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfbHBtLmEKICBDQyBydGVfbWJ1Zl9w dHlwZS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX21idWYvcnRlX21idWYuYzoyODoKL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVw cmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0 ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQt PnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgw MToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVm X2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv bGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmX3B0eXBlLmM6NzoKL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRl ZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVj bGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wp OwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBu b3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIo c3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcg Z2VuZXJhdGVkLgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9tYnVmX3Bvb2xfb3BzLm8K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL2xpYi9saWJydGVfbWJ1Zi9ydGVfbWJ1Zl9wb29sX29wcy5jOjg6Ci90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRl cHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNh dGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1k LT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4 MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1 Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3 YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfbWJ1Zi5hCiAgSU5TVEFMTC1MSUIgbGlicnRl X21idWYuYQo9PSBCdWlsZCBsaWIvbGlicnRlX2JiZGV2Cj09IEJ1aWxkIGxpYi9saWJydGVfbmV0 CiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2lwLmgKLS0KICBTWU1MSU5LLUZJTEUgaW5jbHVk ZS9ydGVfY29tcC5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2NvbXByZXNzZGV2LmgKICBT WU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfY29tcHJlc3NkZXZfcG1kLmgKICBTWU1MSU5LLUZJTEUg aW5jbHVkZS9ydGVfY29tcHJlc3NkZXZfaW50ZXJuYWwuaApJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9jcnlwdG9k ZXYvcnRlX2NyeXB0b2Rldi5jOjM1OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6 OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMg bm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAg ICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAg ICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1 Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21i dWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCiAgQ0MgcnRlX2NvbXByZXNzZGV2Lm8K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfY3J5cHRvZGV2X3BtZC5vCiAgQ0MgcnRlX2Nv bXByZXNzZGV2X3BtZC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4w X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRvZGV2X3Bt ZC5jOjc6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRvZGV2X3BtZC5oOjI1Ogov dG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBB QkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1 Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVy ZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBv b2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX2NyeXB0b2Rldi5hCiAg SU5TVEFMTC1MSUIgbGlicnRlX2NyeXB0b2Rldi5hCj09IEJ1aWxkIGxpYi9saWJydGVfc2NoZWQK ICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfc2NoZWQuaAogIFNZTUxJTkstRklMRSBpbmNsdWRl L3J0ZV9zY2hlZF9jb21tb24uaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9yZWQuaAogIFNZ TUxJTkstRklMRSBpbmNsdWRlL3J0ZV9hcHByb3guaAogIENDIHJ0ZV9jb21wLm8KICBDQyBydGVf c2NoZWQubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9zY2hlZC9ydGVfc2NoZWQuYzoxNToKL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMg ZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJl Y2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwg bWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5o OjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZf YnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgox IHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9yZWQubwogIEFSIGxpYnJ0ZV9jb21wcmVzc2Rl di5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2NvbXByZXNzZGV2LmEKICBDQyBydGVfYXBwcm94Lm8K PT0gQnVpbGQgbGliL2xpYnJ0ZV9yZW9yZGVyCi0tCj09IEJ1aWxkIGxpYi9saWJydGVfZXRoZGV2 CiAgQ0MgcnRlX3Jlb3JkZXIubwogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ldGhkZXYuaAog IFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ldGhkZXZfZHJpdmVyLmgKSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf cmVvcmRlci9ydGVfcmVvcmRlci5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0 MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10K ICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAg ICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVf bWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBTWU1MSU5LLUZJTEUgaW5jbHVk ZS9ydGVfZXRoZGV2X2NvcmUuaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ldGhkZXZfcGNp LmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZXRoZGV2X3ZkZXYuaAogIFNZTUxJTkstRklM RSBpbmNsdWRlL3J0ZV9ldGhfY3RybC5oCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgU1lNTElOSy1G SUxFIGluY2x1ZGUvcnRlX2Rldl9pbmZvLmgKICBBUiBsaWJydGVfcmVvcmRlci5hCiAgSU5TVEFM TC1MSUIgbGlicnRlX3Jlb3JkZXIuYQogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9mbG93LmgK ICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZmxvd19kcml2ZXIuaAotLQogIFNZTUxJTkstRklM RSBpbmNsdWRlL3J0ZV9ldmVudF90aW1lcl9hZGFwdGVyLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVk ZS9ydGVfZXZlbnRfdGltZXJfYWRhcHRlcl9wbWQuaApJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9zZWN1cml0eS9y dGVfc2VjdXJpdHkuYzo5OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9zZWN1cml0eS9ydGVfc2VjdXJpdHkuaDoy ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6 MjA6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21i dWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3Rh YmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21i dWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJl ZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVf bWVtcG9vbCAqbXApCl4KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZXZlbnRfY3J5cHRvX2Fk YXB0ZXIuaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ldmVudF9ldGhfdHhfYWRhcHRlci5o CiAgQ0MgcnRlX2V2ZW50ZGV2Lm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfc2Vj dXJpdHkuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9zZWN1cml0eS5hCiAgQ0MgcnRlX2V2ZW50X3Jp bmcubwogIENDIHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlci5vCiAgQ0MgcnRlX2V2ZW50X3RpbWVy X2FkYXB0ZXIubwotLQogIENDIGlvdGxiLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXB2 NF9mcmFnbWVudGF0aW9uLmM6MTI6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21t b24uaDo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcF9mcmFnLmg6MjU6CkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2lwLmg6MjI6Ci90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlz IGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXBy ZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQs IG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfaXB2Nl9mcmFnbWVudGF0aW9uLm8KSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xp Yi9saWJydGVfaXBfZnJhZy9ydGVfaXB2Nl9mcmFnbWVudGF0aW9uLmM6MTA6CkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGli cnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21tb24uaDo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0 ZV9pcF9mcmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4w X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUv cnRlX2lwLmg6MjI6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5n OiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBh cnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1 cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0 cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBzb2NrZXQu bwogIENDIHJ0ZV9pcHY0X3JlYXNzZW1ibHkubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9D RU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9p cHY0X3JlYXNzZW1ibHkuYzo5OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL2lwX2ZyYWdfY29tbW9u Lmg6ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXBfZnJhZy5oOjI1OgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9pcC5oOjIyOgovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBk ZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVj YXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBt ZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9i dWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEg d2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX2lwdjZfcmVhc3NlbWJseS5vCkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGli cnRlX2lwX2ZyYWcvcnRlX2lwdjZfcmVhc3NlbWJseS5jOjk6CkluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2Zy YWcvaXBfZnJhZ19jb21tb24uaDo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcF9mcmFn Lmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2lwLmg6 MjI6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21i dWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3Rh YmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21i dWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJl ZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVf bWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfaXBfZnJhZ19jb21t b24ubwogIENDIHZob3N0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXBfZnJhZ19jb21t b24uYzoxMToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9pcF9mcmFnX2NvbW1vbi5oOjg6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9s aWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBpbmNsdWRlZCBmcm9t IC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfaXAuaDoyMjoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3Rl OiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIENDIGlwX2ZyYWdfaW50ZXJuYWwubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL2lw X2ZyYWdfaW50ZXJuYWwuYzoxMDoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9pcF9mcmFnX2NvbW1v bi5oOjg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBp bmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfaXAuaDoyMjoKL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMg ZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJl Y2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwg bWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5o OjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZf YnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgox IHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9pcF9mcmFnLmEKICBJTlNUQUxMLUxJQiBs aWJydGVfaXBfZnJhZy5hCj09IEJ1aWxkIGxpYi9saWJydGVfZ3JvCiAgU1lNTElOSy1GSUxFIGlu Y2x1ZGUvcnRlX2dyby5oCiAgQ0Mgdmhvc3RfdXNlci5vCiAgQ0MgcnRlX2dyby5vCkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIv bGlicnRlX2dyby9ydGVfZ3JvLmM6NjoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQw Ojk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlz IG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQog ICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAg ICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21i dWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgog IENDIGdyb190Y3A0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3JvL2dyb190Y3A0LmM6NjoKL3RtcC9DRU5U T1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicg aXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2Rl cHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkciht ZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21i dWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkK XgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIGdyb192eGxhbl90Y3A0Lm8KICBDQyB2aXJ0aW9f bmV0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3JvL2dyb192eGxhbl90Y3A0LmM6NjoKL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMg ZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJl Y2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwg bWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5o OjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZf YnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgox IHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9ncm8uYQogIElOU1RBTEwtTElCIGxpYnJ0 ZV9ncm8uYQo9PSBCdWlsZCBsaWIvbGlicnRlX2JpdHJhdGVzdGF0cwogIFNZTUxJTkstRklMRSBp bmNsdWRlL3J0ZV9iaXRyYXRlLmgKICBDQyBydGVfYml0cmF0ZS5vCkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2Jp dHJhdGVzdGF0cy9ydGVfYml0cmF0ZS5jOjY6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NF TlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX2V0aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3lt Ym9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRp b25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAg ICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIEFSIGxpYnJ0ZV9iaXRyYXRlc3RhdHMuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9iaXRy YXRlc3RhdHMuYQo9PSBCdWlsZCBsaWIvbGlicnRlX2xhdGVuY3lzdGF0cwogIFNZTUxJTkstRklM RSBpbmNsdWRlL3J0ZV9sYXRlbmN5c3RhdHMuaAogIENDIHJ0ZV9sYXRlbmN5c3RhdHMubwpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv bGliL2xpYnJ0ZV9sYXRlbmN5c3RhdHMvcnRlX2xhdGVuY3lzdGF0cy5jOjEwOgovdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBp cyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVw cmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1k LCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1 Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpe CjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX2xhdGVuY3lzdGF0cy5hCiAgSU5TVEFM TC1MSUIgbGlicnRlX2xhdGVuY3lzdGF0cy5hCj09IEJ1aWxkIGxpYi9saWJydGVfa25pCiAgU1lN TElOSy1GSUxFIGluY2x1ZGUvcnRlX2tuaS5oCiAgQ0MgcnRlX2tuaS5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRl X2tuaS9ydGVfa25pLmM6MTY6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX2V0aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6 IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5v dCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAg ICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAg ICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZf YnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVm ICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFS IGxpYnJ0ZV9rbmkuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9rbmkuYQo9PSBCdWlsZCBsaWIvbGli cnRlX2Rpc3RyaWJ1dG9yCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2Rpc3RyaWJ1dG9yLmgK ICBDQyBydGVfZGlzdHJpYnV0b3JfdjIwLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZGlzdHJpYnV0b3IvcnRl X2Rpc3RyaWJ1dG9yX3YyMC5jOjg6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVm X2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1 ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBD QyBydGVfZGlzdHJpYnV0b3IubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9kaXN0cmlidXRvci9ydGVfZGlzdHJp YnV0b3IuYzo4OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0 IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJu IHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9D RU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicg ZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1 Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX2Rpc3Ry aWJ1dG9yX21hdGNoX3NzZS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2Rpc3RyaWJ1dG9yL3J0ZV9kaXN0cmli dXRvcl9tYXRjaF9zc2UuYzo1OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTog d2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90 IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAg ICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAg IF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9i dWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQVIg bGlicnRlX2Rpc3RyaWJ1dG9yLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfZGlzdHJpYnV0b3IuYQog IENDIHZkcGEubwogIENDIHZob3N0X2NyeXB0by5vCj09IEJ1aWxkIGxpYi9saWJydGVfcGR1bXAK LS0KICBJTlNUQUxMLUxJQiBsaWJydGVfdmhvc3QuYQogIENDIGdzb19jb21tb24ubwpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGli L2xpYnJ0ZV9nc28vcnRlX2dzby5jOjg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX2V0aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9s IGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25z XQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAg ICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRl X21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0 ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVk LgogIENDIGdzb190Y3A0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb19jb21tb24uYzoxMToKSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L2xpYi9saWJydGVfZ3NvL2dzb19jb21tb24uaDoxMDoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3Rl OiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0 ZV9nc28vZ3NvX3RjcDQuYzo1OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28vZ3NvX2NvbW1vbi5oOjEwOgov dG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBB QkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1 Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVy ZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBv b2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mg Z3NvX3R1bm5lbF90Y3A0Lm8KICBDQyBnc29fdWRwNC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv dG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2dzby9nc29f dHVubmVsX3RjcDQuYzo1OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28vZ3NvX2NvbW1vbi5oOjEwOgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkg Wy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9h ZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpy dGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wg Km1wKQpeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX2dzby9nc29fdWRwNC5jOjU6CkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2dz by9nc29fY29tbW9uLmg6MTA6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3 YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3Qg eWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAg ICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAg XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KMSB3YXJu aW5nIGdlbmVyYXRlZC4KPT0gQnVpbGQgbGliL2xpYnJ0ZV9icGYKICBBUiBsaWJydGVfZ3NvLmEK ICBJTlNUQUxMLUxJQiBsaWJydGVfZ3NvLmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9wb3J0CiAgU1lN TElOSy1GSUxFIGluY2x1ZGUvYnBmX2RlZi5oCi0tCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRl X3BvcnRfc291cmNlX3NpbmsuaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9wb3J0X3N5bV9j cnlwdG8uaAogIENDIHJ0ZV9wb3J0X2V0aGRldi5vCiAgQ0MgYnBmX2V4ZWMubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xp YnJ0ZV9wb3J0L3J0ZV9wb3J0X2V0aGRldi5jOjc6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5 bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0 aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAg ICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVj dCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVy YXRlZC4KICBDQyBydGVfcG9ydF9yaW5nLm8KICBDQyBicGZfbG9hZC5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRl X3BvcnQvcnRlX3BvcnRfcmluZy5jOjc6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0 MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10K ICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAg ICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVf bWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBDQyBicGZfcGt0Lm8KMSB3YXJu aW5nIGdlbmVyYXRlZC4KICBDQyBydGVfcG9ydF9mcmFnLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9t IC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9ydC9y dGVfcG9ydF9mcmFnLmM6NjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdh cm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5 ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAg IHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBe Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVm X2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICpt Yiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgogIENDIGJwZl92YWxpZGF0ZS5vCjEgd2Fybmlu ZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3BvcnRfcmFzLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9ydC9ydGVf cG9ydF9yYXMuYzo2OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9ldGhlci5oOjIzOgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fybmlu ZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBw YXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0 dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRk cicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBz dHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3Bv cnRfc2NoZWQubwogIENDIGJwZl9qaXRfeDg2Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9ydC9ydGVfcG9y dF9zY2hlZC5jOjY6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5n OiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBh cnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1 cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0 cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfcG9y dF9mZC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfZmQuYzo4OgovdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBk ZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVj YXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBt ZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9i dWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEg d2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3BvcnRfa25pLm8KSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9y dC9ydGVfcG9ydF9rbmkuYzozODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfa25pLmg6MjM6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX2V0aGVyLmg6MjM6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3 YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3Qg eWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAg ICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAg XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBy dGVfcG9ydF9zb3VyY2Vfc2luay5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfc291cmNl X3NpbmsuYzo3OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0 IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJu IHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9D RU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicg ZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1 Y3QgcnRlX21lbXBvb2wgKm1wKQpeCi0tCiAgQ0MgcnRlX3BvcnRfc3ltX2NyeXB0by5vCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9s aWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfc3ltX2NyeXB0by5jOjk6CkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3Bv cnQvcnRlX3BvcnRfc3ltX2NyeXB0by5oOjIzOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9D RU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6 IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xh cmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsK ICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90 ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0 cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdl bmVyYXRlZC4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfcG9ydC5hCiAgSU5TVEFM TC1MSUIgbGlicnRlX3BvcnQuYQo9PSBCdWlsZCBsaWIvbGlicnRlX3RhYmxlCiAgU1lNTElOSy1G SUxFIGluY2x1ZGUvcnRlX3RhYmxlLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfdGFibGVf bHBtLmgKLS0KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfdGFibGVfc3R1Yi5oCiAgU1lNTElO Sy1GSUxFIGluY2x1ZGUvcnRlX3RhYmxlX2FycmF5LmgKICBDQyBydGVfdGFibGVfbHBtLm8KICBD QyBydGVfdGFibGVfbHBtX2lwdjYubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVfbHBt LmM6OToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVf bWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBz dGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVf bWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xh cmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0 ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVfbHBtX2lwdjYu Yzo5OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0 YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9t YnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1Nf SzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFy ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRl X21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCjEgd2FybmluZyBnZW5lcmF0ZWQu CiAgQ0MgcnRlX3RhYmxlX2FjbC5vCiAgQ0MgcnRlX3RhYmxlX2hhc2hfY3Vja29vLm8KSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xp Yi9saWJydGVfdGFibGUvcnRlX3RhYmxlX2FjbC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6 IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xh cmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsK ICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90 ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0 cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJy dGVfdGFibGUvcnRlX3RhYmxlX2hhc2hfY3Vja29vLmM6ODoKL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRl ZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVj bGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wp OwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBu b3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIo c3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcg Z2VuZXJhdGVkLgogIENDIHJ0ZV90YWJsZV9oYXNoX2tleTgubwoxIHdhcm5pbmcgZ2VuZXJhdGVk LgogIENDIHJ0ZV90YWJsZV9oYXNoX2tleTE2Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3Rh YmxlX2hhc2hfa2V5OC5jOjg6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3 YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3Qg eWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAg ICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAg XgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3Rh YmxlX2hhc2hfa2V5MTYuYzo4OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTog d2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90 IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAg ICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAg IF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9i dWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mg cnRlX3RhYmxlX2hhc2hfa2V5MzIubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV90YWJs ZV9oYXNoX2V4dC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJsZV9oYXNoX2tleTMyLmM6 ODoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVk IGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9t ZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVfaGFzaF9leHQuYzo5 OgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVm X2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJs ZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVm X2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQg aGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21l bXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3RhYmxlX2hhc2hfbHJ1 Lm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfYXJyYXkubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xp YnJ0ZV90YWJsZS9ydGVfdGFibGVfaGFzaF9scnUuYzo5OgovdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVk OiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNs YXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7 CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5v dGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihz dHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGli cnRlX3RhYmxlL3J0ZV90YWJsZV9hcnJheS5jOjk6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5 bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0 aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAg ICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVj dCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVy YXRlZC4KICBDQyBydGVfdGFibGVfc3R1Yi5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NF TlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJs ZV9zdHViLmM6NzoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6 ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFy dCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVy biBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHIn IGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3Ry dWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIEFSIGxpYnJ0ZV90YWJsZS5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX3RhYmxlLmEK PT0gQnVpbGQgbGliL2xpYnJ0ZV9waXBlbGluZQo9PSBCdWlsZCBsaWIvbGlicnRlX2Zsb3dfY2xh c3NpZnkKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZmxvd19jbGFzc2lmeS5oCi0tCj09IEJ1 aWxkIGRyaXZlcnMvbWVtcG9vbC9zdGFjawo9PSBCdWlsZCBkcml2ZXJzL21lbXBvb2wvb2N0ZW9u dHgKICBDQyBydGVfbWVtcG9vbF9zdGFjay5vCiAgQ0Mgb2N0ZW9udHhfZnBhdmYubwpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJp dmVycy9tZW1wb29sL29jdGVvbnR4L29jdGVvbnR4X2ZwYXZmLmM6MjE6Ci90bXAvQ0VOVE9TX0sz LjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRl cHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNh dGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1k LT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4 MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1 Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBB UiBsaWJydGVfbWVtcG9vbF9zdGFjay5hCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgUE1ESU5GTyBv Y3Rlb250eF9mcGF2Zi5vLnBtZC5jCiAgQ0Mgb2N0ZW9udHhfZnBhdmYuby5wbWQubwogIExEIG9j dGVvbnR4X2ZwYXZmLm8KICBDQyBydGVfbWVtcG9vbF9vY3Rlb250eC5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL21l bXBvb2wvb2N0ZW9udHgvcnRlX21lbXBvb2xfb2N0ZW9udHguYzo4OgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXBy ZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRl ZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+ cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAx OjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZf YWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2Fy bmluZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX21lbXBvb2xfb2N0ZW9udHguYQogIElOU1RBTEwt TElCIGxpYnJ0ZV9tZW1wb29sX29jdGVvbnR4LmEKICBJTlNUQUxMLUxJQiBsaWJydGVfbWVtcG9v bF9zdGFjay5hCj09IEJ1aWxkIGRyaXZlcnMvbmV0Cj09IEJ1aWxkIGRyaXZlcnMvYmFzZWJhbmQK PT0gQnVpbGQgZHJpdmVycy9uZXQvYWZfcGFja2V0Cj09IEJ1aWxkIGRyaXZlcnMvYmFzZWJhbmQv bnVsbAogIENDIHJ0ZV9ldGhfYWZfcGFja2V0Lm8KICBDQyBiYmRldl9udWxsLm8KSW4gZmlsZSBp bmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZl cnMvbmV0L2FmX3BhY2tldC9ydGVfZXRoX2FmX3BhY2tldC5jOjk6Ci90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJl Y2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVk LWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6 MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9h ZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBQTURJ TkZPIGJiZGV2X251bGwuby5wbWQuYwogIENDIGJiZGV2X251bGwuby5wbWQubwogIExEIGJiZGV2 X251bGwubwogIEFSIGxpYnJ0ZV9wbWRfYmJkZXZfbnVsbC5hCjEgd2FybmluZyBnZW5lcmF0ZWQu CiAgUE1ESU5GTyBydGVfZXRoX2FmX3BhY2tldC5vLnBtZC5jCiAgSU5TVEFMTC1MSUIgbGlicnRl X3BtZF9iYmRldl9udWxsLmEKICBDQyBydGVfZXRoX2FmX3BhY2tldC5vLnBtZC5vCj09IEJ1aWxk IGRyaXZlcnMvY3J5cHRvCiAgTEQgcnRlX2V0aF9hZl9wYWNrZXQubwotLQogIENDIG90eF9jcnlw dG9kZXYubwogIENDIGFya19ldGhkZXYubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5U T1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9jcnlwdG8vb2N0ZW9udHgvb3R4 X2NyeXB0b2Rldi5jOjc6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4w X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUv cnRlX2NyeXB0b2Rldi5oOjIyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMu MTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6 IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5v dCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAg ICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAg ICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZf YnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVm ICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9uZXQvYXJrL2Fya19l dGhkZXYuYzoxMDoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf ZXRoZGV2X3BjaS5oOjQxOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9ldGhkZXZfZHJpdmVyLmg6MTg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX2V0aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODQwOjk6IGVycm9yOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdlcnJvciwtV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3Rl OiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIFBNRElORk8gb3R4X2NyeXB0b2Rldi5vLnBtZC5jCiAgQ0Mgb3R4X2NyeXB0b2Rl di5vLnBtZC5vCjEgZXJyb3IgZ2VuZXJhdGVkLgptYWtlWzZdOiAqKiogW2Fya19ldGhkZXYub10g RXJyb3IgMQptYWtlWzVdOiAqKiogW2Fya10gRXJyb3IgMgptYWtlWzRdOiAqKiogW25ldF0gRXJy b3IgMgptYWtlWzRdOiAqKiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLgogIENDIG90 eF9jcnlwdG9kZXZfY2FwYWJpbGl0aWVzLm8KLS0KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVf Y3J5cHRvZGV2X3NjaGVkdWxlci5oCiAgQ0Mgc2NoZWR1bGVyX3BtZC5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2Ny eXB0by9vY3Rlb250eC9vdHhfY3J5cHRvZGV2X2NhcGFiaWxpdGllcy5jOjU6CkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0b2Rldi5oOjIyOgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9D RU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRk cicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFst V2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRk cihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRl X21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICpt cCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIG90eF9jcnlwdG9kZXZfaHdfYWNjZXNzLm8K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL2RyaXZlcnMvY3J5cHRvL3NjaGVkdWxlci9zY2hlZHVsZXJfcG1kLmM6NjoKSW4gZmlsZSBp bmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkg Wy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9h ZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpy dGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wg Km1wKQpeCiAgQ0Mgb3R4X2NyeXB0b2Rldl9tYm94Lm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBD QyBzY2hlZHVsZXJfcG1kX29wcy5vCiAgQ0Mgb3R4X2NyeXB0b2Rldl9vcHMubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVy cy9jcnlwdG8vb2N0ZW9udHgvb3R4X2NyeXB0b2Rldl9vcHMuYzo3OgpJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlz IGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXBy ZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQs IG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL2RyaXZlcnMvY3J5cHRvL3NjaGVkdWxlci9zY2hlZHVsZXJfcG1kX29wcy5jOjk6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0b2Rldi5oOjIyOgpJ biBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoK L3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9i dWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUg QUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9i dWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEw LjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhl cmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1w b29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9jcnlwdG9kZXZfc2NoZWR1 bGVyLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL3NjaGVkdWxlci9ydGVfY3J5cHRvZGV2X3NjaGVkdWxl ci5jOjQ6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX3Jlb3Jk ZXIuaDoxODoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdy dGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBv ZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBy dGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VO VE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRl Y2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0 IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHNjaGVkdWxlcl9y b3VuZHJvYmluLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL3NjaGVkdWxlci9zY2hlZHVsZXJfcm91bmRy b2Jpbi5jOjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQu OC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2Ny eXB0b2Rldi5oOjIyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9jcnlwdG8uaDoyMDoKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5p bmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQg cGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJl dHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90 bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2Fk ZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwg c3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHNjaGVk dWxlcl9wa3Rfc2l6ZV9kaXN0ci5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19L My4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by9zY2hlZHVsZXIvc2NoZWR1 bGVyX3BrdF9zaXplX2Rpc3RyLmM6NToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NF TlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1i b2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlv bnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAg ICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdy dGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3Qg cnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0 ZWQuCiAgQ0Mgc2NoZWR1bGVyX2ZhaWxvdmVyLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL3NjaGVkdWxl ci9zY2hlZHVsZXJfZmFpbG92ZXIuYzo1OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5U T1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv Q0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5 bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0 aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAg ICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVj dCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVy YXRlZC4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBzY2hlZHVsZXJfbXVsdGljb3JlLm8KICBB UiBsaWJydGVfcG1kX29jdGVvbnR4X2NyeXB0by5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX3BtZF9v Y3Rlb250eF9jcnlwdG8uYQo9PSBCdWlsZCBkcml2ZXJzL2NyeXB0by9udWxsCiAgQ0MgbnVsbF9j cnlwdG9fcG1kLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL3NjaGVkdWxlci9zY2hlZHVsZXJfbXVsdGlj b3JlLmM6NjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5 cHRvZGV2Lmg6MjI6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X2NyeXB0by5oOjIwOgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fybmlu ZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBw YXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0 dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3Rt cC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRk cicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBz dHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by9udWxsL251bGxfY3J5 cHRvX3BtZC5jOjY6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X2NyeXB0b2Rldl9wbWQuaDoyNToKL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6 IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5v dCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAg ICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAg ICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZf YnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVm ICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgoxIHdh cm5pbmcgZ2VuZXJhdGVkLgogIFBNRElORk8gbnVsbF9jcnlwdG9fcG1kLm8ucG1kLmMKICBBUiBs aWJydGVfcG1kX2NyeXB0b19zY2hlZHVsZXIuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9wbWRfY3J5 cHRvX3NjaGVkdWxlci5hCj09IEJ1aWxkIGRyaXZlcnMvY3J5cHRvL2RwYWEyX3NlYwogIENDIG51 bGxfY3J5cHRvX3BtZC5vLnBtZC5vCiAgTEQgbnVsbF9jcnlwdG9fcG1kLm8KICBDQyBkcGFhMl9z ZWNfZHBzZWNpLm8KICBDQyBudWxsX2NyeXB0b19wbWRfb3BzLm8KSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRv L251bGwvbnVsbF9jcnlwdG9fcG1kX29wcy5jOjk6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0b2Rldl9wbWQuaDoyNToKL3RtcC9DRU5UT1NfSzMuMTAu MF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVj YXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQt ZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBv b2wpOwogICAgICAgICAgICAgICBeCi90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMTox OiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2Fk ZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5p bmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9wbWRfbnVsbF9jcnlwdG8uYQogIElOU1RBTEwtTElC IGxpYnJ0ZV9wbWRfbnVsbF9jcnlwdG8uYQo9PSBCdWlsZCBkcml2ZXJzL2NyeXB0by9kcGFhX3Nl YwogIENDIGRwYWFfc2VjLm8KICBQTURJTkZPIGRwYWFfc2VjLm8ucG1kLmMKLS0KICBBUiBsaWJy dGVfcG1kX2RwYWEyX3NlYy5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX3BtZF9kcGFhMl9zZWMuYQo9 PSBCdWlsZCBkcml2ZXJzL2NyeXB0by92aXJ0aW8KICBDQyB2aXJ0cXVldWUubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVy cy9jcnlwdG8vdmlydGlvL3ZpcnRxdWV1ZS5jOjc6Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5 bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0 aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAg ICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVj dCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVy YXRlZC4KICBDQyB2aXJ0aW9fcGNpLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvY3J5cHRvL3ZpcnRpby92aXJ0aW9f cGNpLmM6MTU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQu OC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by92aXJ0aW8vdmlydGlvX3BjaS5oOjEyOgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoK SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvLmg6MjA6 Ci90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZf YnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxl IEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZf YnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4x MC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBo ZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVt cG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyB2aXJ0aW9fcnh0eC5vCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9k cml2ZXJzL2NyeXB0by92aXJ0aW8vdmlydGlvX3J4dHguYzo0OgpJbiBmaWxlIGluY2x1ZGVkIGZy b20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXZfcG1kLmg6MjU6Ci90bXAvQ0VOVE9T X0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlz IGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXBy ZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQs IG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyB2aXJ0aW9fY3J5cHRvZGV2Lm8KICBQTURJTkZPIGNh YW1fanIuby5wbWQuYwogIENDIGNhYW1fanIuby5wbWQubwogIExEIGNhYW1fanIubwpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJp dmVycy9jcnlwdG8vdmlydGlvL3ZpcnRpb19jcnlwdG9kZXYuYzoxMToKSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvQ0VOVE9TX0szLjEwLjBfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL0NFTlRPU19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL0NFTlRP U19LMy4xMC4wX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBp cyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVw cmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1k LCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9DRU5UT1NfSzMuMTAuMF9HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1 Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpe CiAgQ0MgY2FhbV9qcl9jYXBhYmlsaXRpZXMubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIFBNRElO Rk8gdmlydGlvX2NyeXB0b2Rldi5vLnBtZC5jCiAgQ0MgdmlydGlvX2NyeXB0b2Rldi5vLnBtZC5v CiAgQ0MgY2FhbV9qcl9ody5vCiAgTEQgdmlydGlvX2NyeXB0b2Rldi5vCiAgQVIgbGlicnRlX3Bt ZF92aXJ0aW9fY3J5cHRvLmEKCipGYWlsZWQgQnVpbGQgIzM6Ck9TOiBGcmVlQlNEClRhcmdldDog eDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcKICBDQyBydGVfbWJ1Zi5vCiAgQVIgbGlicnRlX21l bWJlci5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX21lbWJlci5hCiAgQ0MgcnRlX21idWZfcHR5cGUu bwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82 NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsvbGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmLmM6Mjg6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1i b2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlv bnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAg ICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5h dGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21i dWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9tYnVmL3J0ZV9t YnVmX3B0eXBlLmM6NzoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAn cnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQg b2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4g cnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0Zy ZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFy ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRl X21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCjEgd2FybmluZyBnZW5lcmF0ZWQu CiAgQ0MgcnRlX21idWZfcG9vbF9vcHMubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVl QlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmX3Bvb2xf b3BzLmM6ODoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21i dWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3Rh YmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21i dWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZyZWVCU0Rf SzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVy ZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBv b2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX21idWYuYQogIElOU1RB TEwtTElCIGxpYnJ0ZV9tYnVmLmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9uZXQKPT0gQnVpbGQgbGli L2xpYnJ0ZV9iYmRldgogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9iYmRldl9vcC5oCi0tCiAg U1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2NvbXByZXNzZGV2LmgKICBTWU1MSU5LLUZJTEUgaW5j bHVkZS9ydGVfY29tcHJlc3NkZXZfcG1kLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfY29t cHJlc3NkZXZfaW50ZXJuYWwuaAogIENDIHJ0ZV9jb21wcmVzc2Rldi5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2Ny eXB0b2Rldi9ydGVfY3J5cHRvZGV2LmM6MzU6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6 OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMg bm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAg ICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAg ICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1i c2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVm X2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICpt Yiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0 ZV9jcnlwdG9kZXZfcG1kLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAu M19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfY3J5cHRvZGV2L3J0ZV9jcnlwdG9kZXZfcG1k LmM6NzoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL2xpYi9saWJydGVfY3J5cHRvZGV2L3J0ZV9jcnlwdG9kZXZfcG1kLmg6MjU6Ci90bXAv RnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5n L2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBp cyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVw cmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1k LCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgw MToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVm X2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdh cm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9jb21wcmVzc2Rldl9wbWQubwogIEFSIGxpYnJ0ZV9j cnlwdG9kZXYuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9jcnlwdG9kZXYuYQo9PSBCdWlsZCBsaWIv bGlicnRlX3NjaGVkCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3NjaGVkLmgKICBTWU1MSU5L LUZJTEUgaW5jbHVkZS9ydGVfc2NoZWRfY29tbW9uLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9y dGVfcmVkLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfYXBwcm94LmgKICBDQyBydGVfc2No ZWQubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvbGliL2xpYnJ0ZV9zY2hlZC9ydGVfc2NoZWQuYzoxNToKL3RtcC9GcmVlQlNEX0sxMC4z X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6 IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xh cmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsK ICAgICAgICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdy dGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3Qg cnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCiAgQ0MgcnRlX2NvbXAubwox IHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9yZWQubwogIENDIHJ0ZV9hcHByb3gubwogIEFS IGxpYnJ0ZV9zY2hlZC5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX3NjaGVkLmEKPT0gQnVpbGQgbGli L2xpYnJ0ZV9yZW9yZGVyCi0tCiAgQ0MgcnRlX3Jlb3JkZXIubwo9PSBCdWlsZCBsaWIvbGlicnRl X2V0aGRldgogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ldGhkZXYuaAogIFNZTUxJTkstRklM RSBpbmNsdWRlL3J0ZV9ldGhkZXZfZHJpdmVyLmgKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv RnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcmVvcmRlci9ydGVfcmVv cmRlci5jOjk6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0 YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9t YnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNE X0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhl cmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1w b29sICptcCkKXgotLQogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9ldGhkZXZfcGNpLmgKICBT WU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZXRoZGV2X3ZkZXYuaAogIFNZTUxJTkstRklMRSBpbmNs dWRlL3J0ZV9ldGhfY3RybC5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2Rldl9pbmZvLmgK ICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZmxvdy5oCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAg U1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2Zsb3dfZHJpdmVyLmgKICBBUiBsaWJydGVfcmVvcmRl ci5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX3Jlb3JkZXIuYQogIFNZTUxJTkstRklMRSBpbmNsdWRl L3J0ZV90bS5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3RtX2RyaXZlci5oCi0tCiAgU1lN TElOSy1GSUxFIGluY2x1ZGUvcnRlX2V2ZW50X3RpbWVyX2FkYXB0ZXJfcG1kLmgKICBTWU1MSU5L LUZJTEUgaW5jbHVkZS9ydGVfZXZlbnRfY3J5cHRvX2FkYXB0ZXIuaApJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9zZWN1 cml0eS9ydGVfc2VjdXJpdHkuYzo5OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNE X0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9zZWN1cml0eS9ydGVfc2VjdXJpdHku aDoyODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIw OgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZf YWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJ IFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZf YWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRnJlZUJTRF9LMTAuM19H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9t YnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXAp Cl4KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZXZlbnRfZXRoX3R4X2FkYXB0ZXIuaAogIEND IHJ0ZV9ldmVudGRldi5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX3NlY3VyaXR5 LmEKICBJTlNUQUxMLUxJQiBsaWJydGVfc2VjdXJpdHkuYQo9PSBCdWlsZCBsaWIvbGlicnRlX3Jh d2RldgogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9yYXdkZXYuaAogIFNZTUxJTkstRklMRSBp bmNsdWRlL3J0ZV9yYXdkZXZfcG1kLmgKLS0KICBDQyBydGVfaXB2NF9mcmFnbWVudGF0aW9uLm8K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXB2NF9mcmFnbWVudGF0aW9uLmM6MTI6CkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1i c2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGli cnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21tb24uaDo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9p cF9mcmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9pcC5o OjIyOgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9i dWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUg QUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9i dWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRnJlZUJTRF9LMTAu M19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0 ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAq bXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfaXB2Nl9mcmFnbWVudGF0aW9uLm8K ICBDQyBydGVfZXZlbnRfcmluZy5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0Rf SzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwdjZfZnJhZ21l bnRhdGlvbi5jOjEwOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL2lwX2ZyYWdfY29tbW9uLmg6ODoKSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0 aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xp Yi9saWJydGVfaXBfZnJhZy9ydGVfaXBfZnJhZy5oOjI1OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfaXAuaDoyMjoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1i LCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRl X2lwdjRfcmVhc3NlbWJseS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEw LjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwdjRfcmVhc3NlbWJs eS5jOjk6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21tb24uaDo4OgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0 ZV9pcF9mcmFnL3J0ZV9pcF9mcmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0Zy ZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9pcC5oOjIyOgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5p bmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQg cGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJl dHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90 bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNs YW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBk ZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVj dCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfaXB2Nl9y ZWFzc2VtYmx5Lm8KICBDQyBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXIubwpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9p cF9mcmFnL3J0ZV9pcHY2X3JlYXNzZW1ibHkuYzo5OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL2lwX2Zy YWdfY29tbW9uLmg6ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXBfZnJhZy5oOjI1OgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfaXAuaDoyMjoKL3RtcC9GcmVlQlNE X0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJl Y2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVk LWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5v dGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihz dHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBn ZW5lcmF0ZWQuCiAgQ0MgcnRlX2lwX2ZyYWdfY29tbW9uLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9t IC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9y dGVfaXBfZnJhZ19jb21tb24uYzoxMToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJT RF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9pcF9mcmFnX2NvbW1v bi5oOjg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX2lwLmg6MjI6Ci90bXAvRnJlZUJTRF9LMTAuM19H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRl X21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0 ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVk LgogIENDIGlwX2ZyYWdfaW50ZXJuYWwubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVl QlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL2lwX2ZyYWdfaW50 ZXJuYWwuYzoxMDoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9pcF9mcmFnX2NvbW1vbi5oOjg6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIv bGlicnRlX2lwX2ZyYWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNs YW5nL2luY2x1ZGUvcnRlX2lwLmg6MjI6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTog d2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90 IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAg ICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAg IF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2Rh cHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2Fk ZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwg c3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0 ZV9pcF9mcmFnLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfaXBfZnJhZy5hCj09IEJ1aWxkIGxpYi9s aWJydGVfZ3JvCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2dyby5oCiAgQ0MgcnRlX2dyby5v CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0 LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay9saWIvbGlicnRlX2dyby9ydGVfZ3JvLmM6NjoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0 MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10K ICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAg ICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9i dWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mg Z3JvX3RjcDQubwogIENDIHJ0ZV9ldmVudF90aW1lcl9hZGFwdGVyLm8KSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3Jv L2dyb190Y3A0LmM6NjoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAn cnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQg b2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4g cnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0Zy ZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFy ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRl X21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgZ3JvX3Z4bGFuX3RjcDQu bwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82 NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsvbGliL2xpYnJ0ZV9ncm8vZ3JvX3Z4bGFuX3RjcDQuYzo2OgovdG1wL0ZyZWVCU0RfSzEwLjNf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0 ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBy dGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRl ZC4KICBBUiBsaWJydGVfZ3JvLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfZ3JvLmEKICBDQyBydGVf ZXZlbnRfY3J5cHRvX2FkYXB0ZXIubwogIENDIHJ0ZV9ldmVudF9ldGhfdHhfYWRhcHRlci5vCj09 IEJ1aWxkIGxpYi9saWJydGVfYml0cmF0ZXN0YXRzCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRl X2JpdHJhdGUuaAogIENDIHJ0ZV9iaXRyYXRlLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv RnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfYml0cmF0ZXN0YXRzL3J0 ZV9iaXRyYXRlLmM6NjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0 aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGVy Lmg6MjM6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVm X2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJs ZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVm X2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sx MC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9y dGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUK cnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29s ICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9iaXRyYXRlc3RhdHMuYQog IElOU1RBTEwtTElCIGxpYnJ0ZV9iaXRyYXRlc3RhdHMuYQo9PSBCdWlsZCBsaWIvbGlicnRlX2xh dGVuY3lzdGF0cwogIEFSIGxpYnJ0ZV9ldmVudGRldi5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2V2 ZW50ZGV2LmEKLS0KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfbGF0ZW5jeXN0YXRzLmgKICBD QyBydGVfbGF0ZW5jeXN0YXRzLm8KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfcG9ydC5oCiAg U1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3BvcnRfZXRoZGV2LmgKSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfbGF0ZW5j eXN0YXRzL3J0ZV9sYXRlbmN5c3RhdHMuYzoxMDoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0 MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10K ICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAg ICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9i dWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRl X3BvcnRfcmluZy5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3BvcnRfZnJhZy5oCiAgU1lN TElOSy1GSUxFIGluY2x1ZGUvcnRlX3BvcnRfcmFzLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9y dGVfcG9ydF9zY2hlZC5oCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgU1lNTElOSy1GSUxFIGluY2x1 ZGUvcnRlX3BvcnRfZmQuaAogIEFSIGxpYnJ0ZV9sYXRlbmN5c3RhdHMuYQogIFNZTUxJTkstRklM RSBpbmNsdWRlL3J0ZV9wb3J0X3NvdXJjZV9zaW5rLmgKICBJTlNUQUxMLUxJQiBsaWJydGVfbGF0 ZW5jeXN0YXRzLmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9kaXN0cmlidXRvcgogIFNZTUxJTkstRklM RSBpbmNsdWRlL3J0ZV9wb3J0X3N5bV9jcnlwdG8uaAogIENDIHJ0ZV9wb3J0X2V0aGRldi5vCiAg U1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2Rpc3RyaWJ1dG9yLmgKICBDQyBydGVfZGlzdHJpYnV0 b3JfdjIwLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9ydC9ydGVfcG9ydF9ldGhkZXYuYzo3OgovdG1wL0ZyZWVC U0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVw cmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0 ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQt PnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTog bm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRy KHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBp bmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJy dGVfZGlzdHJpYnV0b3IvcnRlX2Rpc3RyaWJ1dG9yX3YyMC5jOjg6Ci90bXAvRnJlZUJTRF9LMTAu M19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVk OiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNs YXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7 CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIENDIHJ0ZV9wb3J0X3JpbmcubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9k aXN0cmlidXRvci5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0ND NC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfcmluZy5jOjc6Ci90bXAvRnJl ZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBk ZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVj YXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBt ZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMTox OiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2Fk ZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xp YnJ0ZV9kaXN0cmlidXRvci9ydGVfZGlzdHJpYnV0b3IuYzo4OgovdG1wL0ZyZWVCU0RfSzEwLjNf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0 ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBy dGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRl ZC4KICBDQyBydGVfZGlzdHJpYnV0b3JfbWF0Y2hfc3NlLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9t IC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZGlzdHJpYnV0 b3IvcnRlX2Rpc3RyaWJ1dG9yX21hdGNoX3NzZS5jOjU6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1i b2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlv bnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAg ICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5h dGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21i dWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgog IEFSIGxpYnJ0ZV9kaXN0cmlidXRvci5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2Rpc3RyaWJ1dG9y LmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9wZHVtcAoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0 ZV9wb3J0X2ZyYWcubwogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9wZHVtcC5oCiAgQ0MgcnRl X3BkdW1wLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0Ljgu NS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9ydC9ydGVfcG9ydF9mcmFnLmM6NjoKSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGVyLmg6MjM6Ci90bXAvRnJlZUJTRF9LMTAu M19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVk OiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNs YXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7 CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIENDIHJ0ZV9wb3J0X3Jhcy5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVC U0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfcmFzLmM6 NjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGVyLmg6MjM6Ci90 bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNs YW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1X ZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdICBBUiBsaWJydGVfcGR1bXAuYQoKICAgICAgICByZXR1 cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1w L0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVj bGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3Qg cnRlX21lbXBvb2wgKm1wKQpeCiAgSU5TVEFMTC1MSUIgbGlicnRlX3BkdW1wLmEKICBDQyBydGVf cG9ydF9zY2hlZC5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv dG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3Bv cnRfc2NoZWQuYzo2OgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1i c2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdy dGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBv ZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBy dGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRnJl ZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJl ZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVf bWVtcG9vbCAqbXApCl4KICBDQyBydGVfcG9ydF9mZC5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAg Q0MgcnRlX3BvcnRfc291cmNlX3NpbmsubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVl QlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9wb3J0L3J0ZV9wb3J0X2ZkLmM6 ODoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2Rh cHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVm X2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFC SSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVm X2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNf R0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVf bWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1w KQpeCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfc291cmNlX3NpbmsuYzo3OgovdG1wL0ZyZWVC U0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVw cmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0 ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQt PnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTog bm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRy KHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5n IGdlbmVyYXRlZC4KICBDQyBydGVfcG9ydF9zeW1fY3J5cHRvLm8KMSB3YXJuaW5nIGdlbmVyYXRl ZC4KPT0gQnVpbGQgbGliL2xpYnJ0ZV9nc28KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZ3Nv LmgKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL2xpYi9saWJydGVfcG9ydC9ydGVfcG9ydF9zeW1fY3J5cHRvLmM6OToKSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf cG9ydC9ydGVfcG9ydF9zeW1fY3J5cHRvLmg6MjM6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv RnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5n L2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6 IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5v dCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAg ICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAg ICBeCi90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIs IHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBDQyBydGVfZ3NvLm8KMSB3YXJuaW5nIGdlbmVy YXRlZC4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL2xpYi9saWJydGVfZ3NvL3J0ZV9nc28uYzo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfZXRoZGV2Lmg6MTU4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xh bmcvaW5jbHVkZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1i LCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCiAgQVIgbGlicnRlX3BvcnQuYQogIElOU1RBTEwt TElCIGxpYnJ0ZV9wb3J0LmEKMSB3YXJuaW5nIGdlbmVyYXRlZC4KPT0gQnVpbGQgbGliL2xpYnJ0 ZV9icGYKICBDQyBnc29fY29tbW9uLm8KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9icGZfZGVmLmgK ICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfYnBmLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9y dGVfYnBmX2V0aGRldi5oCiAgQ0MgYnBmLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJl ZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb19jb21tb24uYzox MToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL2xpYi9saWJydGVfZ3NvL2dzb19jb21tb24uaDoxMDoKL3RtcC9GcmVlQlNEX0sxMC4zX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5 bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0 aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAg ICAgICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1i c2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVf bWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRl X21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQu CiAgQ0MgZ3NvX3RjcDQubwogIENDIGJwZl9leGVjLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb190Y3A0 LmM6NToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94 ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb19jb21tb24uaDoxMDoKL3RtcC9GcmVlQlNEX0sxMC4z X0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6 IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xh cmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsK ICAgICAgICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdy dGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3Qg cnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0 ZWQuCiAgQ0MgZ3NvX3R1bm5lbF90Y3A0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJl ZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfZ3NvL2dzb190dW5uZWxfdGNw NC5jOjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay9saWIvbGlicnRlX2dzby9nc29fY29tbW9uLmg6MTA6Ci90bXAvRnJlZUJTRF9LMTAu M19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVk OiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNs YXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7 CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIENDIGdzb191ZHA0Lm8KICBDQyBicGZfbG9hZC5vCkluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2dzby9nc29f dWRwNC5jOjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX2dzby9nc29fY29tbW9uLmg6MTA6Ci90bXAvRnJlZUJTRF9L MTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUv cnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNh dGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1k ZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9v bCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1u YXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3Rl OiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgogIEFSIGxpYnJ0ZV9nc28uYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9nc28uYQogIEND IGJwZl9wa3QubwogIENDIGJwZl92YWxpZGF0ZS5vCiAgQ0MgYnBmX2ppdF94ODYubwotLQogIEND IHJ0ZV90YWJsZV9scG0ubwogIEFSIGxpYnJ0ZV9icGYuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9i cGYuYQogIENDIHJ0ZV90YWJsZV9scG1faXB2Ni5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJs ZV9scG0uYzo5OgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2Rh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVf bWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBz dGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVf bWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRnJlZUJT RF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBo ZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVt cG9vbCAqbXApCl4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3RhYmxlX2xwbV9pcHY2LmM6OToKL3Rt cC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHIn IGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdk ZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIo bWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44 LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9i dWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEg d2FybmluZyBnZW5lcmF0ZWQuCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3RhYmxlX2Fj bC5vCiAgQ0MgcnRlX3RhYmxlX2hhc2hfY3Vja29vLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3Rh YmxlX2FjbC5jOjk6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0 ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9m IHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0 ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVl QlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5j bHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVk IGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9t ZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dD QzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVfaGFzaF9jdWNrb28uYzo4 OgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZf YWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJ IFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZf YWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRnJlZUJTRF9LMTAuM19H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9t YnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXAp Cl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfaGFzaF9rZXk4Lm8KMSB3YXJu aW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfaGFzaF9rZXkxNi5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3Rh YmxlL3J0ZV90YWJsZV9oYXNoX2tleTguYzo4OgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUv eDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQw Ojk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlz IG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQog ICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAg ICAgICBeCi90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1 Zl9hZGRyJyBkZWNsYXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv RnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3RhYmxl X2hhc2hfa2V5MTYuYzo4OgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2 ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6 ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFy dCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVy biBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAv RnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5n L2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBkZWNs YXJlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBy dGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfaGFz aF9rZXkzMi5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJs ZV9oYXNoX2tleTMyLmM6ODoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5n OiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBh cnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1 cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1w L0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgZGVj bGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3Qg cnRlX21lbXBvb2wgKm1wKQpeCiAgQ0MgcnRlX3RhYmxlX2hhc2hfZXh0Lm8KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf dGFibGUvcnRlX3RhYmxlX2hhc2hfZXh0LmM6OToKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41 L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0 MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10K ICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAg ICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9i dWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYg Km1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mg cnRlX3RhYmxlX2hhc2hfbHJ1Lm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFi bGUvcnRlX3RhYmxlX2hhc2hfbHJ1LmM6OToKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1i LCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCiAgQ0MgcnRlX3RhYmxlX2FycmF5Lm8KSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9s aWJydGVfdGFibGUvcnRlX3RhYmxlX2FycmF5LmM6OToKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQu OC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5o Ojg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJv bCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9u c10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAg ICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2Rh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1 Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21i dWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAg Q0MgcnRlX3RhYmxlX3N0dWIubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgpJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJs ZS9ydGVfdGFibGVfc3R1Yi5jOjc6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQt bmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fy bmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHll dCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAg cmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4K L3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHIn IGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3Ry dWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV90 YWJsZS5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX3RhYmxlLmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9m bG93X2NsYXNzaWZ5Cj09IEJ1aWxkIGxpYi9saWJydGVfcGlwZWxpbmUKICBTWU1MSU5LLUZJTEUg aW5jbHVkZS9ydGVfZmxvd19jbGFzc2lmeS5oCi0tCm1hY2hpbmUgLT4gL3Vzci9zcmMvc3lzL2Ft ZDY0L2luY2x1ZGUKPT0gQnVpbGQga2VybmVsL2ZyZWVic2QvbmljX3Vpbwp4ODYgLT4gL3Vzci9z cmMvc3lzL3g4Ni9pbmNsdWRlCmF3ayAtZiBAL3Rvb2xzL21ha2VvYmpvcHMuYXdrIEAva2Vybi9k ZXZpY2VfaWYubSAtaAphd2sgLWYgQC90b29scy9tYWtlb2Jqb3BzLmF3ayBAL2tlcm4vYnVzX2lm Lm0gLWgKY2MgLVdpbmxpbmUgLVdhbGwgLVdlcnJvciAtaW5jbHVkZSAvdG1wL0ZyZWVCU0RfSzEw LjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9jb25maWcuaCAgLVdlcnJvciAtRF9LRVJORUwgLURLTERfTU9EVUxFIC1ub3N0ZGluYyAgLUkv dG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9rZXJuZWwvZnJlZWJzZC9jb250aWdt ZW0gLUkvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy9pbmNsdWRlIC1JLiAtSUAgLUlAL2NvbnRyaWIvYWx0cSAtZm5vLWNvbW1vbiAg LWZuby1vbWl0LWZyYW1lLXBvaW50ZXIgLW1uby1vbWl0LWxlYWYtZnJhbWUtcG9pbnRlciAgLW1u by1hZXMgLW1uby1hdnggLW1jbW9kZWw9a2VybmVsIC1tbm8tcmVkLXpvbmUgLW1uby1tbXggLW1u by1zc2UgLW1zb2Z0LWZsb2F0ICAtZm5vLWFzeW5jaHJvbm91cy11bndpbmQtdGFibGVzIC1mZnJl ZXN0YW5kaW5nIC1mc3RhY2stcHJvdGVjdG9yIC1zdGQ9aXNvOTg5OToxOTk5IC1RdW51c2VkLWFy Z3VtZW50cyAgLWZzdGFjay1wcm90ZWN0b3IgLVdhbGwgLVdyZWR1bmRhbnQtZGVjbHMgLVduZXN0 ZWQtZXh0ZXJucyAtV3N0cmljdC1wcm90b3R5cGVzICAtV21pc3NpbmctcHJvdG90eXBlcyAtV3Bv aW50ZXItYXJpdGggLVdpbmxpbmUgLVdjYXN0LXF1YWwgIC1XdW5kZWYgLVduby1wb2ludGVyLXNp Z24gLWZmb3JtYXQtZXh0ZW5zaW9ucyAgLVdtaXNzaW5nLWluY2x1ZGUtZGlycyAtZmRpYWdub3N0 aWNzLXNob3ctb3B0aW9uICAtV25vLWVycm9yLXRhdXRvbG9naWNhbC1jb21wYXJlIC1Xbm8tZXJy b3ItZW1wdHktYm9keSAgLVduby1lcnJvci1wYXJlbnRoZXNlcy1lcXVhbGl0eSAtV25vLWVycm9y LXVudXNlZC1mdW5jdGlvbiAgICAtYyBjb250aWdtZW0uYyAtbyBjb250aWdtZW0ubwpXYXJuaW5n OiBPYmplY3QgZGlyZWN0b3J5IG5vdCBjaGFuZ2VkIGZyb20gb3JpZ2luYWwgL3RtcC9GcmVlQlNE X0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvYnVpbGQv a2VybmVsL2ZyZWVic2QvbmljX3VpbwpAIC0+IC91c3Ivc3JjL3N5cwptYWNoaW5lIC0+IC91c3Iv c3JjL3N5cy9hbWQ2NC9pbmNsdWRlCng4NiAtPiAvdXNyL3NyYy9zeXMveDg2L2luY2x1ZGUKYXdr IC1mIEAvdG9vbHMvbWFrZW9iam9wcy5hd2sgQC9rZXJuL2RldmljZV9pZi5tIC1oCi0tCmF3ayAt ZiBAL3Rvb2xzL21ha2VvYmpvcHMuYXdrIEAva2Vybi9idXNfaWYubSAtaAphd2sgLWYgL3N5cy9j b25mL2ttb2Rfc3ltcy5hd2sgY29udGlnbWVtLmtvICBleHBvcnRfc3ltcyB8IHhhcmdzIC1KJSBv Ympjb3B5ICUgY29udGlnbWVtLmtvCmF3ayAtZiBAL3Rvb2xzL21ha2VvYmpvcHMuYXdrIEAvZGV2 L3BjaS9wY2lfaWYubSAtaApvYmpjb3B5IC0tc3RyaXAtZGVidWcgY29udGlnbWVtLmtvCklOU1RB TEwtTU9EVUxFIGNvbnRpZ21lbS5rbwpjYyAtV2lubGluZSAtV2FsbCAtV2Vycm9yIC1pbmNsdWRl IC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBw LWNsYW5nL2luY2x1ZGUvcnRlX2NvbmZpZy5oICAtV2Vycm9yIC1EX0tFUk5FTCAtREtMRF9NT0RV TEUgLW5vc3RkaW5jICAtSS90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZl LWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2tlcm5l bC9mcmVlYnNkL25pY191aW8gLUkvdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5h dGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlIC1JLiAtSUAgLUlAL2NvbnRyaWIvYWx0 cSAtZm5vLWNvbW1vbiAgLWZuby1vbWl0LWZyYW1lLXBvaW50ZXIgLW1uby1vbWl0LWxlYWYtZnJh bWUtcG9pbnRlciAgLW1uby1hZXMgLW1uby1hdnggLW1jbW9kZWw9a2VybmVsIC1tbm8tcmVkLXpv bmUgLW1uby1tbXggLW1uby1zc2UgLW1zb2Z0LWZsb2F0ICAtZm5vLWFzeW5jaHJvbm91cy11bndp bmQtdGFibGVzIC1mZnJlZXN0YW5kaW5nIC1mc3RhY2stcHJvdGVjdG9yIC1zdGQ9aXNvOTg5OTox OTk5IC1RdW51c2VkLWFyZ3VtZW50cyAgLWZzdGFjay1wcm90ZWN0b3IgLVdhbGwgLVdyZWR1bmRh bnQtZGVjbHMgLVduZXN0ZWQtZXh0ZXJucyAtV3N0cmljdC1wcm90b3R5cGVzICAtV21pc3Npbmct cHJvdG90eXBlcyAtV3BvaW50ZXItYXJpdGggLVdpbmxpbmUgLVdjYXN0LXF1YWwgIC1XdW5kZWYg LVduby1wb2ludGVyLXNpZ24gLWZmb3JtYXQtZXh0ZW5zaW9ucyAgLVdtaXNzaW5nLWluY2x1ZGUt ZGlycyAtZmRpYWdub3N0aWNzLXNob3ctb3B0aW9uICAtV25vLWVycm9yLXRhdXRvbG9naWNhbC1j b21wYXJlIC1Xbm8tZXJyb3ItZW1wdHktYm9keSAgLVduby1lcnJvci1wYXJlbnRoZXNlcy1lcXVh bGl0eSAtV25vLWVycm9yLXVudXNlZC1mdW5jdGlvbiAgICAtYyBuaWNfdWlvLmMgLW8gbmljX3Vp by5vCj09IEJ1aWxkIGRyaXZlcnMKPT0gQnVpbGQgZHJpdmVycy9jb21tb24KbGQgICAgICAtTC90 bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNs YW5nL2xpYiAtZCAtd2Fybi1jb21tb24gLXIgLWQgLW8gbmljX3Vpby5rbyBuaWNfdWlvLm8KOj4g ZXhwb3J0X3N5bXMKYXdrIC1mIC9zeXMvY29uZi9rbW9kX3N5bXMuYXdrIG5pY191aW8ua28gIGV4 cG9ydF9zeW1zIHwgeGFyZ3MgLUolIG9iamNvcHkgJSBuaWNfdWlvLmtvCi0tCiAgQVIgbGlicnRl X21lbXBvb2xfc3RhY2suYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9tZW1wb29sX3N0YWNrLmEKICBD QyBvY3Rlb250eF9mcGF2Zi5vCiAgQ0MgcnRlX21lbXBvb2xfb2N0ZW9udHgubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9t ZW1wb29sL29jdGVvbnR4L29jdGVvbnR4X2ZwYXZmLmM6MjE6Ci90bXAvRnJlZUJTRF9LMTAuM19H Q0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRl X21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0 ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZy b20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9tZW1wb29sL29j dGVvbnR4L3J0ZV9tZW1wb29sX29jdGVvbnR4LmM6ODoKL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQu OC41L3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5o Ojg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJv bCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9u c10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAg ICAgICAgICAgXgovdG1wL0ZyZWVCU0RfSzEwLjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2Rh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWJzZGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1 Zl9idWZfYWRkcicgZGVjbGFyZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21i dWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCjEg d2FybmluZyBnZW5lcmF0ZWQuCiAgUE1ESU5GTyBvY3Rlb250eF9mcGF2Zi5vLnBtZC5jCiAgQ0Mg b2N0ZW9udHhfZnBhdmYuby5wbWQubwogIExEIG9jdGVvbnR4X2ZwYXZmLm8KICBBUiBsaWJydGVf bWVtcG9vbF9vY3Rlb250eC5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX21lbXBvb2xfb2N0ZW9udHgu YQotLQpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4 Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvZHJpdmVycy9uZXQvYXJrL2Fya19ldGhkZXYuYzoxMDoKSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGRldl9wY2kuaDo0MToKSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGRldl9kcml2ZXIuaDoxODoKSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt YnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGRldi5oOjE1ODoKSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNk YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2V0aGVyLmg6MjM6Ci90bXAvRnJlZUJTRF9LMTAuM19HQ0M0 LjguNS94ODZfNjQtbmF0aXZlLWJzZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtYnNkYXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4NDA6OTogZXJyb3I6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9s IGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2Vycm9yLC1XZGVwcmVjYXRlZC1kZWNs YXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7 CiAgICAgICAgICAgICAgIF4KL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGRlY2xhcmVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIGVycm9yIGdlbmVyYXRl ZC4KZ21ha2VbNl06ICoqKiBbL3RtcC9GcmVlQlNEX0sxMC4zX0dDQzQuOC41L3g4Nl82NC1uYXRp dmUtYnNkYXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbWsv aW50ZXJuYWwvcnRlLmNvbXBpbGUtcHJlLm1rOjExNjogYXJrX2V0aGRldi5vXSBFcnJvciAxCmdt YWtlWzVdOiAqKiogWy90bXAvRnJlZUJTRF9LMTAuM19HQ0M0LjguNS94ODZfNjQtbmF0aXZlLWJz ZGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL21rL3J0ZS5z dWJkaXIubWs6Mzc6IGFya10gRXJyb3IgMgpnbWFrZVs0XTogKioqIFsvdG1wL0ZyZWVCU0RfSzEw LjNfR0NDNC44LjUveDg2XzY0LW5hdGl2ZS1ic2RhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay9tay9ydGUuc3ViZGlyLm1rOjM3OiBuZXRdIEVycm9yIDIKZ21h a2VbNF06ICoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uCiAgUE1ESU5GTyBiYmRl dl9udWxsLm8ucG1kLmMKCipGYWlsZWQgQnVpbGQgIzQ6Ck9TOiBGQzI0ClRhcmdldDogeDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZwogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9tYnVmX3Bv b2xfb3BzLmgKICBDQyBydGVfbWJ1Zi5vCiAgQ0MgcnRlX21idWZfcHR5cGUubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJy dGVfbWJ1Zi9ydGVfbWJ1Zl9wdHlwZS5jOjc6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmgvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv bGliL2xpYnJ0ZV9tYnVmL3J0ZV9tYnVmLmM6Ojg0MDoyODk6Cjogd2FybmluZy90bXAvRkMyNF9L NC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDogOjg0MCdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXToKOTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6 IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVw cmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVj dCBydGVfbWVtcG9vbCAqbXApCl4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBu b3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJl Y2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3Qg cnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX21idWZfcG9v bF9vcHMubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfbWJ1Zi9ydGVfbWJ1Zl9w b29sX29wcy5jOjg6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0 IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJu IHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhh cyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRk cihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2Fybmlu ZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX21idWYuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9tYnVm LmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9iYmRldgo9PSBCdWlsZCBsaWIvbGlicnRlX25ldAogIFNZ TUxJTkstRklMRSBpbmNsdWRlL3J0ZV9iYmRldl9vcC5oCi0tCiAgQ0MgcnRlX2NyeXB0b2Rldi5v CiAgQVIgbGlicnRlX25ldC5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX25ldC5hCj09IEJ1aWxkIGxp Yi9saWJydGVfY29tcHJlc3NkZXYKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRvZGV2 LmM6MzU6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0 YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9t YnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0 LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVu IGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1 Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCiAgU1lNTElOSy1GSUxF IGluY2x1ZGUvcnRlX2NvbXAuaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9jb21wcmVzc2Rl di5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2NvbXByZXNzZGV2X3BtZC5oCiAgU1lNTElO Sy1GSUxFIGluY2x1ZGUvcnRlX2NvbXByZXNzZGV2X2ludGVybmFsLmgKICBDQyBydGVfY29tcHJl c3NkZXYubwoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9jcnlwdG9kZXZfcG1kLm8KSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9s aWIvbGlicnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRvZGV2X3BtZC5jOjc6CkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9j cnlwdG9kZXYvcnRlX2NyeXB0b2Rldl9wbWQuaDoyNToKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4y LjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1 Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5 bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0 aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAg ICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdy dGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBo ZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVt cG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfY3J5cHRvZGV2LmEK ICBJTlNUQUxMLUxJQiBsaWJydGVfY3J5cHRvZGV2LmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9zY2hl ZAogIENDIHJ0ZV9jb21wcmVzc2Rldl9wbWQubwogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9z Y2hlZC5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3NjaGVkX2NvbW1vbi5oCiAgU1lNTElO Sy1GSUxFIGluY2x1ZGUvcnRlX3JlZC5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2FwcHJv eC5oCiAgQ0MgcnRlX3NjaGVkLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3NjaGVkL3J0ZV9zY2hlZC5jOjE1Ogov dG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZf YWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJ IFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZf YWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNp dGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgogIENDIHJ0ZV9jb21wLm8KMSB3YXJu aW5nIGdlbmVyYXRlZC4KICBDQyBydGVfcmVkLm8KICBDQyBydGVfYXBwcm94Lm8KICBBUiBsaWJy dGVfc2NoZWQuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9zY2hlZC5hCj09IEJ1aWxkIGxpYi9saWJy dGVfcmVvcmRlcgotLQogIElOU1RBTEwtTElCIGxpYnJ0ZV9jb21wcmVzc2Rldi5hCj09IEJ1aWxk IGxpYi9saWJydGVfZXRoZGV2CiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2V0aGRldi5oCiAg U1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2V0aGRldl9kcml2ZXIuaApJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcmVv cmRlci9ydGVfcmVvcmRlci5jOjk6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTog d2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90 IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAg ICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAg IF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVm X2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1 Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpe Ci0tCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2V0aF9jdHJsLmgKICBTWU1MSU5LLUZJTEUg aW5jbHVkZS9ydGVfZGV2X2luZm8uaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9mbG93LmgK ICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfZmxvd19kcml2ZXIuaAogIFNZTUxJTkstRklMRSBp bmNsdWRlL3J0ZV90bS5oCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgU1lNTElOSy1GSUxFIGluY2x1 ZGUvcnRlX3RtX2RyaXZlci5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX210ci5oCiAgQVIg bGlicnRlX3Jlb3JkZXIuYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9yZW9yZGVyLmEKICBTWU1MSU5L LUZJTEUgaW5jbHVkZS9ydGVfbXRyX2RyaXZlci5oCi0tCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUv cnRlX2V2ZW50X2V0aF90eF9hZGFwdGVyLmgKICBDQyBydGVfZXZlbnRkZXYubwpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJy dGVfc2VjdXJpdHkvcnRlX3NlY3VyaXR5LmM6OToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv RkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3NlY3VyaXR5L3J0ZV9z ZWN1cml0eS5oOjI4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf Y3J5cHRvLmg6MjA6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0 IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJu IHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhh cyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRk cihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2Fybmlu ZyBnZW5lcmF0ZWQuCiAgQVIgbGlicnRlX3NlY3VyaXR5LmEKICBJTlNUQUxMLUxJQiBsaWJydGVf c2VjdXJpdHkuYQo9PSBCdWlsZCBsaWIvbGlicnRlX3Jhd2RldgogIFNZTUxJTkstRklMRSBpbmNs dWRlL3J0ZV9yYXdkZXYuaAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9yYXdkZXZfcG1kLmgK LS0KICBDQyB2aG9zdF91c2VyLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvcnRlX2lwdjRfZnJhZ21l bnRhdGlvbi5jOjEyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9pcF9mcmFnX2NvbW1vbi5oOjg6Cklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv bGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcF9mcmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJv bSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9pcC5oOjIyOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIu MS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3lt Ym9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRp b25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAg ICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0 ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhl cmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1w b29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIHJ0ZV9pcHY2X2ZyYWdtZW50YXRp b24ubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXB2Nl9mcmFnbWVudGF0aW9uLmM6MTA6Cklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv bGliL2xpYnJ0ZV9pcF9mcmFnL2lwX2ZyYWdfY29tbW9uLmg6ODoKSW4gZmlsZSBpbmNsdWRlZCBm cm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2Zy YWcvcnRlX2lwX2ZyYWcuaDoyNToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX2lwLmg6MjI6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fybmlu ZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBw YXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0 dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3Rt cC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHIn IGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZf YWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2Fy bmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX2lwdjRfcmVhc3NlbWJseS5vCiAgQ0MgdmlydGlvX25l dC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcHY0X3JlYXNzZW1ibHkuYzo5OgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9s aWJydGVfaXBfZnJhZy9pcF9mcmFnX2NvbW1vbi5oOjg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAv dG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0 ZV9pcF9mcmFnLmg6MjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19H Q0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9pcC5oOjIyOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdy dGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBv ZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBy dGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMg YmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIo c3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcg Z2VuZXJhdGVkLgogIENDIHJ0ZV9pcHY2X3JlYXNzZW1ibHkubwpJbiBmaWxlIGluY2x1ZGVkIGZy b20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJh Zy9ydGVfaXB2Nl9yZWFzc2VtYmx5LmM6OToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBfZnJhZ19j b21tb24uaDo4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4y LjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5 ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXBfZnJhZy5oOjI1OgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfaXAuaDoyMjoKL3RtcC9GQzI0X0s0 LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRl cHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNh dGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1k LT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAx OjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQg ZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0 cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfaXBf ZnJhZ19jb21tb24ubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9ydGVfaXBfZnJhZ19jb21tb24uYzox MToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay9saWIvbGlicnRlX2lwX2ZyYWcvaXBfZnJhZ19jb21tb24uaDo4OgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf aXBfZnJhZy9ydGVfaXBfZnJhZy5oOjI1OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0 X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfaXAuaDoyMjoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3 YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3Qg eWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAg ICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAg XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBpcF9mcmFnX2ludGVybmFsLm8KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRl X2lwX2ZyYWcvaXBfZnJhZ19pbnRlcm5hbC5jOjEwOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfaXBfZnJhZy9pcF9m cmFnX2NvbW1vbi5oOjg6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19H Q0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9pcF9mcmFnL3J0ZV9pcF9mcmFnLmg6MjU6Cklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9pcC5oOjIyOgovdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicg aXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2Rl cHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkciht ZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4x L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1h cmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICpt Yiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxp YnJ0ZV9pcF9mcmFnLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfaXBfZnJhZy5hCj09IEJ1aWxkIGxp Yi9saWJydGVfZ3JvCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2dyby5oCiAgQ0MgcnRlX2dy by5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvbGliL2xpYnJ0ZV9ncm8vcnRlX2dyby5jOjY6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYu Mi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQg aGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21l bXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgZ3JvX3RjcDQubwpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9s aWJydGVfZ3JvL2dyb190Y3A0LmM6NjoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9i dWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9t YnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXAp Cl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBncm9fdnhsYW5fdGNwNC5vCkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0 ZV9ncm8vZ3JvX3Z4bGFuX3RjcDQuYzo2OgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQw Ojk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlz IG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQog ICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAg ICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAt Y2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVm X2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRl X21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICpt cCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9ncm8uYQogIElOU1RBTEwtTElC IGxpYnJ0ZV9ncm8uYQo9PSBCdWlsZCBsaWIvbGlicnRlX2JpdHJhdGVzdGF0cwogIFNZTUxJTkst RklMRSBpbmNsdWRlL3J0ZV9iaXRyYXRlLmgKICBDQyBydGVfYml0cmF0ZS5vCiAgQ0MgdmRwYS5v CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsvbGliL2xpYnJ0ZV9iaXRyYXRlc3RhdHMvcnRlX2JpdHJhdGUuYzo2OgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfZXRoZGV2Lmg6MTU4OgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfZXRoZXIuaDoyMzoKL3RtcC9GQzI0X0s0Ljku MTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJl Y2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVk LWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5w b29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6 IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVw cmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVj dCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfYml0 cmF0ZXN0YXRzLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfYml0cmF0ZXN0YXRzLmEKPT0gQnVpbGQg bGliL2xpYnJ0ZV9sYXRlbmN5c3RhdHMKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfbGF0ZW5j eXN0YXRzLmgKICBDQyBydGVfbGF0ZW5jeXN0YXRzLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2xhdGVuY3lzdGF0 cy9ydGVfbGF0ZW5jeXN0YXRzLmM6MTA6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6 OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMg bm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAg ICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAg ICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZf YnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVf bWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1w KQpeCiAgQ0Mgdmhvc3RfY3J5cHRvLm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVf bGF0ZW5jeXN0YXRzLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfbGF0ZW5jeXN0YXRzLmEKPT0gQnVp bGQgbGliL2xpYnJ0ZV9rbmkKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfa25pLmgKICBDQyBy dGVfa25pLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4x L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay9saWIvbGlicnRlX2tuaS9ydGVfa25pLmM6MTY6CkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhkZXYuaDoxNTg6CkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhlci5oOjIzOgovdG1wL0ZDMjRfSzQuOS4xM19H Q0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRl ZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVj bGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wp OwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90 ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNh dGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0 ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9rbmkuYQog IElOU1RBTEwtTElCIGxpYnJ0ZV9rbmkuYQo9PSBCdWlsZCBsaWIvbGlicnRlX2Rpc3RyaWJ1dG9y CiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2Rpc3RyaWJ1dG9yLmgKICBDQyBydGVfZGlzdHJp YnV0b3JfdjIwLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYu Mi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2Rpc3RyaWJ1dG9yL3J0ZV9kaXN0cmlidXRvcl92MjAu Yzo4OgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBl eHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIENDIHJ0ZV9kaXN0cmlidXRvci5vCiAgQVIgbGlicnRlX3Zob3N0LmEKICBJTlNUQUxM LUxJQiBsaWJydGVfdmhvc3QuYQo9PSBCdWlsZCBsaWIvbGlicnRlX3BkdW1wCkluIGZpbGUgaW5j bHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0 ZV9kaXN0cmlidXRvci9ydGVfZGlzdHJpYnV0b3IuYzo4OgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2 LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9t YnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDog U3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFy YXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwog ICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVk IGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9t ZW1wb29sICptcCkKXgogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9wZHVtcC5oCiAgQ0MgcnRl X3BkdW1wLm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfZGlzdHJpYnV0b3JfbWF0Y2hf c3NlLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay9saWIvbGlicnRlX2Rpc3RyaWJ1dG9yL3J0ZV9kaXN0cmlidXRvcl9tYXRjaF9zc2Uu Yzo1OgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBl eHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIEFSIGxpYnJ0ZV9kaXN0cmlidXRvci5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX2Rpc3Ry aWJ1dG9yLmEKPT0gQnVpbGQgbGliL2xpYnJ0ZV9nc28KICBBUiBsaWJydGVfcGR1bXAuYQogIElO U1RBTEwtTElCIGxpYnJ0ZV9wZHVtcC5hCi0tCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX2Jw Zl9ldGhkZXYuaAogIENDIGJwZi5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQu OS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28vcnRlX2dzby5jOjg6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhkZXYuaDoxNTg6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhlci5oOjIzOgovdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicg aXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2Rl cHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkciht ZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4x L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1h cmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICpt Yiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIGdz b19jb21tb24ubwogIENDIGJwZl9leGVjLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2dzby9nc29fY29tbW9uLmM6 MTE6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvbGliL2xpYnJ0ZV9nc28vZ3NvX2NvbW1vbi5oOjEwOgovdG1wL0ZDMjRfSzQuOS4xM19H Q0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0 ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRl ZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVj bGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wp OwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90 ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNh dGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0 ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIENDIGdzb190Y3A0Lm8KICBD QyBicGZfbG9hZC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2 LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28vZ3NvX3RjcDQuYzo1OgpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf Z3NvL2dzb19jb21tb24uaDoxMDoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3 YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3Qg eWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAg ICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAg XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBnc29fdHVubmVsX3RjcDQubwogIENDIGJwZl9wa3Qu bwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL2xpYi9saWJydGVfZ3NvL2dzb190dW5uZWxfdGNwNC5jOjU6CkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28v Z3NvX2NvbW1vbi5oOjEwOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5p bmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQg cGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJl dHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90 bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRy JyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVm X2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdh cm5pbmcgZ2VuZXJhdGVkLgogIENDIGdzb191ZHA0Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX2dzby9nc29fdWRw NC5jOjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsvbGliL2xpYnJ0ZV9nc28vZ3NvX2NvbW1vbi5oOjEwOgovdG1wL0ZDMjRfSzQuOS4x M19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVj YXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQt ZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBv b2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTog bm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXBy ZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0 IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxpYnJ0ZV9nc28u YQogIElOU1RBTEwtTElCIGxpYnJ0ZV9nc28uYQogIENDIGJwZl92YWxpZGF0ZS5vCj09IEJ1aWxk IGxpYi9saWJydGVfcG9ydAogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV9wb3J0LmgKLS0KICBT WU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfcG9ydF9zb3VyY2Vfc2luay5oCiAgU1lNTElOSy1GSUxF IGluY2x1ZGUvcnRlX3BvcnRfc3ltX2NyeXB0by5oCiAgQ0MgcnRlX3BvcnRfZXRoZGV2Lm8KICBD QyBicGZfaml0X3g4Ni5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19H Q0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4 YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9wb3J0L3J0ZV9wb3J0X2V0aGRldi5jOjc6Ci90 bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkg Wy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9h ZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVf bWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0 bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21i dWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAg Q0MgcnRlX3BvcnRfcmluZy5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4x M19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9wb3J0L3J0ZV9wb3J0X3JpbmcuYzo3Ogov dG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZf YWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJ IFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZf YWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNp dGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgogIEFSIGxpYnJ0ZV9icGYuYQogIElO U1RBTEwtTElCIGxpYnJ0ZV9icGYuYQogIENDIHJ0ZV9wb3J0X2ZyYWcubwpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVf cG9ydC9ydGVfcG9ydF9mcmFnLmM6NjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9L NC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX2V0aGVyLmg6MjM6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTog d2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90 IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAg ICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAg IF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVm X2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1 Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpe CjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3BvcnRfcmFzLm8KMSB3YXJuaW5nIGdlbmVy YXRlZC4KICBDQyBydGVfcG9ydF9zY2hlZC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9wb3J0L3J0ZV9wb3J0X3Jh cy5jOjY6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhlci5o OjIzOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBl eHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIENDIHJ0ZV9wb3J0X2ZkLm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9L NC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3BvcnQvcnRlX3BvcnRfc2NoZWQu Yzo2OgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBl eHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIENDIHJ0ZV9wb3J0X2tuaS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRf SzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV9wb3J0L3J0ZV9wb3J0X2tuaS5j OjM4OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfa25pLmg6MjM6 CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2Rw ZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9ldGhlci5oOjIzOgov dG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZf YWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJ IFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZf YWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNp dGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20g L3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9ydC9ydGVf cG9ydF9mZC5jOjg6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGlu dXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQt bmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzog J3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0 IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJu IHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhh cyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRk cihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2Fybmlu ZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3BvcnRfc291cmNlX3NpbmsubwoxIHdhcm5pbmcgZ2VuZXJh dGVkLgogIENDIHJ0ZV9wb3J0X3N5bV9jcnlwdG8ubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Rt cC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdl ZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9ydC9ydGVfcG9y dF9zb3VyY2Vfc2luay5jOjc6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fy bmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHll dCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAg cmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4K L3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2Fk ZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9i dWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv bGliL2xpYnJ0ZV9wb3J0L3J0ZV9wb3J0X3N5bV9jcnlwdG8uYzo5OgpJbiBmaWxlIGluY2x1ZGVk IGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfcG9y dC9ydGVfcG9ydF9zeW1fY3J5cHRvLmg6MjM6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAv RkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5 OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9s IGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25z XQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAg ICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9t YnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUK cnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29s ICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFSIGxp YnJ0ZV9wb3J0LmEKICBJTlNUQUxMLUxJQiBsaWJydGVfcG9ydC5hCj09IEJ1aWxkIGxpYi9saWJy dGVfdGFibGUKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVfdGFibGUuaAogIFNZTUxJTkstRklM RSBpbmNsdWRlL3J0ZV90YWJsZV9scG0uaAotLQogIFNZTUxJTkstRklMRSBpbmNsdWRlL3J0ZV90 YWJsZV9hcnJheS5oCiAgU1lNTElOSy1GSUxFIGluY2x1ZGUvcnRlX3RhYmxlX3N0dWIuaAogIEND IHJ0ZV90YWJsZV9scG0ubwogIENDIHJ0ZV90YWJsZV9scG1faXB2Ni5vCkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90 YWJsZS9ydGVfdGFibGVfbHBtLmM6OToKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5 OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBu b3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAg ICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAg ICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9i dWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9t YnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXAp Cl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfYWNsLm8KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRl X3RhYmxlL3J0ZV90YWJsZV9scG1faXB2Ni5jOjk6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4x L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1i b2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlv bnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAg ICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRl X21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVy ZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBv b2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3RhYmxlX2hhc2hfY3Vja29v Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJsZV9hY2wuYzo5OgovdG1wL0ZDMjRfSzQuOS4x M19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVj YXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQt ZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBv b2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTog bm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXBy ZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0 IHJ0ZV9tZW1wb29sICptcCkKXgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0Ljku MTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3RhYmxlX2hhc2hfY3Vj a29vLmM6ODoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRl X21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Yg c3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRl X21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRf SzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJl ZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0 cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdl bmVyYXRlZC4KICBDQyBydGVfdGFibGVfaGFzaF9rZXk4Lm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4K ICBDQyBydGVfdGFibGVfaGFzaF9rZXkxNi5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbGliL2xpYnJ0ZV90YWJsZS9ydGVfdGFibGVf aGFzaF9rZXk4LmM6ODoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5n OiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBh cnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1 cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicg aGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9h ZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIv bGlicnRlX3RhYmxlL3J0ZV90YWJsZV9oYXNoX2tleTE2LmM6ODoKL3RtcC9GQzI0X0s0LjkuMTNf R0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9y dGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0 ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRl Y2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29s KTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5v dGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVj YXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBy dGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfdGFibGVfaGFz aF9rZXkzMi5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3RhYmxlX2hhc2hfZXh0Lm8K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJsZV9oYXNoX2tleTMyLmM6ODoKL3RtcC9GQzI0X0s0 LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5j bHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRl cHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNh dGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1k LT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAx OjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQg ZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0 cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9L NC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRlX3RhYmxlL3J0ZV90YWJsZV9oYXNo X2V4dC5jOjk6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0 ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9m IHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0 ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0 X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBi ZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihz dHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBn ZW5lcmF0ZWQuCiAgQ0MgcnRlX3RhYmxlX2hhc2hfbHJ1Lm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4K ICBDQyBydGVfdGFibGVfYXJyYXkubwpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0 LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0 MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3RhYmxlX2hhc2hf bHJ1LmM6OToKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRl X21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Yg c3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRl X21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRf SzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJl ZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0 cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9saWIvbGlicnRl X3RhYmxlL3J0ZV90YWJsZV9hcnJheS5jOjk6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4 NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wg aXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNd CiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAg ICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21i dWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpy dGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wg Km1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgcnRlX3RhYmxlX3N0dWIubwoxIHdhcm5p bmcgZ2VuZXJhdGVkLgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0ND Ni4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEy NTg5ZGM5ODU2Yi9kcGRrL2xpYi9saWJydGVfdGFibGUvcnRlX3RhYmxlX3N0dWIuYzo3OgovdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRk cicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFst V2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRk cihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYu Mi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5 IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVm ICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgogIEFS IGxpYnJ0ZV90YWJsZS5hCiAgSU5TVEFMTC1MSUIgbGlicnRlX3RhYmxlLmEKPT0gQnVpbGQgbGli L2xpYnJ0ZV9mbG93X2NsYXNzaWZ5Cj09IEJ1aWxkIGxpYi9saWJydGVfcGlwZWxpbmUKICBTWU1M SU5LLUZJTEUgaW5jbHVkZS9ydGVfcGlwZWxpbmUuaAotLQogIEFSIGxpYnJ0ZV9tZW1wb29sX3N0 YWNrLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfbWVtcG9vbF9zdGFjay5hCiAgQ0Mgb2N0ZW9udHhf ZnBhdmYubwogIENDIHJ0ZV9tZW1wb29sX29jdGVvbnR4Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9t IC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL21lbXBvb2wvb2N0 ZW9udHgvb2N0ZW9udHhfZnBhdmYuYzoyMToKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0 MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10K ICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAg ICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0 ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAq bXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBQTURJTkZPIG9jdGVvbnR4X2ZwYXZmLm8ucG1k LmMKICBDQyBvY3Rlb250eF9mcGF2Zi5vLnBtZC5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9tZW1wb29sL29jdGVvbnR4 L3J0ZV9tZW1wb29sX29jdGVvbnR4LmM6ODoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2 Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0 MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBp cyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10K ICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAg ICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0 ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAq bXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBMRCBvY3Rlb250eF9mcGF2Zi5vCiAgQVIgbGli cnRlX21lbXBvb2xfb2N0ZW9udHguYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9tZW1wb29sX29jdGVv bnR4LmEKPT0gQnVpbGQgZHJpdmVycy9uZXQKPT0gQnVpbGQgZHJpdmVycy9iYXNlYmFuZAo9PSBC dWlsZCBkcml2ZXJzL2Jhc2ViYW5kL251bGwKPT0gQnVpbGQgZHJpdmVycy9uZXQvYWZfcGFja2V0 CiAgQ0MgcnRlX2V0aF9hZl9wYWNrZXQubwogIENDIGJiZGV2X251bGwubwpJbiBmaWxlIGluY2x1 ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL2RyaXZlcnMvbmV0 L2FmX3BhY2tldC9ydGVfZXRoX2FmX3BhY2tldC5jOjk6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYu Mi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4 OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21i dWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBT eW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJh dGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAg ICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAn cnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQg aGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21l bXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgUE1ESU5GTyBydGVfZXRoX2FmX3Bh Y2tldC5vLnBtZC5jCiAgQ0MgcnRlX2V0aF9hZl9wYWNrZXQuby5wbWQubwogIExEIHJ0ZV9ldGhf YWZfcGFja2V0Lm8KICBBUiBsaWJydGVfcG1kX2FmX3BhY2tldC5hCiAgUE1ESU5GTyBiYmRldl9u dWxsLm8ucG1kLmMKLS0KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL25ldC9hcmsvYXJrX2V0aGRldi5jOjEwOgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfZXRoZGV2X3BjaS5oOjQxOgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfZXRoZGV2X2RyaXZlci5oOjE4 OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfZXRoZGV2Lmg6MTU4 OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfZXRoZXIuaDoyMzoK L3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiBlcnJvcjogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkg Wy1XZXJyb3IsLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21i dWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQu OS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4g ZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVj dCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSBlcnJvciBnZW5lcmF0 ZWQuCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9tay9pbnRlcm5hbC9ydGUu Y29tcGlsZS1wcmUubWs6MTE0OiByZWNpcGUgZm9yIHRhcmdldCAnYXJrX2V0aGRldi5vJyBmYWls ZWQKbWFrZVs2XTogKioqIFthcmtfZXRoZGV2Lm9dIEVycm9yIDEKL3RtcC9GQzI0X0s0LjkuMTNf R0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL21rL3J0ZS5zdWJkaXIubWs6MzU6IHJlY2lwZSBmb3IgdGFyZ2V0 ICdhcmsnIGZhaWxlZAptYWtlWzVdOiAqKiogW2Fya10gRXJyb3IgMgovdG1wL0ZDMjRfSzQuOS4x M19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsvbWsvcnRlLnN1YmRpci5tazozNTogcmVjaXBlIGZvciB0YXJn ZXQgJ25ldCcgZmFpbGVkCm1ha2VbNF06ICoqKiBbbmV0XSBFcnJvciAyCm1ha2VbNF06ICoqKiBX YWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9jcnlwdG8vb2N0ZW9udHgv b3R4X2NyeXB0b2Rldi5jOjc6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4x M19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFi OWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRl L3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdh cm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5 ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAg IHJldHVybiBydGVfbWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBe Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv NWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9h ZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZf YnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgog IENDIG90eF9jcnlwdG9kZXZfY2FwYWJpbGl0aWVzLm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBQ TURJTkZPIG90eF9jcnlwdG9kZXYuby5wbWQuYwogIENDIG90eF9jcnlwdG9kZXYuby5wbWQubwog IExEIG90eF9jcnlwdG9kZXYubwo9PSBCdWlsZCBkcml2ZXJzL2NyeXB0by9zY2hlZHVsZXIKSW4g ZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9k cml2ZXJzL2NyeXB0by9vY3Rlb250eC9vdHhfY3J5cHRvZGV2X2NhcGFiaWxpdGllcy5jOjU6Cklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoK SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgov dG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVh N2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZf YWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJ IFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZf YWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRl X21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNp dGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9t YnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgog IENDIG90eF9jcnlwdG9kZXZfaHdfYWNjZXNzLm8KICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9ydGVf Y3J5cHRvZGV2X3NjaGVkdWxlcl9vcGVyYXRpb25zLmgKICBTWU1MSU5LLUZJTEUgaW5jbHVkZS9y dGVfY3J5cHRvZGV2X3NjaGVkdWxlci5oCiAgQ0Mgc2NoZWR1bGVyX3BtZC5vCiAgQ0Mgb3R4X2Ny eXB0b2Rldl9tYm94Lm8KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dD QzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5Zjhh MjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by9zY2hlZHVsZXIvc2NoZWR1bGVyX3BtZC5j OjY6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYu aDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4 Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1 NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0by5o OjIwOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1 Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFi bGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1 Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBl eHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0 IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgogIENDIG90eF9jcnlwdG9k ZXZfb3BzLm8KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBzY2hlZHVsZXJfcG1kX29wcy5vCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv ZHJpdmVycy9jcnlwdG8vb2N0ZW9udHgvb3R4X2NyeXB0b2Rldl9vcHMuYzo3OgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9GQzI0 X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlz IGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXBy ZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQs IG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJr ZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIs IHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2NyeXB0by9zY2hlZHVsZXIvc2No ZWR1bGVyX3BtZF9vcHMuYzo5OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0Ljku MTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQu OS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNs dWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3 YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3Qg eWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAg ICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAg XgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n LzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZf YWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVm X2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4K MSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBydGVfY3J5cHRvZGV2X3NjaGVkdWxlci5vCkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJp dmVycy9jcnlwdG8vc2NoZWR1bGVyL3J0ZV9jcnlwdG9kZXZfc2NoZWR1bGVyLmM6NDoKSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX3Jlb3JkZXIuaDoxODoKL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHIn IGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdk ZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIo bWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIu MS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBt YXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyBz Y2hlZHVsZXJfcm91bmRyb2Jpbi5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQu OS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQx NDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9jcnlwdG8vc2NoZWR1bGVyL3NjaGVkdWxl cl9yb3VuZHJvYmluLmM6NToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEz X0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5 ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUv cnRlX2NyeXB0b2Rldi5oOjIyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0Ljku MTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQx YjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVk ZS9ydGVfY3J5cHRvLmg6MjA6Ci90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2Fy bmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHll dCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAg cmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4K L3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81 YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2Fk ZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9i dWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEg d2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mgc2NoZWR1bGVyX3BrdF9zaXplX2Rpc3RyLm8KMSB3YXJu aW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfcG1kX29jdGVvbnR4X2NyeXB0by5hCiAgSU5TVEFM TC1MSUIgbGlicnRlX3BtZF9vY3Rlb250eF9jcnlwdG8uYQo9PSBCdWlsZCBkcml2ZXJzL2NyeXB0 by9udWxsCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsvZHJpdmVycy9jcnlwdG8vc2NoZWR1bGVyL3NjaGVkdWxlcl9wa3Rfc2l6ZV9kaXN0 ci5jOjU6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9k ZXYuaDoyMjoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4x L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0 by5oOjIwOgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVf bWJ1Zl9idWZfYWRkcicgaXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBz dGFibGUgQUJJIFstV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVf bWJ1Zl9idWZfYWRkcihtZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9L NC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMy NDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2lu Y2x1ZGUvcnRlX21idWYuaDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVl biBleHBsaWNpdGx5IG1hcmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3Ry dWN0IHJ0ZV9tYnVmICptYiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgogIENDIG51bGxfY3J5 cHRvX3BtZC5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mgc2NoZWR1bGVyX2ZhaWxvdmVyLm8K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay9kcml2ZXJzL2NyeXB0by9udWxsL251bGxfY3J5cHRvX3BtZC5jOjY6CkluIGZpbGUgaW5jbHVk ZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2 ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXZfcG1kLmg6MjU6Ci90bXAvRkMy NF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0 ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5n L2luY2x1ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBp cyBkZXByZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVw cmVjYXRlZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1k LCBtZC0+cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5o OjgwMToxOiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFy a2VkIGRlcHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1i LCBzdHJ1Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgUE1ESU5G TyBudWxsX2NyeXB0b19wbWQuby5wbWQuYwogIENDIG51bGxfY3J5cHRvX3BtZC5vLnBtZC5vCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv ZHJpdmVycy9jcnlwdG8vc2NoZWR1bGVyL3NjaGVkdWxlcl9mYWlsb3Zlci5jOjU6CkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG9kZXYuaDoyMjoKSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUt bGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0by5oOjIwOgovdG1wL0ZD MjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlm NGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFu Zy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODQwOjk6IHdhcm5pbmc6ICdydGVfbWJ1Zl9idWZfYWRkcicg aXMgZGVwcmVjYXRlZDogU3ltYm9sIGlzIG5vdCB5ZXQgcGFydCBvZiBzdGFibGUgQUJJIFstV2Rl cHJlY2F0ZWQtZGVjbGFyYXRpb25zXQogICAgICAgIHJldHVybiBydGVfbWJ1Zl9idWZfYWRkciht ZCwgbWQtPnBvb2wpOwogICAgICAgICAgICAgICBeCi90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4x L3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRj OTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX21idWYu aDo4MDE6MTogbm90ZTogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBoYXMgYmVlbiBleHBsaWNpdGx5IG1h cmtlZCBkZXByZWNhdGVkIGhlcmUKcnRlX21idWZfYnVmX2FkZHIoc3RydWN0IHJ0ZV9tYnVmICpt Yiwgc3RydWN0IHJ0ZV9tZW1wb29sICptcCkKXgogIExEIG51bGxfY3J5cHRvX3BtZC5vCiAgQ0Mg bnVsbF9jcnlwdG9fcG1kX29wcy5vCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0Mgc2NoZWR1bGVy X211bHRpY29yZS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2 LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1 ODlkYzk4NTZiL2RwZGsvZHJpdmVycy9jcnlwdG8vbnVsbC9udWxsX2NyeXB0b19wbWRfb3BzLmM6 OToKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIv ZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0b2Rldl9w bWQuaDoyNToKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFw cC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRp dmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRl X21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Yg c3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRl X21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRf SzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQz MjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9p bmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJl ZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0 cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdl bmVyYXRlZC4KICBBUiBsaWJydGVfcG1kX251bGxfY3J5cHRvLmEKICBJTlNUQUxMLUxJQiBsaWJy dGVfcG1kX251bGxfY3J5cHRvLmEKPT0gQnVpbGQgZHJpdmVycy9jcnlwdG8vZHBhYTJfc2VjCklu IGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv ZHJpdmVycy9jcnlwdG8vc2NoZWR1bGVyL3NjaGVkdWxlcl9tdWx0aWNvcmUuYzo2OgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1s aW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82 NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZp bGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2 XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHIn IGlzIGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdk ZXByZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIo bWQsIG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIu MS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlk Yzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVm Lmg6ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBt YXJrZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAq bWIsIHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KICBDQyBkcGFhMl9zZWNfZHBzZWNpLm8KMSB3 YXJuaW5nIGdlbmVyYXRlZC4KICBBUiBsaWJydGVfcG1kX2NyeXB0b19zY2hlZHVsZXIuYQogIElO U1RBTEwtTElCIGxpYnJ0ZV9wbWRfY3J5cHRvX3NjaGVkdWxlci5hCj09IEJ1aWxkIGRyaXZlcnMv Y3J5cHRvL2RwYWFfc2VjCiAgQ0MgZHBhYV9zZWMubwogIFBNRElORk8gZHBhYV9zZWMuby5wbWQu YwotLQogIEFSIGxpYnJ0ZV9wbWRfZHBhYTJfc2VjLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfcG1k X2RwYWEyX3NlYy5hCj09IEJ1aWxkIGRyaXZlcnMvY3J5cHRvL3ZpcnRpbwogIENDIHZpcnRxdWV1 ZS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvZHJpdmVycy9jcnlwdG8vdmlydGlvL3ZpcnRxdWV1ZS5jOjc6Ci90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nL2luY2x1 ZGUvcnRlX21idWYuaDo4NDA6OTogd2FybmluZzogJ3J0ZV9tYnVmX2J1Zl9hZGRyJyBpcyBkZXBy ZWNhdGVkOiBTeW1ib2wgaXMgbm90IHlldCBwYXJ0IG9mIHN0YWJsZSBBQkkgWy1XZGVwcmVjYXRl ZC1kZWNsYXJhdGlvbnNdCiAgICAgICAgcmV0dXJuIHJ0ZV9tYnVmX2J1Zl9hZGRyKG1kLCBtZC0+ cG9vbCk7CiAgICAgICAgICAgICAgIF4KL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9k cGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5oOjgwMTox OiBub3RlOiAncnRlX21idWZfYnVmX2FkZHInIGhhcyBiZWVuIGV4cGxpY2l0bHkgbWFya2VkIGRl cHJlY2F0ZWQgaGVyZQpydGVfbWJ1Zl9idWZfYWRkcihzdHJ1Y3QgcnRlX21idWYgKm1iLCBzdHJ1 Y3QgcnRlX21lbXBvb2wgKm1wKQpeCjEgd2FybmluZyBnZW5lcmF0ZWQuCiAgQ0MgdmlydGlvX3Bj aS5vCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZf NjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZi L2RwZGsvZHJpdmVycy9jcnlwdG8vdmlydGlvL3ZpcnRpb19wY2kuYzoxNToKSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhh cHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9kcml2ZXJzL2Ny eXB0by92aXJ0aW8vdmlydGlvX3BjaS5oOjEyOgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3RtcC9G QzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5 ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xh bmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdG1w L0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2Vk OTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1j bGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5 ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfbWJ1Zi5o Ojg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0ZWQ6IFN5bWJv bCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9u c10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29sKTsKICAgICAg ICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4 YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5vdGU6ICdydGVf bWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVjYXRlZCBoZXJl CnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBydGVfbWVtcG9v bCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBDQyB2aXJ0aW9fcnh0eC5vCkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvZHJpdmVy cy9jcnlwdG8vdmlydGlvL3ZpcnRpb19yeHR4LmM6NDoKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90 bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3 ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay94ODZfNjQtbmF0aXZlLWxpbnV4YXBw LWNsYW5nL2luY2x1ZGUvcnRlX2NyeXB0b2Rldl9wbWQuaDoyNToKL3RtcC9GQzI0X0s0LjkuMTNf R0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlm OGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9y dGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlzIGRlcHJlY2F0 ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXByZWNhdGVkLWRl Y2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQsIG1kLT5wb29s KTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0 aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsv eDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6ODAxOjE6IG5v dGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJrZWQgZGVwcmVj YXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIsIHN0cnVjdCBy dGVfbWVtcG9vbCAqbXApCl4KICBQTURJTkZPIGNhYW1fanIuby5wbWQuYwogIENDIGNhYW1fanIu by5wbWQubwogIExEIGNhYW1fanIubwogIENDIGNhYW1fanJfY2FwYWJpbGl0aWVzLm8KMSB3YXJu aW5nIGdlbmVyYXRlZC4KICBDQyB2aXJ0aW9fY3J5cHRvZGV2Lm8KICBDQyBjYWFtX2pyX2h3Lm8K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC90bXAvRkMyNF9LNC45LjEzX0dDQzYuMi4xL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0MWI5ZjhhMjU4OWRjOTg1NmIvZHBk ay9kcml2ZXJzL2NyeXB0by92aXJ0aW8vdmlydGlvX2NyeXB0b2Rldi5jOjExOgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51 eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1u YXRpdmUtbGludXhhcHAtY2xhbmcvaW5jbHVkZS9ydGVfY3J5cHRvZGV2Lmg6MjI6CkluIGZpbGUg aW5jbHVkZWQgZnJvbSAvdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxp bnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsveDg2XzY0 LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9jcnlwdG8uaDoyMDoKL3RtcC9GQzI0 X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRk MzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRrL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcv aW5jbHVkZS9ydGVfbWJ1Zi5oOjg0MDo5OiB3YXJuaW5nOiAncnRlX21idWZfYnVmX2FkZHInIGlz IGRlcHJlY2F0ZWQ6IFN5bWJvbCBpcyBub3QgeWV0IHBhcnQgb2Ygc3RhYmxlIEFCSSBbLVdkZXBy ZWNhdGVkLWRlY2xhcmF0aW9uc10KICAgICAgICByZXR1cm4gcnRlX21idWZfYnVmX2FkZHIobWQs IG1kLT5wb29sKTsKICAgICAgICAgICAgICAgXgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94 ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4 NTZiL2RwZGsveDg2XzY0LW5hdGl2ZS1saW51eGFwcC1jbGFuZy9pbmNsdWRlL3J0ZV9tYnVmLmg6 ODAxOjE6IG5vdGU6ICdydGVfbWJ1Zl9idWZfYWRkcicgaGFzIGJlZW4gZXhwbGljaXRseSBtYXJr ZWQgZGVwcmVjYXRlZCBoZXJlCnJ0ZV9tYnVmX2J1Zl9hZGRyKHN0cnVjdCBydGVfbWJ1ZiAqbWIs IHN0cnVjdCBydGVfbWVtcG9vbCAqbXApCl4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KICBQTURJTkZP IHZpcnRpb19jcnlwdG9kZXYuby5wbWQuYwogIENDIHZpcnRpb19jcnlwdG9kZXYuby5wbWQubwog IENDIGNhYW1fanJfdWlvLm8KICBMRCB2aXJ0aW9fY3J5cHRvZGV2Lm8KICBBUiBsaWJydGVfcG1k X3ZpcnRpb19jcnlwdG8uYQogIElOU1RBTEwtTElCIGxpYnJ0ZV9wbWRfdmlydGlvX2NyeXB0by5h CiAgQVIgbGlicnRlX3BtZF9jYWFtX2pyLmEKICBJTlNUQUxMLUxJQiBsaWJydGVfcG1kX2NhYW1f anIuYQovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZlLWxpbnV4YXBwLWNs YW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbWsvcnRlLnNka2J1aWxk Lm1rOjQ5OiByZWNpcGUgZm9yIHRhcmdldCAnZHJpdmVycycgZmFpbGVkCm1ha2VbM106ICoqKiBb ZHJpdmVyc10gRXJyb3IgMgovdG1wL0ZDMjRfSzQuOS4xM19HQ0M2LjIuMS94ODZfNjQtbmF0aXZl LWxpbnV4YXBwLWNsYW5nLzVhN2VkOTlmNGQzMjQxNDFiOWY4YTI1ODlkYzk4NTZiL2RwZGsvbWsv cnRlLnNka3Jvb3QubWs6MTAwOiByZWNpcGUgZm9yIHRhcmdldCAnYWxsJyBmYWlsZWQKbWFrZVsy XTogKioqIFthbGxdIEVycm9yIDIKL3RtcC9GQzI0X0s0LjkuMTNfR0NDNi4yLjEveDg2XzY0LW5h dGl2ZS1saW51eGFwcC1jbGFuZy81YTdlZDk5ZjRkMzI0MTQxYjlmOGEyNTg5ZGM5ODU2Yi9kcGRr L21rL3J0ZS5zZGtpbnN0YWxsLm1rOjU3OiByZWNpcGUgZm9yIHRhcmdldCAncHJlX2luc3RhbGwn IGZhaWxlZAptYWtlWzFdOiAqKiogW3ByZV9pbnN0YWxsXSBFcnJvciAyCi90bXAvRkMyNF9LNC45 LjEzX0dDQzYuMi4xL3g4Nl82NC1uYXRpdmUtbGludXhhcHAtY2xhbmcvNWE3ZWQ5OWY0ZDMyNDE0 MWI5ZjhhMjU4OWRjOTg1NmIvZHBkay9tay9ydGUuc2Rrcm9vdC5tazo3OTogcmVjaXBlIGZvciB0 YXJnZXQgJ2luc3RhbGwnIGZhaWxlZAptYWtlOiAqKiogW2luc3RhbGxdIEVycm9yIDIKCkRQREsg U1RWIHRlYW0= --===============4991645416388769787==--