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 D216EA0C47; Sun, 18 Jul 2021 09:53:46 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B68964069D; Sun, 18 Jul 2021 09:53:46 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mails.dpdk.org (Postfix) with ESMTP id 3EB7040683 for ; Sun, 18 Jul 2021 09:53:45 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10048"; a="190521226" X-IronPort-AV: E=Sophos;i="5.84,249,1620716400"; d="scan'208";a="190521226" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jul 2021 00:53:44 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,249,1620716400"; d="scan'208";a="429769988" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by fmsmga007.fm.intel.com with ESMTP; 18 Jul 2021 00:53:43 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Sun, 18 Jul 2021 00:53:42 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) 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.2242.10 via Frontend Transport; Sun, 18 Jul 2021 00:53:42 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.107) 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.2242.10; Sun, 18 Jul 2021 00:53:42 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gSbTXUDUGYcTkH0CFdnbEsVY1Qj7s01ne0EUL+lhnyc9ixklbhzE/RPDYi9GsTI05T1n4+Z9jZw9kKcYbsUExrVVv2ORLQjtfxPN6BZbDiKVxSi39KCxl9s8c6cr1y0xeFwNLcPIcL5eakmFGL2k2ThYKlqExYEl3UbY3vKGVd6K3IieajHxOtbXIoSixqtG/td4QNr2Vp84oY33qNwYSabEbZPFa5jc1aQ3uDMHMmcLyBNMKpqNX9hI/I6YtuUgWQe4vo8mIbkfsz/Fzx1d0tFVxLipBOupntefzCnSnv3OFc20Dmf6WP9DdoPEUfPmH58VR+Y3FDFqJoXJnQ0K9g== 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=1WOqyVqkyEEBJLRgo6FCRRbP20p2IeiM7lCWwqKhK2M=; b=mZPt8gALTHgj3V2G2VhioWEvwMYuLWtn7MogUshlT0wR8LiI2cbeAPZHWTCC1W1+x5RSS+XujvTMSwFFg9XEdLFrl2peDYlT9OSYe1+P10QrjvUKso5PdQUZj1FavKUoDhFLFfuW0KKfdEqIW3i21fHcqQLoUgXCCgrtpEZcqASUdHBuhK/3RmxvC0fDmrUQ1W71BxlTsOy/n5+uiJy41LcVmllYiCnFNGcGecILKnmGK47MwNRe8wo1aGVC4hYukMyxd7HhTCRbGQ2CkWvE7sanwLESfalzvsfxDaNCXnCEC4Rxinqdczs3GQIL1HVZmTRC/rTyMzVaXTOFM208OA== 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=1WOqyVqkyEEBJLRgo6FCRRbP20p2IeiM7lCWwqKhK2M=; b=KtuwRC331KkT2//bjNwKikwmVfJ4ue/1Oygnl4RI/5147wr7PcRul1gawvHqukpXmxq7zR9Jipej/6eB9c8M8PdYR5mKXhC64oyt/P5tIVwSclLEtOE2PUJnuWbnBs5S/tZhG5VZoe2cry8GSodGj73UoeYeu82a6cQog81B5hY= Received: from BYAPR11MB2901.namprd11.prod.outlook.com (2603:10b6:a03:91::23) by BY5PR11MB4273.namprd11.prod.outlook.com (2603:10b6:a03:1c9::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.21; Sun, 18 Jul 2021 07:53:40 +0000 Received: from BYAPR11MB2901.namprd11.prod.outlook.com ([fe80::ed38:9f6c:5670:83fe]) by BYAPR11MB2901.namprd11.prod.outlook.com ([fe80::ed38:9f6c:5670:83fe%7]) with mapi id 15.20.4331.031; Sun, 18 Jul 2021 07:53:39 +0000 From: "Xu, Rosen" To: "Yigit, Ferruh" , Jerin Jacob , "Li, Xiaoyun" , Ajit Khaparde , Somnath Kotur , Igor Russkikh , Pavel Belous , Somalapuram Amaranath , Rasesh Mody , Shahed Shaikh , "Chas Williams" , "Min Hu (Connor)" , "Nithin Dabilpuram" , Kiran Kumar K , Sunil Kumar Kori , Satha Rao , Rahul Lakkireddy , Hemant Agrawal , Sachin Saxena , "Wang, Haiyue" , "Marcin Wojtas" , Michal Krawczyk , Guy Tzalik , Evgeny Schemeilin , Igor Chauskin , Gagandeep Singh , "Daley, John" , Hyong Youb Kim , Gaetan Rivet , "Zhang, Qi Z" , "Wang, Xiao W" , Ziyang Xuan , Xiaoyun Wang , Guoyang Zhou , "Yisen Zhuang" , Lijun Ou , "Xing, Beilei" , "Wu, Jingjing" , "Yang, Qiming" , Andrew Boyer , Matan Azrad , Shahaf Shuler , Viacheslav Ovsiienko , Zyta Szpak , Liron Himi , Heinrich Kuhn , Harman Kalra , "Nalla Pradeep" , Radha Mohan Chintakuntla , Veerasenareddy Burru , "Devendra Singh Rawat" , Andrew Rybchenko , Maciej Czekaj , "Jiawen Wu" , Jian Wang , "Maxime Coquelin" , "Xia, Chenbo" , Yong Wang , "Ananyev, Konstantin" , "Nicolau, Radu" , Akhil Goyal , "Hunt, David" , "Mcnamara, John" , Thomas Monjalon CC: "dev@dpdk.org" Thread-Topic: [PATCH 4/4] ethdev: remove jumbo offload flag Thread-Index: AQHXdOgy8QEP3chw20WkuSpbtU1GxKtIadLw Date: Sun, 18 Jul 2021 07:53:39 +0000 Message-ID: References: <20210709172923.3369846-1-ferruh.yigit@intel.com> <20210709172923.3369846-4-ferruh.yigit@intel.com> In-Reply-To: <20210709172923.3369846-4-ferruh.yigit@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.5.1.3 dlp-reaction: no-action x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiOTc3ODQ3ODItMTAxNi00NGZmLWIxYzAtMGUxZjFjZTI5NTdiIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoidmN0Y2NzbWE3NHVWdGlmMGNQOCtuemdzVUJBZnJhaGNxdEtVUUhWNkRpMkduMUZ6cjhhdzNZc3FTekdqWG1FRiJ9 x-ctpclassification: CTP_NT authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a6bd6f47-997a-4390-c738-08d949c12805 x-ms-traffictypediagnostic: BY5PR11MB4273: 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:6790; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: HEh5DoAiJOaiV5UKZ6lBEaa16aut8LYlqPsaRbkSZPwx+FeJQR1Q31Nd4kg3Mhm74exUZg2cViPi1n3tfDUJ9HpqckRk/PMvN0cXHCDBGUG7Pk8HQ2cBUeqT8GtWu5TMDk8hiKscbrHJ36fBGKawxOOV2YJAwrhpuTh09mBlSYiDOGO80tjyjTnouNDrp2mkxSJADXtsY5byLgzrii1uOw+E2ie90gGWm18h/8q9lt5Q2RcTHRaiLqPoYGO+kQJk1kZSMmdN2VhibdkBMQk2IzIjmM91InZs13z6r2X0QdkNUNTzaPSnBEwLY4DUlmWJPpme+z1Z2d3tMg24MwA4HhtKoLxBY1cBYBQX22b/D1rN1AiDmNcVieTm2GKtFY7jxa0Ow8in16BMYd2hlLaLvr6lbtu1Nnh5Hy+pGgpp6OdvSV+XyQ0GaD7Huw88WD5h2HksT1Golr0qEZxUp4emR49fpDvGboP46K1ei6T8TUa/vR9mXXE+URd0eO0BviJGckyUS0J0DRTer4DU2N6JBlsCqHrrvcjTu67jJ4UTuJQwb5/al8bJ0jiOp004S4oLGn+vnLVUaHqh0lR3BjUQWs4F3J20TyQ7n4tQt9yFkKG3B5ijLueHDWV1ahgf+hxtQYQPlSXMAq1/uSuU1Wch2uOqAUZjgke5+vhIdXdGl0z+ZTLnYARpLZUIJtSsn+Ga1Nu3tuj7cPG+PUWhW+Vul5BuRncE4YX9zLv7SROTkNY= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR11MB2901.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(39860400002)(366004)(376002)(396003)(346002)(8676002)(2906002)(6506007)(38100700002)(5660300002)(9686003)(122000001)(55016002)(76116006)(64756008)(83380400001)(86362001)(66946007)(7406005)(30864003)(7366002)(7416002)(186003)(4326008)(66476007)(52536014)(26005)(7696005)(66446008)(53546011)(8936002)(71200400001)(478600001)(316002)(33656002)(66556008)(110136005)(1191002)(921005)(38070700004)(579004)(559001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ejIxY20wTzZ1T2NXNWFhWTQrQWJEVkxiWXhmMlFzZzdJWHRHczdSMmVieHd1?= =?utf-8?B?UW9SNG1DWndjVlZHY1A4czJpVFU2U1ptWmJPWUhNYndKalgyaFZXMnFpNDNm?= =?utf-8?B?eTNWWGN0enVpYWJ4QklDNjBteFFOMTZuWlRpNmhPcVZHTHFXc1VtbnJCWm5q?= =?utf-8?B?bWVZUVJYL3I5alliN20vWWRrcnU4WkF0YVJodUhpcVZxMUdQYnRZazYrYkJ5?= =?utf-8?B?eEFIZkpOZWdQQmZnV1BvWjZNTWo2bDFwQituWUd4STBrS2lCSWlsenFSYTJN?= =?utf-8?B?M0c0dGQyVTNaN0gxWGFmTTA2bG5jdlZzZ3pYTlk1eVJsczRHYUM1OEhsZm9X?= =?utf-8?B?ajFZb0JxdWh5RnpPWVhtakN1Yk5rbU9oTVJlK2hsNFp1YmNPaDN6QVVHRzA3?= =?utf-8?B?dkNXcWc2eXBzQXlDUUN1aU13SitJNUxKWlh5ZGJmcU02cUdtaWE1Rm5aSWoy?= =?utf-8?B?VE9ud3AvWTRLMnFpM0pSelpSUlYvK01wL01iM3J3UkxoZE1xZVM1VFlMWFpE?= =?utf-8?B?Z0hESVExaFlPa25qZ2FsbGtCUU11N2JramNyZDR6cmp5bWJKUk5zRFEzM3da?= =?utf-8?B?STlxTDhTRUVheGhpZkhLZDAwK3pRYkMxWmNvdWNDTFE2akgreGtUV2FNeXo5?= =?utf-8?B?cnlQVFRianVWMGgyQy8yM2FRRUkyV3crM3RqOG81TUF1dEJLRFRETWs1QVJl?= =?utf-8?B?Q0VLRzcwQUtEZWlBek5kUUNnKzhLL3FZNk0rTmtHZzRXZ0VrdVR2V2lkN1lR?= =?utf-8?B?YkdVQmovUzJNOEJSUThCQnlIb2hPU1gzTEFoMkZ6bXRaNTdVZFRsQnE4VHFL?= =?utf-8?B?TGFGVU1PY0pUUWp1YXZsVm1iVGtsSUVacDRFOElIMVBOOVZVb29KUzhMRnoz?= =?utf-8?B?eEFGdDBOcXRjbHJzdVBIVkovd1lDUjhaU1VTOThpRXZWTWZTbExvWTZkS29G?= =?utf-8?B?alNYejU0UGI2Mi9SK2hFaGhJa3FDNUh3TkxoWXJObkpkbXE1U1I0Mk5PSDJz?= =?utf-8?B?OExxMGxRTkRpZ1ZUWFdSQVdSaEp2QitkbTI4dXpRVFQ3aTA0cU51VEVUbHEx?= =?utf-8?B?QTZWK1FibUE1ZURvdTZZUHpJbWRLKzlYNVorOHk4NHU1aGMvNjhIbFhxRE5K?= =?utf-8?B?N0JCOFQvbFNDVWVYVDJEanNuWk9mZXpVSnd4eG9JMVZCSk1ZeFg4aU51d0pW?= =?utf-8?B?N0hwS3MraWJnZnphK3JNMlZsTkJpbjQ1dTB3S29ISkpYZENkTmNWcVRjWGta?= =?utf-8?B?NkFzOURDajZXank1WVcwY0tzREZRUkt6THRZTlFOT21sdkgzVG1hL0lialg0?= =?utf-8?B?OEJ6VlFOZURhZktpZU9iNHBEK3d3ZFV0b0xqQnF1ZXVoSVhaa3g5dGZ6QllE?= =?utf-8?B?NVJPK3duWklwQlFhL1FYVkNGd1doaVo5RUVQRHJmUW10ajVod0cxSmJEVys3?= =?utf-8?B?ZnZNRE8rTlczSnp0bFVldW5obkxsaXgrZk5BK3JHb0dmSU85Q0RGZExPZjdN?= =?utf-8?B?TlkxOVhDN3VoSzR5SmZKZFhLY2pFblg2bkNVRCszL3hyT1F1UTRhTno3aHUy?= =?utf-8?B?RWhqYVBpbHArOUlyTkIwY0VJekRYdjlEdld1SlZONVBUSHVubm15Unk2YmRI?= =?utf-8?B?bjMzRk1sOHA5UDg4TVlXV3B1dHJCOXhvQjEvVnFWY0dSdFRZUzhQL2dDU2dE?= =?utf-8?B?TE5rK3Nvc0tTL0YwT0xSWXp2d1ZwdXhEeW5ZSGxvZEJYT3lGcTZWaUJDdDBV?= =?utf-8?Q?7pqndB78fBW2zb64C4QXQT4ydjatugp5clS7xNK?= 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: BYAPR11MB2901.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a6bd6f47-997a-4390-c738-08d949c12805 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jul 2021 07:53:39.5390 (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: 7CFuiUS4jc4fUR9bro+6bBo2wq1Ju6vXR2dUBnJ2qV/mO0tmGotVLAlq92eprt0EZQr03nV1wADpIqxqPEhg1Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB4273 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH 4/4] ethdev: remove jumbo offload flag 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" SGksDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogWWlnaXQsIEZlcnJ1 aCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT4NCj4gU2VudDogU2F0dXJkYXksIEp1bHkgMTAsIDIw MjEgMToyOQ0KPiBUbzogSmVyaW4gSmFjb2IgPGplcmluakBtYXJ2ZWxsLmNvbT47IExpLCBYaWFv eXVuIDx4aWFveXVuLmxpQGludGVsLmNvbT47DQo+IEFqaXQgS2hhcGFyZGUgPGFqaXQua2hhcGFy ZGVAYnJvYWRjb20uY29tPjsgU29tbmF0aCBLb3R1cg0KPiA8c29tbmF0aC5rb3R1ckBicm9hZGNv bS5jb20+OyBJZ29yIFJ1c3NraWtoDQo+IDxpZ29yLnJ1c3NraWtoQGFxdWFudGlhLmNvbT47IFBh dmVsIEJlbG91cyA8cGF2ZWwuYmVsb3VzQGFxdWFudGlhLmNvbT47DQo+IFNvbWFsYXB1cmFtIEFt YXJhbmF0aCA8YXNvbWFsYXBAYW1kLmNvbT47IFJhc2VzaCBNb2R5DQo+IDxybW9keUBtYXJ2ZWxs LmNvbT47IFNoYWhlZCBTaGFpa2ggPHNoc2hhaWtoQG1hcnZlbGwuY29tPjsgQ2hhcw0KPiBXaWxs aWFtcyA8Y2hhczNAYXR0LmNvbT47IE1pbiBIdSAoQ29ubm9yKSA8aHVtaW4yOUBodWF3ZWkuY29t PjsNCj4gTml0aGluIERhYmlscHVyYW0gPG5kYWJpbHB1cmFtQG1hcnZlbGwuY29tPjsgS2lyYW4g S3VtYXIgSw0KPiA8a2lyYW5rdW1hcmtAbWFydmVsbC5jb20+OyBTdW5pbCBLdW1hciBLb3JpIDxz a29yaUBtYXJ2ZWxsLmNvbT47IFNhdGhhDQo+IFJhbyA8c2tvdGVzaHdhckBtYXJ2ZWxsLmNvbT47 IFJhaHVsIExha2tpcmVkZHkNCj4gPHJhaHVsLmxha2tpcmVkZHlAY2hlbHNpby5jb20+OyBIZW1h bnQgQWdyYXdhbA0KPiA8aGVtYW50LmFncmF3YWxAbnhwLmNvbT47IFNhY2hpbiBTYXhlbmEgPHNh Y2hpbi5zYXhlbmFAb3NzLm54cC5jb20+Ow0KPiBXYW5nLCBIYWl5dWUgPGhhaXl1ZS53YW5nQGlu dGVsLmNvbT47IE1hcmNpbiBXb2p0YXMNCj4gPG13QHNlbWloYWxmLmNvbT47IE1pY2hhbCBLcmF3 Y3p5ayA8bWtAc2VtaWhhbGYuY29tPjsgR3V5IFR6YWxpaw0KPiA8Z3R6YWxpa0BhbWF6b24uY29t PjsgRXZnZW55IFNjaGVtZWlsaW4gPGV2Z2VueXNAYW1hem9uLmNvbT47IElnb3INCj4gQ2hhdXNr aW4gPGlnb3JjaEBhbWF6b24uY29tPjsgR2FnYW5kZWVwIFNpbmdoIDxnLnNpbmdoQG54cC5jb20+ Ow0KPiBEYWxleSwgSm9obiA8am9obmRhbGVAY2lzY28uY29tPjsgSHlvbmcgWW91YiBLaW0gPGh5 b25raW1AY2lzY28uY29tPjsNCj4gR2FldGFuIFJpdmV0IDxncml2ZUB1MjU2Lm5ldD47IFpoYW5n LCBRaSBaIDxxaS56LnpoYW5nQGludGVsLmNvbT47IFdhbmcsDQo+IFhpYW8gVyA8eGlhby53Lndh bmdAaW50ZWwuY29tPjsgWml5YW5nIFh1YW4gPHh1YW56aXlhbmcyQGh1YXdlaS5jb20+Ow0KPiBY aWFveXVuIFdhbmcgPGNsb3VkLndhbmd4aWFveXVuQGh1YXdlaS5jb20+OyBHdW95YW5nIFpob3UN Cj4gPHpob3VndW95YW5nQGh1YXdlaS5jb20+OyBZaXNlbiBaaHVhbmcgPHlpc2VuLnpodWFuZ0Bo dWF3ZWkuY29tPjsNCj4gTGlqdW4gT3UgPG91bGlqdW5AaHVhd2VpLmNvbT47IFhpbmcsIEJlaWxl aSA8YmVpbGVpLnhpbmdAaW50ZWwuY29tPjsgV3UsDQo+IEppbmdqaW5nIDxqaW5namluZy53dUBp bnRlbC5jb20+OyBZYW5nLCBRaW1pbmcgPHFpbWluZy55YW5nQGludGVsLmNvbT47DQo+IEFuZHJl dyBCb3llciA8YWJveWVyQHBlbnNhbmRvLmlvPjsgWHUsIFJvc2VuIDxyb3Nlbi54dUBpbnRlbC5j b20+Ow0KPiBNYXRhbiBBenJhZCA8bWF0YW5AbnZpZGlhLmNvbT47IFNoYWhhZiBTaHVsZXIgPHNo YWhhZnNAbnZpZGlhLmNvbT47DQo+IFZpYWNoZXNsYXYgT3ZzaWllbmtvIDx2aWFjaGVzbGF2b0Bu dmlkaWEuY29tPjsgWnl0YSBTenBhaw0KPiA8enJAc2VtaWhhbGYuY29tPjsgTGlyb24gSGltaSA8 bGlyb25oQG1hcnZlbGwuY29tPjsgSGVpbnJpY2ggS3Vobg0KPiA8aGVpbnJpY2gua3VobkBuZXRy b25vbWUuY29tPjsgSGFybWFuIEthbHJhIDxoa2FscmFAbWFydmVsbC5jb20+Ow0KPiBOYWxsYSBQ cmFkZWVwIDxwbmFsbGFAbWFydmVsbC5jb20+OyBSYWRoYSBNb2hhbiBDaGludGFrdW50bGENCj4g PHJhZGhhY0BtYXJ2ZWxsLmNvbT47IFZlZXJhc2VuYXJlZGR5IEJ1cnJ1IDx2YnVycnVAbWFydmVs bC5jb20+Ow0KPiBEZXZlbmRyYSBTaW5naCBSYXdhdCA8ZHNpbmdocmF3YXRAbWFydmVsbC5jb20+ OyBBbmRyZXcgUnliY2hlbmtvDQo+IDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT47IE1h Y2llaiBDemVrYWogPG1jemVrYWpAbWFydmVsbC5jb20+Ow0KPiBKaWF3ZW4gV3UgPGppYXdlbnd1 QHRydXN0bmV0aWMuY29tPjsgSmlhbiBXYW5nDQo+IDxqaWFud2FuZ0B0cnVzdG5ldGljLmNvbT47 IE1heGltZSBDb3F1ZWxpbg0KPiA8bWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20+OyBYaWEsIENo ZW5ibyA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+Ow0KPiBZb25nIFdhbmcgPHlvbmd3YW5nQHZtd2Fy ZS5jb20+OyBBbmFueWV2LCBLb25zdGFudGluDQo+IDxrb25zdGFudGluLmFuYW55ZXZAaW50ZWwu Y29tPjsgTmljb2xhdSwgUmFkdSA8cmFkdS5uaWNvbGF1QGludGVsLmNvbT47DQo+IEFraGlsIEdv eWFsIDxnYWtoaWxAbWFydmVsbC5jb20+OyBIdW50LCBEYXZpZCA8ZGF2aWQuaHVudEBpbnRlbC5j b20+Ow0KPiBNY25hbWFyYSwgSm9obiA8am9obi5tY25hbWFyYUBpbnRlbC5jb20+OyBUaG9tYXMg TW9uamFsb24NCj4gPHRob21hc0Btb25qYWxvbi5uZXQ+DQo+IENjOiBZaWdpdCwgRmVycnVoIDxm ZXJydWgueWlnaXRAaW50ZWwuY29tPjsgZGV2QGRwZGsub3JnDQo+IFN1YmplY3Q6IFtQQVRDSCA0 LzRdIGV0aGRldjogcmVtb3ZlIGp1bWJvIG9mZmxvYWQgZmxhZw0KPiANCj4gUmVtb3ZpbmcgJ0RF Vl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FJyBvZmZsb2FkIGZsYWcuDQo+IA0KPiBJbnN0ZWFkIG9m IGRyaXZlcnMgYW5ub3VuY2UgdGhpcyBjYXBhYmlsaXR5LCBhcHBsaWNhdGlvbiBjYW4gZGVkdWN0 IHRoZQ0KPiBjYXBhYmlsaXR5IGJ5IGNoZWNraW5nIHJlcG9ydGVkICdkZXZfaW5mby5tYXhfbXR1 JyBvcg0KPiAnZGV2X2luZm8ubWF4X3J4X3BrdGxlbicuDQo+IA0KPiBBbmQgaW5zdGVhZCBvZiBh cHBsaWNhdGlvbiBleHBsaWNpdGx5IHNldCB0aGlzIGZsYWcgdG8gZW5hYmxlIGp1bWJvDQo+IGZy YW1lcywgdGhpcyBjYW4gYmUgZGVkdWN0ZWQgYnkgZHJpdmVyIGJ5IGNvbXBhcmluZyByZXF1ZXN0 ZWQgJ210dScgdG8NCj4gJ1JURV9FVEhFUl9NVFUnLg0KPiANCj4gUmVtb3ZpbmcgdGhpcyBhZGRp dGlvbmFsIGNvbmZpZ3VyYXRpb24gZm9yIHNpbXBsaWZpY2F0aW9uLg0KPiANCj4gU2lnbmVkLW9m Zi1ieTogRmVycnVoIFlpZ2l0IDxmZXJydWgueWlnaXRAaW50ZWwuY29tPg0KPiAtLS0NCj4gIGFw cC90ZXN0LWV2ZW50ZGV2L3Rlc3RfcGlwZWxpbmVfY29tbW9uLmMgICAgICB8ICAyIC0NCj4gIGFw cC90ZXN0LXBtZC9jbWRsaW5lLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstDQo+ICBh cHAvdGVzdC1wbWQvY29uZmlnLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAyNCArLS0tLS0t LS0tDQo+ICBhcHAvdGVzdC1wbWQvdGVzdHBtZC5jICAgICAgICAgICAgICAgICAgICAgICAgfCA0 NiArLS0tLS0tLS0tLS0tLS0tLS0tDQo+ICBhcHAvdGVzdC1wbWQvdGVzdHBtZC5oICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMiArLQ0KPiAgZG9jL2d1aWRlcy9ob3d0by9kZWJ1Z190cm91Ymxl c2hvb3QucnN0ICAgICAgIHwgIDIgLQ0KPiAgZG9jL2d1aWRlcy9uaWNzL2JueHQucnN0ICAgICAg ICAgICAgICAgICAgICAgIHwgIDEgLQ0KPiAgZG9jL2d1aWRlcy9uaWNzL2ZlYXR1cmVzLnJzdCAg ICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gIGRyaXZlcnMvbmV0L2F0bGFudGljL2F0bF9ldGhk ZXYuYyAgICAgICAgICAgICB8ICAxIC0NCj4gIGRyaXZlcnMvbmV0L2F4Z2JlL2F4Z2JlX2V0aGRl di5jICAgICAgICAgICAgICB8ICAxIC0NCj4gIGRyaXZlcnMvbmV0L2JueDJ4L2JueDJ4X2V0aGRl di5jICAgICAgICAgICAgICB8ICAxIC0NCj4gIGRyaXZlcnMvbmV0L2JueHQvYm54dC5oICAgICAg ICAgICAgICAgICAgICAgICB8ICAxIC0NCj4gIGRyaXZlcnMvbmV0L2JueHQvYm54dF9ldGhkZXYu YyAgICAgICAgICAgICAgICB8IDEwICstLS0NCj4gIGRyaXZlcnMvbmV0L2JvbmRpbmcvcnRlX2V0 aF9ib25kX3BtZC5jICAgICAgICB8ICA4IC0tLS0NCj4gIGRyaXZlcnMvbmV0L2NueGsvY254a19l dGhkZXYuaCAgICAgICAgICAgICAgICB8ICA1ICstDQo+ICBkcml2ZXJzL25ldC9jbnhrL2NueGtf ZXRoZGV2X29wcy5jICAgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJzL25ldC9jeGdiZS9jeGdi ZS5oICAgICAgICAgICAgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJzL25ldC9jeGdiZS9jeGdi ZV9ldGhkZXYuYyAgICAgICAgICAgICAgfCAgOCAtLS0tDQo+ICBkcml2ZXJzL25ldC9jeGdiZS9z Z2UuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgNSArLQ0KPiAgZHJpdmVycy9uZXQvZHBhYS9k cGFhX2V0aGRldi5jICAgICAgICAgICAgICAgIHwgIDIgLQ0KPiAgZHJpdmVycy9uZXQvZHBhYTIv ZHBhYTJfZXRoZGV2LmMgICAgICAgICAgICAgIHwgIDIgLQ0KPiAgZHJpdmVycy9uZXQvZTEwMDAv ZTEwMDBfZXRoZGV2LmggICAgICAgICAgICAgIHwgIDQgKy0NCj4gIGRyaXZlcnMvbmV0L2UxMDAw L2VtX2V0aGRldi5jICAgICAgICAgICAgICAgICB8ICA0ICstDQo+ICBkcml2ZXJzL25ldC9lMTAw MC9lbV9yeHR4LmMgICAgICAgICAgICAgICAgICAgfCAxOSArKystLS0tLQ0KPiAgZHJpdmVycy9u ZXQvZTEwMDAvaWdiX3J4dHguYyAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gIGRyaXZlcnMv bmV0L2VuYS9lbmFfZXRoZGV2LmMgICAgICAgICAgICAgICAgICB8ICAyIC0NCj4gIGRyaXZlcnMv bmV0L2VuZXRjL2VuZXRjX2V0aGRldi5jICAgICAgICAgICAgICB8ICAzICstDQo+ICBkcml2ZXJz L25ldC9lbmljL2VuaWNfcmVzLmMgICAgICAgICAgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJz L25ldC9mYWlsc2FmZS9mYWlsc2FmZV9vcHMuYyAgICAgICAgICAgfCAgMiAtDQo+ICBkcml2ZXJz L25ldC9mbTEway9mbTEwa19ldGhkZXYuYyAgICAgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJz L25ldC9oaW5pYy9oaW5pY19wbWRfZXRoZGV2LmMgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJz L25ldC9obnMzL2huczNfZXRoZGV2LmMgICAgICAgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJz L25ldC9obnMzL2huczNfZXRoZGV2X3ZmLmMgICAgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2LmMgICAgICAgICAgICAgICAgfCAgMSAtDQo+ICBkcml2ZXJz L25ldC9pNDBlL2k0MGVfZXRoZGV2X3ZmLmMgICAgICAgICAgICAgfCAgMyArLQ0KPiAgZHJpdmVy cy9uZXQvaTQwZS9pNDBlX3J4dHguYyAgICAgICAgICAgICAgICAgIHwgIDIgKy0NCj4gIGRyaXZl cnMvbmV0L2lhdmYvaWF2Zl9ldGhkZXYuYyAgICAgICAgICAgICAgICB8ICAzICstDQo+ICBkcml2 ZXJzL25ldC9pY2UvaWNlX2RjZl9ldGhkZXYuYyAgICAgICAgICAgICAgfCAgMyArLQ0KPiAgZHJp dmVycy9uZXQvaWNlL2ljZV9kY2ZfdmZfcmVwcmVzZW50b3IuYyAgICAgIHwgIDEgLQ0KPiAgZHJp dmVycy9uZXQvaWNlL2ljZV9ldGhkZXYuYyAgICAgICAgICAgICAgICAgIHwgIDEgLQ0KPiAgZHJp dmVycy9uZXQvaWNlL2ljZV9yeHR4LmMgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0NCj4gIGRy aXZlcnMvbmV0L2lnYy9pZ2NfZXRoZGV2LmggICAgICAgICAgICAgICAgICB8ICAxIC0NCj4gIGRy aXZlcnMvbmV0L2lnYy9pZ2NfdHhyeC5jICAgICAgICAgICAgICAgICAgICB8ICAyICstDQo+ICBk cml2ZXJzL25ldC9pb25pYy9pb25pY19ldGhkZXYuYyAgICAgICAgICAgICAgfCAgMSAtDQo+ICBk cml2ZXJzL25ldC9pcG4za2UvaXBuM2tlX3JlcHJlc2VudG9yLmMgICAgICAgfCAgMyArLQ0KPiAg ZHJpdmVycy9uZXQvaXhnYmUvaXhnYmVfZXRoZGV2LmMgICAgICAgICAgICAgIHwgIDUgKy0NCj4g IGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX3BmLmMgICAgICAgICAgICAgICAgICB8ICA5ICstLS0N Cj4gIGRyaXZlcnMvbmV0L2l4Z2JlL2l4Z2JlX3J4dHguYyAgICAgICAgICAgICAgICB8ICAzICst DQo+ICBkcml2ZXJzL25ldC9tbHg0L21seDRfcnhxLmMgICAgICAgICAgICAgICAgICAgfCAgMSAt DQo+ICBkcml2ZXJzL25ldC9tbHg1L21seDVfcnhxLmMgICAgICAgICAgICAgICAgICAgfCAgMSAt DQo+ICBkcml2ZXJzL25ldC9tdm5ldGEvbXZuZXRhX2V0aGRldi5oICAgICAgICAgICAgfCAgMyAr LQ0KPiAgZHJpdmVycy9uZXQvbXZwcDIvbXJ2bF9ldGhkZXYuYyAgICAgICAgICAgICAgIHwgIDEg LQ0KPiAgZHJpdmVycy9uZXQvbmZwL25mcF9uZXQuYyAgICAgICAgICAgICAgICAgICAgIHwgIDYg Ky0tDQo+ICBkcml2ZXJzL25ldC9vY3Rlb250eC9vY3Rlb250eF9ldGhkZXYuaCAgICAgICAgfCAg MSAtDQo+ICBkcml2ZXJzL25ldC9vY3Rlb250eDIvb3R4Ml9ldGhkZXYuaCAgICAgICAgICAgfCAg MSAtDQo+ICBkcml2ZXJzL25ldC9vY3Rlb250eF9lcC9vdHhfZXBfZXRoZGV2LmMgICAgICAgfCAg MyArLQ0KPiAgZHJpdmVycy9uZXQvb2N0ZW9udHhfZXAvb3R4X2VwX3J4dHguYyAgICAgICAgIHwg IDYgLS0tDQo+ICBkcml2ZXJzL25ldC9xZWRlL3FlZGVfZXRoZGV2LmMgICAgICAgICAgICAgICAg fCAgMSAtDQo+ICBkcml2ZXJzL25ldC9zZmMvc2ZjX3J4LmMgICAgICAgICAgICAgICAgICAgICAg fCAgMiAtDQo+ICBkcml2ZXJzL25ldC90aHVuZGVyeC9uaWN2Zl9ldGhkZXYuaCAgICAgICAgICAg fCAgMSAtDQo+ICBkcml2ZXJzL25ldC90eGdiZS90eGdiZV9yeHR4LmMgICAgICAgICAgICAgICAg fCAgMSAtDQo+ICBkcml2ZXJzL25ldC92aXJ0aW8vdmlydGlvX2V0aGRldi5jICAgICAgICAgICAg fCAgMSAtDQo+ICBkcml2ZXJzL25ldC92bXhuZXQzL3ZteG5ldDNfZXRoZGV2LmMgICAgICAgICAg fCAgMSAtDQo+ICBleGFtcGxlcy9pcF9mcmFnbWVudGF0aW9uL21haW4uYyAgICAgICAgICAgICAg fCAgMyArLQ0KPiAgZXhhbXBsZXMvaXBfcmVhc3NlbWJseS9tYWluLmMgICAgICAgICAgICAgICAg IHwgIDMgKy0NCj4gIGV4YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2VjLXNlY2d3LmMgICAgICAgICAg ICB8ICAyIC0NCj4gIGV4YW1wbGVzL2lwdjRfbXVsdGljYXN0L21haW4uYyAgICAgICAgICAgICAg ICB8ICAxIC0NCj4gIGV4YW1wbGVzL2tuaS9tYWluLmMgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICA1IC0tDQo+ICBleGFtcGxlcy9sM2Z3ZC1hY2wvbWFpbi5jICAgICAgICAgICAgICAgICAg ICAgfCAgMiAtDQo+ICBleGFtcGxlcy9sM2Z3ZC1ncmFwaC9tYWluLmMgICAgICAgICAgICAgICAg ICAgfCAgMSAtDQo+ICBleGFtcGxlcy9sM2Z3ZC1wb3dlci9tYWluLmMgICAgICAgICAgICAgICAg ICAgfCAgMiAtDQo+ICBleGFtcGxlcy9sM2Z3ZC9tYWluLmMgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMSAtDQo+ICAuLi4vcGVyZm9ybWFuY2UtdGhyZWFkL2wzZndkLXRocmVhZC9tYWluLmMg ICAgfCAgMiAtDQo+ICBleGFtcGxlcy92aG9zdC9tYWluLmMgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMiAtDQo+ICBsaWIvZXRoZGV2L3J0ZV9ldGhkZXYuYyAgICAgICAgICAgICAgICAgICAg ICAgfCAyNiArLS0tLS0tLS0tLQ0KPiAgbGliL2V0aGRldi9ydGVfZXRoZGV2LmggICAgICAgICAg ICAgICAgICAgICAgIHwgIDEgLQ0KPiAgNzYgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygr KSwgMjUwIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL2FwcC90ZXN0LWV2ZW50ZGV2 L3Rlc3RfcGlwZWxpbmVfY29tbW9uLmMgYi9hcHAvdGVzdC0NCj4gZXZlbnRkZXYvdGVzdF9waXBl bGluZV9jb21tb24uYw0KPiBpbmRleCA1ZmNlYTc0YjRkNDMuLjI3NzVlNzJjNTgwZCAxMDA2NDQN Cj4gLS0tIGEvYXBwL3Rlc3QtZXZlbnRkZXYvdGVzdF9waXBlbGluZV9jb21tb24uYw0KPiArKysg Yi9hcHAvdGVzdC1ldmVudGRldi90ZXN0X3BpcGVsaW5lX2NvbW1vbi5jDQo+IEBAIC0xOTksOCAr MTk5LDYgQEAgcGlwZWxpbmVfZXRoZGV2X3NldHVwKHN0cnVjdCBldnRfdGVzdCAqdGVzdCwgc3Ry dWN0DQo+IGV2dF9vcHRpb25zICpvcHQpDQo+IA0KPiAgCXBvcnRfY29uZi5yeG1vZGUubXR1ID0g b3B0LT5tYXhfcGt0X3N6IC0gUlRFX0VUSEVSX0hEUl9MRU4gLQ0KPiAgCQlSVEVfRVRIRVJfQ1JD X0xFTjsNCj4gLQlpZiAocG9ydF9jb25mLnJ4bW9kZS5tdHUgPiBSVEVfRVRIRVJfTVRVKQ0KPiAt CQlwb3J0X2NvbmYucnhtb2RlLm9mZmxvYWRzIHw9DQo+IERFVl9SWF9PRkZMT0FEX0pVTUJPX0ZS QU1FOw0KPiANCj4gIAl0LT5pbnRlcm5hbF9wb3J0ID0gMTsNCj4gIAlSVEVfRVRIX0ZPUkVBQ0hf REVWKGkpIHsNCj4gZGlmZiAtLWdpdCBhL2FwcC90ZXN0LXBtZC9jbWRsaW5lLmMgYi9hcHAvdGVz dC1wbWQvY21kbGluZS5jDQo+IGluZGV4IDhiZGMwNDJmNmU4ZS4uYzBiNjEzMmQ2NGU4IDEwMDY0 NA0KPiAtLS0gYS9hcHAvdGVzdC1wbWQvY21kbGluZS5jDQo+ICsrKyBiL2FwcC90ZXN0LXBtZC9j bWRsaW5lLmMNCj4gQEAgLTE5MjEsNyArMTkyMSw3IEBAIGNtZF9jb25maWdfbWF4X3BrdF9sZW5f cGFyc2VkKHZvaWQNCj4gKnBhcnNlZF9yZXN1bHQsDQo+ICAJCQlyZXR1cm47DQo+ICAJCX0NCj4g DQo+IC0JCXVwZGF0ZV9qdW1ib19mcmFtZV9vZmZsb2FkKHBvcnRfaWQsIHJlcy0+dmFsdWUpOw0K PiArCQl1cGRhdGVfbXR1X2Zyb21fZnJhbWVfc2l6ZShwb3J0X2lkLCByZXMtPnZhbHVlKTsNCj4g IAl9DQo+IA0KPiAgCWluaXRfcG9ydF9jb25maWcoKTsNCj4gZGlmZiAtLWdpdCBhL2FwcC90ZXN0 LXBtZC9jb25maWcuYyBiL2FwcC90ZXN0LXBtZC9jb25maWcuYw0KPiBpbmRleCBhODcyNjVkNzYz OGIuLjIzYTQ4NTU3YjY3NiAxMDA2NDQNCj4gLS0tIGEvYXBwL3Rlc3QtcG1kL2NvbmZpZy5jDQo+ ICsrKyBiL2FwcC90ZXN0LXBtZC9jb25maWcuYw0KPiBAQCAtMTEzNiwzOSArMTEzNiwxOSBAQCBw b3J0X3JlZ19zZXQocG9ydGlkX3QgcG9ydF9pZCwgdWludDMyX3QgcmVnX29mZiwNCj4gdWludDMy X3QgcmVnX3YpDQo+ICB2b2lkDQo+ICBwb3J0X210dV9zZXQocG9ydGlkX3QgcG9ydF9pZCwgdWlu dDE2X3QgbXR1KQ0KPiAgew0KPiArCXN0cnVjdCBydGVfcG9ydCAqcG9ydCA9ICZwb3J0c1twb3J0 X2lkXTsNCj4gIAlpbnQgZGlhZzsNCj4gLQlzdHJ1Y3QgcnRlX3BvcnQgKnJ0ZV9wb3J0ID0gJnBv cnRzW3BvcnRfaWRdOw0KPiAtCXN0cnVjdCBydGVfZXRoX2Rldl9pbmZvIGRldl9pbmZvOw0KPiAt CWludCByZXQ7DQo+IA0KPiAgCWlmIChwb3J0X2lkX2lzX2ludmFsaWQocG9ydF9pZCwgRU5BQkxF RF9XQVJOKSkNCj4gIAkJcmV0dXJuOw0KPiANCj4gLQlyZXQgPSBldGhfZGV2X2luZm9fZ2V0X3By aW50X2Vycihwb3J0X2lkLCAmZGV2X2luZm8pOw0KPiAtCWlmIChyZXQgIT0gMCkNCj4gLQkJcmV0 dXJuOw0KPiAtDQo+IC0JaWYgKG10dSA+IGRldl9pbmZvLm1heF9tdHUgfHwgbXR1IDwgZGV2X2lu Zm8ubWluX210dSkgew0KPiAtCQlwcmludGYoIlNldCBNVFUgZmFpbGVkLiBNVFU6JXUgaXMgbm90 IGluIHZhbGlkIHJhbmdlLCBtaW46JXUNCj4gLSBtYXg6JXVcbiIsDQo+IC0JCQltdHUsIGRldl9p bmZvLm1pbl9tdHUsIGRldl9pbmZvLm1heF9tdHUpOw0KPiAtCQlyZXR1cm47DQo+IC0JfQ0KPiAg CWRpYWcgPSBydGVfZXRoX2Rldl9zZXRfbXR1KHBvcnRfaWQsIG10dSk7DQo+ICAJaWYgKGRpYWcp IHsNCj4gIAkJcHJpbnRmKCJTZXQgTVRVIGZhaWxlZC4gZGlhZz0lZFxuIiwgZGlhZyk7DQo+ICAJ CXJldHVybjsNCj4gIAl9DQo+IA0KPiAtCXJ0ZV9wb3J0LT5kZXZfY29uZi5yeG1vZGUubXR1ID0g bXR1Ow0KPiAtDQo+IC0JaWYgKGRldl9pbmZvLnJ4X29mZmxvYWRfY2FwYSAmIERFVl9SWF9PRkZM T0FEX0pVTUJPX0ZSQU1FKQ0KPiB7DQo+IC0JCWlmIChtdHUgPiBSVEVfRVRIRVJfTVRVKSB7DQo+ IC0JCQlydGVfcG9ydC0+ZGV2X2NvbmYucnhtb2RlLm9mZmxvYWRzIHw9DQo+IC0NCj4gCURFVl9S WF9PRkZMT0FEX0pVTUJPX0ZSQU1FOw0KPiAtCQl9IGVsc2UNCj4gLQkJCXJ0ZV9wb3J0LT5kZXZf Y29uZi5yeG1vZGUub2ZmbG9hZHMgJj0NCj4gLQ0KPiAJfkRFVl9SWF9PRkZMT0FEX0pVTUJPX0ZS QU1FOw0KPiAtCX0NCj4gKwlwb3J0LT5kZXZfY29uZi5yeG1vZGUubXR1ID0gbXR1Ow0KPiAgfQ0K PiANCj4gIC8qIEdlbmVyaWMgZmxvdyBtYW5hZ2VtZW50IGZ1bmN0aW9ucy4gKi8NCj4gZGlmZiAt LWdpdCBhL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmMgYi9hcHAvdGVzdC1wbWQvdGVzdHBtZC5jDQo+ IGluZGV4IDJjNzljYWUwNTY2NC4uOTJmZWFkZWZhYjU5IDEwMDY0NA0KPiAtLS0gYS9hcHAvdGVz dC1wbWQvdGVzdHBtZC5jDQo+ICsrKyBiL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmMNCj4gQEAgLTE0 NzMsMTEgKzE0NzMsNiBAQCBpbml0X2NvbmZpZyh2b2lkKQ0KPiAgCQkJcnRlX2V4aXQoRVhJVF9G QUlMVVJFLA0KPiAgCQkJCSAicnRlX2V0aF9kZXZfaW5mb19nZXQoKSBmYWlsZWRcbiIpOw0KPiAN Cj4gLQkJcmV0ID0gdXBkYXRlX2p1bWJvX2ZyYW1lX29mZmxvYWQocGlkLCAwKTsNCj4gLQkJaWYg KHJldCAhPSAwKQ0KPiAtCQkJcHJpbnRmKCJVcGRhdGluZyBqdW1ibyBmcmFtZSBvZmZsb2FkIGZh aWxlZCBmb3INCj4gcG9ydCAldVxuIiwNCj4gLQkJCQlwaWQpOw0KPiAtDQo+ICAJCWlmICghKHBv cnQtPmRldl9pbmZvLnR4X29mZmxvYWRfY2FwYSAmDQo+ICAJCSAgICAgIERFVl9UWF9PRkZMT0FE X01CVUZfRkFTVF9GUkVFKSkNCj4gIAkJCXBvcnQtPmRldl9jb25mLnR4bW9kZS5vZmZsb2FkcyAm PQ0KPiBAQCAtMzM2NCwyNCArMzM1OSwxOCBAQCByeHR4X3BvcnRfY29uZmlnKHN0cnVjdCBydGVf cG9ydCAqcG9ydCkNCj4gIH0NCj4gDQo+ICAvKg0KPiAtICogSGVscGVyIGZ1bmN0aW9uIHRvIGFy cmFuZ2UgbWF4X3J4X3BrdGxlbiB2YWx1ZSBhbmQgSlVNQk9fRlJBTUUNCj4gb2ZmbG9hZCwNCj4g LSAqIE1UVSBpcyBhbHNvIGFsaWduZWQuDQo+ICsgKiBIZWxwZXIgZnVuY3Rpb24gdG8gc2V0IE1U VSBmcm9tIGZyYW1lIHNpemUNCj4gICAqDQo+ICAgKiBwb3J0LT5kZXZfaW5mbyBzaG91bGQgYmUg c2V0IGJlZm9yZSBjYWxsaW5nIHRoaXMgZnVuY3Rpb24uDQo+ICAgKg0KPiAtICogaWYgJ21heF9y eF9wa3RsZW4nIGlzIHplcm8sIGl0IGlzIHNldCB0byBjdXJyZW50IGRldmljZSB2YWx1ZSwgIk1U VSArDQo+IC0gKiBFVEhfT1ZFUkhFQUQiLiBUaGlzIGlzIHVzZWZ1bCB0byB1cGRhdGUgZmxhZ3Mg YnV0IG5vdCBNVFUgdmFsdWUuDQo+IC0gKg0KPiAgICogcmV0dXJuIDAgb24gc3VjY2VzcywgbmVn YXRpdmUgb24gZXJyb3INCj4gICAqLw0KPiAgaW50DQo+IC11cGRhdGVfanVtYm9fZnJhbWVfb2Zm bG9hZChwb3J0aWRfdCBwb3J0aWQsIHVpbnQzMl90IG1heF9yeF9wa3RsZW4pDQo+ICt1cGRhdGVf bXR1X2Zyb21fZnJhbWVfc2l6ZShwb3J0aWRfdCBwb3J0aWQsIHVpbnQzMl90IG1heF9yeF9wa3Rs ZW4pDQo+ICB7DQo+ICAJc3RydWN0IHJ0ZV9wb3J0ICpwb3J0ID0gJnBvcnRzW3BvcnRpZF07DQo+ ICAJdWludDMyX3QgZXRoX292ZXJoZWFkOw0KPiAtCXVpbnQ2NF90IHJ4X29mZmxvYWRzOw0KPiAg CXVpbnQxNl90IG10dSwgbmV3X210dTsNCj4gLQlib29sIG9uOw0KPiANCj4gIAlldGhfb3Zlcmhl YWQgPSBnZXRfZXRoX292ZXJoZWFkKCZwb3J0LT5kZXZfaW5mbyk7DQo+IA0KPiBAQCAtMzM5MCwz OSArMzM3OSw4IEBAIHVwZGF0ZV9qdW1ib19mcmFtZV9vZmZsb2FkKHBvcnRpZF90IHBvcnRpZCwN Cj4gdWludDMyX3QgbWF4X3J4X3BrdGxlbikNCj4gIAkJcmV0dXJuIC0xOw0KPiAgCX0NCj4gDQo+ IC0JaWYgKG1heF9yeF9wa3RsZW4gPT0gMCkNCj4gLQkJbWF4X3J4X3BrdGxlbiA9IG10dSArIGV0 aF9vdmVyaGVhZDsNCj4gLQ0KPiAtCXJ4X29mZmxvYWRzID0gcG9ydC0+ZGV2X2NvbmYucnhtb2Rl Lm9mZmxvYWRzOw0KPiAgCW5ld19tdHUgPSBtYXhfcnhfcGt0bGVuIC0gZXRoX292ZXJoZWFkOw0K PiANCj4gLQlpZiAobmV3X210dSA8PSBSVEVfRVRIRVJfTVRVKSB7DQo+IC0JCXJ4X29mZmxvYWRz ICY9IH5ERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRTsNCj4gLQkJb24gPSBmYWxzZTsNCj4gLQl9 IGVsc2Ugew0KPiAtCQlpZiAoKHBvcnQtPmRldl9pbmZvLnJ4X29mZmxvYWRfY2FwYSAmDQo+IERF Vl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FKSA9PSAwKSB7DQo+IC0JCQlwcmludGYoIkZyYW1lIHNp emUgKCV1KSBpcyBub3Qgc3VwcG9ydGVkIGJ5DQo+IHBvcnQgJXVcbiIsDQo+IC0JCQkJbWF4X3J4 X3BrdGxlbiwgcG9ydGlkKTsNCj4gLQkJCXJldHVybiAtMTsNCj4gLQkJfQ0KPiAtCQlyeF9vZmZs b2FkcyB8PSBERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRTsNCj4gLQkJb24gPSB0cnVlOw0KPiAt CX0NCj4gLQ0KPiAtCWlmIChyeF9vZmZsb2FkcyAhPSBwb3J0LT5kZXZfY29uZi5yeG1vZGUub2Zm bG9hZHMpIHsNCj4gLQkJdWludDE2X3QgcWlkOw0KPiAtDQo+IC0JCXBvcnQtPmRldl9jb25mLnJ4 bW9kZS5vZmZsb2FkcyA9IHJ4X29mZmxvYWRzOw0KPiAtDQo+IC0JCS8qIEFwcGx5IEpVTUJPX0ZS QU1FIG9mZmxvYWQgY29uZmlndXJhdGlvbiB0byBSeCBxdWV1ZShzKQ0KPiAqLw0KPiAtCQlmb3Ig KHFpZCA9IDA7IHFpZCA8IHBvcnQtPmRldl9pbmZvLm5iX3J4X3F1ZXVlczsgcWlkKyspIHsNCj4g LQkJCWlmIChvbikNCj4gLQkJCQlwb3J0LT5yeF9jb25mW3FpZF0ub2ZmbG9hZHMgfD0NCj4gREVW X1JYX09GRkxPQURfSlVNQk9fRlJBTUU7DQo+IC0JCQllbHNlDQo+IC0JCQkJcG9ydC0+cnhfY29u ZltxaWRdLm9mZmxvYWRzICY9DQo+IH5ERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRTsNCj4gLQkJ fQ0KPiAtCX0NCj4gLQ0KPiAgCWlmIChtdHUgPT0gbmV3X210dSkNCj4gIAkJcmV0dXJuIDA7DQo+ IA0KPiBkaWZmIC0tZ2l0IGEvYXBwL3Rlc3QtcG1kL3Rlc3RwbWQuaCBiL2FwcC90ZXN0LXBtZC90 ZXN0cG1kLmgNCj4gaW5kZXggNDIxNDNmODU5MjRmLi5iOTRiZjY2OGRjNGQgMTAwNjQ0DQo+IC0t LSBhL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmgNCj4gKysrIGIvYXBwL3Rlc3QtcG1kL3Rlc3RwbWQu aA0KPiBAQCAtMTAxMiw3ICsxMDEyLDcgQEAgdWludDE2X3QgdHhfcGt0X3NldF9keW5mKHVpbnQx Nl90IHBvcnRfaWQsDQo+IF9fcnRlX3VudXNlZCB1aW50MTZfdCBxdWV1ZSwNCj4gIAkJCSBfX3J0 ZV91bnVzZWQgdm9pZCAqdXNlcl9wYXJhbSk7DQo+ICB2b2lkIGFkZF90eF9keW5mX2NhbGxiYWNr KHBvcnRpZF90IHBvcnRpZCk7DQo+ICB2b2lkIHJlbW92ZV90eF9keW5mX2NhbGxiYWNrKHBvcnRp ZF90IHBvcnRpZCk7DQo+IC1pbnQgdXBkYXRlX2p1bWJvX2ZyYW1lX29mZmxvYWQocG9ydGlkX3Qg cG9ydGlkLCB1aW50MzJfdCBtYXhfcnhfcGt0bGVuKTsNCj4gK2ludCB1cGRhdGVfbXR1X2Zyb21f ZnJhbWVfc2l6ZShwb3J0aWRfdCBwb3J0aWQsIHVpbnQzMl90DQo+IG1heF9yeF9wa3RsZW4pOw0K PiANCj4gIC8qDQo+ICAgKiBXb3JrLWFyb3VuZCBvZiBhIGNvbXBpbGF0aW9uIGVycm9yIHdpdGgg SUNDIG9uIGludm9jYXRpb25zIG9mIHRoZQ0KPiBkaWZmIC0tZ2l0IGEvZG9jL2d1aWRlcy9ob3d0 by9kZWJ1Z190cm91Ymxlc2hvb3QucnN0DQo+IGIvZG9jL2d1aWRlcy9ob3d0by9kZWJ1Z190cm91 Ymxlc2hvb3QucnN0DQo+IGluZGV4IDQ1N2FjNDQxNDI5YS4uZGY2OWZhOGJjYzI0IDEwMDY0NA0K PiAtLS0gYS9kb2MvZ3VpZGVzL2hvd3RvL2RlYnVnX3Ryb3VibGVzaG9vdC5yc3QNCj4gKysrIGIv ZG9jL2d1aWRlcy9ob3d0by9kZWJ1Z190cm91Ymxlc2hvb3QucnN0DQo+IEBAIC03MSw4ICs3MSw2 IEBAIFJYIFBvcnQgYW5kIGFzc29jaWF0ZWQgY29yZSA6bnVtcmVmOmBkdGdfcnhfcmF0ZWAuDQo+ ICAgICAqIElkZW50aWZ5IGlmIHBvcnQgU3BlZWQgYW5kIER1cGxleCBpcyBtYXRjaGluZyB0byBk ZXNpcmVkIHZhbHVlcyB3aXRoDQo+ICAgICAgIGBgcnRlX2V0aF9saW5rX2dldGBgLg0KPiANCj4g LSAgICogQ2hlY2sgYGBERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRWBgIGlzIHNldCB3aXRoDQo+ IGBgcnRlX2V0aF9kZXZfaW5mb19nZXRgYC4NCj4gLQ0KPiAgICAgKiBDaGVjayBwcm9taXNjdW91 cyBtb2RlIGlmIHRoZSBkcm9wcyBkbyBub3Qgb2NjdXIgZm9yIHVuaXF1ZSBNQUMNCj4gYWRkcmVz cw0KPiAgICAgICB3aXRoIGBgcnRlX2V0aF9wcm9taXNjdW91c19nZXRgYC4NCj4gDQo+IGRpZmYg LS1naXQgYS9kb2MvZ3VpZGVzL25pY3MvYm54dC5yc3QgYi9kb2MvZ3VpZGVzL25pY3MvYm54dC5y c3QNCj4gaW5kZXggZmViMGM2YTc2NTdhLi5lNmYxNjI4NDAyZmMgMTAwNjQ0DQo+IC0tLSBhL2Rv Yy9ndWlkZXMvbmljcy9ibnh0LnJzdA0KPiArKysgYi9kb2MvZ3VpZGVzL25pY3MvYm54dC5yc3QN Cj4gQEAgLTg4Niw3ICs4ODYsNiBAQCBwcm9jZXNzaW5nLiBUaGlzIGltcHJvdmVkIHBlcmZvcm1h bmNlIGlzIGRlcml2ZWQNCj4gZnJvbSBhIG51bWJlciBvZiBvcHRpbWl6YXRpb25zOg0KPiANCj4g ICAgIMKgICAgREVWX1JYX09GRkxPQURfVkxBTl9TVFJJUA0KPiAgICAgwqAgICBERVZfUlhfT0ZG TE9BRF9LRUVQX0NSQw0KPiAtICAgwqAgICBERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRQ0KPiAg ICAgwqAgICBERVZfUlhfT0ZGTE9BRF9JUFY0X0NLU1VNDQo+ICAgICDCoCAgIERFVl9SWF9PRkZM T0FEX1VEUF9DS1NVTQ0KPiAgICAgwqAgICBERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0NCj4gZGlm ZiAtLWdpdCBhL2RvYy9ndWlkZXMvbmljcy9mZWF0dXJlcy5yc3QgYi9kb2MvZ3VpZGVzL25pY3Mv ZmVhdHVyZXMucnN0DQo+IGluZGV4IGM5ODI0MmYzYjcyZi4uYTA3N2MzMDY0NGQyIDEwMDY0NA0K PiAtLS0gYS9kb2MvZ3VpZGVzL25pY3MvZmVhdHVyZXMucnN0DQo+ICsrKyBiL2RvYy9ndWlkZXMv bmljcy9mZWF0dXJlcy5yc3QNCj4gQEAgLTE2NSw4ICsxNjUsNyBAQCBKdW1ibyBmcmFtZQ0KPiAN Cj4gIFN1cHBvcnRzIFJ4IGp1bWJvIGZyYW1lcy4NCj4gDQo+IC0qICoqW3VzZXNdICAgIHJ0ZV9l dGhfcnhjb25mLHJ0ZV9ldGhfcnhtb2RlKio6DQo+IGBgb2ZmbG9hZHM6REVWX1JYX09GRkxPQURf SlVNQk9fRlJBTUVgYC4NCj4gLSAgYGBkZXZfY29uZi5yeG1vZGUubXR1YGAuDQo+ICsqICoqW3Vz ZXNdICAgIHJ0ZV9ldGhfcnhjb25mLHJ0ZV9ldGhfcnhtb2RlKio6IGBgZGV2X2NvbmYucnhtb2Rl Lm10dWBgLg0KPiAgKiAqKltyZWxhdGVkXSBydGVfZXRoX2Rldl9pbmZvKio6IGBgbWF4X3J4X3Br dGxlbmBgLg0KPiAgKiAqKltyZWxhdGVkXSBBUEkqKjogYGBydGVfZXRoX2Rldl9zZXRfbXR1KClg YC4NCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9hdGxhbnRpYy9hdGxfZXRoZGV2LmMN Cj4gYi9kcml2ZXJzL25ldC9hdGxhbnRpYy9hdGxfZXRoZGV2LmMNCj4gaW5kZXggM2Y2NTRjMDcx NTY2Li41YTE5OGY1M2ZjZTcgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2F0bGFudGljL2F0 bF9ldGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9hdGxhbnRpYy9hdGxfZXRoZGV2LmMNCj4g QEAgLTE1OCw3ICsxNTgsNiBAQCBzdGF0aWMgc3RydWN0IHJ0ZV9wY2lfZHJpdmVyIHJ0ZV9hdGxf cG1kID0gew0KPiAgCQkJfCBERVZfUlhfT0ZGTE9BRF9JUFY0X0NLU1VNIFwNCj4gIAkJCXwgREVW X1JYX09GRkxPQURfVURQX0NLU1VNIFwNCj4gIAkJCXwgREVWX1JYX09GRkxPQURfVENQX0NLU1VN IFwNCj4gLQkJCXwgREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUgXA0KPiAgCQkJfCBERVZfUlhf T0ZGTE9BRF9NQUNTRUNfU1RSSVAgXA0KPiAgCQkJfCBERVZfUlhfT0ZGTE9BRF9WTEFOX0ZJTFRF UikNCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9heGdiZS9heGdiZV9ldGhkZXYuYw0K PiBiL2RyaXZlcnMvbmV0L2F4Z2JlL2F4Z2JlX2V0aGRldi5jDQo+IGluZGV4IGMzNmNkN2IxZDJm MC4uMGJjOWU1ZWVlYjEwIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9heGdiZS9heGdiZV9l dGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9heGdiZS9heGdiZV9ldGhkZXYuYw0KPiBAQCAt MTIxNyw3ICsxMjE3LDYgQEAgYXhnYmVfZGV2X2luZm9fZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAq ZGV2LA0KPiBzdHJ1Y3QgcnRlX2V0aF9kZXZfaW5mbyAqZGV2X2luZm8pDQo+ICAJCURFVl9SWF9P RkZMT0FEX0lQVjRfQ0tTVU0gfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9VRFBfQ0tTVU0gIHwNCj4g IAkJREVWX1JYX09GRkxPQURfVENQX0NLU1VNICB8DQo+IC0JCURFVl9SWF9PRkZMT0FEX0pVTUJP X0ZSQU1FCXwNCj4gIAkJREVWX1JYX09GRkxPQURfU0NBVFRFUgkgIHwNCj4gIAkJREVWX1JYX09G RkxPQURfS0VFUF9DUkM7DQo+IA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvYm54MngvYm54 MnhfZXRoZGV2LmMNCj4gYi9kcml2ZXJzL25ldC9ibngyeC9ibngyeF9ldGhkZXYuYw0KPiBpbmRl eCAwMDlhOTRlOWE4ZmEuLjUwZmYwNGJiMjI0MSAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQv Ym54MngvYm54MnhfZXRoZGV2LmMNCj4gKysrIGIvZHJpdmVycy9uZXQvYm54MngvYm54MnhfZXRo ZGV2LmMNCj4gQEAgLTUzNSw3ICs1MzUsNiBAQCBibngyeF9kZXZfaW5mb3NfZ2V0KHN0cnVjdCBy dGVfZXRoX2RldiAqZGV2LA0KPiBzdHJ1Y3QgcnRlX2V0aF9kZXZfaW5mbyAqZGV2X2luZm8pDQo+ ICAJZGV2X2luZm8tPm1heF9yeF9wa3RsZW4gID0gQk5YMlhfTUFYX1JYX1BLVF9MRU47DQo+ICAJ ZGV2X2luZm8tPm1heF9tYWNfYWRkcnMgID0gQk5YMlhfTUFYX01BQ19BRERSUzsNCj4gIAlkZXZf aW5mby0+c3BlZWRfY2FwYSA9IEVUSF9MSU5LX1NQRUVEXzEwRyB8DQo+IEVUSF9MSU5LX1NQRUVE XzIwRzsNCj4gLQlkZXZfaW5mby0+cnhfb2ZmbG9hZF9jYXBhID0gREVWX1JYX09GRkxPQURfSlVN Qk9fRlJBTUU7DQo+IA0KPiAgCWRldl9pbmZvLT5yeF9kZXNjX2xpbS5uYl9tYXggPSBNQVhfUlhf QVZBSUw7DQo+ICAJZGV2X2luZm8tPnJ4X2Rlc2NfbGltLm5iX21pbiA9IE1JTl9SWF9TSVpFX05P TlRQQTsNCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2JueHQvYm54dC5oIGIvZHJpdmVycy9u ZXQvYm54dC9ibnh0LmgNCj4gaW5kZXggZTkzYTdlYjkzM2I0Li45YWQ3ODIxYjQ3MzYgMTAwNjQ0 DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2JueHQvYm54dC5oDQo+ICsrKyBiL2RyaXZlcnMvbmV0L2Ju eHQvYm54dC5oDQo+IEBAIC01OTEsNyArNTkxLDYgQEAgc3RydWN0IGJueHRfcmVwX2luZm8gew0K PiAgCQkJCSAgICAgREVWX1JYX09GRkxPQURfVENQX0NLU1VNIHwgXA0KPiAgCQkJCSAgICAgREVW X1JYX09GRkxPQURfT1VURVJfSVBWNF9DS1NVTQ0KPiB8IFwNCj4gIAkJCQkgICAgIERFVl9SWF9P RkZMT0FEX09VVEVSX1VEUF9DS1NVTQ0KPiB8IFwNCj4gLQkJCQkgICAgIERFVl9SWF9PRkZMT0FE X0pVTUJPX0ZSQU1FIHwgXA0KPiAgCQkJCSAgICAgREVWX1JYX09GRkxPQURfS0VFUF9DUkMgfCBc DQo+ICAJCQkJICAgICBERVZfUlhfT0ZGTE9BRF9WTEFOX0VYVEVORCB8IFwNCj4gIAkJCQkgICAg IERFVl9SWF9PRkZMT0FEX1RDUF9MUk8gfCBcDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9i bnh0L2JueHRfZXRoZGV2LmMNCj4gYi9kcml2ZXJzL25ldC9ibnh0L2JueHRfZXRoZGV2LmMNCj4g aW5kZXggMWU3ZGE4YmE2MWE2Li5jNGZkMjdiZDkyZGUgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMv bmV0L2JueHQvYm54dF9ldGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9ibnh0L2JueHRfZXRo ZGV2LmMNCj4gQEAgLTcyOCwxNSArNzI4LDEwIEBAIHN0YXRpYyBpbnQgYm54dF9zdGFydF9uaWMo c3RydWN0IGJueHQgKmJwKQ0KPiAgCXVuc2lnbmVkIGludCBpLCBqOw0KPiAgCWludCByYzsNCj4g DQo+IC0JaWYgKGJwLT5ldGhfZGV2LT5kYXRhLT5tdHUgPiBSVEVfRVRIRVJfTVRVKSB7DQo+IC0J CWJwLT5ldGhfZGV2LT5kYXRhLT5kZXZfY29uZi5yeG1vZGUub2ZmbG9hZHMgfD0NCj4gLQkJCURF Vl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FOw0KPiArCWlmIChicC0+ZXRoX2Rldi0+ZGF0YS0+bXR1 ID4gUlRFX0VUSEVSX01UVSkNCj4gIAkJYnAtPmZsYWdzIHw9IEJOWFRfRkxBR19KVU1CTzsNCj4g LQl9IGVsc2Ugew0KPiAtCQlicC0+ZXRoX2Rldi0+ZGF0YS0+ZGV2X2NvbmYucnhtb2RlLm9mZmxv YWRzICY9DQo+IC0JCQl+REVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUU7DQo+ICsJZWxzZQ0KPiAg CQlicC0+ZmxhZ3MgJj0gfkJOWFRfRkxBR19KVU1CTzsNCj4gLQl9DQo+IA0KPiAgCS8qIFRIT1Ig ZG9lcyBub3Qgc3VwcG9ydCByaW5nIGdyb3Vwcy4NCj4gIAkgKiBCdXQgd2Ugd2lsbCB1c2UgdGhl IGFycmF5IHRvIHNhdmUgUlNTIGNvbnRleHQgSURzLg0KPiBAQCAtMTIyMSw3ICsxMjE2LDYgQEAg Ym54dF9yZWNlaXZlX2Z1bmN0aW9uKHN0cnVjdCBydGVfZXRoX2Rldg0KPiAqZXRoX2RldikNCj4g IAlpZiAoZXRoX2Rldi0+ZGF0YS0+ZGV2X2NvbmYucnhtb2RlLm9mZmxvYWRzICYNCj4gIAkJfihE RVZfUlhfT0ZGTE9BRF9WTEFOX1NUUklQIHwNCj4gIAkJICBERVZfUlhfT0ZGTE9BRF9LRUVQX0NS QyB8DQo+IC0JCSAgREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUgfA0KPiAgCQkgIERFVl9SWF9P RkZMT0FEX0lQVjRfQ0tTVU0gfA0KPiAgCQkgIERFVl9SWF9PRkZMT0FEX1VEUF9DS1NVTSB8DQo+ ICAJCSAgREVWX1JYX09GRkxPQURfVENQX0NLU1VNIHwNCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L2JvbmRpbmcvcnRlX2V0aF9ib25kX3BtZC5jDQo+IGIvZHJpdmVycy9uZXQvYm9uZGluZy9y dGVfZXRoX2JvbmRfcG1kLmMNCj4gaW5kZXggYjJhMTgzM2UzZjkxLi44NDRhYzE1ODFhNjEgMTAw NjQ0DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2JvbmRpbmcvcnRlX2V0aF9ib25kX3BtZC5jDQo+ICsr KyBiL2RyaXZlcnMvbmV0L2JvbmRpbmcvcnRlX2V0aF9ib25kX3BtZC5jDQo+IEBAIC0xNzMxLDE0 ICsxNzMxLDYgQEAgc2xhdmVfY29uZmlndXJlKHN0cnVjdCBydGVfZXRoX2Rldg0KPiAqYm9uZGVk X2V0aF9kZXYsDQo+ICAJc2xhdmVfZXRoX2Rldi0+ZGF0YS0+ZGV2X2NvbmYucnhtb2RlLm10dSA9 DQo+ICAJCQlib25kZWRfZXRoX2Rldi0+ZGF0YS0+ZGV2X2NvbmYucnhtb2RlLm10dTsNCj4gDQo+ IC0JaWYgKGJvbmRlZF9ldGhfZGV2LT5kYXRhLT5kZXZfY29uZi5yeG1vZGUub2ZmbG9hZHMgJg0K PiAtCQkJREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUpDQo+IC0JCXNsYXZlX2V0aF9kZXYtPmRh dGEtPmRldl9jb25mLnJ4bW9kZS5vZmZsb2FkcyB8PQ0KPiAtCQkJCURFVl9SWF9PRkZMT0FEX0pV TUJPX0ZSQU1FOw0KPiAtCWVsc2UNCj4gLQkJc2xhdmVfZXRoX2Rldi0+ZGF0YS0+ZGV2X2NvbmYu cnhtb2RlLm9mZmxvYWRzICY9DQo+IC0JCQkJfkRFVl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FOw0K PiAtDQo+ICAJbmJfcnhfcXVldWVzID0gYm9uZGVkX2V0aF9kZXYtPmRhdGEtPm5iX3J4X3F1ZXVl czsNCj4gIAluYl90eF9xdWV1ZXMgPSBib25kZWRfZXRoX2Rldi0+ZGF0YS0+bmJfdHhfcXVldWVz Ow0KPiANCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2NueGsvY254a19ldGhkZXYuaA0KPiBi L2RyaXZlcnMvbmV0L2NueGsvY254a19ldGhkZXYuaA0KPiBpbmRleCA0ZWVhZDAzOTA1MzIuLmFh MTQ3ZWVlNDVjOSAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvY254ay9jbnhrX2V0aGRldi5o DQo+ICsrKyBiL2RyaXZlcnMvbmV0L2NueGsvY254a19ldGhkZXYuaA0KPiBAQCAtNzUsOSArNzUs OCBAQA0KPiAgI2RlZmluZSBDTlhLX05JWF9SWF9PRkZMT0FEX0NBUEEgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gIAkoREVWX1JYX09GRkxPQURfQ0hF Q0tTVU0gfCBERVZfUlhfT0ZGTE9BRF9TQ1RQX0NLU1VNDQo+IHwgICAgICAgICAgICAgICAgIFwN Cj4gIAkgREVWX1JYX09GRkxPQURfT1VURVJfSVBWNF9DS1NVTSB8DQo+IERFVl9SWF9PRkZMT0FE X1NDQVRURVIgfCAgICAgICAgICAgIFwNCj4gLQkgREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUg fA0KPiBERVZfUlhfT0ZGTE9BRF9PVVRFUl9VRFBfQ0tTVU0gfCAgICAgICAgIFwNCj4gLQkgREVW X1JYX09GRkxPQURfUlNTX0hBU0ggfCBERVZfUlhfT0ZGTE9BRF9USU1FU1RBTVAgfA0KPiBcDQo+ IC0JIERFVl9SWF9PRkZMT0FEX1ZMQU5fU1RSSVApDQo+ICsJIERFVl9SWF9PRkZMT0FEX09VVEVS X1VEUF9DS1NVTSB8DQo+IERFVl9SWF9PRkZMT0FEX1JTU19IQVNIIHwgICAgICAgICAgICBcDQo+ ICsJIERFVl9SWF9PRkZMT0FEX1RJTUVTVEFNUCB8IERFVl9SWF9PRkZMT0FEX1ZMQU5fU1RSSVAp DQo+IA0KPiAgI2RlZmluZSBSU1NfSVBWNF9FTkFCTEUgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gIAkoRVRIX1JTU19JUFY0IHwgRVRI X1JTU19GUkFHX0lQVjQgfA0KPiBFVEhfUlNTX05PTkZSQUdfSVBWNF9VRFAgfCAgICAgICAgIFwN Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2NueGsvY254a19ldGhkZXZfb3BzLmMNCj4gYi9k cml2ZXJzL25ldC9jbnhrL2NueGtfZXRoZGV2X29wcy5jDQo+IGluZGV4IDM0OTg5NmY2YTFiZi4u ZDA5MjRkZjc2MTUyIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9jbnhrL2NueGtfZXRoZGV2 X29wcy5jDQo+ICsrKyBiL2RyaXZlcnMvbmV0L2NueGsvY254a19ldGhkZXZfb3BzLmMNCj4gQEAg LTkyLDcgKzkyLDYgQEAgY254a19uaXhfcnhfYnVyc3RfbW9kZV9nZXQoc3RydWN0IHJ0ZV9ldGhf ZGV2DQo+ICpldGhfZGV2LCB1aW50MTZfdCBxdWV1ZV9pZCwNCj4gIAkJe0RFVl9SWF9PRkZMT0FE X0hFQURFUl9TUExJVCwgIiBIZWFkZXIgU3BsaXQsIn0sDQo+ICAJCXtERVZfUlhfT0ZGTE9BRF9W TEFOX0ZJTFRFUiwgIiBWTEFOIEZpbHRlciwifSwNCj4gIAkJe0RFVl9SWF9PRkZMT0FEX1ZMQU5f RVhURU5ELCAiIFZMQU4gRXh0ZW5kLCJ9LA0KPiAtCQl7REVWX1JYX09GRkxPQURfSlVNQk9fRlJB TUUsICIgSnVtYm8gRnJhbWUsIn0sDQo+ICAJCXtERVZfUlhfT0ZGTE9BRF9TQ0FUVEVSLCAiIFNj YXR0ZXJlZCwifSwNCj4gIAkJe0RFVl9SWF9PRkZMT0FEX1RJTUVTVEFNUCwgIiBUaW1lc3RhbXAs In0sDQo+ICAJCXtERVZfUlhfT0ZGTE9BRF9TRUNVUklUWSwgIiBTZWN1cml0eSwifSwNCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2N4Z2JlL2N4Z2JlLmggYi9kcml2ZXJzL25ldC9jeGdiZS9j eGdiZS5oDQo+IGluZGV4IDdjODlhMDI4YmYxNi4uMzc2MjVjNWJmYjY5IDEwMDY0NA0KPiAtLS0g YS9kcml2ZXJzL25ldC9jeGdiZS9jeGdiZS5oDQo+ICsrKyBiL2RyaXZlcnMvbmV0L2N4Z2JlL2N4 Z2JlLmgNCj4gQEAgLTUxLDcgKzUxLDYgQEANCj4gIAkJCSAgIERFVl9SWF9PRkZMT0FEX0lQVjRf Q0tTVU0gfCBcDQo+ICAJCQkgICBERVZfUlhfT0ZGTE9BRF9VRFBfQ0tTVU0gfCBcDQo+ICAJCQkg ICBERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gfCBcDQo+IC0JCQkgICBERVZfUlhfT0ZGTE9BRF9K VU1CT19GUkFNRSB8IFwNCj4gIAkJCSAgIERFVl9SWF9PRkZMT0FEX1NDQVRURVIgfCBcDQo+ICAJ CQkgICBERVZfUlhfT0ZGTE9BRF9SU1NfSEFTSCkNCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJz L25ldC9jeGdiZS9jeGdiZV9ldGhkZXYuYw0KPiBiL2RyaXZlcnMvbmV0L2N4Z2JlL2N4Z2JlX2V0 aGRldi5jDQo+IGluZGV4IDcwYjg3OWZlZDEwMC4uMTM3NGYzMmI2ODI2IDEwMDY0NA0KPiAtLS0g YS9kcml2ZXJzL25ldC9jeGdiZS9jeGdiZV9ldGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9j eGdiZS9jeGdiZV9ldGhkZXYuYw0KPiBAQCAtNjYxLDE0ICs2NjEsNiBAQCBpbnQgY3hnYmVfZGV2 X3J4X3F1ZXVlX3NldHVwKHN0cnVjdCBydGVfZXRoX2Rldg0KPiAqZXRoX2RldiwNCj4gIAlpZiAo KCZyeHEtPmZsKSAhPSBOVUxMKQ0KPiAgCQlyeHEtPmZsLnNpemUgPSB0ZW1wX25iX2Rlc2M7DQo+ IA0KPiAtCS8qIFNldCB0byBqdW1ibyBtb2RlIGlmIG5lY2Vzc2FyeSAqLw0KPiAtCWlmIChldGhf ZGV2LT5kYXRhLT5tdHUgPiBSVEVfRVRIRVJfTVRVKQ0KPiAtCQlldGhfZGV2LT5kYXRhLT5kZXZf Y29uZi5yeG1vZGUub2ZmbG9hZHMgfD0NCj4gLQkJCURFVl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1F Ow0KPiAtCWVsc2UNCj4gLQkJZXRoX2Rldi0+ZGF0YS0+ZGV2X2NvbmYucnhtb2RlLm9mZmxvYWRz ICY9DQo+IC0JCQl+REVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUU7DQo+IC0NCj4gIAllcnIgPSB0 NF9zZ2VfYWxsb2NfcnhxKGFkYXB0ZXIsICZyeHEtPnJzcHEsIGZhbHNlLCBldGhfZGV2LCBtc2lf aWR4LA0KPiAgCQkJICAgICAgICZyeHEtPmZsLCBOVUxMLA0KPiAgCQkJICAgICAgIGlzX3BmNChh ZGFwdGVyKSA/DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9jeGdiZS9zZ2UuYyBiL2RyaXZl cnMvbmV0L2N4Z2JlL3NnZS5jDQo+IGluZGV4IDgzMGY1MTkyNDc0ZC4uMjFiOGZlNjFjOWE3IDEw MDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9jeGdiZS9zZ2UuYw0KPiArKysgYi9kcml2ZXJzL25l dC9jeGdiZS9zZ2UuYw0KPiBAQCAtMzY1LDEzICszNjUsMTAgQEAgc3RhdGljIHVuc2lnbmVkIGlu dCByZWZpbGxfZmxfdXNlbWJ1ZnMoc3RydWN0DQo+IGFkYXB0ZXIgKmFkYXAsIHN0cnVjdCBzZ2Vf ZmwgKnEsDQo+ICAJc3RydWN0IHJ0ZV9tYnVmICpidWZfYnVsa1tuXTsNCj4gIAlpbnQgcmV0LCBp Ow0KPiAgCXN0cnVjdCBydGVfcGt0bWJ1Zl9wb29sX3ByaXZhdGUgKm1icF9wcml2Ow0KPiAtCXU4 IGp1bWJvX2VuID0gcnhxLT5yc3BxLmV0aF9kZXYtPmRhdGEtDQo+ID5kZXZfY29uZi5yeG1vZGUu b2ZmbG9hZHMgJg0KPiAtCQlERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRTsNCj4gDQo+ICAJLyog VXNlIGp1bWJvIG10dSBidWZmZXJzIGlmIG1idWYgZGF0YSByb29tIHNpemUgY2FuIGZpdCBqdW1i byBkYXRhLg0KPiAqLw0KPiAgCW1icF9wcml2ID0gcnRlX21lbXBvb2xfZ2V0X3ByaXYocnhxLT5y c3BxLm1iX3Bvb2wpOw0KPiAtCWlmIChqdW1ib19lbiAmJg0KPiAtCSAgICAoKG1icF9wcml2LT5t YnVmX2RhdGFfcm9vbV9zaXplIC0NCj4gUlRFX1BLVE1CVUZfSEVBRFJPT00pID49IDkwMDApKQ0K PiArCWlmICgobWJwX3ByaXYtPm1idWZfZGF0YV9yb29tX3NpemUgLQ0KPiBSVEVfUEtUTUJVRl9I RUFEUk9PTSkgPj0gOTAwMCkNCj4gIAkJYnVmX3NpemVfaWR4ID0gUlhfTEFSR0VfTVRVX0JVRjsN Cj4gDQo+ICAJcmV0ID0gcnRlX21lbXBvb2xfZ2V0X2J1bGsocnhxLT5yc3BxLm1iX3Bvb2wsICh2 b2lkICopYnVmX2J1bGssDQo+IG4pOw0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHBhYS9k cGFhX2V0aGRldi5jDQo+IGIvZHJpdmVycy9uZXQvZHBhYS9kcGFhX2V0aGRldi5jDQo+IGluZGV4 IDYwZGQ0ZjY3ZmMyNi4uOWNjODA4Yjc2N2VhIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9k cGFhL2RwYWFfZXRoZGV2LmMNCj4gKysrIGIvZHJpdmVycy9uZXQvZHBhYS9kcGFhX2V0aGRldi5j DQo+IEBAIC01NCw3ICs1NCw2IEBADQo+IA0KPiAgLyogU3VwcG9ydGVkIFJ4IG9mZmxvYWRzICov DQo+ICBzdGF0aWMgdWludDY0X3QgZGV2X3J4X29mZmxvYWRzX3N1cCA9DQo+IC0JCURFVl9SWF9P RkZMT0FEX0pVTUJPX0ZSQU1FIHwNCj4gIAkJREVWX1JYX09GRkxPQURfU0NBVFRFUjsNCj4gDQo+ ICAvKiBSeCBvZmZsb2FkcyB3aGljaCBjYW5ub3QgYmUgZGlzYWJsZWQgKi8NCj4gQEAgLTU5Miw3 ICs1OTEsNiBAQCBkcGFhX2Rldl9yeF9idXJzdF9tb2RlX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYN Cj4gKmRldiwNCj4gIAkJdWludDY0X3QgZmxhZ3M7DQo+ICAJCWNvbnN0IGNoYXIgKm91dHB1dDsN Cj4gIAl9IHJ4X29mZmxvYWRfbWFwW10gPSB7DQo+IC0JCQl7REVWX1JYX09GRkxPQURfSlVNQk9f RlJBTUUsICIgSnVtYm8NCj4gZnJhbWUsIn0sDQo+ICAJCQl7REVWX1JYX09GRkxPQURfU0NBVFRF UiwgIiBTY2F0dGVyZWQsIn0sDQo+ICAJCQl7REVWX1JYX09GRkxPQURfSVBWNF9DS1NVTSwgIiBJ UFY0IGNzdW0sIn0sDQo+ICAJCQl7REVWX1JYX09GRkxPQURfVURQX0NLU1VNLCAiIFVEUCBjc3Vt LCJ9LA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZHBhYTIvZHBhYTJfZXRoZGV2LmMNCj4g Yi9kcml2ZXJzL25ldC9kcGFhMi9kcGFhMl9ldGhkZXYuYw0KPiBpbmRleCA2YjQ0YjA1NTdlNmEu LjUzNTA4OTcyYTRjMiAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvZHBhYTIvZHBhYTJfZXRo ZGV2LmMNCj4gKysrIGIvZHJpdmVycy9uZXQvZHBhYTIvZHBhYTJfZXRoZGV2LmMNCj4gQEAgLTQ0 LDcgKzQ0LDYgQEAgc3RhdGljIHVpbnQ2NF90IGRldl9yeF9vZmZsb2Fkc19zdXAgPQ0KPiAgCQlE RVZfUlhfT0ZGTE9BRF9PVVRFUl9VRFBfQ0tTVU0gfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9WTEFO X1NUUklQIHwNCj4gIAkJREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVIgfA0KPiAtCQlERVZfUlhf T0ZGTE9BRF9KVU1CT19GUkFNRSB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX1RJTUVTVEFNUDsNCj4g DQo+ICAvKiBSeCBvZmZsb2FkcyB3aGljaCBjYW5ub3QgYmUgZGlzYWJsZWQgKi8NCj4gQEAgLTI5 OCw3ICsyOTcsNiBAQCBkcGFhMl9kZXZfcnhfYnVyc3RfbW9kZV9nZXQoc3RydWN0IHJ0ZV9ldGhf ZGV2DQo+ICpkZXYsDQo+ICAJCQl7REVWX1JYX09GRkxPQURfT1VURVJfVURQX0NLU1VNLCAiIE91 dGVyDQo+IFVEUCBjc3VtLCJ9LA0KPiAgCQkJe0RFVl9SWF9PRkZMT0FEX1ZMQU5fU1RSSVAsICIg VkxBTiBzdHJpcCwifSwNCj4gIAkJCXtERVZfUlhfT0ZGTE9BRF9WTEFOX0ZJTFRFUiwgIiBWTEFO IGZpbHRlciwifSwNCj4gLQkJCXtERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRSwgIiBKdW1ibw0K PiBmcmFtZSwifSwNCj4gIAkJCXtERVZfUlhfT0ZGTE9BRF9USU1FU1RBTVAsICIgVGltZXN0YW1w LCJ9LA0KPiAgCQkJe0RFVl9SWF9PRkZMT0FEX1JTU19IQVNILCAiIFJTUywifSwNCj4gIAkJCXtE RVZfUlhfT0ZGTE9BRF9TQ0FUVEVSLCAiIFNjYXR0ZXJlZCwifQ0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9uZXQvZTEwMDAvZTEwMDBfZXRoZGV2LmgNCj4gYi9kcml2ZXJzL25ldC9lMTAwMC9lMTAw MF9ldGhkZXYuaA0KPiBpbmRleCAzYjRkOWMzZWU2ZjQuLjFhZTc4ZmU3MWYwMiAxMDA2NDQNCj4g LS0tIGEvZHJpdmVycy9uZXQvZTEwMDAvZTEwMDBfZXRoZGV2LmgNCj4gKysrIGIvZHJpdmVycy9u ZXQvZTEwMDAvZTEwMDBfZXRoZGV2LmgNCj4gQEAgLTQ2OCw4ICs0NjgsOCBAQCB2b2lkIGV0aF9l bV9yeF9xdWV1ZV9yZWxlYXNlKHZvaWQgKnJ4cSk7DQo+ICB2b2lkIGVtX2Rldl9jbGVhcl9xdWV1 ZXMoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpOw0KPiAgdm9pZCBlbV9kZXZfZnJlZV9xdWV1ZXMo c3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpOw0KPiANCj4gLXVpbnQ2NF90IGVtX2dldF9yeF9wb3J0 X29mZmxvYWRzX2NhcGEoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpOw0KPiAtdWludDY0X3QgZW1f Z2V0X3J4X3F1ZXVlX29mZmxvYWRzX2NhcGEoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpOw0KPiAr dWludDY0X3QgZW1fZ2V0X3J4X3BvcnRfb2ZmbG9hZHNfY2FwYSh2b2lkKTsNCj4gK3VpbnQ2NF90 IGVtX2dldF9yeF9xdWV1ZV9vZmZsb2Fkc19jYXBhKHZvaWQpOw0KPiANCj4gIGludCBldGhfZW1f cnhfcXVldWVfc2V0dXAoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHVpbnQxNl90DQo+IHJ4X3F1 ZXVlX2lkLA0KPiAgCQl1aW50MTZfdCBuYl9yeF9kZXNjLCB1bnNpZ25lZCBpbnQgc29ja2V0X2lk LA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZTEwMDAvZW1fZXRoZGV2LmMNCj4gYi9kcml2 ZXJzL25ldC9lMTAwMC9lbV9ldGhkZXYuYw0KPiBpbmRleCA2ZWJlZjU1NTg4YmMuLjhhNzUyZWVm NTJjZiAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvZTEwMDAvZW1fZXRoZGV2LmMNCj4gKysr IGIvZHJpdmVycy9uZXQvZTEwMDAvZW1fZXRoZGV2LmMNCj4gQEAgLTEwODMsOCArMTA4Myw4IEBA IGV0aF9lbV9pbmZvc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHN0cnVjdA0KPiBydGVf ZXRoX2Rldl9pbmZvICpkZXZfaW5mbykNCj4gIAlkZXZfaW5mby0+bWF4X3J4X3F1ZXVlcyA9IDE7 DQo+ICAJZGV2X2luZm8tPm1heF90eF9xdWV1ZXMgPSAxOw0KPiANCj4gLQlkZXZfaW5mby0+cnhf cXVldWVfb2ZmbG9hZF9jYXBhID0NCj4gZW1fZ2V0X3J4X3F1ZXVlX29mZmxvYWRzX2NhcGEoZGV2 KTsNCj4gLQlkZXZfaW5mby0+cnhfb2ZmbG9hZF9jYXBhID0gZW1fZ2V0X3J4X3BvcnRfb2ZmbG9h ZHNfY2FwYShkZXYpIHwNCj4gKwlkZXZfaW5mby0+cnhfcXVldWVfb2ZmbG9hZF9jYXBhID0NCj4g ZW1fZ2V0X3J4X3F1ZXVlX29mZmxvYWRzX2NhcGEoKTsNCj4gKwlkZXZfaW5mby0+cnhfb2ZmbG9h ZF9jYXBhID0gZW1fZ2V0X3J4X3BvcnRfb2ZmbG9hZHNfY2FwYSgpIHwNCj4gIAkJCQkgICAgZGV2 X2luZm8tPnJ4X3F1ZXVlX29mZmxvYWRfY2FwYTsNCj4gIAlkZXZfaW5mby0+dHhfcXVldWVfb2Zm bG9hZF9jYXBhID0NCj4gZW1fZ2V0X3R4X3F1ZXVlX29mZmxvYWRzX2NhcGEoZGV2KTsNCj4gIAlk ZXZfaW5mby0+dHhfb2ZmbG9hZF9jYXBhID0gZW1fZ2V0X3R4X3BvcnRfb2ZmbG9hZHNfY2FwYShk ZXYpIHwNCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2UxMDAwL2VtX3J4dHguYyBiL2RyaXZl cnMvbmV0L2UxMDAwL2VtX3J4dHguYw0KPiBpbmRleCBkZmQ4ZjJmZDAwNzQuLmUwNjFmODBhOTA2 YSAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvZTEwMDAvZW1fcnh0eC5jDQo+ICsrKyBiL2Ry aXZlcnMvbmV0L2UxMDAwL2VtX3J4dHguYw0KPiBAQCAtMTM1OSwxMiArMTM1OSw5IEBAIGVtX3Jl c2V0X3J4X3F1ZXVlKHN0cnVjdCBlbV9yeF9xdWV1ZSAqcnhxKQ0KPiAgfQ0KPiANCj4gIHVpbnQ2 NF90DQo+IC1lbV9nZXRfcnhfcG9ydF9vZmZsb2Fkc19jYXBhKHN0cnVjdCBydGVfZXRoX2RldiAq ZGV2KQ0KPiArZW1fZ2V0X3J4X3BvcnRfb2ZmbG9hZHNfY2FwYSh2b2lkKQ0KPiAgew0KPiAgCXVp bnQ2NF90IHJ4X29mZmxvYWRfY2FwYTsNCj4gLQl1aW50MzJfdCBtYXhfcnhfcGt0bGVuOw0KPiAt DQo+IC0JbWF4X3J4X3BrdGxlbiA9IGVtX2dldF9tYXhfcGt0bGVuKGRldik7DQo+IA0KPiAgCXJ4 X29mZmxvYWRfY2FwYSA9DQo+ICAJCURFVl9SWF9PRkZMT0FEX1ZMQU5fU1RSSVAgIHwNCj4gQEAg LTEzNzQsMTQgKzEzNzEsMTIgQEAgZW1fZ2V0X3J4X3BvcnRfb2ZmbG9hZHNfY2FwYShzdHJ1Y3QN Cj4gcnRlX2V0aF9kZXYgKmRldikNCj4gIAkJREVWX1JYX09GRkxPQURfVENQX0NLU1VNICAgfA0K PiAgCQlERVZfUlhfT0ZGTE9BRF9LRUVQX0NSQyAgICB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX1ND QVRURVI7DQo+IC0JaWYgKG1heF9yeF9wa3RsZW4gPiBSVEVfRVRIRVJfTUFYX0xFTikNCj4gLQkJ cnhfb2ZmbG9hZF9jYXBhIHw9IERFVl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FOw0KPiANCj4gIAly ZXR1cm4gcnhfb2ZmbG9hZF9jYXBhOw0KPiAgfQ0KPiANCj4gIHVpbnQ2NF90DQo+IC1lbV9nZXRf cnhfcXVldWVfb2ZmbG9hZHNfY2FwYShzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldikNCj4gK2VtX2dl dF9yeF9xdWV1ZV9vZmZsb2Fkc19jYXBhKHZvaWQpDQo+ICB7DQo+ICAJdWludDY0X3QgcnhfcXVl dWVfb2ZmbG9hZF9jYXBhOw0KPiANCj4gQEAgLTEzOTAsNyArMTM4NSw3IEBAIGVtX2dldF9yeF9x dWV1ZV9vZmZsb2Fkc19jYXBhKHN0cnVjdA0KPiBydGVfZXRoX2RldiAqZGV2KQ0KPiAgCSAqIGNh cGFiaWxpdHkgYmUgc2FtZSB0byBwZXIgcG9ydCBxdWV1ZSBvZmZsb2FkaW5nIGNhcGFiaWxpdHkN Cj4gIAkgKiBmb3IgYmV0dGVyIGNvbnZlbmllbmNlLg0KPiAgCSAqLw0KPiAtCXJ4X3F1ZXVlX29m ZmxvYWRfY2FwYSA9IGVtX2dldF9yeF9wb3J0X29mZmxvYWRzX2NhcGEoZGV2KTsNCj4gKwlyeF9x dWV1ZV9vZmZsb2FkX2NhcGEgPSBlbV9nZXRfcnhfcG9ydF9vZmZsb2Fkc19jYXBhKCk7DQo+IA0K PiAgCXJldHVybiByeF9xdWV1ZV9vZmZsb2FkX2NhcGE7DQo+ICB9DQo+IEBAIC0xODM5LDcgKzE4 MzQsNyBAQCBldGhfZW1fcnhfaW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldikNCj4gIAkJICog dG8gYXZvaWQgc3BsaXR0aW5nIHBhY2tldHMgdGhhdCBkb24ndCBmaXQgaW50bw0KPiAgCQkgKiBv bmUgYnVmZmVyLg0KPiAgCQkgKi8NCj4gLQkJaWYgKHJ4bW9kZS0+b2ZmbG9hZHMgJiBERVZfUlhf T0ZGTE9BRF9KVU1CT19GUkFNRQ0KPiB8fA0KPiArCQlpZiAoZGV2LT5kYXRhLT5tdHUgPiBSVEVf RVRIRVJfTVRVIHx8DQo+ICAJCQkJcmN0bF9ic2l6ZSA8IFJURV9FVEhFUl9NQVhfTEVOKSB7DQo+ ICAJCQlpZiAoIWRldi0+ZGF0YS0+c2NhdHRlcmVkX3J4KQ0KPiAgCQkJCVBNRF9JTklUX0xPRyhE RUJVRywgImZvcmNpbmcgc2NhdHRlcg0KPiBtb2RlIik7DQo+IEBAIC0xODc0LDE0ICsxODY5LDE0 IEBAIGV0aF9lbV9yeF9pbml0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2KQ0KPiAgCWlmICgoaHct Pm1hYy50eXBlID09IGUxMDAwX2ljaDlsYW4gfHwNCj4gIAkJCWh3LT5tYWMudHlwZSA9PSBlMTAw MF9wY2gybGFuIHx8DQo+ICAJCQlody0+bWFjLnR5cGUgPT0gZTEwMDBfaWNoMTBsYW4pICYmDQo+ IC0JCQlyeG1vZGUtPm9mZmxvYWRzICYNCj4gREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUpIHsN Cj4gKwkJCWRldi0+ZGF0YS0+bXR1ID4gUlRFX0VUSEVSX01UVSkgew0KPiAgCQl1MzIgcnhkY3Rs ID0gRTEwMDBfUkVBRF9SRUcoaHcsIEUxMDAwX1JYRENUTCgwKSk7DQo+ICAJCUUxMDAwX1dSSVRF X1JFRyhodywgRTEwMDBfUlhEQ1RMKDApLCByeGRjdGwgfCAzKTsNCj4gIAkJRTEwMDBfV1JJVEVf UkVHKGh3LCBFMTAwMF9FUlQsIDB4MTAwIHwgKDEgPDwgMTMpKTsNCj4gIAl9DQo+IA0KPiAgCWlm IChody0+bWFjLnR5cGUgPT0gZTEwMDBfcGNoMmxhbikgew0KPiAtCQlpZiAocnhtb2RlLT5vZmZs b2FkcyAmIERFVl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FKQ0KPiArCQlpZiAoZGV2LT5kYXRhLT5t dHUgPiBSVEVfRVRIRVJfTVRVKQ0KPiAgCQkJZTEwMDBfbHZfanVtYm9fd29ya2Fyb3VuZF9pY2g4 bGFuKGh3LCBUUlVFKTsNCj4gIAkJZWxzZQ0KPiAgCQkJZTEwMDBfbHZfanVtYm9fd29ya2Fyb3Vu ZF9pY2g4bGFuKGh3LCBGQUxTRSk7DQo+IEBAIC0xOTA4LDcgKzE5MDMsNyBAQCBldGhfZW1fcnhf aW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldikNCj4gIAkvKg0KPiAgCSAqIENvbmZpZ3VyZSBz dXBwb3J0IG9mIGp1bWJvIGZyYW1lcywgaWYgYW55Lg0KPiAgCSAqLw0KPiAtCWlmIChyeG1vZGUt Pm9mZmxvYWRzICYgREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUpDQo+ICsJaWYgKGRldi0+ZGF0 YS0+bXR1ID4gUlRFX0VUSEVSX01UVSkNCj4gIAkJcmN0bCB8PSBFMTAwMF9SQ1RMX0xQRTsNCj4g IAllbHNlDQo+ICAJCXJjdGwgJj0gfkUxMDAwX1JDVExfTFBFOw0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9uZXQvZTEwMDAvaWdiX3J4dHguYyBiL2RyaXZlcnMvbmV0L2UxMDAwL2lnYl9yeHR4LmMN Cj4gaW5kZXggZGUxMjk5N2I0YmRkLi45OTk4ZDRlYTQxNzkgMTAwNjQ0DQo+IC0tLSBhL2RyaXZl cnMvbmV0L2UxMDAwL2lnYl9yeHR4LmMNCj4gKysrIGIvZHJpdmVycy9uZXQvZTEwMDAvaWdiX3J4 dHguYw0KPiBAQCAtMTY0MCw3ICsxNjQwLDYgQEAgaWdiX2dldF9yeF9wb3J0X29mZmxvYWRzX2Nh cGEoc3RydWN0IHJ0ZV9ldGhfZGV2DQo+ICpkZXYpDQo+ICAJCQkgIERFVl9SWF9PRkZMT0FEX0lQ VjRfQ0tTVU0gIHwNCj4gIAkJCSAgREVWX1JYX09GRkxPQURfVURQX0NLU1VNICAgfA0KPiAgCQkJ ICBERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gICB8DQo+IC0JCQkgIERFVl9SWF9PRkZMT0FEX0pV TUJPX0ZSQU1FIHwNCj4gIAkJCSAgREVWX1JYX09GRkxPQURfS0VFUF9DUkMgICAgfA0KPiAgCQkJ ICBERVZfUlhfT0ZGTE9BRF9TQ0FUVEVSICAgICB8DQo+ICAJCQkgIERFVl9SWF9PRkZMT0FEX1JT U19IQVNIOw0KPiBAQCAtMjM0NCw3ICsyMzQzLDcgQEAgZXRoX2lnYl9yeF9pbml0KHN0cnVjdCBy dGVfZXRoX2RldiAqZGV2KQ0KPiAgCSAqIENvbmZpZ3VyZSBzdXBwb3J0IG9mIGp1bWJvIGZyYW1l cywgaWYgYW55Lg0KPiAgCSAqLw0KPiAgCW1heF9sZW4gPSBkZXYtPmRhdGEtPm10dSArIEUxMDAw X0VUSF9PVkVSSEVBRDsNCj4gLQlpZiAoZGV2LT5kYXRhLT5kZXZfY29uZi5yeG1vZGUub2ZmbG9h ZHMgJg0KPiBERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRSkgew0KPiArCWlmIChkZXYtPmRhdGEt Pm10dSAmIFJURV9FVEhFUl9NVFUpIHsNCj4gIAkJcmN0bCB8PSBFMTAwMF9SQ1RMX0xQRTsNCj4g DQo+ICAJCS8qDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9lbmEvZW5hX2V0aGRldi5jIGIv ZHJpdmVycy9uZXQvZW5hL2VuYV9ldGhkZXYuYw0KPiBpbmRleCBlOWI3MTg3ODZhMzkuLjQzMjJk Y2UyNjBmNSAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvZW5hL2VuYV9ldGhkZXYuYw0KPiAr KysgYi9kcml2ZXJzL25ldC9lbmEvZW5hX2V0aGRldi5jDQo+IEBAIC0yMDQyLDggKzIwNDIsNiBA QCBzdGF0aWMgaW50IGVuYV9pbmZvc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsDQo+ICAJ CQlERVZfUlhfT0ZGTE9BRF9VRFBfQ0tTVU0gIHwNCj4gIAkJCURFVl9SWF9PRkZMT0FEX1RDUF9D S1NVTTsNCj4gDQo+IC0JcnhfZmVhdCB8PSBERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRTsNCj4g LQ0KPiAgCS8qIEluZm9ybSBmcmFtZXdvcmsgYWJvdXQgYXZhaWxhYmxlIGZlYXR1cmVzICovDQo+ ICAJZGV2X2luZm8tPnJ4X29mZmxvYWRfY2FwYSA9IHJ4X2ZlYXQ7DQo+ICAJZGV2X2luZm8tPnJ4 X29mZmxvYWRfY2FwYSB8PSBERVZfUlhfT0ZGTE9BRF9SU1NfSEFTSDsNCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvbmV0L2VuZXRjL2VuZXRjX2V0aGRldi5jDQo+IGIvZHJpdmVycy9uZXQvZW5ldGMv ZW5ldGNfZXRoZGV2LmMNCj4gaW5kZXggYTczNzJjMTc4N2M3Li42NDU3Njc3ZDMwMGEgMTAwNjQ0 DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2VuZXRjL2VuZXRjX2V0aGRldi5jDQo+ICsrKyBiL2RyaXZl cnMvbmV0L2VuZXRjL2VuZXRjX2V0aGRldi5jDQo+IEBAIC0yMTAsOCArMjEwLDcgQEAgZW5ldGNf ZGV2X2luZm9zX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldg0KPiBfX3J0ZV91bnVzZWQsDQo+ ICAJCShERVZfUlhfT0ZGTE9BRF9JUFY0X0NLU1VNIHwNCj4gIAkJIERFVl9SWF9PRkZMT0FEX1VE UF9DS1NVTSB8DQo+ICAJCSBERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gfA0KPiAtCQkgREVWX1JY X09GRkxPQURfS0VFUF9DUkMgfA0KPiAtCQkgREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUpOw0K PiArCQkgREVWX1JYX09GRkxPQURfS0VFUF9DUkMpOw0KPiANCj4gIAlyZXR1cm4gMDsNCj4gIH0N Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2VuaWMvZW5pY19yZXMuYyBiL2RyaXZlcnMvbmV0 L2VuaWMvZW5pY19yZXMuYw0KPiBpbmRleCBhOGY1MzMyYTQwN2YuLjZhNDc1OGVhOGU4YSAxMDA2 NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvZW5pYy9lbmljX3Jlcy5jDQo+ICsrKyBiL2RyaXZlcnMv bmV0L2VuaWMvZW5pY19yZXMuYw0KPiBAQCAtMjA5LDcgKzIwOSw2IEBAIGludCBlbmljX2dldF92 bmljX2NvbmZpZyhzdHJ1Y3QgZW5pYyAqZW5pYykNCj4gIAkJREVWX1RYX09GRkxPQURfVENQX1RT TzsNCj4gIAllbmljLT5yeF9vZmZsb2FkX2NhcGEgPQ0KPiAgCQlERVZfUlhfT0ZGTE9BRF9TQ0FU VEVSIHwNCj4gLQkJREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUgfA0KPiAgCQlERVZfUlhfT0ZG TE9BRF9WTEFOX1NUUklQIHwNCj4gIAkJREVWX1JYX09GRkxPQURfSVBWNF9DS1NVTSB8DQo+ICAJ CURFVl9SWF9PRkZMT0FEX1VEUF9DS1NVTSB8DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9m YWlsc2FmZS9mYWlsc2FmZV9vcHMuYw0KPiBiL2RyaXZlcnMvbmV0L2ZhaWxzYWZlL2ZhaWxzYWZl X29wcy5jDQo+IGluZGV4IDVmZjMzZTAzZTAzNC4uNDdjNWVmZTllYTc3IDEwMDY0NA0KPiAtLS0g YS9kcml2ZXJzL25ldC9mYWlsc2FmZS9mYWlsc2FmZV9vcHMuYw0KPiArKysgYi9kcml2ZXJzL25l dC9mYWlsc2FmZS9mYWlsc2FmZV9vcHMuYw0KPiBAQCAtMTE5Myw3ICsxMTkzLDYgQEAgZnNfZGV2 X2luZm9zX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwNCj4gIAkJREVWX1JYX09GRkxPQURf SEVBREVSX1NQTElUIHwNCj4gIAkJREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVIgfA0KPiAgCQlE RVZfUlhfT0ZGTE9BRF9WTEFOX0VYVEVORCB8DQo+IC0JCURFVl9SWF9PRkZMT0FEX0pVTUJPX0ZS QU1FIHwNCj4gIAkJREVWX1JYX09GRkxPQURfU0NBVFRFUiB8DQo+ICAJCURFVl9SWF9PRkZMT0FE X1RJTUVTVEFNUCB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX1NFQ1VSSVRZIHwNCj4gQEAgLTEyMTEs NyArMTIxMCw2IEBAIGZzX2Rldl9pbmZvc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsDQo+ ICAJCURFVl9SWF9PRkZMT0FEX0hFQURFUl9TUExJVCB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX1ZM QU5fRklMVEVSIHwNCj4gIAkJREVWX1JYX09GRkxPQURfVkxBTl9FWFRFTkQgfA0KPiAtCQlERVZf UlhfT0ZGTE9BRF9KVU1CT19GUkFNRSB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX1NDQVRURVIgfA0K PiAgCQlERVZfUlhfT0ZGTE9BRF9USU1FU1RBTVAgfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9TRUNV UklUWSB8DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9mbTEway9mbTEwa19ldGhkZXYuYw0K PiBiL2RyaXZlcnMvbmV0L2ZtMTBrL2ZtMTBrX2V0aGRldi5jDQo+IGluZGV4IDVlNGIzNjFjYTZj MC4uMDkzMDIxMjQ2Mjg2IDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9mbTEway9mbTEwa19l dGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9mbTEway9mbTEwa19ldGhkZXYuYw0KPiBAQCAt MTc3OSw3ICsxNzc5LDYgQEAgc3RhdGljIHVpbnQ2NF90DQo+IGZtMTBrX2dldF9yeF9wb3J0X29m ZmxvYWRzX2NhcGEoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpDQo+ICAJCQkgICBERVZfUlhfT0ZG TE9BRF9JUFY0X0NLU1VNICB8DQo+ICAJCQkgICBERVZfUlhfT0ZGTE9BRF9VRFBfQ0tTVU0gICB8 DQo+ICAJCQkgICBERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gICB8DQo+IC0JCQkgICBERVZfUlhf T0ZGTE9BRF9KVU1CT19GUkFNRSB8DQo+ICAJCQkgICBERVZfUlhfT0ZGTE9BRF9IRUFERVJfU1BM SVQgfA0KPiAgCQkJICAgREVWX1JYX09GRkxPQURfUlNTX0hBU0gpOw0KPiAgfQ0KPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9uZXQvaGluaWMvaGluaWNfcG1kX2V0aGRldi5jDQo+IGIvZHJpdmVycy9u ZXQvaGluaWMvaGluaWNfcG1kX2V0aGRldi5jDQo+IGluZGV4IGNlMGI1MmM3MThhYi4uYjE1NjMz NTBlYzBlIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9oaW5pYy9oaW5pY19wbWRfZXRoZGV2 LmMNCj4gKysrIGIvZHJpdmVycy9uZXQvaGluaWMvaGluaWNfcG1kX2V0aGRldi5jDQo+IEBAIC03 NDcsNyArNzQ3LDYgQEAgaGluaWNfZGV2X2luZm9zX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRl diwgc3RydWN0DQo+IHJ0ZV9ldGhfZGV2X2luZm8gKmluZm8pDQo+ICAJCQkJREVWX1JYX09GRkxP QURfVENQX0NLU1VNIHwNCj4gIAkJCQlERVZfUlhfT0ZGTE9BRF9WTEFOX0ZJTFRFUiB8DQo+ICAJ CQkJREVWX1JYX09GRkxPQURfU0NBVFRFUiB8DQo+IC0JCQkJREVWX1JYX09GRkxPQURfSlVNQk9f RlJBTUUgfA0KPiAgCQkJCURFVl9SWF9PRkZMT0FEX1RDUF9MUk8gfA0KPiAgCQkJCURFVl9SWF9P RkZMT0FEX1JTU19IQVNIOw0KPiANCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2huczMvaG5z M19ldGhkZXYuYw0KPiBiL2RyaXZlcnMvbmV0L2huczMvaG5zM19ldGhkZXYuYw0KPiBpbmRleCA4 NjhkMzgxYTQ3NzIuLjBjNThjNTU4NDRiMCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvaG5z My9obnMzX2V0aGRldi5jDQo+ICsrKyBiL2RyaXZlcnMvbmV0L2huczMvaG5zM19ldGhkZXYuYw0K PiBAQCAtMjcxNyw3ICsyNzE3LDYgQEAgaG5zM19kZXZfaW5mb3NfZ2V0KHN0cnVjdCBydGVfZXRo X2RldiAqZXRoX2RldiwNCj4gc3RydWN0IHJ0ZV9ldGhfZGV2X2luZm8gKmluZm8pDQo+ICAJCQkJ IERFVl9SWF9PRkZMT0FEX1NDQVRURVIgfA0KPiAgCQkJCSBERVZfUlhfT0ZGTE9BRF9WTEFOX1NU UklQIHwNCj4gIAkJCQkgREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVIgfA0KPiAtCQkJCSBERVZf UlhfT0ZGTE9BRF9KVU1CT19GUkFNRSB8DQo+ICAJCQkJIERFVl9SWF9PRkZMT0FEX1JTU19IQVNI IHwNCj4gIAkJCQkgREVWX1JYX09GRkxPQURfVENQX0xSTyk7DQo+ICAJaW5mby0+dHhfb2ZmbG9h ZF9jYXBhID0gKERFVl9UWF9PRkZMT0FEX09VVEVSX0lQVjRfQ0tTVU0gfA0KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9uZXQvaG5zMy9obnMzX2V0aGRldl92Zi5jDQo+IGIvZHJpdmVycy9uZXQvaG5z My9obnMzX2V0aGRldl92Zi5jDQo+IGluZGV4IGZmMjhjYWQ1M2EwMy4uYzQ4OGUwM2YyM2E0IDEw MDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9obnMzL2huczNfZXRoZGV2X3ZmLmMNCj4gKysrIGIv ZHJpdmVycy9uZXQvaG5zMy9obnMzX2V0aGRldl92Zi5jDQo+IEBAIC05NTYsNyArOTU2LDYgQEAg aG5zM3ZmX2Rldl9pbmZvc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhfZGV2LA0KPiBzdHJ1 Y3QgcnRlX2V0aF9kZXZfaW5mbyAqaW5mbykNCj4gIAkJCQkgREVWX1JYX09GRkxPQURfU0NBVFRF UiB8DQo+ICAJCQkJIERFVl9SWF9PRkZMT0FEX1ZMQU5fU1RSSVAgfA0KPiAgCQkJCSBERVZfUlhf T0ZGTE9BRF9WTEFOX0ZJTFRFUiB8DQo+IC0JCQkJIERFVl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1F IHwNCj4gIAkJCQkgREVWX1JYX09GRkxPQURfUlNTX0hBU0ggfA0KPiAgCQkJCSBERVZfUlhfT0ZG TE9BRF9UQ1BfTFJPKTsNCj4gIAlpbmZvLT50eF9vZmZsb2FkX2NhcGEgPSAoREVWX1RYX09GRkxP QURfT1VURVJfSVBWNF9DS1NVTSB8DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pNDBlL2k0 MGVfZXRoZGV2LmMgYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmMNCj4gaW5kZXggZGFk MTUxZWFjNWYxLi5hZDc4MDJmNjMwMzEgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9ldGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmMNCj4g QEAgLTM3NTgsNyArMzc1OCw2IEBAIGk0MGVfZGV2X2luZm9fZ2V0KHN0cnVjdCBydGVfZXRoX2Rl diAqZGV2LCBzdHJ1Y3QNCj4gcnRlX2V0aF9kZXZfaW5mbyAqZGV2X2luZm8pDQo+ICAJCURFVl9S WF9PRkZMT0FEX1NDQVRURVIgfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9WTEFOX0VYVEVORCB8DQo+ ICAJCURFVl9SWF9PRkZMT0FEX1ZMQU5fRklMVEVSIHwNCj4gLQkJREVWX1JYX09GRkxPQURfSlVN Qk9fRlJBTUUgfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9SU1NfSEFTSDsNCj4gDQo+ICAJZGV2X2lu Zm8tPnR4X3F1ZXVlX29mZmxvYWRfY2FwYSA9DQo+IERFVl9UWF9PRkZMT0FEX01CVUZfRkFTVF9G UkVFOw0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldl92Zi5jDQo+ IGIvZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldl92Zi5jDQo+IGluZGV4IGY3ZjlkNDRlZjE4 MS4uMWMzMTRlMmZmZGQwIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRo ZGV2X3ZmLmMNCj4gKysrIGIvZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldl92Zi5jDQo+IEBA IC0xOTMyLDcgKzE5MzIsNyBAQCBpNDBldmZfcnhxX2luaXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpk ZXYsIHN0cnVjdA0KPiBpNDBlX3J4X3F1ZXVlICpyeHEpDQo+ICAJLyoqDQo+ICAJICogQ2hlY2sg aWYgdGhlIGp1bWJvIGZyYW1lIGFuZCBtYXhpbXVtIHBhY2tldCBsZW5ndGggYXJlIHNldA0KPiBj b3JyZWN0bHkNCj4gIAkgKi8NCj4gLQlpZiAoZGV2X2RhdGEtPmRldl9jb25mLnJ4bW9kZS5vZmZs b2FkcyAmDQo+IERFVl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FKSB7DQo+ICsJaWYgKGRldl9kYXRh LT5tdHUgPiBSVEVfRVRIRVJfTVRVKSB7DQo+ICAJCWlmIChyeHEtPm1heF9wa3RfbGVuIDw9IEk0 MEVfRVRIX01BWF9MRU4gfHwNCj4gIAkJICAgIHJ4cS0+bWF4X3BrdF9sZW4gPiBJNDBFX0ZSQU1F X1NJWkVfTUFYKSB7DQo+ICAJCQlQTURfRFJWX0xPRyhFUlIsICJtYXhpbXVtIHBhY2tldCBsZW5n dGggbXVzdA0KPiBiZSAiDQo+IEBAIC0yMzc4LDcgKzIzNzgsNiBAQCBpNDBldmZfZGV2X2luZm9f Z2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2LA0KPiBzdHJ1Y3QgcnRlX2V0aF9kZXZfaW5mbyAq ZGV2X2luZm8pDQo+ICAJCURFVl9SWF9PRkZMT0FEX1RDUF9DS1NVTSB8DQo+ICAJCURFVl9SWF9P RkZMT0FEX09VVEVSX0lQVjRfQ0tTVU0gfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9TQ0FUVEVSIHwN Cj4gLQkJREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUgfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9W TEFOX0ZJTFRFUjsNCj4gDQo+ICAJZGV2X2luZm8tPnR4X3F1ZXVlX29mZmxvYWRfY2FwYSA9IDA7 DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pNDBlL2k0MGVfcnh0eC5jIGIvZHJpdmVycy9u ZXQvaTQwZS9pNDBlX3J4dHguYw0KPiBpbmRleCBhYTQzNzk2ZWYxYWYuLmE0MjFhY2Y4ZjZiNiAx MDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHguYw0KPiArKysgYi9kcml2 ZXJzL25ldC9pNDBlL2k0MGVfcnh0eC5jDQo+IEBAIC0yOTA2LDcgKzI5MDYsNyBAQCBpNDBlX3J4 X3F1ZXVlX2NvbmZpZyhzdHJ1Y3QgaTQwZV9yeF9xdWV1ZSAqcnhxKQ0KPiAgCXJ4cS0+bWF4X3Br dF9sZW4gPQ0KPiAgCQlSVEVfTUlOKGh3LT5mdW5jX2NhcHMucnhfYnVmX2NoYWluX2xlbiAqIHJ4 cS0NCj4gPnJ4X2J1Zl9sZW4sDQo+ICAJCQkJZGF0YS0+bXR1ICsgSTQwRV9FVEhfT1ZFUkhFQUQp Ow0KPiAtCWlmIChkYXRhLT5kZXZfY29uZi5yeG1vZGUub2ZmbG9hZHMgJg0KPiBERVZfUlhfT0ZG TE9BRF9KVU1CT19GUkFNRSkgew0KPiArCWlmIChkYXRhLT5tdHUgPiBSVEVfRVRIRVJfTVRVKSB7 DQo+ICAJCWlmIChyeHEtPm1heF9wa3RfbGVuIDw9IEk0MEVfRVRIX01BWF9MRU4gfHwNCj4gIAkJ CXJ4cS0+bWF4X3BrdF9sZW4gPiBJNDBFX0ZSQU1FX1NJWkVfTUFYKSB7DQo+ICAJCQlQTURfRFJW X0xPRyhFUlIsICJtYXhpbXVtIHBhY2tldCBsZW5ndGggbXVzdA0KPiAiDQo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL25ldC9pYXZmL2lhdmZfZXRoZGV2LmMgYi9kcml2ZXJzL25ldC9pYXZmL2lhdmZf ZXRoZGV2LmMNCj4gaW5kZXggMDQ5NjcxZWYzZGE5Li5mMTU2YWRkODBlMGQgMTAwNjQ0DQo+IC0t LSBhL2RyaXZlcnMvbmV0L2lhdmYvaWF2Zl9ldGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9p YXZmL2lhdmZfZXRoZGV2LmMNCj4gQEAgLTU3NCw3ICs1NzQsNyBAQCBpYXZmX2luaXRfcnhxKHN0 cnVjdCBydGVfZXRoX2RldiAqZGV2LCBzdHJ1Y3QNCj4gaWF2Zl9yeF9xdWV1ZSAqcnhxKQ0KPiAg CS8qIENoZWNrIGlmIHRoZSBqdW1ibyBmcmFtZSBhbmQgbWF4aW11bSBwYWNrZXQgbGVuZ3RoIGFy ZSBzZXQNCj4gIAkgKiBjb3JyZWN0bHkuDQo+ICAJICovDQo+IC0JaWYgKGRldi0+ZGF0YS0+ZGV2 X2NvbmYucnhtb2RlLm9mZmxvYWRzICYNCj4gREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUUpIHsN Cj4gKwlpZiAoZGV2LT5kYXRhLT5tdHUgJiBSVEVfRVRIRVJfTVRVKSB7DQo+ICAJCWlmIChtYXhf cGt0X2xlbiA8PSBJQVZGX0VUSF9NQVhfTEVOIHx8DQo+ICAJCSAgICBtYXhfcGt0X2xlbiA+IElB VkZfRlJBTUVfU0laRV9NQVgpIHsNCj4gIAkJCVBNRF9EUlZfTE9HKEVSUiwgIm1heGltdW0gcGFj a2V0IGxlbmd0aCBtdXN0DQo+IGJlICINCj4gQEAgLTkzOSw3ICs5MzksNiBAQCBpYXZmX2Rldl9p bmZvX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwgc3RydWN0DQo+IHJ0ZV9ldGhfZGV2X2lu Zm8gKmRldl9pbmZvKQ0KPiAgCQlERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gfA0KPiAgCQlERVZf UlhfT0ZGTE9BRF9PVVRFUl9JUFY0X0NLU1VNIHwNCj4gIAkJREVWX1JYX09GRkxPQURfU0NBVFRF UiB8DQo+IC0JCURFVl9SWF9PRkZMT0FEX0pVTUJPX0ZSQU1FIHwNCj4gIAkJREVWX1JYX09GRkxP QURfVkxBTl9GSUxURVIgfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9SU1NfSEFTSDsNCj4gDQo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pY2UvaWNlX2RjZl9ldGhkZXYuYw0KPiBiL2RyaXZlcnMv bmV0L2ljZS9pY2VfZGNmX2V0aGRldi5jDQo+IGluZGV4IDM0YjZjOWIyYTdlZC4uNzJmZGNjMjlj MjhhIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9pY2UvaWNlX2RjZl9ldGhkZXYuYw0KPiAr KysgYi9kcml2ZXJzL25ldC9pY2UvaWNlX2RjZl9ldGhkZXYuYw0KPiBAQCAtNjUsNyArNjUsNyBA QCBpY2VfZGNmX2luaXRfcnhxKHN0cnVjdCBydGVfZXRoX2RldiAqZGV2LCBzdHJ1Y3QNCj4gaWNl X3J4X3F1ZXVlICpyeHEpDQo+ICAJLyogQ2hlY2sgaWYgdGhlIGp1bWJvIGZyYW1lIGFuZCBtYXhp bXVtIHBhY2tldCBsZW5ndGggYXJlIHNldA0KPiAgCSAqIGNvcnJlY3RseS4NCj4gIAkgKi8NCj4g LQlpZiAoZGV2LT5kYXRhLT5kZXZfY29uZi5yeG1vZGUub2ZmbG9hZHMgJg0KPiBERVZfUlhfT0ZG TE9BRF9KVU1CT19GUkFNRSkgew0KPiArCWlmIChkZXZfZGF0YS0+bXR1ID4gUlRFX0VUSEVSX01U VSkgew0KPiAgCQlpZiAobWF4X3BrdF9sZW4gPD0gSUNFX0VUSF9NQVhfTEVOIHx8DQo+ICAJCSAg ICBtYXhfcGt0X2xlbiA+IElDRV9GUkFNRV9TSVpFX01BWCkgew0KPiAgCQkJUE1EX0RSVl9MT0co RVJSLCAibWF4aW11bSBwYWNrZXQgbGVuZ3RoIG11c3QNCj4gYmUgIg0KPiBAQCAtNjY0LDcgKzY2 NCw2IEBAIGljZV9kY2ZfZGV2X2luZm9fZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2LA0KPiAg CQlERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9PVVRFUl9J UFY0X0NLU1VNIHwNCj4gIAkJREVWX1JYX09GRkxPQURfU0NBVFRFUiB8DQo+IC0JCURFVl9SWF9P RkZMT0FEX0pVTUJPX0ZSQU1FIHwNCj4gIAkJREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVIgfA0K PiAgCQlERVZfUlhfT0ZGTE9BRF9SU1NfSEFTSDsNCj4gIAlkZXZfaW5mby0+dHhfb2ZmbG9hZF9j YXBhID0NCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2ljZS9pY2VfZGNmX3ZmX3JlcHJlc2Vu dG9yLmMNCj4gYi9kcml2ZXJzL25ldC9pY2UvaWNlX2RjZl92Zl9yZXByZXNlbnRvci5jDQo+IGlu ZGV4IDk3MDQ2MWYzZTkwYS4uMDc4NDNjNmRiYzkyIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25l dC9pY2UvaWNlX2RjZl92Zl9yZXByZXNlbnRvci5jDQo+ICsrKyBiL2RyaXZlcnMvbmV0L2ljZS9p Y2VfZGNmX3ZmX3JlcHJlc2VudG9yLmMNCj4gQEAgLTE0MSw3ICsxNDEsNiBAQCBpY2VfZGNmX3Zm X3JlcHJfZGV2X2luZm9fZ2V0KHN0cnVjdCBydGVfZXRoX2Rldg0KPiAqZGV2LA0KPiAgCQlERVZf UlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9PVVRFUl9JUFY0X0NL U1VNIHwNCj4gIAkJREVWX1JYX09GRkxPQURfU0NBVFRFUiB8DQo+IC0JCURFVl9SWF9PRkZMT0FE X0pVTUJPX0ZSQU1FIHwNCj4gIAkJREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVIgfA0KPiAgCQlE RVZfUlhfT0ZGTE9BRF9WTEFOX0VYVEVORCB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX1JTU19IQVNI Ow0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaWNlL2ljZV9ldGhkZXYuYyBiL2RyaXZlcnMv bmV0L2ljZS9pY2VfZXRoZGV2LmMNCj4gaW5kZXggYzFhOTZkM2RlMTgzLi5hMTdjMTFlOTVlMGIg MTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2ljZS9pY2VfZXRoZGV2LmMNCj4gKysrIGIvZHJp dmVycy9uZXQvaWNlL2ljZV9ldGhkZXYuYw0KPiBAQCAtMzQ5MSw3ICszNDkxLDYgQEAgaWNlX2Rl dl9pbmZvX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwgc3RydWN0DQo+IHJ0ZV9ldGhfZGV2 X2luZm8gKmRldl9pbmZvKQ0KPiANCj4gIAlkZXZfaW5mby0+cnhfb2ZmbG9hZF9jYXBhID0NCj4g IAkJREVWX1JYX09GRkxPQURfVkxBTl9TVFJJUCB8DQo+IC0JCURFVl9SWF9PRkZMT0FEX0pVTUJP X0ZSQU1FIHwNCj4gIAkJREVWX1JYX09GRkxPQURfS0VFUF9DUkMgfA0KPiAgCQlERVZfUlhfT0ZG TE9BRF9TQ0FUVEVSIHwNCj4gIAkJREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVI7DQo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL25ldC9pY2UvaWNlX3J4dHguYyBiL2RyaXZlcnMvbmV0L2ljZS9pY2Vf cnh0eC5jDQo+IGluZGV4IGEzZGU0MTcyZTJiYy4uYTdiMDkxNWRhYmZjIDEwMDY0NA0KPiAtLS0g YS9kcml2ZXJzL25ldC9pY2UvaWNlX3J4dHguYw0KPiArKysgYi9kcml2ZXJzL25ldC9pY2UvaWNl X3J4dHguYw0KPiBAQCAtMjU5LDcgKzI1OSw2IEBAIGljZV9wcm9ncmFtX2h3X3J4X3F1ZXVlKHN0 cnVjdCBpY2VfcnhfcXVldWUNCj4gKnJ4cSkNCj4gIAlzdHJ1Y3QgaWNlX3JsYW5fY3R4IHJ4X2N0 eDsNCj4gIAllbnVtIGljZV9zdGF0dXMgZXJyOw0KPiAgCXVpbnQxNl90IGJ1Zl9zaXplOw0KPiAt CXN0cnVjdCBydGVfZXRoX3J4bW9kZSAqcnhtb2RlID0gJmRldl9kYXRhLT5kZXZfY29uZi5yeG1v ZGU7DQo+ICAJdWludDMyX3QgcnhkaWQgPSBJQ0VfUlhESURfQ09NTVNfT1ZTOw0KPiAgCXVpbnQz Ml90IHJlZ3ZhbDsNCj4gIAl1aW50MzJfdCBmcmFtZV9zaXplID0gZGV2X2RhdGEtPm10dSArIElD RV9FVEhfT1ZFUkhFQUQ7DQo+IEBAIC0yNzMsNyArMjcyLDcgQEAgaWNlX3Byb2dyYW1faHdfcnhf cXVldWUoc3RydWN0IGljZV9yeF9xdWV1ZQ0KPiAqcnhxKQ0KPiAgCQlSVEVfTUlOKCh1aW50MzJf dClJQ0VfU1VQUE9SVF9DSEFJTl9OVU0gKiByeHEtDQo+ID5yeF9idWZfbGVuLA0KPiAgCQkJZnJh bWVfc2l6ZSk7DQo+IA0KPiAtCWlmIChyeG1vZGUtPm9mZmxvYWRzICYgREVWX1JYX09GRkxPQURf SlVNQk9fRlJBTUUpIHsNCj4gKwlpZiAoZGV2X2RhdGEtPm10dSA+IFJURV9FVEhFUl9NVFUpIHsN Cj4gIAkJaWYgKHJ4cS0+bWF4X3BrdF9sZW4gPD0gSUNFX0VUSF9NQVhfTEVOIHx8DQo+ICAJCSAg ICByeHEtPm1heF9wa3RfbGVuID4gSUNFX0ZSQU1FX1NJWkVfTUFYKSB7DQo+ICAJCQlQTURfRFJW X0xPRyhFUlIsICJtYXhpbXVtIHBhY2tldCBsZW5ndGggbXVzdA0KPiAiDQo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL25ldC9pZ2MvaWdjX2V0aGRldi5oIGIvZHJpdmVycy9uZXQvaWdjL2lnY19ldGhk ZXYuaA0KPiBpbmRleCBiMzQ3M2I1YjE2NDYuLjVlNmMyZmYzMDE1NyAxMDA2NDQNCj4gLS0tIGEv ZHJpdmVycy9uZXQvaWdjL2lnY19ldGhkZXYuaA0KPiArKysgYi9kcml2ZXJzL25ldC9pZ2MvaWdj X2V0aGRldi5oDQo+IEBAIC03Myw3ICs3Myw2IEBAIGV4dGVybiAiQyIgew0KPiAgCURFVl9SWF9P RkZMT0FEX1VEUF9DS1NVTSAgIHwgXA0KPiAgCURFVl9SWF9PRkZMT0FEX1RDUF9DS1NVTSAgIHwg XA0KPiAgCURFVl9SWF9PRkZMT0FEX1NDVFBfQ0tTVU0gIHwgXA0KPiAtCURFVl9SWF9PRkZMT0FE X0pVTUJPX0ZSQU1FIHwgXA0KPiAgCURFVl9SWF9PRkZMT0FEX0tFRVBfQ1JDICAgIHwgXA0KPiAg CURFVl9SWF9PRkZMT0FEX1NDQVRURVIgICAgIHwgXA0KPiAgCURFVl9SWF9PRkZMT0FEX1JTU19I QVNIKQ0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaWdjL2lnY190eHJ4LmMgYi9kcml2ZXJz L25ldC9pZ2MvaWdjX3R4cnguYw0KPiBpbmRleCBkODA4MDhhMDAyZjUuLjMwOTQwODU3ZWFjMCAx MDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvaWdjL2lnY190eHJ4LmMNCj4gKysrIGIvZHJpdmVy cy9uZXQvaWdjL2lnY190eHJ4LmMNCj4gQEAgLTEwOTksNyArMTA5OSw3IEBAIGlnY19yeF9pbml0 KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2KQ0KPiAgCUlHQ19XUklURV9SRUcoaHcsIElHQ19SQ1RM LCByY3RsICYgfklHQ19SQ1RMX0VOKTsNCj4gDQo+ICAJLyogQ29uZmlndXJlIHN1cHBvcnQgb2Yg anVtYm8gZnJhbWVzLCBpZiBhbnkuICovDQo+IC0JaWYgKG9mZmxvYWRzICYgREVWX1JYX09GRkxP QURfSlVNQk9fRlJBTUUpDQo+ICsJaWYgKGRldi0+ZGF0YS0+bXR1ICYgUlRFX0VUSEVSX01UVSkN Cj4gIAkJcmN0bCB8PSBJR0NfUkNUTF9MUEU7DQo+ICAJZWxzZQ0KPiAgCQlyY3RsICY9IH5JR0Nf UkNUTF9MUEU7DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pb25pYy9pb25pY19ldGhkZXYu Yw0KPiBiL2RyaXZlcnMvbmV0L2lvbmljL2lvbmljX2V0aGRldi5jDQo+IGluZGV4IDk3NDQ3YTEw ZTQ2YS4uNzk1OTgwY2IxY2E1IDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9pb25pYy9pb25p Y19ldGhkZXYuYw0KPiArKysgYi9kcml2ZXJzL25ldC9pb25pYy9pb25pY19ldGhkZXYuYw0KPiBA QCAtNDE0LDcgKzQxNCw2IEBAIGlvbmljX2Rldl9pbmZvX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYg KmV0aF9kZXYsDQo+ICAJCURFVl9SWF9PRkZMT0FEX0lQVjRfQ0tTVU0gfA0KPiAgCQlERVZfUlhf T0ZGTE9BRF9VRFBfQ0tTVU0gfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9UQ1BfQ0tTVU0gfA0KPiAt CQlERVZfUlhfT0ZGTE9BRF9KVU1CT19GUkFNRSB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX1ZMQU5f RklMVEVSIHwNCj4gIAkJREVWX1JYX09GRkxPQURfVkxBTl9TVFJJUCB8DQo+ICAJCURFVl9SWF9P RkZMT0FEX1NDQVRURVIgfA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaXBuM2tlL2lwbjNr ZV9yZXByZXNlbnRvci5jDQo+IGIvZHJpdmVycy9uZXQvaXBuM2tlL2lwbjNrZV9yZXByZXNlbnRv ci5jDQo+IGluZGV4IDM3N2I5NmMwMjM2YS4uNGU1ZDIzNGU4YzdkIDEwMDY0NA0KPiAtLS0gYS9k cml2ZXJzL25ldC9pcG4za2UvaXBuM2tlX3JlcHJlc2VudG9yLmMNCj4gKysrIGIvZHJpdmVycy9u ZXQvaXBuM2tlL2lwbjNrZV9yZXByZXNlbnRvci5jDQo+IEBAIC03NCw4ICs3NCw3IEBAIGlwbjNr ZV9ycHN0X2Rldl9pbmZvc19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2DQo+ICpldGhkZXYsDQo+ICAJ CURFVl9SWF9PRkZMT0FEX1RDUF9DS1NVTSB8DQo+ICAJCURFVl9SWF9PRkZMT0FEX09VVEVSX0lQ VjRfQ0tTVU0gfA0KPiAgCQlERVZfUlhfT0ZGTE9BRF9WTEFOX0VYVEVORCB8DQo+IC0JCURFVl9S WF9PRkZMT0FEX1ZMQU5fRklMVEVSIHwNCj4gLQkJREVWX1JYX09GRkxPQURfSlVNQk9fRlJBTUU7 DQo+ICsJCURFVl9SWF9PRkZMT0FEX1ZMQU5fRklMVEVSOw0KPiANCj4gIAlkZXZfaW5mby0+dHhf cXVldWVfb2ZmbG9hZF9jYXBhID0NCj4gREVWX1RYX09GRkxPQURfTUJVRl9GQVNUX0ZSRUU7DQo+ ICAJZGV2X2luZm8tPnR4X29mZmxvYWRfY2FwYSA9DQoNClJldmlld2VkLWJ5OiBSb3NlbiBYdSA8 cm9zZW4ueHVAaW50ZWwuY29tPg0KDQo=