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 B08F774004C for ; Thu, 25 Jan 2024 10:57:57 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=X1L5wx+MbqcOfu9clVd5t6VqmCyouGy9WfFCR9Q0Jdo=; 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=1706180276; v=1; b=ACqQZ5IkjHVJuGJNqNSBZJ2HVIbrvd5XhWV035YHlSLSEDnR8bj8UIirwA0VnqMQy9QADQld Qq3J+P0EvoEHeln0SZvsr17HumrhjCQx03bM1ocyiWW0loZuiMk/7V2jQ+/4aZ4nnB5Ft6zz+7w mrx1qwvMFXOSpduZlQChCBwU= X-Received: by 127.0.0.2 with SMTP id Mm6rYY7687511xkzEHFnpP7k; Thu, 25 Jan 2024 02:57:56 -0800 X-Received: from EUR05-DB8-obe.outbound.protection.outlook.com (EUR05-DB8-obe.outbound.protection.outlook.com [40.107.20.88]) by mx.groups.io with SMTP id smtpd.web10.14812.1706180274292745636 for ; Thu, 25 Jan 2024 02:57:55 -0800 ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=mWapBJU2FnmmdMPhH2KQjQvxhLzhAQmYXt2+3Adhm8dXQb4m58YVrUjo1y57hh+RlSe0Ng6L/AtH8KcWxI09wnVj0TuvNTHFq4577BD4vxQ04ujYfclKeyyCw/k204ykhE0jMdiiwXAwmX4f+yK3nLEgCCVULTQ2ZZQvr8EP7m/MG8viB5YzSSoKEex1Hc0jqJmO83a+4+jPyiPgGUtpMSh1gPQny1+7RkuJ1Sx5IqCIKG4sitbkXp7/pdUbQ8ekC7pWUDNyO6oBDUalL+ntXLyNWWP+fNbj7Jyq/CkXBTFq7exMrAXHT+ld9W3irFeGlMtXJMvc/H1aU4M162AY5w== 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=9idVAWuhVx0UjCa0h4Wb6ze7Mcl6lPrvRmElc32u0yE=; b=Dczra3NLxicnwpVxT2NVHxg6aqR5Jg5G2iO7M8pcVuiArkxNQOZD4FZIglkHzaEhymp6QHFbNQsKoIzfTR2Xn8Gd+U6SIKkoDCW67yRm7r15IQCFG3gnHQncjqXWJgOdHaCOw0EVNIQOzJaUtjKGcfvDHCVAe64FC+DPJgSJPC8wYIcq7Dbzk2ly5whouTif1/4UuFAmrd3Mff++xaLEDklwER8q6gIzK8honYM81cu06zZELUSpzJGPsq9qWTOdVAtTBtDyZHZCT0CX9W0xxmUeE5ttci76krIymEyYNydn+ZZt2JThR0FLO7ecwaAe3x9CLXG6bSlMmZWlA539fQ== 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 AM9P193CA0021.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:21e::26) by PAVPR08MB9673.eurprd08.prod.outlook.com (2603:10a6:102:31c::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.22; Thu, 25 Jan 2024 10:57:44 +0000 X-Received: from AM4PEPF00027A6C.eurprd04.prod.outlook.com (2603:10a6:20b:21e:cafe::40) by AM9P193CA0021.outlook.office365.com (2603:10a6:20b:21e::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.22 via Frontend Transport; Thu, 25 Jan 2024 10:57:44 +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 AM4PEPF00027A6C.mail.protection.outlook.com (10.167.16.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7202.16 via Frontend Transport; Thu, 25 Jan 2024 10:57:44 +0000 X-Received: ("Tessian outbound 94d82ba85b1d:v228"); Thu, 25 Jan 2024 10:57:43 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 12c9a257db4618c2 X-CR-MTA-TID: 64aa7808 X-Received: from bd25fcc8d089.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 3FAC86B1-1EAD-4225-9AC8-BAD55AB1B681.1; Thu, 25 Jan 2024 10:57:32 +0000 X-Received: from EUR03-AM7-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bd25fcc8d089.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 25 Jan 2024 10:57:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YN9m+oq92P2l7tNe2qxOp0H6cAk0CB/3kMkBdUxmKiZb1tmLoyoBWSyZ1O2LetjhEEJeXnpRS7tiW1t/K4pQ2VG0Zb4b1aDR9nNnRexdMg9Ns6aeQeA983c1TfOuVA99xRpZNGuso5Ik92llvjLi1oQfRPQcHxJyBy7vxRAmGmfNAw1HIhUJwWMCtG1In8DCh8rGw798adXmJV/LsVIZfGa6PsZTeBUSkWjtG0szhf2DpHbpSuUxnQ4xodg6uT8x+p0cl/9KC69XvbJcSzQk4N3QSA/Q68d9Q9ypMOoYy3ALRy7DWtJ9f2a+ikCxKl6t1nefWxohuJLOqDsXLCTtqA== 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=9idVAWuhVx0UjCa0h4Wb6ze7Mcl6lPrvRmElc32u0yE=; b=bY2Vu2DRhz5IgOEwfhUBFhF0nugmCyrCP4txheMeqG3byOhXqZjzTXY5X6/ozZJZfPExrtRPuCwsDVIS+z+7iwg2KfKE7tx3UV8C5f/VVw8CMqBJGzZxz4z4V/4q/IHP3zjq1OfZxo0rQiddTuzVA0LIwzdJWkdIbUYtm3LXxIC7HI8KqzKABCxbXw2XQesqwF7+QKecuQ987d8vd+EVuteDfkpnCAeTF0d793dP2IWBWhCGYz2GUeX4zs+kZ5QQudoqVKOdclzMs2w8qZ0eUjoCsF6b/N52VdIVojTp6jFmlfVY6YejxFA84z+cMD9sWcThk0+K2ex/6gP+0fn1qw== 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 GV1PR08MB8569.eurprd08.prod.outlook.com (2603:10a6:150:81::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7228.26; Thu, 25 Jan 2024 10:57:18 +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%7]) with mapi id 15.20.7228.026; Thu, 25 Jan 2024 10:57:17 +0000 From: "Sami Mujawar" To: Pierre Gondois , "devel@edk2.groups.io" CC: Ray Ni , Leif Lindholm , Ard Biesheuvel , nd Subject: Re: [edk2-devel] [PATCH v4 09/10] DynamicTablesPkg: Add DynamicTablesScmiInfoLib Thread-Topic: [PATCH v4 09/10] DynamicTablesPkg: Add DynamicTablesScmiInfoLib Thread-Index: AQHaLN3H5OjlLz8G90iK2RnfKvwFnrDqoMmA Date: Thu, 25 Jan 2024 10:57:17 +0000 Message-ID: <8109B344-9B9B-4D8B-BBD2-F003F12C97CD@arm.com> References: <20231212092847.1253756-1-pierre.gondois@arm.com> <20231212092847.1253756-10-pierre.gondois@arm.com> In-Reply-To: <20231212092847.1253756-10-pierre.gondois@arm.com> Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/16.81.24011420 Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: AS8PR08MB6806:EE_|GV1PR08MB8569:EE_|AM4PEPF00027A6C:EE_|PAVPR08MB9673:EE_ X-MS-Office365-Filtering-Correlation-Id: 0d50adb1-340c-466c-09f3-08dc1d947574 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: oC5UIn18ERTTWI/NHiVd2PbdITO3EKbDTuRtr72uihRnf5u4iosfiWdRg8fOoKHI31e7Z8HlmJOYCg7GgFGMp1OiocBzhg4YmpK1gUPK0uENzXTxUuTlZ0TOSCOnmpq7LOXcEI8/AQF14HKf7RPJnZx+HT1iEgCSaiOvelq6yjM0WwUp9Y7haV6EqJpUu8XXjcM1jom7XVvswHp6j1SkZJEWkI8smEBR3qlSq4JsUvYitaWBu0AiDSnLZithtMd1gN2REadewPaCR5hcQObAGm48F5sC7/f81chhBzFgQCMmET/HWOrNpKGMz9LHUr5dpr/IUpDCbPp9hmsZMS7CNMmj7NApi8cFaAmxyyGbdJ9rapQ7wRVi13u3/MbyGtZtI7p8QmhnxT0eSKJjps6rDvGdrcIkk1m9vPL0FaaoaB66V2Ww5eyUkrNklAA4br++Ad5i+CORYNcKRkTJp0cWYqYtvbfsNJwUqxH94woyMSB3j6clqSz0KYH8EMejDZtjKAn/6KjsRsGojWJ/WF1sD9FmpVCTO4EjMO36sUsi0efZhDmDAH0bLbLhRfAwfLRK6OBY1XmLiQAXr6O3cfBY/wY6KeTCEQtrgC28bNv/oWUU2oVsUHoNZckYY4cxEgfJifunSOnqwnwb/k7YNLvIT3JDjRc1DRkfoSclafNNBSW9V6y+gmHAIHZTROr/MH7C 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)(366004)(396003)(39860400002)(376002)(136003)(346002)(230922051799003)(1800799012)(64100799003)(186009)(451199024)(110136005)(86362001)(54906003)(64756008)(122000001)(966005)(478600001)(6486002)(66446008)(316002)(76116006)(66556008)(66946007)(66476007)(71200400001)(38100700002)(2616005)(6512007)(6506007)(26005)(4326008)(8936002)(8676002)(83380400001)(33656002)(30864003)(41300700001)(2906002)(36756003)(5660300002)(38070700009)(213903007)(45980500001)(44824005);DIR:OUT;SFP:1101; MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8569 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: AM4PEPF00027A6C.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f8cbcc8b-266d-4715-183d-08dc1d9465bb X-Microsoft-Antispam-Message-Info: /+zUfODYX8HqnTWFJdxGkmkYiI5dMDuRlU6w1PmBja/v1qWTuyTNHCCGJ+YuRVvIY+Dr5+qWpHoGgaTYDwR17hbzzkWz1aAHjCbqQjlWERNP4H/2ObsLvobPsQwNAN5uuybGCgDerNahGvR3crNi93WKqVNZMRuJb4eaB32rih+at1iNT/L8A5yoa94MzTDRJogd4kBoDNoMLh9nlAGMa7uf9Cl3NZ5Z7XlCOOIuUOv+BTpnrRwbFIP766fLSh7JI18k7yjVlADk33lfpO3H3tXzmxfsFt2PAUpIwnfGiPH2mtkNt0jk1cxrxxIpFWzF597tANeNLWpt48xK/EILViW1MPq4yhKFiT6b3TocVSw43mhpNtMvhB767IWVFoglc8uUNZvAbdhBDd7pe+FWa87HMvBKXDM4wtcvmfMpG31Fcr+wapdMmOU8dR2DHNRJH+N9apq7cUFADuNoHqP4hbRZY39fca4lpWyLYS0j2cYTMYRv+MIE0QKJEursEa05FgpAD2nMr8VVFLzPzaa01P1SXq2sUXqCEjJBq2hYYyQUC9eXUmzQ39sPyZweZQ+6imIQ5Y+C32k/ovH0CzV6/be5MUbuKwEWZecokPFlelM5ftS453kqUM9pfE7YWhqt2D+wNpqceh+JxMkcSI75y8eyB1tKKtoaYv7+0qWvU2CPCe+4T6Qa2o7QEwpGhMKU4R4ZRWbb0YDsenG196e8eG0Iak248WWM+IiSD19ibnjJGiLekAHwk/b1DbGI6XTv8y7wRz7LzAuuel6Pge2lJQ== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jan 2024 10:57:44.1890 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0d50adb1-340c-466c-09f3-08dc1d947574 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: AM4PEPF00027A6C.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9673 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: Yug9OFR1cWD36V2KSh1bQME5x7686176AA= Content-Language: en-GB Content-Type: text/plain; charset="utf-8" Content-ID: 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=ACqQZ5Ik; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=arm.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") SGkgUGllcnJlLA0KDQpJIGhhdmUgc29tZSBtaW5vciBmZWVkYmFjayBpbmxpbmUgbWFya2VkIFtT QU1JXS4NCg0KV2l0aCB0aGF0IGZpeGVkLA0KUmV2aWV3ZWQtYnk6IFNhbWkgTXVqYXdhciA8c2Ft aS5tdWphd2FyQGFybS5jb20+DQoNClJlZ2FyZHMsDQoNClNhbWkgTXVqYXdhcg0KDQrvu79PbiAx Mi8xMi8yMDIzLCAwOTozMCwgIlBpZXJyZSBHb25kb2lzIiA8cGllcnJlLmdvbmRvaXNAYXJtLmNv bSA8bWFpbHRvOnBpZXJyZS5nb25kb2lzQGFybS5jb20+PiB3cm90ZToNCg0KDQpUaGUgU0NQIGhv bGRzIHNvbWUgcG93ZXIgaW5mb3JtYXRpb24gdGhhdCBjb3VsZCBiZSBhZHZlcnRpc2VkDQp0aHJv dWdoIHRoZSBfQ1BDIG9iamVjdC4gVGhlIGNvbW11bmljYXRpb24gd2l0aCB0aGUgU0NQIGlzIGRv bmUNCnRocm91Z2ggU0NNSSBwcm90b2NvbHMgKGMuZi4gQXJtU2NtaUR4ZSkuDQoNCg0KVXNlIHRo ZSBTQ01JIHByb3RvY29scyB0byBxdWVyeSBpbmZvcm1hdGlvbiBhbmQgZmVlZCBpdCB0bw0KdGhl IER5bmFtaWNUYWJsZXNQa2cuDQoNCg0KQWNrZWQtYnk6IExlaWYgTGluZGhvbG0gPHF1aWNfbGxp bmRob2xAcXVpY2luYy5jb20gPG1haWx0bzpxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tPj4NClNp Z25lZC1vZmYtYnk6IFBpZXJyZSBHb25kb2lzIDxwaWVycmUuZ29uZG9pc0Bhcm0uY29tIDxtYWls dG86cGllcnJlLmdvbmRvaXNAYXJtLmNvbT4+DQotLS0NCkR5bmFtaWNUYWJsZXNQa2cvRHluYW1p Y1RhYmxlcy5kc2MuaW5jIHwgMSArDQpEeW5hbWljVGFibGVzUGtnL0R5bmFtaWNUYWJsZXNQa2cu ZGVjIHwgMyArDQpEeW5hbWljVGFibGVzUGtnL0R5bmFtaWNUYWJsZXNQa2cuZHNjIHwgMSArDQou Li4vTGlicmFyeS9EeW5hbWljVGFibGVzU2NtaUluZm9MaWIuaCB8IDMzICsrDQouLi4vRHluYW1p Y1RhYmxlc1NjbWlJbmZvTGliLmMgfCAyOTcgKysrKysrKysrKysrKysrKysrDQouLi4vRHluYW1p Y1RhYmxlc1NjbWlJbmZvTGliLmluZiB8IDMxICsrDQo2IGZpbGVzIGNoYW5nZWQsIDM2NiBpbnNl cnRpb25zKCspDQpjcmVhdGUgbW9kZSAxMDA2NDQgRHluYW1pY1RhYmxlc1BrZy9JbmNsdWRlL0xp YnJhcnkvRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliLmgNCmNyZWF0ZSBtb2RlIDEwMDY0NCBEeW5h bWljVGFibGVzUGtnL0xpYnJhcnkvRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliL0R5bmFtaWNUYWJs ZXNTY21pSW5mb0xpYi5jDQpjcmVhdGUgbW9kZSAxMDA2NDQgRHluYW1pY1RhYmxlc1BrZy9MaWJy YXJ5L0R5bmFtaWNUYWJsZXNTY21pSW5mb0xpYi9EeW5hbWljVGFibGVzU2NtaUluZm9MaWIuaW5m DQoNCg0KZGlmZiAtLWdpdCBhL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlcy5kc2MuaW5j IGIvRHluYW1pY1RhYmxlc1BrZy9EeW5hbWljVGFibGVzLmRzYy5pbmMNCmluZGV4IDlkNDMxMmM0 ZTg3ZC4uNDE5NDcwMTJiOTJiIDEwMDY0NA0KLS0tIGEvRHluYW1pY1RhYmxlc1BrZy9EeW5hbWlj VGFibGVzLmRzYy5pbmMNCisrKyBiL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlcy5kc2Mu aW5jDQpAQCAtMTUsNiArMTUsNyBAQCBbQnVpbGRPcHRpb25zXQ0KW0xpYnJhcnlDbGFzc2VzLmNv bW1vbl0NCg0KDQpBY3BpSGVscGVyTGlifER5bmFtaWNUYWJsZXNQa2cvTGlicmFyeS9Db21tb24v QWNwaUhlbHBlckxpYi9BY3BpSGVscGVyTGliLmluZg0KDQoNCkFtbExpYnxEeW5hbWljVGFibGVz UGtnL0xpYnJhcnkvQ29tbW9uL0FtbExpYi9BbWxMaWIuaW5mDQoNCg0KKyBEeW5hbWljVGFibGVz U2NtaUluZm9MaWJ8RHluYW1pY1RhYmxlc1BrZy9MaWJyYXJ5L0R5bmFtaWNUYWJsZXNTY21pSW5m b0xpYi9EeW5hbWljVGFibGVzU2NtaUluZm9MaWIuaW5mDQoNCg0KU3NkdFBjaWVTdXBwb3J0TGli fER5bmFtaWNUYWJsZXNQa2cvTGlicmFyeS9Db21tb24vU3NkdFBjaWVTdXBwb3J0TGliL1NzZHRQ Y2llU3VwcG9ydExpYi5pbmYNCg0KDQpTc2R0U2VyaWFsUG9ydEZpeHVwTGlifER5bmFtaWNUYWJs ZXNQa2cvTGlicmFyeS9Db21tb24vU3NkdFNlcmlhbFBvcnRGaXh1cExpYi9Tc2R0U2VyaWFsUG9y dEZpeHVwTGliLmluZg0KDQoNClRhYmxlSGVscGVyTGlifER5bmFtaWNUYWJsZXNQa2cvTGlicmFy eS9Db21tb24vVGFibGVIZWxwZXJMaWIvVGFibGVIZWxwZXJMaWIuaW5mDQoNCg0KZGlmZiAtLWdp dCBhL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlc1BrZy5kZWMgYi9EeW5hbWljVGFibGVz UGtnL0R5bmFtaWNUYWJsZXNQa2cuZGVjDQppbmRleCBjZmJjYmI5NTY5ZjEuLmFhNDIyY2U5ZjZm ZCAxMDA2NDQNCi0tLSBhL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlc1BrZy5kZWMNCisr KyBiL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlc1BrZy5kZWMNCkBAIC00Miw2ICs0Miw5 IEBAIFtMaWJyYXJ5Q2xhc3Nlc10NCiMjIEBsaWJyYXJ5Y2xhc3MgRGVmaW5lcyBhIHNldCBvZiBT TUJJT1Mgc3RyaW5nIGhlbHBlciBtZXRob2RzLg0KDQoNClNtYmlvc1N0cmluZ1RhYmxlTGlifElu Y2x1ZGUvTGlicmFyeS9TbWJpb3NTdHJpbmdUYWJsZUxpYi5oDQoNCg0KDQoNCg0KDQorICMjIEBs aWJyYXJ5Y2xhc3MgRGVmaW5lcyBhIHNldCBvZiBBUElzIHRvIHBvcHVsYXRlIENtT2JqIHVzaW5n IFNDTUkuDQoNCg0KKyBEeW5hbWljVGFibGVzU2NtaUluZm9MaWJ8SW5jbHVkZS9MaWJyYXJ5L0R5 bmFtaWNUYWJsZXNTY21pSW5mb0xpYi5oDQoNCg0KKw0KDQoNCltQcm90b2NvbHNdDQoNCg0KIyBD b25maWd1cmF0aW9uIE1hbmFnZXIgUHJvdG9jb2wgR1VJRA0KDQoNCmdFZGtpaUNvbmZpZ3VyYXRp b25NYW5hZ2VyUHJvdG9jb2xHdWlkID0geyAweGQ4NWE0ODM1LCAweDVhODIsIDB4NDg5NCwgeyAw eGFjLCAweDIsIDB4NzAsIDB4NmYsIDB4NDMsIDB4ZDUsIDB4OTcsIDB4OGUgfSB9DQoNCg0KZGlm ZiAtLWdpdCBhL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlc1BrZy5kc2MgYi9EeW5hbWlj VGFibGVzUGtnL0R5bmFtaWNUYWJsZXNQa2cuZHNjDQppbmRleCBiZDUwODRhOTAwOGYuLjg1M2Vh MmExZTRjMiAxMDA2NDQNCi0tLSBhL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlc1BrZy5k c2MNCisrKyBiL0R5bmFtaWNUYWJsZXNQa2cvRHluYW1pY1RhYmxlc1BrZy5kc2MNCkBAIC0zOSw2 ICszOSw3IEBAIFtMaWJyYXJ5Q2xhc3Nlcy5BUk0sIExpYnJhcnlDbGFzc2VzLkFBUkNINjRdDQpQ TDAxMVVhcnRMaWJ8QXJtUGxhdGZvcm1Qa2cvTGlicmFyeS9QTDAxMVVhcnRMaWIvUEwwMTFVYXJ0 TGliLmluZg0KDQoNCg0KDQoNCg0KW0NvbXBvbmVudHMuY29tbW9uXQ0KDQoNCisgRHluYW1pY1Rh Ymxlc1BrZy9MaWJyYXJ5L0R5bmFtaWNUYWJsZXNTY21pSW5mb0xpYi9EeW5hbWljVGFibGVzU2Nt aUluZm9MaWIuaW5mDQpbU0FNSV0gRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliIGlzIHNwZWNpZmlj IGZvciBBcm0gYXJjaGl0ZWN0dXJlLiANCkNhbiB5b3UgY2hlY2sgaWYgdGhpcyBhbmQgb3RoZXIg Y2hhbmdlcyBpbiB0aGlzIHBhdGNoIG5lZWQgdG8gZ28gaW4gYSBDb21wb25lbnRzLltBUk18QUFS Q0g2NCkgc2VjdGlvbiwgcGxlYXNlPw0KWy9TQU1JXQ0KDQoNCkR5bmFtaWNUYWJsZXNQa2cvTGli cmFyeS9Db21tb24vQWNwaUhlbHBlckxpYi9BY3BpSGVscGVyTGliLmluZg0KDQoNCkR5bmFtaWNU YWJsZXNQa2cvTGlicmFyeS9Db21tb24vQW1sTGliL0FtbExpYi5pbmYNCg0KDQpEeW5hbWljVGFi bGVzUGtnL0xpYnJhcnkvQ29tbW9uL1NzZHRQY2llU3VwcG9ydExpYi9Tc2R0UGNpZVN1cHBvcnRM aWIuaW5mDQoNCg0KZGlmZiAtLWdpdCBhL0R5bmFtaWNUYWJsZXNQa2cvSW5jbHVkZS9MaWJyYXJ5 L0R5bmFtaWNUYWJsZXNTY21pSW5mb0xpYi5oIGIvRHluYW1pY1RhYmxlc1BrZy9JbmNsdWRlL0xp YnJhcnkvRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliLmgNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQpp bmRleCAwMDAwMDAwMDAwMDAuLmZmNmI0N2Q1MWZlOA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvRHlu YW1pY1RhYmxlc1BrZy9JbmNsdWRlL0xpYnJhcnkvRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliLmgN CkBAIC0wLDAgKzEsMzMgQEANCisvKiogQGZpbGUNCg0KDQorIEFybSBTQ01JIEluZm8gTGlicmFy eS4NCg0KDQorDQoNCg0KKyBDb3B5cmlnaHQgKGMpIDIwMjIgLSAyMDIzLCBBcm0gTGltaXRlZC4g QWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQoNCg0KKw0KDQoNCisgU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCg0KDQorKiovDQoNCg0KKw0KDQoNCisjaWZuZGVm IEFSTV9TQ01JX0lORk9fTElCX0hfDQoNCg0KKyNkZWZpbmUgQVJNX1NDTUlfSU5GT19MSUJfSF8N Cg0KDQorDQoNCg0KKyNpbmNsdWRlIDxDb25maWd1cmF0aW9uTWFuYWdlck9iamVjdC5oPg0KDQoN CisNCg0KDQorLyoqIFBvcHVsYXRlIGEgQU1MX0NQQ19JTkZPIG9iamVjdCBiYXNlZCBvbiBTQ01J IGluZm9ybWF0aW9uLg0KDQoNCisNCg0KDQorIEBwYXJhbVtpbl0gRG9tYWluSWQgSWRlbnRpZmll ciBmb3IgdGhlIHBlcmZvcm1hbmNlIGRvbWFpbi4NCg0KDQorIEBwYXJhbVtvdXRdIENwY0luZm8g SWYgc3VjY2VzcywgdGhpcyBzdHJ1Y3R1cmUgd2FzIHBvcHVsYXRlZCBmcm9tDQoNCg0KKyBpbmZv cm1hdGlvbiBxdWVyaWVkIHRvIHRoZSBTQ1AuDQoNCg0KKw0KDQoNCisgQHJldHZhbCBFRklfU1VD Q0VTUyBTdWNjZXNzLg0KDQoNCisgQHJldHZhbCBFRklfREVWSUNFX0VSUk9SIERldmljZSBlcnJv ci4NCg0KDQorIEByZXR2YWwgRUZJX0lOVkFMSURfUEFSQU1FVEVSIEludmFsaWQgcGFyYW1ldGVy Lg0KDQoNCisgQHJldHZhbCBFRklfVElNRU9VVCBUaW1lIG91dC4NCg0KDQorIEByZXR2YWwgRUZJ X1VOU1VQUE9SVEVEIFVuc3VwcG9ydGVkLg0KDQoNCisqKi8NCg0KDQorRUZJX1NUQVRVUw0KDQoN CitFRklBUEkNCg0KDQorRHluYW1pY1RhYmxlc1NjbWlJbmZvR2V0RmFzdENoYW5uZWwgKA0KDQoN CisgSU4gVUlOVDMyIERvbWFpbklkLA0KDQoNCisgT1VUIEFNTF9DUENfSU5GTyAqQ3BjSW5mbw0K DQoNCisgKTsNCg0KDQorDQoNCg0KKyNlbmRpZiAvLyBBUk1fU0NNSV9JTkZPX0xJQl9IXw0KDQoN CmRpZmYgLS1naXQgYS9EeW5hbWljVGFibGVzUGtnL0xpYnJhcnkvRHluYW1pY1RhYmxlc1NjbWlJ bmZvTGliL0R5bmFtaWNUYWJsZXNTY21pSW5mb0xpYi5jIGIvRHluYW1pY1RhYmxlc1BrZy9MaWJy YXJ5L0R5bmFtaWNUYWJsZXNTY21pSW5mb0xpYi9EeW5hbWljVGFibGVzU2NtaUluZm9MaWIuYw0K bmV3IGZpbGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwMC4uZGE1YmMxODk1Nzc4DQot LS0gL2Rldi9udWxsDQorKysgYi9EeW5hbWljVGFibGVzUGtnL0xpYnJhcnkvRHluYW1pY1RhYmxl c1NjbWlJbmZvTGliL0R5bmFtaWNUYWJsZXNTY21pSW5mb0xpYi5jDQpAQCAtMCwwICsxLDI5NyBA QA0KKy8qKiBAZmlsZQ0KDQoNCisgQXJtIFNDTUkgSW5mbyBMaWJyYXJ5Lg0KDQoNCisNCg0KDQor IENvcHlyaWdodCAoYykgMjAyMiAtIDIwMjMsIEFybSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2Vy dmVkLjxCUj4NCg0KDQorDQoNCg0KKyBBcm0gRnVuY3Rpb25hbCBGaXhlZCBIYXJkd2FyZSBTcGVj aWZpY2F0aW9uOg0KDQoNCisgLSBodHRwczovL2RldmVsb3Blci5hcm0uY29tL2RvY3VtZW50YXRp b24vZGVuMDA0OC9sYXRlc3QvIDxodHRwczovL2RldmVsb3Blci5hcm0uY29tL2RvY3VtZW50YXRp b24vZGVuMDA0OC9sYXRlc3QvPg0KDQoNCisNCg0KDQorIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy OiBCU0QtMi1DbGF1c2UtUGF0ZW50DQoNCg0KKyoqLw0KDQoNCisNCg0KDQorI2luY2x1ZGUgPExp YnJhcnkvQWNwaUxpYi5oPg0KDQoNCisjaW5jbHVkZSA8TGlicmFyeS9EeW5hbWljVGFibGVzU2Nt aUluZm9MaWIuaD4NCg0KDQorI2luY2x1ZGUgPExpYnJhcnkvRGVidWdMaWIuaD4NCg0KDQorI2lu Y2x1ZGUgPExpYnJhcnkvTWVtb3J5QWxsb2NhdGlvbkxpYi5oPg0KDQoNCisjaW5jbHVkZSA8TGli cmFyeS9VZWZpQm9vdFNlcnZpY2VzVGFibGVMaWIuaD4NCg0KDQorI2luY2x1ZGUgPFByb3RvY29s L0FybVNjbWkuaD4NCg0KDQorI2luY2x1ZGUgPFByb3RvY29sL0FybVNjbWlQZXJmb3JtYW5jZVBy b3RvY29sLmg+DQoNCg0KKw0KDQoNCisvKiogQXJtIEZGSCByZWdpc3RlcnMNCg0KDQorDQoNCg0K KyBDZi4gQXJtIEZ1bmN0aW9uYWwgRml4ZWQgSGFyZHdhcmUgU3BlY2lmaWNhdGlvbg0KDQoNCisg czMuMiBQZXJmb3JtYW5jZSBtYW5hZ2VtZW50IGFuZCBDb2xsYWJvcmF0aXZlIFByb2Nlc3NvciBQ ZXJmb3JtYW5jZSBDb250cm9sDQoNCg0KKyovDQoNCg0KKyNkZWZpbmUgQVJNX0ZGSF9ERUxJVkVS RURfUEVSRl9DT1VOVEVSX1JFR0lTVEVSIDB4MA0KDQoNCisjZGVmaW5lIEFSTV9GRkhfUkVGRVJF TkNFX1BFUkZfQ09VTlRFUl9SRUdJU1RFUiAweDENCg0KDQorDQoNCg0KKy8vLyBBcm0gU0NNSSBw ZXJmb3JtYW5jZSBwcm90b2NvbC4NCg0KDQorU1RBVElDIFNDTUlfUEVSRk9STUFOQ0VfUFJPVE9D T0wgKlNjbWlQZXJmUHJvdG9jb2w7DQoNCg0KKw0KDQoNCisvKiogQXJtIFNDTUkgSW5mbyBMaWJy YXJ5IGNvbnN0cnVjdG9yLg0KDQoNCisNCg0KDQorIEBwYXJhbSBJbWFnZUhhbmRsZSBJbWFnZSBv ZiB0aGUgbG9hZGVkIGRyaXZlci4NCg0KDQorIEBwYXJhbSBTeXN0ZW1UYWJsZSBQb2ludGVyIHRv IHRoZSBTeXN0ZW0gVGFibGUuDQoNCg0KKw0KDQoNCisgQHJldHZhbCBFRklfU1VDQ0VTUyBTdWNj ZXNzLg0KDQoNCisgQHJldHZhbCBFRklfREVWSUNFX0VSUk9SIERldmljZSBlcnJvci4NCg0KDQor IEByZXR2YWwgRUZJX0lOVkFMSURfUEFSQU1FVEVSIEludmFsaWQgcGFyYW1ldGVyLg0KDQoNCisg QHJldHZhbCBFRklfTk9UX0ZPVU5EIE5vdCBGb3VuZA0KDQoNCisgQHJldHZhbCBFRklfVElNRU9V VCBUaW1lb3V0Lg0KDQoNCisgQHJldHZhbCBFRklfVU5TVVBQT1JURUQgVW5zdXBwb3J0ZWQuDQoN Cg0KKyoqLw0KDQoNCitFRklfU1RBVFVTDQoNCg0KK0VGSUFQSQ0KDQoNCitEeW5hbWljVGFibGVz U2NtaUluZm9MaWJDb25zdHJ1Y3RvciAoDQoNCg0KKyBJTiBFRklfSEFORExFIEltYWdlSGFuZGxl LA0KDQoNCisgSU4gRUZJX1NZU1RFTV9UQUJMRSAqU3lzdGVtVGFibGUNCg0KDQorICkNCg0KDQor ew0KDQoNCisgRUZJX1NUQVRVUyBTdGF0dXM7DQoNCg0KKyBVSU5UMzIgVmVyc2lvbjsNCg0KDQor DQoNCg0KKyBTdGF0dXMgPSBnQlMtPkxvY2F0ZVByb3RvY29sICgNCg0KDQorICZnQXJtU2NtaVBl cmZvcm1hbmNlUHJvdG9jb2xHdWlkLA0KDQoNCisgTlVMTCwNCg0KDQorIChWT0lEICoqKSZTY21p UGVyZlByb3RvY29sDQoNCg0KKyApOw0KDQoNCisgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0K DQoNCisgcmV0dXJuIFN0YXR1czsNCg0KDQorIH0NCg0KDQorDQoNCg0KKyBTdGF0dXMgPSBTY21p UGVyZlByb3RvY29sLT5HZXRWZXJzaW9uIChTY21pUGVyZlByb3RvY29sLCAmVmVyc2lvbik7DQoN Cg0KKyBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQoNCg0KKyByZXR1cm4gU3RhdHVzOw0KDQoN CisgfQ0KDQoNCisNCg0KDQorIC8vIEZhc3RDaGFubmVscyB3ZXJlIGFkZGVkIGluIFNDTUkgdjIu MCBzcGVjLg0KDQoNCisgaWYgKFZlcnNpb24gPCBQRVJGT1JNQU5DRV9QUk9UT0NPTF9WRVJTSU9O X1YyKSB7DQoNCg0KKyBERUJVRyAoKA0KDQoNCisgREVCVUdfRVJST1IsDQoNCg0KKyAiRHluYW1p Y1RhYmxlc1NjbWlJbmZvTGliIHJlcXVpcmVzIFNDTUkgdmVyc2lvbiA+IDIuMFxuIg0KDQoNCisg KSk7DQoNCg0KKyByZXR1cm4gRUZJX1VOU1VQUE9SVEVEOw0KDQoNCisgfQ0KDQoNCisNCg0KDQor IHJldHVybiBTdGF0dXM7DQoNCg0KK30NCg0KDQorDQoNCg0KKy8qKiBHZXQgdGhlIE9QUHMvcGVy Zm9ybWFuY2Ugc3RhdGVzIG9mIGEgcG93ZXIgZG9tYWluLg0KDQoNCisNCg0KDQorIFRoaXMgZnVu Y3Rpb24gaXMgYSB3cmFwcGVyIGFyb3VuZCB0aGUgU0NNSSBQRVJGT1JNQU5DRV9ERVNDUklCRV9M RVZFTFMNCg0KDQorIGNvbW1hbmQuIFRoZSBsaXN0IG9mIGRpc2NyZXRlIHBlcmZvcm1hbmNlIHN0 YXRlcyBpcyByZXR1cm5lZCBpbiBhIGJ1ZmZlcg0KDQoNCisgdGhhdCBtdXN0IGJlIGZyZWVkIGJ5 IHRoZSBjYWxsZXIuDQoNCg0KKw0KDQoNCisgQHBhcmFtW2luXSBEb21haW5JZCBJZGVudGlmaWVy IGZvciB0aGUgcGVyZm9ybWFuY2UgZG9tYWluLg0KDQoNCisgQHBhcmFtW291dF0gTGV2ZWxBcnJh eSBJZiBzdWNjZXNzLCBwb2ludGVyIHRvIHRoZSBsaXN0IG9mIGxpc3Qgb2YNCg0KDQorIHBlcmZv cm1hbmNlIHN0YXRlLiBUaGlzIG1lbW9yeSBtdXN0IGJlIGZyZWVkIGJ5DQoNCg0KKyB0aGUgY2Fs bGVyLg0KDQoNCisgQHBhcmFtW291dF0gTGV2ZWxBcnJheUNvdW50IElmIHN1Y2Nlc3MsIGNvbnRh aW5zIHRoZSBudW1iZXIgb2Ygc3RhdGVzIGluDQoNCg0KKyBMZXZlbEFycmF5Lg0KDQoNCisNCg0K DQorIEByZXR2YWwgRUZJX1NVQ0NFU1MgU3VjY2Vzcy4NCg0KDQorIEByZXR2YWwgRUZJX0RFVklD RV9FUlJPUiBEZXZpY2UgZXJyb3IuDQoNCg0KKyBAcmV0dmFsIEVGSV9JTlZBTElEX1BBUkFNRVRF UiBJbnZhbGlkIHBhcmFtZXRlci4NCg0KDQorIEByZXR2YWwgRUZJX1RJTUVPVVQgVGltZSBvdXQu DQoNCg0KKyBAcmV0dmFsIEVGSV9VTlNVUFBPUlRFRCBVbnN1cHBvcnRlZC4NCg0KDQorKiovDQoN Cg0KK1NUQVRJQw0KDQoNCitFRklfU1RBVFVTDQoNCg0KK0VGSUFQSQ0KDQoNCitEeW5hbWljVGFi bGVzU2NtaUluZm9EZXNjcmliZUxldmVscyAoDQoNCg0KKyBJTiBVSU5UMzIgRG9tYWluSWQsDQoN Cg0KKyBPVVQgU0NNSV9QRVJGT1JNQU5DRV9MRVZFTCAqKkxldmVsQXJyYXksDQoNCg0KKyBPVVQg VUlOVDMyICpMZXZlbEFycmF5Q291bnQNCg0KDQorICkNCg0KDQorew0KDQoNCisgRUZJX1NUQVRV UyBTdGF0dXM7DQoNCg0KKyBTQ01JX1BFUkZPUk1BTkNFX0xFVkVMICpBcnJheTsNCg0KDQorIFVJ TlQzMiBDb3VudDsNCg0KDQorIFVJTlQzMiBTaXplOw0KDQoNCisNCg0KDQorIGlmICgoU2NtaVBl cmZQcm90b2NvbCA9PSBOVUxMKSB8fA0KDQoNCisgKExldmVsQXJyYXkgPT0gTlVMTCkgfHwNCg0K DQorIChMZXZlbEFycmF5Q291bnQgPT0gTlVMTCkpDQoNCg0KKyB7DQoNCg0KKyByZXR1cm4gRUZJ X0lOVkFMSURfUEFSQU1FVEVSOw0KDQoNCisgfQ0KDQoNCisNCg0KDQorIC8vIEZpcnN0IGNhbGwg dG8gZ2V0IHRoZSBudW1iZXIgb2YgbGV2ZWxzLg0KDQoNCisgU2l6ZSA9IDA7DQoNCg0KKyBTdGF0 dXMgPSBTY21pUGVyZlByb3RvY29sLT5EZXNjcmliZUxldmVscyAoDQoNCg0KKyBTY21pUGVyZlBy b3RvY29sLA0KDQoNCisgRG9tYWluSWQsDQoNCg0KKyAmQ291bnQsDQoNCg0KKyAmU2l6ZSwNCg0K DQorIE5VTEwNCg0KDQorICk7DQoNCg0KKyBpZiAoU3RhdHVzICE9IEVGSV9CVUZGRVJfVE9PX1NN QUxMKSB7DQoNCg0KKyAvLyBFRklfU1VDQ0VTUyBpcyBub3QgYSB2YWxpZCBvcHRpb24uDQoNCg0K KyBpZiAoU3RhdHVzID09IEVGSV9TVUNDRVNTKSB7DQoNCg0KKyByZXR1cm4gRUZJX0lOVkFMSURf UEFSQU1FVEVSOw0KDQoNCisgfSBlbHNlIHsNCg0KDQorIHJldHVybiBTdGF0dXM7DQoNCg0KKyB9 DQoNCg0KKyB9DQoNCg0KKw0KDQoNCisgQXJyYXkgPSBBbGxvY2F0ZVplcm9Qb29sIChTaXplKTsN Cg0KDQorIGlmIChBcnJheSA9PSBOVUxMKSB7DQoNCg0KKyByZXR1cm4gRUZJX09VVF9PRl9SRVNP VVJDRVM7DQoNCg0KKyB9DQoNCg0KKw0KDQoNCisgLy8gU2Vjb25kIGNhbGwgdG8gZ2V0IHRoZSBk ZXNjcmlwdGlvbnMgb2YgdGhlIGxldmVscy4NCg0KDQorIFN0YXR1cyA9IFNjbWlQZXJmUHJvdG9j b2wtPkRlc2NyaWJlTGV2ZWxzICgNCg0KDQorIFNjbWlQZXJmUHJvdG9jb2wsDQoNCg0KKyBEb21h aW5JZCwNCg0KDQorICZDb3VudCwNCg0KDQorICZTaXplLA0KDQoNCisgQXJyYXkNCg0KDQorICk7 DQoNCg0KKyBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQoNCg0KKyByZXR1cm4gU3RhdHVzOw0K DQoNCisgfQ0KDQoNCisNCg0KDQorICpMZXZlbEFycmF5ID0gQXJyYXk7DQoNCg0KKyAqTGV2ZWxB cnJheUNvdW50ID0gQ291bnQ7DQoNCg0KKw0KDQoNCisgcmV0dXJuIFN0YXR1czsNCg0KDQorfQ0K DQoNCisNCg0KDQorLyoqIFBvcHVsYXRlIGEgQU1MX0NQQ19JTkZPIG9iamVjdCBiYXNlZCBvbiBT Q01JIGluZm9ybWF0aW9uLg0KDQoNCisNCg0KDQorIEBwYXJhbVtpbl0gRG9tYWluSWQgSWRlbnRp ZmllciBmb3IgdGhlIHBlcmZvcm1hbmNlIGRvbWFpbi4NCg0KDQorIEBwYXJhbVtvdXRdIENwY0lu Zm8gSWYgc3VjY2VzcywgdGhpcyBzdHJ1Y3R1cmUgd2FzIHBvcHVsYXRlZCBmcm9tDQoNCg0KKyBp bmZvcm1hdGlvbiBxdWVyaWVkIHRvIHRoZSBTQ1AuDQoNCg0KKw0KDQoNCisgQHJldHZhbCBFRklf U1VDQ0VTUyBTdWNjZXNzLg0KDQoNCisgQHJldHZhbCBFRklfREVWSUNFX0VSUk9SIERldmljZSBl cnJvci4NCg0KDQorIEByZXR2YWwgRUZJX0lOVkFMSURfUEFSQU1FVEVSIEludmFsaWQgcGFyYW1l dGVyLg0KDQoNCisgQHJldHZhbCBFRklfVElNRU9VVCBUaW1lIG91dC4NCg0KDQorIEByZXR2YWwg RUZJX1VOU1VQUE9SVEVEIFVuc3VwcG9ydGVkLg0KDQoNCisqKi8NCg0KDQorRUZJX1NUQVRVUw0K DQoNCitFRklBUEkNCg0KDQorRHluYW1pY1RhYmxlc1NjbWlJbmZvR2V0RmFzdENoYW5uZWwgKA0K DQoNCisgSU4gVUlOVDMyIERvbWFpbklkLA0KDQoNCisgT1VUIEFNTF9DUENfSU5GTyAqQ3BjSW5m bw0KDQoNCisgKQ0KDQoNCit7DQoNCg0KKyBFRklfU1RBVFVTIFN0YXR1czsNCg0KDQorIFNDTUlf UEVSRk9STUFOQ0VfRkFTVENIQU5ORUwgRmNMZXZlbEdldDsNCg0KDQorIFNDTUlfUEVSRk9STUFO Q0VfRkFTVENIQU5ORUwgRmNMaW1pdHNTZXQ7DQoNCg0KKyBTQ01JX1BFUkZPUk1BTkNFX0RPTUFJ Tl9BVFRSSUJVVEVTIERvbWFpbkF0dHJpYnV0ZXM7DQoNCg0KKw0KDQoNCisgU0NNSV9QRVJGT1JN QU5DRV9MRVZFTCAqTGV2ZWxBcnJheTsNCg0KDQorIFVJTlQzMiBMZXZlbENvdW50Ow0KDQoNCisN Cg0KDQorIFVJTlQ2NCBGY0xldmVsR2V0QWRkcjsNCg0KDQorIFVJTlQ2NCBGY0xpbWl0c01heFNl dEFkZHI7DQoNCg0KKyBVSU5UNjQgRmNMaW1pdHNNaW5TZXRBZGRyOw0KDQoNCisNCg0KDQorIGlm ICgoU2NtaVBlcmZQcm90b2NvbCA9PSBOVUxMKSB8fA0KDQoNCisgKENwY0luZm8gPT0gTlVMTCkp DQoNCg0KKyB7DQoNCg0KKyByZXR1cm4gRUZJX0lOVkFMSURfUEFSQU1FVEVSOw0KDQoNCisgfQ0K DQoNCisNCg0KDQorIFN0YXR1cyA9IFNjbWlQZXJmUHJvdG9jb2wtPkRlc2NyaWJlRmFzdGNoYW5u ZWwgKA0KDQoNCisgU2NtaVBlcmZQcm90b2NvbCwNCg0KDQorIERvbWFpbklkLA0KDQoNCisgU2Nt aU1lc3NhZ2VJZFBlcmZvcm1hbmNlTGV2ZWxTZXQsDQoNCg0KKyAmRmNMZXZlbEdldA0KDQoNCisg KTsNCg0KDQorIGlmIChFRklfRVJST1IgKFN0YXR1cykpIHsNCg0KDQorIHJldHVybiBTdGF0dXM7 DQoNCg0KKyB9DQoNCg0KKw0KDQoNCisgU3RhdHVzID0gU2NtaVBlcmZQcm90b2NvbC0+RGVzY3Jp YmVGYXN0Y2hhbm5lbCAoDQoNCg0KKyBTY21pUGVyZlByb3RvY29sLA0KDQoNCisgRG9tYWluSWQs DQoNCg0KKyBTY21pTWVzc2FnZUlkUGVyZm9ybWFuY2VMaW1pdHNTZXQsDQoNCg0KKyAmRmNMaW1p dHNTZXQNCg0KDQorICk7DQoNCg0KKyBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQoNCg0KKyBy ZXR1cm4gU3RhdHVzOw0KDQoNCisgfQ0KDQoNCisNCg0KDQorIFN0YXR1cyA9IFNjbWlQZXJmUHJv dG9jb2wtPkdldERvbWFpbkF0dHJpYnV0ZXMgKA0KDQoNCisgU2NtaVBlcmZQcm90b2NvbCwNCg0K DQorIERvbWFpbklkLA0KDQoNCisgJkRvbWFpbkF0dHJpYnV0ZXMNCg0KDQorICk7DQoNCg0KKyBp ZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQoNCg0KKyByZXR1cm4gU3RhdHVzOw0KDQoNCisgfQ0K DQoNCisNCg0KDQorIFN0YXR1cyA9IER5bmFtaWNUYWJsZXNTY21pSW5mb0Rlc2NyaWJlTGV2ZWxz IChEb21haW5JZCwgJkxldmVsQXJyYXksICZMZXZlbENvdW50KTsNCg0KDQorIGlmIChFRklfRVJS T1IgKFN0YXR1cykpIHsNCg0KDQorIHJldHVybiBTdGF0dXM7DQoNCg0KKyB9DQoNCg0KKw0KDQoN CisgLyogRG8gc29tZSBzYWZldHkgY2hlY2tzLg0KDQoNCisgT25seSBzdXBwb3J0IEZhc3RDaGFu bmVscyAoYW5kIG5vdCBkb29yYmVsbHMpIGFzIHRoaXMgaXMNCg0KDQorIHRoZSBvbmx5IG1lY2hh bmlzbSBzdXBwb3J0ZWQgYnkgU0NQLg0KDQoNCisgRmNMaW1pdHNbR2V0fFNldF0gcmVxdWlyZSAy IFVJTlQzMiB2YWx1ZXMgKG1heCwgdGhlbiBtaW4pIGFuZA0KDQoNCisgRmNMaW1pdHNbR2V0fFNl dF0gcmVxdWlyZSAxIFVJTlQzMiB2YWx1ZSAobGV2ZWwpLg0KDQoNCisgKi8NCg0KDQorIGlmICgo RmNMZXZlbEdldC5DaGFuU2l6ZSAhPSBzaXplb2YgKFVJTlQzMikpIHx8DQoNCg0KKyAoKEZjTGV2 ZWxHZXQuQXR0cmlidXRlcyAmIFNDTUlfUEVSRl9GQ19BVFRSSUJfSEFTX0RPT1JCRUxMKSA9PQ0K DQoNCisgU0NNSV9QRVJGX0ZDX0FUVFJJQl9IQVNfRE9PUkJFTEwpIHx8DQoNCg0KKyAoRmNMaW1p dHNTZXQuQ2hhblNpemUgIT0gMiAqIHNpemVvZiAoVUlOVDMyKSkgfHwNCg0KDQorICgoRmNMaW1p dHNTZXQuQXR0cmlidXRlcyAmIFNDTUlfUEVSRl9GQ19BVFRSSUJfSEFTX0RPT1JCRUxMKSA9PQ0K DQoNCisgU0NNSV9QRVJGX0ZDX0FUVFJJQl9IQVNfRE9PUkJFTEwpKQ0KDQoNCisgew0KDQoNCisg U3RhdHVzID0gRUZJX0lOVkFMSURfUEFSQU1FVEVSOw0KDQoNCisgZ290byBleGl0X2hhbmRsZXI7 DQoNCg0KKyB9DQoNCg0KKw0KDQoNCisgRmNMZXZlbEdldEFkZHIgPSAoKFVJTlQ2NClGY0xldmVs R2V0LkNoYW5BZGRySGlnaCA8PCAzMikgfA0KDQoNCisgRmNMZXZlbEdldC5DaGFuQWRkckxvdzsN Cg0KDQorIEZjTGltaXRzTWF4U2V0QWRkciA9ICgoVUlOVDY0KUZjTGltaXRzU2V0LkNoYW5BZGRy SGlnaCA8PCAzMikgfA0KDQoNCisgRmNMaW1pdHNTZXQuQ2hhbkFkZHJMb3c7DQoNCg0KKyBGY0xp bWl0c01pblNldEFkZHIgPSBGY0xpbWl0c01heFNldEFkZHIgKyAweDQ7DQoNCg0KKw0KDQoNCisg Q3BjSW5mby0+UmV2aXNpb24gPSBFRklfQUNQSV82XzVfQU1MX0NQQ19SRVZJU0lPTjsNCg0KDQor IENwY0luZm8tPkhpZ2hlc3RQZXJmb3JtYW5jZUludGVnZXIgPSBMZXZlbEFycmF5W0xldmVsQ291 bnQgLSAxXS5MZXZlbDsNCg0KDQorIENwY0luZm8tPk5vbWluYWxQZXJmb3JtYW5jZUludGVnZXIg PSBEb21haW5BdHRyaWJ1dGVzLlN1c3RhaW5lZFBlcmZMZXZlbDsNCg0KDQorIENwY0luZm8tPkxv d2VzdE5vbmxpbmVhclBlcmZvcm1hbmNlSW50ZWdlciA9IExldmVsQXJyYXlbMF0uTGV2ZWw7DQoN Cg0KKyBDcGNJbmZvLT5Mb3dlc3RQZXJmb3JtYW5jZUludGVnZXIgPSBMZXZlbEFycmF5WzBdLkxl dmVsOw0KDQoNCisNCg0KDQorIENwY0luZm8tPkRlc2lyZWRQZXJmb3JtYW5jZVJlZ2lzdGVyLkFk ZHJlc3NTcGFjZUlkID0gRUZJX0FDUElfNl81X1NZU1RFTV9NRU1PUlk7DQoNCg0KKyBDcGNJbmZv LT5EZXNpcmVkUGVyZm9ybWFuY2VSZWdpc3Rlci5SZWdpc3RlckJpdFdpZHRoID0gMzI7DQoNCg0K KyBDcGNJbmZvLT5EZXNpcmVkUGVyZm9ybWFuY2VSZWdpc3Rlci5SZWdpc3RlckJpdE9mZnNldCA9 IDA7DQoNCg0KKyBDcGNJbmZvLT5EZXNpcmVkUGVyZm9ybWFuY2VSZWdpc3Rlci5BY2Nlc3NTaXpl ID0gRUZJX0FDUElfNl81X0RXT1JEOw0KDQoNCisgQ3BjSW5mby0+RGVzaXJlZFBlcmZvcm1hbmNl UmVnaXN0ZXIuQWRkcmVzcyA9IEZjTGV2ZWxHZXRBZGRyOw0KW1NBTUldIENhbiB3ZSB1c2UgQVJN X0dBUzMyKCkgdG8gcG9wdWxhdGUgdGhlIERlc2lyZWRQZXJmb3JtYW5jZVJlZ2lzdGVyIGFuZCBv dGhlciByZWdpc3RlcnMgYmVsb3csIHBsZWFzZT8NCg0KDQorDQoNCg0KKyBDcGNJbmZvLT5NaW5p bXVtUGVyZm9ybWFuY2VSZWdpc3Rlci5BZGRyZXNzU3BhY2VJZCA9IEVGSV9BQ1BJXzZfNV9TWVNU RU1fTUVNT1JZOw0KDQoNCisgQ3BjSW5mby0+TWluaW11bVBlcmZvcm1hbmNlUmVnaXN0ZXIuUmVn aXN0ZXJCaXRXaWR0aCA9IDMyOw0KDQoNCisgQ3BjSW5mby0+TWluaW11bVBlcmZvcm1hbmNlUmVn aXN0ZXIuUmVnaXN0ZXJCaXRPZmZzZXQgPSAwOw0KDQoNCisgQ3BjSW5mby0+TWluaW11bVBlcmZv cm1hbmNlUmVnaXN0ZXIuQWNjZXNzU2l6ZSA9IEVGSV9BQ1BJXzZfNV9EV09SRDsNCg0KDQorIENw Y0luZm8tPk1pbmltdW1QZXJmb3JtYW5jZVJlZ2lzdGVyLkFkZHJlc3MgPSBGY0xpbWl0c01pblNl dEFkZHI7DQoNCg0KKw0KDQoNCisgQ3BjSW5mby0+TWF4aW11bVBlcmZvcm1hbmNlUmVnaXN0ZXIu QWRkcmVzc1NwYWNlSWQgPSBFRklfQUNQSV82XzVfU1lTVEVNX01FTU9SWTsNCg0KDQorIENwY0lu Zm8tPk1heGltdW1QZXJmb3JtYW5jZVJlZ2lzdGVyLlJlZ2lzdGVyQml0V2lkdGggPSAzMjsNCg0K DQorIENwY0luZm8tPk1heGltdW1QZXJmb3JtYW5jZVJlZ2lzdGVyLlJlZ2lzdGVyQml0T2Zmc2V0 ID0gMDsNCg0KDQorIENwY0luZm8tPk1heGltdW1QZXJmb3JtYW5jZVJlZ2lzdGVyLkFjY2Vzc1Np emUgPSBFRklfQUNQSV82XzVfRFdPUkQ7DQoNCg0KKyBDcGNJbmZvLT5NYXhpbXVtUGVyZm9ybWFu Y2VSZWdpc3Rlci5BZGRyZXNzID0gRmNMaW1pdHNNYXhTZXRBZGRyOw0KDQoNCisNCg0KDQorIENw Y0luZm8tPlJlZmVyZW5jZVBlcmZvcm1hbmNlQ291bnRlclJlZ2lzdGVyLkFkZHJlc3NTcGFjZUlk ID0gRUZJX0FDUElfNl81X0ZVTkNUSU9OQUxfRklYRURfSEFSRFdBUkU7DQoNCg0KKyBDcGNJbmZv LT5SZWZlcmVuY2VQZXJmb3JtYW5jZUNvdW50ZXJSZWdpc3Rlci5SZWdpc3RlckJpdFdpZHRoID0g MHg0MDsNCg0KDQorIENwY0luZm8tPlJlZmVyZW5jZVBlcmZvcm1hbmNlQ291bnRlclJlZ2lzdGVy LlJlZ2lzdGVyQml0T2Zmc2V0ID0gMDsNCg0KDQorIENwY0luZm8tPlJlZmVyZW5jZVBlcmZvcm1h bmNlQ291bnRlclJlZ2lzdGVyLkFjY2Vzc1NpemUgPSBBUk1fRkZIX1JFRkVSRU5DRV9QRVJGX0NP VU5URVJfUkVHSVNURVI7DQoNCg0KKyBDcGNJbmZvLT5SZWZlcmVuY2VQZXJmb3JtYW5jZUNvdW50 ZXJSZWdpc3Rlci5BZGRyZXNzID0gMHg0Ow0KDQoNCisNCg0KDQorIENwY0luZm8tPkRlbGl2ZXJl ZFBlcmZvcm1hbmNlQ291bnRlclJlZ2lzdGVyLkFkZHJlc3NTcGFjZUlkID0gRUZJX0FDUElfNl81 X0ZVTkNUSU9OQUxfRklYRURfSEFSRFdBUkU7DQoNCg0KKyBDcGNJbmZvLT5EZWxpdmVyZWRQZXJm b3JtYW5jZUNvdW50ZXJSZWdpc3Rlci5SZWdpc3RlckJpdFdpZHRoID0gMHg0MDsNCg0KDQorIENw Y0luZm8tPkRlbGl2ZXJlZFBlcmZvcm1hbmNlQ291bnRlclJlZ2lzdGVyLlJlZ2lzdGVyQml0T2Zm c2V0ID0gMDsNCg0KDQorIENwY0luZm8tPkRlbGl2ZXJlZFBlcmZvcm1hbmNlQ291bnRlclJlZ2lz dGVyLkFjY2Vzc1NpemUgPSBBUk1fRkZIX0RFTElWRVJFRF9QRVJGX0NPVU5URVJfUkVHSVNURVI7 DQoNCg0KKyBDcGNJbmZvLT5EZWxpdmVyZWRQZXJmb3JtYW5jZUNvdW50ZXJSZWdpc3Rlci5BZGRy ZXNzID0gMHg0Ow0KDQoNCisNCg0KDQorIC8vIFNDTUkgc2hvdWxkIGFkdmVydGlzZSBwZXJmb3Jt YW5jZSB2YWx1ZXMgb24gYSB1bmlmaWVkIHNjYWxlLiBTbyBmcmVxdWVuY3kNCg0KDQorIC8vIHZh bHVlcyBhcmUgbm90IGF2YWlsYWJsZS4gTG93ZXN0RnJlcXVlbmN5SW50ZWdlciBhbmQNCg0KDQor IC8vIE5vbWluYWxGcmVxdWVuY3lJbnRlZ2VyIGFyZSBwb3B1bGF0ZWQgaW4gdGhlIENvbmZpZ3Vy YXRpb25NYW5hZ2VyLg0KDQoNCisNCg0KDQorZXhpdF9oYW5kbGVyOg0KDQoNCisgRnJlZVBvb2wg KExldmVsQXJyYXkpOw0KDQoNCisgcmV0dXJuIFN0YXR1czsNCg0KDQorfQ0KDQoNCmRpZmYgLS1n aXQgYS9EeW5hbWljVGFibGVzUGtnL0xpYnJhcnkvRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliL0R5 bmFtaWNUYWJsZXNTY21pSW5mb0xpYi5pbmYgYi9EeW5hbWljVGFibGVzUGtnL0xpYnJhcnkvRHlu YW1pY1RhYmxlc1NjbWlJbmZvTGliL0R5bmFtaWNUYWJsZXNTY21pSW5mb0xpYi5pbmYNCm5ldyBm aWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwMDAwMDAuLmQ0OTI3N2Y4MmJjMw0KLS0tIC9k ZXYvbnVsbA0KKysrIGIvRHluYW1pY1RhYmxlc1BrZy9MaWJyYXJ5L0R5bmFtaWNUYWJsZXNTY21p SW5mb0xpYi9EeW5hbWljVGFibGVzU2NtaUluZm9MaWIuaW5mDQpAQCAtMCwwICsxLDMxIEBADQor IyMgQGZpbGUNCg0KDQorIyBBcm0gU0NNSSBJbmZvIExpYnJhcnkuDQoNCg0KKyMNCg0KDQorIyBD b3B5cmlnaHQgKGMpIDIwMjIgLSAyMDIzLCBBcm0gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl ZC4NCg0KDQorIw0KDQoNCisjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2Ut UGF0ZW50DQoNCg0KKyMjDQoNCg0KKw0KDQoNCitbRGVmaW5lc10NCg0KDQorIElORl9WRVJTSU9O ID0gMHgwMDAxMDAxQg0KDQoNCisgQkFTRV9OQU1FID0gRHluYW1pY1RhYmxlc1NjbWlJbmZvTGli DQoNCg0KKyBGSUxFX0dVSUQgPSAxQTdDREIwNC05RkZDLTQwREEtQTg3Qy1BNUFDQURBRjgxMzYN Cg0KDQorIFZFUlNJT05fU1RSSU5HID0gMS4wDQoNCg0KKyBNT0RVTEVfVFlQRSA9IERYRV9EUklW RVINCg0KDQorIExJQlJBUllfQ0xBU1MgPSBEeW5hbWljVGFibGVzU2NtaUluZm9MaWINCg0KDQor IENPTlNUUlVDVE9SID0gRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliQ29uc3RydWN0b3INCg0KDQor DQoNCg0KK1tTb3VyY2VzXQ0KDQoNCisgRHluYW1pY1RhYmxlc1NjbWlJbmZvTGliLmMNCg0KDQor DQoNCg0KK1tQYWNrYWdlc10NCg0KDQorIEFybVBrZy9Bcm1Qa2cuZGVjDQoNCg0KKyBEeW5hbWlj VGFibGVzUGtnL0R5bmFtaWNUYWJsZXNQa2cuZGVjDQoNCg0KKyBFbWJlZGRlZFBrZy9FbWJlZGRl ZFBrZy5kZWMNCg0KDQorIE1kZVBrZy9NZGVQa2cuZGVjDQoNCg0KKw0KDQoNCitbUHJvdG9jb2xz XQ0KDQoNCisgZ0FybVNjbWlQZXJmb3JtYW5jZVByb3RvY29sR3VpZCAjIyBDT05TVU1FUw0KDQoN CisNCg0KDQorW0RlcGV4XQ0KDQoNCisgZ0FybVNjbWlQZXJmb3JtYW5jZVByb3RvY29sR3VpZA0K DQoNCi0tIA0KMi4yNS4xDQoNCg0KDQoNCg0KDQoKLT0tPS09LT0tPS09LT0tPS09LT0tPS0KR3Jv dXBzLmlvIExpbmtzOiBZb3UgcmVjZWl2ZSBhbGwgbWVzc2FnZXMgc2VudCB0byB0aGlzIGdyb3Vw LgpWaWV3L1JlcGx5IE9ubGluZSAoIzExNDM4Nik6IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9k ZXZlbC9tZXNzYWdlLzExNDM4NgpNdXRlIFRoaXMgVG9waWM6IGh0dHBzOi8vZ3JvdXBzLmlvL210 LzEwMzEyNzA1NS83Njg2MTc2Ckdyb3VwIE93bmVyOiBkZXZlbCtvd25lckBlZGsyLmdyb3Vwcy5p bwpVbnN1YnNjcmliZTogaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL3Vuc3ViIFtyZWJl Y2NhQG9wZW5mdy5pb10KLT0tPS09LT0tPS09LT0tPS09LT0tPS0KCg0K