From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BEC81C47076 for ; Fri, 21 May 2021 15:27:45 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 8394260698 for ; Fri, 21 May 2021 15:27:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8394260698 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 076486E233; Fri, 21 May 2021 15:27:44 +0000 (UTC) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7BEBA6E233 for ; Fri, 21 May 2021 15:27:42 +0000 (UTC) IronPort-SDR: /Wz2sYcOM8ym4KffkRSnidVJ+tE0ZLpEfzZlwtuLo7A+G6xugKxyN4Ees8Nf9xmgcVK2RVbILf zFH4dCFDOiKg== X-IronPort-AV: E=McAfee;i="6200,9189,9990"; a="188634749" X-IronPort-AV: E=Sophos;i="5.82,319,1613462400"; d="scan'208";a="188634749" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 May 2021 08:27:41 -0700 IronPort-SDR: xVHr6I0akONiMtCmkMDmPPHbpH8olVdjFZVDu+zuYvQTcDhQlT6CeZtBiG+oEuCEMTl26M39oW /ciSNV1PTggA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,319,1613462400"; d="scan'208";a="395364737" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by orsmga003.jf.intel.com with ESMTP; 21 May 2021 08:27:41 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Fri, 21 May 2021 08:27:41 -0700 Received: from irsmsx605.ger.corp.intel.com (163.33.146.138) 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.2242.4; Fri, 21 May 2021 08:27:40 -0700 Received: from irsmsx605.ger.corp.intel.com ([163.33.146.138]) by IRSMSX605.ger.corp.intel.com ([163.33.146.138]) with mapi id 15.01.2242.008; Fri, 21 May 2021 16:27:38 +0100 From: "Mun, Gwan-gyeong" To: "intel-gfx@lists.freedesktop.org" , "Souza, Jose" Thread-Topic: [Intel-gfx] [PATCH v2 3/4] drm/i915/display: Nuke has_infoframe Thread-Index: AQHXSRetgYIe3uJdkE2yMKOK4B97garuCLWA Date: Fri, 21 May 2021 15:27:38 +0000 Message-ID: References: <20210514232247.144542-1-jose.souza@intel.com> <20210514232247.144542-3-jose.souza@intel.com> In-Reply-To: <20210514232247.144542-3-jose.souza@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.184.70.1] Content-ID: <29B2D56CA7487149908036FBA2AE60D9@intel.com> MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH v2 3/4] drm/i915/display: Nuke has_infoframe X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gRnJpLCAyMDIxLTA1LTE0IGF0IDE2OjIyIC0wNzAwLCBKb3PDqSBSb2JlcnRvIGRlIFNvdXph IHdyb3RlOg0KPiBUaGlzIHdhcyBvbmx5IHJlZHVudGFudCBpbmZvcm1hdGlvbiBoYXNfaGRtaV9z aW5rIGNhbiBkbyB0aGUgc2FtZSBqb2IuDQo+IHNldF9pbmZvZnJhbWVzKCkgaG9va3Mgd2lsbCBj YWxsIGludGVsX3dyaXRlX2luZm9mcmFtZSgpIGZvciB0aGUNCj4gc3VwcG9ydGVkIGluZm9mcmFt ZXMgdHlwZXMgYW5kIGl0IHdpbGwgb25seSBiZSBlbmFibGVkIGlmIGdpdmVuIHR5cGUNCj4gaXMg c2V0IGluIGNydGNfc3RhdGUtPmluZm9mcmFtZXMuZW5hYmxlLg0KPiANCj4gV2hpbGUgYXQgaXQg YWxzbyBmaXhpbmcgdGhlIHN0eWxlIG9mIGRpZ19wb3J0LT5zZXRfaW5mb2ZyYW1lcygpIGNhbGxz Lg0KPiANCj4gQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5j b20+DQo+IFNpZ25lZC1vZmYtYnk6IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFA aW50ZWwuY29tPg0KPiAtLS0NCj4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2c0eF9o ZG1pLmPCoMKgwqDCoMKgwqAgfCAyMiArKysrKystLS0tLS0tLS0tLS0tDQo+IMKgZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kZGkuY8KgwqDCoMKgwqAgfCAxNyArKysrKy0tLS0t LS0tLQ0KPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jwqAg fMKgIDYgKystLS0NCj4gwqAuLi4vZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVz LmjCoMKgwqAgfMKgIDMgLS0tDQo+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9kcF9tc3QuY8KgwqAgfMKgIDQgKystLQ0KPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfaGRtaS5jwqDCoMKgwqAgfCAxMyArKysrKy0tLS0tLQ0KPiDCoDYgZmlsZXMgY2hh bmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgNDMgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9nNHhfaGRtaS5jDQo+IGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9nNHhfaGRtaS5jDQo+IGluZGV4IGJlMzUyZTlmMGFmYy4uZjM1 ZGI5NmU2MjM5IDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2c0 eF9oZG1pLmMNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9nNHhfaGRtaS5j DQo+IEBAIC0xMDUsOSArMTA1LDYgQEAgc3RhdGljIHZvaWQgaW50ZWxfaGRtaV9nZXRfY29uZmln KHN0cnVjdA0KPiBpbnRlbF9lbmNvZGVyICplbmNvZGVyLA0KPiDCoMKgwqDCoMKgwqDCoMKgcGlw ZV9jb25maWctPmluZm9mcmFtZXMuZW5hYmxlIHw9DQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgaW50ZWxfaGRtaV9pbmZvZnJhbWVzX2VuYWJsZWQoZW5jb2RlciwgcGlwZV9jb25m aWcpOw0KPiDCoA0KPiAtwqDCoMKgwqDCoMKgwqBpZiAocGlwZV9jb25maWctPmluZm9mcmFtZXMu ZW5hYmxlKQ0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcGlwZV9jb25maWctPmhh c19pbmZvZnJhbWUgPSB0cnVlOw0KPiAtDQoicGlwZV9jb25maWctPmluZm9mcmFtZXMuZW5hYmxl IiBpcyBzZXQgd2l0aCBpbmZvcm1hdGlvbiBhYm91dCB0aGUNCmluZm9mcmFtZXMgY3VycmVudGx5 IGFjdGl2ZSBpbiB0aGUgaGFyZHdhcmUgdGhyb3VnaCAicGlwZV9jb25maWctDQo+aW5mb2ZyYW1l cy5lbmFibGUgfD0gaW50ZWxfaGRtaV9pbmZvZnJhbWVzX2VuYWJsZWQoZW5jb2RlciwNCnBpcGVf Y29uZmlnKTsiLg0KDQpUaGVyZWZvcmUsIHdoZW4gY2FsbGluZyBzZXRfaW5mb2ZyYW1lcygpIHNl bWFudGljYWxseSwgdGhlDQpoYXNfaW5mb2ZyYW1lIGluZm9ybWF0aW9uIHNldCBieSAiaWYgKHBp cGVfY29uZmlnLT5pbmZvZnJhbWVzLmVuYWJsZSkNCnBpcGVfY29uZmlnLT5oYXNfaW5mb2ZyYW1l ID0gdHJ1ZTsiIGlzIG1vcmUgY2xlYXIuDQoNCj4gwqDCoMKgwqDCoMKgwqDCoGlmICh0bXAgJiBI RE1JX0FVRElPX0VOQUJMRSkNCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBwaXBl X2NvbmZpZy0+aGFzX2F1ZGlvID0gdHJ1ZTsNCj4gwqANCj4gQEAgLTM0Myw5ICszNDAsNyBAQCBz dGF0aWMgdm9pZCBpbnRlbF9kaXNhYmxlX2hkbWkoc3RydWN0DQo+IGludGVsX2F0b21pY19zdGF0 ZSAqc3RhdGUsDQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaW50ZWxfc2V0X3Bj aF9maWZvX3VuZGVycnVuX3JlcG9ydGluZyhkZXZfcHJpdiwgUElQRV9BLA0KPiB0cnVlKTsNCj4g wqDCoMKgwqDCoMKgwqDCoH0NCj4gwqANCj4gLcKgwqDCoMKgwqDCoMKgZGlnX3BvcnQtPnNldF9p bmZvZnJhbWVzKGVuY29kZXIsDQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmYWxzZSwNCj4gLcKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIG9sZF9jcnRjX3N0YXRlLCBvbGRfY29ubl9zdGF0ZSk7DQo+ICvCoMKgwqDC oMKgwqDCoGRpZ19wb3J0LT5zZXRfaW5mb2ZyYW1lcyhlbmNvZGVyLCBmYWxzZSwgb2xkX2NydGNf c3RhdGUsDQo+IG9sZF9jb25uX3N0YXRlKTsNCj4gwqANCj4gwqDCoMKgwqDCoMKgwqDCoGludGVs X2RwX2R1YWxfbW9kZV9zZXRfdG1kc19vdXRwdXQoaW50ZWxfaGRtaSwgZmFsc2UpOw0KPiDCoH0N Cj4gQEAgLTM5MCw5ICszODUsOCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9oZG1pX3ByZV9lbmFibGUo c3RydWN0DQo+IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsDQo+IMKgDQo+IMKgwqDCoMKgwqDC oMKgwqBpbnRlbF9oZG1pX3ByZXBhcmUoZW5jb2RlciwgcGlwZV9jb25maWcpOw0KPiDCoA0KPiAt wqDCoMKgwqDCoMKgwqBkaWdfcG9ydC0+c2V0X2luZm9mcmFtZXMoZW5jb2RlciwNCj4gLcKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHBpcGVfY29uZmlnLT5oYXNfaW5mb2ZyYW1lLA0KPiAtwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgcGlwZV9jb25maWcsIGNvbm5fc3RhdGUpOw0KPiArwqDCoMKgwqDCoMKgwqBkaWdfcG9y dC0+c2V0X2luZm9mcmFtZXMoZW5jb2RlciwgcGlwZV9jb25maWctPmhhc19oZG1pX3NpbmssDQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBwaXBlX2NvbmZpZywgY29ubl9zdGF0ZSk7DQo+IMKgfQ0KPiDCoA0KPiDCoHN0YXRp YyB2b2lkIHZsdl9oZG1pX3ByZV9lbmFibGUoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3Rh dGUsDQo+IEBAIC00MTAsOSArNDA0LDggQEAgc3RhdGljIHZvaWQgdmx2X2hkbWlfcHJlX2VuYWJs ZShzdHJ1Y3QNCj4gaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwNCj4gwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAweDJiMjQ1 ZjVmLCAweDAwMDAyMDAwLA0KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDB4NTU3OGI4M2EsIDB4MmIyNDc4NzgpOw0KPiDC oA0KPiAtwqDCoMKgwqDCoMKgwqBkaWdfcG9ydC0+c2V0X2luZm9mcmFtZXMoZW5jb2RlciwNCj4g LcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IHBpcGVfY29uZmlnLT5oYXNfaW5mb2ZyYW1lLA0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcGlwZV9jb25maWcsIGNvbm5fc3RhdGUp Ow0KPiArwqDCoMKgwqDCoMKgwqBkaWdfcG9ydC0+c2V0X2luZm9mcmFtZXMoZW5jb2RlciwgcGlw ZV9jb25maWctPmhhc19oZG1pX3NpbmssDQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBwaXBlX2NvbmZpZywgY29ubl9zdGF0 ZSk7DQo+IMKgDQo+IMKgwqDCoMKgwqDCoMKgwqBnNHhfZW5hYmxlX2hkbWkoc3RhdGUsIGVuY29k ZXIsIHBpcGVfY29uZmlnLCBjb25uX3N0YXRlKTsNCj4gwqANCj4gQEAgLTQ4Nyw5ICs0ODAsOCBA QCBzdGF0aWMgdm9pZCBjaHZfaGRtaV9wcmVfZW5hYmxlKHN0cnVjdA0KPiBpbnRlbF9hdG9taWNf c3RhdGUgKnN0YXRlLA0KPiDCoMKgwqDCoMKgwqDCoMKgLyogVXNlIDgwMG1WLTBkQiAqLw0KPiDC oMKgwqDCoMKgwqDCoMKgY2h2X3NldF9waHlfc2lnbmFsX2xldmVsKGVuY29kZXIsIHBpcGVfY29u ZmlnLCAxMjgsIDEwMiwNCj4gZmFsc2UpOw0KPiDCoA0KPiAtwqDCoMKgwqDCoMKgwqBkaWdfcG9y dC0+c2V0X2luZm9mcmFtZXMoZW5jb2RlciwNCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHBpcGVfY29uZmlnLT5oYXNfaW5mb2ZyYW1l LA0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgcGlwZV9jb25maWcsIGNvbm5fc3RhdGUpOw0KPiArwqDCoMKgwqDCoMKgwqBkaWdfcG9y dC0+c2V0X2luZm9mcmFtZXMoZW5jb2RlciwgcGlwZV9jb25maWctPmhhc19oZG1pX3NpbmssDQo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBwaXBlX2NvbmZpZywgY29ubl9zdGF0ZSk7DQo+IMKgDQo+IMKgwqDCoMKgwqDCoMKg wqBnNHhfZW5hYmxlX2hkbWkoc3RhdGUsIGVuY29kZXIsIHBpcGVfY29uZmlnLCBjb25uX3N0YXRl KTsNCj4gwqANCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfZGRpLmMNCj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jDQo+ IGluZGV4IGI3YTJmY2U2ODRjOS4uNWJjNTUyOGYzMDkxIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RkaS5jDQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGRpLmMNCj4gQEAgLTI3MjIsOSArMjcyMiw4IEBAIHN0YXRp YyB2b2lkIGludGVsX2RkaV9wcmVfZW5hYmxlX2hkbWkoc3RydWN0DQo+IGludGVsX2F0b21pY19z dGF0ZSAqc3RhdGUsDQo+IMKgDQo+IMKgwqDCoMKgwqDCoMKgwqBpbnRlbF9kZGlfZW5hYmxlX3Bp cGVfY2xvY2soZW5jb2RlciwgY3J0Y19zdGF0ZSk7DQo+IMKgDQo+IC3CoMKgwqDCoMKgwqDCoGRp Z19wb3J0LT5zZXRfaW5mb2ZyYW1lcyhlbmNvZGVyLA0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY3J0Y19zdGF0ZS0+aGFz X2luZm9mcmFtZSwNCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNydGNfc3RhdGUsIGNvbm5fc3RhdGUpOw0KPiArwqDCoMKg wqDCoMKgwqBkaWdfcG9ydC0+c2V0X2luZm9mcmFtZXMoZW5jb2RlciwgY3J0Y19zdGF0ZS0+aGFz X2hkbWlfc2luaywNCj4gY3J0Y19zdGF0ZSwNCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbm5fc3RhdGUpOw0KPiDCoH0N Cj4gwqANCj4gwqBzdGF0aWMgdm9pZCBpbnRlbF9kZGlfcHJlX2VuYWJsZShzdHJ1Y3QgaW50ZWxf YXRvbWljX3N0YXRlICpzdGF0ZSwNCj4gQEAgLTI3NjUsOSArMjc2NCw4IEBAIHN0YXRpYyB2b2lk IGludGVsX2RkaV9wcmVfZW5hYmxlKHN0cnVjdA0KPiBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRl LA0KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoC8qIEZJWE1FIHByZWNvbXB1dGUg ZXZlcnl0aGluZyBwcm9wZXJseSAqLw0KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oC8qIEZJWE1FIGhvdyBkbyB3ZSB0dXJuIGluZm9mcmFtZXMgb2ZmIGFnYWluPyAqLw0KPiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmIChkaWdfcG9ydC0+bHNwY29uLmFjdGl2ZSAm JiBkaWdfcG9ydC0NCj4gPmRwLmhhc19oZG1pX3NpbmspDQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgZGlnX3BvcnQtPnNldF9pbmZvZnJhbWVzKGVuY29k ZXIsDQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNydGNfc3RhdGUt DQo+ID5oYXNfaW5mb2ZyYW1lLA0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBjcnRjX3N0YXRlLA0KPiBjb25uX3N0YXRlKTsNCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBkaWdfcG9ydC0+c2V0X2luZm9mcmFtZXMoZW5jb2Rl ciwgdHJ1ZSwNCj4gY3J0Y19zdGF0ZSwNCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgY29ubl9zdGF0ZSk7DQo+IMKgwqDCoMKgwqDCoMKgwqB9DQo+IMKgfQ0KPiDCoA0K PiBAQCAtMjgxMyw4ICsyODExLDggQEAgc3RhdGljIHZvaWQgaW50ZWxfZGRpX3Bvc3RfZGlzYWJs ZV9kcChzdHJ1Y3QNCj4gaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwNCj4gwqDCoMKgwqDCoMKg wqDCoGVudW0gcGh5IHBoeSA9IGludGVsX3BvcnRfdG9fcGh5KGRldl9wcml2LCBlbmNvZGVyLT5w b3J0KTsNCj4gwqANCj4gwqDCoMKgwqDCoMKgwqDCoGlmICghaXNfbXN0KQ0KPiAtwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgaW50ZWxfZHBfc2V0X2luZm9mcmFtZXMoZW5jb2RlciwgZmFs c2UsDQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBvbGRfY3J0Y19zdGF0ZSwNCj4gb2xkX2Nvbm5f c3RhdGUpOw0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaW50ZWxfZHBfc2V0X2lu Zm9mcmFtZXMoZW5jb2RlciwgZmFsc2UsIG9sZF9jcnRjX3N0YXRlLA0KPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgb2xkX2Nvbm5fc3RhdGUpOw0KPiDCoA0KPiDCoMKgwqDCoMKgwqDCoMKgLyoNCj4g wqDCoMKgwqDCoMKgwqDCoCAqIFBvd2VyIGRvd24gc2luayBiZWZvcmUgZGlzYWJsaW5nIHRoZSBw b3J0LCBvdGhlcndpc2Ugd2UgZW5kDQo+IEBAIC0zNTY5LDkgKzM1NjcsNiBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9kZGlfcmVhZF9mdW5jX2N0bChzdHJ1Y3QNCj4gaW50ZWxfZW5jb2RlciAqZW5jb2Rl ciwNCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBwaXBlX2NvbmZpZy0+aW5mb2Zy YW1lcy5lbmFibGUgfD0NCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgaW50ZWxfaGRtaV9pbmZvZnJhbWVzX2VuYWJsZWQoZW5jb2RlciwNCj4gcGlwZV9j b25maWcpOw0KPiDCoA0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWYgKHBpcGVf Y29uZmlnLT5pbmZvZnJhbWVzLmVuYWJsZSkNCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqBwaXBlX2NvbmZpZy0+aGFzX2luZm9mcmFtZSA9IHRydWU7DQo+ IC0NCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpZiAodGVtcCAmIFRSQU5TX0RE SV9IRE1JX1NDUkFNQkxJTkcpDQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoHBpcGVfY29uZmlnLT5oZG1pX3NjcmFtYmxpbmcgPSB0cnVlOw0KPiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoGlmICh0ZW1wICYgVFJBTlNfRERJX0hJR0hfVE1E U19DSEFSX1JBVEUpDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2Rpc3BsYXkuYw0KPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZGlzcGxheS5jDQo+IGluZGV4IGViYWMxYmQ1Y2ZlNS4uNWQ2OGIyNTNiZGZlIDEwMDY0NA0KPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYw0KPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYw0KPiBAQCAtNzU5 NCw5ICs3NTk0LDggQEAgc3RhdGljIHZvaWQgaW50ZWxfZHVtcF9waXBlX2NvbmZpZyhjb25zdCBz dHJ1Y3QNCj4gaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcsDQo+IMKgwqDCoMKgwqDCoMKg wqB9DQo+IMKgDQo+IMKgwqDCoMKgwqDCoMKgwqBkcm1fZGJnX2ttcygmZGV2X3ByaXYtPmRybSwN Cj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiYXVkaW86ICVpLCBpbmZv ZnJhbWVzOiAlaSwgaW5mb2ZyYW1lcyBlbmFibGVkOg0KPiAweCV4XG4iLA0KPiAtwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHBpcGVfY29uZmlnLT5oYXNfYXVkaW8sIHBpcGVf Y29uZmlnLT5oYXNfaW5mb2ZyYW1lLA0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHBpcGVfY29uZmlnLT5pbmZvZnJhbWVzLmVuYWJsZSk7DQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgImF1ZGlvOiAlaSwgaW5mb2ZyYW1lcyBlbmFibGVkOiAw eCV4XG4iLA0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHBpcGVfY29u ZmlnLT5oYXNfYXVkaW8sIHBpcGVfY29uZmlnLQ0KPiA+aW5mb2ZyYW1lcy5lbmFibGUpOw0KPiDC oA0KPiDCoMKgwqDCoMKgwqDCoMKgaWYgKHBpcGVfY29uZmlnLT5pbmZvZnJhbWVzLmVuYWJsZSAm DQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqANCj4gaW50ZWxfaGRtaV9pbmZvZnJhbWVfZW5hYmxl KEhETUlfUEFDS0VUX1RZUEVfR0VORVJBTF9DT05UUk9MKSkNCj4gQEAgLTg1MDgsNyArODUwNyw2 IEBAIGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoY29uc3Qgc3RydWN0DQo+IGludGVsX2NydGNf c3RhdGUgKmN1cnJlbnRfY29uZmlnLA0KPiDCoA0KPiDCoMKgwqDCoMKgwqDCoMKgUElQRV9DT05G X0NIRUNLX0JPT0woaGRtaV9zY3JhbWJsaW5nKTsNCj4gwqDCoMKgwqDCoMKgwqDCoFBJUEVfQ09O Rl9DSEVDS19CT09MKGhkbWlfaGlnaF90bWRzX2Nsb2NrX3JhdGlvKTsNCj4gLcKgwqDCoMKgwqDC oMKgUElQRV9DT05GX0NIRUNLX0JPT0woaGFzX2luZm9mcmFtZSk7DQo+IMKgwqDCoMKgwqDCoMKg wqAvKiBGSVhNRSBkbyB0aGUgcmVhZG91dCBwcm9wZXJseSBhbmQgZ2V0IHJpZCBvZiB0aGlzIHF1 aXJrICovDQo+IMKgwqDCoMKgwqDCoMKgwqBpZiAoIVBJUEVfQ09ORl9RVUlSSyhQSVBFX0NPTkZJ R19RVUlSS19CSUdKT0lORVJfU0xBVkUpKQ0KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoFBJUEVfQ09ORl9DSEVDS19CT09MKGZlY19lbmFibGUpOw0KPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgNCj4gYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaA0KPiBpbmRleCA5 YzBhZGZjNjBjNmYuLjY2OWM1ZDhhMjEzMSAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgNCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmgNCj4gQEAgLTk1Miw5ICs5NTIs NiBAQCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSB7DQo+IMKgwqDCoMKgwqDCoMKgwqAgKiBiZXR3 ZWVuIHBjaCBlbmNvZGVycyBhbmQgY3B1IGVuY29kZXJzLiAqLw0KPiDCoMKgwqDCoMKgwqDCoMKg Ym9vbCBoYXNfcGNoX2VuY29kZXI7DQo+IMKgDQo+IC3CoMKgwqDCoMKgwqDCoC8qIEFyZSB3ZSBz ZW5kaW5nIGluZm9mcmFtZXMgb24gdGhlIGF0dGFjaGVkIHBvcnQgKi8NCj4gLcKgwqDCoMKgwqDC oMKgYm9vbCBoYXNfaW5mb2ZyYW1lOw0KPiAtDQo+IMKgwqDCoMKgwqDCoMKgwqAvKiBDUFUgVHJh bnNjb2RlciBmb3IgdGhlIHBpcGUuIEN1cnJlbnRseSB0aGlzIGNhbiBvbmx5IGRpZmZlcg0KPiBm cm9tIHRoZQ0KPiDCoMKgwqDCoMKgwqDCoMKgICogcGlwZSBvbiBIYXN3ZWxsIGFuZCBsYXRlciAo d2hlcmUgd2UgaGF2ZSBhIHNwZWNpYWwgZURQDQo+IHRyYW5zY29kZXIpDQo+IMKgwqDCoMKgwqDC oMKgwqAgKiBhbmQgQnJveHRvbiAod2hlcmUgd2UgaGF2ZSBzcGVjaWFsIERTSSB0cmFuc2NvZGVy cykuICovDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2RwX21zdC5jDQo+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcF9tc3Qu Yw0KPiBpbmRleCAzMzJkMmY5ZmRhNWMuLjFlYjU0ZjhlZDUxYSAxMDA2NDQNCj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcF9tc3QuYw0KPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5jDQo+IEBAIC00MzUsOCArNDM1LDgg QEAgc3RhdGljIHZvaWQgaW50ZWxfbXN0X3Bvc3RfZGlzYWJsZV9kcChzdHJ1Y3QNCj4gaW50ZWxf YXRvbWljX3N0YXRlICpzdGF0ZSwNCj4gwqDCoMKgwqDCoMKgwqDCoCAqIHRoZSB0cmFuc2NvZGVy IGNsb2NrIHNlbGVjdCBpcyBzZXQgdG8gbm9uZS4NCj4gwqDCoMKgwqDCoMKgwqDCoCAqLw0KPiDC oMKgwqDCoMKgwqDCoMKgaWYgKGxhc3RfbXN0X3N0cmVhbSkNCj4gLcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoGludGVsX2RwX3NldF9pbmZvZnJhbWVzKCZkaWdfcG9ydC0+YmFzZSwgZmFs c2UsDQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBvbGRfY3J0Y19zdGF0ZSwgTlVMTCk7DQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBpbnRlbF9kcF9zZXRfaW5mb2ZyYW1lcygmZGln X3BvcnQtPmJhc2UsIGZhbHNlLA0KPiBvbGRfY3J0Y19zdGF0ZSwNCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoG9sZF9jb25uX3N0YXRlKTsNCj4gwqDCoMKgwqDCoMKgwqDCoC8qDQo+IMKgwqDCoMKg wqDCoMKgwqAgKiBGcm9tIFRHTCBzcGVjOiAiSWYgbXVsdGktc3RyZWFtIHNsYXZlIHRyYW5zY29k ZXI6IENvbmZpZ3VyZQ0KPiDCoMKgwqDCoMKgwqDCoMKgICogVHJhbnNjb2RlciBDbG9jayBTZWxl Y3QgdG8gZGlyZWN0IG5vIGNsb2NrIHRvIHRoZQ0KPiB0cmFuc2NvZGVyIg0KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9oZG1pLmMNCj4gYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hkbWkuYw0KPiBpbmRleCA0YTFiMmQ4NjNiMGMu LjRiOTcwNTg3MDY3ZCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9oZG1pLmMNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9oZG1pLmMNCj4gQEAgLTcxMiw3ICs3MTIsNyBAQCBpbnRlbF9oZG1pX2NvbXB1dGVfYXZpX2lu Zm9mcmFtZShzdHJ1Y3QNCj4gaW50ZWxfZW5jb2RlciAqZW5jb2RlciwNCj4gwqDCoMKgwqDCoMKg wqDCoHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IgPSBjb25uX3N0YXRlLT5jb25uZWN0 b3I7DQo+IMKgwqDCoMKgwqDCoMKgwqBpbnQgcmV0Ow0KPiDCoA0KPiAtwqDCoMKgwqDCoMKgwqBp ZiAoIWNydGNfc3RhdGUtPmhhc19pbmZvZnJhbWUpDQo+ICvCoMKgwqDCoMKgwqDCoGlmICghY3J0 Y19zdGF0ZS0+aGFzX2hkbWlfc2luaykNCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqByZXR1cm4gdHJ1ZTsNCj4gwqANCj4gwqDCoMKgwqDCoMKgwqDCoGNydGNfc3RhdGUtPmluZm9m cmFtZXMuZW5hYmxlIHw9DQo+IEBAIC03NjYsNyArNzY2LDcgQEAgaW50ZWxfaGRtaV9jb21wdXRl X3NwZF9pbmZvZnJhbWUoc3RydWN0DQo+IGludGVsX2VuY29kZXIgKmVuY29kZXIsDQo+IMKgwqDC oMKgwqDCoMKgwqBzdHJ1Y3QgaGRtaV9zcGRfaW5mb2ZyYW1lICpmcmFtZSA9ICZjcnRjX3N0YXRl LQ0KPiA+aW5mb2ZyYW1lcy5zcGQuc3BkOw0KPiDCoMKgwqDCoMKgwqDCoMKgaW50IHJldDsNCj4g wqANCj4gLcKgwqDCoMKgwqDCoMKgaWYgKCFjcnRjX3N0YXRlLT5oYXNfaW5mb2ZyYW1lKQ0KPiAr wqDCoMKgwqDCoMKgwqBpZiAoIWNydGNfc3RhdGUtPmhhc19oZG1pX3NpbmspDQo+IMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIHRydWU7DQo+IMKgDQo+IMKgwqDCoMKgwqDC oMKgwqBjcnRjX3N0YXRlLT5pbmZvZnJhbWVzLmVuYWJsZSB8PQ0KPiBAQCAtNzk2LDcgKzc5Niw3 IEBAIGludGVsX2hkbWlfY29tcHV0ZV9oZG1pX2luZm9mcmFtZShzdHJ1Y3QNCj4gaW50ZWxfZW5j b2RlciAqZW5jb2RlciwNCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAmY29ubl9z dGF0ZS0+Y29ubmVjdG9yLT5kaXNwbGF5X2luZm87DQo+IMKgwqDCoMKgwqDCoMKgwqBpbnQgcmV0 Ow0KPiDCoA0KPiAtwqDCoMKgwqDCoMKgwqBpZiAoIWNydGNfc3RhdGUtPmhhc19pbmZvZnJhbWUg fHwgIWluZm8tPmhhc19oZG1pX2luZm9mcmFtZSkNCj4gK8KgwqDCoMKgwqDCoMKgaWYgKCFjcnRj X3N0YXRlLT5oYXNfaGRtaV9zaW5rIHx8ICFpbmZvLT5oYXNfaGRtaV9pbmZvZnJhbWUpDQo+IMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuIHRydWU7DQo+IMKgDQo+IMKgwqDC oMKgwqDCoMKgwqBjcnRjX3N0YXRlLT5pbmZvZnJhbWVzLmVuYWJsZSB8PQ0KPiBAQCAtODI3LDcg KzgyNyw3IEBAIGludGVsX2hkbWlfY29tcHV0ZV9kcm1faW5mb2ZyYW1lKHN0cnVjdA0KPiBpbnRl bF9lbmNvZGVyICplbmNvZGVyLA0KPiDCoMKgwqDCoMKgwqDCoMKgaWYgKERJU1BMQVlfVkVSKGRl dl9wcml2KSA8IDEwKQ0KPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJldHVybiB0 cnVlOw0KPiDCoA0KPiAtwqDCoMKgwqDCoMKgwqBpZiAoIWNydGNfc3RhdGUtPmhhc19pbmZvZnJh bWUpDQo+ICvCoMKgwqDCoMKgwqDCoGlmICghY3J0Y19zdGF0ZS0+aGFzX2hkbWlfc2luaykNCj4g wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqByZXR1cm4gdHJ1ZTsNCj4gwqANCj4gwqDC oMKgwqDCoMKgwqDCoGlmICghY29ubl9zdGF0ZS0+aGRyX291dHB1dF9tZXRhZGF0YSkNCj4gQEAg LTEwMTgsNyArMTAxOCw3IEBAIHN0YXRpYyB2b2lkDQo+IGludGVsX2hkbWlfY29tcHV0ZV9nY3Bf aW5mb2ZyYW1lKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLA0KPiDCoHsNCj4gwqDCoMKg wqDCoMKgwqDCoHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5j b2Rlci0+YmFzZS5kZXYpOw0KPiDCoA0KPiAtwqDCoMKgwqDCoMKgwqBpZiAoSVNfRzRYKGRldl9w cml2KSB8fCAhY3J0Y19zdGF0ZS0+aGFzX2luZm9mcmFtZSkNCj4gK8KgwqDCoMKgwqDCoMKgaWYg KElTX0c0WChkZXZfcHJpdikgfHwgIWNydGNfc3RhdGUtPmhhc19oZG1pX3NpbmspDQo+IMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcmV0dXJuOw0KPiDCoA0KPiDCoMKgwqDCoMKgwqDC oMKgY3J0Y19zdGF0ZS0+aW5mb2ZyYW1lcy5lbmFibGUgfD0NCj4gQEAgLTIxNzIsOSArMjE3Miw2 IEBAIGludCBpbnRlbF9oZG1pX2NvbXB1dGVfY29uZmlnKHN0cnVjdA0KPiBpbnRlbF9lbmNvZGVy ICplbmNvZGVyLA0KPiDCoMKgwqDCoMKgwqDCoMKgcGlwZV9jb25maWctPmhhc19oZG1pX3Npbmsg PSBpbnRlbF9oYXNfaGRtaV9zaW5rKGludGVsX2hkbWksDQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29ubl9zdGF0ZSk7DQo+IMKgDQo+ IC3CoMKgwqDCoMKgwqDCoGlmIChwaXBlX2NvbmZpZy0+aGFzX2hkbWlfc2luaykNCj4gLcKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHBpcGVfY29uZmlnLT5oYXNfaW5mb2ZyYW1lID0gdHJ1 ZTsNCj4gLQ0KPiDCoMKgwqDCoMKgwqDCoMKgaWYgKGFkanVzdGVkX21vZGUtPmZsYWdzICYgRFJN X01PREVfRkxBR19EQkxDTEspDQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcGlw ZV9jb25maWctPnBpeGVsX211bHRpcGxpZXIgPSAyOw0KPiDCoA0KDQpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK