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 21005A034F; Fri, 26 Feb 2021 08:50:30 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A2A5A407FF; Fri, 26 Feb 2021 08:50:29 +0100 (CET) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mails.dpdk.org (Postfix) with ESMTP id 3A8C540692 for ; Fri, 26 Feb 2021 08:50:28 +0100 (CET) IronPort-SDR: rsjT36RyDyeE37sOPNSghXEN4gd7PBBvDdnOXuEc6yZ4u4kgj+YXszbhQ/VdjgNNHsyUVW+XIo VBAnzN/povvQ== X-IronPort-AV: E=McAfee;i="6000,8403,9906"; a="165023535" X-IronPort-AV: E=Sophos;i="5.81,207,1610438400"; d="scan'208";a="165023535" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Feb 2021 23:50:27 -0800 IronPort-SDR: WLUQYRxTV6OWVF5AvMqYiYkliGMu746YG0s4hYTRRyRn/kOISnemGCPaTMwbKNd/oAlK/SeOXU sVIJjZJheP7A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,207,1610438400"; d="scan'208";a="516423533" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orsmga004.jf.intel.com with ESMTP; 25 Feb 2021 23:50:26 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Thu, 25 Feb 2021 23:50:26 -0800 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Thu, 25 Feb 2021 23:50:26 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Thu, 25 Feb 2021 23:50:26 -0800 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.171) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Thu, 25 Feb 2021 23:50:22 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LVbKkZmpIEWk3WZtGdvrnMiNvaVSpoZRPu+QL1LHs7vy6DRJlH2au+s37GhnwwyY7TpE6ejIpU56ryyurW339aN0fv3vgJ4h16IDI4+KhHK9OL1h1kPsrASxMEmp86Lp+Rd0O9ndWl4CyBwltbvaog1NhS3KbAC92B6I9UmtIU/igO2ZN/TAYzRYwsJ74WB4Gq4PF1WuX2c968YEOjo84kOPY1wJ39AznMOlp+6vdjMNuifWcMn4AxF4Jyn5TFsSV55tOAvyOXZ1YZdbG9uuKECsenaptD/TFaEyuiljcEyqM2sSf2nOwb1YBcSJA97lun7QiPK9xpypzHnVa6pouQ== 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-SenderADCheck; bh=m6rO6yKaKcy9aPCS2P1HXtmvYQAm5zHwq3+ligzpgz4=; b=gLzk3R3O5HLPtNxjhpY7GOtqYam8qb/LhERIZJ1d9ah3MkZVTCis8HqUiTRS6oRytfUt+ObBCcNAwcm38JeOlq0ys99u4wSTf+gcQD8nah1hn0UrczoHUt+1nJ9xom77bkjhNAnBSRWHqO2rtgTvr0S5nrEMKViJhvfJFM6u46o3kvxmTnR23Hn+cfFcybJ4ubHzAJApwoN3j+5OIu+9maQdYgRLG3Dy9JshCRsLEHuTW6YaRwgL1EmmZJlC9Hm52cPNzqqX19daukVxea4uIIImiHKTzKtYC3gReXAP/jAPYK1zKdBiCB+Tg2OBbhQSMPzx4p5gz1k+ISLPJiF86Q== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=m6rO6yKaKcy9aPCS2P1HXtmvYQAm5zHwq3+ligzpgz4=; b=rqEQA88bpsVPfryfyJ9WWeCRANQq0eZkBN8sMrpTq++j5sBpgNrZ46Lj5/oIgi7xlEk+AHSoIRXOzEPXDTejRlMBqKwFuiyoC6beb9TeMEWEDHpwIjJ3txA7NxCQqnIK+SuPjPbdMquJc1yasTAlK1JWjuisPcfXxvi01F+IaYw= Received: from CY4PR11MB1830.namprd11.prod.outlook.com (2603:10b6:903:125::21) by CY4PR11MB1253.namprd11.prod.outlook.com (2603:10b6:903:2d::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3890.19; Fri, 26 Feb 2021 07:50:18 +0000 Received: from CY4PR11MB1830.namprd11.prod.outlook.com ([fe80::918d:fda8:f181:1af0]) by CY4PR11MB1830.namprd11.prod.outlook.com ([fe80::918d:fda8:f181:1af0%3]) with mapi id 15.20.3846.045; Fri, 26 Feb 2021 07:50:18 +0000 From: "Kusztal, ArkadiuszX" To: Matan Azrad , "dev@dpdk.org" CC: "akhil.goyal@nxp.com" , "Doherty, Declan" , Somalapuram Amaranath , "Ruifeng Wang" , Ajit Khaparde , Anoob Joseph , "Zhang, Roy Fan" , "Griffin, John" , "De Lara Guarch, Pablo" , Michael Shamis , Nagadheeraj Rottela , Ankur Dwivedi , Gagandeep Singh , "Jay Zhou" Thread-Topic: [dpdk-dev] [PATCH] cryptodev: support multiple cipher block sizes Thread-Index: AQHW+wL0hikMeVRrxE2cpoYyRSs5mKpOCI/wgABAXACAAAP80IAAS/+AgBt7fDA= Date: Fri, 26 Feb 2021 07:50:18 +0000 Message-ID: References: <1612449252-395208-1-git-send-email-matan@nvidia.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.5.1.3 dlp-product: dlpe-windows authentication-results: nvidia.com; dkim=none (message not signed) header.d=none;nvidia.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.151.43] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 0038e0c2-ac08-44db-97d0-08d8da2b2945 x-ms-traffictypediagnostic: CY4PR11MB1253: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: p74y1kPd/EXymzWX/JBquJi4LInZvWuUizLrufznKYmn0thEBsIM8+f8qCZV3xUW/eATuywuZT/8svzXB46W/060EejYCM0UtmBiIfxJDqJzqEI/DhZNWmTzntMirbAJabrFy0pwcmPRTjZl3vutQVgDcepRyl1PbbJqq0cW4Quy9XWERZpCP8amXDKyNZUsrykYFsa4y0rw9lSpA9eAU45fBRbLBmPuwueu62ltZ8qeSeeq92NkzBTZHCJpe7Pm+G3nTfUrFq071FXAdKjI2l8iLbvwKhnOP5npZ9DUhuNT6ZOgObATqYGzEo7afy90KrK7irddjzZAMuildhZ+gFnNUqm5Yxtz21o2Uh1kahJQkHx6elaVUemW49r9BX6ui9qWh5HaR/3K0m7XlUEQBnj6/dD9vTWreJa1E4RMAIT046MG432nPw0UaJX1rKXmVH+E8y4BedVsHmHVDJONogaE4ZkHbHQfgZoHMSzv4VNoElv+vbsGil1eqyKceObM4v650+Xg7+Dj31KtF3NKdg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CY4PR11MB1830.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(396003)(376002)(346002)(136003)(39860400002)(366004)(66946007)(66556008)(64756008)(66446008)(4326008)(30864003)(66476007)(5660300002)(52536014)(478600001)(2906002)(8936002)(8676002)(186003)(86362001)(55016002)(71200400001)(26005)(7416002)(316002)(9686003)(54906003)(76116006)(110136005)(6506007)(7696005)(53546011)(33656002)(83380400001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?OXZ2VmduUmc0cEtiR2Rhb2xJNXdtM002bmpoVkJNYW15cC8zUVY5dDNKeElY?= =?utf-8?B?c3dMZ3pJT3g2b3diT0tPUW9xZGNWbktPc240WkdLeGM1Y3VmVGc5RjZmdGIy?= =?utf-8?B?WU0wS25mNGVWZ052Z2pVWG5JS3lNNlZhMFhSOWQ3azZvS3FKZGNNeStRSUgx?= =?utf-8?B?SXJiZGJVK2c3UUhzS1pORzdTS1NPaVdMYTZpL0htWVFvT0EwczdPb1BteXRo?= =?utf-8?B?L3VrdFgwZGlOSXRSbnBpREplOUNZUEl3aUFJZlIxSnJuRldudStndzc1WlVz?= =?utf-8?B?bGpwVDMvQjlNc2NxRGZ3M3VOaVFqSmJ1VzFjZG5QT2toSUhTRld2TndBdkhN?= =?utf-8?B?SXRJUjNKaWZRMWpETTJZWEUwd2xSb3RUSFVFT0F4cWlhVWtBWVh1L2RsR1Ax?= =?utf-8?B?R2hETTFqSWtTdU1RKzRaYUgrbEJ2K1cxeVg2U0JxWGc4amNXckY3U2Jkd1Qz?= =?utf-8?B?bUxjUTdXbm90ekMxUGRRK3NyNlZDWWo2Zmt3U1Jia1hITTcyMldZS25KSVVV?= =?utf-8?B?OEMvcm9TTDFuWVdhK2FoZExQNFBrTVFHR3RhM2VIalVzZkI2M0ZDdG9jeEkv?= =?utf-8?B?Yjh3SGRtdVhqV1RHRUN5TGNSMCt6Mjh0T00ycVBZUWdBMkVpYnZLQmpkb1dW?= =?utf-8?B?cHp1Q2ZrOXpka3NoTTVyTVQ5dWx0bUZMVEJWK0VkQ25QNjhaYjRBV2Z1Rm1M?= =?utf-8?B?SGJSYTBZYlk4Tkt4VHRlL2dYU2xiOExCeEZFVE1teXJUdk05RUFxVTV2U0Zp?= =?utf-8?B?WWRnMmVMVGpLb0o5UEpZU0phSDA2c2FlT1BZbDNMc1lDWUIvcm8yLzNEaXo0?= =?utf-8?B?ZlpyNnNHbDlzTDNWVjBBTzZhWXF6T2hDeEFrZ24vM3ZuWGNNbjhERlhjMnRY?= =?utf-8?B?L01tTjI2UU5ROENCQkhhZkN2ZEgxMEJSVmZlSk0rL212bndpRE5uUm4zWUNV?= =?utf-8?B?Z3lRbm1uaFFQUDZML25ldmg1KzNjYzQwTjRoUTZmM3dPajN3bG9tMkdIS3o4?= =?utf-8?B?TG51VVBvaGk1Z05JbDRTTjBkNzhRckxxUi9EVDFPMUFHbDBLSHJ4d0srVEF1?= =?utf-8?B?OGQrdzhpQzVtVUc4bFhRK05TT1diQm5ranpKREFSYzV2YVBCUEtFMElVdGRU?= =?utf-8?B?d0xzdkVSZUx6RVRTOGNaa2RhOFpIaFUrL1YzRVVjcDZuR2lGclFxOXZLbngz?= =?utf-8?B?eXRvMHUvVlljQkFEdlpseFg5RDl6Yjlyam5xeVlUQXBQNGplMytMTm03bXJm?= =?utf-8?B?UTRiTDM5d1RGVVRMME1zdS9xcTRqTEhNSms0QW9lK1g0c21iUVRSL2dKajA4?= =?utf-8?B?eWNuSWpJU2JMaW5BckM2c0ZKc3E4R2hLQkE1dS9mOU1hU290UStLb0lIQXlT?= =?utf-8?B?czc3cDZHMHdIM2MvK1pvYUJRaUFDbzR2Zjk3b1BTc211dkJCL25KdkpRUlds?= =?utf-8?B?VFZueEFOblQzazdETENnZHQ1TzZuOXpHT2lWT3FvWXh5d24yVXY5eTVnaU9S?= =?utf-8?B?QUxRODFSNFdDbisvekxGSGNjNGNESk1KRE9CZVZWMXh4TG4vdmVhS3RrTzV2?= =?utf-8?B?YUxqU3ZLNXlSVWJTTXdLOVFOQ2ZQYTZEM05LN2habWQxRW82SGhFNEtqY3hR?= =?utf-8?B?UXdNOHhKampWZmZNMHUxeGdvYWhFSlI0Qk9LZ1A1elhIaHZzWmp0TlVHYmhG?= =?utf-8?B?RTBFSk4zdmJtcDVHMG15VHltTzBjQmRnU0RsNHZkWStJaW9NK3I1QVA0QVFE?= =?utf-8?Q?GBZ0gqp9yNeIAwTKiRkSZvkivvjHnNrvJ4Esbv2?= 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: CY4PR11MB1830.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0038e0c2-ac08-44db-97d0-08d8da2b2945 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Feb 2021 07:50:18.2401 (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: AzvMR9EhK7wsubl/0dL14PcfF04dsZQ/R93uT/k8LCJQcE9SypQcNmU6B6JR3xUGQgxYtygNGwSBxPA8Q8dxCI1hXE74rfdV0BZOf5oqiRs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR11MB1253 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH] cryptodev: support multiple cipher block sizes 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 Sender: "dev" DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTWF0YW4gQXpyYWQgPG1h dGFuQG52aWRpYS5jb20+DQo+IFNlbnQ6IE1vbmRheSwgRmVicnVhcnkgOCwgMjAyMSA3OjIzIFBN DQo+IFRvOiBLdXN6dGFsLCBBcmthZGl1c3pYIDxhcmthZGl1c3p4Lmt1c3p0YWxAaW50ZWwuY29t PjsgZGV2QGRwZGsub3JnDQo+IENjOiBha2hpbC5nb3lhbEBueHAuY29tOyBEb2hlcnR5LCBEZWNs YW4gPGRlY2xhbi5kb2hlcnR5QGludGVsLmNvbT47DQo+IFNvbWFsYXB1cmFtIEFtYXJhbmF0aCA8 YXNvbWFsYXBAYW1kLmNvbT47IFJ1aWZlbmcgV2FuZw0KPiA8cnVpZmVuZy53YW5nQGFybS5jb20+ OyBBaml0IEtoYXBhcmRlIDxhaml0LmtoYXBhcmRlQGJyb2FkY29tLmNvbT47DQo+IEFub29iIEpv c2VwaCA8YW5vb2JqQG1hcnZlbGwuY29tPjsgWmhhbmcsIFJveSBGYW4NCj4gPHJveS5mYW4uemhh bmdAaW50ZWwuY29tPjsgR3JpZmZpbiwgSm9obiA8am9obi5ncmlmZmluQGludGVsLmNvbT47IERl IExhcmENCj4gR3VhcmNoLCBQYWJsbyA8cGFibG8uZGUubGFyYS5ndWFyY2hAaW50ZWwuY29tPjsg TWljaGFlbCBTaGFtaXMNCj4gPG1pY2hhZWxzaEBtYXJ2ZWxsLmNvbT47IE5hZ2FkaGVlcmFqIFJv dHRlbGENCj4gPHJuYWdhZGhlZXJhakBtYXJ2ZWxsLmNvbT47IEFua3VyIER3aXZlZGkgPGFkd2l2 ZWRpQG1hcnZlbGwuY29tPjsNCj4gR2FnYW5kZWVwIFNpbmdoIDxnLnNpbmdoQG54cC5jb20+OyBK YXkgWmhvdSA8amlhbmpheS56aG91QGh1YXdlaS5jb20+DQo+IFN1YmplY3Q6IFJFOiBbZHBkay1k ZXZdIFtQQVRDSF0gY3J5cHRvZGV2OiBzdXBwb3J0IG11bHRpcGxlIGNpcGhlciBibG9jayBzaXpl cw0KPiANCj4gSGkgS3VzenRhbA0KPiANCj4gRmlyc3QsIHRoYW5rIHlvdSBmb3IgdGhpcyByZXZp ZXcgYW5kIHRoZSBzdWdnZXN0aW9ucy4NCj4gDQo+IEZyb206IEt1c3p0YWwsIEFya2FkaXVzelgN Cj4gPiA+ID4gPiBTdWJqZWN0OiBbZHBkay1kZXZdIFtQQVRDSF0gY3J5cHRvZGV2OiBzdXBwb3J0 IG11bHRpcGxlIGNpcGhlcg0KPiA+ID4gPiA+IGJsb2NrIHNpemVzDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiBJbiBjcnlwdG9ncmFwaHksIGEgYmxvY2sgY2lwaGVyIGlzIGEgZGV0ZXJtaW5pc3RpYyBh bGdvcml0aG0NCj4gPiA+ID4gPiBvcGVyYXRpbmcgb24gZml4ZWQtIGxlbmd0aCBncm91cHMgb2Yg Yml0cywgY2FsbGVkIGJsb2Nrcy4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEEgYmxvY2sgY2lwaGVy IGNvbnNpc3RzIG9mIHR3byBwYWlyZWQgYWxnb3JpdGhtcywgb25lIGZvcg0KPiA+ID4gPiA+IGVu Y3J5cHRpb24gYW5kIHRoZSBvdGhlciBmb3IgZGVjcnlwdGlvbi4gQm90aCBhbGdvcml0aG1zIGFj Y2VwdA0KPiA+ID4gPiA+IHR3bw0KPiA+IGlucHV0czoNCj4gPiA+ID4gPiBhbiBpbnB1dCBibG9j ayBvZiBzaXplIG4gYml0cyBhbmQgYSBrZXkgb2Ygc2l6ZSBrIGJpdHM7IGFuZCBib3RoDQo+ID4g PiA+ID4geWllbGQgYW4gbi1iaXQgb3V0cHV0IGJsb2NrLiBUaGUgZGVjcnlwdGlvbiBhbGdvcml0 aG0gaXMgZGVmaW5lZA0KPiA+ID4gPiA+IHRvIGJlIHRoZSBpbnZlcnNlIGZ1bmN0aW9uIG9mIHRo ZSBlbmNyeXB0aW9uLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gU29tZSBjaXBoZXIgYWxnb3JpdGht cyBzdXBwb3J0IG11bHRpcGxlIGJsb2NrIHNpemVzLCBlLmcuDQo+ID4gPiA+ID4gQUVTLVhUUyBz dXBwb3J0cyBhbnkgYmxvY2sgc2l6ZSBpbiByYW5nZSBbMTZCLCAyXjI0Ql0sIGluIHRoaXMNCj4g PiA+ID4gPiBjYXNlLCBBIHBsYWluLXRleHQgZGF0YSwgZGl2aWRlZCBpbnRvIE4gYW1vdW50IG9m IG4tYml0cyBibG9ja3MsDQo+ID4gPiA+ID4gd2hpY2ggaXMgZW5jcnlwdGVkIHRvIHRoZSBzYW1l IGRhdGEgc2l6ZSwgY2lwaGVyLXRleHQsIG11c3QgYmUNCj4gPiA+ID4gPiBkZWNyeXB0ZWQgaW4g dGhlIHNhbWUgZGl2aXNpb24gb2YgTiBhbW91bnQgb2Ygbi1iaXRzIGJsb2NrcyBpbg0KPiA+ID4g PiA+IG9yZGVyIHRvIGdldCB0aGUgc2FtZSBwbGFpbi10ZXh0DQo+ID4gPiA+IGRhdGEuDQo+ID4g PiA+IFtBcmVrXSAtIEV4Y2VwdCB0aGF0IHRoZSBsYXN0IGRhdGEgYmxvY2sgZG9lcyBub3QgbmVl ZCB0byBiZSBuLWJpdA0KPiA+ID4gPiBsb25nLCBiZXNpZGUgdGhhdCBhbmQgbGFjayBvZiBjaGFp bmluZyBpdCBtYWtlcyBYVFMgbm8gZGlmZmVyZW50DQo+ID4gPiA+IHRvIGFueSBvdGhlciBibG9j ayBjaXBoZXIgbW9kZSBvZiBvcGVyYXRpb24uDQo+IA0KPiBUaGUgcXVlc3Rpb24gaXMgd2hhdCBp cyBibG9jazoNCj4gVGhlIDE2QiBvZiBBRVMgb3IgdGhlIEFFUy1YVFMgc3RhbmRhcmQgZGF0YS11 bml0IGRlZmluaXRpb24uDQo+IA0KPiBNeSBpbnRlbnRpb24gaGVyZSBpcyBsaWtlIEFFUy1YVFMg ZGF0YS11bml0LCBhbmQgeW91IHVuZGVyc3RhbmQgaXQgYXMgQUVTIDE2Qg0KPiBibG9jayhhdCBs ZWFzdCBmb3IgdGhpcyBjb21tZW50IPCfmIopLg0KW0FyZWtdIC0geWVzLCBhbmQgcmlnaHQgbm93 IHlvdSBhcmUgY29ycmVjdC4gRGF0YSB1bml0IG9mIGRhdGEgc3RyZWFtLCBub3QgYWxnb3JpdGht IGJsb2NrIHNpemUuDQo+IA0KPiBQbGVhc2UgdHJ5IHRvIHVuZGVyc3RhbmQgaXQgYXMgZGF0YS11 bml0IChyZXBsYWNlIGFueSAiYmxvY2siIHdvcmQgaW4gImRhdGEtdW5pdCIpDQo+IE5vdywgY2Fu IHlvdSB1bmRlcnN0YW5kIHRoZSBjb21taXQgbG9nIGJldHRlciB3aXRob3V0IGV4Y2VwdGlvbnM/ DQo+IA0KPiBUaGUgaW1wb3J0YW50IHBvaW50IGZvciB0aGUgQVBJIHRoYXQgSSB3YW50LCB3aXRo IHlvdSBhbmQgdGhlIGNvbW11bml0eSBoZWxwLA0KPiB0byBhZGQgaXMgdGhlICJzaXplIiB3aGlj aCB0aGUgYXBwbGljYXRpb24gYW5kIHRoZSBkcml2ZXJzXGRldmljZXMgbXVzdCBrbm93IGluDQo+ IG9yZGVyIHRvIGtub3cgaG93IHRvIGRlY3J5cHQgYW4gZW5jcnlwdGVkIGRhdGEuDQo+IA0KPiBG b3IgQUVTLVhUUyB0aGlzICJzaXplIiBpcyBub3QgYWx3YXlzIDE2Qi4NCj4gDQo+IFNvLCBpZiBz b21lb25lIGdldCBhIGNpcGhlci10ZXh0IHdoaWNoIHdhcyBlbmNyeXB0ZWQgYnkgQUVTLVhUUyB3 aXRoIGluaXRpYWwNCj4gdHdlYWsgVCBhbmQgMiBrZXlzIEswLEsxIGl0IGlzIG5vdCBlbm91Z2gg aW5mb3JtYXRpb24gaW4gb3JkZXIgdG8gZG8gZGVjcnlwdGlvbi4NCj4gVGhlIDE2QiBibG9jayBv ZiBBRVMgaXMgbm90IGhlbHBpbmcgaGVyZS4NCj4gSGVyZSwgdGhlIHVzZXIgbXVzdCBrbm93IHRo ZSBkYXRhLXVuaXQgc2l6ZS4NCj4gVGhlIGZvcm11bGEgRChFKGIpKSA9IGIgdGhhdCBJIHdyb3Rl IGJlbG93IG11c3QgdXNlIGIgYXMgZGF0YS11bml0Lg0KPiBBcmUgeW91IGFncmVlPw0KPiANCj4g PiA+ID4gQmxvY2sgc2l6ZSBpdHNlbGYgZm9yIFhUUy1BRVMgaXMgYWx3YXlzIDE2IGJ5dGVzIGlu IHRoZSBmaXJzdA0KPiA+ID4gPiBwbGFjZSB3aGljaCBpcyBBRVMgY29uc3RyYWludC4NCj4gPiA+ ID4gMl4yMCAqIDE2QiAtPiAyXjI0QiBjb25zdHJhaW50IGZyb20gSUVFRSAxNjE5LTIwMTcsIFNQ ODAwLTM4RSBpcw0KPiA+ID4gPiBkYXRhIHVuaXQgbGVuZ3RoIHRoYXQgY29udGFpbnMgImRhdGEg dW5pdCBpbiBieXRlcy8gMTYiIEFFUyBibG9ja3MNCj4gPiA+ID4gd2hlcmUgbGFzdCBvbmUgY2Fu IGJlIGluY29tcGxldGUuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBUaGUgY3VycmVudCBjcnlwdG9k ZXYgQVBJIGRvZXNuJ3QgYWxsb3cgdGhlIHVzZXIgdG8gc2VsZWN0IGENCj4gPiA+ID4gPiBzcGVj aWZpYyBibG9jayBzaXplIHN1cHBvcnRlZCBieSB0aGUgZGV2aWNlcyBJbiBhZGRpdGlvbiwgdGhl cmUNCj4gPiA+ID4gPiBpcyBubyBkZWZpbml0aW9uIGhvdyB0aGUgSVYgaXMgZGV0ZWN0ZWQgcGVy IGJsb2NrIHdoZW4gc2luZ2xlDQo+ID4gPiA+ID4gb3BlcmF0aW9uIGluY2x1ZGVzDQo+ID4gPiA+ IG1vcmUgdGhhbiBvbmUgYmxvY2suDQo+ID4gPiA+DQo+ID4gPiA+IFtBcmVrXSAtIERvIHlvdSBt ZWFuIHR3ZWFrIGluY3JlbWVudCBwZXIgZGF0YSB1bml0PyBMaWtlIG9uZSBvcCBhcw0KPiA+ID4g PiBhIGRhdGEgc3RyZWFtIChtdWx0aXBsZSBkYXRhIHVuaXRzKSBhbmQgdHdlYWsgaW5jcmVtZW50 ZWQgYnkgcG1kPw0KPiA+ID4NCj4gPiA+IEl0IGNhbiBiZSBkZWZpbmVkIGRpZmZlcmVudGx5IHBl ciBhbGdvcml0aG0uDQo+ID4gW0FyZWtdIC0gd2hhdCBkbyB5b3UgbWVhbj8NCj4gDQo+IE1heWJl IGluIG90aGVyIGFsZ29yaXRobXMgc3RhbmRhcmRzIHRoZSBJViBjYW4gYmUgY2hhbmdlZCBkaWZm ZXJlbnRseSB0aGFuIEFFUy0NCj4gWFRTLCBJJ20gbm90IGZhbWlsaWFyIHdpdGggYWxsIHRoZSBh bGdvcml0aG1zIPCfmIouDQo+IA0KPiA+ID4gSSBrbm93IGZyb20gQUVTLVhUUyBzdGFuZGFyZCB0 aGF0IHRoZSB0d2VhayBzaG91bGQgYmUgaW5jcmVtZW50ZWQgYnkNCj4gPiA+IDEgcGVyIGRhdGEt dW5pdC4NCj4gPiA+IFNvLCB5ZXMsIGhlcmUsIHRoZSBkcml2ZXJcZGV2aWNlIHNob3VsZCB0YWtl IGNhcmUgZm9yIHRoZSBpbmNyZW1lbnRhdGlvbi4NCj4gPiBbQXJla10gLSB0aGVuIGl0IHNob3Vs ZCBiZSBzdGF0ZWQgaW4gcnRlX2NyeXB0b19zeW1fb3AgaXYgY29tbWVudHMuDQo+IA0KPiBJIHN0 YXRlZCBpdCBpbiB0aGUgY2lwaGVyIHRyYW5zZm9ybWF0aW9uIHN0cnVjdHVyZSB3aGVyZSB0aGUg dHdlYWsgaXMgZGVmaW5lZCBhcyBJVg0KPiBmb3IgQUVTLVhUUy4NCj4gDQo+IERvIHlvdSB0aGlu ayB3ZSBuZWVkIHRvIGFkZCBjb21tZW50IGluIHRoZSBvcCB0b28/DQpbQXJla10gLSBvbiB0aGUg b3RoZXIgaGFuZCBubywgaGF2aW5nIGl0IGluIHhmb3JtIHNob3VsZCBiZSBvaywgZXNwZWNpYWxs eSB0aGF0IG5vIHJlYWxseSBnb29kIHBsYWNlIHRvIHB1dCBpdCBpbiBvcA0KPiANCj4gPiA+DQo+ ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gVGhhdCBjYXVzZXMgYXBwbGljYXRp b25zIHRvIHVzZSBzaW5nbGUgb3BlcmF0aW9uIHBlciBibG9jayBldmVuDQo+ID4gPiA+ID4gdGhv dWdoIGFsbCB0aGUgZGF0YSBpcyBjb250aW51b3VzIGluIG1lbW9yeSB3aGF0IHJlZHVjZXMNCj4g PiA+ID4gPiBkYXRhcGF0aA0KPiA+ID4gcGVyZm9ybWFuY2UuDQo+ID4gPiA+ID4NCj4gPiA+ID4g PiBBZGQgYSBuZXcgZmVhdHVyZSBmbGFnIHRvIHN1cHBvcnQgbXVsdGlwbGUgYmxvY2sgc2l6ZXMs IGNhbGxlZA0KPiA+ID4gPiA+IFJURV9DUllQVE9ERVZfRkZfQ0lQSEVSX01VTElUUExFX0JMT0NL Uy4NCj4gPiA+ID4gPiBBZGQgYSBuZXcgZmllbGQgaW4gY2lwaGVyIGNhcGFiaWxpdHksIGNhbGxl ZCBic2YgLSBibG9jayBzaXplDQo+ID4gPiA+ID4gZmxhZ3MsIHdoZXJlIHRoZSBkZXZpY2VzIGNh biByZXBvcnQgdGhlIHJhbmdlIG9mIHRoZSBzdXBwb3J0ZWQgYmxvY2sNCj4gc2l6ZXMuDQo+ID4g PiA+ID4gQWRkIGEgbmV3IGNpcGhlciB0cmFuc2Zvcm1hdGlvbiBmaWVsZCwgY2FsbGVkIGJsb2Nr X3NpemUsIHdoZXJlDQo+ID4gPiA+ID4gdGhlIHVzZXIgY2FuIHNlbGVjdCBvbmUgYmxvY2sgc2l6 ZSBmcm9tIHRoZSBzdXBwb3J0ZWQgcmFuZ2UuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBBbGwgdGhl IG5ldyBmaWVsZHMgZG8gbm90IGNoYW5nZSB0aGUgc2l6ZSBvZiB0aGVpciBzdHJ1Y3R1cmVzLg0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gVXNpbmcgZmxhZ3MgdG8gcmVwb3J0IHRoZSBzdXBwb3J0ZWQg YmxvY2sgc2l6ZXMgY2FwYWJpbGl0eQ0KPiA+ID4gPiA+IGFsbG93cyB0aGUgZGV2aWNlcyB0byBy ZXBvcnQgYSByYW5nZSBzaW1wbHkgYXMgc2FtZSBhcyB0aGUgdXNlciB0byByZWFkIGl0DQo+IHNp bXBseS4NCj4gPiA+ID4gPiBBbHNvLCB0aHVzIHNpemVzIGFyZSB1c3VhbGx5IGNvbW1vbiBhbmQg cHJvYmFibHkgd2lsbCBiZSBzaGFyZWQNCj4gPiA+ID4gPiBiZXR3ZWVuIHRoZSBkZXZpY2VzLg0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTogTWF0YW4gQXpyYWQgPG1hdGFuQG52 aWRpYS5jb20+DQo+ID4gPiA+ID4gLS0tDQo+ID4gPiA+ID4gIGxpYi9saWJydGVfY3J5cHRvZGV2 L3J0ZV9jcnlwdG9fc3ltLmggfCAxMiArKysrKysrKysrKysNCj4gPiA+ID4gPiBsaWIvbGlicnRl X2NyeXB0b2Rldi9ydGVfY3J5cHRvZGV2LmggIHwgMjMNCj4gPiA+ID4gPiArKysrKysrKysrKysr KysrKysrKysrLQ0KPiA+ID4gPiA+ICAyIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyks IDEgZGVsZXRpb24oLSkNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9saWIvbGli cnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRvX3N5bS5oDQo+ID4gPiA+ID4gYi9saWIvbGlicnRlX2Ny eXB0b2Rldi9ydGVfY3J5cHRvX3N5bS5oDQo+ID4gPiA+ID4gaW5kZXggOWQ1NzJlYy4uOWExMjE1 ZCAxMDA2NDQNCj4gPiA+ID4gPiAtLS0gYS9saWIvbGlicnRlX2NyeXB0b2Rldi9ydGVfY3J5cHRv X3N5bS5oDQo+ID4gPiA+ID4gKysrIGIvbGliL2xpYnJ0ZV9jcnlwdG9kZXYvcnRlX2NyeXB0b19z eW0uaA0KPiA+ID4gPiA+IEBAIC0yNjUsNiArMjY1LDE4IEBAIHN0cnVjdCBydGVfY3J5cHRvX2Np cGhlcl94Zm9ybSB7DQo+ID4gPiA+ID4gICAgICAgICAgICAgICAgKiB3aGljaCBjYW4gYmUgaW4g dGhlIHJhbmdlIDcgdG8gMTMgaW5jbHVzaXZlLg0KPiA+ID4gPiA+ICAgICAgICAgICAgICAgICov DQo+ID4gPiA+ID4gICAgICAgfSBpdjsgICAvKio8IEluaXRpYWxpc2F0aW9uIHZlY3RvciBwYXJh bWV0ZXJzICovDQo+ID4gPiA+ID4gKw0KPiA+ID4gPiA+ICsgICAgIHVpbnQzMl90IGJsb2NrX3Np emU7DQo+ID4gW0FyZWtdIC0gbG9va2luZyBmcm9tIHlvdXIgYW5zd2VycyBiZWxvdywgdGhpcyBv bmUgY291bGQganVzdCBiZQ0KPiA+IGFlc194dHNfZGF0YXVuaXRfbGVuLg0KPiANCj4gQXJlIHlv dSBzdXJlIHRoZXJlIGlzIG5vIGFueSBvdGhlciBjaXBoZXIgYWxnb3JpdGhtIHRoYXQgaGF2ZSBz b21ldGhpbmcgc2ltaWxhcg0KPiB0byBkYXRhLXVuaXQgb2YgQUVTLVhUUz8NCltBcmVrXSAtIGZy b20gd2hhdCB3ZSBjdXJyZW50bHkgaGF2ZSAtIG5vIGJ5IGRlZmluaXRpb24gYnV0IEkgYWdyZWUs IGl0IGFjdHVhbGx5IGNvdWxkIGJlIHNvbWV0aGluZyBsaWtlIGRhdGF1bml0X2xlbjsNCj4gDQo+ ID4gPiA+ID4gKyAgICAgLyoqPCBXaGVuIFJURV9DUllQVE9ERVZfRkZfQ0lQSEVSX01VTElUUExF X0JMT0NLUyBpcw0KPiA+ID4gPiA+IHJlcG9ydGVkLCB0aGlzIGlzDQo+ID4gPiA+ID4gKyAgICAg ICogdGhlIGJsb2NrIHNpemUgb2YgdGhlIGFsZ29yaXRobSwgb3RoZXJ3aXNlIG9yIHdoZW4gdGhl IHZhbHVlIGlzIDAsDQo+ID4gPiA+ID4gKyAgICAgICogdXNlIHRoZSBkZWZhdWx0IGJsb2NrIHNp emUgcHJvdmlkZWQgaW4gdGhlIGNhcGFiaWxpdHkuDQo+ID4gPiA+ID4gKyAgICAgICogVGhlIHZh bHVlIHNob3VsZCBiZSBpbiB0aGUgcmFuZ2UgZGVmaW5lZCBieSB0aGUgYnNmIGZpZWxkIGluIHRo ZQ0KPiA+ID4gPiA+ICsgICAgICAqIGNpcGhlciBjYXBhYmlsaXR5Lg0KPiA+ID4gPg0KPiA+ID4g PiBbQXJla10gLSBub3dhZGF5cyBhbGdvcml0aG1zIHJhdGhlciBkb24ndCBoYXZlIGRpZmZlcmVu dCBibG9jaw0KPiA+ID4gPiBzaXplcywgdGhvdWdoIEkgc2VlIHBlb3BsZSBzZXQgdGhpcyBmaWVs ZCBldmVuIGZvciBzdHJlYW0gY2lwaGVycy4NCj4gPiA+ID4gSWYgc3VjaCBhbGdvcml0aG0gd291 bGQgaGFwcGVuIGl0IHByb2JhYmx5IGNvdWxkIGp1c3QgZ2V0IGEgc3VmZml4DQo+ID4gPiA+IGlu IGNyeXB0b19jaXBoZXJfZW51bS4gT3RoZXJ3aXNlIHNvbWUgZml4ZWQgc2l6ZSBhcnJheSBjb3Vs ZCBiZSBhZGRlZC4NCj4gPiA+DQo+ID4gPiBGaXJzdCwgaWYgbm8gZGlmZmVyZW50IGJsb2NrIHNp emUgcGVyIGFsZ29yaXRobSwgd2h5IGRvIHdlIG5lZWQgdGhpcw0KPiA+ID4gcGFyYW1ldGVyIGF0 IGFsbD8NCj4gPiBbQXJla10gLSBJIGFtIG5vdCBzdXJlIGJ1dCBsb29rcyBsaWtlIGluZm9ybWF0 aXZlLCBlc3BlY2lhbGx5IHRoYXQgaXQNCj4gPiBpcyBvbmx5IG9uZSAxNmJpdCBsb25nIGZpZWxk Lg0KPiANCj4gWWVzLCBpdCBpcyAxNiBiaXRzLCBidXQgaXQgaXMgbm90IG5lZWRlZCwgSSBkb24n dCB0aGluayBhcHBsaWNhdGlvbnMgdXNlIHRoaXMgY2FwYWJpbGl0eQ0KPiBpZiBpdCBpcyBkZWZp bmVkIGJ5IGRlZmluaXRpb24gcGVyIGFsZ29yaXRobS4NCj4gTG9va3MgbGlrZSBjYW5kaWRhdGUg Zm9yIGRlcHJlY2F0aW9uIGlmIHNvLg0KW0FyZWtdIC0gdGhpcyBhY3R1YWxseSBzaG91bGQgYmUg Zm9yIGFub3RoZXIgZGlzY3Vzc2lvbiwgYXMgZm9yIHZhcnlpbmcgYmxvY2sgc2l6ZSBSQzUgY2Fu IGhhdmUgZGlmZmVyZW50IGJsb2NrIHNpemVzIChidXQgeW91IHdpbGwgcmF0aGVyIG5vdCBmaW5k IGl0IGluIG1vZGVybiBjaXBoZXIgc3VpdGVzKS4NCkFub3RoZXIgb3B0aW9uIGlzIHdpZGUgYmxv Y2sgZW5jcnlwdGlvbiB0aG91Z2ggSSBhbSBub3Qgc3VyZSB3aGF0IGlzIGN1cnJlbnQgcG9wdWxh cml0eSBvZiBpdC4NCkZyb20gdGhlIG5ldHdvcmsgcGVyc3BlY3RpdmUgY3VycmVudCB0cmVuZCBp cyB0byBnbyBmb3Igc3RyZWFtIGNpcGhlcnMgKEdDTSwgQ0NNLCBDaGFDaGEpIGFuZCBzdHJlYW0g Y2lwaGVyIGlzIG9idmlvdXMgY2hvaWNlIGZvciB3aXJlbGVzcy4NCg0KPiANCj4gPiA+DQo+ID4g PiBTZWNvbmQsDQo+ID4gPiBDaXBoZXIgYmxvY2sgZGVmaW5lZCB0byBiZSBsaWtlIHRoaXMgRChF KGIpKSA9IGINCj4gPiA+IEQ6IGRlY3J5cHRpb24gZnVuY3Rpb24NCj4gPiA+IEU6IGVuY3J5cHRp b24gZnVuY3Rpb24NCj4gPiA+IGI6IHBsYWluLXRleHQgYmxvY2sgZGF0YS4NCj4gPiA+DQo+ID4g PiBJbiBjYXNlIG9mIEFFUy1YVFMgdGhlIGNpcGhlciBibG9jayBzaXplIGlzIHRoZSBkYXRhLXVu aXQgc2l6ZS4NCj4gPiA+IFRoZXJlIGlzIGEgYmlnIHJhbmdlIG9mIG9wdGlvbmFsIGRhdGEsIHNl ZSBpbiBzdGFuZGFyZC4NCj4gPiBbQXJla10gLSBDdXJyZW50bHkgaW4gRFBESyB3ZSBoYXZlIDMg YmxvY2sgY2lwaGVyIGFsZ29yaXRobXM6DQo+ID4gVERFQSgzREVTKSAtIDggYnl0ZSBibG9jaywg QUVTIC0gMTYgYnl0ZSBibG9jaywgS0FTVU1JIC04Ynl0ZSAoYnV0DQo+ID4gZGVwcmVjYXRlZCBz aW5jZSAzRyksIEFkZGl0aW9uYWxseSBJUHNlYyBpZXRmIGRlZmluZXMgTlVMTCBhcyBibG9jaw0K PiA+IGNpcGhlciB3aXRoIDEgYnl0ZSBsZW4sIGJ1dCBFVFNJIGRvZXNuJ3QgZG8gdGhhdCB3aXRo IEVFQSxFSUEsTklBLTAuDQo+IA0KPiBPSw0KPiANCj4gPiA+DQo+ID4gPg0KPiA+ID4gPiA+ICsg ICAgICAqDQo+ID4gPiA+ID4gKyAgICAgICogLSBGb3IgQUVTLVhUUyBpdCBpcyB0aGUgc2l6ZSBv ZiBkYXRhLXVuaXQsIGZyb20gSUVFRSBTdGQgMTYxOS0yMDA3Lg0KPiA+ID4gPiA+ICsgICAgICAq IEZvci1lYWNoIGRhdGEtdW5pdCBpbiB0aGUgb3BlcmF0aW9uLCB0aGUgdHdlYWsoSVYpIHZhbHVl IGlzDQo+ID4gPiA+ID4gKyAgICAgICogYXNzaWduZWQgY29uc2VjdXRpdmVseSBzdGFydGluZyBm cm9tIHRoZSBvcGVyYXRpb24gYXNzaWduZWQNCj4gdHdlYWsuDQo+ID4gPiA+ID4gKyAgICAgICov DQo+ID4gPiA+IFtBcmVrXSAtIGlmIGRhdGEgdW5pdCB3b3VsZCBiZSBzZXNzaW9uIHZhbHVlIChr ZXkgc2NvcGUgaW4geHRzDQo+ID4gPiA+IG5hbWluZykgd2hlcmUgdGhlIG51bWJlciBvZiB1bml0 cyB3b3VsZCBiZSB0YWtlbiBmcm9tLCBzeW1fb3AtPmxlbiA/DQo+ID4gPg0KPiA+ID4gWWVzLCBp dCBpcyBhbHJlYWR5IGRlZmluZWQgdGhlcmUgdGhhdCBpdCBtdXN0IGJlIG11bHRpcGxlIG9mIGJs b2NrDQo+ID4gPiBzaXplKGRhdGEtdW5pdCBpbiBBRVMtWFRTIGNhc2UpLg0KPiA+IFtBcmVrXSAg LSB0aGlzIGNvbW1lbnQgd2FzIG1lYW50IGZvciBjaXBoZXIgYmxvY2sgbW9kZXMgdGhhdCBuZWVk cw0KPiA+IGlucHV0IGFsaWduZWQgdG8gYmxvY2sgY2lwaGVyIGxlbiwgbGlrZSBDQkMgcGFkZGlu Zy4NCj4gDQo+IFNvLCBEbyB5b3UgdGhpbmsgdGhlIGN1cnJlbnQgY29tbWVudCBpcyB3cm9uZz8N CkFyZWtdIC0geWVzLCBjdXJyZW50IGNvbW1lbnQgaXMgd3JvbmcuIEl0IGRvZXMgbm90IGFsbG93 IFhUUyBkYXRhIHVuaXQgdGhhdCBpcyBub3QgbXVsdGlwbGUgb2YgYmxvY2sgc2l6ZS4NCiANCj4g DQo+ID4gSW4gY2FzZSBvZiBYVFMgaXQgc2hvdWxkIGJlIHNvbWV0aGluZyBsaWtlIDogbXVsdGlw bGUgb2YgeGZvcm0NCj4gPiB4dHNfZGF0YV91bml0IGxlbiBvciBvbmUgb2YgdHdvOg0KPiA+IC0g ZGF0YSB1bml0IGxlbiBpdHNlbGYgaW4gY2FzZSBkZXZpY2UgZG9lcyBub3Qgc3VwcG9ydCBtdWx0 aXBsZSBkYXRhIHVuaXRzLg0KPiA+IC0gMCBhbmQgZGF0YSB1bml0IGxlbiB3b3VsZCBiZSB0YWtl biBmcm9tIHNlc3Npb24veGZvcm0gaW4gY2FzZSBkZXZpY2UNCj4gPiBkb2VzIG5vdCBzdXBwb3J0 IG11bHRpcGxlIGRhdGEgdW5pdHMuDQo+IA0KPiBZZXMsIHRoZSBmaXJzdCBvbmUgZG9lc24ndCBi cmVhayBBUEksIHNvIGl0IGlzIGJldHRlci4NCltBcmVrXSAtIG9rIHNvIHNvbWV0aGluZyBsaWtl Og0KTXVsdGlwbGUgb2YgeGZvcm0geHRzX2RhdGFfdW5pdCBvciBkYXRhIHVuaXQgbGVuIGl0c2Vs ZiBpbiBjYXNlIGRldmljZSBkb2VzIG5vdCBzdXBwb3J0IG11bHRpcGxlIGRhdGEgdW5pdHMuDQoN Ck1heWJlIHNvbWUgYWRkaXRpb25hbCBvcHRpb24gd291bGQgYmUgbmVlZGVkIGlmIFBNRCBjYW4g d29yayBib3RoIHdheXMgKHdpdGggYW5kIHdpdGhvdXQgYXV0byB0d2VhayBpbmNyZW1lbnQpLg0K DQo+IA0KPiA+ID4NCj4gPiA+ID4gKEZvciBzdGFuZGFyZCBzdG9yYWdlIGV4YW1wbGU6IGRhdGEg dW5pdCBzaXplIC0+IGxvZ2ljYWwgYmxvY2sNCj4gPiA+ID4gc2l6ZSwgc3ltX29wLT5sZW4NCj4g PiA+ID4gLT4gcmFuZ2Ugb2YgY29uc2VjdXRpdmUgbG9naWNhbCBibG9ja3MuKSBJZiBzbyBpdCBw cm9iYWJseSBjb3VsZA0KPiA+ID4gPiAtPiBiZSBzZXNzaW9uLWxlc3Mgb3ANCj4gPiA+ID4gYXMg dGhpcyBjaXBoZXIga2V5IHdvdWxkIGJlIHVudXNhYmxlIGFmdGVyIGl0Lg0KPiA+ID4gPg0KPiA+ ID4NCj4gPiA+IENhbiBiZSBzZXNzaW9uIGFuZCBzZXNzaW9uLWxlc3MgbW9kZXMuDQo+ID4gPg0K PiA+ID4gSWYgdGhlIHVzZXIgd2FudCB0byBvcGVyYXRlIG9uIGRpZmZlcmVudCBncm91cHMgb2Yg YmxvY2tzIGluIHRoZQ0KPiA+ID4gc2FtZSBzdHJlYW0gaGUgY2FuIHVzZSB0aGUgc2FtZSBzZXNz aW9uKGtleSkgd2l0aCBkaWZmZXJlbnQgb3BzLg0KPiA+IFtBcmVrXSAtIHllcywgaXQgc2hvdWxk IGJlIHBvc3NpYmxlIHRvIGRvIHRoYXQgaWYgdXNlciBrZWVwIHRyYWNrIG9mIHR3ZWFrIHZhbHVl Lg0KPiA+DQo+ID4gPg0KPiA+ID4gQW0gSSBtaXNzaW5nIGhlcmU/DQo+ID4gPg0KPiA+ID4gPiA+ ICB9Ow0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gIC8qKiBTeW1tZXRyaWMgQXV0aGVudGljYXRpb24g LyBIYXNoIEFsZ29yaXRobXMgZGlmZiAtLWdpdA0KPiA+ID4gPiA+IGEvbGliL2xpYnJ0ZV9jcnlw dG9kZXYvcnRlX2NyeXB0b2Rldi5oDQo+ID4gPiA+ID4gYi9saWIvbGlicnRlX2NyeXB0b2Rldi9y dGVfY3J5cHRvZGV2LmgNCj4gPiA+ID4gPiBpbmRleCBhZTM0ZjMzLi42MGJhODM5IDEwMDY0NA0K PiA+ID4gPiA+IC0tLSBhL2xpYi9saWJydGVfY3J5cHRvZGV2L3J0ZV9jcnlwdG9kZXYuaA0KPiA+ ID4gPiA+ICsrKyBiL2xpYi9saWJydGVfY3J5cHRvZGV2L3J0ZV9jcnlwdG9kZXYuaA0KPiA+ID4g PiA+IEBAIC05Niw2ICs5NiwxOSBAQCBzdHJ1Y3QgcnRlX2NyeXB0b19wYXJhbV9yYW5nZSB7ICB9 Ow0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gIC8qKg0KPiA+ID4gPiA+ICsgKiBDcnlwdG8gZGV2aWNl IHN1cHBvcnRlZCBibG9jayBzaXplIGZsYWdzIGZvciBjaXBoZXINCj4gPiA+ID4gPiArYWxnb3Jp dGhtcw0KPiA+ID4gPiA+ICsgKiBFYWNoIGZsYWcgcmVwcmVzZW50cyBzaW5nbGUgb3IgcmFuZ2Ug b2Ygc3VwcG9ydGVkIGJsb2NrDQo+ID4gPiA+ID4gK3NpemVzICovICNkZWZpbmUgUlRFX0NSWVBU T19DSVBIRVJfQlNGX0FMTCAweDENCj4gPiA+ID4gPiArLyogQWxsIHRoZSBzaXplcyBmcm9tIHRo ZSBhbGdvcml0aG0gc3RhbmRhcmQgKi8gI2RlZmluZQ0KPiA+ID4gPiA+ICtSVEVfQ1JZUFRPX0NJ UEhFUl9CU0ZfNTEyX0JZVEVTIDB4MiAjZGVmaW5lDQo+ID4gPiA+ID4gK1JURV9DUllQVE9fQ0lQ SEVSX0JTRl81MjBfQllURVMgMHg0ICNkZWZpbmUNCj4gPiA+ID4gPiArUlRFX0NSWVBUT19DSVBI RVJfQlNGXzQwNDhfQllURVMgMHg4ICNkZWZpbmUNCj4gPiA+ID4gPiArUlRFX0NSWVBUT19DSVBI RVJfQlNGXzQwOTZfQllURVMgMHgxMCAjZGVmaW5lDQo+ID4gPiA+ID4gK1JURV9DUllQVE9fQ0lQ SEVSX0JTRl80MTYwX0JZVEVTIDB4MjAgI2RlZmluZQ0KPiA+ID4gPiA+ICtSVEVfQ1JZUFRPX0NJ UEhFUl9CU0ZfMU1fQllURVMgMHg0MA0KPiA+ID4gPiBbQXJla10gLSB3aGVuIGFkZGluZyBjb25z dGFudHMgc291cmNlIHNob3VsZCBiZSBhdHRhY2hlZCBhcyB3ZWxsLg0KPiA+ID4gPiA+ICsNCj4g PiA+ID4gPiArLyoqDQo+ID4gPiA+ID4gICAqIFN5bW1ldHJpYyBDcnlwdG8gQ2FwYWJpbGl0eQ0K PiA+ID4gPiA+ICAgKi8NCj4gPiA+ID4gPiAgc3RydWN0IHJ0ZV9jcnlwdG9kZXZfc3ltbWV0cmlj X2NhcGFiaWxpdHkgeyBAQCAtMTIyLDExICsxMzUsMTkNCj4gPiA+ID4gPiBAQCBzdHJ1Y3QgcnRl X2NyeXB0b2Rldl9zeW1tZXRyaWNfY2FwYWJpbGl0eSB7DQo+ID4gPiA+ID4gICAgICAgICAgICAg ICAgICAgICAgIGVudW0gcnRlX2NyeXB0b19jaXBoZXJfYWxnb3JpdGhtIGFsZ287DQo+ID4gPiA+ ID4gICAgICAgICAgICAgICAgICAgICAgIC8qKjwgY2lwaGVyIGFsZ29yaXRobSAqLw0KPiA+ID4g PiA+ICAgICAgICAgICAgICAgICAgICAgICB1aW50MTZfdCBibG9ja19zaXplOw0KPiA+ID4gPiA+ IC0gICAgICAgICAgICAgICAgICAgICAvKio8IGFsZ29yaXRobSBibG9jayBzaXplICovDQo+ID4g PiA+ID4gKyAgICAgICAgICAgICAgICAgICAgIC8qKjwNCj4gPiA+ID4gPiArICAgICAgICAgICAg ICAgICAgICAgICogYWxnb3JpdGhtIGJsb2NrIHNpemUNCj4gPiA+ID4gPiArICAgICAgICAgICAg ICAgICAgICAgICogRm9yIGFsZ29yaXRobXMgc3VwcG9ydCBtb3JlIHRoYW4gc2luZ2xlIGJsb2Nr IHNpemUsDQo+ID4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAqIHRoaXMgaXMgdGhlIGRl ZmF1bHQgYmxvY2sgc2l6ZSBzdXBwb3J0ZWQgYnkgdGhlDQo+ID4gPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAqIGRyaXZlciwgYWxsIHRoZSBzdXBwb3J0ZWQgc2l6ZXMgYXJlIHJlZmxlY3Rl ZCBpbiB0aGUNCj4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICogYnNmIGZpZWxkLg0K PiA+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgKi8NCj4gPiA+ID4gPiAgICAgICAgICAg ICAgICAgICAgICAgc3RydWN0IHJ0ZV9jcnlwdG9fcGFyYW1fcmFuZ2Uga2V5X3NpemU7DQo+ID4g PiA+ID4gICAgICAgICAgICAgICAgICAgICAgIC8qKjwgY2lwaGVyIGtleSBzaXplIHJhbmdlICov DQo+ID4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBydGVfY3J5cHRvX3BhcmFt X3JhbmdlIGl2X3NpemU7DQo+ID4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgIC8qKjwgSW5p dGlhbGlzYXRpb24gdmVjdG9yIGRhdGEgc2l6ZSByYW5nZQ0KPiA+ID4gPiA+ICovDQo+ID4gPiA+ ID4gKyAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGJzZjsNCj4gPiA+ID4gPiArICAgICAg ICAgICAgICAgICAgICAgLyoqPCBCbG9jayBzaXplIGZsYWdzICovDQo+ID4gPiA+ID4gICAgICAg ICAgICAgICB9IGNpcGhlcjsNCj4gPiA+ID4gPiAgICAgICAgICAgICAgIC8qKjwgU3ltbWV0cmlj IENpcGhlciB0cmFuc2Zvcm0gY2FwYWJpbGl0aWVzICovDQo+ID4gPiA+ID4gICAgICAgICAgICAg ICBzdHJ1Y3Qgew0KPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gMS44LjMuMQ0KDQo=