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 D8A70CCA470 for ; Mon, 6 Oct 2025 07:27:15 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1v5fbD-0007bs-Sf; Mon, 06 Oct 2025 03:25:35 -0400 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 1v5fbB-0007bZ-Rg for grub-devel@gnu.org; Mon, 06 Oct 2025 03:25:33 -0400 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 1v5fb9-0001tG-6q for grub-devel@gnu.org; Mon, 06 Oct 2025 03:25:33 -0400 Received: from pps.filterd (m0360083.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5964Zifa022573; Mon, 6 Oct 2025 07:25:23 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=pp1; bh=RaKNzVNvMd1ffGk50H/CSCOcWO5g 7s6L6kkoCkgOZJw=; b=EUY1/n6gfG3A/8Gr9+352JBkazdN+WlbiKeDPkEab/XC xbDCDB95PgAJtXCmB1WzqyANSLRKqrPAj8ctAYl55h3q0gRJCgmM5lke/sWq5axy zDmbc+Agw2uPVEx0aaRDP4lWgL5/gSfNqu1DISXL75iovRJIXvFh42cawQfp7fVV 79NV34ADZ3DjlQaxh8zO7pir1Nzd0E63xXihocrWIelfQXx6Xqj0lzZ0wVgu1+l/ FG1mJgdvFLUzAJmS4nlG0i7h5I8jPg2CwoBudo8UMX8YlNNsO4ZsDcNWXls5DgWo 9S8dMsR0N7cQqRH4wxKukQjNWPH6mCWUXulJtDQDng== Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 49ju3gqwen-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 06 Oct 2025 07:25:22 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 5965dt65030972; Mon, 6 Oct 2025 07:25:21 GMT Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 49kfdjvrkh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 06 Oct 2025 07:25:21 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 5967PGDe29688224 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 6 Oct 2025 07:25:16 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8355F2004B; Mon, 6 Oct 2025 07:25:16 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 06A1520043; Mon, 6 Oct 2025 07:25:14 +0000 (GMT) Received: from localhost.localdomain (unknown [9.124.213.16]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Mon, 6 Oct 2025 07:25:13 +0000 (GMT) From: Sudhakar Kuppusamy To: grub-devel@gnu.org Cc: dja@axtens.net, jan.setjeeilers@oracle.com, julian.klode@canonical.com, mate.kukri@canonical.com, pjones@redhat.com, msuchanek@suse.com, mlewando@redhat.com, stefanb@linux.ibm.com, avnish@linux.ibm.com, nayna@linux.ibm.com, ssrish@linux.ibm.com, Sudhakar Kuppusamy , sridharm@linux.ibm.com Subject: [PATCH v18 00/20] Appended Signature Secure Boot Support for PowerPC Date: Mon, 6 Oct 2025 12:54:45 +0530 Message-ID: <20251006072508.19088-1-sudhakar@linux.ibm.com> X-Mailer: git-send-email 2.50.1 MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUxMDA0MDAxOCBTYWx0ZWRfX9n0VnOEJnLXA ASLKflHt0+Ek/cJ5gFJhiSAdOhwqEidb38RRt3hR0gNMVnZc3iDu63QmHFSqJ9ZmFFelXJaegVf fz6XA6njbTowScacSuLq7eIujJ+6zUET9pdjQn0gGGicpuZVPzFpxXXYfgDFB16awkzcQ8CiOy3 qdkulZCOp22v5W6qm0qxjRj9NTpspXB7d9FUaCFfI3YmO8XPcU87tG1/K2oJ7186+WANNMkk/oS TD4I0i26l4oYFGRHN+oEY+I8kJXd2CDrNXLNNm+sp+FVb8QQpzdSPTRXTO3RltC3QZXnkF4tc1i //5SXZAXwuqctRfAJhOfKS2Yi4BbA9tzMESquqfhCLejfTy5NsfvD4UR9Kny0Yw9nkaz2pdTyCe 9LSFz9HpRvCOFMhrFrEfD3CTyOmQ3g== X-Authority-Analysis: v=2.4 cv=I4dohdgg c=1 sm=1 tr=0 ts=68e36ee2 cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=IkcTkHD0fZMA:10 a=x6icFKpwvdMA:10 a=mDV3o1hIAAAA:8 a=NEAV23lmAAAA:8 a=VnNF1IyMAAAA:8 a=UgpUWkLa6fTaw-DeYSsA:9 a=QEXdDO2ut3YA:10 a=1MTM4Uk8f10A:10 a=cPQSjfK2_nFv0Q5t_7PE:22 X-Proofpoint-GUID: HedXgfnN-I4Qshqrg1qq1gP9jGGw8TKv X-Proofpoint-ORIG-GUID: HedXgfnN-I4Qshqrg1qq1gP9jGGw8TKv X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1117,Hydra:6.1.9,FMLib:17.12.80.40 definitions=2025-10-06_02,2025-10-02_03,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 lowpriorityscore=0 malwarescore=0 adultscore=0 spamscore=0 bulkscore=0 suspectscore=0 clxscore=1015 priorityscore=1501 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2509150000 definitions=main-2510040018 Received-SPF: pass client-ip=148.163.156.1; envelope-from=sudhakar@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.01, RCVD_IN_MSPIKE_WL=-0.01, 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-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org Sender: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org VGhpcyBwYXRjaCBzZXQgY29udGFpbnMgdjE4IHRoZSBjb25zb2xpZGF0ZWQgdmVyc2lvbiBvZiB0 aGUgcGF0Y2gKc2V0cyBmb3Igc2VjdXJlIGJvb3QgdXNpbmcgYXBwZW5kZWQgc2lnbmF0dXJlcyBv biBwb3dlcnBjLApyZWJhc2VkIG9uIHRvcCBvZiBnaXQgSEVBRC4KClRoZSB2MTcgc2VyaWVzIGlz IGF0Cmh0dHBzOi8vbGlzdHMuZ251Lm9yZy9hcmNoaXZlL2h0bWwvZ3J1Yi1kZXZlbC8yMDI1LTEw L21zZzAwMTIxLmh0bWwKCkxpbnV4IG9uIFBvd2VyIExQQVIgc2VjdXJlIGJvb3QgZW5zdXJlcyB0 aGUgaW50ZWdyaXR5IG9mIHRoZSBMaW51eCBib290CnN0YWNrLiBUaGUgaHlwZXJ2aXNvciBhbmQg cGFydGl0aW9uIGZpcm13YXJlIGFyZSBwYXJ0IG9mIHRoZSBjb3JlIHJvb3Qgb2YKdHJ1c3QuIFRo ZSBwYXJ0aXRpb24gZmlybXdhcmUgdmVyaWZpZXMgdGhlIHNpZ25hdHVyZSBvbiB0aGUgR1JVQiBp bWFnZQpiZWZvcmUgaGFuZGluZyBjb250cm9sIHRvIEdSVUIuIFNpbWlsYXJseSwgR1JVQiB2ZXJp ZmllcyB0aGUgc2lnbmF0dXJlIG9uCnRoZSBrZXJuZWwgaW1hZ2UgYmVmb3JlIGJvb3RpbmcgdGhl IE9TLiBUaGlzIGVuc3VyZXMgdGhhdCBldmVyeSBpbWFnZQpydW5uaW5nIGF0IHRoZSBib290IHRp bWUgaXMgdmVyaWZpZWQgYW5kIHRydXN0ZWQuIFVFRkkgcGxhdGZvcm1zIHJlbGllcwpvbiBQRUNP RkYgYmFzZWQgc2lnbmF0dXJlIHNjaGVtZS4gU2luY2UgUG93ZXIgaXMgbm90IGEgVUVGSSBwbGF0 Zm9ybSwgYW4KYWx0ZXJuYXRpdmUgbWVjaGFuaXNtIGlzIG5lZWRlZC4gUG93ZXIgYWxyZWFkeSB1 c2VzIGFwcGVuZGVkIHNpZ25hdHVyZXMKb24gdGhlIExpbnV4IEtlcm5lbCwgYW5kIGlzIG5vdyBl eHRlbmRlZCB0byBzaWduIHRoZSBncnViIGFzIHdlbGwuCgpMaW51eCBvbiBQb3dlciBhbHNvIGFs bG93cyBtdWx0aXBsZSBzaWduZXJzLCBhbmQgaWYgYW55IG9uZSBvZiB0aGUKc2lnbmF0dXJlIHBh c3NlcywgdGhlbiB0aGUgaW1hZ2UgcGFzc2VzIHRoZSB2YWxpZGF0aW9uLiBBcHBlbmRlZCBzaWdu YXR1cmUKc2NoZW1lIHVzZXMgQ01TIHN0cnVjdHVyZSB0byBjb250YWluIHNpZ25hdHVyZXMuIE9u IFBvd2VyLCB0aGUgbXVsdGlwbGUKc2lnbmF0dXJlIHN1cHBvcnQgcmVsaWVzIG9uIHRoZSBtdWx0 aXBsZSBzaWduZXJzIGZlYXR1cmVzIGFscmVhZHkgc3VwcG9ydGVkCmJ5IENNUyBzdGFuZGFyZHMu IEl0IGRvZXMgcmVxdWlyZSB0aGF0IGFsbCB0aGUgc2lnbmVycyBzaG91bGQgc2lnbiBhdCB0aGUK c2FtZSB0aW1lIGFuZCBhcmUgbm90IGFsbG93ZWQgdG8gYWRkIG9yIHJlbW92ZSB0aGUgc2lnbmF0 dXJlcyByYW5kb21seS4KCkJ5IGRlZmF1bHQsIExpbnV4IExQQVIgc2VjdXJlIGJvb3QgdXNlcyBz dGF0aWMga2V5IG1hbmFnZW1lbnRbMV0uIFRoaXMgbWVhbnMKdGhhdCBlYWNoIGltYWdlIGVtYmVk cyB0aGUga2V5cyBpdCBuZWVkcyB0byB2ZXJpZnkgdGhlIGltYWdlIGl0IGxvYWRzLgpGb3IgZXhh bXBsZSwgdGhlIGtleXMgdXNlZCB0byB2ZXJpZnkgdGhlIEdSVUIgaW1hZ2UgYXJlIGJ1aWx0IGlu dG8gdGhlCmZpcm13YXJlIGltYWdlLiBTaW1pbGFybHksIHRoZSBrZXlzIHVzZWQgZm9yIHZlcmlm eWluZyB0aGUga2VybmVsIGltYWdlCmFyZSBidWlsdCBpbnRvIHRoZSBHUlVCIGltYWdlLiBUaGVz ZSBhcmUgcHJlLWRlZmluZWQga2V5cyBhbmQgdGhleSBjYW5ub3QKYmUgbW9kaWZpZWQgYXQgcnVu dGltZS4gVGhlIGRyYXdiYWNrIG9mIHRoaXMgYXBwcm9hY2ggaXMgdGhhdCBrZXkgcm90YXRpb25z CnJlc3VsdHMgaW4gYm90aCBmaXJtd2FyZSBhbmQgT1MgdXBkYXRlcy4gVGhpcyBpcyB3aGVyZSBk eW5hbWljIGtleQptYW5hZ2VtZW50IGlzIHVzZWZ1bC4KCkFuIGFkbWluIGNhbiBzd2l0Y2ggZnJv bSBzdGF0aWMga2V5cyB0byBkeW5hbWljIGtleXMgYnkgY29vcmRpbmF0aW5nIHdpdGgKSGFyZHdh cmUgTWFuYWdlbWVudCBDb25zb2xlKEhNQykgYWRtaW4gYW5kIGVuYWJsaW5nIHRoZSByZXF1aXJl ZCBmbGFncwpmb3IgdGhlIGdpdmVuIExQQVIuCgpUaGUgZHluYW1pYyBrZXkgbWFuYWdlbWVudCBy ZWxpZXMgb24gdGhlIFBsYXRmb3JtIEtleVN0b3JlKFBLUylbMl0gc3RvcmFnZQphbGxvY2F0aW9u IGZvciBlYWNoIExQQVIgd2l0aCBpbmRpdmlkdWFsbHkgbWFuYWdlZCBhY2Nlc3MgY29udHJvbHMg dG8Kc3RvcmUgc2Vuc2l0aXZlIGluZm9ybWF0aW9uIHNlY3VyZWx5LiBPbmNlIHN3aXRjaGVkIHRv IGR5bmFtaWMga2V5cywgSE1DCmFkdmVydGlzZXMgdGhpcyBmbGFnIHRvIHRoZSBQb3dlclZNLCB3 aGljaCB0aGVuIGluaXRpYWxpemVzIHRoZSBQS1MKd2l0aCB0aGUgZGVmYXVsdCBzZWN2YXJzLiBJ dCBhbHNvIGNyZWF0ZXMgYSB2YXJpYWJsZSBTQl9WRVJTSU9OIHRoYXQKcmVwcmVzZW50cyB0aGUg c2VjdXJlIGJvb3Qga2V5IG1hbmFnZW1lbnQgbW9kZS4gVGhlIGRlZmF1bHQgc2VjdmFycyBhcmUK dXNlZCBieSBQYXJ0aXRpb24gZmlybXdhcmUsIGdydWIgYW5kIHRoZSBsaW51eCBrZXJuZWwgdG8g cmVhZHMga2V5cyBmb3IKdmVyaWZpY2F0aW9uLiBUaGVzZSBzZWN2YXJzIGNhbiBiZSBtYW5hZ2Vk IGJ5IHVzZXIgaW50ZXJmYWNlIGV4cG9zZWQgdmlhCmxpbnV4IGtlcm5lbC4gVGhlIGxpbnV4IGtl cm5lbCBhbHJlYWR5IHN1cHBvcnRzIHRoaXMgaW50ZXJmYWNlIGFuZAppdCBpcyBhdmFpbGFibGUg aW4gdGhlIHVwc3RyZWFtIGtlcm5lbC4KClRoaXMgcGF0Y2hzZXQgYWRkcyB0aGUgYXBwZW5kZWQg c2lnbmF0dXJlIHN1cHBvcnQgYm90aCBmb3Igc2lnbmluZyBhbmQKdmVyaWZpY2F0aW9uIGFuZCB0 aGUga2V5IG1hbmFnZW1lbnQgdG8gdGhlIGdydWIgY29tcG9uZW50LiBUaGUgd2hvbGUKcGF0Y2hz ZXQgY2FuIGJlIHNwbGl0IGludG8gZm9sbG93aW5nIGZvdXIgbWFpbiBwYXJ0czoKClRoZSBzZXJp ZXMgaGFzIGZvbGxvd2luZyBmb3VyIG1haW4gcGFydHM6CgoxLikgU2lnbiBncnViLmVsZiB3aXRo IGFuIGFwcGVuZGVkIHNpZ25hdHVyZS4gKFBhdGNoZXMgMSwgMTgsIDE5KQoKVGhlc2UgcGF0Y2hl cyBwcm92aWRlIHNvbWUgaW5mcmFzdHJ1Y3R1cmUgYW5kIGRvY3VtZW50YXRpb24gZm9yCnNpZ25p bmcgZ3J1YidzIGNvcmUuZWxmIHdpdGggYSBMaW51eC1rZXJuZWwtbW9kdWxlIHN0eWxlIGFwcGVu ZGVkCnNpZ25hdHVyZS4KCkFuIGFwcGVuZGVkIHNpZ25hdHVyZSBpcyBhICdkdW1iJyBzaWduYXR1 cmUgb3ZlciB0aGUgY29udGVudHMgb2YgYQpmaWxlLiAoSXQgaXMgZGlzdGluY3QgZnJvbSBzY2hl bWVzIGxpa2UgQXV0aGVudGljb2RlIHRoYXQgYXJlIGF3YXJlIG9mCnRoZSBzdHJ1Y3R1cmUgb2Yg dGhlIGZpbGUgYW5kIG9ubHkgc2lnbiBjZXJ0YWluIHBhcnRzLikgVGhlIHNpZ25hdHVyZQppcyB3 cmFwcGVkIGluIGEgUEtDUyM3IG1lc3NhZ2UsIGFuZCBpcyBhcHBlbmRlZCB0byB0aGUgc2lnbmVk IGZpbGUKYWxvbmcgd2l0aCBzb21lIG1ldGFkYXRhIGFuZCBhIG1hZ2ljIHN0cmluZy4gVGhlIHNp Z25hdHVyZXMgYXJlCnZhbGlkYXRlZCBhZ2FpbnN0IGEgcHVibGljIGtleSB3aGljaCBpcyB1c3Vh bGx5IHByb3ZpZGVkIGFzIGFuIHg1MDkKY2VydGlmaWNhdGUuCgpCZWNhdXNlIHNvbWUgcGxhdGZv cm1zLCBzdWNoIGFzIHBvd2VycGMtaWVlZTEyNzUsIG1heSBsb2FkIGdydWIgZnJvbSBhCnJhdyBk aXNrIHBhcnRpdGlvbiByYXRoZXIgdGhhbiBhIGZpbGVzeXN0ZW0sIHdlIGV4dGVuZCBncnViLWlu c3RhbGwgdG8KYWRkIGFuIEVMRiBub3RlIHRoYXQgYWxsb3dzIHVzIHRvIHNwZWNpZnkgdGhlIHNp emUgYW5kIGxvY2F0aW9uIG9mIHRoZQpzaWduYXR1cmUuCgoyLikgRW5hYmxlIGxvY2tkb3duIGlm IHNlY3VyZSBib290IGlzIGVuYWJsZWQgKFBhdGNoIDkpClJlYWQgc2VjdXJlIGJvb3QgbW9kZSBm cm9tICdpYm0sc2VjdXJlLWJvb3QnIHByb3BlcnR5IGFuZApJZiB0aGUgJ2libSxzZWN1cmUtYm9v dCcgcHJvcGVydHkgb2YgdGhlIHJvb3Qgbm9kZSBpcyAyLAplbnRlciBsb2NrZG93bi4gRWxzZSBp dCBpcyBjb25zaWRlcmVkIGFzIGRpc2FibGVkLgpUaGVyZSBhcmUgdGhyZWUgc2VjdXJlIGJvb3Qg bW9kZXMuIFRoZXkgYXJlCjAgLSBkaXNhYmxlZAogICAgIE5vIHNpZ25hdHVyZSB2ZXJpZmljYXRp b24gaXMgcGVyZm9ybWVkLiBUaGlzIGlzIHRoZSBkZWZhdWx0LgoxIC0gYXVkaXQKICAgICBTaWdu YXR1cmUgdmVyaWZpY2F0aW9uIGlzIHBlcmZvcm1lZCBhbmQgaWYgc2lnbmF0dXJlIHZlcmlmaWNh dGlvbgogICAgIGZhaWxzLCBkaXNwbGF5IHRoZSBlcnJvcnMgYW5kIGFsbG93IHRoZSBib290IHRv IGNvbnRpbnVlLgoyIC0gZW5mb3JjZQogICAgIExvY2tkb3duIHRoZSBHUlVCLiBTaWduYXR1cmUg dmVyaWZpY2F0aW9uIGlzIHBlcmZvcm1lZCBhbmQKICAgICBJZiBzaWduYXR1cmUgdmVyaWZpY2F0 aW9uIGZhaWxzLCBkaXNwbGF5IHRoZSBlcnJvcnMgYW5kIHN0b3AgdGhlIGJvb3QuCgpOb3csIG9u bHkgc3VwcG9ydCBkaXNhYmxlZCBhbmQgZW5mb3JjZS4KCjMuKSBFbmFibGUgYXBwZW5kZWQgc2ln bmF0dXJlIHZlcmlmaWNhdGlvbiB1c2luZyBidWlsdGluIGtleXMgKFBhdGNoZXMgMiAtIDggCmFu ZCAxMCkuCgpQYXJ0IG9mIGEgc2VjdXJlIGJvb3QgY2hhaW4gaXMgYWxsb3dpbmcgZ3J1YiB0byB2 ZXJpZnkgdGhlIGJvb3QKa2VybmVsLiBGb3IgVUVGSSBwbGF0Zm9ybXMsIHRoaXMgaXMgdXN1YWxs eSBkZWxlZ2F0ZWQgdG8gdGhlCnNoaW0uIEhvd2V2ZXIsIGZvciBwbGF0Zm9ybXMgdGhhdCBkbyBu b3QgaW1wbGVtZW50IFVFRkksIGFuCmFsdGVybmF0aXZlIHNjaGVtZSBpcyByZXF1aXJlZC4KClRo aXMgcGFydCB0ZWFjaGVzIGdydWIgaG93IHRvIHZlcmlmeSBMaW51eCBrZXJuZWwtc3R5bGUgYXBw ZW5kZWQKc2lnbmF0dXJlcy4gS2VybmVscyBvbiBwb3dlcnBjIGFyZSBhbHJlYWR5IHNpZ25lZCB3 aXRoIHRoaXMgc2NoZW1lIGFuZApjYW4gYmUgdmVyaWZpZWQgYnkgSU1BIGZvciBrZXhlYy4KCkFz IFBLQ1MjNyBtZXNzYWdlcyBhbmQgeDUwOSBjZXJ0aWZpY2F0ZXMgYXJlIGJvdGggYmFzZWQgb24g QVNOLjEsIHdlCmltcG9ydCBsaWJ0YXNuMSB0byBwYXJzZSB0aGVtLiBCZWNhdXNlIEFTTi4xIGlz bid0IHNlbGYtZG9jdW1lbnRpbmcsCndlIGltcG9ydCBmcm9tIEdOVVRMUyB0aGUgaW5mb3JtYXRp b24gd2UgbmVlZCB0byBuYXZpZ2F0ZSB0aGVpcgpzdHJ1Y3R1cmUuCgpUaGlzIHNlY3Rpb24gaXMg Y29tcG9zZWQgb2YgdGhlIGZvbGxvd2luZyBwYXRjaGVzOgoKLSBwYXRjaGVzIDIgYW5kIDMgYXJl IHNtYWxsIHJlZmFjdG9yaW5ncy4KCi0gcGF0Y2ggNCBhbGxvd3MgeDUwOSBjZXJ0aWZpY2F0ZXMg dG8gYmUgYnVpbHQgaW4gdG8gdGhlIGdydWIgY29yZQogIGluIG11Y2ggdGhlIHNhbWUgd2F5IGFz IFBHUCBrZXlzLgoKLSBwYXRjaCA1IGJyaW5ncyBpbiB0aGUgY29kZSBmcm9tIEdOVVRMUyB0aGF0 IGFsbG93cyB1cyB0byBwYXJzZQogIFBLQ1MjNyBhbmQgeDUwOSB3aXRoIGxpYnRhc24xLgoKLSBw YXRjaCA2LCA3IGFuZCA4ICBpcyBvdXIgQVNOMSBub2RlLCBQS0NTIzcgYW5kIHg1MDkgcGFyc2Vy LiBUaGV5J3JlIG1pbmltYWwKICBhbmQgZmFpcmx5IHN0cmljdCBwYXJzZXJzIHRoYXQgZXh0cmFj dCBvbmx5IHRoZSBiaXRzIHdlIG5lZWQgdG8gdmVyaWZ5IHRoZQogIHNpZ25hdHVyZXMuCgotIHBh dGNoIDEwIGlzIHRoZSBndXRzIG9mIHRoZSBhcHBlbmRlZCBzaWduYXR1cmUgdmVyaWZpZXIuCgo0 LikgRW5hYmxlIGFjY2Vzc2luZyBrZXlzIGR5bmFtaWNhbGx5IGZyb20gUGxhdGZvcm0gS2V5U3Rv cmUgKFBhdGNoIDExIC0gMTYpCgpUaGlzIHBhcnQgdGVhY2hlcyBncnViIGhvdyB0byByZWFkIGRi IGFuZCBkYnggdmFyaWFibGVzIGZyb20gcGxhdGZvcm0ga2V5c3RvcmUKdXNpbmcgY2xpZW50IGlu dGVyZmFjZSBjYWxsIHRoZW4gbG9hZCBrZXlzIGZyb20gdGhvc2UgdHdvIHZhcmlhYmxlLCBhbmQg dXNlIGl0CnRvIHZlcmlmeSBMaW51eCBrZXJuZWwuCgpUaGlzIHNlY3Rpb24gaXMgY29tcG9zZWQg b2YgdGhlIGZvbGxvd2luZyBwYXRjaGVzOgoKLSBwYXRjaCAxMSBpcyBhbiBleHBvc2VzIGFuIGlu dGVyZmFjZSBpbiBpZWVlMTI3NSBmb3IgcmVhZGluZyBzZWN1cmUgYm9vdAogIHZhcmlhYmxlIGRi IGFuZCBkYnggZnJvbSBQbGF0Zm9ybSBLZXlzdG9yZS4gUmVhZCBzZWN1cmUgYm9vdCB2YXJpYWJs ZXMKICBzdWNoIGFzIGRiIGFuZCBkYnggZnJvbSBQS1MgYW5kIGV4dHJhY3QgY2VydGlmaWNhdGVz IGZyb20gRVNMLgoKLSBwYXRjaCAxMiBpcyBpbnRyb2R1Y2luZyBrZXkgbWFuYWdlbWVudCBlbnZp cm9ubWVudCB2YXJpYWJsZS4KCi0gcGF0Y2ggMTMgaXMgY3JlYXRlIHRoZSBkYiBhbmQgZGJ4IGxp c3RzIGZyb20gUEtTLgoKLSBwYXRjaCAxNCBpcyB2ZXJpZnkgdGhlIGtlcm5lbCB1c2luZyBkYiBh bmQgZGJ4IGxpc3RzCgotIHBhdGNoIDE1IGlzIEdSVUIgY29tbWFuZHMgdG8gbWFuYWdlIHRoZSBj ZXJ0aWZpY2F0ZXMKCi0gcGF0Y2ggMTYgYWRkcyBHUlVCIGNvbW1hbmRzIHRvIGFjY2VzcyBkYiBh bmQgZGJ4LgoKNS4pIHBhdGNoIDE3IGFkZHMgdW5pdCB0ZXN0IGFuZCAyMCBhZGRzIEdSVUIgY29t bWFuZHMgYW5kIGFuIGFwcGVuZGVkIHNpZ25hdHVyZXMKICAgIGRvY3VtZW50YXRpb24uCgpJJ3Zl IHB1c2hlZCB0aGlzIGFsbCB0bwpodHRwczovL2dpdGh1Yi5jb20vU3VkaGFrYXJLdXBwdXNhbXkx L2dydWIvdHJlZS9hcHBlbmRlZHNpZy0yLjEzCgpbMV1odHRwczovL3d3dy5pYm0uY29tL2RvY3Mv ZW4vbGludXgtb24tc3lzdGVtcz90b3BpYz1zZXJ2ZXJzLWd1ZXN0LXNlY3VyZS1ib290LXN0YXRp Yy1rZXlzClsyXWh0dHBzOi8vY29tbXVuaXR5LmlibS5jb20vY29tbXVuaXR5L3VzZXIvcG93ZXIv YmxvZ3MvY2hyaXMtZW5nZWwxLzIwMjAvMTEvMjAvcG93ZXJ2bS1pbnRyb2R1Y2VzLXRoZS1wbGF0 Zm9ybS1rZXlzdG9yZQoKRGFuaWVsIEF4dGVucyAoMik6CiAgY3J5cHRvOiBNb3ZlIHN0b3JhZ2Ug Zm9yIGdydWJfY3J5cHRvX3BrXyogdG8gY3J5cHRvLmMKICBkb2NzL2dydWI6IERvY3VtZW50IHNp Z25pbmcgR1JVQiB1bmRlciBVRUZJCgpTdWRoYWthciBLdXBwdXNhbXkgKDE4KToKICBwb3dlcnBj LWllZWUxMjc1OiBBZGQgc3VwcG9ydCBmb3Igc2lnbmluZyBHUlVCIHdpdGggYW4gYXBwZW5kZWQK ICAgIHNpZ25hdHVyZQogIHBncDogUmVuYW1lIE9CSl9UWVBFX1BVQktFWSB0byBPQkpfVFlQRV9H UEdfUFVCS0VZCiAgZ3J1Yi1pbnN0YWxsOiBTdXBwb3J0IGVtYmVkZGluZyB4NTA5IGNlcnRpZmlj YXRlcwogIGFwcGVuZGVkIHNpZ25hdHVyZXM6IEltcG9ydCBHTlVUTFMncyBBU04uMSBkZXNjcmlw dGlvbiBmaWxlcwogIGFwcGVuZGVkIHNpZ25hdHVyZXM6IFBhcnNlIEFTTjEgbm9kZQogIGFwcGVu ZGVkIHNpZ25hdHVyZXM6IFBhcnNlIFBLQ1MjNyBzaWduZWQgZGF0YQogIGFwcGVuZGVkIHNpZ25h dHVyZXM6IFBhcnNlIFguNTA5IGNlcnRpZmljYXRlcwogIHBvd2VycGNfaWVlZTEyNzU6IEVudGVy IGxvY2tkb3duIGJhc2VkIG9uIC9pYm0sc2VjdXJlLWJvb3QKICBhcHBlbmRlZCBzaWduYXR1cmVz OiBTdXBwb3J0IHZlcmlmeWluZyBhcHBlbmRlZCBzaWduYXR1cmVzCiAgcG93ZXJwY19pZWVlMTI3 NTogUmVhZCB0aGUgZGIgYW5kIGRieCBzZWN1cmUgYm9vdCB2YXJpYWJsZXMKICBhcHBlbmRlZCBz aWduYXR1cmVzOiBJbnRyb2R1Y2luZyBrZXkgbWFuYWdlbWVudCBlbnZpcm9ubWVudCB2YXJpYWJs ZQogIGFwcGVuZGVkIHNpZ25hdHVyZXM6IENyZWF0ZSBkYiBhbmQgZGJ4IGxpc3RzCiAgYXBwZW5k ZWQgc2lnbmF0dXJlczogVXNpbmcgZGIgYW5kIGRieCBsaXN0cyBmb3Igc2lnbmF0dXJlIHZlcmlm aWNhdGlvbgogIGFwcGVuZGVkIHNpZ25hdHVyZXM6IEdSVUIgY29tbWFuZHMgdG8gbWFuYWdlIHRo ZSBjZXJ0aWZpY2F0ZXMKICBhcHBlbmRlZCBzaWduYXR1cmVzOiBHUlVCIGNvbW1hbmRzIHRvIG1h bmFnZSB0aGUgaGFzaGVzCiAgYXBwZW5kZWQgc2lnbmF0dXJlczogVmVyaWZpY2F0aW9uIHRlc3Rz CiAgZG9jcy9ncnViOiBEb2N1bWVudCBzaWduaW5nIEdSVUIgd2l0aCBhbiBhcHBlbmRlZCBzaWdu YXR1cmUKICBkb2NzL2dydWI6IERvY3VtZW50IGFwcGVuZGVkIHNpZ25hdHVyZQoKIGRvY3MvZ3J1 Yi50ZXhpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0NzUgKysrKy0KIGdydWIt Y29yZS9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKwogZ3J1Yi1j b3JlL01ha2VmaWxlLmNvcmUuZGVmICAgICAgICAgICAgICAgICAgIHwgICAyNiArCiBncnViLWNv cmUvY29tbWFuZHMvYXBwZW5kZWRzaWcvYXBwZW5kZWRzaWcuYyAgfCAxNzIzICsrKysrKysrKysr KysrKysrCiBncnViLWNvcmUvY29tbWFuZHMvYXBwZW5kZWRzaWcvYXBwZW5kZWRzaWcuaCAgfCAg MTMzICsrCiBncnViLWNvcmUvY29tbWFuZHMvYXBwZW5kZWRzaWcvYXNuMXV0aWwuYyAgICAgfCAg IDk5ICsKIC4uLi9jb21tYW5kcy9hcHBlbmRlZHNpZy9nbnV0bHNfYXNuMV90YWIuYyAgICB8ICAx NDggKysKIGdydWItY29yZS9jb21tYW5kcy9hcHBlbmRlZHNpZy9wa2NzNy5jICAgICAgICB8ICA0 NTIgKysrKysKIC4uLi9jb21tYW5kcy9hcHBlbmRlZHNpZy9wa2l4X2FzbjFfdGFiLmMgICAgICB8 ICA0ODUgKysrKysKIGdydWItY29yZS9jb21tYW5kcy9hcHBlbmRlZHNpZy94NTA5LmMgICAgICAg ICB8ICA5NzAgKysrKysrKysrKwogZ3J1Yi1jb3JlL2NvbW1hbmRzL3BncC5jICAgICAgICAgICAg ICAgICAgICAgIHwgICAgNiArLQogZ3J1Yi1jb3JlL2tlcm4vaWVlZTEyNzUvaWVlZTEyNzUuYyAg ICAgICAgICAgIHwgICAgMSAtCiBncnViLWNvcmUva2Vybi9pZWVlMTI3NS9pbml0LmMgICAgICAg ICAgICAgICAgfCAgIDU4ICsKIGdydWItY29yZS9rZXJuL3Bvd2VycGMvaWVlZTEyNzUvaWVlZTEy NzUuYyAgICB8ICAxMzcgKysKIC4uLi9rZXJuL3Bvd2VycGMvaWVlZTEyNzUvcGxhdGZvcm1fa2V5 c3RvcmUuYyB8ICAzMzEgKysrKwogZ3J1Yi1jb3JlL2xpYi9jcnlwdG8uYyAgICAgICAgICAgICAg ICAgICAgICAgIHwgICAgNCArCiBncnViLWNvcmUvdGVzdHMvYXBwZW5kZWRfc2lnbmF0dXJlX3Rl c3QuYyAgICAgfCAgMzQ4ICsrKysKIGdydWItY29yZS90ZXN0cy9hcHBlbmRlZF9zaWduYXR1cmVz LmggICAgICAgICB8ICA5NzUgKysrKysrKysrKwogZ3J1Yi1jb3JlL3Rlc3RzL2xpYi9mdW5jdGlv bmFsX3Rlc3QuYyAgICAgICAgIHwgICAgMSArCiBpbmNsdWRlL2dydWIvY3J5cHRvLmggICAgICAg ICAgICAgICAgICAgICAgICAgfCAgICAxICsKIGluY2x1ZGUvZ3J1Yi9lZmkvcGtzLmggICAgICAg ICAgICAgICAgICAgICAgICB8ICAxMTIgKysKIGluY2x1ZGUvZ3J1Yi9lcnIuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgIDMgKy0KIGluY2x1ZGUvZ3J1Yi9maWxlLmggICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAgIDQgKwogaW5jbHVkZS9ncnViL2llZWUxMjc1L2llZWUxMjc1 LmggICAgICAgICAgICAgIHwgICAgMyArCiBpbmNsdWRlL2dydWIva2VybmVsLmggICAgICAgICAg ICAgICAgICAgICAgICAgfCAgICAzICstCiBpbmNsdWRlL2dydWIvbG9ja2Rvd24uaCAgICAgICAg ICAgICAgICAgICAgICAgfCAgICAzICstCiBpbmNsdWRlL2dydWIvcG93ZXJwYy9pZWVlMTI3NS9p ZWVlMTI3NS5oICAgICAgfCAgIDM5ICsKIC4uLi9ncnViL3Bvd2VycGMvaWVlZTEyNzUvcGxhdGZv cm1fa2V5c3RvcmUuaCB8ICAxMjIgKysKIGluY2x1ZGUvZ3J1Yi90eXBlcy5oICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgIDQgKwogaW5jbHVkZS9ncnViL3V0aWwvaW5zdGFsbC5oICAgICAg ICAgICAgICAgICAgIHwgICAxMCArLQogaW5jbHVkZS9ncnViL3V0aWwvbWtpbWFnZS5oICAgICAg ICAgICAgICAgICAgIHwgICAgNCArLQogdXRpbC9ncnViLWluc3RhbGwtY29tbW9uLmMgICAgICAg ICAgICAgICAgICAgIHwgICAzNiArLQogdXRpbC9ncnViLW1raW1hZ2UuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAyNiArLQogdXRpbC9ncnViLW1raW1hZ2V4eC5jICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICA0MCArLQogdXRpbC9ta2ltYWdlLmMgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgICA1MCArLQogMzUgZmlsZXMgY2hhbmdlZCwgNjc5MCBpbnNlcnRpb25z KCspLCA0NCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBncnViLWNvcmUvY29tbWFu ZHMvYXBwZW5kZWRzaWcvYXBwZW5kZWRzaWcuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdydWItY29y ZS9jb21tYW5kcy9hcHBlbmRlZHNpZy9hcHBlbmRlZHNpZy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQg Z3J1Yi1jb3JlL2NvbW1hbmRzL2FwcGVuZGVkc2lnL2FzbjF1dGlsLmMKIGNyZWF0ZSBtb2RlIDEw MDY0NCBncnViLWNvcmUvY29tbWFuZHMvYXBwZW5kZWRzaWcvZ251dGxzX2FzbjFfdGFiLmMKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBncnViLWNvcmUvY29tbWFuZHMvYXBwZW5kZWRzaWcvcGtjczcuYwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGdydWItY29yZS9jb21tYW5kcy9hcHBlbmRlZHNpZy9wa2l4X2Fz bjFfdGFiLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBncnViLWNvcmUvY29tbWFuZHMvYXBwZW5kZWRz aWcveDUwOS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ3J1Yi1jb3JlL2tlcm4vcG93ZXJwYy9pZWVl MTI3NS9pZWVlMTI3NS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ3J1Yi1jb3JlL2tlcm4vcG93ZXJw Yy9pZWVlMTI3NS9wbGF0Zm9ybV9rZXlzdG9yZS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ3J1Yi1j b3JlL3Rlc3RzL2FwcGVuZGVkX3NpZ25hdHVyZV90ZXN0LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBn cnViLWNvcmUvdGVzdHMvYXBwZW5kZWRfc2lnbmF0dXJlcy5oCiBjcmVhdGUgbW9kZSAxMDA2NDQg aW5jbHVkZS9ncnViL2VmaS9wa3MuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvZ3J1Yi9w b3dlcnBjL2llZWUxMjc1L3BsYXRmb3JtX2tleXN0b3JlLmgKCi0tIAoyLjUwLjEgKEFwcGxlIEdp dC0xNTUpCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K R3J1Yi1kZXZlbCBtYWlsaW5nIGxpc3QKR3J1Yi1kZXZlbEBnbnUub3JnCmh0dHBzOi8vbGlzdHMu Z251Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2dydWItZGV2ZWwK