From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from CH4PR04CU002.outbound.protection.outlook.com (mail-northcentralusazon11013033.outbound.protection.outlook.com [40.107.201.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8C78D2571A9 for ; Wed, 10 Jun 2026 02:08:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.201.33 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781057291; cv=fail; b=Djejl1WE8GrNz3iPPrz2ipybQ9VyOfcXeKgRajeSFEbeHIvQoFshdPXI9w1YaDInDSewwK58AIt/nzOp+RSov5oErVd36ClMqDjYMglMASYSIa1RNv1tnPxkXJq/cYWZHchquTpH0dKGk0tOv/3Yle+kiMNKqC+nlmK00HC7Va8= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781057291; c=relaxed/simple; bh=JkQFzcw7E4+mk5nQiIx7wo92ekEiBs5kV+eq5f8pt+E=; h=From:To:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=PsqHZHbQYiW6iRYU8r01dBMFR2PKEHQroG5fokHzDBrKaez0Kf+sGbsU/+YjDmS2c/kGRHru+Q6fGtZCt0TkbS406GAX6HBa7Mbg4A1ivzYaO1CNeJS3veEkkOWXFHzliWlQb6p89Qzp7iOYjLl1UDx/8M8Cva6cPqIvAHF/2XU= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=lsRrMRV2; arc=fail smtp.client-ip=40.107.201.33 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="lsRrMRV2" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=oW0RboL1W4uElJQ+yQ8ISIqJB8h+CJG7owEKcqDR8B0SHSAXEPHL6SuF4SXsUwIQNtlZKifmTVow8jnaARYe+2kVq+oc6wNWjtBMQcTzIVFIdZsjd0uyOxXDOdtiJwtBBl4wgVY8h1IppxlxHerZLY0SrsEmK0aLbN3Hj4XQY60uKFt0WuYpCBjC8FTQET1doVSuz0yNqMn2rhehXKSNj1x43GKQhKGo7r2gPeUqxNGqb74WaCZMAAzREwPfWsDKlOKEOr6x8rUep+h8/y/VwxWf6vNgx8rDRRSC3Lg4zSrFGW6fnA9aHMC2Z7fsF6uhzvyPrvBITUiaCc4KnifT2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=JkQFzcw7E4+mk5nQiIx7wo92ekEiBs5kV+eq5f8pt+E=; b=nuTpQOtNVBTMx8sd8YOlqUhya9ZEuAqhjT2WPczuNtJukVL48EfpqEYxBY3mZu//JXtgjyojrsxq8RPrXwQ4fLsMLHP4ZO31kD2YCS1lhjwBsWAwZ2ly+yW5Bc9kOakVD2N7RbJHfGJ1L3+MmatNx2yQRjfzo/Ris5UbrPPK0stZPw58wn5aZ3d12lRBuzI8wwoSxS0Pgp53GR67zflRGnyj/ndDPJ4ZbUS19zq+1156AN4RhkXPSBz8S8m19Xr9UtvNs8GxWqOeJoM1HqROhUU/38HjsNm/v8o/BRVsH3YsuRVStF8Om6enmXb2lRu4TXhVQsCDqTmPOBpvgJqZsg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JkQFzcw7E4+mk5nQiIx7wo92ekEiBs5kV+eq5f8pt+E=; b=lsRrMRV2upVH0I9qYIoB1YQnb17EecC07w/ZtdUeGJBRlIsYL3bWzfenKuoY2jM91oVfFa2rx1bgyRrikJ5yBguljsTcNo2ZsErByFFyiJ9NPBjcJbivxeV6b7Klj8e8qyFy1N9jCbi6v54YvGx4Erfe+ce93RW4iaP0vKnQsyaZfA0s+4u2QTdRCqHqO+mup2KVd8zta2nFV8u7WXUn6Hg/slh+83tJ2Wts3Yq8gYx2gBOcWWu7hGR8HD0YY0f5+kRlo16lVKzPbEPjHCHTIPx+xoPptU0mjRe+ThBSDK4nuQG6FXmt/yvb22o/qBVHTuHYXJNFmyc3fyapEoPBQw== Received: from SJ0PR03MB5951.namprd03.prod.outlook.com (2603:10b6:a03:2de::13) by PH0PR03MB7158.namprd03.prod.outlook.com (2603:10b6:510:29a::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.92.13; Wed, 10 Jun 2026 02:08:06 +0000 Received: from SJ0PR03MB5951.namprd03.prod.outlook.com ([fe80::f285:8376:68af:6acf]) by SJ0PR03MB5951.namprd03.prod.outlook.com ([fe80::f285:8376:68af:6acf%5]) with mapi id 15.21.0092.011; Wed, 10 Jun 2026 02:08:05 +0000 From: "NG, TZE YEE" To: "Frank.Li@kernel.org" , "linux-i3c@lists.infradead.org" , Alexandre Belloni , Frank Li , "NG, ADRIAN HO YIN" , Felix Gu , Wolfram Sang , Manikanta Guntupalli , Jorge Marques , Sakari Ailus , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH v2 3/3] i3c: master: Validate GET CCC payload length and retry M0/M2 once Thread-Topic: [PATCH v2 3/3] i3c: master: Validate GET CCC payload length and retry M0/M2 once Thread-Index: AQHc9/lGs1ArEJV0/0ao0CFA6bDSmrY2BgmAgAEF9QA= Date: Wed, 10 Jun 2026 02:08:05 +0000 Message-ID: <101697c2-64fd-499b-98e0-9e65eb219810@altera.com> References: <352ed29363b12d1d145ffd44316564bd8e33444c.1780999511.git.tze.yee.ng@altera.com> <20260609103029.994891F00893@smtp.kernel.org> In-Reply-To: <20260609103029.994891F00893@smtp.kernel.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR03MB5951:EE_|PH0PR03MB7158:EE_ x-ms-office365-filtering-correlation-id: 3a5fb857-893e-4f01-f462-08dec6951c3b x-ms-exchange-atpmessageproperties: SA x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|23010399003|366016|1800799024|376014|7416014|921020|55112099003|11063799006|4143699003|56012099006|38070700021|6133799003|18002099003|22082099003; x-microsoft-antispam-message-info: ZNlOiN3Xjj/gRlKCb5ifEQ8GXSTT4dg/PSs2AgZvbaxNouFXKIU9sbmmBFyR5mu3RD1w92MqYLf1Ub5hiOsdUNz5M/kkvW5Ed3EbQR+EkZlhBNH49R7HB9264OS19qC9Ez3bnVTGxajkinL1Wzfrrxkc+7fxB/S+lZaGT9x27OpdmxX03ljFBhWz4/5o6LvDv7jZJNBtrEmCmqOzLhewAeBiw1wSnPW/C5toiKTV0cRcNQBlDHrnHmWSG3TQ8fG8qz47UIE1B3NVXRGWOoXci1ZS9cFsZa7fIm3hYIG2dWgS9Jtqdg4mC3t559tPEELPIMrgFiwE/4wfe0zuedVYzAETwm4b3Y84h3sblnoOQuRe3QTvqOH2T3XQtoO5I94mXMS0otFAf2iEvckC5fHxWRxU9siVYK7ps4VEIbRtHVLhyPtw4+2whvb8tZr44s1gt4feUcqtxxN8SsRvx08NRjq2lT9vCCkFSkAW91vto4dvbwC95QmpCqyL7DefmDGqaKnjV9tfqJSAx/w1pPQaXgr3w7wsadsMnLGkCAWKyxKXdwcQSkFO+41lbfPMdUb7G1wY4QIqT7AcmAbl23AeB/ukzlmrllcfrLtbI+CDTmpQYJ/YAm7P2fKbvsigj4RnB0xNxMOR0zy/R+GO9jb+/3WmIEZHbALaoXYJyuUnUcnWgUB2lNotjmv6pQY/RF6LKnHywI6FiQ2PNMAMuUiXpON/aRSG2MbIp4SBgT3n2c38INJjky21y62W9SRYIMd7l7FSZPlbCOUVlSoHbHxrvg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB5951.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(366016)(1800799024)(376014)(7416014)(921020)(55112099003)(11063799006)(4143699003)(56012099006)(38070700021)(6133799003)(18002099003)(22082099003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OGJxMGZqazBERGJ0Z2grSGMvMFhVbWFTOHZGTDF5UHJxbXNqZWQrdit3ZnAy?= =?utf-8?B?MDNDeUpoQWVrTnZRZytLWTVackpEYjVQNHd2TkJEVUtxT3ZzZjZwNUhqSXpz?= =?utf-8?B?SjNlWTF4bUNOamdNTUlSTk56MU1KUEg1U2lvQkFpUVpKaEQrT2FNMk00S0Jn?= =?utf-8?B?czNzeFRBaE5JU294bjROQm44TEtNcnFxbldBTndlbWZ2eFhIcXQ3NVVyV1pY?= =?utf-8?B?czUwMjY3WnNNRk9PbGJRUE4wSHRyQ2JtWU5TWjBBT0EzTmZUTXczQ0lreDUx?= =?utf-8?B?NHlUVXlTRm1pWjZnNHJ5akh6Zkg5NlhRQTV6QzQ0YjR2MFpXSEo1RnVDRm9q?= =?utf-8?B?ZUFLQUlxYUh5TGozN2ROZDBOZk1Id00yWDhwOEd5RnQ1am9kQ3NEbDF3KytG?= =?utf-8?B?d1Z0MmEzdWtWRVdQTWVIRXpKL3BzeW5scHJLNktSQ2hEV0dyT1I4QmlKTVBQ?= =?utf-8?B?SHRRYlUxTjlnZGw1TXN2VlJDblFrajIzaEVyRm9lcE5mVnNmY2FIZjZCU2wv?= =?utf-8?B?U2MwdWdrSkd1MDNyeTJNQ01xRVdSOVhwd2F2ZEtaeVdadi81Nys4c0dFRUNY?= =?utf-8?B?b3J2dFdMZTdSR2l2YkJLQnc4VzlJUnRKYUpyV042V1V5bGJQcEttZHZIbFk3?= =?utf-8?B?S1BYd1M0RmVWTmJrODkxVkhLbnBhNjExeWtrdG4wYk13Vm9oSDVHd1dhUEEy?= =?utf-8?B?d1RiV2hZR2lKSVVaTjVYUjdsdWJKZGJjbmRoN0lBaFhQTDVJM3JOdjNiQXp2?= =?utf-8?B?TlJJY3dhcjk4UHdzUkhhZEtFd0ZLTFhtRjBXUnp3SFVadW9ZUjJLTHhGbVVa?= =?utf-8?B?SHRHM2V2QXB6LzdodzhNeHBEVi9HU0Q5U0dKbzhLV1hnby9HeXdOSGhFT01G?= =?utf-8?B?Y0dhcW1XT2xUUFVHeC9EbFZwbWRza3ljbjQvN1N5ZFVSWWp2Z2NBUlNFS3dR?= =?utf-8?B?cWFENFZEQVBIZjEwVXJRQ1NmL1RydjIrTGNHaEN1eEY0TFdpNmpKbUtKcjVa?= =?utf-8?B?TFluS1M3MzhlVXgzaUFtd29YcWVRS0M4U0o4N21vTm16bnYvUGt4aDYwQUN1?= =?utf-8?B?dW9hYVpSOXRBb2ZPdTlOMko1U3B3WW1RSktVS3JFK1JWNlhnenAzZWlHeUNm?= =?utf-8?B?akl4OW5pY0QvY0Nob1Y2d1VwRTdDTEdPV2VsQXJNeFhESE9xeVZ2TzJoTXRj?= =?utf-8?B?M080eEhlRFdjSXkxWHZ6cHRlajRJR3AvK29MR204aW4xSEVuWkh3b2F5UUVu?= =?utf-8?B?cThhWDhnRzY4RWd1WVMrRzcxRG01WVdHRXFxOEhvTnI2YU9BVzVjL0dvWTk0?= =?utf-8?B?V0ZMUTRoZXowUVlIRkhITkxqRTFjaVhxT3F6c0pnNTFvOUxvZkttanNjTHd0?= =?utf-8?B?THc1KzU2WFh1NUxNSlZ5MDQxNjE0ZzAvSVh2TS9TajhMcCtGamd2T2MyVFBJ?= =?utf-8?B?b3lCY1JkMHZLc2RBZDgvVUE2VDd3TzVSclF3Zzd4MVU5WTZmdGxLMFY4SnFV?= =?utf-8?B?dFRvc0h2MUFMTXRpZSsvT1Y3RmlGMTQvNmdKSWtqYWpVSTFNN0RpUENXaHVV?= =?utf-8?B?WElPNHpZaklLRUd3K1FyM21EUm5FaXhOczg5SC83S3ZRNXE2dzNuYk1CR0FN?= =?utf-8?B?UFVPR3JVb3RzQTNXMElRTW55NFkzRUhhZUhvSW5VV0pPbEkyeEZBdVcvTXRp?= =?utf-8?B?NFU2b2pIUFZCSWI1SnMwZVM4M1ZKN2RWNVhsaUpTVGg0dVVhOFh5WTF4Nkcz?= =?utf-8?B?bzdTUklvQjZ2U3dpSXk1YmZhUHlxNWdyLy9NU0JIMjNydzdqNlQxM2xIbFNH?= =?utf-8?B?ZHJRMkFMb2dYNjg0OXo2R0JEVXJoMW0xaVQzM2ZpcFBUb3k4elBmaVA5d2RK?= =?utf-8?B?NnRPemhlM1dScDRTbU85Rlk0d3FoRDliNEVrUEtpTTV1MllSSzFnRjdKT0Qw?= =?utf-8?B?MTF6bEhJSitHekh3eEFtd24wS2JBbmZ4UGgxUHVGMFNrbkhNSG5qVG9nVEpL?= =?utf-8?B?eTBDcUpVRTBoVTNHeitpWU12dWxtSnlzQzJyR0ZETEtERk95MS9tNmoweVBJ?= =?utf-8?B?MFBzOGJiZmwwa2tPbit0S01IU2xlWm1KclMvME82MkpWdFl1ODdhVVdzQkFn?= =?utf-8?B?VGJ4R3hIM1AxUG56NE1CZGxyWjRZSFREY3MzSWNleTAvMmlwaE55N2hFWTIy?= =?utf-8?B?c0kyTmEwTFhXQU8vbWNRU0c5NnZyRExOUkRzbUhmWGI4TFBJVExiVEtvVXhj?= =?utf-8?B?d1V6U1VDZGJQclA3OUJuOEFaNUx3NmsrMW9ocXlMcEN3VUcvU0FuRWtxNXhQ?= =?utf-8?B?cEJPeWtCR3hNRW9naFJXckdGU0xRSURkTmtpQWVpcGtKQUdrMHVkU1p2Mjc0?= =?utf-8?Q?PJxibB5wRLG197Rg=3D?= Content-Type: text/plain; charset="utf-8" Content-ID: <13BA13E6A5D19D488B606C456C3FC88E@namprd03.prod.outlook.com> Content-Transfer-Encoding: base64 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB5951.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a5fb857-893e-4f01-f462-08dec6951c3b X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jun 2026 02:08:05.8701 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ruNHk+thw8qSO0GTuz6ISMv4SJ85gQKK4dTlhNVKDoZQNpK9n8x8jkNFo7Vh9Wu5BDFjY1DZApN3Jy9whRfoUw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB7158 T24gOS82LzIwMjYgNjozMCBwbSwgc2FzaGlrby1ib3RAa2VybmVsLm9yZyB3cm90ZToNCj4gVGhh bmsgeW91IGZvciB5b3VyIGNvbnRyaWJ1dGlvbiEgU2FzaGlrbyBBSSByZXZpZXcgZm91bmQgMSBw b3RlbnRpYWwgaXNzdWUocykgdG8gY29uc2lkZXI6DQo+IC0gW0hpZ2hdIEFkZHJlc3MgTkFDS3Mg YXJlIGluY29ycmVjdGx5IG1hcHBlZCB0byAtRUlOVkFMIGluc3RlYWQgb2YgYSBoYXJkd2FyZSBl cnJvciBjb2RlICgtRUlPIG9yIC1FTlhJTyksIGJyZWFraW5nIHN0YW5kYXJkIHN1YnN5c3RlbSBl cnJvciByZXBvcnRpbmcgY29udmVudGlvbnMgZm9yIHN0YW5kYXJkIHRyYW5zZmVycy4NCj4gLS0N Cj4gDQo+IGNvbW1pdCBmMGYxMzU0ODM5YmUzNmY1NWFjNTFlYzlkOGQ5YzE4MjY1M2E2NDk3DQo+ IEF1dGhvcjogQWRyaWFuIE5nIEhvIFlpbiA8YWRyaWFuLmhvLnlpbi5uZ0BhbHRlcmEuY29tPg0K PiANCj4gaTNjOiBtYXN0ZXI6IFZhbGlkYXRlIEdFVCBDQ0MgcGF5bG9hZCBsZW5ndGggYW5kIHJl dHJ5IE0wL00yIG9uY2UNCj4gDQo+IFZhbGlkYXRlIEdFVCBDQ0MgcGF5bG9hZCBsZW5ndGggYWZ0 ZXIgYSBzdWNjZXNzZnVsIHRyYW5zZmVyLiBUcmVhdCBhDQo+IHNob3J0IHJlYWQgYXMgSTNDX0VS Uk9SX00wIGFuZCByZXR1cm4gLUVJTy4gUmV0cnkgR0VUIENDQ3Mgb25jZSBvbg0KPiByZXRyaWFi bGUgZXJyb3JzLg0KPiANCj4gWyAuLi4gXQ0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvaTNjL21h c3Rlci9kdy1pM2MtbWFzdGVyLmMgYi9kcml2ZXJzL2kzYy9tYXN0ZXIvZHctaTNjLW1hc3Rlci5j DQo+PiBpbmRleCBjNDAwNGY4N2M2ODU3Li5hOGI1ZWJhYmQzNTA4IDEwMDY0NA0KPj4gLS0tIGEv ZHJpdmVycy9pM2MvbWFzdGVyL2R3LWkzYy1tYXN0ZXIuYw0KPj4gKysrIGIvZHJpdmVycy9pM2Mv bWFzdGVyL2R3LWkzYy1tYXN0ZXIuYw0KPj4gQEAgLTQ5Myw3ICs0OTMsNiBAQCBzdGF0aWMgdm9p ZCBkd19pM2NfbWFzdGVyX2VuZF94ZmVyX2xvY2tlZChzdHJ1Y3QgZHdfaTNjX21hc3RlciAqbWFz dGVyLCB1MzIgaXNyKQ0KPj4gICAJCQlicmVhazsNCj4+ICAgCQljYXNlIFJFU1BPTlNFX0VSUk9S X1BBUklUWToNCj4+ICAgCQljYXNlIFJFU1BPTlNFX0VSUk9SX0lCQV9OQUNLOg0KPj4gLQkJY2Fz ZSBSRVNQT05TRV9FUlJPUl9BRERSRVNTX05BQ0s6DQo+PiAgIAkJY2FzZSBSRVNQT05TRV9FUlJP Ul9UUkFOU0ZfQUJPUlQ6DQo+PiAgIAkJY2FzZSBSRVNQT05TRV9FUlJPUl9DUkM6DQo+PiAgIAkJ Y2FzZSBSRVNQT05TRV9FUlJPUl9GUkFNRToNCj4+IEBAIC01MDMsNiArNTAyLDcgQEAgc3RhdGlj IHZvaWQgZHdfaTNjX21hc3Rlcl9lbmRfeGZlcl9sb2NrZWQoc3RydWN0IGR3X2kzY19tYXN0ZXIg Km1hc3RlciwgdTMyIGlzcikNCj4+ICAgCQkJcmV0ID0gLUVOT1NQQzsNCj4+ICAgCQkJYnJlYWs7 DQo+PiAgIAkJY2FzZSBSRVNQT05TRV9FUlJPUl9JMkNfV19OQUNLX0VSUjoNCj4+ICsJCWNhc2Ug UkVTUE9OU0VfRVJST1JfQUREUkVTU19OQUNLOg0KPj4gICAJCWRlZmF1bHQ6DQo+PiAgIAkJCXJl dCA9IC1FSU5WQUw7DQo+PiAgIAkJCWJyZWFrOw0KPiANCj4gW1NldmVyaXR5OiBIaWdoXQ0KPiBE b2VzIG1vdmluZyBSRVNQT05TRV9FUlJPUl9BRERSRVNTX05BQ0sgdG8gdGhlIGRlZmF1bHQgY2Fz ZSBpbmNvcnJlY3RseSBtYXANCj4gYWRkcmVzcyBOQUNLcyB0byAtRUlOVkFMIGluc3RlYWQgb2Yg YSBoYXJkd2FyZSBlcnJvciBjb2RlIGxpa2UgLUVJTyBvcg0KPiAtRU5YSU8/DQo+IA0KPiBUaGlz IGZ1bmN0aW9uIHNlcnZlcyBhcyB0aGUgZ2VuZXJpYyBjb21wbGV0aW9uIGhhbmRsZXIgZm9yIGFs bCB0cmFuc2ZlcnMsDQo+IGluY2x1ZGluZyBzdGFuZGFyZCBJM0MgYW5kIEkyQyBwcml2YXRlIHJl YWRzIGFuZCB3cml0ZXMuIEFuIGFkZHJlc3MgTkFDSw0KPiB1c3VhbGx5IGluZGljYXRlcyBhbiBh YnNlbnQsIGRpc2Nvbm5lY3RlZCwgb3IgYnVzeSBkZXZpY2UuDQo+IA0KPiBSZXR1cm5pbmcgLUVJ TlZBTCBmb3IgYSBoYXJkd2FyZSBOQUNLIGR1cmluZyBhIGRhdGEgdHJhbnNmZXIgZGl2ZXJnZXMg ZnJvbQ0KPiBzdWJzeXN0ZW0gY29udmVudGlvbnMuIENhbiB0aGlzIGNhdXNlIHVzZXJzcGFjZSB0 b29scyBsaWtlIGkyY2RldGVjdCBvcg0KPiBjb3JlIHByb2JpbmcgbG9naWMgdG8gbWlzaW50ZXJw cmV0IGFuIGFic2VudCBkZXZpY2UgYXMgYSBmYXRhbCBpbnZhbGlkDQo+IHBhcmFtZXRlciBlcnJv ciwgcmF0aGVyIHRoYW4gYWxsb3dpbmcgZ3JhY2VmdWwgZmFsbGJhY2tzPw0KPiANCkkgd2lsbCBz dWJtaXQgdjMgdG8gbW92ZSBSRVNQT05TRV9FUlJPUl9BRERSRVNTX05BQ0sgdG8gcmV0dXJuIC1F SU8gDQooYWxvbmdzaWRlIElCQV9OQUNLKSBpbiBwYXRjaCAyLzMgYW5kIGRyb3AgdGhlIGFjY2lk ZW50YWwgcmV2ZXJ0IGluIA0KcGF0Y2ggMy8zLg0KDQpSZWdhcmRzLA0KVHplIFllZQ0K