From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 23268EEE265 for ; Fri, 2 Jan 2026 05:39:44 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vbXsn-00087C-Ji; Fri, 02 Jan 2026 00:39:29 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vbXse-00086F-My for grub-devel@gnu.org; Fri, 02 Jan 2026 00:39:22 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vbXsc-0007Bd-55 for grub-devel@gnu.org; Fri, 02 Jan 2026 00:39:20 -0500 Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 6022U6JE014394; Fri, 2 Jan 2026 05:39:15 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pp1; bh=HBBCYs UtNkwFG3kA2mZYM/55Eu67YYUsIdfuoHZuPv0=; b=JtP1hKagjxTY/eWCoCwMp5 2cl3BDosgzwoYuYg5GE/riY82CmICkhLbr72KSleud/S7UdV/KwTx9NK+ShgmsAc j9UQNmGtghHKZxQiHskkKtehWw2aGqPVK2jXrBAuGiNMuCf6AFd3mxQ3ye9sRIJG lem82Zemh72e9f4fTpYxhJr+M48tyRVNuMM5IISqXFGf/RMwZMwmhHLvin3bTzfz xTSeoHej/dWIkznipdWaij2Mr1+jab1E3eWVZHdR5HzySJjvcPfQj0ch2N6551FV Ys1xY7Qj4I2Qik2OjWhruOGf0ZE1asq9qK/s9mI+f98EPpxHELtRmcJPc9xA8otg == Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4ba74ue617-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 02 Jan 2026 05:39:15 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 6021REFe003112; Fri, 2 Jan 2026 05:39:14 GMT Received: from smtprelay06.dal12v.mail.ibm.com ([172.16.1.8]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4bavg24yqs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 02 Jan 2026 05:39:14 +0000 Received: from smtpav01.dal12v.mail.ibm.com (smtpav01.dal12v.mail.ibm.com [10.241.53.100]) by smtprelay06.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 6025dDTa31982246 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 2 Jan 2026 05:39:13 GMT Received: from smtpav01.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3C2C358057; Fri, 2 Jan 2026 05:39:13 +0000 (GMT) Received: from smtpav01.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 32FED58058; Fri, 2 Jan 2026 05:39:11 +0000 (GMT) Received: from [9.39.29.39] (unknown [9.39.29.39]) by smtpav01.dal12v.mail.ibm.com (Postfix) with ESMTP; Fri, 2 Jan 2026 05:39:10 +0000 (GMT) Message-ID: <7a87975f-8a05-4bdc-be97-202c1ba4e2fe@linux.ibm.com> Date: Fri, 2 Jan 2026 11:09:10 +0530 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2] tests: add functional tests for ecb/cbc helpers To: The development of GNU GRUB , Glenn Washburn Cc: daniel.kiper@oracle.com, stefanb@linux.ibm.com, sudhakar@linux.ibm.com, sridharm@linux.ibm.com References: <20251208082816.538103-1-ssrish@linux.ibm.com> <20260101231440.02028d1a@crass-HP-ZBook-15-G2> Content-Language: en-US From: Srish Srinivasan In-Reply-To: <20260101231440.02028d1a@crass-HP-ZBook-15-G2> X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: bNyQVaL9wqiA8jjCkACxVuuTey_pfhjc X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTAyMDA0NyBTYWx0ZWRfX9jg5802vzZz+ iyGdPmKn5V3I6xFy72mV9mr/biofXkq5bQpUXabznidundNr5yx5THXUSCZgAyvRFPjIs8qGxeZ 9YC/DE/L1ylg3VZ7p5mt1WM/9A2RmQjuK4MLi2HhwSIGejluMV+vaUxCEznQFVEY7Ztg/3lhk7O +L26wbm+TyOWo5ndtstPGamN4UfmHJixF6/nNC+MJjSxB2VPlGR7MZzYlNQs3iOSVKyJBI1730/ M+Lg+1P2o/F3qLjbkc3SMq1qQ6DyUavxD19vb/IgYjnS89Fw+fAMxuOsoWMgrjFBiEf4c8SZ4r6 6AlHMm1s9a2zv10yArBam/voMFcYpk8RQEMIoIxU2WHSuXBKdcRLQkVHKenf/WUv1gLIBH3urZz Pzav58BFRBUPyOKmMLy1a24UKp+0NK+/NixRTtfRHN7bmAy8N86A+tYlgdjdZcY1AR38MW5dcMd RaT98O5FMSlPchinXgA== X-Authority-Analysis: v=2.4 cv=AN8t5o3d c=1 sm=1 tr=0 ts=69575a03 cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=VkNPw1HP01LnGYTKEx00:22 a=mDV3o1hIAAAA:8 a=VnNF1IyMAAAA:8 a=mDawjr_wAAAA:8 a=53fs5Vcy9CV7zd0aLWgA:9 a=QEXdDO2ut3YA:10 a=ReDwcL146FwA:10 a=PQcbNEmgcmiE31l78FTG:22 X-Proofpoint-GUID: bNyQVaL9wqiA8jjCkACxVuuTey_pfhjc X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-01_07,2025-12-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 impostorscore=0 adultscore=0 suspectscore=0 malwarescore=0 bulkscore=0 priorityscore=1501 lowpriorityscore=0 phishscore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2512120000 definitions=main-2601020047 Received-SPF: pass client-ip=148.163.156.1; envelope-from=ssrish@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: The development of GNU GRUB Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org Sender: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org SGkgR2xlbm4sCnRoYW5rcyBmb3IgdGFraW5nIGEgbG9vay4KCk9uIDEvMi8yNiAxMDo0NCBBTSwg R2xlbm4gV2FzaGJ1cm4gd3JvdGU6Cj4gT24gTW9uLCAgOCBEZWMgMjAyNSAxMzo1ODoxNiArMDUz MAo+IFNyaXNoIFNyaW5pdmFzYW4gPHNzcmlzaEBsaW51eC5pYm0uY29tPiB3cm90ZToKPgo+PiBU ZXN0IHRoZSBmb2xsb3dpbmcgaGVscGVyIGZ1bmN0aW9ucyB1c2luZyBBRVMgd2l0aCAxMjgsIDE5 MiwgYW5kCj4+IDI1NiBiaXQga2V5czoKPj4KPj4gZ3J1Yl9jcnlwdG9fZWNiX2VuY3J5cHQKPj4g Z3J1Yl9jcnlwdG9fZWNiX2RlY3J5cHQKPj4gZ3J1Yl9jcnlwdG9fY2JjX2VuY3J5cHQKPj4gZ3J1 Yl9jcnlwdG9fY2JjX2RlY3J5cHQKPj4KPj4gU2lnbmVkLW9mZi1ieTogU3Jpc2ggU3Jpbml2YXNh biA8c3NyaXNoQGxpbnV4LmlibS5jb20+Cj4+IC0tLQo+PiAgIExpbmsgdG8gdjE6IGh0dHBzOi8v bGlzdHMuZ251Lm9yZy9hcmNoaXZlL2h0bWwvZ3J1Yi1kZXZlbC8yMDI1LTExL21zZzAwMjM3Lmh0 bWwKPj4gICBkb2NzL2dydWIudGV4aSAgICAgICAgICAgICAgICAgICAgICAgIHwgICA1ICsKPj4g ICBncnViLWNvcmUvTWFrZWZpbGUuY29yZS5kZWYgICAgICAgICAgIHwgICA1ICsKPj4gICBncnVi LWNvcmUvdGVzdHMvZWNiX2NiY190ZXN0LmMgICAgICAgIHwgMTk3ICsrKysrKysrKysrKysrKysr KysrKysrKysrCj4gSSB3b3VsZCBwcmVmZXIgaXQgYmUgbmFtZWQgbW9yZSBnZW5lcmFsbHkgc28g dGhlCj4gbmFtZSBzdGlsbCBtYWtlcyBzZW5zZSB3aGVuL2lmIGRpZmZlcmVudCBjaXBoZXIgbW9k ZSB0ZXN0cyBhcmUgYWRkZWQsCj4gcGVyaGFwcyBjcnlwdG9fY2lwaGVyX21vZGVfdGVzdC5jLgoK ClN1cmUsIEkgd2lsbCBtYWtlIHRoZSBjaGFuZ2UuCgoKPgo+PiAgIGdydWItY29yZS90ZXN0cy9l Y2JfY2JjX3ZlY3RvcnMuaCAgICAgfCAxMzUgKysrKysrKysrKysrKysrKysrCj4+ICAgZ3J1Yi1j b3JlL3Rlc3RzL2xpYi9mdW5jdGlvbmFsX3Rlc3QuYyB8ICAgMSArCj4+ICAgNSBmaWxlcyBjaGFu Z2VkLCAzNDMgaW5zZXJ0aW9ucygrKQo+PiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBncnViLWNvcmUv dGVzdHMvZWNiX2NiY190ZXN0LmMKPj4gICBjcmVhdGUgbW9kZSAxMDA2NDQgZ3J1Yi1jb3JlL3Rl c3RzL2VjYl9jYmNfdmVjdG9ycy5oCj4+Cj4+IGRpZmYgLS1naXQgYS9kb2NzL2dydWIudGV4aSBi L2RvY3MvZ3J1Yi50ZXhpCj4+IGluZGV4IDcxODEwMDliNi4uNjNhODJiYmEyIDEwMDY0NAo+PiAt LS0gYS9kb2NzL2dydWIudGV4aQo+PiArKysgYi9kb2NzL2dydWIudGV4aQo+PiBAQCAtNDA5Miw2 ICs0MDkyLDcgQEAgTW9kdWxlcyBjYW4gYmUgbG9hZGVkIHZpYSB0aGUgQGNvbW1hbmR7aW5zbW9k fSAoQHB4cmVme2luc21vZH0pIGNvbW1hbmQuCj4+ICAgKiBkbV9udl9tb2R1bGU6Ogo+PiAgICog ZHJpdmVtYXBfbW9kdWxlOjoKPj4gICAqIGRzYV9zZXhwX3Rlc3RfbW9kdWxlOjoKPj4gKyogZWNi X2NiY190ZXN0X21vZHVsZTo6Cj4+ICAgKiBlY2hvX21vZHVsZTo6Cj4+ICAgKiBlZmlfZ29wX21v ZHVsZTo6Cj4+ICAgKiBlZmlfdWdhX21vZHVsZTo6Cj4+IEBAIC00Njc3LDYgKzQ2NzgsMTAgQEAg bWFwcGluZ3MuIEB4cmVme2RyaXZlbWFwfSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KPj4gICBAc2Vj dGlvbiBkc2Ffc2V4cF90ZXN0Cj4+ICAgVGhpcyBtb2R1bGUgcHJvdmlkZXMgYSB0ZXN0IG9mIHRo ZSBsaWJnY3J5cHQgRFNBIGZ1bmN0aW9uYWxpdHkgaW4gR1JVQi4KPj4gICAKPj4gK0Bub2RlIGVj Yl9jYmNfdGVzdF9tb2R1bGUKPj4gK0BzZWN0aW9uIGVjYl9jYmNfdGVzdAo+PiArVGhpcyBtb2R1 bGUgaXMgaW50ZW5kZWQgZm9yIHBlcmZvcm1pbmcgZnVuY3Rpb25hbCB0ZXN0cyBmb3IgZWNiIGFu ZCBjYmMKPiBUaGlzIGlzIGEgYml0IGNyeXB0aWMgKGNiYyA/PSBDYW5hZGlhbiBCcm9hZGNhc3Rp bmcgQ29ycG9yYXRpb24pLiBJZiB3ZQo+IGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgbW9kdWxlIGFu ZCBmaWxlLCBJIHRoaW5rIHdlIGNvdWxkIHB1dDogIlRoaXMKPiBtb2R1bGUgcGVyZm9ybXMgdmFy aW91cyBjaXBoZXIgbW9kZSBlbmNyeXB0aW9uL2RlY3J5cHRpb24gdGVzdHMiLgoKU3VyZSwgSSB3 aWxsIGtlZXAgdGhlIGZpbGUgbmFtaW5nIGFuZCB0aGUgZGVzY3JpcHRpb24gbW9yZSBnZW5lcmlj CmFzIHBlciB5b3VyIHN1Z2dlc3Rpb24uCgo+Cj4gSXQgd291bGQgYmUgbmljZSB0byBoYXZlIG1v cmUgdGVzdHMgb2YgY3J5cHRvIGZ1bmN0aW9ucywgbGlrZQo+IGdydWJfY3J5cHRvX2hhc2guIEJ1 dCB0aGF0IGNhbiBiZSBmb3IgYW5vdGhlciB0aW1lLgo+Cj4gT3RoZXIgdGhhbiB0aGUgYWJvdmUs Cj4gUmV2aWV3ZWQtYnk6IEdsZW5uIFdhc2hidXJuIDxkZXZlbG9wbWVudEBlZmZpY2llbnRlay5j b20+CgoKVGhhbmtzIGZvciB0aGUgcmV2aWV3IGFuZCBmZWVkYmFjay4KSSB3aWxsIHNlbmQgb3V0 IHYzIHdpdGggdGhlc2UgY2hhbmdlcyBzaG9ydGx5LgoKCj4KPiBHbGVubgo+Cj4+ICsKPj4gICBA bm9kZSBlY2hvX21vZHVsZQo+PiAgIEBzZWN0aW9uIGVjaG8KPj4gICBUaGlzIG1vZHVsZSBwcm92 aWRlcyBzdXBwb3J0IGZvciB0aGUgQGNvbW1hbmR7ZWNob30gdG8gZGlzcGxheSBhIGxpbmUgb2Yg dGV4dC4KPj4gZGlmZiAtLWdpdCBhL2dydWItY29yZS9NYWtlZmlsZS5jb3JlLmRlZiBiL2dydWIt Y29yZS9NYWtlZmlsZS5jb3JlLmRlZgo+PiBpbmRleCBmYTRiYzU0YWEuLmEyOGRlM2E5MyAxMDA2 NDQKPj4gLS0tIGEvZ3J1Yi1jb3JlL01ha2VmaWxlLmNvcmUuZGVmCj4+ICsrKyBiL2dydWItY29y ZS9NYWtlZmlsZS5jb3JlLmRlZgo+PiBAQCAtMjI3Miw2ICsyMjcyLDExIEBAIG1vZHVsZSA9IHsK Pj4gICAgIGNvbW1vbiA9IHRlc3RzL2FyZ29uMl90ZXN0LmM7Cj4+ICAgfTsKPj4gICAKPj4gK21v ZHVsZSA9IHsKPj4gKyAgbmFtZSA9IGVjYl9jYmNfdGVzdDsKPj4gKyAgY29tbW9uID0gdGVzdHMv ZWNiX2NiY190ZXN0LmM7Cj4+ICt9Owo+PiArCj4+ICAgbW9kdWxlID0gewo+PiAgICAgbmFtZSA9 IGxlZ2FjeV9wYXNzd29yZF90ZXN0Owo+PiAgICAgY29tbW9uID0gdGVzdHMvbGVnYWN5X3Bhc3N3 b3JkX3Rlc3QuYzsKPj4gZGlmZiAtLWdpdCBhL2dydWItY29yZS90ZXN0cy9lY2JfY2JjX3Rlc3Qu YyBiL2dydWItY29yZS90ZXN0cy9lY2JfY2JjX3Rlc3QuYwo+PiBuZXcgZmlsZSBtb2RlIDEwMDY0 NAo+PiBpbmRleCAwMDAwMDAwMDAuLmU5ODhhYjIyNAo+PiAtLS0gL2Rldi9udWxsCj4+ICsrKyBi L2dydWItY29yZS90ZXN0cy9lY2JfY2JjX3Rlc3QuYwo+PiBAQCAtMCwwICsxLDE5NyBAQAo+PiAr LyoKPj4gKyAqICBHUlVCICAtLSAgR1JhbmQgVW5pZmllZCBCb290bG9hZGVyCj4+ICsgKiAgQ29w eXJpZ2h0IChDKSAyMDI1IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgo+PiArICoKPj4g KyAqICBHUlVCIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v ciBtb2RpZnkKPj4gKyAqICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQo+PiArICogIHRoZSBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCj4+ICsgKiAgKGF0 IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KPj4gKyAqCj4+ICsgKiAgR1JVQiBpcyBk aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAo+PiArICogIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCj4+ICsgKiAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZQo+PiArICogIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBt b3JlIGRldGFpbHMuCj4+ICsgKgo+PiArICogIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNv cHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCj4+ICsgKiAgYWxvbmcgd2l0aCBH UlVCLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lgo+PiArICov Cj4+ICsKPj4gKyNpbmNsdWRlIDxncnViL3Rlc3QuaD4KPj4gKyNpbmNsdWRlIDxncnViL2RsLmg+ Cj4+ICsjaW5jbHVkZSA8Z3J1Yi9taXNjLmg+Cj4+ICsjaW5jbHVkZSA8Z3J1Yi9jcnlwdG8uaD4K Pj4gKwo+PiArI2luY2x1ZGUgImVjYl9jYmNfdmVjdG9ycy5oIgo+PiArCj4+ICtHUlVCX01PRF9M SUNFTlNFICgiR1BMdjMrIik7Cj4+ICsKPj4gKy8qIFBlcmZvcm0gY2lwaGVyIGxvb2t1cCwgaGFu ZGxlIGluaXQsIGFuZCBrZXkgc2V0dGluZy4gKi8KPj4gK3N0YXRpYyBncnViX2NyeXB0b19jaXBo ZXJfaGFuZGxlX3QKPj4gK2hhbmRsZV9pbml0IChzdHJ1Y3QgdmVjdG9yIHZlYywgZ3J1Yl9jcnlw dG9fY2lwaGVyX2hhbmRsZV90IGhhbmRsZSkKPj4gK3sKPj4gKyAgZ2NyeV9lcnJfY29kZV90IGVy cjsKPj4gKwo+PiArICBjb25zdCBnY3J5X2NpcGhlcl9zcGVjX3QgKmNpcGhlciA9IGdydWJfY3J5 cHRvX2xvb2t1cF9jaXBoZXJfYnlfbmFtZSAodmVjLmNpcGhlcik7Cj4+ICsgIGdydWJfdGVzdF9h c3NlcnQgKGNpcGhlciAhPSBOVUxMLCAiXG4lczogY2lwaGVyIGxvb2t1cCBmYWlsZWQgZm9yICVz IiwgdmVjLm1vZGUsIHZlYy5jaXBoZXIpOwo+PiArICBpZiAoY2lwaGVyID09IE5VTEwpCj4+ICsg ICAgcmV0dXJuIE5VTEw7Cj4+ICsKPj4gKyAgaGFuZGxlID0gZ3J1Yl9jcnlwdG9fY2lwaGVyX29w ZW4gKGNpcGhlcik7Cj4+ICsgIGdydWJfdGVzdF9hc3NlcnQgKGhhbmRsZSAhPSBOVUxMLCAiXG4l czogaGFuZGxlIGluaXQgZmFpbGVkIGZvciAlcyIsIHZlYy5tb2RlLCB2ZWMuY2lwaGVyKTsKPj4g KyAgaWYgKGhhbmRsZSA9PSBOVUxMKQo+PiArICAgIHJldHVybiBOVUxMOwo+PiArCj4+ICsgIGVy ciA9IGdydWJfY3J5cHRvX2NpcGhlcl9zZXRfa2V5IChoYW5kbGUsIChncnViX3VpbnQ4X3QgKikg dmVjLmtleSwgdmVjLmtleWxlbik7Cj4+ICsgIGdydWJfdGVzdF9hc3NlcnQgKGVyciA9PSBHUEdf RVJSX05PX0VSUk9SLCAiXG4lczoga2V5IHNldCBvZiBzaXplICVkIGZhaWxlZCBmb3IgJXMgd2l0 aCBlcnIgPSAlZCIsCj4+ICsgICAgICAgICAgICAgICAgICAgIHZlYy5tb2RlLCB2ZWMua2V5bGVu LCB2ZWMuY2lwaGVyLCBlcnIpOwo+PiArICBpZiAoZXJyICE9IEdQR19FUlJfTk9fRVJST1IpCj4+ ICsgICAgewo+PiArICAgICAgZ3J1Yl9jcnlwdG9fY2lwaGVyX2Nsb3NlIChoYW5kbGUpOwo+PiAr ICAgICAgcmV0dXJuIE5VTEw7Cj4+ICsgICAgfQo+PiArCj4+ICsgIHJldHVybiBoYW5kbGU7Cj4+ ICt9Cj4+ICsKPj4gK3N0YXRpYyB2b2lkCj4+ICtlY2JfdGVzdCAoc3RydWN0IHZlY3RvciB2ZWMp Cj4+ICt7Cj4+ICsgIGdjcnlfZXJyX2NvZGVfdCBnY3J5X2VycjsKPj4gKyAgZ3J1Yl9jcnlwdG9f Y2lwaGVyX2hhbmRsZV90IGhhbmRsZSA9IE5VTEw7Cj4+ICsgIGdydWJfdWludDhfdCAqcGxhaW50 ZXh0ID0gTlVMTCwgKmNpcGhlcnRleHQgPSBOVUxMOwo+PiArICBncnViX2ludDMyX3QgcmM7Cj4+ ICsKPj4gKyAgaGFuZGxlID0gaGFuZGxlX2luaXQgKHZlYywgaGFuZGxlKTsKPj4gKyAgaWYgKGhh bmRsZSA9PSBOVUxMKQo+PiArICAgIHJldHVybjsKPj4gKwo+PiArICAvKiBUZXN0IGVuY3J5cHRp b24uICovCj4+ICsgIGNpcGhlcnRleHQgPSBncnViX3phbGxvYyAodmVjLnBsZW4pOwo+PiArICBn cnViX3Rlc3RfYXNzZXJ0IChjaXBoZXJ0ZXh0ICE9IE5VTEwsICJcbmVjYjogY2lwaGVydGV4dCBi dWZmZXIgYWxsb2NhdGlvbiBmYWlsZWQiKTsKPj4gKyAgaWYgKGNpcGhlcnRleHQgPT0gTlVMTCkK Pj4gKyAgICBnb3RvIG91dF9oYW5kbGU7Cj4+ICsKPj4gKyAgZ2NyeV9lcnIgPSBncnViX2NyeXB0 b19lY2JfZW5jcnlwdCAoaGFuZGxlLCBjaXBoZXJ0ZXh0LCB2ZWMucHRleHQsIHZlYy5wbGVuKTsK Pj4gKyAgZ3J1Yl90ZXN0X2Fzc2VydCAoZ2NyeV9lcnIgPT0gR1BHX0VSUl9OT19FUlJPUiwgIlxu ZWNiOiBlbmNyeXB0aW9uIGZhaWxlZCB3aXRoIGVyciA9ICVkIiwKPj4gKyAgICAgICAgICAgICAg ICAgICAgZ2NyeV9lcnIpOwo+PiArICBpZiAoZ2NyeV9lcnIgIT0gR1BHX0VSUl9OT19FUlJPUikK Pj4gKyAgICBnb3RvIG91dF9jdDsKPj4gKwo+PiArICByYyA9IGdydWJfbWVtY21wIChjaXBoZXJ0 ZXh0LCB2ZWMuY3RleHQsIHZlYy5wbGVuKTsKPj4gKyAgZ3J1Yl90ZXN0X2Fzc2VydCAocmMgPT0g MCwgIlxuZWNiOiBjaXBoZXJ0ZXh0IG1pc21hdGNoIGFmdGVyIGVuY3J5cHRpb24iKTsKPj4gKyAg aWYgKHJjICE9IDApCj4+ICsgICAgZ290byBvdXRfY3Q7Cj4+ICsKPj4gKyAgLyogVGVzdCBkZWNy eXB0aW9uLiAqLwo+PiArICBwbGFpbnRleHQgPSBncnViX3phbGxvYyAodmVjLnBsZW4pOwo+PiAr ICBncnViX3Rlc3RfYXNzZXJ0IChwbGFpbnRleHQgIT0gTlVMTCwgIlxuZWNiOiBwbGFpbnRleHQg YnVmZmVyIGFsbG9jYXRpb24gZmFpbGVkIik7Cj4+ICsgIGlmIChwbGFpbnRleHQgPT0gTlVMTCkK Pj4gKyAgICBnb3RvIG91dF9jdDsKPj4gKwo+PiArICBnY3J5X2VyciA9IGdydWJfY3J5cHRvX2Vj Yl9kZWNyeXB0IChoYW5kbGUsIHBsYWludGV4dCwgY2lwaGVydGV4dCwgdmVjLnBsZW4pOwo+PiAr ICBncnViX3Rlc3RfYXNzZXJ0IChnY3J5X2VyciA9PSBHUEdfRVJSX05PX0VSUk9SLCAiXG5lY2I6 IGRlY3J5cHRpb24gZmFpbGVkIGZhaWxlZCB3aXRoIGVyciA9ICVkIiwKPj4gKyAgICAgICAgICAg ICAgICAgICAgZ2NyeV9lcnIpOwo+PiArICBpZiAoZ2NyeV9lcnIgIT0gR1BHX0VSUl9OT19FUlJP UikKPj4gKyAgICBnb3RvIG91dF9wdDsKPj4gKwo+PiArICByYyA9IGdydWJfbWVtY21wIChwbGFp bnRleHQsIHZlYy5wdGV4dCwgdmVjLnBsZW4pOwo+PiArICBncnViX3Rlc3RfYXNzZXJ0IChyYyA9 PSAwLCAiXG5lY2I6IHBsYWludGV4dCBtaXNtYXRjaCBhZnRlciBkZWNyeXB0aW9uIik7Cj4+ICsK Pj4gK291dF9wdDoKPj4gKyAgZ3J1Yl9mcmVlKHBsYWludGV4dCk7Cj4+ICtvdXRfY3Q6Cj4+ICsg IGdydWJfZnJlZShjaXBoZXJ0ZXh0KTsKPj4gK291dF9oYW5kbGU6Cj4+ICsgIGdydWJfY3J5cHRv X2NpcGhlcl9jbG9zZShoYW5kbGUpOwo+PiArfQo+PiArCj4+ICtzdGF0aWMgdm9pZAo+PiArY2Jj X3Rlc3QgKHN0cnVjdCB2ZWN0b3IgdmVjKQo+PiArewo+PiArICBnY3J5X2Vycl9jb2RlX3QgZ2Ny eV9lcnI7Cj4+ICsgIGdydWJfY3J5cHRvX2NpcGhlcl9oYW5kbGVfdCBoYW5kbGUgPSBOVUxMOwo+ PiArICBncnViX3VpbnQ4X3QgKnBsYWludGV4dCA9IE5VTEwsICpjaXBoZXJ0ZXh0ID0gTlVMTDsK Pj4gKyAgZ3J1Yl91aW50MzJfdCAqaXYgPSBOVUxMOwo+PiArICBncnViX2ludDMyX3QgcmM7Cj4+ ICsKPj4gKyAgaGFuZGxlID0gaGFuZGxlX2luaXQgKHZlYywgaGFuZGxlKTsKPj4gKyAgaWYgKGhh bmRsZSA9PSBOVUxMKQo+PiArICAgIHJldHVybjsKPj4gKwo+PiArICAvKiBUZXN0IEVuY3J5cHRp b24gKi8KPj4gKyAgaXYgPSBncnViX21hbGxvYyh2ZWMuaXZsZW4pOwo+PiArICBncnViX3Rlc3Rf YXNzZXJ0IChpdiAhPSBOVUxMLCAiXG5jYmM6IElWIGJ1ZmZlciBhbGxvY2F0aW9uIGZhaWxlZCIp Owo+PiArICBpZiAoaXYgPT0gTlVMTCkKPj4gKyAgICBnb3RvIG91dF9oYW5kbGU7Cj4+ICsKPj4g KyAgZ3J1Yl9tZW1jcHkgKGl2LCB2ZWMuaXZfaW4sIHZlYy5pdmxlbik7Cj4+ICsKPj4gKyAgY2lw aGVydGV4dCA9IGdydWJfemFsbG9jICh2ZWMucGxlbik7Cj4+ICsgIGdydWJfdGVzdF9hc3NlcnQg KGNpcGhlcnRleHQgIT0gTlVMTCwgIlxuY2JjOiBjaXBoZXJ0ZXh0IGJ1ZmZlciBhbGxvY2F0aW9u IGZhaWxlZCIpOwo+PiArICBpZiAoY2lwaGVydGV4dCA9PSBOVUxMKQo+PiArICAgIGdvdG8gb3V0 X2l2Owo+PiArCj4+ICsgIGdjcnlfZXJyID0gZ3J1Yl9jcnlwdG9fY2JjX2VuY3J5cHQgKGhhbmRs ZSwgY2lwaGVydGV4dCwgdmVjLnB0ZXh0LCB2ZWMucGxlbiwgaXYpOwo+PiArICBncnViX3Rlc3Rf YXNzZXJ0IChnY3J5X2VyciA9PSBHUEdfRVJSX05PX0VSUk9SLCAiXG5jYmM6IGVuY3J5cHRpb24g ZmFpbGVkIHdpdGggZXJyID0gJWQiLAo+PiArICAgICAgICAgICAgICAgICAgICBnY3J5X2Vycik7 Cj4+ICsgIGlmIChnY3J5X2VyciAhPSBHUEdfRVJSX05PX0VSUk9SKQo+PiArICAgIGdvdG8gb3V0 X2N0Owo+PiArCj4+ICsgIHJjID0gZ3J1Yl9tZW1jbXAgKGNpcGhlcnRleHQsIHZlYy5jdGV4dCwg dmVjLnBsZW4pOwo+PiArICBncnViX3Rlc3RfYXNzZXJ0IChyYyA9PSAwLCAiXG5jYmM6IGNpcGhl cnRleHQgbWlzbWF0Y2ggYWZ0ZXIgZW5jcnlwdGlvbiIpOwo+PiArICBpZiAocmMgIT0gMCkKPj4g KyAgICBnb3RvIG91dF9jdDsKPj4gKwo+PiArICByYyA9IGdydWJfbWVtY21wIChpdiwgdmVjLml2 X291dCwgdmVjLml2bGVuKTsKPj4gKyAgZ3J1Yl90ZXN0X2Fzc2VydCAocmMgPT0gMCwgIlxuY2Jj OiBJViBvdXQgbWlzbWF0Y2ggYWZ0ZXIgZW5jcnlwdGlvbiIpOwo+PiArICBpZiAocmMgIT0gMCkK Pj4gKyAgICBnb3RvIG91dF9jdDsKPj4gKwo+PiArICAvKiBUZXN0IERlY3J5cHRpb24gICovCj4+ ICsgIGdydWJfbWVtY3B5IChpdiwgdmVjLml2X2luLCB2ZWMuaXZsZW4pOwo+PiArCj4+ICsgIHBs YWludGV4dCA9IGdydWJfemFsbG9jICh2ZWMucGxlbik7Cj4+ICsgIGdydWJfdGVzdF9hc3NlcnQg KHBsYWludGV4dCAhPSBOVUxMLCAiXG5jYmM6IHBsYWludGV4dCBidWZmZXIgYWxsb2NhdGlvbiBm YWlsZWQiKTsKPj4gKyAgaWYgKHBsYWludGV4dCA9PSBOVUxMKQo+PiArICAgIGdvdG8gb3V0X2N0 Owo+PiArCj4+ICsgIGdjcnlfZXJyID0gZ3J1Yl9jcnlwdG9fY2JjX2RlY3J5cHQgKGhhbmRsZSwg cGxhaW50ZXh0LCBjaXBoZXJ0ZXh0LCB2ZWMucGxlbiwgaXYpOwo+PiArICBncnViX3Rlc3RfYXNz ZXJ0IChnY3J5X2VyciA9PSBHUEdfRVJSX05PX0VSUk9SLCAiXG5jYmM6IGRlY3J5cHRpb24gZmFp bGVkIHdpdGggZXJyID0gJWQiLAo+PiArICAgICAgICAgICAgICAgICAgICBnY3J5X2Vycik7Cj4+ ICsgIGlmIChnY3J5X2VyciAhPSBHUEdfRVJSX05PX0VSUk9SKQo+PiArICAgIGdvdG8gb3V0X3B0 Owo+PiArCj4+ICsgIHJjID0gZ3J1Yl9tZW1jbXAgKHBsYWludGV4dCwgdmVjLnB0ZXh0LCB2ZWMu cGxlbik7Cj4+ICsgIGdydWJfdGVzdF9hc3NlcnQgKHJjID09IDAsICJcbmNiYzogcGxhaW50ZXh0 IG1pc21hdGNoIGFmdGVyIGRlY3J5cHRpb24iKTsKPj4gKwo+PiArb3V0X3B0Ogo+PiArICBncnVi X2ZyZWUocGxhaW50ZXh0KTsKPj4gK291dF9jdDoKPj4gKyAgZ3J1Yl9mcmVlKGNpcGhlcnRleHQp Owo+PiArb3V0X2l2Ogo+PiArICBncnViX2ZyZWUoaXYpOwo+PiArb3V0X2hhbmRsZToKPj4gKyAg Z3J1Yl9jcnlwdG9fY2lwaGVyX2Nsb3NlKGhhbmRsZSk7Cj4+ICt9Cj4+ICsKPj4gK3N0YXRpYyB2 b2lkCj4+ICtlY2JfY2JjX3Rlc3QgKHZvaWQpCj4+ICt7Cj4+ICsgIGdydWJfc2l6ZV90IGk7Cj4+ ICsKPj4gKyAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUgKHZlY3MpOyBpKyspCj4+ICsgICAg ewo+PiArICAgICAgaWYgKGdydWJfc3RyY21wICh2ZWNzW2ldLm1vZGUsICJlY2IiKSA9PSAwKQo+ PiArICAgICAgICBlY2JfdGVzdCh2ZWNzW2ldKTsKPj4gKyAgICAgIGVsc2UgaWYgKGdydWJfc3Ry Y21wICh2ZWNzW2ldLm1vZGUsICJjYmMiKSA9PSAwKQo+PiArICAgICAgICBjYmNfdGVzdCh2ZWNz W2ldKTsKPj4gKyAgICAgIGVsc2UKPj4gKyAgICAgICAgewo+PiArICAgICAgICAgIGdydWJfdGVz dF9hc3NlcnQoMCwgIlxuJXMgbW9kZSB1bnN1cHBvcnRlZCBmb3IgdGVzdGluZyIsIHZlY3NbaV0u bW9kZSk7Cj4+ICsgICAgICAgICAgcmV0dXJuOwo+PiArICAgICAgICB9Cj4+ICsgICAgfQo+PiAr fQo+PiArCj4+ICsvKiBSZWdpc3RlciBleGFtcGxlX3Rlc3QgbWV0aG9kIGFzIGEgZnVuY3Rpb25h bCB0ZXN0LiAgKi8KPj4gK0dSVUJfRlVOQ1RJT05BTF9URVNUIChlY2JfY2JjX3Rlc3QsIGVjYl9j YmNfdGVzdCk7Cj4+IGRpZmYgLS1naXQgYS9ncnViLWNvcmUvdGVzdHMvZWNiX2NiY192ZWN0b3Jz LmggYi9ncnViLWNvcmUvdGVzdHMvZWNiX2NiY192ZWN0b3JzLmgKPj4gbmV3IGZpbGUgbW9kZSAx MDA2NDQKPj4gaW5kZXggMDAwMDAwMDAwLi44ZWY5NDhiNDYKPj4gLS0tIC9kZXYvbnVsbAo+PiAr KysgYi9ncnViLWNvcmUvdGVzdHMvZWNiX2NiY192ZWN0b3JzLmgKPj4gQEAgLTAsMCArMSwxMzUg QEAKPj4gK3N0cnVjdCB2ZWN0b3IKPj4gK3sKPj4gKyAgY29uc3QgY2hhciAqY2lwaGVyOwo+PiAr ICBjb25zdCBjaGFyICptb2RlOwo+PiArICBjb25zdCBjaGFyICprZXk7Cj4+ICsgIGdydWJfdWlu dDMyX3Qga2V5bGVuOwo+PiArICBjb25zdCBjaGFyICpwdGV4dDsKPj4gKyAgZ3J1Yl91aW50MzJf dCBwbGVuOwo+PiArICBjb25zdCBjaGFyICpjdGV4dDsKPj4gKyAgY29uc3QgY2hhciAqaXZfaW47 Cj4+ICsgIGNvbnN0IGNoYXIgKml2X291dDsKPj4gKyAgZ3J1Yl91aW50MzJfdCBpdmxlbjsKPj4g K30gdmVjc1tdID0gewo+PiArICB7Cj4+ICsgICAgLmNpcGhlciA9ICJhZXMiLAo+PiArICAgIC5t b2RlICAgPSAiZWNiIiwKPj4gKyAgICAua2V5ICAgID0gIlx4MDBceDAxXHgwMlx4MDNceDA0XHgw NVx4MDZceDA3Igo+PiArICAgICAgICAgICAgICAiXHgwOFx4MDlceDBhXHgwYlx4MGNceDBkXHgw ZVx4MGYiLAo+PiArICAgIC5rZXlsZW4gPSAxNiwKPj4gKyAgICAucHRleHQgID0gIlx4MDBceDEx XHgyMlx4MzNceDQ0XHg1NVx4NjZceDc3Igo+PiArICAgICAgICAgICAgICAiXHg4OFx4OTlceGFh XHhiYlx4Y2NceGRkXHhlZVx4ZmYiLAo+PiArICAgIC5wbGVuICAgPSAxNiwKPj4gKyAgICAuY3Rl eHQgID0gIlx4NjlceGM0XHhlMFx4ZDhceDZhXHg3Ylx4MDRceDMwIgo+PiArICAgICAgICAgICAg ICAiXHhkOFx4Y2RceGI3XHg4MFx4NzBceGI0XHhjNVx4NWEiLAo+PiArICB9LAo+PiArICB7Cj4+ ICsgICAgLmNpcGhlciA9ICJhZXMiLAo+PiArICAgIC5tb2RlICAgPSAiZWNiIiwKPj4gKyAgICAu a2V5ICAgID0gIlx4MDBceDAxXHgwMlx4MDNceDA0XHgwNVx4MDZceDA3Igo+PiArICAgICAgICAg ICAgICAiXHgwOFx4MDlceDBhXHgwYlx4MGNceDBkXHgwZVx4MGYiCj4+ICsgICAgICAgICAgICAg ICJceDEwXHgxMVx4MTJceDEzXHgxNFx4MTVceDE2XHgxNyIsCj4+ICsgICAgLmtleWxlbiA9IDI0 LAo+PiArICAgIC5wdGV4dCAgPSAiXHgwMFx4MTFceDIyXHgzM1x4NDRceDU1XHg2Nlx4NzciCj4+ ICsgICAgICAgICAgICAgICJceDg4XHg5OVx4YWFceGJiXHhjY1x4ZGRceGVlXHhmZiIsCj4+ICsg ICAgLnBsZW4gICA9IDE2LAo+PiArICAgIC5jdGV4dCAgPSAiXHhkZFx4YTlceDdjXHhhNFx4ODZc eDRjXHhkZlx4ZTAiCj4+ICsgICAgICAgICAgICAgICJceDZlXHhhZlx4NzBceGEwXHhlY1x4MGRc eDcxXHg5MSIsCj4+ICsgIH0sCj4+ICsgIHsKPj4gKyAgICAuY2lwaGVyID0gImFlcyIsCj4+ICsg ICAgLm1vZGUgICA9ICJlY2IiLAo+PiArICAgIC5rZXkgICAgPSAiXHgwMFx4MDFceDAyXHgwM1x4 MDRceDA1XHgwNlx4MDciCj4+ICsgICAgICAgICAgICAgICJceDA4XHgwOVx4MGFceDBiXHgwY1x4 MGRceDBlXHgwZiIKPj4gKyAgICAgICAgICAgICAgIlx4MTBceDExXHgxMlx4MTNceDE0XHgxNVx4 MTZceDE3Igo+PiArICAgICAgICAgICAgICAiXHgxOFx4MTlceDFhXHgxYlx4MWNceDFkXHgxZVx4 MWYiLAo+PiArICAgIC5rZXlsZW4gPSAzMiwKPj4gKyAgICAucHRleHQgID0gIlx4MDBceDExXHgy Mlx4MzNceDQ0XHg1NVx4NjZceDc3Igo+PiArICAgICAgICAgICAgICAiXHg4OFx4OTlceGFhXHhi Ylx4Y2NceGRkXHhlZVx4ZmYiLAo+PiArICAgIC5wbGVuICAgPSAxNiwKPj4gKyAgICAuY3RleHQg ID0gIlx4OGVceGEyXHhiN1x4Y2FceDUxXHg2N1x4NDVceGJmIgo+PiArICAgICAgICAgICAgICAi XHhlYVx4ZmNceDQ5XHg5MFx4NGJceDQ5XHg2MFx4ODkiLAo+PiArICB9LAo+PiArICB7Cj4+ICsg ICAgLmNpcGhlciA9ICJhZXMiLAo+PiArICAgIC5tb2RlICAgPSAiY2JjIiwKPj4gKyAgICAua2V5 ICAgID0gIlx4YzJceDg2XHg2OVx4NmRceDg4XHg3Y1x4OWFceGEwIgo+PiArICAgICAgICAgICAg ICAiXHg2MVx4MWJceGJiXHgzZVx4MjBceDI1XHhhNFx4NWEiLAo+PiArICAgIC5rZXlsZW4gPSAx NiwKPj4gKyAgICAucHRleHQgID0gIlx4MDBceDAxXHgwMlx4MDNceDA0XHgwNVx4MDZceDA3Igo+ PiArICAgICAgICAgICAgICAiXHgwOFx4MDlceDBhXHgwYlx4MGNceDBkXHgwZVx4MGYiCj4+ICsg ICAgICAgICAgICAgICJceDEwXHgxMVx4MTJceDEzXHgxNFx4MTVceDE2XHgxNyIKPj4gKyAgICAg ICAgICAgICAgIlx4MThceDE5XHgxYVx4MWJceDFjXHgxZFx4MWVceDFmIiwKPj4gKyAgICAucGxl biAgID0gMzIsCj4+ICsgICAgLmN0ZXh0ICA9ICJceGQyXHg5Nlx4Y2RceDk0XHhjMlx4Y2NceGNm XHg4YSIKPj4gKyAgICAgICAgICAgICAgIlx4M2FceDg2XHgzMFx4MjhceGI1XHhlMVx4ZGNceDBh Igo+PiArICAgICAgICAgICAgICAiXHg3NVx4ODZceDYwXHgyZFx4MjVceDNjXHhmZlx4ZjkiCj4+ ICsgICAgICAgICAgICAgICJceDFiXHg4Mlx4NjZceGJlXHhhNlx4ZDZceDFhXHhiMSIsCj4+ICsg ICAgLml2X2luICA9ICJceDU2XHgyZVx4MTdceDk5XHg2ZFx4MDlceDNkXHgyOCIKPj4gKyAgICAg ICAgICAgICAgIlx4ZGRceGIzXHhiYVx4NjlceDVhXHgyZVx4NmZceDU4IiwKPj4gKyAgICAuaXZf b3V0ID0gIlx4NzVceDg2XHg2MFx4MmRceDI1XHgzY1x4ZmZceGY5Igo+PiArICAgICAgICAgICAg ICAiXHgxYlx4ODJceDY2XHhiZVx4YTZceGQ2XHgxYVx4YjEiLAo+PiArICAgIC5pdmxlbiAgPSAx NiwKPj4gKyAgfSwKPj4gKyAgewo+PiArICAgIC5jaXBoZXIgPSAiYWVzIiwKPj4gKyAgICAubW9k ZSAgID0gImNiYyIsCj4+ICsgICAgLmtleSAgICA9ICJceDhlXHg3M1x4YjBceGY3XHhkYVx4MGVc eDY0XHg1MiIKPj4gKyAgICAgICAgICAgICAgIlx4YzhceDEwXHhmM1x4MmJceDgwXHg5MFx4Nzlc eGU1Igo+PiArICAgICAgICAgICAgICAiXHg2Mlx4ZjhceGVhXHhkMlx4NTJceDJjXHg2Ylx4N2Ii LAo+PiArICAgIC5rZXlsZW4gPSAyNCwKPj4gKyAgICAucHRleHQgID0gIlx4NmJceGMxXHhiZVx4 ZTJceDJlXHg0MFx4OWZceDk2Igo+PiArICAgICAgICAgICAgICAiXHhlOVx4M2RceDdlXHgxMVx4 NzNceDkzXHgxN1x4MmEiCj4+ICsgICAgICAgICAgICAgICJceGFlXHgyZFx4OGFceDU3XHgxZVx4 MDNceGFjXHg5YyIKPj4gKyAgICAgICAgICAgICAgIlx4OWVceGI3XHg2Zlx4YWNceDQ1XHhhZlx4 OGVceDUxIgo+PiArICAgICAgICAgICAgICAiXHgzMFx4YzhceDFjXHg0Nlx4YTNceDVjXHhlNFx4 MTEiCj4+ICsgICAgICAgICAgICAgICJceGU1XHhmYlx4YzFceDE5XHgxYVx4MGFceDUyXHhlZiIK Pj4gKyAgICAgICAgICAgICAgIlx4ZjZceDlmXHgyNFx4NDVceGRmXHg0Zlx4OWJceDE3Igo+PiAr ICAgICAgICAgICAgICAiXHhhZFx4MmJceDQxXHg3Ylx4ZTZceDZjXHgzN1x4MTAiLAo+PiArICAg IC5wbGVuICAgPSA2NCwKPj4gKyAgICAuY3RleHQgID0gIlx4NGZceDAyXHgxZFx4YjJceDQzXHhi Y1x4NjNceDNkIgo+PiArICAgICAgICAgICAgICAiXHg3MVx4NzhceDE4XHgzYVx4OWZceGEwXHg3 MVx4ZTgiCj4+ICsgICAgICAgICAgICAgICJceGI0XHhkOVx4YWRceGE5XHhhZFx4N2RceGVkXHhm NCIKPj4gKyAgICAgICAgICAgICAgIlx4ZTVceGU3XHgzOFx4NzZceDNmXHg2OVx4MTRceDVhIgo+ PiArICAgICAgICAgICAgICAiXHg1N1x4MWJceDI0XHgyMFx4MTJceGZiXHg3YVx4ZTAiCj4+ICsg ICAgICAgICAgICAgICJceDdmXHhhOVx4YmFceGFjXHgzZFx4ZjFceDAyXHhlMCIKPj4gKyAgICAg ICAgICAgICAgIlx4MDhceGIwXHhlMlx4NzlceDg4XHg1OVx4ODhceDgxIgo+PiArICAgICAgICAg ICAgICAiXHhkOVx4MjBceGE5XHhlNlx4NGZceDU2XHgxNVx4Y2QiLAo+PiArICAgIC5pdl9pbiAg PSAiXHgwMFx4MDFceDAyXHgwM1x4MDRceDA1XHgwNlx4MDciCj4+ICsgICAgICAgICAgICAgICJc eDA4XHgwOVx4MGFceDBiXHgwY1x4MGRceDBlXHgwZiIsCj4+ICsgICAgLml2X291dCA9ICJceDA4 XHhiMFx4ZTJceDc5XHg4OFx4NTlceDg4XHg4MSIKPj4gKyAgICAgICAgICAgICAgIlx4ZDlceDIw XHhhOVx4ZTZceDRmXHg1Nlx4MTVceGNkIiwKPj4gKyAgICAuaXZsZW4gID0gMTYsCj4+ICsgIH0s Cj4+ICsgIHsKPj4gKyAgICAuY2lwaGVyID0gImFlcyIsCj4+ICsgICAgLm1vZGUgICA9ICJjYmMi LAo+PiArICAgIC5rZXkgICAgPSAiXHg2MFx4M2RceGViXHgxMFx4MTVceGNhXHg3MVx4YmUiCj4+ ICsgICAgICAgICAgICAgICJceDJiXHg3M1x4YWVceGYwXHg4NVx4N2RceDc3XHg4MSIKPj4gKyAg ICAgICAgICAgICAgIlx4MWZceDM1XHgyY1x4MDdceDNiXHg2MVx4MDhceGQ3Igo+PiArICAgICAg ICAgICAgICAiXHgyZFx4OThceDEwXHhhM1x4MDlceDE0XHhkZlx4ZjQiLAo+PiArICAgIC5rZXls ZW4gPSAzMiwKPj4gKyAgICAucHRleHQgID0gIlx4NmJceGMxXHhiZVx4ZTJceDJlXHg0MFx4OWZc eDk2Igo+PiArICAgICAgICAgICAgICAiXHhlOVx4M2RceDdlXHgxMVx4NzNceDkzXHgxN1x4MmEi Cj4+ICsgICAgICAgICAgICAgICJceGFlXHgyZFx4OGFceDU3XHgxZVx4MDNceGFjXHg5YyIKPj4g KyAgICAgICAgICAgICAgIlx4OWVceGI3XHg2Zlx4YWNceDQ1XHhhZlx4OGVceDUxIgo+PiArICAg ICAgICAgICAgICAiXHgzMFx4YzhceDFjXHg0Nlx4YTNceDVjXHhlNFx4MTEiCj4+ICsgICAgICAg ICAgICAgICJceGU1XHhmYlx4YzFceDE5XHgxYVx4MGFceDUyXHhlZiIKPj4gKyAgICAgICAgICAg ICAgIlx4ZjZceDlmXHgyNFx4NDVceGRmXHg0Zlx4OWJceDE3Igo+PiArICAgICAgICAgICAgICAi XHhhZFx4MmJceDQxXHg3Ylx4ZTZceDZjXHgzN1x4MTAiLAo+PiArICAgIC5wbGVuICAgPSA2NCwK Pj4gKyAgICAuY3RleHQgID0gIlx4ZjVceDhjXHg0Y1x4MDRceGQ2XHhlNVx4ZjFceGJhIgo+PiAr ICAgICAgICAgICAgICAiXHg3N1x4OWVceGFiXHhmYlx4NWZceDdiXHhmYlx4ZDYiCj4+ICsgICAg ICAgICAgICAgICJceDljXHhmY1x4NGVceDk2XHg3ZVx4ZGJceDgwXHg4ZCIKPj4gKyAgICAgICAg ICAgICAgIlx4NjdceDlmXHg3N1x4N2JceGM2XHg3MFx4MmNceDdkIgo+PiArICAgICAgICAgICAg ICAiXHgzOVx4ZjJceDMzXHg2OVx4YTlceGQ5XHhiYVx4Y2YiCj4+ICsgICAgICAgICAgICAgICJc eGE1XHgzMFx4ZTJceDYzXHgwNFx4MjNceDE0XHg2MSIKPj4gKyAgICAgICAgICAgICAgIlx4YjJc eGViXHgwNVx4ZTJceGMzXHg5Ylx4ZTlceGZjIgo+PiArICAgICAgICAgICAgICAiXHhkYVx4NmNc eDE5XHgwN1x4OGNceDZhXHg5ZFx4MWIiLAo+PiArICAgIC5pdl9pbiAgPSAiXHgwMFx4MDFceDAy XHgwM1x4MDRceDA1XHgwNlx4MDciCj4+ICsgICAgICAgICAgICAgICJceDA4XHgwOVx4MGFceDBi XHgwY1x4MGRceDBlXHgwZiIsCj4+ICsgICAgLml2X291dCA9ICJceGIyXHhlYlx4MDVceGUyXHhj M1x4OWJceGU5XHhmYyIKPj4gKyAgICAgICAgICAgICAgIlx4ZGFceDZjXHgxOVx4MDdceDhjXHg2 YVx4OWRceDFiIiwKPj4gKyAgICAuaXZsZW4gID0gMTYsCj4+ICsgIH0sCj4+ICt9Owo+PiBkaWZm IC0tZ2l0IGEvZ3J1Yi1jb3JlL3Rlc3RzL2xpYi9mdW5jdGlvbmFsX3Rlc3QuYyBiL2dydWItY29y ZS90ZXN0cy9saWIvZnVuY3Rpb25hbF90ZXN0LmMKPj4gaW5kZXggNzc2OTM0ZTFmLi44NGVmOTVi YmUgMTAwNjQ0Cj4+IC0tLSBhL2dydWItY29yZS90ZXN0cy9saWIvZnVuY3Rpb25hbF90ZXN0LmMK Pj4gKysrIGIvZ3J1Yi1jb3JlL3Rlc3RzL2xpYi9mdW5jdGlvbmFsX3Rlc3QuYwo+PiBAQCAtODIs NiArODIsNyBAQCBncnViX2Z1bmN0aW9uYWxfYWxsX3Rlc3RzIChncnViX2V4dGNtZF9jb250ZXh0 X3QgY3R4dCBfX2F0dHJpYnV0ZV9fICgodW51c2VkKSksCj4+ICAgICBncnViX2RsX2xvYWQgKCJz aGlmdF90ZXN0Iik7Cj4+ICAgICBncnViX2RsX2xvYWQgKCJhc24xX3Rlc3QiKTsKPj4gICAgIGdy dWJfZGxfbG9hZCAoImFyZ29uMl90ZXN0Iik7Cj4+ICsgIGdydWJfZGxfbG9hZCAoImVjYl9jYmNf dGVzdCIpOwo+PiAgIAo+PiAgICAgRk9SX0xJU1RfRUxFTUVOVFMgKHRlc3QsIGdydWJfdGVzdF9s aXN0KQo+PiAgICAgICBvayA9ICFncnViX3Rlc3RfcnVuICh0ZXN0KSAmJiBvazsKPiBfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IEdydWItZGV2ZWwgbWFp bGluZyBsaXN0Cj4gR3J1Yi1kZXZlbEBnbnUub3JnCj4gaHR0cHM6Ly9saXN0cy5nbnUub3JnL21h aWxtYW4vbGlzdGluZm8vZ3J1Yi1kZXZlbAoKdGhhbmtzLApTcmlzaC4KCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkdydWItZGV2ZWwgbWFpbGluZyBsaXN0 CkdydWItZGV2ZWxAZ251Lm9yZwpodHRwczovL2xpc3RzLmdudS5vcmcvbWFpbG1hbi9saXN0aW5m by9ncnViLWRldmVsCg==