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.8 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 B3B79C4338F for ; Wed, 4 Aug 2021 00:15:34 +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 6664B60EBC for ; Wed, 4 Aug 2021 00:15:31 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 6664B60EBC Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 9124D6E98A; Wed, 4 Aug 2021 00:15:22 +0000 (UTC) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 675A56E98B for ; Wed, 4 Aug 2021 00:15:02 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6200,9189,10065"; a="235762659" X-IronPort-AV: E=Sophos;i="5.84,293,1620716400"; d="scan'208";a="235762659" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Aug 2021 17:15:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,293,1620716400"; d="scan'208";a="636794941" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by orsmga005.jf.intel.com with ESMTP; 03 Aug 2021 17:15:01 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.10; Tue, 3 Aug 2021 17:15:00 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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.10; Tue, 3 Aug 2021 17:15:00 -0700 Received: from orsmsx610.amr.corp.intel.com ([10.22.229.23]) by ORSMSX610.amr.corp.intel.com ([10.22.229.23]) with mapi id 15.01.2242.010; Tue, 3 Aug 2021 17:15:00 -0700 From: "Souza, Jose" To: "Roper, Matthew D" , "intel-gfx@lists.freedesktop.org" Thread-Topic: [Intel-gfx] [PATCH v4 03/18] drm/i915/dg2: Add forcewake table Thread-Index: AQHXhJtk0Aiy5Ey/oEaaJFvWnUQNg6ti+PQA Date: Wed, 4 Aug 2021 00:15:00 +0000 Message-ID: References: <20210729170008.2836648-1-matthew.d.roper@intel.com> <20210729170008.2836648-4-matthew.d.roper@intel.com> In-Reply-To: <20210729170008.2836648-4-matthew.d.roper@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.22.254.132] Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH v4 03/18] drm/i915/dg2: Add forcewake table 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: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gVGh1LCAyMDIxLTA3LTI5IGF0IDA5OjU5IC0wNzAwLCBNYXR0IFJvcGVyIHdyb3RlOg0KPiBU aGUgREcyIGZvcmNld2FrZSB0YWJsZSBpcyB2ZXJ5IHNpbWlsYXIgdG8gdGhlIG9uZSB1c2VkIGJ5 IFhlSFAgU0RWIChhbmQNCj4gYm90aCBwbGF0Zm9ybXMgYXJlIGV2ZW4gcHJlc2VudGVkIGFzIGEg c2luZ2xlIHRhYmxlIGluIHRoZSBic3BlYykuICBGb3INCj4gdGhlIG1vc3QgcGFydCBERzIgc3Rh cnRzIHVzaW5nIGEgZmV3IGFkZGl0aW9uYWwgcmFuZ2VzIHRoYXQgd2VyZQ0KPiAncmVzZXJ2ZWQn IG9uIFhlSFAgU0RWIGFuZCBzdG9wcyB1c2luZyBzb21lIG90aGVycy4gIEhvd2V2ZXIgdGhlcmUg aXMgYQ0KPiBzaW5nbGUgcmFuZ2UgKDB4ZDgwMC0weGQ4N2YpIHRoYXQgbmVlZHMgdG8gYmUgaGFu ZGxlZCBkaWZmZXJlbnRseQ0KPiBiZXR3ZWVuIHRoZSB0d28gcGxhdGZvcm1zIChpdCBuZWVkcyBH VCB3YWtlIG9uIFhlSFAgU0RWLCBidXQgcmVuZGVyIHdha2UNCj4gb24gREcyKSBzbyB1bmxlc3Mg d2Ugd2FudCB0byB3YWtlIGJvdGggZG9tYWlucyAod2hpY2ggY291bGQgd2FzdGUgcG93ZXIpDQo+ IG9yIGRlZmluZSBuZXcgdHlwZXMgb2YgZm9yY2V3YWtlIGRvbWFpbnMgZm9yIHRoaXMgc3BlY2lh bCBjYXNlIHdlIG5lZWQNCj4gdG8gaGF2ZSBzZXBhcmF0ZSB0YWJsZXMgZm9yIHRoZSB0d28gcGxh dGZvcm1zLiAgTGV0J3MgZGVmaW5lIHRoZSByYW5nZXMNCj4gZm9yIGJvdGggcGxhdGZvcm1zIHdp dGggYSBwYXJhbWV0ZXJpemVkIG1hY3JvIHNvIHRoYXQgd2UgZG9uJ3QgYWN0dWFsbHkNCj4gbmVl ZCB0byBkdXBsaWNhdGUgZXZlcnl0aGluZyBpbiB0aGUgY29kZS4NCj4gDQo+IEl0IHNob3VsZCBi ZSBmaW5lIGZvciBERzIgdG8gcmUtdXNlIHRoZSBYZV9IUCBzaGFkb3cgcmVnaXN0ZXIgbGlzdCBz byB3ZQ0KPiBjYW4gY29udGludWUgdG8gdXNlIHRoZSAneGVocHNkdicgTU1JTyB3cml0ZSBmdW5j dGlvbnMgYW5kIGRvbid0IG5lZWQgdG8NCj4gc3BpbiB1cCBhIHNlcGFyYXRlIERHMiBpbnN0YW5j ZS4NCg0KUmV2aWV3ZWQtYnk6IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFAaW50 ZWwuY29tPg0KDQo+IA0KPiBCc3BlYzogNjY1MzQNCj4gQ2M6IERhbmllbGUgQ2VyYW9sbyBTcHVy aW8gPGRhbmllbGUuY2VyYW9sb3NwdXJpb0BpbnRlbC5jb20+DQo+IFNpZ25lZC1vZmYtYnk6IE1h dHQgUm9wZXIgPG1hdHRoZXcuZC5yb3BlckBpbnRlbC5jb20+DQo+IC0tLQ0KPiAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMgfCAzMDUgKysrKysrKysrKysrKysrLS0tLS0tLS0t LS0tLQ0KPiAgMSBmaWxlIGNoYW5nZWQsIDE2OCBpbnNlcnRpb25zKCspLCAxMzcgZGVsZXRpb25z KC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3Jl LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYw0KPiBpbmRleCA4Y2Y1M2Y1 NDU1OWQuLjZiMzhiYzI4MTFjMSAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfdW5jb3JlLmMNCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3Jl LmMNCj4gQEAgLTEzMTcsMTQzICsxMzE3LDE3MCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVs X2ZvcmNld2FrZV9yYW5nZSBfX2dlbjEyX2Z3X3Jhbmdlc1tdID0gew0KPiAgCQkweDFkM2YwMCAt IDB4MWQzZmZmOiBWRDIgKi8NCj4gIH07DQo+ICANCj4gLS8qICpNdXN0KiBiZSBzb3J0ZWQgYnkg b2Zmc2V0IHJhbmdlcyEgU2VlIGludGVsX2Z3X3RhYmxlX2NoZWNrKCkuICovDQo+IC1zdGF0aWMg Y29uc3Qgc3RydWN0IGludGVsX2ZvcmNld2FrZV9yYW5nZSBfX3hlaHBfZndfcmFuZ2VzW10gPSB7 DQo+IC0JR0VOX0ZXX1JBTkdFKDB4MCwgMHgxZmZmLCAwKSwgLyoNCj4gLQkJICAweDAgLSAgMHhh ZmY6IHJlc2VydmVkDQo+IC0JCTB4YjAwIC0gMHgxZmZmOiBhbHdheXMgb24gKi8NCj4gLQlHRU5f RldfUkFOR0UoMHgyMDAwLCAweDI2ZmYsIEZPUkNFV0FLRV9SRU5ERVIpLA0KPiAtCUdFTl9GV19S QU5HRSgweDI3MDAsIDB4NGFmZiwgRk9SQ0VXQUtFX0dUKSwNCj4gLQlHRU5fRldfUkFOR0UoMHg0 YjAwLCAweDUxZmYsIDApLCAvKg0KPiAtCQkweDRiMDAgLSAweDRmZmY6IHJlc2VydmVkDQo+IC0J CTB4NTAwMCAtIDB4NTFmZjogYWx3YXlzIG9uICovDQo+IC0JR0VOX0ZXX1JBTkdFKDB4NTIwMCwg MHg3ZmZmLCBGT1JDRVdBS0VfUkVOREVSKSwNCj4gLQlHRU5fRldfUkFOR0UoMHg4MDAwLCAweDgx M2YsIEZPUkNFV0FLRV9HVCksDQo+IC0JR0VOX0ZXX1JBTkdFKDB4ODE0MCwgMHg4MTVmLCBGT1JD RVdBS0VfUkVOREVSKSwNCj4gLQlHRU5fRldfUkFOR0UoMHg4MTYwLCAweDgxZmYsIDApLCAvKg0K PiAtCQkweDgxNjAgLSAweDgxN2Y6IHJlc2VydmVkDQo+IC0JCTB4ODE4MCAtIDB4ODFmZjogYWx3 YXlzIG9uICovDQo+IC0JR0VOX0ZXX1JBTkdFKDB4ODIwMCwgMHg4MmZmLCBGT1JDRVdBS0VfR1Qp LA0KPiAtCUdFTl9GV19SQU5HRSgweDgzMDAsIDB4ODRmZiwgRk9SQ0VXQUtFX1JFTkRFUiksDQo+ IC0JR0VOX0ZXX1JBTkdFKDB4ODUwMCwgMHg5NGNmLCBGT1JDRVdBS0VfR1QpLCAvKg0KPiAtCQkw eDg1MDAgLSAweDg3ZmY6IGd0DQo+IC0JCTB4ODgwMCAtIDB4OGZmZjogcmVzZXJ2ZWQNCj4gLQkJ MHg5MDAwIC0gMHg5NDdmOiBndA0KPiAtCQkweDk0ODAgLSAweDk0Y2Y6IHJlc2VydmVkICovDQo+ IC0JR0VOX0ZXX1JBTkdFKDB4OTRkMCwgMHg5NTVmLCBGT1JDRVdBS0VfUkVOREVSKSwNCj4gLQlH RU5fRldfUkFOR0UoMHg5NTYwLCAweDk3ZmYsIDApLCAvKg0KPiAtCQkweDk1NjAgLSAweDk1ZmY6 IGFsd2F5cyBvbg0KPiAtCQkweDk2MDAgLSAweDk3ZmY6IHJlc2VydmVkICovDQo+IC0JR0VOX0ZX X1JBTkdFKDB4OTgwMCwgMHhjZmZmLCBGT1JDRVdBS0VfR1QpLCAvKg0KPiAtCQkweDk4MDAgLSAw eGI0ZmY6IGd0DQo+IC0JCTB4YjUwMCAtIDB4YmZmZjogcmVzZXJ2ZWQNCj4gLQkJMHhjMDAwIC0g MHhjZmZmOiBndCAqLw0KPiAtCUdFTl9GV19SQU5HRSgweGQwMDAsIDB4ZDdmZiwgMCksDQo+IC0J R0VOX0ZXX1JBTkdFKDB4ZDgwMCwgMHhkYmZmLCBGT1JDRVdBS0VfR1QpLA0KPiAtCUdFTl9GV19S QU5HRSgweGRjMDAsIDB4ZGNmZiwgRk9SQ0VXQUtFX1JFTkRFUiksDQo+IC0JR0VOX0ZXX1JBTkdF KDB4ZGQwMCwgMHhkZTdmLCBGT1JDRVdBS0VfR1QpLCAvKg0KPiAtCQkweGRkMDAgLSAweGRkZmY6 IGd0DQo+IC0JCTB4ZGUwMCAtIDB4ZGU3ZjogcmVzZXJ2ZWQgKi8NCj4gLQlHRU5fRldfUkFOR0Uo MHhkZTgwLCAweGU4ZmYsIEZPUkNFV0FLRV9SRU5ERVIpLCAvKg0KPiAtCQkweGRlODAgLSAweGRm ZmY6IHJlbmRlcg0KPiAtCQkweGUwMDAgLSAweGUwZmY6IHJlc2VydmVkDQo+IC0JCTB4ZTEwMCAt IDB4ZThmZjogcmVuZGVyICovDQo+IC0JR0VOX0ZXX1JBTkdFKDB4ZTkwMCwgMHhmZmZmLCBGT1JD RVdBS0VfR1QpLCAvKg0KPiAtCQkweGU5MDAgLSAweGU5ZmY6IGd0DQo+IC0JCTB4ZWEwMCAtIDB4 ZWZmZjogcmVzZXJ2ZWQNCj4gLQkJMHhmMDAwIC0gMHhmZmZmOiBndCAqLw0KPiAtCUdFTl9GV19S QU5HRSgweDEwMDAwLCAweDEzZmZmLCAwKSwgLyoNCj4gLQkJMHgxMDAwMCAtIDB4MTFmZmY6IHJl c2VydmVkDQo+IC0JCTB4MTIwMDAgLSAweDEyN2ZmOiBhbHdheXMgb24NCj4gLQkJMHgxMjgwMCAt IDB4MTNmZmY6IHJlc2VydmVkICovDQo+IC0JR0VOX0ZXX1JBTkdFKDB4MTQwMDAsIDB4MTQxZmYs IEZPUkNFV0FLRV9NRURJQV9WREJPWDApLA0KPiAtCUdFTl9GV19SQU5HRSgweDE0MjAwLCAweDE0 M2ZmLCBGT1JDRVdBS0VfTUVESUFfVkRCT1gyKSwNCj4gLQlHRU5fRldfUkFOR0UoMHgxNDQwMCwg MHgxNDVmZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YNCksDQo+IC0JR0VOX0ZXX1JBTkdFKDB4MTQ2 MDAsIDB4MTQ3ZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDYpLA0KPiAtCUdFTl9GV19SQU5HRSgw eDE0ODAwLCAweDFmZmZmLCBGT1JDRVdBS0VfUkVOREVSKSwgLyoNCj4gLQkJMHgxNDgwMCAtIDB4 MTRmZmY6IHJlbmRlcg0KPiAtCQkweDE1MDAwIC0gMHgxNmRmZjogcmVzZXJ2ZWQNCj4gLQkJMHgx NmUwMCAtIDB4MWZmZmY6IHJlbmRlciAqLw0KPiAtCUdFTl9GV19SQU5HRSgweDIwMDAwLCAweDIx ZmZmLCBGT1JDRVdBS0VfTUVESUFfVkRCT1gwKSwgLyoNCj4gLQkJMHgyMDAwMCAtIDB4MjBmZmY6 IFZEMA0KPiAtCQkweDIxMDAwIC0gMHgyMWZmZjogcmVzZXJ2ZWQgKi8NCj4gLQlHRU5fRldfUkFO R0UoMHgyMjAwMCwgMHgyM2ZmZiwgRk9SQ0VXQUtFX0dUKSwNCj4gLQlHRU5fRldfUkFOR0UoMHgy NDAwMCwgMHgyNDE3ZiwgMCksIC8qDQo+IC0JCTB4MjQwMDAgLSAweDI0MDdmOiBhbHdheXMgb24N Cj4gLQkJMHgyNDA4MCAtIDB4MjQxN2Y6IHJlc2VydmVkICovDQo+IC0JR0VOX0ZXX1JBTkdFKDB4 MjQxODAsIDB4MjQ5ZmYsIEZPUkNFV0FLRV9HVCksIC8qDQo+IC0JCTB4MjQxODAgLSAweDI0MWZm OiBndA0KPiAtCQkweDI0MjAwIC0gMHgyNDlmZjogcmVzZXJ2ZWQgKi8NCj4gLQlHRU5fRldfUkFO R0UoMHgyNGEwMCwgMHgyNTFmZiwgRk9SQ0VXQUtFX1JFTkRFUiksIC8qDQo+IC0JCTB4MjRhMDAg LSAweDI0YTdmOiByZW5kZXINCj4gLQkJMHgyNGE4MCAtIDB4MjUxZmY6IHJlc2VydmVkICovDQo+ IC0JR0VOX0ZXX1JBTkdFKDB4MjUyMDAsIDB4MjVmZmYsIEZPUkNFV0FLRV9HVCksIC8qDQo+IC0J CTB4MjUyMDAgLSAweDI1MmZmOiBndA0KPiAtCQkweDI1MzAwIC0gMHgyNWZmZjogcmVzZXJ2ZWQg Ki8NCj4gLQlHRU5fRldfUkFOR0UoMHgyNjAwMCwgMHgyZmZmZiwgRk9SQ0VXQUtFX1JFTkRFUiks IC8qDQo+IC0JCTB4MjYwMDAgLSAweDI3ZmZmOiByZW5kZXINCj4gLQkJMHgyODAwMCAtIDB4Mjlm ZmY6IHJlc2VydmVkDQo+IC0JCTB4MmEwMDAgLSAweDJmZmZmOiB1bmRvY3VtZW50ZWQgKi8NCj4g LQlHRU5fRldfUkFOR0UoMHgzMDAwMCwgMHgzZmZmZiwgRk9SQ0VXQUtFX0dUKSwNCj4gLQlHRU5f RldfUkFOR0UoMHg0MDAwMCwgMHgxYmZmZmYsIDApLA0KPiAtCUdFTl9GV19SQU5HRSgweDFjMDAw MCwgMHgxYzNmZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDApLCAvKg0KPiAtCQkweDFjMDAwMCAt IDB4MWMyYmZmOiBWRDANCj4gLQkJMHgxYzJjMDAgLSAweDFjMmNmZjogcmVzZXJ2ZWQNCj4gLQkJ MHgxYzJkMDAgLSAweDFjMmRmZjogVkQwDQo+IC0JCTB4MWMyZTAwIC0gMHgxYzNlZmY6IHJlc2Vy dmVkDQo+IC0JCTB4MWMzZjAwIC0gMHgxYzNmZmY6IFZEMCAqLw0KPiAtCUdFTl9GV19SQU5HRSgw eDFjNDAwMCwgMHgxYzdmZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDEpLCAvKg0KPiAtCQkweDFj NDAwMCAtIDB4MWM2YmZmOiBWRDENCj4gLQkJMHgxYzZjMDAgLSAweDFjNmNmZjogcmVzZXJ2ZWQN Cj4gLQkJMHgxYzZkMDAgLSAweDFjNmRmZjogVkQxDQo+IC0JCTB4MWM2ZTAwIC0gMHgxYzdmZmY6 IHJlc2VydmVkICovDQo+IC0JR0VOX0ZXX1JBTkdFKDB4MWM4MDAwLCAweDFjYmZmZiwgRk9SQ0VX QUtFX01FRElBX1ZFQk9YMCksIC8qDQo+IC0JCTB4MWM4MDAwIC0gMHgxY2EwZmY6IFZFMA0KPiAt CQkweDFjYTEwMCAtIDB4MWNiZmZmOiByZXNlcnZlZCAqLw0KPiAtCUdFTl9GV19SQU5HRSgweDFj YzAwMCwgMHgxY2NmZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDApLA0KPiAtCUdFTl9GV19SQU5H RSgweDFjZDAwMCwgMHgxY2RmZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDIpLA0KPiAtCUdFTl9G V19SQU5HRSgweDFjZTAwMCwgMHgxY2VmZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDQpLA0KPiAt CUdFTl9GV19SQU5HRSgweDFjZjAwMCwgMHgxY2ZmZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDYp LA0KPiAtCUdFTl9GV19SQU5HRSgweDFkMDAwMCwgMHgxZDNmZmYsIEZPUkNFV0FLRV9NRURJQV9W REJPWDIpLCAvKg0KPiAtCQkweDFkMDAwMCAtIDB4MWQyYmZmOiBWRDINCj4gLQkJMHgxZDJjMDAg LSAweDFkMmNmZjogcmVzZXJ2ZWQNCj4gLQkJMHgxZDJkMDAgLSAweDFkMmRmZjogVkQyDQo+IC0J CTB4MWQyZTAwIC0gMHgxZDNlZmY6IHJlc2VydmVkDQo+IC0JCTB4MWQzZjAwIC0gMHgxZDNmZmY6 IFZEMiAqLw0KPiAtCUdFTl9GV19SQU5HRSgweDFkNDAwMCwgMHgxZDdmZmYsIEZPUkNFV0FLRV9N RURJQV9WREJPWDMpLCAvKg0KPiAtCQkweDFkNDAwMCAtIDB4MWQ2YmZmOiBWRDMNCj4gLQkJMHgx ZDZjMDAgLSAweDFkNmNmZjogcmVzZXJ2ZWQNCj4gLQkJMHgxZDZkMDAgLSAweDFkNmRmZjogVkQz DQo+IC0JCTB4MWQ2ZTAwIC0gMHgxZDdmZmY6IHJlc2VydmVkICovDQo+IC0JR0VOX0ZXX1JBTkdF KDB4MWQ4MDAwLCAweDFkZmZmZiwgRk9SQ0VXQUtFX01FRElBX1ZFQk9YMSksIC8qDQo+IC0JCTB4 MWQ4MDAwIC0gMHgxZGEwZmY6IFZFMQ0KPiAtCQkweDFkYTEwMCAtIDB4MWRmZmZmOiByZXNlcnZl ZCAqLw0KPiAtCUdFTl9GV19SQU5HRSgweDFlMDAwMCwgMHgxZTNmZmYsIEZPUkNFV0FLRV9NRURJ QV9WREJPWDQpLCAvKg0KPiAtCQkweDFlMDAwMCAtIDB4MWUyYmZmOiBWRDQNCj4gLQkJMHgxZTJj MDAgLSAweDFlMmNmZjogcmVzZXJ2ZWQNCj4gLQkJMHgxZTJkMDAgLSAweDFlMmRmZjogVkQ0DQo+ IC0JCTB4MWUyZTAwIC0gMHgxZTNlZmY6IHJlc2VydmVkDQo+IC0JCTB4MWUzZjAwIC0gMHgxZTNm ZmY6IFZENCAqLw0KPiAtCUdFTl9GV19SQU5HRSgweDFlNDAwMCwgMHgxZTdmZmYsIEZPUkNFV0FL RV9NRURJQV9WREJPWDUpLCAvKg0KPiAtCQkweDFlNDAwMCAtIDB4MWU2YmZmOiBWRDUNCj4gLQkJ MHgxZTZjMDAgLSAweDFlNmNmZjogcmVzZXJ2ZWQNCj4gLQkJMHgxZTZkMDAgLSAweDFlNmRmZjog VkQ1DQo+IC0JCTB4MWU2ZTAwIC0gMHgxZTdmZmY6IHJlc2VydmVkICovDQo+IC0JR0VOX0ZXX1JB TkdFKDB4MWU4MDAwLCAweDFlZmZmZiwgRk9SQ0VXQUtFX01FRElBX1ZFQk9YMiksIC8qDQo+IC0J CTB4MWU4MDAwIC0gMHgxZWEwZmY6IFZFMg0KPiAtCQkweDFlYTEwMCAtIDB4MWVmZmZmOiByZXNl cnZlZCAqLw0KPiAtCUdFTl9GV19SQU5HRSgweDFmMDAwMCwgMHgxZjNmZmYsIEZPUkNFV0FLRV9N RURJQV9WREJPWDYpLCAvKg0KPiAtCQkweDFmMDAwMCAtIDB4MWYyYmZmOiBWRDYNCj4gLQkJMHgx ZjJjMDAgLSAweDFmMmNmZjogcmVzZXJ2ZWQNCj4gLQkJMHgxZjJkMDAgLSAweDFmMmRmZjogVkQ2 DQo+IC0JCTB4MWYyZTAwIC0gMHgxZjNlZmY6IHJlc2VydmVkDQo+IC0JCTB4MWYzZjAwIC0gMHgx ZjNmZmY6IFZENiAqLw0KPiAtCUdFTl9GV19SQU5HRSgweDFmNDAwMCwgMHgxZjdmZmYsIEZPUkNF V0FLRV9NRURJQV9WREJPWDcpLCAvKg0KPiAtCQkweDFmNDAwMCAtIDB4MWY2YmZmOiBWRDcNCj4g LQkJMHgxZjZjMDAgLSAweDFmNmNmZjogcmVzZXJ2ZWQNCj4gLQkJMHgxZjZkMDAgLSAweDFmNmRm ZjogVkQ3DQo+IC0JCTB4MWY2ZTAwIC0gMHgxZjdmZmY6IHJlc2VydmVkICovDQo+ICsvKg0KPiAr ICogR3JhcGhpY3MgSVAgdmVyc2lvbiAxMi41NSBicmluZ3MgYSBzbGlnaHQgY2hhbmdlIHRvIHRo ZSAweGQ4MDAgcmFuZ2UsDQo+ICsgKiBzd2l0Y2hpbmcgaXQgZnJvbSB0aGUgR1QgZG9tYWluIHRv IHRoZSByZW5kZXIgZG9tYWluLg0KPiArICoNCj4gKyAqICpNdXN0KiBiZSBzb3J0ZWQgYnkgb2Zm c2V0IHJhbmdlcyEgU2VlIGludGVsX2Z3X3RhYmxlX2NoZWNrKCkuDQo+ICsgKi8NCj4gKyNkZWZp bmUgWEVIUF9GV1JBTkdFUyhGV19SQU5HRV9EODAwKQkJCQkJXA0KPiArCUdFTl9GV19SQU5HRSgw eDAsIDB4MWZmZiwgMCksIC8qCQkJCQlcDQo+ICsJCSAgMHgwIC0gIDB4YWZmOiByZXNlcnZlZAkJ CQkJXA0KPiArCQkweGIwMCAtIDB4MWZmZjogYWx3YXlzIG9uICovCQkJCQlcDQo+ICsJR0VOX0ZX X1JBTkdFKDB4MjAwMCwgMHgyNmZmLCBGT1JDRVdBS0VfUkVOREVSKSwJCQkJXA0KPiArCUdFTl9G V19SQU5HRSgweDI3MDAsIDB4NGFmZiwgRk9SQ0VXQUtFX0dUKSwJCQkJXA0KPiArCUdFTl9GV19S QU5HRSgweDRiMDAsIDB4NTFmZiwgMCksIC8qCQkJCQlcDQo+ICsJCTB4NGIwMCAtIDB4NGZmZjog cmVzZXJ2ZWQJCQkJCVwNCj4gKwkJMHg1MDAwIC0gMHg1MWZmOiBhbHdheXMgb24gKi8JCQkJCVwN Cj4gKwlHRU5fRldfUkFOR0UoMHg1MjAwLCAweDdmZmYsIEZPUkNFV0FLRV9SRU5ERVIpLAkJCQlc DQo+ICsJR0VOX0ZXX1JBTkdFKDB4ODAwMCwgMHg4MTNmLCBGT1JDRVdBS0VfR1QpLAkJCQlcDQo+ ICsJR0VOX0ZXX1JBTkdFKDB4ODE0MCwgMHg4MTVmLCBGT1JDRVdBS0VfUkVOREVSKSwJCQkJXA0K PiArCUdFTl9GV19SQU5HRSgweDgxNjAsIDB4ODFmZiwgMCksIC8qCQkJCQlcDQo+ICsJCTB4ODE2 MCAtIDB4ODE3ZjogcmVzZXJ2ZWQJCQkJCVwNCj4gKwkJMHg4MTgwIC0gMHg4MWZmOiBhbHdheXMg b24gKi8JCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHg4MjAwLCAweDgyZmYsIEZPUkNFV0FLRV9H VCksCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHg4MzAwLCAweDg0ZmYsIEZPUkNFV0FLRV9SRU5E RVIpLAkJCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4ODUwMCwgMHg4Y2ZmLCBGT1JDRVdBS0VfR1Qp LCAvKgkJCQlcDQo+ICsJCTB4ODUwMCAtIDB4ODdmZjogZ3QJCQkJCQlcDQo+ICsJCTB4ODgwMCAt IDB4OGM3ZjogcmVzZXJ2ZWQJCQkJCVwNCj4gKwkJMHg4YzgwIC0gMHg4Y2ZmOiBndCAoREcyIG9u bHkpICovCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHg4ZDAwLCAweDhmZmYsIEZPUkNFV0FLRV9S RU5ERVIpLCAvKgkJCVwNCj4gKwkJMHg4ZDAwIC0gMHg4ZGZmOiByZW5kZXIgKERHMiBvbmx5KQkJ CQlcDQo+ICsJCTB4OGUwMCAtIDB4OGZmZjogcmVzZXJ2ZWQgKi8JCQkJCVwNCj4gKwlHRU5fRldf UkFOR0UoMHg5MDAwLCAweDk0Y2YsIEZPUkNFV0FLRV9HVCksIC8qCQkJCVwNCj4gKwkJMHg5MDAw IC0gMHg5NDdmOiBndAkJCQkJCVwNCj4gKwkJMHg5NDgwIC0gMHg5NGNmOiByZXNlcnZlZCAqLwkJ CQkJXA0KPiArCUdFTl9GV19SQU5HRSgweDk0ZDAsIDB4OTU1ZiwgRk9SQ0VXQUtFX1JFTkRFUiks CQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHg5NTYwLCAweDk2N2YsIDApLCAvKgkJCQkJXA0KPiAr CQkweDk1NjAgLSAweDk1ZmY6IGFsd2F5cyBvbgkJCQkJXA0KPiArCQkweDk2MDAgLSAweDk2N2Y6 IHJlc2VydmVkICovCQkJCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4OTY4MCwgMHg5N2ZmLCBGT1JD RVdBS0VfUkVOREVSKSwgLyoJCQlcDQo+ICsJCTB4OTY4MCAtIDB4OTZmZjogcmVuZGVyIChERzIg b25seSkJCQkJXA0KPiArCQkweDk3MDAgLSAweDk3ZmY6IHJlc2VydmVkICovCQkJCQlcDQo+ICsJ R0VOX0ZXX1JBTkdFKDB4OTgwMCwgMHhjZmZmLCBGT1JDRVdBS0VfR1QpLCAvKgkJCQlcDQo+ICsJ CTB4OTgwMCAtIDB4YjRmZjogZ3QJCQkJCQlcDQo+ICsJCTB4YjUwMCAtIDB4YmZmZjogcmVzZXJ2 ZWQJCQkJCVwNCj4gKwkJMHhjMDAwIC0gMHhjZmZmOiBndCAqLwkJCQkJCVwNCj4gKwlHRU5fRldf UkFOR0UoMHhkMDAwLCAweGQ3ZmYsIDApLAkJCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweGQ4MDAs IDB4ZDg3ZiwgRldfUkFOR0VfRDgwMCksCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweGQ4ODAsIDB4 ZGJmZiwgRk9SQ0VXQUtFX0dUKSwJCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweGRjMDAsIDB4ZGNm ZiwgRk9SQ0VXQUtFX1JFTkRFUiksCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHhkZDAwLCAweGRl N2YsIEZPUkNFV0FLRV9HVCksIC8qCQkJCVwNCj4gKwkJMHhkZDAwIC0gMHhkZGZmOiBndAkJCQkJ CVwNCj4gKwkJMHhkZTAwIC0gMHhkZTdmOiByZXNlcnZlZCAqLwkJCQkJXA0KPiArCUdFTl9GV19S QU5HRSgweGRlODAsIDB4ZThmZiwgRk9SQ0VXQUtFX1JFTkRFUiksIC8qCQkJXA0KPiArCQkweGRl ODAgLSAweGRmZmY6IHJlbmRlcgkJCQkJCVwNCj4gKwkJMHhlMDAwIC0gMHhlMGZmOiByZXNlcnZl ZAkJCQkJXA0KPiArCQkweGUxMDAgLSAweGU4ZmY6IHJlbmRlciAqLwkJCQkJXA0KPiArCUdFTl9G V19SQU5HRSgweGU5MDAsIDB4ZmZmZiwgRk9SQ0VXQUtFX0dUKSwgLyoJCQkJXA0KPiArCQkweGU5 MDAgLSAweGU5ZmY6IGd0CQkJCQkJXA0KPiArCQkweGVhMDAgLSAweGVmZmY6IHJlc2VydmVkCQkJ CQlcDQo+ICsJCTB4ZjAwMCAtIDB4ZmZmZjogZ3QgKi8JCQkJCQlcDQo+ICsJR0VOX0ZXX1JBTkdF KDB4MTAwMDAsIDB4MTJmZmYsIDApLCAvKgkJCQkJXA0KPiArCQkweDEwMDAwIC0gMHgxMWZmZjog cmVzZXJ2ZWQJCQkJCVwNCj4gKwkJMHgxMjAwMCAtIDB4MTI3ZmY6IGFsd2F5cyBvbgkJCQkJXA0K PiArCQkweDEyODAwIC0gMHgxMmZmZjogcmVzZXJ2ZWQgKi8JCQkJCVwNCj4gKwlHRU5fRldfUkFO R0UoMHgxMzAwMCwgMHgxMzFmZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YMCksIC8qIERHMiBvbmx5 ICovCVwNCj4gKwlHRU5fRldfUkFOR0UoMHgxMzIwMCwgMHgxM2ZmZiwgRk9SQ0VXQUtFX01FRElB X1ZEQk9YMiksIC8qCQlcDQo+ICsJCTB4MTMyMDAgLSAweDEzM2ZmOiBWRDIgKERHMiBvbmx5KQkJ CQlcDQo+ICsJCTB4MTM0MDAgLSAweDEzZmZmOiByZXNlcnZlZCAqLwkJCQkJXA0KPiArCUdFTl9G V19SQU5HRSgweDE0MDAwLCAweDE0MWZmLCBGT1JDRVdBS0VfTUVESUFfVkRCT1gwKSwgLyogWEVI UFNEViBvbmx5ICovCVwNCj4gKwlHRU5fRldfUkFOR0UoMHgxNDIwMCwgMHgxNDNmZiwgRk9SQ0VX QUtFX01FRElBX1ZEQk9YMiksIC8qIFhFSFBTRFYgb25seSAqLwlcDQo+ICsJR0VOX0ZXX1JBTkdF KDB4MTQ0MDAsIDB4MTQ1ZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDQpLCAvKiBYRUhQU0RWIG9u bHkgKi8JXA0KPiArCUdFTl9GV19SQU5HRSgweDE0NjAwLCAweDE0N2ZmLCBGT1JDRVdBS0VfTUVE SUFfVkRCT1g2KSwgLyogWEVIUFNEViBvbmx5ICovCVwNCj4gKwlHRU5fRldfUkFOR0UoMHgxNDgw MCwgMHgxNGZmZiwgRk9SQ0VXQUtFX1JFTkRFUiksCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweDE1 MDAwLCAweDE2ZGZmLCBGT1JDRVdBS0VfR1QpLCAvKgkJCVwNCj4gKwkJMHgxNTAwMCAtIDB4MTVm ZmY6IGd0IChERzIgb25seSkJCQkJXA0KPiArCQkweDE2MDAwIC0gMHgxNmRmZjogcmVzZXJ2ZWQg Ki8JCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHgxNmUwMCwgMHgxZmZmZiwgRk9SQ0VXQUtFX1JF TkRFUiksCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweDIwMDAwLCAweDIxZmZmLCBGT1JDRVdBS0Vf TUVESUFfVkRCT1gwKSwgLyoJCVwNCj4gKwkJMHgyMDAwMCAtIDB4MjBmZmY6IFZEMCAoWEVIUFNE ViBvbmx5KQkJCQlcDQo+ICsJCTB4MjEwMDAgLSAweDIxZmZmOiByZXNlcnZlZCAqLwkJCQkJXA0K PiArCUdFTl9GV19SQU5HRSgweDIyMDAwLCAweDIzZmZmLCBGT1JDRVdBS0VfR1QpLAkJCQlcDQo+ ICsJR0VOX0ZXX1JBTkdFKDB4MjQwMDAsIDB4MjQxN2YsIDApLCAvKgkJCQkJXA0KPiArCQkweDI0 MDAwIC0gMHgyNDA3ZjogYWx3YXlzIG9uCQkJCQlcDQo+ICsJCTB4MjQwODAgLSAweDI0MTdmOiBy ZXNlcnZlZCAqLwkJCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweDI0MTgwLCAweDI0OWZmLCBGT1JD RVdBS0VfR1QpLCAvKgkJCVwNCj4gKwkJMHgyNDE4MCAtIDB4MjQxZmY6IGd0CQkJCQkJXA0KPiAr CQkweDI0MjAwIC0gMHgyNDlmZjogcmVzZXJ2ZWQgKi8JCQkJCVwNCj4gKwlHRU5fRldfUkFOR0Uo MHgyNGEwMCwgMHgyNTFmZiwgRk9SQ0VXQUtFX1JFTkRFUiksIC8qCQkJXA0KPiArCQkweDI0YTAw IC0gMHgyNGE3ZjogcmVuZGVyCQkJCQlcDQo+ICsJCTB4MjRhODAgLSAweDI1MWZmOiByZXNlcnZl ZCAqLwkJCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweDI1MjAwLCAweDI1ZmZmLCBGT1JDRVdBS0Vf R1QpLCAvKgkJCVwNCj4gKwkJMHgyNTIwMCAtIDB4MjUyZmY6IGd0CQkJCQkJXA0KPiArCQkweDI1 MzAwIC0gMHgyNWZmZjogcmVzZXJ2ZWQgKi8JCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHgyNjAw MCwgMHgyZmZmZiwgRk9SQ0VXQUtFX1JFTkRFUiksIC8qCQkJXA0KPiArCQkweDI2MDAwIC0gMHgy N2ZmZjogcmVuZGVyCQkJCQlcDQo+ICsJCTB4MjgwMDAgLSAweDI5ZmZmOiByZXNlcnZlZAkJCQkJ XA0KPiArCQkweDJhMDAwIC0gMHgyZmZmZjogdW5kb2N1bWVudGVkICovCQkJCVwNCj4gKwlHRU5f RldfUkFOR0UoMHgzMDAwMCwgMHgzZmZmZiwgRk9SQ0VXQUtFX0dUKSwJCQkJXA0KPiArCUdFTl9G V19SQU5HRSgweDQwMDAwLCAweDFiZmZmZiwgMCksCQkJCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4 MWMwMDAwLCAweDFjM2ZmZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YMCksIC8qCQlcDQo+ICsJCTB4 MWMwMDAwIC0gMHgxYzJiZmY6IFZEMAkJCQkJXA0KPiArCQkweDFjMmMwMCAtIDB4MWMyY2ZmOiBy ZXNlcnZlZAkJCQkJXA0KPiArCQkweDFjMmQwMCAtIDB4MWMyZGZmOiBWRDAJCQkJCVwNCj4gKwkJ MHgxYzJlMDAgLSAweDFjM2VmZjogVkQwIChERzIgb25seSkJCQkJXA0KPiArCQkweDFjM2YwMCAt IDB4MWMzZmZmOiBWRDAgKi8JCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHgxYzQwMDAsIDB4MWM3 ZmZmLCBGT1JDRVdBS0VfTUVESUFfVkRCT1gxKSwgLyoJCVwNCj4gKwkJMHgxYzQwMDAgLSAweDFj NmJmZjogVkQxCQkJCQlcDQo+ICsJCTB4MWM2YzAwIC0gMHgxYzZjZmY6IHJlc2VydmVkCQkJCQlc DQo+ICsJCTB4MWM2ZDAwIC0gMHgxYzZkZmY6IFZEMQkJCQkJXA0KPiArCQkweDFjNmUwMCAtIDB4 MWM3ZmZmOiByZXNlcnZlZCAqLwkJCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4MWM4MDAwLCAweDFj YmZmZiwgRk9SQ0VXQUtFX01FRElBX1ZFQk9YMCksIC8qCQlcDQo+ICsJCTB4MWM4MDAwIC0gMHgx Y2EwZmY6IFZFMAkJCQkJXA0KPiArCQkweDFjYTEwMCAtIDB4MWNiZmZmOiByZXNlcnZlZCAqLwkJ CQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4MWNjMDAwLCAweDFjY2ZmZiwgRk9SQ0VXQUtFX01FRElB X1ZEQk9YMCksCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4MWNkMDAwLCAweDFjZGZmZiwgRk9SQ0VX QUtFX01FRElBX1ZEQk9YMiksCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4MWNlMDAwLCAweDFjZWZm ZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YNCksCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4MWNmMDAw LCAweDFjZmZmZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YNiksCQlcDQo+ICsJR0VOX0ZXX1JBTkdF KDB4MWQwMDAwLCAweDFkM2ZmZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YMiksIC8qCQlcDQo+ICsJ CTB4MWQwMDAwIC0gMHgxZDJiZmY6IFZEMgkJCQkJXA0KPiArCQkweDFkMmMwMCAtIDB4MWQyY2Zm OiByZXNlcnZlZAkJCQkJXA0KPiArCQkweDFkMmQwMCAtIDB4MWQyZGZmOiBWRDIJCQkJCVwNCj4g KwkJMHgxZDJlMDAgLSAweDFkM2RmZjogVkQyIChERzIgb25seSkJCQkJXA0KPiArCQkweDFkM2Uw MCAtIDB4MWQzZWZmOiByZXNlcnZlZAkJCQkJXA0KPiArCQkweDFkM2YwMCAtIDB4MWQzZmZmOiBW RDIgKi8JCQkJCVwNCj4gKwlHRU5fRldfUkFOR0UoMHgxZDQwMDAsIDB4MWQ3ZmZmLCBGT1JDRVdB S0VfTUVESUFfVkRCT1gzKSwgLyoJCVwNCj4gKwkJMHgxZDQwMDAgLSAweDFkNmJmZjogVkQzCQkJ CQlcDQo+ICsJCTB4MWQ2YzAwIC0gMHgxZDZjZmY6IHJlc2VydmVkCQkJCQlcDQo+ICsJCTB4MWQ2 ZDAwIC0gMHgxZDZkZmY6IFZEMwkJCQkJXA0KPiArCQkweDFkNmUwMCAtIDB4MWQ3ZmZmOiByZXNl cnZlZCAqLwkJCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4MWQ4MDAwLCAweDFkZmZmZiwgRk9SQ0VX QUtFX01FRElBX1ZFQk9YMSksIC8qCQlcDQo+ICsJCTB4MWQ4MDAwIC0gMHgxZGEwZmY6IFZFMQkJ CQkJXA0KPiArCQkweDFkYTEwMCAtIDB4MWRmZmZmOiByZXNlcnZlZCAqLwkJCQlcDQo+ICsJR0VO X0ZXX1JBTkdFKDB4MWUwMDAwLCAweDFlM2ZmZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YNCksIC8q CQlcDQo+ICsJCTB4MWUwMDAwIC0gMHgxZTJiZmY6IFZENAkJCQkJXA0KPiArCQkweDFlMmMwMCAt IDB4MWUyY2ZmOiByZXNlcnZlZAkJCQkJXA0KPiArCQkweDFlMmQwMCAtIDB4MWUyZGZmOiBWRDQJ CQkJCVwNCj4gKwkJMHgxZTJlMDAgLSAweDFlM2VmZjogcmVzZXJ2ZWQJCQkJCVwNCj4gKwkJMHgx ZTNmMDAgLSAweDFlM2ZmZjogVkQ0ICovCQkJCQlcDQo+ICsJR0VOX0ZXX1JBTkdFKDB4MWU0MDAw LCAweDFlN2ZmZiwgRk9SQ0VXQUtFX01FRElBX1ZEQk9YNSksIC8qCQlcDQo+ICsJCTB4MWU0MDAw IC0gMHgxZTZiZmY6IFZENQkJCQkJXA0KPiArCQkweDFlNmMwMCAtIDB4MWU2Y2ZmOiByZXNlcnZl ZAkJCQkJXA0KPiArCQkweDFlNmQwMCAtIDB4MWU2ZGZmOiBWRDUJCQkJCVwNCj4gKwkJMHgxZTZl MDAgLSAweDFlN2ZmZjogcmVzZXJ2ZWQgKi8JCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweDFlODAw MCwgMHgxZWZmZmYsIEZPUkNFV0FLRV9NRURJQV9WRUJPWDIpLCAvKgkJXA0KPiArCQkweDFlODAw MCAtIDB4MWVhMGZmOiBWRTIJCQkJCVwNCj4gKwkJMHgxZWExMDAgLSAweDFlZmZmZjogcmVzZXJ2 ZWQgKi8JCQkJXA0KPiArCUdFTl9GV19SQU5HRSgweDFmMDAwMCwgMHgxZjNmZmYsIEZPUkNFV0FL RV9NRURJQV9WREJPWDYpLCAvKgkJXA0KPiArCQkweDFmMDAwMCAtIDB4MWYyYmZmOiBWRDYJCQkJ CVwNCj4gKwkJMHgxZjJjMDAgLSAweDFmMmNmZjogcmVzZXJ2ZWQJCQkJCVwNCj4gKwkJMHgxZjJk MDAgLSAweDFmMmRmZjogVkQ2CQkJCQlcDQo+ICsJCTB4MWYyZTAwIC0gMHgxZjNlZmY6IHJlc2Vy dmVkCQkJCQlcDQo+ICsJCTB4MWYzZjAwIC0gMHgxZjNmZmY6IFZENiAqLwkJCQkJXA0KPiArCUdF Tl9GV19SQU5HRSgweDFmNDAwMCwgMHgxZjdmZmYsIEZPUkNFV0FLRV9NRURJQV9WREJPWDcpLCAv KgkJXA0KPiArCQkweDFmNDAwMCAtIDB4MWY2YmZmOiBWRDcJCQkJCVwNCj4gKwkJMHgxZjZjMDAg LSAweDFmNmNmZjogcmVzZXJ2ZWQJCQkJCVwNCj4gKwkJMHgxZjZkMDAgLSAweDFmNmRmZjogVkQ3 CQkJCQlcDQo+ICsJCTB4MWY2ZTAwIC0gMHgxZjdmZmY6IHJlc2VydmVkICovCQkJCVwNCj4gIAlH RU5fRldfUkFOR0UoMHgxZjgwMDAsIDB4MWZhMGZmLCBGT1JDRVdBS0VfTUVESUFfVkVCT1gzKSwN Cj4gKw0KPiArc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9mb3JjZXdha2VfcmFuZ2UgX194ZWhw X2Z3X3Jhbmdlc1tdID0gew0KPiArCVhFSFBfRldSQU5HRVMoRk9SQ0VXQUtFX0dUKQ0KPiArfTsN Cj4gKw0KPiArc3RhdGljIGNvbnN0IHN0cnVjdCBpbnRlbF9mb3JjZXdha2VfcmFuZ2UgX19kZzJf ZndfcmFuZ2VzW10gPSB7DQo+ICsJWEVIUF9GV1JBTkdFUyhGT1JDRVdBS0VfUkVOREVSKQ0KPiAg fTsNCj4gIA0KPiAgc3RhdGljIHZvaWQNCj4gQEAgLTIwODQsNyArMjExMSwxMSBAQCBzdGF0aWMg aW50IHVuY29yZV9mb3JjZXdha2VfaW5pdChzdHJ1Y3QgaW50ZWxfdW5jb3JlICp1bmNvcmUpDQo+ ICAJCXJldHVybiByZXQ7DQo+ICAJZm9yY2V3YWtlX2Vhcmx5X3Nhbml0aXplKHVuY29yZSwgMCk7 DQo+ICANCj4gLQlpZiAoR1JBUEhJQ1NfVkVSX0ZVTEwoaTkxNSkgPj0gSVBfVkVSKDEyLCA1MCkp IHsNCj4gKwlpZiAoR1JBUEhJQ1NfVkVSX0ZVTEwoaTkxNSkgPj0gSVBfVkVSKDEyLCA1NSkpIHsN Cj4gKwkJQVNTSUdOX0ZXX0RPTUFJTlNfVEFCTEUodW5jb3JlLCBfX2RnMl9md19yYW5nZXMpOw0K PiArCQlBU1NJR05fV1JJVEVfTU1JT19WRlVOQ1ModW5jb3JlLCB4ZWhwX2Z3dGFibGUpOw0KPiAr CQlBU1NJR05fUkVBRF9NTUlPX1ZGVU5DUyh1bmNvcmUsIGdlbjExX2Z3dGFibGUpOw0KPiArCX0g ZWxzZSBpZiAoR1JBUEhJQ1NfVkVSX0ZVTEwoaTkxNSkgPj0gSVBfVkVSKDEyLCA1MCkpIHsNCj4g IAkJQVNTSUdOX0ZXX0RPTUFJTlNfVEFCTEUodW5jb3JlLCBfX3hlaHBfZndfcmFuZ2VzKTsNCj4g IAkJQVNTSUdOX1dSSVRFX01NSU9fVkZVTkNTKHVuY29yZSwgeGVocF9md3RhYmxlKTsNCj4gIAkJ QVNTSUdOX1JFQURfTU1JT19WRlVOQ1ModW5jb3JlLCBnZW4xMV9md3RhYmxlKTsNCg0K