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 123B246113; Fri, 24 Jan 2025 04:53:04 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 757F540E1B; Fri, 24 Jan 2025 04:53:01 +0100 (CET) Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) by mails.dpdk.org (Postfix) with ESMTP id 925C040E15 for ; Fri, 24 Jan 2025 04:52:58 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1737690779; x=1769226779; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=qhzrAAI5iFmKINxUL8wjOUSyEC5FltqbrLLmstWyWAc=; b=HWWDamKHeKTlpLgsRgY+kAIyB1ELEHshpWETlI3/KeCtfF2ZNGY033Q8 6A6wvDgoMfzFbW/En1RuGbR9bJFdFWrOOEXNR5HQzZTAEWyrM4x5RXaJ6 a4k2OwYAip/oVLiW6UicVHiLl3WX4LiAEIocm/6vuQ2rRcCoagE2fH/Ja K+o1cwlYzTcyxohjz4Iul57hONiYaYQmrcg2hdpxPtn1b/Q5UWudSFAPl 2/OpisCeV/IDrkTu5N+81l16OtwOSVIlCCbA4enapxieo0NrCepVh4kZC FjVhoovQ54epBzJ4DwFiIXln5l4GG8RPvx2G25L03o5xOECJzgyJnirr4 w==; X-CSE-ConnectionGUID: KUQfYbQ/TLanJvwWTlUaAQ== X-CSE-MsgGUID: WGJOiJG0TgSGrrnAl6UGCw== X-IronPort-AV: E=McAfee;i="6700,10204,11324"; a="37918546" X-IronPort-AV: E=Sophos;i="6.13,230,1732608000"; d="scan'208";a="37918546" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jan 2025 19:52:57 -0800 X-CSE-ConnectionGUID: KiKUfwZ0SbeAM1+zDONV2w== X-CSE-MsgGUID: 5XwnaMibRcCpi/ZeotNDpQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="130951114" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmviesa002.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 23 Jan 2025 19:52:57 -0800 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.44; Thu, 23 Jan 2025 19:52:56 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.44 via Frontend Transport; Thu, 23 Jan 2025 19:52:56 -0800 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.176) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.44; Thu, 23 Jan 2025 19:52:56 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GWr5xiBPGievOWThaKGd13LMTB1I+FWd/qEAZ+BF0HeklpCEcmhyj2fCpu4sPWnOPNxc9n0vOJeGoUR2guSduSwXVxUd2TrrLwp/+3MjTmLUQjoxJomF0GKahxWO1tAcpXXq/7UiXIgnXcnD9a1GcutS9qvmkpz+vkXLthL97/WK0bWcg36KZ9B9YKqtKin496T7LPKyFQyx41UkBU+Wxh3ynf9Ri1uc1AqBLM5AWXY7FgpYNGy0Zu1PGCzpnatjvZxk2qYubJ4sJIH4l2aP28j3zqIaaTNQlXTC2f8obnh8zD+kvGwAjol4BnYz57Cal2DleU+IpyE6SP04QRy0Tw== 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=qhzrAAI5iFmKINxUL8wjOUSyEC5FltqbrLLmstWyWAc=; b=mIr61O7X0cg8eMCzb975+WlF6b4R+IpTUJl7lRnn8/Xd5cdYfqmP3U8eTSknhPkKSwSAB+ejr8WqI303koqwV7ZbtCO3IGPffSb2F4sRepEG8mCOyDBg0apeR9ZtjuoB7XIfy9DsOVHpol5u4Vx+1tC4KncdbVLUS0PrWOJyKzBvR604De1cJvgDnMY7CXLPO0O/QOYpmeK83CHzTINUszP6TBNcStbArzeHAJ8pqQX9tzikqHd7Y3qlelYXnw+bjItVUhN4yHgEsolBKZjIzSRwjfKDr7ixJqHu7SpYhCyQxZ3w4aiUgyzf9nx2uY/vtnPKvFJg/wUyp1avqYV4vw== 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 SN7PR11MB7044.namprd11.prod.outlook.com (2603:10b6:806:29b::5) by LV2PR11MB6070.namprd11.prod.outlook.com (2603:10b6:408:179::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8377.16; Fri, 24 Jan 2025 03:52:26 +0000 Received: from SN7PR11MB7044.namprd11.prod.outlook.com ([fe80::79ff:96e:c439:d42e]) by SN7PR11MB7044.namprd11.prod.outlook.com ([fe80::79ff:96e:c439:d42e%3]) with mapi id 15.20.8377.009; Fri, 24 Jan 2025 03:52:26 +0000 From: "Naga Harish K, S V" To: Shijith Thotton , "dev@dpdk.org" CC: Pavan Nikhilesh Bhagavatula , "Pathak, Pravin" , Hemant Agrawal , "Sachin Saxena" , Mattias R_nnblom , Jerin Jacob , Liang Ma , "Mccarthy, Peter" , "Van Haaren, Harry" , "Carrillo, Erik G" , "Gujjar, Abhinandan S" , Amit Prakash Shukla , "Burakov, Anatoly" Subject: RE: [RFC PATCH] eventdev: adapter API to configure multiple Rx queues Thread-Topic: [RFC PATCH] eventdev: adapter API to configure multiple Rx queues Thread-Index: AQHbUeh/1TTvq+W+HE2Il99vRL0wEbLydmwQgBDaXoCAEXJrgIADcFmwgADoHACABn+h0IAAkaaAgAJIXSCAAI3tAIACfTWQ Date: Fri, 24 Jan 2025 03:52:26 +0000 Message-ID: References: <20241219073405.1724200-1-sthotton@marvell.com> In-Reply-To: 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=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SN7PR11MB7044:EE_|LV2PR11MB6070:EE_ x-ms-office365-filtering-correlation-id: 5e678cbf-bac3-4f6f-a5b0-08dd3c2a8452 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|376014|366016|1800799024|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?cTh0cGtnNjVlbCtIUEFhNXUyNEd1Ym9iZDBTVWswSXNqRzVqQXRGclM4UGN2?= =?utf-8?B?Q3FyZy9QVG1yWkFiWTlnNXFObjdzbnIwQTUyLzFkVHpUd2V1eWM5cDB1T0Ew?= =?utf-8?B?dVQ2bnAyc2VOUzgzN2ErWGU0L2JMdEFTMm5wYVozdDJQL09mUU5XeHM3ZmdQ?= =?utf-8?B?bnl6eHBNU0RKQkZwa2ZtL0xXVDFEOGNoZGFQT0lrbCtVVkZsby85Nmp2VTJ3?= =?utf-8?B?VWhzL3ZUYTV2RGk2c0ZQVlkrTXAxRDRxTFFYL3czZzRkRS8yU3hSTHpaSjAw?= =?utf-8?B?ckNFQURRN3lXM0Y2RnBTWURacGFDWkNnS2dLSE9jUWdxRkZERlF5QS9qQWVK?= =?utf-8?B?Y3NUTXR3dmVPMlNHaU02R0JkVXhsZVlYd1l2VWt0UlZMVWpwaXdzODZqU1Iv?= =?utf-8?B?TkhqUHVRSEFBTU1XeUVwYVdpYllnNERjQlk1K3YzNUVYMVd2VkMrVjdHR3JI?= =?utf-8?B?VzNuUHhrQ25SWTVXWE9DQnVWM3hhWlpnYVRiZzFYSHZFVDNYTHk5dXNWMHQz?= =?utf-8?B?Wkx4UFd3UVZJMFhJNTQ1L0pHV045YXplN2VNN2dsOUk5WlgrSEo4NXY2ZEJS?= =?utf-8?B?eFM1ZkhrZnZqV1lNdXkxRmFxWllrOUxVRFJnNXdJUzNoWDlyaDZFUkdTM2ZT?= =?utf-8?B?eTQ5SngxQUhZUzhkbElISEJzY2ZBSEtsNTZZWUgzZXh2YW5pejY3L1BvYXo4?= =?utf-8?B?UGwzOHljZU1XcUEreEhLYVZDbTRjZjZKa3BWL3ZyRzZiTFVGQjkySzNnNTJB?= =?utf-8?B?T2tJeE1HcEJMb21wKzVaNkF3dUtaZmpEWkJGdVV6QjlsOWdoVzNrUXZPK1Fz?= =?utf-8?B?b21xSHpwdGlEZXFDMi83TmgzdTE2SjRsTVQ2R3FWSHljRmhtdTJ2SDRsY1My?= =?utf-8?B?SXVaSmRjK1FWbkpZNnk2M3ZmUzFUOUFDQ1hoVC8rMDZFV0hDQU9EK250UU1C?= =?utf-8?B?dEQ3bm5oMVgva3YvcW9CaURXQ3RjcG5Vb2FDakkyVTBlNEwwWitTTzlkQ1hK?= =?utf-8?B?Q1FaeGNHNHdSZngyV1M5R2p6eUU1MUp3dHZzRml2VkRhMGZReVlqWVRjeXIz?= =?utf-8?B?Q1AvVW1KQ3YxZytJMHFEaXRMcE5NOXNEZ0NoTkFuc1NtQmVnZzYwUG5YckZr?= =?utf-8?B?Rmt1QVlDS29ydDdNdEQ5NlpzTmpQajZDa2xLRTltcUZDMlMrTnQrVDBXOXJC?= =?utf-8?B?aTJQVkpUbHdoc1JVOUZnMTN4eEdxUGs1VlJ6UkI2bnI3NUtYdWRKUmZFS0hj?= =?utf-8?B?RTMzdmd4STd5am5zKzNtZnY2NEw1U0QzLytrbmIyZlBNWGlra2lBZDBnQWYw?= =?utf-8?B?VUhrL1ZySnNBUWF6a2g1bjRFdnk1UWNXakVSREw5a1NyWlRxeGRIWmFVS0ZJ?= =?utf-8?B?V2dyY1hQWWZoNjFsR0JzZjUrTzhobHVPcE9JU3gwUWJhWTBvUlc2SHlRcHFq?= =?utf-8?B?Rk9uM3JLZjFHa1Zvb3FuYUlmdkU4cjhBZDUrdGN4VU5oK3NDL0p6QnUzTEtI?= =?utf-8?B?VUxuMHV4eGZTYlZSMGNab05HNnYreDJobCs3T09uWVB1NmQ5eHVsS2hoVjlH?= =?utf-8?B?aGNaTWcySlV5RzErcjBvYWtoOXJkV05tZDBMOW40eGdRQU5MUHFadmhHK1ow?= =?utf-8?B?cHRUb0dxcHlaYlVxSk9kR1dISFF1aFRUOERIcHNKVVE1ZlIwRW9icXVKQXo4?= =?utf-8?B?dGpNZFRpRUlaRDZYU2ZwNkUyUkM2d2hpV1Z1WGlrWUlEaDJ2VXZrclhTRnZ4?= =?utf-8?B?aU8vb3I4aUNhbnREbGttUU9CNE4yTTB0d0xLMy8vbzlNL3VyQkNYYURjRFJm?= =?utf-8?B?Tnh4TDIxZ2FGZXZldUkydmo0K1pMTmVZODI2R1hobUZnaU1CTkdVSVBCWG53?= =?utf-8?B?WjFyNU81L0FLby9vVFEzT21NMk9wUzR2WlZWMityZjFscHRkNjhRUGxwRlg4?= =?utf-8?Q?W6Al63g9IIspkwMP0sVO2fNiWTY4hswT?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN7PR11MB7044.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(1800799024)(38070700018); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VlhkQ3Z6eGlQZnJielJxTkQwcHgwdVRsUjVHam8wZUZQVmJOMXBJbzFJeGJk?= =?utf-8?B?UDFpYUd2NENzSHNDWHpZNzJqR0pFQTJ5dHhnMktzSmpZK0JwenBxbEFpalpX?= =?utf-8?B?aFNhblA2bUYvMjRhOExRcmJLOVY3b0NRMjdkcHk3QXBVZkMzN2lSc1MxN2lJ?= =?utf-8?B?MlF6QXNjamRzT3phMWRhTVF2cTFMdUphdTI4ZDR0THNIMFAzRUVGc1pFUzUz?= =?utf-8?B?cE9DSE1FNWI5T2ZSUUtOd29WK2hXNVJLYkZyamZ2ejNUdFk5TDlhQ09hSnJQ?= =?utf-8?B?WmoyMjY4MFBEYzRYRVpkaFZ6SW1lL2VPNUxIOEFJYXlBUlZxcjIrWmdOUXdT?= =?utf-8?B?QWZKampqWE4vUVF0S3FURW16c3B4S1dzRFhLek0ydXF1b29xNFh2QWhqSU1o?= =?utf-8?B?b3RGNlZrSXFnRkZOelk2RCtHWmtEMGxUSUdiYUVVdnhGNmdiOUJHYXZpTHo2?= =?utf-8?B?RDdGTjA3VVNxc3Uwc0Rhd0VNRHVrZzdVdHRZWlFzam5NYVQybmlmNnNlTnd4?= =?utf-8?B?UkRSeUsvRUxMQXJXemlUWStMMnU0czJJTUhqdUNYalAxRThVR1FhSlkrdmFX?= =?utf-8?B?UkNPTFRKS3g4M1l2aVIvcWQ1YWRxRC9IT05ZRlVsWkdJNnNRMkpqVGo4UktY?= =?utf-8?B?M0FSamxXbWdZUVlOMEJnZnhZQS9iT0c2bThhTlpKRWFOOUlKNzkvU2NlcVFS?= =?utf-8?B?UVdTbE5idHJlNE5RdVloN0xLQ0lhTVc3OXdMalVRdWFKUTNWOTVlTUNMamRD?= =?utf-8?B?VDEvTVN2NVh5bC9yMGFqaW1DU25OYi9Lek1pVGNQb3kxMUdzYUpMbllLaVBH?= =?utf-8?B?NTFZUWNlZm4zMVJHR1lablRlYnhSSTBid0djY2FOMjIvL2dnelJMWlVCMzFJ?= =?utf-8?B?VC9YVmNYN2wxeDlkck9nMXVrSUtqclBqTFdzeVVWUExlVE54NDNRNTl6LzF2?= =?utf-8?B?aW40OTQ1S01NemNTbWl2bUh3TFhLdnFPdmRrV2dPUjJ5SFJUQlRmMkJVb1R4?= =?utf-8?B?U0NETHBEbjhjNDhneDVKVmVCd05jeTJ3alpWRkFSTVBiSjJIV2w4WWJFZitq?= =?utf-8?B?aWQyNTBTYUw0bFdGTmY2aEtpdS9Zams0cUNHaW1SSm5hdEhRNjd2WVZqNHFN?= =?utf-8?B?UHJ4dkQyVnVHS2FyN1MvN1M4am1SQ1RJaVlWcFc3WU5rZWdvaGdtU1ZETk9t?= =?utf-8?B?Y3N3Y0tLSHVBc3BYK285Y2hFMk9vSDZLUlF6N1dvWUljZWkrV1FZNzJjempu?= =?utf-8?B?Qzl1MmJQdHhDMmlnS3VVYXJyanZBemQzeHpwc2I0b3ZhMGFoU1JIQXdNemNx?= =?utf-8?B?dit4RW13MytRL2hiUk85emRZbHZzOVFIQXVUVUJKOVhoTmxtUk5oNjhQOXZt?= =?utf-8?B?aGZWY1hibm9PYzlLbVJiNitUOHRHRkMvaUpZSlRiU0hqWVViTjlaWWJiWVI0?= =?utf-8?B?QW95cnBtdGgyQWZWVXJxOWZlVGVXOUUxL0xTeGdKZ2hmekRsN3BaZ0c1TERv?= =?utf-8?B?dmZXeWIraUR5NGJNZGV5ZHlYMU9QcEc5UHphQzFLMjFMMU9yVGNLei9IMGpp?= =?utf-8?B?V0EzUWZCVHNHR1FJZXpVUG9LT3RHMWpEdjFEL1FlYUZSRm1LejNORWJNOUdC?= =?utf-8?B?dFlYN3dMRXE3aXZta3pLeXNYTUVBa0RuUEJCc3c0Y2Y1OU5HRkJuYmxhcU5y?= =?utf-8?B?THNWazN0c3o2NmpzU3VKbTczNzJJb09jTERWYU5seUZkaEJ2STZVdWQycld4?= =?utf-8?B?c2xpaTVFTUI1Rmt2SUNWTWxQQzhud1kxUzFkdjNYaUIvTng4SE0xWXIvVjRM?= =?utf-8?B?VXgrMnQyNEFGU014NjRnSW1yQnBUQ01wTWNlcDdSTERHdGlmUGpiMytVcWN2?= =?utf-8?B?Z1R4SSs3b2QydFpRb0Z6WlEvdkJsaHJpU3FIbWlHajg3TXlWR1M4clhOQmQ1?= =?utf-8?B?Y3VhTzBOMi9ZTFdZZ1YySVlJeHFxUU1XL0FTSms4ZTRvSTZUcnFRejVCTE1w?= =?utf-8?B?MlVrand5M01keEZNY3BzRXpHZFVGVy9DYmdBd0FZa0Z3RzJOUXJZaHlBd0VQ?= =?utf-8?B?ZFNFRVpEcE84TTdwcVQwSlRlendxa1BiQUl2aVptYkdpU1JNMEhFYmJTUGZU?= =?utf-8?Q?gpRVbqJCnjcQde+kCr9p3LWa4?= 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: SN7PR11MB7044.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5e678cbf-bac3-4f6f-a5b0-08dd3c2a8452 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Jan 2025 03:52:26.2732 (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: m0DrNR0PtxBJLPbkJLqCgkyYTAH5em7BNfzQDChrYXPCdFaMHCB4pEgSDDxmrCRD085ed5EY6A+OD5nPdjJZ8YzuUdePv1c+a6aCU4JBXnA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR11MB6070 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 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogU2hpaml0aCBUaG90dG9u IDxzdGhvdHRvbkBtYXJ2ZWxsLmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBKYW51YXJ5IDIyLCAy MDI1IDc6MTMgUE0NCj4gVG86IE5hZ2EgSGFyaXNoIEssIFMgViA8cy52Lm5hZ2EuaGFyaXNoLmtA aW50ZWwuY29tPjsgZGV2QGRwZGsub3JnDQo+IENjOiBQYXZhbiBOaWtoaWxlc2ggQmhhZ2F2YXR1 bGEgPHBiaGFnYXZhdHVsYUBtYXJ2ZWxsLmNvbT47IFBhdGhhaywNCj4gUHJhdmluIDxwcmF2aW4u cGF0aGFrQGludGVsLmNvbT47IEhlbWFudCBBZ3Jhd2FsDQo+IDxoZW1hbnQuYWdyYXdhbEBueHAu Y29tPjsgU2FjaGluIFNheGVuYSA8c2FjaGluLnNheGVuYUBueHAuY29tPjsNCj4gTWF0dGlhcyBS X25uYmxvbSA8bWF0dGlhcy5yb25uYmxvbUBlcmljc3Nvbi5jb20+OyBKZXJpbiBKYWNvYg0KPiA8 amVyaW5qQG1hcnZlbGwuY29tPjsgTGlhbmcgTWEgPGxpYW5nbWFAbGlhbmdiaXQuY29tPjsgTWNj YXJ0aHksIFBldGVyDQo+IDxwZXRlci5tY2NhcnRoeUBpbnRlbC5jb20+OyBWYW4gSGFhcmVuLCBI YXJyeQ0KPiA8aGFycnkudmFuLmhhYXJlbkBpbnRlbC5jb20+OyBDYXJyaWxsbywgRXJpayBHIDxl cmlrLmcuY2FycmlsbG9AaW50ZWwuY29tPjsNCj4gR3VqamFyLCBBYmhpbmFuZGFuIFMgPGFiaGlu YW5kYW4uZ3VqamFyQGludGVsLmNvbT47IEFtaXQgUHJha2FzaCBTaHVrbGENCj4gPGFtaXRwcmFr YXNoc0BtYXJ2ZWxsLmNvbT47IEJ1cmFrb3YsIEFuYXRvbHkNCj4gPGFuYXRvbHkuYnVyYWtvdkBp bnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbUkZDIFBBVENIXSBldmVudGRldjogYWRhcHRlciBB UEkgdG8gY29uZmlndXJlIG11bHRpcGxlIFJ4DQo+IHF1ZXVlcw0KPiANCj4gPj4gPj4gPj4gPj4+ IFRoaXMgUkZDIGludHJvZHVjZXMgYSBuZXcgQVBJLA0KPiA+PiA+PiA+PiA+Pj4gcnRlX2V2ZW50 X2V0aF9yeF9hZGFwdGVyX3F1ZXVlc19hZGQoKSwNCj4gPj4gPj4gPj4gPj4+IGRlc2lnbmVkIHRv IGVuaGFuY2UgdGhlIGZsZXhpYmlsaXR5IG9mIGNvbmZpZ3VyaW5nIG11bHRpcGxlDQo+ID4+ID4+ ID4+ID4+PiBSeCBxdWV1ZXMgaW4gZXZlbnRkZXYgUnggYWRhcHRlci4NCj4gPj4gPj4gPj4gPj4+ DQo+ID4+ID4+ID4+ID4+PiBUaGUgZXhpc3RpbmcgcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyX3F1 ZXVlX2FkZCgpIEFQSQ0KPiA+PiA+PiA+PiA+Pj4gc3VwcG9ydHMgYWRkaW5nIG11bHRpcGxlIHF1 ZXVlcyBieSBzcGVjaWZ5aW5nIHJ4X3F1ZXVlX2lkID0NCj4gPj4gPj4gPj4gPj4+IC0xLCBidXQg aXQgbGFja3MgdGhlIGFiaWxpdHkgdG8NCj4gPj4gPj4gPj4gPmFwcGx5DQo+ID4+ID4+ID4+ID4+ PiBzcGVjaWZpYyBjb25maWd1cmF0aW9ucyB0byBlYWNoIG9mIHRoZSBhZGRlZCBxdWV1ZXMuDQo+ ID4+ID4+ID4+ID4+Pg0KPiA+PiA+PiA+PiA+Pg0KPiA+PiA+PiA+PiA+PlRoZSBhcHBsaWNhdGlv biBjYW4gc3RpbGwgdXNlIHRoZSBleGlzdGluZw0KPiA+PiA+PiA+PiA+PnJ0ZV9ldmVudF9ldGhf cnhfYWRhcHRlcl9xdWV1ZV9hZGQoKSBBUEkgaW4gYSBsb29wIHdpdGgNCj4gPj4gPj4gPj4gPj5k aWZmZXJlbnQgY29uZmlndXJhdGlvbnMgZm9yIGRpZmZlcmVudCBxdWV1ZXMuDQo+ID4+ID4+ID4+ ID4+DQo+ID4+ID4+ID4+ID4+VGhlIHByb3Bvc2VkIEFQSSBpcyBub3QgZW5hYmxpbmcgbmV3IGZl YXR1cmVzIHRoYXQgY2Fubm90IGJlDQo+ID4+ID4+ID4+ID4+YWNoaWV2ZWQgd2l0aCB0aGUgZXhp c3RpbmcgQVBJLg0KPiA+PiA+PiA+PiA+PkFkZGluZyBuZXcgQVBJcyB3aXRob3V0IG11Y2ggdXNl ZnVsbmVzcyBjYXVzZXMgdW5uZWNlc3NhcnkNCj4gPj4gPj4gPj4gPj5jb21wbGV4aXR5L2NvbmZ1 c2lvbiBmb3IgdXNlcnMuDQo+ID4+ID4+ID4+ID4+DQo+ID4+DQo+ID4+IFRoZSBldGhfcnhfYWRh cHRlcl9xdWV1ZV9hZGQgZXZlbnRkZXYgUE1EIG9wZXJhdGlvbiBjYW4gYmUgdXBkYXRlZA0KPiB0 bw0KPiA+PiBzdXBwb3J0IGJ1cnN0IG1vZGUuIEludGVybmFsbHksIGJvdGggdGhlIG5ldyBhbmQg ZXhpc3RpbmcgQVBJcyBjYW4NCj4gPj4gdXRpbGl6ZSB0aGlzIHVwZGF0ZWQgb3BlcmF0aW9uLiBU aGlzIGVuYWJsZXMgYXBwbGljYXRpb25zIHRvIHVzZQ0KPiA+PiBlaXRoZXIgQVBJIGFuZCBhY2hp ZXZlDQo+ID50aGUNCj4gPj4gc2FtZSByZXN1bHRzIHdoaWxlIGFkZGluZyBhIHNpbmdsZSBxdWV1 ZS4gRm9yIGFkZGluZyBtdWx0aXBsZSBSWA0KPiA+PiBxdWV1ZXMgdG8NCj4gPnRoZQ0KPiA+PiBh ZGFwdGVyLCB0aGUgbmV3IEFQSSBjYW4gYmUgdXNlZCBhcyBpdCBpcyBub3Qgc3VwcG9ydGVkIGJ5 IHRoZSBvbGQgQVBJLg0KPiA+Pg0KPiA+DQo+ID5Ob3QgYWxsIHBsYXRmb3JtcyBpbXBsZW1lbnQg dGhlIGV2ZW50ZGV2IFBNRCBvcGVyYXRpb24gZm9yDQo+ID5ldGhfcnhfYWRhcHRlcl9xdWV1ZV9h ZGQsIHNvIHRoaXMgZG9lcyBub3QgYXBwbHkgdG8gYWxsIHBsYXRmb3Jtcy4NCj4gPg0KPiANCj4g WWVzLCBidXQgdGhlcmUgYXJlIGhhcmR3YXJlIFBNRHMgdGhhdCBpbXBsZW1lbnQgZXRoX3J4X2Fk YXB0ZXJfcXVldWVfYWRkDQo+IG9wLCBhbmQgSSBhbSBsb29raW5nIGZvciBhIHNvbHV0aW9uIHRo YXQgd29ya3MgZm9yIGJvdGggY2FzZXMuDQo+IA0KPiBUaGUgaWRlYSBpcyB0byB1c2UgdGhlIG5l dyBldmVudGRldiBQTUQgb3BlcmF0aW9uDQo+IChldGhfcnhfYWRhcHRlcl9xdWV1ZXNfYWRkKSB3 aXRoaW4gdGhlDQo+IHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9xdWV1ZV9hZGQoKSBBUEkuIFRo ZSBwYXJhbWV0ZXJzIG9mIHRoaXMgQVBJIGNhbg0KPiBiZSBlYXNpbHkgbWFwcGVkIHRvIGFuZCBz dXBwb3J0ZWQgYnkgdGhlIG5ldyBQTUQgb3BlcmF0aW9uLg0KPiANCg0KVGhpcyByZXF1aXJlcyBh IGNoYW5nZSB0byB0aGUgcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX2FkZCgpIHN0YWJs ZSBBUEkgcGFyYW1ldGVycy4NClRoaXMgaXMgYW4gQUJJIGJyZWFrYWdlIGFuZCBtYXkgbm90IGJl IHBvc3NpYmxlIG5vdy4NCkl0IHJlcXVpcmVzIGNoYW5nZXMgdG8gbWFueSBjdXJyZW50IGFwcGxp Y2F0aW9ucyB0aGF0IGFyZSB1c2luZyB0aGUgcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyX3F1ZXVl X2FkZCgpIHN0YWJsZSBBUEkuDQoNCj4gdHlwZWRlZiBpbnQgKCpldmVudGRldl9ldGhfcnhfYWRh cHRlcl9xdWV1ZXNfYWRkX3QpKA0KPiAgICAgY29uc3Qgc3RydWN0IHJ0ZV9ldmVudGRldiAqZGV2 LA0KPiAgICAgY29uc3Qgc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2LA0KPiAgICAgaW50MzJf dCByeF9xdWV1ZV9pZFtdLA0KPiAgICAgY29uc3Qgc3RydWN0IHJ0ZV9ldmVudF9ldGhfcnhfYWRh cHRlcl9xdWV1ZV9jb25mIHF1ZXVlX2NvbmZbXSwNCj4gICAgIHVpbnQxNl90IG5iX3J4X3F1ZXVl cyk7DQo+IA0KPiBXaXRoIHRoaXMsIHRoZSBvbGQgUE1EIG9wIChldGhfcnhfYWRhcHRlcl9xdWV1 ZV9hZGQpIGNhbiBiZSByZW1vdmVkLg0KPiANCj4gPj4gPj4gPj4gPg0KPiA+PiA+PiA+PiA+VGhl IG5ldyBBUEkgd2FzIGludHJvZHVjZWQgYmVjYXVzZSB0aGUgZXhpc3RpbmcgQVBJIGRvZXMgbm90 DQo+ID4+ID4+ID4+ID5zdXBwb3J0IGFkZGluZyBtdWx0aXBsZSBxdWV1ZXMgd2l0aCBzcGVjaWZp YyBjb25maWd1cmF0aW9ucy4NCj4gPj4gPj4gPj4gPkl0IHNlcnZlcyBhcyBhIGJ1cnN0IHZhcmlh bnQgb2YgdGhlIGV4aXN0aW5nIEFQSSwgbGlrZSBtYW55DQo+ID4+ID4+ID4+ID5vdGhlciBBUElz IGluDQo+ID4+IERQREsuDQo+ID4+ID4+ID4+ID4NCj4gPj4gPj4gPg0KPiA+PiA+PiA+VGhlIG90 aGVyIGJ1cnN0IEFQSXMgbWF5IGJlIHRoZXJlIGZvciBkYXRhcGxhbmUgZnVuY3Rpb25hbGl0aWVz LA0KPiA+PiA+PiA+YnV0IG1heSBub3QgYmUgZm9yIHRoZSBjb250cm9sIHBsYW5lIGZ1bmN0aW9u YWxpdGllcy4NCj4gPj4gPj4gPg0KPiA+PiA+Pg0KPiA+PiA+PiBydGVfYWNsX2FkZF9ydWxlcygp IGlzIGFuIGV4YW1wbGUgb2YgYnVyc3QgQVBJIGluIGNvbnRyb2wgcGF0aC4NCj4gPj4gPj4NCj4g Pj4gPg0KPiA+PiA+SSBtZWFuLCBJbiBnZW5lcmFsLCBidXJzdCBBUElzIGFyZSBmb3IgZGF0YS1w bGFuZSBmdW5jdGlvbnMuDQo+ID4+ID5UaGlzIG1heSBiZSBvbmUgb2YgdGhlIHJhcmUgY2FzZXMg d2hlcmUgYSBidXJzdCBBUEkgaXMgaW4gdGhlIGNvbnRyb2wgcGF0aC4NCj4gPj4gPg0KPiA+PiA+ PiA+PiA+Rm9yIGJldHRlciBjbGFyaXR5LCB0aGUgQVBJIGNhbiBiZSByZW5hbWVkIHRvDQo+ID4+ ID4+ID4+ID5ydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJfcXVldWVfYWRkX2J1cnN0KCkgaWYgbmVl ZGVkLg0KPiA+PiA+PiA+PiA+DQo+ID4+ID4+ID4+ID5JbiBoYXJkd2FyZSwgYWRkaW5nIGVhY2gg cXVldWUgaW5kaXZpZHVhbGx5IGluY3VycyBzaWduaWZpY2FudA0KPiA+PiA+PiA+PiA+b3Zlcmhl YWRzLCBzdWNoIGFzIG1haWxib3ggb3BlcmF0aW9ucy4gQSBidXJzdCBBUEkgaGVscHMgdG8NCj4g Pj4gPj4gPj4gPmFtb3J0aXplIHRoaXMgb3ZlcmhlYWQuIFNpbmNlIHJlYWwtIHdvcmxkIGFwcGxp Y2F0aW9ucyBvZnRlbg0KPiA+PiA+PiA+PiA+Y2FsbCB0aGUgQVBJIHdpdGggc3BlY2lmaWMgcXVl dWVfaWRzLCB0aGUgYnVyc3QgQVBJIGNhbg0KPiA+PiA+PiA+PiA+cHJvdmlkZSBjb25zaWRlcmFi bGUNCj4gPj4gYmVuZWZpdHMuDQo+ID4+ID4+ID4+ID5UZXN0aW5nIHNob3dzIGEgNzUlIHJlZHVj dGlvbiBpbiB0aW1lIHdoZW4gYWRkaW5nIG11bHRpcGxlDQo+ID4+ID4+ID4+ID5xdWV1ZXMgdG8g dGhlIFJYIGFkYXB0ZXIgdXNpbmcgdGhlIGJ1cnN0IEFQSSBvbiBvdXIgcGxhdGZvcm0uDQo+ID4+ ID4+ID4+ID4NCj4gPj4gPj4gPg0KPiA+PiA+PiA+IEFzIGJhdGNoaW5nIGhlbHBzIGZvciBhIHBh cnRpY3VsYXIgaGFyZHdhcmUgZGV2aWNlLCB0aGlzIG1heSBub3QNCj4gPj4gPj4gPmJlIGFwcGxp Y2FibGUgZm9yIGFsbCBwbGF0Zm9ybXMvY2FzZXMuDQo+ID4+ID4+ID4JU2luY2UgcXVldWVfYWRk IGlzIGEgY29udHJvbCBwbGFuZSBvcGVyYXRpb24sIGxhdGVuY3kgbWF5IG5vdCBiZQ0KPiA+PiA+ PiA+YSBjb25jZXJuLg0KPiA+PiA+Pg0KPiA+PiA+PiBJbiBjZXJ0YWluIHVzZSBjYXNlcywgdGhl c2UgQVBJcyBjYW4gYmUgY29uc2lkZXJlZCBzZW1pLWZhc3QgcGF0aC4NCj4gPj4gPj4gRm9yDQo+ ID4+ID5pbnN0YW5jZSwNCj4gPj4gPj4gaW4gYW4gYXBwbGljYXRpb24gdGhhdCBob3RwbHVncyBh IHBvcnQgb24gZGVtYW5kLCBjb25maWd1cmluZyBhbGwNCj4gPj4gPj4gYXZhaWxhYmxlIHF1ZXVl cyBzaW11bHRhbmVvdXNseSBjYW4gc2lnbmlmaWNhbnRseSByZWR1Y2UgbGF0ZW5jeS4NCj4gPj4g Pj4NCj4gPj4gPg0KPiA+PiA+QXMgc2FpZCBlYXJsaWVyLCB0aGlzIGxhdGVuY3kgcmVkdWN0aW9u ICh3aGVuIHRyeWluZyB0byBhZGQgbXVsdGlwbGUNCj4gPj4gPlJYIHF1ZXVlcyB0byB0aGUgRXZl bnQgRXRoZXJuZXQgUnggYWRhcHRlcikgbWF5IG5vdCBhcHBseSB0byBhbGwNCj4gPj4gcGxhdGZv cm1zL2Nhc2VzLg0KPiA+PiA+VGhpcyBBUEkgaXMgbm90IGZvciBjb25maWd1cmluZyBxdWV1ZXMg YnV0IGZvciBhZGRpbmcgdGhlIHF1ZXVlcyB0bw0KPiA+PiA+dGhlIFJYIGFkYXB0ZXIuDQo+ID4+ ID4NCj4gPj4gPj4gPkhvdyB0byBzcGVjaWZ5IGEgcGFydGljdWxhciBzZXQoc3BlY2lmaWMgcXVl dWVfaWRzKSBvZiByeF9xdWV1ZXMNCj4gPj4gPj4gPnRoYXQgaGFzIGEgbm9uLSB6ZXJvIHN0YXJ0 IGluZGV4IHdpdGggdGhlIG5ldyBwcm9wb3NlZCBBUEk/DQo+ID4+ID4+DQo+ID4+ID4+IEluIHRo ZSBwcm9wb3NlZCBBUEksDQo+ID4+ID4+IGludCBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJfcXVl dWVzX2FkZCgNCj4gPj4gPj4gICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCBpZCwgdWlu dDE2X3QgZXRoX2Rldl9pZCwgaW50MzJfdCByeF9xdWV1ZV9pZFtdLA0KPiA+PiA+PiAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyX3F1 ZXVlX2NvbmYgY29uZltdLA0KPiA+PiA+PiAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MTZf dCBuYl9yeF9xdWV1ZXMpOyByeF9xdWV1ZXNfaWQgaXMgYW4NCj4gPj4gPj4gYXJyYXkgY29udGFp bmluZyB0aGUgcmVjZWl2ZSBxdWV1ZXMgaWRzLCB3aGljaCBjYW4gc3RhcnQgZnJvbSBhDQo+ID4+ ID4+IG5vbi16ZXJvIHZhbHVlLiBUaGUgYXJyYXkgaW5kZXggaXMgdXNlZCBzb2xlbHkgdG8gbG9j YXRlIHRoZQ0KPiA+PiA+PiBjb3JyZXNwb25kaW5nIHF1ZXVlX2NvbmYuIEZvciBleGFtcGxlLCBy eF9xdWV1ZXNfaWRbaV0gd2lsbCB1c2UgY29uZltpXS4NCj4gPj4gPj4NCj4gPj4gPg0KPiA+PiA+ T2sNCj4gPj4gPg0KPiA+PiA+PiA+CVNpbmNlIHRoaXMgaXMgc3RpbGwgbm90IHBvc3NpYmxlIHdp dGggdGhlIHByb3Bvc2VkIEFQSSwgdGhlDQo+ID4+ID4+ID5leGlzdGluZyBxdWV1ZV9hZGQgQVBJ IG5lZWRzIHRvIGJlIHVzZWQgd2l0aCBzcGVjaWZpYyBxdWV1ZV9pZHMNCj4gPj4gPj4gPmFuZCB0 aGVpciBjb25maWd1cmF0aW9ucy4NCj4gPj4gPj4gPg0KPiA+PiA+PiA+PiA+SSBjYW4gbW9kaWZ5 IHRoZSBvbGQgQVBJIGltcGxlbWVudGF0aW9uIHRvIGFjdCBhcyBhIHdyYXBwZXINCj4gPj4gPj4g Pj4gPmFyb3VuZCB0aGUgYnVyc3QgQVBJLCB3aXRoIG51bWJlciBvZiBxdWV1ZXMgZXF1YWwgdG8g MS4gSWYNCj4gPj4gPj4gPj4gPmNvbmNlcm5zIHJlbWFpbiwgd2UgY2FuIGV4cGxvcmUgZGVwcmVj YXRpb24gYXMgYW4gYWx0ZXJuYXRpdmUuDQo+ID4+ID4+ID4+ID4NCj4gPj4gPj4gPj4NCj4gPj4g Pj4gPj4gUGxlYXNlIGxldCBtZSBrbm93IGlmIHlvdSBoYXZlIGFueSBzdWdnZXN0aW9ucy9mZWVk YmFjayBvbiB3aGF0DQo+ID4+ID4+ID4+IEkgc2FpZCBhYm92ZS4NCj4gPj4gPj4gPg0KPiA+PiA+ PiA+U3RpbGwgZmVlbCB0aGUgbmV3IHByb3Bvc2VkIEFQSSBjYW4gYmUgYXZvaWRlZCBhcyBpdCBs b29rcyBsaWtlIGENCj4gPj4gPj4gPmRpZmZlcmVudCBjb21iaW5hdGlvbiBvZiBleGlzdGluZyBB UEkgaW5zdGVhZCBvZiBhZGRpbmcgc29tZSBuZXcNCj4gPmZlYXR1cmVzLg0KPiA+PiA+PiA+DQo+ ID4+ID4+ID4+IElmIG5vdCwgSSBjYW4gZ28gYWhlYWQgYW5kIHNlbmQgdjEuDQo+ID4+ID4+ID4+ DQo+ID4+ID4+ID4+ID4+PiBUaGUgcHJvcG9zZWQgQVBJLCBydGVfZXZlbnRfZXRoX3J4X2FkYXB0 ZXJfcXVldWVzX2FkZCwNCj4gPj4gPj4gPj4gPj4+IGFkZHJlc3NlcyB0aGlzIGxpbWl0YXRpb24g Ynk6DQo+ID4+ID4+ID4+ID4+Pg0KPiA+PiA+PiA+PiA+Pj4gLSBFbmFibGluZyB1c2VycyB0byBz cGVjaWZ5IGFuIGFycmF5IG9mIHJ4X3F1ZXVlX2lkIHZhbHVlcw0KPiBhbG9uZ3NpZGUNCj4gPj4g Pj4gPj4gPj4+ICAgaW5kaXZpZHVhbCBjb25maWd1cmF0aW9ucyBmb3IgZWFjaCBxdWV1ZS4NCj4g Pj4gPj4gPj4gPj4+DQo+ID4+ID4+ID4+ID4+PiAtIFN1cHBvcnRpbmcgYSBuYl9yeF9xdWV1ZXMg YXJndW1lbnQgdG8gZGVmaW5lIHRoZSBudW1iZXINCj4gPj4gPj4gPj4gPj4+IG9mIHF1ZXVlcw0K PiA+PiA+PiA+dG8NCj4gPj4gPj4gPj4gPj4+ICAgY29uZmlndXJlLiBXaGVuIHNldCB0byAwLCB0 aGUgQVBJIGFwcGxpZXMgYSBjb21tb24NCj4gPj4gPj4gPj4gPj4+IGNvbmZpZ3VyYXRpb24NCj4g Pj4gdG8NCj4gPj4gPj4gPj4gPj4+ICAgYWxsIHF1ZXVlcywgc2ltaWxhciB0byB0aGUgZXhpc3Rp bmcgcnhfcXVldWVfaWQgPSAtMSBiZWhhdmlvci4NCj4gPj4gPj4gPj4gPj4+DQo+ID4+ID4+ID4+ ID4+PiBUaGlzIGVuaGFuY2VtZW50IGFsbG93cyBmb3IgbW9yZSBncmFudWxhciBjb250cm9sIHdo ZW4NCj4gPj4gPj4gPj4gPj4+IGNvbmZpZ3VyaW5nDQo+ID4+ID4+ID4+ID5tdWx0aXBsZQ0KPiA+ PiA+PiA+PiA+Pj4gUnggcXVldWVzLiBBZGRpdGlvbmFsbHksIHRoZSBBUEkgY2FuIGFjdCBhcyBh IHJlcGxhY2VtZW50DQo+ID4+ID4+ID4+ID4+PiBmb3IgdGhlIG9sZGVyIEFQSSwgb2ZmZXJpbmcg Ym90aCBmbGV4aWJpbGl0eSBhbmQgaW1wcm92ZWQNCj4gZnVuY3Rpb25hbGl0eS4NCj4gPj4gPj4g Pj4gPj4+DQo+ID4+ID4+ID4+ID4+PiBTaWduZWQtb2ZmLWJ5OiBTaGlqaXRoIFRob3R0b24gPHN0 aG90dG9uQG1hcnZlbGwuY29tPg0KPiA+PiA+PiA+PiA+Pj4gLS0tDQo+ID4+ID4+ID4+ID4+PiAg bGliL2V2ZW50ZGV2L2V2ZW50ZGV2X3BtZC5oICAgICAgICAgICAgIHwgMzQNCj4gPj4gPj4gPj4g KysrKysrKysrKysrKysrKysrKysrKysrKw0KPiA+PiA+PiA+PiA+Pj4gIGxpYi9ldmVudGRldi9y dGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXIuaCB8IDM0DQo+ID4+ID4+ID4+ID4+PiArKysrKysrKysr KysrKysrKysrKysrKysrDQo+ID4+ID4+ID4+ID4+PiAgMiBmaWxlcyBjaGFuZ2VkLCA2OCBpbnNl cnRpb25zKCspDQo+ID4+ID4+ID4+ID4+Pg0KPiA+PiA+PiA+PiA+Pj4gZGlmZiAtLWdpdCBhL2xp Yi9ldmVudGRldi9ldmVudGRldl9wbWQuaA0KPiA+PiA+PiA+PiA+Pj4gYi9saWIvZXZlbnRkZXYv ZXZlbnRkZXZfcG1kLmggaW5kZXgNCj4gMzYxNDhmOGQ4Ni4uMmU0NThhOTc3OQ0KPiA+PiA+PiA+ PiAxMDA2NDQNCj4gPj4gPj4gPj4gPj4+IC0tLSBhL2xpYi9ldmVudGRldi9ldmVudGRldl9wbWQu aA0KPiA+PiA+PiA+PiA+Pj4gKysrIGIvbGliL2V2ZW50ZGV2L2V2ZW50ZGV2X3BtZC5oDQo+ID4+ ID4+ID4+ID4+PiBAQCAtMjUsNiArMjUsNyBAQA0KPiA+PiA+PiA+PiA+Pj4gICNpbmNsdWRlIDxy dGVfbWJ1Zl9keW4uaD4NCj4gPj4gPj4gPj4gPj4+DQo+ID4+ID4+ID4+ID4+PiAgI2luY2x1ZGUg ImV2ZW50X3RpbWVyX2FkYXB0ZXJfcG1kLmgiDQo+ID4+ID4+ID4+ID4+PiArI2luY2x1ZGUgInJ0 ZV9ldmVudF9ldGhfcnhfYWRhcHRlci5oIg0KPiA+PiA+PiA+PiA+Pj4gICNpbmNsdWRlICJydGVf ZXZlbnRkZXYuaCINCj4gPj4gPj4gPj4gPj4+DQo+ID4+ID4+ID4+ID4+PiAgI2lmZGVmIF9fY3Bs dXNwbHVzDQo+ID4+ID4+ID4+ID4+PiBAQCAtNzA4LDYgKzcwOSwzNyBAQCB0eXBlZGVmIGludA0K PiA+PiA+PiA+PiA+Pj4gKCpldmVudGRldl9ldGhfcnhfYWRhcHRlcl9xdWV1ZV9hZGRfdCkoDQo+ ID4+ID4+ID4+ID4+PiAgCQlpbnQzMl90IHJ4X3F1ZXVlX2lkLA0KPiA+PiA+PiA+PiA+Pj4gIAkJ Y29uc3Qgc3RydWN0IHJ0ZV9ldmVudF9ldGhfcnhfYWRhcHRlcl9xdWV1ZV9jb25mDQo+ID4+ID4+ ID4+ID4+PiAqcXVldWVfY29uZik7DQo+ID4+ID4+ID4+ID4+Pg0KPiA+PiA+PiA+PiA+Pj4gKy8q Kg0KPiA+PiA+PiA+PiA+Pj4gKyAqIEFkZCBldGhlcm5ldCBSeCBxdWV1ZXMgdG8gZXZlbnQgZGV2 aWNlLiBUaGlzIGNhbGxiYWNrDQo+ID4+ID4+ID4+ID4+PiAraXMgaW52b2tlZCBpZg0KPiA+PiA+ PiA+PiA+Pj4gKyAqIHRoZSBjYXBzIHJldHVybmVkIGZyb20NCj4gPj4gPj4gPj4gPj4+ICtydGVf ZXZlbnRkZXZfZXRoX3J4X2FkYXB0ZXJfY2Fwc19nZXQoLA0KPiA+PiA+PiA+PiA+Pj4gK2V0aF9w b3J0X2lkKQ0KPiA+PiA+PiA+PiA+Pj4gKyAqIGhhcyBSVEVfRVZFTlRfRVRIX1JYX0FEQVBURVJf Q0FQX0lOVEVSTkFMX1BPUlQgc2V0Lg0KPiA+PiA+PiA+PiA+Pj4gKyAqDQo+ID4+ID4+ID4+ID4+ PiArICogQHBhcmFtIGRldg0KPiA+PiA+PiA+PiA+Pj4gKyAqICAgRXZlbnQgZGV2aWNlIHBvaW50 ZXINCj4gPj4gPj4gPj4gPj4+ICsgKg0KPiA+PiA+PiA+PiA+Pj4gKyAqIEBwYXJhbSBldGhfZGV2 DQo+ID4+ID4+ID4+ID4+PiArICogICBFdGhlcm5ldCBkZXZpY2UgcG9pbnRlcg0KPiA+PiA+PiA+ PiA+Pj4gKyAqDQo+ID4+ID4+ID4+ID4+PiArICogQHBhcmFtIHJ4X3F1ZXVlX2lkDQo+ID4+ID4+ ID4+ID4+PiArICogICBFdGhlcm5ldCBkZXZpY2UgcmVjZWl2ZSBxdWV1ZSBpbmRleCBhcnJheQ0K PiA+PiA+PiA+PiA+Pj4gKyAqDQo+ID4+ID4+ID4+ID4+PiArICogQHBhcmFtIHF1ZXVlX2NvbmYN Cj4gPj4gPj4gPj4gPj4+ICsgKiAgIEFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiBzdHJ1Y3R1cmUg YXJyYXkNCj4gPj4gPj4gPj4gPj4+ICsgKg0KPiA+PiA+PiA+PiA+Pj4gKyAqIEBwYXJhbSBuYl9y eF9xdWV1ZXMNCj4gPj4gPj4gPj4gPj4+ICsgKiAgIE51bWJlciBvZiBldGhlcm5ldCBkZXZpY2Ug cmVjZWl2ZSBxdWV1ZXMNCj4gPj4gPj4gPj4gPj4+ICsgKg0KPiA+PiA+PiA+PiA+Pj4gKyAqIEBy ZXR1cm4NCj4gPj4gPj4gPj4gPj4+ICsgKiAgIC0gMDogU3VjY2VzcywgZXRoZXJuZXQgcmVjZWl2 ZSBxdWV1ZXMgYWRkZWQgc3VjY2Vzc2Z1bGx5Lg0KPiA+PiA+PiA+PiA+Pj4gKyAqICAgLSA8MDog RXJyb3IgY29kZSByZXR1cm5lZCBieSB0aGUgZHJpdmVyIGZ1bmN0aW9uLg0KPiA+PiA+PiA+PiA+ Pj4gKyAqLw0KPiA+PiA+PiA+PiA+Pj4gK3R5cGVkZWYgaW50ICgqZXZlbnRkZXZfZXRoX3J4X2Fk YXB0ZXJfcXVldWVzX2FkZF90KSgNCj4gPj4gPj4gPj4gPj4+ICsJCWNvbnN0IHN0cnVjdCBydGVf ZXZlbnRkZXYgKmRldiwNCj4gPj4gPj4gPj4gPj4+ICsJCWNvbnN0IHN0cnVjdCBydGVfZXRoX2Rl diAqZXRoX2RldiwNCj4gPj4gPj4gPj4gPj4+ICsJCWludDMyX3QgcnhfcXVldWVfaWRbXSwNCj4g Pj4gPj4gPj4gPj4+ICsJCWNvbnN0IHN0cnVjdCBydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXJfcXVl dWVfY29uZg0KPiA+PiA+PiA+PiA+Pj4gcXVldWVfY29uZltdLA0KPiA+PiA+PiA+PiA+Pj4gKwkJ dWludDE2X3QgbmJfcnhfcXVldWVzKTsNCj4gPj4gPj4gPj4gPj4+ICsNCj4gPj4gPj4gPj4gPj4+ ICAvKioNCj4gPj4gPj4gPj4gPj4+ICAgKiBEZWxldGUgZXRoZXJuZXQgUnggcXVldWVzIGZyb20g ZXZlbnQgZGV2aWNlLiBUaGlzDQo+ID4+ID4+ID4+ID4+PiBjYWxsYmFjayBpcw0KPiA+PiA+aW52 b2tlZA0KPiA+PiA+PiBpZg0KPiA+PiA+PiA+PiA+Pj4gICAqIHRoZSBjYXBzIHJldHVybmVkIGZy b20NCj4gPj4gPj4gPj4gPj4+IGV2ZW50ZGV2X2V0aF9yeF9hZGFwdGVyX2NhcHNfZ2V0KCwNCj4g Pj4gPj4gPj4gPmV0aF9wb3J0X2lkKQ0KPiA+PiA+PiA+PiA+Pj4gQEAgLTE1NzgsNiArMTYxMCw4 IEBAIHN0cnVjdCBldmVudGRldl9vcHMgew0KPiA+PiA+PiA+PiA+Pj4gIAkvKio8IEdldCBldGhl cm5ldCBSeCBhZGFwdGVyIGNhcGFiaWxpdGllcyAqLw0KPiA+PiA+PiA+PiA+Pj4gIAlldmVudGRl dl9ldGhfcnhfYWRhcHRlcl9xdWV1ZV9hZGRfdA0KPiA+PiA+ZXRoX3J4X2FkYXB0ZXJfcXVldWVf YWRkOw0KPiA+PiA+PiA+PiA+Pj4gIAkvKio8IEFkZCBSeCBxdWV1ZXMgdG8gZXRoZXJuZXQgUngg YWRhcHRlciAqLw0KPiA+PiA+PiA+PiA+Pj4gKwlldmVudGRldl9ldGhfcnhfYWRhcHRlcl9xdWV1 ZXNfYWRkX3QNCj4gPj4gPj4gPj4gPj4+IGV0aF9yeF9hZGFwdGVyX3F1ZXVlc19hZGQ7DQo+ID4+ ID4+ID4+ID4+PiArCS8qKjwgQWRkIFJ4IHF1ZXVlcyB0byBldGhlcm5ldCBSeCBhZGFwdGVyICov DQo+ID4+ID4+ID4+ID4+PiAgCWV2ZW50ZGV2X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX2RlbF90DQo+ ID4+ID5ldGhfcnhfYWRhcHRlcl9xdWV1ZV9kZWw7DQo+ID4+ID4+ID4+ID4+PiAgCS8qKjwgRGVs ZXRlIFJ4IHF1ZXVlcyBmcm9tIGV0aGVybmV0IFJ4IGFkYXB0ZXIgKi8NCj4gPj4gPj4gPj4gPj4+ ICAJZXZlbnRkZXZfZXRoX3J4X2FkYXB0ZXJfcXVldWVfY29uZl9nZXRfdA0KPiA+PiA+PiA+PiA+ Pj4gZXRoX3J4X2FkYXB0ZXJfcXVldWVfY29uZl9nZXQ7IGRpZmYgLS1naXQNCj4gPj4gPj4gPj4g Pj4+IGEvbGliL2V2ZW50ZGV2L3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlci5oDQo+ID4+ID4+ID4+ ID4+PiBiL2xpYi9ldmVudGRldi9ydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXIuaA0KPiA+PiA+PiA+ PiA+Pj4gaW5kZXggOTIzN2UxOThhNy4uOWE1YzU2MGI2NyAxMDA2NDQNCj4gPj4gPj4gPj4gPj4+ IC0tLSBhL2xpYi9ldmVudGRldi9ydGVfZXZlbnRfZXRoX3J4X2FkYXB0ZXIuaA0KPiA+PiA+PiA+ PiA+Pj4gKysrIGIvbGliL2V2ZW50ZGV2L3J0ZV9ldmVudF9ldGhfcnhfYWRhcHRlci5oDQo+ID4+ ID4+ID4+ID4+PiBAQCAtNTUzLDYgKzU1Myw0MCBAQCBpbnQNCj4gPj4gPj4gPj4gcnRlX2V2ZW50 X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX2FkZCh1aW50OF90DQo+ID4+ID4+ID4+ID4+PiBpZCwNCj4g Pj4gPj4gPj4gPj4+ICAJCQlpbnQzMl90IHJ4X3F1ZXVlX2lkLA0KPiA+PiA+PiA+PiA+Pj4gIAkJ CWNvbnN0IHN0cnVjdA0KPiA+PiA+cnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX2NvbmYN Cj4gPj4gPj4gPj4gPj4+ICpjb25mKTsNCj4gPj4gPj4gPj4gPj4+DQo+ID4+ID4+ID4+ID4+PiAr LyoqDQo+ID4+ID4+ID4+ID4+PiArICogQWRkIG11bHRpcGxlIHJlY2VpdmUgcXVldWVzIHRvIGFu IGV2ZW50IGFkYXB0ZXIuDQo+ID4+ID4+ID4+ID4+PiArICoNCj4gPj4gPj4gPj4gPj4+ICsgKiBA cGFyYW0gaWQNCj4gPj4gPj4gPj4gPj4+ICsgKiAgQWRhcHRlciBpZGVudGlmaWVyLg0KPiA+PiA+ PiA+PiA+Pj4gKyAqDQo+ID4+ID4+ID4+ID4+PiArICogQHBhcmFtIGV0aF9kZXZfaWQNCj4gPj4g Pj4gPj4gPj4+ICsgKiAgUG9ydCBpZGVudGlmaWVyIG9mIEV0aGVybmV0IGRldmljZS4NCj4gPj4g Pj4gPj4gPj4+ICsgKg0KPiA+PiA+PiA+PiA+Pj4gKyAqIEBwYXJhbSByeF9xdWV1ZV9pZA0KPiA+ PiA+PiA+PiA+Pj4gKyAqICBBcnJheSBvZiBFdGhlcm5ldCBkZXZpY2UgcmVjZWl2ZSBxdWV1ZSBp bmRpY2VzLg0KPiA+PiA+PiA+PiA+Pj4gKyAqICBJZiBuYl9yeF9xdWV1ZXMgaXMgMCwgdGhlbiBy eF9xdWV1ZV9pZCBpcyBpZ25vcmVkLg0KPiA+PiA+PiA+PiA+Pj4gKyAqDQo+ID4+ID4+ID4+ID4+ PiArICogQHBhcmFtIGNvbmYNCj4gPj4gPj4gPj4gPj4+ICsgKiAgQXJyYXkgb2YgYWRkaXRpb25h bCBjb25maWd1cmF0aW9uIHN0cnVjdHVyZXMgb2YgdHlwZQ0KPiA+PiA+PiA+PiA+Pj4gKyAqICAq cnRlX2V2ZW50X2V0aF9yeF9hZGFwdGVyX3F1ZXVlX2NvbmYqLiBjb25mW2ldIGlzIHVzZWQNCj4g Pj4gPj4gPj4gPj4+ICtmb3INCj4gPj4gPj4gPj4gPj4+IHJ4X3F1ZXVlX2lkW2ldLg0KPiA+PiA+ PiA+PiA+Pj4gKyAqICBJZiBuYl9yeF9xdWV1ZXMgaXMgMCwgdGhlbiBjb25mWzBdIGlzIHVzZWQg Zm9yIGFsbCBSeCBxdWV1ZXMuDQo+ID4+ID4+ID4+ID4+PiArICoNCj4gPj4gPj4gPj4gPj4+ICsg KiBAcGFyYW0gbmJfcnhfcXVldWVzDQo+ID4+ID4+ID4+ID4+PiArICogIE51bWJlciBvZiByZWNl aXZlIHF1ZXVlcyB0byBhZGQuDQo+ID4+ID4+ID4+ID4+PiArICogIElmIG5iX3J4X3F1ZXVlcyBp cyAwLCB0aGVuIGFsbCBSeCBxdWV1ZXMgY29uZmlndXJlZA0KPiA+PiA+PiA+PiA+Pj4gK2Zvcg0K PiA+PiA+PiA+PiA+Pj4gKyAqICB0aGUgZGV2aWNlIGFyZSBhZGRlZCB3aXRoIHRoZSBzYW1lIGNv bmZpZ3VyYXRpb24gaW4gY29uZlswXS4NCj4gPj4gPj4gPj4gPj4+ICsgKiBAc2VlIFJURV9FVkVO VF9FVEhfUlhfQURBUFRFUl9DQVBfTVVMVElfRVZFTlRRDQo+ID4+ID4+ID4+ID4+PiArICoNCj4g Pj4gPj4gPj4gPj4+ICsgKiBAcmV0dXJuDQo+ID4+ID4+ID4+ID4+PiArICogIC0gMDogU3VjY2Vz cywgUmVjZWl2ZSBxdWV1ZXMgYWRkZWQgY29ycmVjdGx5Lg0KPiA+PiA+PiA+PiA+Pj4gKyAqICAt IDwwOiBFcnJvciBjb2RlIG9uIGZhaWx1cmUuDQo+ID4+ID4+ID4+ID4+PiArICovDQo+ID4+ID4+ ID4+ID4+PiArX19ydGVfZXhwZXJpbWVudGFsDQo+ID4+ID4+ID4+ID4+PiAraW50IHJ0ZV9ldmVu dF9ldGhfcnhfYWRhcHRlcl9xdWV1ZXNfYWRkKA0KPiA+PiA+PiA+PiA+Pj4gKwkJCXVpbnQ4X3Qg aWQsIHVpbnQxNl90IGV0aF9kZXZfaWQsIGludDMyX3QNCj4gPj4gPj4gPj4gPj4+IHJ4X3F1ZXVl X2lkW10sDQo+ID4+ID4+ID4+ID4+PiArCQkJY29uc3Qgc3RydWN0DQo+ID4+ID4+IHJ0ZV9ldmVu dF9ldGhfcnhfYWRhcHRlcl9xdWV1ZV9jb25mDQo+ID4+ID4+ID4+ID4+PiBjb25mW10sDQo+ID4+ ID4+ID4+ID4+PiArCQkJdWludDE2X3QgbmJfcnhfcXVldWVzKTsNCj4gPj4gPj4gPj4gPj4+ICsN Cj4gPj4gPj4gPj4gPj4+ICAvKioNCj4gPj4gPj4gPj4gPj4+ICAgKiBEZWxldGUgcmVjZWl2ZSBx dWV1ZSBmcm9tIGFuIGV2ZW50IGFkYXB0ZXIuDQo+ID4+ID4+ID4+ID4+PiAgICoNCj4gPj4gPj4g Pj4gPj4+IC0tDQo+ID4+ID4+ID4+ID4+PiAyLjI1LjENCg0K