From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 3C6EDD80144 for ; Thu, 11 Jan 2024 16:11:37 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=mpvANICog6ibAc/oNO0pOZjiCbqNsSfiRaSwR0R/1FI=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:Received-SPF:ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:user-agent:Authentication-Results-Original:nodisclaimer:MIME-Version:Original-Authentication-Results:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-ID:Content-Transfer-Encoding; s=20140610; t=1704989495; v=1; b=dBr/Chdq+kYqfxOfCKOTBPDlDctC/VxMealAGdlOHsHmo4hQF532YCRZD7HlP3KvVuFB9PBK KIbAsfHjiJfkTga3ZR51JLR7k/hhswgmXPPfD56+wQlGlP5Zwa52c+nncAP3PGW1MUdlhdTAmHw CY/8cRvHx/V3xbRF0xMPGiLE= X-Received: by 127.0.0.2 with SMTP id r8bsYY7687511xmvA9UIcJso; Thu, 11 Jan 2024 08:11:35 -0800 X-Received: from EUR05-DB8-obe.outbound.protection.outlook.com (EUR05-DB8-obe.outbound.protection.outlook.com [40.107.20.86]) by mx.groups.io with SMTP id smtpd.web11.15136.1704989494255795669 for ; Thu, 11 Jan 2024 08:11:35 -0800 ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=k3Iic1/N5XUTyo2FaYs7Hm+bGkNP621N8j5YfV7OiPLbpaDbpeTa6aRW200MWl/Q5fYWamhyiu5G7n8KrR8yfEn1LGYk+Agg7AwjVYdabCenxfiWbyYiS70OYI7xLQ+B0B0P8csx608a4xA8GWCLLpwb0bMCU6yUmiXtIkkDcBFEmCpL7OW+DZ21Ex0+X7a1PJW2+Qt+rmJxVT6eE3T3l0Qz5mYxUSN7T5kn8L6N12mCQ43NBM7dLKigz8VAucBF+yHOBMB5GNKI7zvUIrcGQb8cBOQ9W+7okHHqGmpwg4TvNQcvhQUBEibSs6MIoiFCXqbIkumOnDPnSJ4eb+bf8Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wl/s0tOtjsSuEeDhs7nJDOFX32q7/i+gYsPT7P3auBc=; b=EeZjzkT9bs2Qe1hDLYJ5NAndBbKZXhlu2UnXZLOb7pqp67+pYHYgRLhgOjTdC7NPze6yp04x0DfnmQhQRFIiNZNqGrjoxKX9R/c4xiEMsCszLNph8W9sKD+S+KgdodgF4EN4Lstt5yD1TnjYggf+aRAoRXFs+lKWtViHjm19nBcjm8aOLON37CfwEGCaEYCRjXJYhv1RwzgZgTPaIOB0XiMb/Ny8mtbkOgaGZv2/q8UJ7wmZDYQSpCkUx0KF6P1Xgc7Dru6yh1QRoUnOQwNxXXdTJHOzBnIajiF8ll30F7WiBSU920NtpYo+blLntaW7/ONCEMPjNwpBFX21MRmA/A== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) X-Received: from AM5PR0601CA0074.eurprd06.prod.outlook.com (2603:10a6:206::39) by DB9PR08MB9946.eurprd08.prod.outlook.com (2603:10a6:10:3d2::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.23; Thu, 11 Jan 2024 16:11:20 +0000 X-Received: from AMS1EPF00000049.eurprd04.prod.outlook.com (2603:10a6:206:0:cafe::28) by AM5PR0601CA0074.outlook.office365.com (2603:10a6:206::39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.19 via Frontend Transport; Thu, 11 Jan 2024 16:11:20 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C X-Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AMS1EPF00000049.mail.protection.outlook.com (10.167.16.133) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.14 via Frontend Transport; Thu, 11 Jan 2024 16:11:19 +0000 X-Received: ("Tessian outbound 31df1b57f90c:v228"); Thu, 11 Jan 2024 16:11:19 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 074390cb6884c2b0 X-CR-MTA-TID: 64aa7808 X-Received: from f47ec70daa35.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 992E904C-892C-4E25-A6FB-2C53A78057B5.1; Thu, 11 Jan 2024 16:11:11 +0000 X-Received: from EUR02-AM0-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f47ec70daa35.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 11 Jan 2024 16:11:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Tnb9yqdWgD4o1aRS9Qit5d4fHRE5HFcGViuUyrsUJ+8f+veVnrEA+eFX0C/jdiqn0oAO4ktFL0QdqT/9tAVA+62yOgM3XqwWJqnEYvM36pPhZsHXcnmMJJcZqDa5YG2iuaopJRP7tL3rqYsZYlydsNLjeLXCBriz9UWi9RwfeF7thdQ20XxVRQC3CTdzhv6SU6TOZIhBNsxw/sBpueYND5Js6icYOwk2c+pKamkYe2DUN6HNriXBcjqdnLnEpDwXxcpTZ+QjRyGKwJeuPNkstckRGxVdYEBhsOuiplhBksdVc3sSRe62ZUsOqTktcqZEZTcKUIRyFgsxjW1ki3AmtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wl/s0tOtjsSuEeDhs7nJDOFX32q7/i+gYsPT7P3auBc=; b=b5u/SiIMlhfyTAn1x/2RNd/pGppNZEDaHQG1njE+q2D2Y96dNTjp1FazKPIx6HIw3xWSdNkkVT6egCgiVoJhcvk/QQU0ngM5qVIqCyh9E0b7Zl+iCnCpEwBNL5lsWS/upzvlxeNwEZHZnHPepOpQVfm6GnprDecCWmP6peTSPjrQgXiQjqMVOIDF3UyOi9ly09arfSdjcrUYuu+hyhnfXUSpVyQynwQWSftSuM8vGdRbckrn8/AhYUl9GgUiytKkKxc9DQp666nvHSQWhv0hq/J0d0QGgB8nI6hhQZNdbukh1eLVksUKlL6AGPwO1CI4QAJSDF5ZK+i4r7K08PetZg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none X-Received: from AS8PR08MB6806.eurprd08.prod.outlook.com (2603:10a6:20b:39b::12) by DB9PR08MB6602.eurprd08.prod.outlook.com (2603:10a6:10:23c::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7181.19; Thu, 11 Jan 2024 16:11:09 +0000 X-Received: from AS8PR08MB6806.eurprd08.prod.outlook.com ([fe80::8912:5ce2:11a4:9d6e]) by AS8PR08MB6806.eurprd08.prod.outlook.com ([fe80::8912:5ce2:11a4:9d6e%6]) with mapi id 15.20.7181.019; Thu, 11 Jan 2024 16:11:09 +0000 From: "Sami Mujawar" To: "Guo, Gua" , "devel@edk2.groups.io" CC: Marc Beatove , Ard Biesheuvel , "Ni, Ray" , "Mathews, John" , Gerd Hoffmann , nd , "afish@apple.com" , "lersek@redhat.com" , "quic_llindhol@quicinc.com" , "michael.d.kinney@intel.com" Subject: Re: [edk2-devel] [PATCH v2 2/4] StandaloneMmPkg/Hob: Integer Overflow in CreateHob() Thread-Topic: [PATCH v2 2/4] StandaloneMmPkg/Hob: Integer Overflow in CreateHob() Thread-Index: AQHaRG6u5J16tXE31UuwRhh+x3IuVrDUpdsAgAADYICAAAxFAIAAA18AgAAP14A= Date: Thu, 11 Jan 2024 16:11:09 +0000 Message-ID: References: <20240111091439.1767-1-gua.guo@intel.com> <20240111091439.1767-3-gua.guo@intel.com> In-Reply-To: Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/16.80.23121017 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB6806:EE_|DB9PR08MB6602:EE_|AMS1EPF00000049:EE_|DB9PR08MB9946:EE_ X-MS-Office365-Filtering-Correlation-Id: 08310ff1-b8e5-4c10-0ee6-08dc12bff276 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: zzvCr87cE1dHMoiecwFN0PtZfun21pEnxelvHsifna78SimIz/OOuERKMl8O+BQpxYzSZuEDo82ayeCJS/8PUgaj8do4Bc7X/CDmncr6PZPvkHkKUmegqImUp5J0NQswHGIaSMXdKx+zmpG1fil3DOafETGf2DYrWhxkyvyB8uGoUn6TeyqmMUGNu1psSGuAXD2i5gli+CWdFA5QajUlRREje8lFT7bEz1Qa/r5N9lNTwRdWThGLKKYxTjmcjz77ZVNjjscaXtoqfKcX6eB+E4P0FoOhtLBtvjiZMyNm9idi5paJw4oUMpgZ9RbCWaBu+ItlJrrSckYwLrOZY87tYkdkMB+P+RQbJf6HmGQxk3gnn+LCaBWofLM750LQPkFfxskRwAFDkPJgcvY4n6lxMePnAvUBODfvbOWfHdxY9LgvYw78TT5taFfbffBMio3fbg0E8FjSylu3q60b9S88Tx0RGIJ6lkHDhHtkRInAIKcOpCqwWNnuxGABdMoRTzLuNqT5HrhnMtxv8iFdVqgDCx3vPlYIVWZ19B9diWasF5SWAgk7bKEoUJJsFvonghk9w2wHFxse3bhM0VeNYnQbpnP2BFOCopZdcpY1r7ZL7sTRgBtlPgMvkmzbb156a5xyBeIjR1FEZpP7Nl3JT8hp7mucO6o9TL7wfwjkkd/hSgo= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6806.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(6029001)(136003)(366004)(346002)(396003)(39850400004)(376002)(230922051799003)(186009)(1800799012)(64100799003)(451199024)(7416002)(5660300002)(26005)(110136005)(2906002)(53546011)(83380400001)(316002)(54906003)(64756008)(66476007)(66446008)(66946007)(66556008)(91956017)(36756003)(2616005)(76116006)(6506007)(6486002)(71200400001)(4326008)(8936002)(6512007)(33656002)(8676002)(38070700009)(478600001)(966005)(38100700002)(122000001)(41300700001)(86362001)(45980500001);DIR:OUT;SFP:1101; MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6602 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS1EPF00000049.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4774a4dd-a23a-465f-8235-08dc12bfec6b X-Microsoft-Antispam-Message-Info: glSk7fxOBElwTEXBY48Qe6XdGaHTITtdoOZqmM8Gt3dcVjLRcGRpf65zLZlwxQYhEcT9O+HG1avRceuqcijFh4BZZl11niYdMoRmJTDZlWH5cnMXzdH8Rcwcio+knt2bDCG8lmvllQPQhnoNASl2RJTUq1Gy1DWGtpHSfkXVSEgbQqf/yUZplITf0yjKDyqUuMODAphZodQTsPioZhhYDBNu8xuhDsnMxI+BAHDl31wBSLSQL5gWE7K1119qr/Cr1v6FEBbCYs0F6QqSBIcrkaMUB29MoNVqE2aqPdNaJD0V0SH0I8sosM0QIDSuoSeyMDgFlFYsnmfzpmUhDrs2/BGUfUpyllTVuoyXdQSfXjZUF1mxNTA+wJEvlXjOAEYDlkIiercig+tDKJAuCfL3E87eJ6p4wTf2DSmv1gytWzM6Y6fqunhdsv2is3Detw7tmw9GuUX88aMaWlQvre6apsGfVXv4f417GMoAer3/WAZ8M7Q8Pe7d7HBCL95/TZaWObQ6ZdWRpnXUzbGO7A4UMco0HoDb06GZJG9tpUx3bZfnmpzBA3jo9c1H5LhmQ5sTQommgjJPimVxuqZrX/dpm8R3vC5za2j2g2xHVu1ydmD/UOrw5UesG6qCo+zZCqHRGPfRbQby5EHOPq5mT+gIzypjinTbtCVOVlzikqMRAxEBpC5f5Ti0om+gAPqLgjsyO98qr5b/j6v/MkgstRLeNR7OMGdEBpbdRACZrNn0w2IEV7D55+BsAgN0rMmh02CVrEa8RrSRMlzoilKLDBpATA== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jan 2024 16:11:19.4863 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 08310ff1-b8e5-4c10-0ee6-08dc12bff276 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AMS1EPF00000049.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB9946 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,sami.mujawar@arm.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: 8wHy8LnCsh94K8100q8J7YOfx7686176AA= Content-Language: en-GB Content-Type: text/plain; charset="utf-8" Content-ID: <65BD9D52CFABBA479895FE7A97247431@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b="dBr/Chdq"; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=arm.com (policy=none); arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") SGkgR3VhLA0KDQpQbGVhc2UgZmluZCBteSByZXNwb25zZSBpbmxpbmUgbWFya2VkIFtTQU1JXS4N Cg0KUmVnYXJkcywNCg0KU2FtaSBNdWphd2FyDQoNCu+7v09uIDExLzAxLzIwMjQsIDE1OjE5LCAi R3VvLCBHdWEiIDxndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPj4g d3JvdGU6DQoNCg0KTWF5YmUgSSBjYW4gYWRkIGVycm9yIGhhbmRsZSBidXQgdGhleSB3aWxsIGhh dmUgc2V2ZXJhbCBjYXNlIG5lZWQgdG8gZG8gaWYgaXQncyBmaW5lLg0KSXQgbWF5YmUgaW5jcmVh c2luZyBzb21lIEJJT1Mgc2l6ZS4NCg0KDQpFcnJvciBIYW5kbGUgRXJyb3IgSGFuZGxlIEVycm9y IEhhbmRsZSBFcnJvciBIYW5kbGUNCkEgLS0tLS0tLS0tLS0tLS0tLT4gQiAtLS0tLS0tLS0tLS0t LS0tLT4gQyAtLS0tLS0tLS0tLS0tLS0tLS0+IENyZWF0ZUhvYiAtLS0tLS0tLS0tLS0tLS0tPiBy ZXR1cm4gTlVMTA0KDQoNCkFsbCBjYWxsZXIgY2hhaW4gbWF5IG5lZWQgdG8gYWRkIGl0IGlmIHdl IHJlYWxseSB3YW50IHRvIHByZXZlbnQgaXQgb24gcmVsZWFzZS4NCltTQU1JXSBBcyBJIHVuZGVy c3RhbmQsIGluIG1vc3QgY2FzZXMgc3VjaCBhbiBlcnJvciBtYXkgbm90IGJlIHJlY292ZXJhYmxl LiBJbiBzdWNoIGNhc2VzLCB3b3VsZCBpdCBtYWtlIHNlbnNlIGZvciB0aGUgQVNTRVJUKCkgaW1w bGVtZW50YXRpb24gdG8gY2FsbCBhIFBhbmljKCkgaW4gcmVsZWFzZSBidWlsZHM/IA0KQWRkaW5n IGEgUGFuaWMoKSBBUEkgaGFzIGJlZW4gZGlzY3Vzc2VkIGJlZm9yZSBhdCBodHRwczovL2VkazIu Z3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS84NjM1NC4NClsvU0FNSV0NCg0KVGhhbmtzLA0KR3Vh DQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogU2FtaSBNdWphd2FyIDxTYW1pLk11 amF3YXJAYXJtLmNvbSA8bWFpbHRvOlNhbWkuTXVqYXdhckBhcm0uY29tPj4gDQpTZW50OiBUaHVy c2RheSwgSmFudWFyeSAxMSwgMjAyNCAxMTowMiBQTQ0KVG86IEd1bywgR3VhIDxndWEuZ3VvQGlu dGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPj47IGRldmVsQGVkazIuZ3JvdXBzLmlv IDxtYWlsdG86ZGV2ZWxAZWRrMi5ncm91cHMuaW8+DQpDYzogTWFyYyBCZWF0b3ZlIDxtYmVhdG92 ZUBnb29nbGUuY29tIDxtYWlsdG86bWJlYXRvdmVAZ29vZ2xlLmNvbT4+OyBBcmQgQmllc2hldXZl bCA8YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZyA8bWFpbHRvOmFyZGIrdGlhbm9jb3JlQGtlcm5l bC5vcmc+PjsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbSA8bWFpbHRvOnJheS5uaUBpbnRlbC5j b20+PjsgTWF0aGV3cywgSm9obiA8am9obi5tYXRoZXdzQGludGVsLmNvbSA8bWFpbHRvOmpvaG4u bWF0aGV3c0BpbnRlbC5jb20+PjsgR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20gPG1h aWx0bzprcmF4ZWxAcmVkaGF0LmNvbT4+OyBuZCA8bmRAYXJtLmNvbSA8bWFpbHRvOm5kQGFybS5j b20+Pg0KU3ViamVjdDogUmU6IFtQQVRDSCB2MiAyLzRdIFN0YW5kYWxvbmVNbVBrZy9Ib2I6IElu dGVnZXIgT3ZlcmZsb3cgaW4gQ3JlYXRlSG9iKCkNCg0KDQpIaSBHdWEsDQoNCg0KUGxlYXNlIGZp bmQgbXkgcmVzcG9uc2UgaW5saW5lIG1hcmtlZCBbU0FNSV0uDQoNCg0KUmVnYXJkcywNCg0KDQpT YW1pIE11amF3YXINCk9uIDExLzAxLzIwMjQsIDE0OjE5LCAiR3VvLCBHdWEiIDxndWEuZ3VvQGlu dGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPiA8bWFpbHRvOmd1YS5ndW9AaW50ZWwu Y29tIDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20+Pj4gd3JvdGU6DQoNCg0KDQoNCllvdSBtZWFu IHdlIG5lZWQgdG8gYWRkIGJlbG93IGVycm9yIGhhbmRsZSBhZnRlciBhbGwgY2FsbGVycyA/DQoN Cg0KDQoNCkhvYiA9IENyZWF0ZUhvYiAoLi4uKQ0KQVNTRVJUIChIb2IgIT0gTlVMTCk7IDwtLS0t LS0tLS0tLS0tLS0tIEhlcmUgW1NBTUldIFRoYXQgd291bGQgY2VydGFpbmx5IGhlbHAgY2F0Y2gg aXNzdWVzIGluIHRoZSBkZWJ1ZyBidWlsZHMuIEJ1dCB0aGUgcHJvYmxlbSB3aXRoIGFzc2VydHMg aXMsIHRoZXkgdmFuaXNoIGluIHJlbGVhc2UgYnVpbGRzLiANCkkgdGhpbmsgd2Ugc2hvdWxkIGNv bnNpZGVyIGFkZGluZyBhcHByb3ByaWF0ZSBlcnJvciBoYW5kbGluZyBpbiB0aGUgY2FsbGluZyBm dW5jdGlvbnMgdG8gbWFrZSBzdXJlIHRoYXQgdGhleSBkbyBub3QgcmVzdWx0IGluIGEgY3Jhc2gu DQpbL1NBTUldDQoNCg0KDQoNCg0KDQoNCg0KVGhhbmtzLA0KR3VhDQotLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KRnJvbTogU2FtaSBNdWphd2FyIDxTYW1pLk11amF3YXJAYXJtLmNvbSA8bWFp bHRvOlNhbWkuTXVqYXdhckBhcm0uY29tPiA8bWFpbHRvOlNhbWkuTXVqYXdhckBhcm0uY29tIDxt YWlsdG86U2FtaS5NdWphd2FyQGFybS5jb20+Pj4NClNlbnQ6IFRodXJzZGF5LCBKYW51YXJ5IDEx LCAyMDI0IDEwOjA2IFBNDQpUbzogR3VvLCBHdWEgPGd1YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86 Z3VhLmd1b0BpbnRlbC5jb20+IDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20gPG1haWx0bzpndWEu Z3VvQGludGVsLmNvbT4+PjsgZGV2ZWxAZWRrMi5ncm91cHMuaW8gPG1haWx0bzpkZXZlbEBlZGsy Lmdyb3Vwcy5pbz4gPG1haWx0bzpkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8bWFpbHRvOmRldmVsQGVk azIuZ3JvdXBzLmlvPj4NCkNjOiBNYXJjIEJlYXRvdmUgPG1iZWF0b3ZlQGdvb2dsZS5jb20gPG1h aWx0bzptYmVhdG92ZUBnb29nbGUuY29tPiA8bWFpbHRvOm1iZWF0b3ZlQGdvb2dsZS5jb20gPG1h aWx0bzptYmVhdG92ZUBnb29nbGUuY29tPj4+OyBBcmQgQmllc2hldXZlbCA8YXJkYit0aWFub2Nv cmVAa2VybmVsLm9yZyA8bWFpbHRvOmFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmc+IDxtYWlsdG86 YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZyA8bWFpbHRvOmFyZGIrdGlhbm9jb3JlQGtlcm5lbC5v cmc+Pj47IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20gPG1haWx0bzpyYXkubmlAaW50ZWwuY29t PiA8bWFpbHRvOnJheS5uaUBpbnRlbC5jb20gPG1haWx0bzpyYXkubmlAaW50ZWwuY29tPj4+OyBN YXRoZXdzLCBKb2huIDxqb2huLm1hdGhld3NAaW50ZWwuY29tIDxtYWlsdG86am9obi5tYXRoZXdz QGludGVsLmNvbT4gPG1haWx0bzpqb2huLm1hdGhld3NAaW50ZWwuY29tIDxtYWlsdG86am9obi5t YXRoZXdzQGludGVsLmNvbT4+PjsgR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20gPG1h aWx0bzprcmF4ZWxAcmVkaGF0LmNvbT4gPG1haWx0bzprcmF4ZWxAcmVkaGF0LmNvbSA8bWFpbHRv OmtyYXhlbEByZWRoYXQuY29tPj4+OyBuZCA8bmRAYXJtLmNvbSA8bWFpbHRvOm5kQGFybS5jb20+ IDxtYWlsdG86bmRAYXJtLmNvbSA8bWFpbHRvOm5kQGFybS5jb20+Pj4NClN1YmplY3Q6IFJlOiBb UEFUQ0ggdjIgMi80XSBTdGFuZGFsb25lTW1Qa2cvSG9iOiBJbnRlZ2VyIE92ZXJmbG93IGluIENy ZWF0ZUhvYigpDQoNCg0KDQoNCkhpIEd1YSwNCg0KDQoNCg0KVGhhbmsgeW91IGZvciB0aGlzIHBh dGNoLg0KUGxlYXNlIHNlZSBteSByZXNwb25zZSBpbmxpbmUgbWFya2VkIFtTQU1JXS4NCg0KDQoN Cg0KUmVnYXJkcywNCg0KDQoNCg0KU2FtaSBNdWphd2FyDQoNCg0KDQoNCk9uIDExLzAxLzIwMjQs IDA5OjE1LCAiZ3VhLmd1b0BpbnRlbC5jb20gPG1haWx0bzpndWEuZ3VvQGludGVsLmNvbT4gPG1h aWx0bzpndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPj4gPG1haWx0 bzpndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPiA8bWFpbHRvOmd1 YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20+Pj4iIDxndWEuZ3VvQGlu dGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPiA8bWFpbHRvOmd1YS5ndW9AaW50ZWwu Y29tIDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20+PiA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29t IDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20+IDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20gPG1h aWx0bzpndWEuZ3VvQGludGVsLmNvbT4+Pj4gd3JvdGU6DQoNCg0KDQoNCg0KDQoNCg0KRnJvbTog R3VhIEd1byA8Z3VhLmd1b0BpbnRlbC5jb20gPG1haWx0bzpndWEuZ3VvQGludGVsLmNvbT4gPG1h aWx0bzpndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPj4gPG1haWx0 bzpndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPiA8bWFpbHRvOmd1 YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20+Pj4+DQoNCg0KDQoNCg0K DQoNCg0KUkVGOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lk PTQxNjYgPGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE2 Nj4gPGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE2Nj4g PGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE2NiZndDs+ IDxodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTQxNjY+IDxo dHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTQxNjYmZ3Q7PiA8 aHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD00MTY2Jmd0Oz4g PGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE2NiZhbXA7 Z3Q7Jmd0Oz4NCg0KDQoNCg0KDQoNCg0KDQpGaXggaW50ZWdlciBvdmVyZmxvdyBpbiB2YXJpb3Vz IENyZWF0ZUhvYiBpbnN0YW5jZXMuDQpGaXhlczogQ1ZFLTIwMjItMzY3NjUNCg0KDQoNCg0KDQoN Cg0KDQpUaGUgQ3JlYXRlSG9iKCkgZnVuY3Rpb24gYWxpZ25zIHRoZSByZXF1ZXN0ZWQgc2l6ZSB0 byA4IHBlcmZvcm1pbmcgdGhlIGZvbGxvd2luZyBvcGVyYXRpb246DQpgYGANCkhvYkxlbmd0aCA9 IChVSU5UMTYpKChIb2JMZW5ndGggKyAweDcpICYgKH4weDcpKTsgYGBgDQoNCg0KDQoNCg0KDQoN Cg0KTm8gY2hlY2tzIGFyZSBwZXJmb3JtZWQgdG8gZW5zdXJlIHRoaXMgdmFsdWUgZG9lc24ndCBv dmVyZmxvdywgYW5kIGNvdWxkIGxlYWQgdG8gQ3JlYXRlSG9iKCkgcmV0dXJuaW5nIGEgc21hbGxl ciBIT0IgdGhhbiByZXF1ZXN0ZWQsIHdoaWNoIGNvdWxkIGxlYWQgdG8gT09CIEhPQiBhY2Nlc3Nl cy4NCg0KDQoNCg0KDQoNCg0KDQpSZXBvcnRlZC1ieTogTWFyYyBCZWF0b3ZlIDxtYmVhdG92ZUBn b29nbGUuY29tIDxtYWlsdG86bWJlYXRvdmVAZ29vZ2xlLmNvbT4gPG1haWx0bzptYmVhdG92ZUBn b29nbGUuY29tIDxtYWlsdG86bWJlYXRvdmVAZ29vZ2xlLmNvbT4+IDxtYWlsdG86bWJlYXRvdmVA Z29vZ2xlLmNvbSA8bWFpbHRvOm1iZWF0b3ZlQGdvb2dsZS5jb20+IDxtYWlsdG86bWJlYXRvdmVA Z29vZ2xlLmNvbSA8bWFpbHRvOm1iZWF0b3ZlQGdvb2dsZS5jb20+Pj4+DQpSZXZpZXdlZC1ieTog QXJkIEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmcgPG1haWx0bzphcmRiK3Rp YW5vY29yZUBrZXJuZWwub3JnPiA8bWFpbHRvOmFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmcgPG1h aWx0bzphcmRiK3RpYW5vY29yZUBrZXJuZWwub3JnPj4gPG1haWx0bzphcmRiK3RpYW5vY29yZUBr ZXJuZWwub3JnIDxtYWlsdG86YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz4gPG1haWx0bzphcmRi K3RpYW5vY29yZUBrZXJuZWwub3JnIDxtYWlsdG86YXJkYit0aWFub2NvcmVAa2VybmVsLm9yZz4+ Pj4NCkNjOiBTYW1pIE11amF3YXIgPHNhbWkubXVqYXdhckBhcm0uY29tIDxtYWlsdG86c2FtaS5t dWphd2FyQGFybS5jb20+IDxtYWlsdG86c2FtaS5tdWphd2FyQGFybS5jb20gPG1haWx0bzpzYW1p Lm11amF3YXJAYXJtLmNvbT4+IDxtYWlsdG86c2FtaS5tdWphd2FyQGFybS5jb20gPG1haWx0bzpz YW1pLm11amF3YXJAYXJtLmNvbT4gPG1haWx0bzpzYW1pLm11amF3YXJAYXJtLmNvbSA8bWFpbHRv OnNhbWkubXVqYXdhckBhcm0uY29tPj4+Pg0KQ2M6IFJheSBOaSA8cmF5Lm5pQGludGVsLmNvbSA8 bWFpbHRvOnJheS5uaUBpbnRlbC5jb20+IDxtYWlsdG86cmF5Lm5pQGludGVsLmNvbSA8bWFpbHRv OnJheS5uaUBpbnRlbC5jb20+PiA8bWFpbHRvOnJheS5uaUBpbnRlbC5jb20gPG1haWx0bzpyYXku bmlAaW50ZWwuY29tPiA8bWFpbHRvOnJheS5uaUBpbnRlbC5jb20gPG1haWx0bzpyYXkubmlAaW50 ZWwuY29tPj4+Pg0KQ2M6IEpvaG4gTWF0aGV3IDxqb2huLm1hdGhld3NAaW50ZWwuY29tIDxtYWls dG86am9obi5tYXRoZXdzQGludGVsLmNvbT4gPG1haWx0bzpqb2huLm1hdGhld3NAaW50ZWwuY29t IDxtYWlsdG86am9obi5tYXRoZXdzQGludGVsLmNvbT4+IDxtYWlsdG86am9obi5tYXRoZXdzQGlu dGVsLmNvbSA8bWFpbHRvOmpvaG4ubWF0aGV3c0BpbnRlbC5jb20+IDxtYWlsdG86am9obi5tYXRo ZXdzQGludGVsLmNvbSA8bWFpbHRvOmpvaG4ubWF0aGV3c0BpbnRlbC5jb20+Pj4+DQpBdXRob3Jl ZC1ieTogR2VyZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20gPG1haWx0bzprcmF4ZWxAcmVk aGF0LmNvbT4gPG1haWx0bzprcmF4ZWxAcmVkaGF0LmNvbSA8bWFpbHRvOmtyYXhlbEByZWRoYXQu Y29tPj4gPG1haWx0bzprcmF4ZWxAcmVkaGF0LmNvbSA8bWFpbHRvOmtyYXhlbEByZWRoYXQuY29t PiA8bWFpbHRvOmtyYXhlbEByZWRoYXQuY29tIDxtYWlsdG86a3JheGVsQHJlZGhhdC5jb20+Pj4+ DQpTaWduZWQtb2ZmLWJ5OiBHdWEgR3VvIDxndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5n dW9AaW50ZWwuY29tPiA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86Z3VhLmd1b0Bp bnRlbC5jb20+PiA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86Z3VhLmd1b0BpbnRl bC5jb20+IDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20gPG1haWx0bzpndWEuZ3VvQGludGVsLmNv bT4+Pj4NCi0tLQ0KLi4uL1N0YW5kYWxvbmVNbUNvcmVIb2JMaWIvQXJtL1N0YW5kYWxvbmVNbUNv cmVIb2JMaWIuYyB8IDcgKysrKysrKw0KMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKQ0K DQoNCg0KDQoNCg0KDQoNCmRpZmYgLS1naXQgYS9TdGFuZGFsb25lTW1Qa2cvTGlicmFyeS9TdGFu ZGFsb25lTW1Db3JlSG9iTGliL0FybS9TdGFuZGFsb25lTW1Db3JlSG9iTGliLmMgYi9TdGFuZGFs b25lTW1Qa2cvTGlicmFyeS9TdGFuZGFsb25lTW1Db3JlSG9iTGliL0FybS9TdGFuZGFsb25lTW1D b3JlSG9iTGliLmMNCmluZGV4IDE1NTBlMWJhYmMuLmJiODQyNmRjMGEgMTAwNjQ0DQotLS0gYS9T dGFuZGFsb25lTW1Qa2cvTGlicmFyeS9TdGFuZGFsb25lTW1Db3JlSG9iTGliL0FybS9TdGFuZGFs b25lTW1Db3JlSG9iTGliLmMNCisrKyBiL1N0YW5kYWxvbmVNbVBrZy9MaWJyYXJ5L1N0YW5kYWxv bmVNbUNvcmVIb2JMaWIvQXJtL1N0YW5kYWxvbmVNbUNvcg0KKysrIGVIb2JMaWIuYw0KQEAgLTM0 LDYgKzM0LDEzIEBAIENyZWF0ZUhvYiAoDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoN CkhhbmRPZmZIb2IgPSBHZXRIb2JMaXN0ICgpOw0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoN Cg0KDQoNCg0KDQoNCg0KDQoNCg0KKyAvLw0KDQoNCg0KDQoNCg0KDQoNCisgLy8gQ2hlY2sgTGVu Z3RoIHRvIGF2b2lkIGRhdGEgb3ZlcmZsb3cuDQoNCg0KDQoNCg0KDQoNCg0KKyAvLw0KDQoNCg0K DQoNCg0KDQoNCisgaWYgKEhvYkxlbmd0aCA+IE1BWF9VSU5UMTYgLSAweDcpIHsNCg0KDQoNCg0K DQoNCg0KDQorIHJldHVybiBOVUxMOw0KW1NBTUldIEFsdGhvdWdoIHRoaXMgZml4IGlzIGNvcnJl Y3QsIEkgdGhpbmsgaXQgc2hpZnRzIHRoZSBwcm9ibGVtIHNvbWV3aGVyZSBlbHNlLiANCklmIHRo ZSBhYm92ZSBjb25kaXRpb24gb2NjdXJzLCBhIE5VTEwgaXMgcmV0dXJuZWQuIEEgcXVpY2sgc2Nh biByZXZlYWxzIHRoYXQgdGhlIGNhbGxpbmcgZnVuY3Rpb25zIGRvIG5vdCBjaGVjayB0aGUgcmV0 dXJuZWQgdmFsdWUgYmVmb3JlIHVzZS4NCmUuZy4gaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29y ZS9lZGsyL2Jsb2IvbWFzdGVyL1N0YW5kYWxvbmVNbVBrZy9MaWJyYXJ5L1N0YW5kYWxvbmVNbUNv cmVIb2JMaWIvQXJtL1N0YW5kYWxvbmVNbUNvcmVIb2JMaWIuYyNMMTY3LUwxNzAgPGh0dHBzOi8v Z2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9ibG9iL21hc3Rlci9TdGFuZGFsb25lTW1Qa2cvTGli cmFyeS9TdGFuZGFsb25lTW1Db3JlSG9iTGliL0FybS9TdGFuZGFsb25lTW1Db3JlSG9iTGliLmMj TDE2Ny1MMTcwPiA8aHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsyL2Jsb2IvbWFzdGVy L1N0YW5kYWxvbmVNbVBrZy9MaWJyYXJ5L1N0YW5kYWxvbmVNbUNvcmVIb2JMaWIvQXJtL1N0YW5k YWxvbmVNbUNvcmVIb2JMaWIuYyNMMTY3LUwxNzA+IDxodHRwczovL2dpdGh1Yi5jb20vdGlhbm9j b3JlL2VkazIvYmxvYi9tYXN0ZXIvU3RhbmRhbG9uZU1tUGtnL0xpYnJhcnkvU3RhbmRhbG9uZU1t Q29yZUhvYkxpYi9Bcm0vU3RhbmRhbG9uZU1tQ29yZUhvYkxpYi5jI0wxNjctTDE3MCZndDs+DQpU aGVyZSBhcmUgbXVsdGlwbGUgc3VjaCBwbGFjZXMgd2hlcmUgdGhlIGNhbGxpbmcgZnVuY3Rpb25z IGRvIG5vdCBjaGVjayB0aGUgcG9pbnRlciByZXR1cm5lZCBieSBDcmVhdGVIb2IoKS4gDQpJIGJl bGlldmUgYSBzaW1pbGFyIHNpdHVhdGlvbiBjYW4gaGFwcGVuIGZvciB0aGUgb3RoZXIgcGF0Y2hl cyBpbiB0aGlzIHNlcmllcy4NClsvU0FNSV0NCg0KDQoNCg0KKyB9DQoNCg0KDQoNCg0KDQoNCg0K Kw0KDQoNCg0KDQoNCg0KDQoNCkhvYkxlbmd0aCA9IChVSU5UMTYpKChIb2JMZW5ndGggKyAweDcp ICYgKH4weDcpKTsNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0K DQoNCkZyZWVNZW1vcnkgPSBIYW5kT2ZmSG9iLT5FZmlGcmVlTWVtb3J5VG9wIC0gSGFuZE9mZkhv Yi0+RWZpRnJlZU1lbW9yeUJvdHRvbTsNCg0KDQoNCg0KDQoNCg0KDQotLQ0KMi4zOS4yLndpbmRv d3MuMQ0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoN Cg0KDQoNCg0KCi09LT0tPS09LT0tPS09LT0tPS09LT0tCkdyb3Vwcy5pbyBMaW5rczogWW91IHJl Y2VpdmUgYWxsIG1lc3NhZ2VzIHNlbnQgdG8gdGhpcyBncm91cC4KVmlldy9SZXBseSBPbmxpbmUg KCMxMTM2MjUpOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS8xMTM2MjUK TXV0ZSBUaGlzIFRvcGljOiBodHRwczovL2dyb3Vwcy5pby9tdC8xMDM2NTg5NjAvNzY4NjE3NgpH cm91cCBPd25lcjogZGV2ZWwrb3duZXJAZWRrMi5ncm91cHMuaW8KVW5zdWJzY3JpYmU6IGh0dHBz Oi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC91bnN1YiBbcmViZWNjYUBvcGVuZncuaW9dCi09LT0t PS09LT0tPS09LT0tPS09LT0tCgoNCg==