From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 152C8439A9; Tue, 23 Jan 2024 16:37:51 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8CC51406B4; Tue, 23 Jan 2024 16:37:50 +0100 (CET) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.12]) by mails.dpdk.org (Postfix) with ESMTP id BDA5A402C5 for ; Tue, 23 Jan 2024 16:37:48 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1706024269; x=1737560269; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=edBsur5oJEpIw13JAjslK0bspixDY+Px2b2lcaq6CcI=; b=V6JbjE+YJEXbacS2wEKk9ybLBs9eTa+bcOyFlRWEqUbGn7EvjAEz3wMQ Q0apHpmXqm2svXtgMY+W43/y+JCgXEiCfPbMl5hEhENxzyaMTzm6AP9Xc ehffNMlh7kKU52nZMB0qdYf1Ic4FRVhVbwrT88buvd6wSwM7/OGwH9GV5 /7PZ5uLWWw0PbGaDwKYDu/ulf95EW0xiEFe2WuijpeHv8+6UTCqEY3C6+ g42tUcGYaM00Aomq6yxPA/W9Cm7Orf8ymHPQwvvzXEcPVAEsipQRaJI+/ nrCWSZ3dyJ1HXasNjqxD8f5TqBpwxUw0v4qLhmc4mxuylzxq6zxv3BGOX w==; X-IronPort-AV: E=McAfee;i="6600,9927,10962"; a="1405975" X-IronPort-AV: E=Sophos;i="6.05,214,1701158400"; d="scan'208";a="1405975" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmvoesa106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jan 2024 07:37:46 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10962"; a="735610605" X-IronPort-AV: E=Sophos;i="6.05,214,1701158400"; d="scan'208";a="735610605" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga003.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 23 Jan 2024 07:37:44 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Tue, 23 Jan 2024 07:37:43 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Tue, 23 Jan 2024 07:37:43 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Tue, 23 Jan 2024 07:37:43 -0800 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.168) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Tue, 23 Jan 2024 07:37:42 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lzj0qmJvIpoB3fPv0fOR/550jur1XGu7Sx85Zgs/My9N9KGtoEZswWcUawUXr4F5Ef8T2c3az5QEo+QLwmlVJ7H7nACZ6vHrYuUInzgBYOs1vvE8bnRFRD/KdG5mTdpPJGtrm3k3/D1L6wBDTEQYYbl8u1rlVxo2vjSq7CvK+B3NESyjdDWFV9/qBlGX8b0bdxuD2kAk6bJ0ZJTYow5IHoEZ/QIDqkLgih1QuR4pcHWUbYCFhi6ATyh0gWUitdwd5bq6PRm3HSIH/wX1UI5+HnoHSo/R6Lcd5HAKn3N87TuYuOD2AD1NkGDW3d3KH6HBdrBH48Awf/Wmwe5AXXV/Gw== 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=edBsur5oJEpIw13JAjslK0bspixDY+Px2b2lcaq6CcI=; b=oO0ia8OT9B8uDkwTZuYcnpDUhJCFI6NSDz19gYKt8o70ExeXkQuw5I4iyJ7D0Ve/hBKrVzDVPBw1ryWn+m+LwHIy3+kS1F1igxl4Xu7ZKOE9oGrCc+xH7dArFbWYI+K1lurrJ7P8lUyNxaVidRtFrDxucCm9VVKqOBjSj5no/M3cuGPWvkZ/LJcakrp1F4r6CqLOXISHnJsyUaywP9KxJw6IioI+ynIus1ixrF1BZwbE+Z3Hooz6Ycxj3sALoz86IPt8d1Mn8ZxrmqpthX1z//pAIPQteSc5TVswR7KP2y0d5NSi4BCqQ07SGfIgioZAarLc2vzZ+/j78FEYE/7Jvw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from SN7PR11MB7639.namprd11.prod.outlook.com (2603:10b6:806:32a::14) by SN7PR11MB6728.namprd11.prod.outlook.com (2603:10b6:806:264::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7202.32; Tue, 23 Jan 2024 15:37:38 +0000 Received: from SN7PR11MB7639.namprd11.prod.outlook.com ([fe80::8a06:eadf:e98b:23ad]) by SN7PR11MB7639.namprd11.prod.outlook.com ([fe80::8a06:eadf:e98b:23ad%2]) with mapi id 15.20.7202.020; Tue, 23 Jan 2024 15:37:38 +0000 From: "Power, Ciara" To: Ferruh Yigit , "Sivaramakrishnan, VenkatX" , Igor Russkikh , Selwin Sebastian , Ajit Khaparde , Somnath Kotur , Nithin Dabilpuram , Kiran Kumar K , Sunil Kumar Kori , Satha Rao , "Zhang, Yuying" , "Xing, Beilei" , Rahul Lakkireddy , Hemant Agrawal , Sachin Saxena , "Su, Simei" , "Wu, Wenjun1" , Gagandeep Singh , "John Daley" , Hyong Youb Kim , Gaetan Rivet , "Zhang, Qi Z" , "Wang, Xiao W" , Jie Hai , Yisen Zhuang , "Wu, Jingjing" , "Yang, Qiming" , "Guo, Junfeng" , Andrew Boyer , Long Li , "Matan Azrad" , Viacheslav Ovsiienko , Dariusz Sosnowski , Ori Kam , Suanming Mou , Chaoyong He , Jiawen Wu , Harman Kalra , Devendra Singh Rawat , Alok Prasad , Andrew Rybchenko , "Jerin Jacob" , Maciej Czekaj , Jian Wang , "Behrens, Jochen" , "Thomas Monjalon" CC: "dev@dpdk.org" Subject: RE: [PATCH v5 2/2] drivers/net: return number of types in get supported types Thread-Topic: [PATCH v5 2/2] drivers/net: return number of types in get supported types Thread-Index: AQHaSgcRrvP0EPo3wky7qKCfq0YDoLDhOc2AgAYZg1CAADIdgIAAA7WAgAAGp0A= Date: Tue, 23 Jan 2024 15:37:38 +0000 Message-ID: References: <20231212143722.1803259-1-venkatx.sivaramakrishnan@intel.com> <20240118120741.1434286-1-venkatx.sivaramakrishnan@intel.com> <20240118120741.1434286-2-venkatx.sivaramakrishnan@intel.com> <0d66b7f9-5cbd-4fc8-b3c0-b127580a699c@amd.com> <591812fb-e73d-4e0a-9e6d-eccd549d0b81@amd.com> In-Reply-To: Accept-Language: en-IE, 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=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN7PR11MB7639:EE_|SN7PR11MB6728:EE_ x-ms-office365-filtering-correlation-id: 6a57be31-1fb4-4102-2d74-08dc1c293a90 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: u+1X9XAuzDCQAYnxDQYJvU0xQvW91TvQ1iaBg/wIr3jlBSvCwfMGK1VjLSk2FbntKRvpsZFE2+RquEtLpX9oVHiXYijjDNeKoUmGYO7ge2035Gp7+m46x/ZmraPTW0X5jyv9ydxDvK6Yu+okwvGG1ePWQckq9GT6/SMhN/jHypnM3nk6dJ/+86f+bwdSsKT5rfcIk3TTuHovva0pjJRzKh6sjC3c3UZzu/RnRGvRyvvAbcCaku/DrGxzcxgJbSA1xqw1FqjFPjgT04AlAywooKDNnRQe1vLj+FYjjV0yNZFROegfGgqigfh4nuCFWz+I11BXofhFIm0GoMDzHG/Sqfp/NtTKJkddg6NlS/kDistfqFQGdv2SjRUrB2zF21RQuqyT6Xo+0TfCDzwf+ahypdQIdXo4v5qY5ILrkOIBVKHg4i3aLhwkeoisVJSnsYgwKio4GS1GT3BGW/Pjv5KhLdr+M1lP1XxJJ38dixOXMPGPtUfGKVeXlndnjMLHe0mfjhPuyUKO1ayctRDGM28K7GOKYBapp/AKoq0sHl0ZhYEfTtTd+wSF1Y6+Ce+13G45vmmYkSjbXpbpxwLW8T3ktqjtlNyV9D335i8t5hZV6ZI+aqP9EdfnV7vjrMttbvqb x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN7PR11MB7639.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(136003)(39860400002)(396003)(366004)(376002)(346002)(230922051799003)(1800799012)(64100799003)(451199024)(186009)(41300700001)(921011)(1191002)(55016003)(9686003)(26005)(53546011)(6506007)(7696005)(83380400001)(71200400001)(86362001)(4326008)(66476007)(66556008)(8936002)(316002)(76116006)(52536014)(8676002)(66946007)(478600001)(66446008)(110136005)(122000001)(82960400001)(38100700002)(64756008)(38070700009)(33656002)(2906002)(7406005)(7416002)(5660300002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TVN5SkNvdElHMlNUREZ3VnJWRW11cCs3TUJ6QkRzRnYvVldRa3k2WFh3L3JL?= =?utf-8?B?Tk92VWJMVnRZVHRiRFozL3FuZ3NjVVBUb2RpZ2c3T1p1bTZRclBxZWJKNEtN?= =?utf-8?B?SlM0MUNpUnRocGl5WUw0REt1TDFmQUZpM25LM1E2NTZRTzQ0Y1BxNncwamcy?= =?utf-8?B?S3hKWCs0RmllSkoyZDFBR1hhR01sWmNDMjhxaW9kZVM4MDJRRzhRNEVkeldC?= =?utf-8?B?b0pEb1c4Z0JrSERLU3hyM085eG1HRkxUdGE5ZFVOd2pLSkRuc2VIbGRJZ1hn?= =?utf-8?B?NGVnc2tKL3VFT3VQcTJTTWdWYmtEaU1OZFFycVNveWh4SXBhTWpTVnVRV0pV?= =?utf-8?B?bWxocE1mRnFCQXV2cnM3U0E1Um1jdmhUSndJZkFma1Q0NFNob3k1L2JaZDFn?= =?utf-8?B?VlpiTjJHV2dzSUhEVlpwUmFYVCt4NzZ0N29HZ254MGcxRjl2eW9mdmdaL0dG?= =?utf-8?B?WS9uN2ZjdlFQcDdqTG1Ec096cGZ0eStDS2NIdnAzU2ZtK0Q4cUh3MDhnM1Zi?= =?utf-8?B?eHJtVlZ4aHdYakFpeHF5WlJuUFFwcDZXdk9VQ29ocXFabm4vQUsyd3pMU0tD?= =?utf-8?B?YVI0WEI4bTZUc0N4eVBoWDlTaU9FN3I4UWFLOXA0OEZKcG1URnNpcitsR1Fk?= =?utf-8?B?dm1kOU41dGhmK2MxakdyVnlTQis3NG5HeXRFcGszSkJHdHhKRzVxOUpHcHRr?= =?utf-8?B?c2RzN0duc2RldUtyNXN4SDUzR0NQNVVtWjJrUklCTTVHTHRDN3NXQXRUWmlx?= =?utf-8?B?RnEwVXVOMUxRV2x0S3ZwUGZTdWdvenRPaDZ1SWY1OEltMTEwZzNsM0RENVlp?= =?utf-8?B?THNBMFE4MlB3UjlLUDY2eWtGVktQTmNVdlgyZGlxMytxaks4N0o0dFZjeURI?= =?utf-8?B?N0JNOWNKSDBFQkJXSlA2STREa1U3c2ZDTldZb01wNnM2N3F3Mk1NanRvUzZE?= =?utf-8?B?emk2L1d0SEtIQ2ZhU2xrT3M2S281NzRnbk9jVTBpMmU1VGlNb3pGczAybDcy?= =?utf-8?B?Ung2VGxDbTVJektUNzlydEdMWk9jOFNaUjB4VnVselZrZXRIdTRkWXJaRU5z?= =?utf-8?B?RGk5T2MvRHZvQVR3THZwR0l5VWNibXhtWFBsYUFiNTY2MlIySmtjQVY0V3U4?= =?utf-8?B?bFUvK05LTW5JdjRXY29NS2dkWXdmaEFraXJLRUJYMytNbFdyYzV0amlVRmRU?= =?utf-8?B?V1ZSZ2pEeWtINnFqMnE5dU9KVWR4K0xyYXhmeGlkV21hS1dwTUtnVWVzSksw?= =?utf-8?B?RVB2aTRkcDFxT0FUbnVYYkdaMGJkd3pFazlGZXJnbnQ4a2VUejJKM0JTRHNB?= =?utf-8?B?NWJZVmRwK2x4QkRmTUN4dTIrZlBOUEFkNEl2NDF1NVZvQnVLd3JOOFk4N3Mz?= =?utf-8?B?OGhQaFRUVWh6NXpYVitkWFB1dVJWRHBySTF3WTlmTjc0R2ZDNnQwK3g1enF1?= =?utf-8?B?aE0wVC8vNS81VGRRR0w2MzVEeGVZRVBkRURidUlnbzNXZUdUYzVqeU83a25P?= =?utf-8?B?OXZBQTg1TElsZFE1dWFDcmRwS2VBYXRUWVBWRGY3elA2OHRlVC9FTDVBV0hD?= =?utf-8?B?cGNSeWJ2Wnk2VEdxd2w1Y0RBMmo4UUpzWWFxYytZbHdGSnNZRFF6V2ZpalMv?= =?utf-8?B?SS9CSEZuQkgxVzlZbWV0YTBtVUg3UEFpTmVBOFVtT3Nkd2FVb2VhZ3NyQTEr?= =?utf-8?B?WHI0S2hyNGZmK054Vm1RVVpIcXBrUGJzcWtsaU0vQTVNTURtZzZPT3hIRFlt?= =?utf-8?B?Vkpkb0gwYUlLUGpVeGpLWkFjNXZST25QQWxlMnEwRDNhUFc1a3ZPb0JIeEdN?= =?utf-8?B?OHQwQXlvSGRSU2ZEQ0FJR1JmNEtMMEM0cnpZbkh0S2JjemdQeVAzcnZUa0gy?= =?utf-8?B?U2EweEVMOWppU2RNMUJITU9EcDIwYlJYUUduUTEwbHY4cGhUd0J0cmlsWXRn?= =?utf-8?B?bXExYmtON1RjMnYyNHExZUt1VzFnd2VzUkxQWk9nUnlCRlRvM0xsd3lhR2Qv?= =?utf-8?B?VDNvbmkzOW5PeXFCYVV0aDJuRXkra1poUDZMeWFtQ2JCbDZsYkE0M04xM0pB?= =?utf-8?B?bVNvNVMyTVIvZFJ0Vm84SVA1dDU0WEQ0OGk3TVRvQ0JXV1k4S3hpalZ2Tmdp?= =?utf-8?Q?6kHVoi0cxm+CrUPcUvoTyoMgr?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SN7PR11MB7639.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6a57be31-1fb4-4102-2d74-08dc1c293a90 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Jan 2024 15:37:38.1356 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: Cf9uc37blnKk3D0iahLT3XBOCbPkFsSE0kemqWqpVsMrrKc8fkwyOdkJSTVHgKabnUohJLI8TNKcKhXCr7VFtQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB6728 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRmVycnVoIFlpZ2l0IDxm ZXJydWgueWlnaXRAYW1kLmNvbT4NCj4gU2VudDogVHVlc2RheSwgSmFudWFyeSAyMywgMjAyNCAz OjEzIFBNDQo+IFRvOiBQb3dlciwgQ2lhcmEgPGNpYXJhLnBvd2VyQGludGVsLmNvbT47IFNpdmFy YW1ha3Jpc2huYW4sIFZlbmthdFgNCj4gPHZlbmthdHguc2l2YXJhbWFrcmlzaG5hbkBpbnRlbC5j b20+OyBJZ29yIFJ1c3NraWtoDQo+IDxpcnVzc2tpa2hAbWFydmVsbC5jb20+OyBTZWx3aW4gU2Vi YXN0aWFuIDxzZWx3aW4uc2ViYXN0aWFuQGFtZC5jb20+Ow0KPiBBaml0IEtoYXBhcmRlIDxhaml0 LmtoYXBhcmRlQGJyb2FkY29tLmNvbT47IFNvbW5hdGggS290dXINCj4gPHNvbW5hdGgua290dXJA YnJvYWRjb20uY29tPjsgTml0aGluIERhYmlscHVyYW0NCj4gPG5kYWJpbHB1cmFtQG1hcnZlbGwu Y29tPjsgS2lyYW4gS3VtYXIgSyA8a2lyYW5rdW1hcmtAbWFydmVsbC5jb20+Ow0KPiBTdW5pbCBL dW1hciBLb3JpIDxza29yaUBtYXJ2ZWxsLmNvbT47IFNhdGhhIFJhbw0KPiA8c2tvdGVzaHdhckBt YXJ2ZWxsLmNvbT47IFpoYW5nLCBZdXlpbmcgPHl1eWluZy56aGFuZ0BpbnRlbC5jb20+OyBYaW5n LA0KPiBCZWlsZWkgPGJlaWxlaS54aW5nQGludGVsLmNvbT47IFJhaHVsIExha2tpcmVkZHkNCj4g PHJhaHVsLmxha2tpcmVkZHlAY2hlbHNpby5jb20+OyBIZW1hbnQgQWdyYXdhbA0KPiA8aGVtYW50 LmFncmF3YWxAbnhwLmNvbT47IFNhY2hpbiBTYXhlbmEgPHNhY2hpbi5zYXhlbmFAbnhwLmNvbT47 IFN1LA0KPiBTaW1laSA8c2ltZWkuc3VAaW50ZWwuY29tPjsgV3UsIFdlbmp1bjEgPHdlbmp1bjEu d3VAaW50ZWwuY29tPjsNCj4gR2FnYW5kZWVwIFNpbmdoIDxnLnNpbmdoQG54cC5jb20+OyBKb2hu IERhbGV5IDxqb2huZGFsZUBjaXNjby5jb20+Ow0KPiBIeW9uZyBZb3ViIEtpbSA8aHlvbmtpbUBj aXNjby5jb20+OyBHYWV0YW4gUml2ZXQgPGdyaXZlQHUyNTYubmV0PjsNCj4gWmhhbmcsIFFpIFog PHFpLnouemhhbmdAaW50ZWwuY29tPjsgV2FuZywgWGlhbyBXIDx4aWFvLncud2FuZ0BpbnRlbC5j b20+Ow0KPiBKaWUgSGFpIDxoYWlqaWUxQGh1YXdlaS5jb20+OyBZaXNlbiBaaHVhbmcgPHlpc2Vu LnpodWFuZ0BodWF3ZWkuY29tPjsNCj4gV3UsIEppbmdqaW5nIDxqaW5namluZy53dUBpbnRlbC5j b20+OyBZYW5nLCBRaW1pbmcNCj4gPHFpbWluZy55YW5nQGludGVsLmNvbT47IEd1bywgSnVuZmVu ZyA8anVuZmVuZy5ndW9AaW50ZWwuY29tPjsgQW5kcmV3DQo+IEJveWVyIDxhbmRyZXcuYm95ZXJA YW1kLmNvbT47IExvbmcgTGkgPGxvbmdsaUBtaWNyb3NvZnQuY29tPjsgTWF0YW4NCj4gQXpyYWQg PG1hdGFuQG52aWRpYS5jb20+OyBWaWFjaGVzbGF2IE92c2lpZW5rbyA8dmlhY2hlc2xhdm9AbnZp ZGlhLmNvbT47DQo+IERhcml1c3ogU29zbm93c2tpIDxkc29zbm93c2tpQG52aWRpYS5jb20+OyBP cmkgS2FtIDxvcmlrYUBudmlkaWEuY29tPjsNCj4gU3Vhbm1pbmcgTW91IDxzdWFubWluZ21AbnZp ZGlhLmNvbT47IENoYW95b25nIEhlDQo+IDxjaGFveW9uZy5oZUBjb3JpZ2luZS5jb20+OyBKaWF3 ZW4gV3UgPGppYXdlbnd1QHRydXN0bmV0aWMuY29tPjsNCj4gSGFybWFuIEthbHJhIDxoa2FscmFA bWFydmVsbC5jb20+OyBEZXZlbmRyYSBTaW5naCBSYXdhdA0KPiA8ZHNpbmdocmF3YXRAbWFydmVs bC5jb20+OyBBbG9rIFByYXNhZCA8cGFsb2tAbWFydmVsbC5jb20+OyBBbmRyZXcNCj4gUnliY2hl bmtvIDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IEplcmluIEphY29iDQo+IDxqZXJp bmpAbWFydmVsbC5jb20+OyBNYWNpZWogQ3pla2FqIDxtY3pla2FqQG1hcnZlbGwuY29tPjsgSmlh biBXYW5nDQo+IDxqaWFud2FuZ0B0cnVzdG5ldGljLmNvbT47IEJlaHJlbnMsIEpvY2hlbiA8amJl aHJlbnNAdm13YXJlLmNvbT47DQo+IFRob21hcyBNb25qYWxvbiA8dGhvbWFzQG1vbmphbG9uLm5l dD4NCj4gQ2M6IGRldkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBSZTogW1BBVENIIHY1IDIvMl0gZHJp dmVycy9uZXQ6IHJldHVybiBudW1iZXIgb2YgdHlwZXMgaW4gZ2V0DQo+IHN1cHBvcnRlZCB0eXBl cw0KPiANCj4gT24gMS8yMy8yMDI0IDI6NTkgUE0sIEZlcnJ1aCBZaWdpdCB3cm90ZToNCj4gPiBP biAxLzIzLzIwMjQgMTI6MDcgUE0sIFBvd2VyLCBDaWFyYSB3cm90ZToNCj4gPj4gSGkgRmVycnVo LA0KPiA+Pg0KPiA+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPj4+IEZyb206IEZl cnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+DQo+ID4+PiBTZW50OiBGcmlkYXksIEph bnVhcnkgMTksIDIwMjQgMjo1MSBQTQ0KPiA+Pj4gVG86IFNpdmFyYW1ha3Jpc2huYW4sIFZlbmth dFggPHZlbmthdHguc2l2YXJhbWFrcmlzaG5hbkBpbnRlbC5jb20+Ow0KPiA+Pj4gSWdvciBSdXNz a2lraCA8aXJ1c3NraWtoQG1hcnZlbGwuY29tPjsgU2Vsd2luIFNlYmFzdGlhbg0KPiA+Pj4gPHNl bHdpbi5zZWJhc3RpYW5AYW1kLmNvbT47IEFqaXQgS2hhcGFyZGUNCj4gPj4+IDxhaml0LmtoYXBh cmRlQGJyb2FkY29tLmNvbT47IFNvbW5hdGggS290dXINCj4gPj4+IDxzb21uYXRoLmtvdHVyQGJy b2FkY29tLmNvbT47IE5pdGhpbiBEYWJpbHB1cmFtDQo+ID4+PiA8bmRhYmlscHVyYW1AbWFydmVs bC5jb20+OyBLaXJhbiBLdW1hciBLDQo+IDxraXJhbmt1bWFya0BtYXJ2ZWxsLmNvbT47DQo+ID4+ PiBTdW5pbCBLdW1hciBLb3JpIDxza29yaUBtYXJ2ZWxsLmNvbT47IFNhdGhhIFJhbw0KPiA+Pj4g PHNrb3Rlc2h3YXJAbWFydmVsbC5jb20+OyBaaGFuZywgWXV5aW5nIDx5dXlpbmcuemhhbmdAaW50 ZWwuY29tPjsNCj4gPj4+IFhpbmcsIEJlaWxlaSA8YmVpbGVpLnhpbmdAaW50ZWwuY29tPjsgUmFo dWwgTGFra2lyZWRkeQ0KPiA+Pj4gPHJhaHVsLmxha2tpcmVkZHlAY2hlbHNpby5jb20+OyBIZW1h bnQgQWdyYXdhbA0KPiA+Pj4gPGhlbWFudC5hZ3Jhd2FsQG54cC5jb20+OyBTYWNoaW4gU2F4ZW5h IDxzYWNoaW4uc2F4ZW5hQG54cC5jb20+Ow0KPiBTdSwNCj4gPj4+IFNpbWVpIDxzaW1laS5zdUBp bnRlbC5jb20+OyBXdSwgV2VuanVuMSA8d2VuanVuMS53dUBpbnRlbC5jb20+Ow0KPiA+Pj4gR2Fn YW5kZWVwIFNpbmdoIDxnLnNpbmdoQG54cC5jb20+OyBKb2huIERhbGV5DQo+IDxqb2huZGFsZUBj aXNjby5jb20+Ow0KPiA+Pj4gSHlvbmcgWW91YiBLaW0gPGh5b25raW1AY2lzY28uY29tPjsgR2Fl dGFuIFJpdmV0IDxncml2ZUB1MjU2Lm5ldD47DQo+ID4+PiBaaGFuZywgUWkgWiA8cWkuei56aGFu Z0BpbnRlbC5jb20+OyBXYW5nLCBYaWFvIFcNCj4gPj4+IDx4aWFvLncud2FuZ0BpbnRlbC5jb20+ OyBKaWUgSGFpIDxoYWlqaWUxQGh1YXdlaS5jb20+OyBZaXNlbiBaaHVhbmcNCj4gPj4+IDx5aXNl bi56aHVhbmdAaHVhd2VpLmNvbT47IFd1LCBKaW5namluZyA8amluZ2ppbmcud3VAaW50ZWwuY29t PjsNCj4gPj4+IFlhbmcsIFFpbWluZyA8cWltaW5nLnlhbmdAaW50ZWwuY29tPjsgR3VvLCBKdW5m ZW5nDQo+ID4+PiA8anVuZmVuZy5ndW9AaW50ZWwuY29tPjsgQW5kcmV3IEJveWVyIDxhbmRyZXcu Ym95ZXJAYW1kLmNvbT47DQo+IExvbmcNCj4gPj4+IExpIDxsb25nbGlAbWljcm9zb2Z0LmNvbT47 IE1hdGFuIEF6cmFkIDxtYXRhbkBudmlkaWEuY29tPjsNCj4gPj4+IFZpYWNoZXNsYXYgT3ZzaWll bmtvIDx2aWFjaGVzbGF2b0BudmlkaWEuY29tPjsgRGFyaXVzeiBTb3Nub3dza2kNCj4gPj4+IDxk c29zbm93c2tpQG52aWRpYS5jb20+OyBPcmkgS2FtIDxvcmlrYUBudmlkaWEuY29tPjsgU3Vhbm1p bmcgTW91DQo+ID4+PiA8c3Vhbm1pbmdtQG52aWRpYS5jb20+OyBDaGFveW9uZyBIZSA8Y2hhb3lv bmcuaGVAY29yaWdpbmUuY29tPjsNCj4gPj4+IEppYXdlbiBXdSA8amlhd2Vud3VAdHJ1c3RuZXRp Yy5jb20+OyBIYXJtYW4gS2FscmENCj4gPj4+IDxoa2FscmFAbWFydmVsbC5jb20+OyBEZXZlbmRy YSBTaW5naCBSYXdhdA0KPiA+Pj4gPGRzaW5naHJhd2F0QG1hcnZlbGwuY29tPjsgQWxvayBQcmFz YWQgPHBhbG9rQG1hcnZlbGwuY29tPjsgQW5kcmV3DQo+ID4+PiBSeWJjaGVua28gPGFuZHJldy5y eWJjaGVua29Ab2t0ZXRsYWJzLnJ1PjsgSmVyaW4gSmFjb2INCj4gPj4+IDxqZXJpbmpAbWFydmVs bC5jb20+OyBNYWNpZWogQ3pla2FqIDxtY3pla2FqQG1hcnZlbGwuY29tPjsgSmlhbiBXYW5nDQo+ ID4+PiA8amlhbndhbmdAdHJ1c3RuZXRpYy5jb20+OyBCZWhyZW5zLCBKb2NoZW4gPGpiZWhyZW5z QHZtd2FyZS5jb20+Ow0KPiA+Pj4gVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0 Pg0KPiA+Pj4gQ2M6IGRldkBkcGRrLm9yZzsgUG93ZXIsIENpYXJhIDxjaWFyYS5wb3dlckBpbnRl bC5jb20+DQo+ID4+PiBTdWJqZWN0OiBSZTogW1BBVENIIHY1IDIvMl0gZHJpdmVycy9uZXQ6IHJl dHVybiBudW1iZXIgb2YgdHlwZXMgaW4NCj4gPj4+IGdldCBzdXBwb3J0ZWQgdHlwZXMNCj4gPj4+ DQo+ID4+PiBPbiAxLzE4LzIwMjQgMTI6MDcgUE0sIFNpdmFyYW1ha3Jpc2huYW4gVmVua2F0IHdy b3RlOg0KPiA+Pj4+IE1pc3NpbmcgIlJURV9QVFlQRV9VTktOT1dOIiBwdHlwZSBjYXVzZXMgYnVm ZmVyIG92ZXJmbG93Lg0KPiA+Pj4+IEVuaGFuY2UgY29kZSBzdWNoIHRoYXQgdGhlIGRldl9zdXBw b3J0ZWRfcHR5cGVzX2dldCgpIGZ1bmN0aW9uDQo+ID4+Pj4gcG9pbnRlciBub3cgcmV0dXJucyAg dGhlIG51bWJlciBvZiBlbGVtZW50cyB0byBlbGltaW5hdGUgdGhlIG5lZWQNCj4gPj4+PiBmb3Ig IlJURV9QVFlQRV9VTktOT1dOIiBhcyB0aGUgbGFzdCBpdGVtLg0KPiA+Pj4+DQo+ID4+Pj4gU2ln bmVkLW9mZi1ieTogU2l2YXJhbWFrcmlzaG5hbiBWZW5rYXQNCj4gPj4+PiA8dmVua2F0eC5zaXZh cmFtYWtyaXNobmFuQGludGVsLmNvbT4NCj4gPj4+Pg0KPiA+Pj4+IC0tDQo+ID4+Pj4gICB2NToN Cj4gPj4+PiAgICAgIC0gbW9kaWZpZWQgY29tbWl0IG1lc3NhZ2UuDQo+ID4+Pj4gICAgICAtIHRp ZGllZCBmb3JtYXR0aW5nIG9mIGNvZGUuDQo+ID4+Pj4gICAgICAtIGFkZGVkIGRveHlnZW4gY29t bWVudC4NCj4gPj4+PiAgIHY0Og0KPiA+Pj4+ICAgICAgLSBzcGxpdCBpbnRvIHR3byBwYXRjaGVz LCBvbmUgZm9yIGJhY2twb3J0aW5nIGFuZCBhbm90aGVyIG9uZSBmb3INCj4gPj4+PiAgICAgICAg dXBzdHJlYW0gcmV3b3JrLg0KPiA+Pj4+ICAgdjM6DQo+ID4+Pj4gICAgICAtIHJld29ya2VkIHRo ZSBmdW5jdGlvbiB0byByZXR1cm4gbnVtYmVyIG9mIGVsZW1lbnRzIGFuZCByZW1vdmUgdGhlDQo+ ID4+Pj4gICAgICAgIG5lZWQgZm9yIFJURV9QVFlQRV9VTktOT1dOIGluIGxpc3QuDQo+ID4+Pj4g ICB2MjoNCj4gPj4+PiAgICAgIC0gZXh0ZW5kZWQgZml4IGZvciBtdWx0aXBsZSBkcml2ZXJzLg0K PiA+Pj4+IC0tLQ0KPiA+Pj4NCj4gPj4+IDwuLi4+DQo+ID4+Pg0KPiA+Pj4+ICA1OSBmaWxlcyBj aGFuZ2VkLCAxODggaW5zZXJ0aW9ucygrKSwgMTQxIGRlbGV0aW9ucygtKQ0KPiA+Pj4+DQo+ID4+ Pg0KPiA+Pj4gU29tZSBkcml2ZXIgc3RpbGwgaGF2ZSB0aGUgZmxhZzoNCj4gPj4+IC0gZHJpdmVy cy9uZXQvbXZuZXRhL212bmV0YV9ldGhkZXYuYw0KPiA+Pj4gLSBkcml2ZXJzL25ldC9tdnBwMi9t cnZsX2V0aGRldi5jDQo+ID4+PiAtIHBmZQ0KPiA+Pj4gLSBkcGFhDQo+ID4+PiAtIGRyaXZlcnMv bmV0L3RodW5kZXJ4L25pY3ZmX2V0aGRldi5jDQo+ID4+PiAtIGRyaXZlcnMvbmV0L25mcC9uZnBf bmV0X2NvbW1vbi5jDQo+ID4+Pg0KPiA+Pj4gQWJvdmUgc2VlbXMgdGhlIG9uZXMgdXBkYXRlZCBp biBwcmV2aW91cyBwYXRjaCwgZmxhZ3MgYWRkZWQgaW4NCj4gPj4+IHByZXZpb3VzIHBhdGNoIHNo b3VsZCBiZSByZW1vdmVkIGluIHRoaXMgb25lLg0KPiA+Pj4NCj4gPj4+DQo+ID4+PiBBbmQgZm9s bG93aW5nIHNlZW1zIG1pc3NlZCBhbmQgc3RpbGwgaGFzIHRoZSBmbGFnOg0KPiA+Pj4NCj4gPj4+ IC0gZHJpdmVycy9uZXQvbmdiZS9uZ2JlX3B0eXBlcy5jDQo+ID4+Pg0KPiA+Pj4gPC4uLj4NCj4g Pj4+DQo+ID4+Pj4gQEAgLTM5NzEsOSArMzk3NSw2IEBAIHJ0ZV9ldGhfZGV2X3NldF9wdHlwZXMo dWludDE2X3QgcG9ydF9pZCwNCj4gPj4+IHVpbnQzMl90IHB0eXBlX21hc2ssDQo+ID4+Pj4gIAkJ fQ0KPiA+Pj4+ICAJfQ0KPiA+Pj4+DQo+ID4+Pj4gLQlpZiAoc2V0X3B0eXBlcyAhPSBOVUxMICYm IGogPCBudW0pDQo+ID4+Pj4gLQkJc2V0X3B0eXBlc1tqXSA9IFJURV9QVFlQRV9VTktOT1dOOw0K PiA+Pj4+IC0NCj4gPj4+Pg0KPiA+Pj4NCj4gPj4+IFRoaXMgY2hhbmdlIGlzIG5ldyBpbiB0aGlz IHZlcnNpb24gYW5kIG5vdCBtZW50aW9uZWQgaW4gdGhlIGNoYW5nZWxvZy4NCj4gPj4+DQo+ID4+ PiAncnRlX2V0aF9kZXZfc2V0X3B0eXBlcygpJyByZXR1cm5zICdzZXRfcHR5cGVzJyB0aGF0IHRl cm1pbmF0ZWQgd2l0aA0KPiA+Pj4gJ1JURV9QVFlQRV9VTktOT1dOJywgdGhpcyBpcyBob3cgdGhh dCBBUEkgd29ya3MuDQo+ID4+PiBXaHkgY2hhbmdpbmcgaXQgaW4gdGhpcyBwYXRjaD8NCj4gPj4N Cj4gPj4gQXBvbG9naWVzLCB5ZXMsIHdlIG1pc3NlZCB0aGlzIGluIHRoZSBjaGFuZ2Vsb2cuDQo+ ID4+DQo+ID4+IEZvciB0aGUgY2hhbmdlIGl0c2VsZiwgaWYgd2UgYXJlIHJlbW92aW5nIHRoZSBu ZWVkIGZvcg0KPiBSVEVfUFRZUEVfVU5LTk9XTiBpbiB0aGUgc3VwcG9ydGVkIHB0eXBlcyBsaXN0 cyB0byBtYXJrIHRoZSBsYXN0IGVsZW1lbnQsDQo+IGRvIHdlIHN0aWxsIG5lZWQgdG8gYWRkIGl0 IGhlcmUgd2hlbiBzZXR0aW5nIHB0eXBlcyBsaXN0Pw0KPiA+PiBNYXliZSBhIG1pc3VuZGVyc3Rh bmRpbmcgb24gbXkgcGFydCAtIEkgdGhvdWdodCBpdCB3b3VsZCBiZSB0aGUgc2FtZSBmb3INCj4g Ym90aCBjYXNlcy4NCj4gPj4NCj4gPj4NCj4gPg0KPiA+IFRoZXkgYXJlIHR3byBkaWZmZXJlbnQg QVBJcywgYW5kICdydGVfZXRoX2Rldl9zZXRfcHR5cGVzKCknIHJldHVybnMNCj4gPiBwdHlwZXMg dG8gdXNlciB0aGF0IHdpbGwgYmUgdGVybWluYXRlZCBieSBSVEVfUFRZUEVfVU5LTk9XTiwgc28g dG8gbm90DQo+ID4gYnJlYWsgdGhlIHVzZXIgY29kZSB3ZSBjYW4ndCBjaGFuZ2UgaXQuDQo+ID4N Cj4gDQo+IEEgbGl0dGxlIG1vcmUgZGV0YWlscyBpZiBoZWxwczoNCj4gJ3J0ZV9ldGhfZGV2X2dl dF9zdXBwb3J0ZWRfcHR5cGVzKCknLCBmaWxscyB0aGUgJypwdHlwZXMnIGFuZCBmdW5jdGlvbiBy ZXR1cm4NCj4gdmFsdWUgaXMgbnVtYmVyIG9mIGVsZW1lbnRzIGluIHRoZSAnKnB0eXBlcycgYXJy YXkuIFRoZXJlIGlzIG5vIHJlcXVpcmVtZW50DQo+IHRoYXQgbGFzdCBlbGVtZW50IG9mICcqcHR5 cGVzJyB3aWxsIGJlICdSVEVfUFRZUEVfVU5LTk9XTicsIGFuZCBpZiB5b3UNCj4gY2hlY2sgdGhl IGN1cnJlbnQgaW1wbGVtZW50YXRpb24sIGl0IGlzIG5vdC4NCj4gDQo+ICdydGVfZXRoX2Rldl9z ZXRfcHR5cGVzKCknLCBmaWxscyB0aGUgJypzZXRfcHR5cGVzJyBhcnJheSBhbmQgZnVuY3Rpb24g cmV0dXJuDQo+IHZhbHVlIGlzIGZ1bmN0aW9uIHN1Y2Nlc3Mgc3RhdHVzLiBVc2VyIGNhbiBkZWR1 Y2UgdGhlIHNpemUgb2YgJypzZXRfcHR5cGVzJyBieQ0KPiAnUlRFX1BUWVBFX1VOS05PV04nIG1h cmtlciBhdCB0aGUgZW5kIG9mIHRoZSBhcnJheS4NCj4gUmVxdWlyZW1lbnQgaXMgbGFzdCBlbGVt ZW50IHNob3VsZCBiZSAnUlRFX1BUWVBFX1VOS05PV04nLCBhbmQgdGhpcw0KPiBkb2N1bWVudGVk IGluIEFQSS4NCj4gDQo+IFdlIGFyZSBwcmVzZXJ2aW5nIGFib3ZlIEFQSSBiZWhhdmlvciBhbmQg b25seSBjaGFuZ2luZyBldGhkZXYgLSBkcml2ZXINCj4gaW50ZXJmYWNlLg0KPiANCg0KQWggLSB5 ZXMgb2sgSSB1bmRlcnN0YW5kIHRoZSBkaWZmZXJlbmNlIG5vdy4NCldlIHdpbGwgcmVtb3ZlIHRo aXMgY2hhbmdlIGluIHRoZSBuZXh0IHBhdGNoIC0gdGhhbmtzIGZvciBleHBsYWluaW5nIPCfmIoN Cg0KVGhhbmtzLA0KQ2lhcmEgDQoNCg==