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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 2D066C433EF for ; Tue, 15 Feb 2022 15:02:07 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 5E24910E5A7; Tue, 15 Feb 2022 15:02:06 +0000 (UTC) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2128F10E590; Tue, 15 Feb 2022 15:02:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1644937325; x=1676473325; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=T6uUVO45ZbAkiN5v247f+5pmkjzr0DgIadEi1015io0=; b=Kf2MqRRRuY3fejnsflncb3bBr6F6QRGAe5prvvzW940MtDdNGgq6MuVU KdV3vLoi4fHsIlq56lvKYJjuFbVqYKTllyhKW4odwkGUfp2Jl523w4DI3 41bRpBmdoIpLRdy+eI5sdJERc9pUHVmhFHhUIyJ29988IbUEsxPz4tTrI iQxuMd5o4WPKNjWvkqXiWhRPcShqvg0waf00/QvA7LgJujoa7UE4h1C++ Vh0cxDAG2zPdetH0QLJl7wsIQ23cWMXDFqPfOGXnIof/UO8SbY05Y5iD8 yTRxW7f/RBMiRe3ZaV5uthKo/OubsKZU17Znmf1KFyRoI+ugjQ8EBuBzm w==; X-IronPort-AV: E=McAfee;i="6200,9189,10258"; a="233909660" X-IronPort-AV: E=Sophos;i="5.88,371,1635231600"; d="scan'208";a="233909660" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Feb 2022 07:02:04 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,371,1635231600"; d="scan'208";a="635932870" Received: from irsmsx606.ger.corp.intel.com ([163.33.146.139]) by orsmga004.jf.intel.com with ESMTP; 15 Feb 2022 07:02:03 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by IRSMSX606.ger.corp.intel.com (163.33.146.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Tue, 15 Feb 2022 15:02:01 +0000 Received: from fmsmsx611.amr.corp.intel.com ([10.18.126.91]) by fmsmsx611.amr.corp.intel.com ([10.18.126.91]) with mapi id 15.01.2308.020; Tue, 15 Feb 2022 07:02:00 -0800 From: "Chery, Nanley G" To: "juhapekka.heikkila@gmail.com" , "Nanley Chery" , "C, Ramalingam" Thread-Topic: [Intel-gfx] [PATCH v5 16/19] uapi/drm/dg2: Introduce format modifier for DG2 clear color Thread-Index: AQHYH663IhAmnebor0aDTKWpiG9p6qyVPvUA//96bNA= Date: Tue, 15 Feb 2022 15:02:00 +0000 Message-ID: References: <20220201104132.3050-1-ramalingam.c@intel.com> <20220201104132.3050-17-ramalingam.c@intel.com> In-Reply-To: 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-Transfer-Encoding: base64 MIME-Version: 1.0 Subject: Re: [Intel-gfx] [PATCH v5 16/19] uapi/drm/dg2: Introduce format modifier for DG2 clear color 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: , Cc: intel-gfx , "Auld, Matthew" , dri-devel Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSnVoYS1QZWtrYSBIZWlr a2lsYSA8anVoYXBla2thLmhlaWtraWxhQGdtYWlsLmNvbT4NCj4gU2VudDogVHVlc2RheSwgRmVi cnVhcnkgMTUsIDIwMjIgNjo1NiBBTQ0KPiBUbzogTmFubGV5IENoZXJ5IDxuYW5sZXljaGVyeUBn bWFpbC5jb20+OyBDLCBSYW1hbGluZ2FtDQo+IDxyYW1hbGluZ2FtLmNAaW50ZWwuY29tPg0KPiBD YzogaW50ZWwtZ2Z4IDxpbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnPjsgQ2hlcnksIE5h bmxleSBHDQo+IDxuYW5sZXkuZy5jaGVyeUBpbnRlbC5jb20+OyBBdWxkLCBNYXR0aGV3IDxtYXR0 aGV3LmF1bGRAaW50ZWwuY29tPjsgZHJpLQ0KPiBkZXZlbCA8ZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZz4NCj4gU3ViamVjdDogUmU6IFtJbnRlbC1nZnhdIFtQQVRDSCB2NSAxNi8xOV0g dWFwaS9kcm0vZGcyOiBJbnRyb2R1Y2UgZm9ybWF0DQo+IG1vZGlmaWVyIGZvciBERzIgY2xlYXIg Y29sb3INCj4gDQo+IE9uIDEyLjIuMjAyMiAzLjE5LCBOYW5sZXkgQ2hlcnkgd3JvdGU6DQo+ID4g T24gVHVlLCBGZWIgMSwgMjAyMiBhdCAyOjQyIEFNIFJhbWFsaW5nYW0gQyA8cmFtYWxpbmdhbS5j QGludGVsLmNvbT4NCj4gd3JvdGU6DQo+ID4+DQo+ID4+IEZyb206IE1pa2EgS2Fob2xhIDxtaWth LmthaG9sYUBpbnRlbC5jb20+DQo+ID4+DQo+ID4+IERHMiBjbGVhciBjb2xvciByZW5kZXIgY29t cHJlc3Npb24gdXNlcyBUaWxlNCBsYXlvdXQuIFRoZXJlZm9yZSwgd2UNCj4gPj4gbmVlZCB0byBk ZWZpbmUgYSBuZXcgZm9ybWF0IG1vZGlmaWVyIGZvciB1QVBJIHRvIHN1cHBvcnQgY2xlYXIgY29s b3INCj4gcmVuZGVyaW5nLg0KPiA+Pg0KPiA+PiB2MjoNCj4gPj4gICAgRGlzcGxheSB2ZXJzaW9u IGlzIGZpeGVkLiBbSW1yZV0NCj4gPj4gICAgS0RvYyBpcyBlbmhhbmNlZCBmb3IgY2MgbW9kaWZp ZXIuIFtOYW5sZXkgJiBMaW9uZWxdDQo+ID4+DQo+ID4+IFNpZ25lZC1vZmYtYnk6IE1pa2EgS2Fo b2xhIDxtaWthLmthaG9sYUBpbnRlbC5jb20+DQo+ID4+IGNjOiBBbnNodW1hbiBHdXB0YSA8YW5z aHVtYW4uZ3VwdGFAaW50ZWwuY29tPg0KPiA+PiBTaWduZWQtb2ZmLWJ5OiBKdWhhLVBla2thIEhl aWtraWzDpCA8anVoYS1wZWtrYS5oZWlra2lsYUBpbnRlbC5jb20+DQo+ID4+IFNpZ25lZC1vZmYt Ynk6IFJhbWFsaW5nYW0gQyA8cmFtYWxpbmdhbS5jQGludGVsLmNvbT4NCj4gPj4gLS0tDQo+ID4+ ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9mYi5jICAgICAgICAgICAgfCAg OCArKysrKysrKw0KPiA+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvc2tsX3VuaXZl cnNhbF9wbGFuZS5jIHwgIDkgKysrKysrKystDQo+ID4+ICAgaW5jbHVkZS91YXBpL2RybS9kcm1f Zm91cmNjLmggICAgICAgICAgICAgICAgICAgICAgfCAxMCArKysrKysrKysrDQo+ID4+ICAgMyBm aWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pDQo+ID4+DQo+ID4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2ZiLmMNCj4g Pj4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2ZiLmMNCj4gPj4gaW5kZXgg NGQ0ZDAxOTYzZjE1Li4zZGY2ZWY1ZmZlYzUgMTAwNjQ0DQo+ID4+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZmIuYw0KPiA+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2ZiLmMNCj4gPj4gQEAgLTE0NCw2ICsxNDQsMTIgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBpbnRlbF9tb2RpZmllcl9kZXNjDQo+IGludGVsX21vZGlmaWVyc1tdID0g ew0KPiA+PiAgICAgICAgICAgICAgICAgIC5tb2RpZmllciA9IEk5MTVfRk9STUFUX01PRF80X1RJ TEVEX0RHMl9NQ19DQ1MsDQo+ID4+ICAgICAgICAgICAgICAgICAgLmRpc3BsYXlfdmVyID0geyAx MywgMTMgfSwNCj4gPj4gICAgICAgICAgICAgICAgICAucGxhbmVfY2FwcyA9IElOVEVMX1BMQU5F X0NBUF9USUxJTkdfNCB8DQo+ID4+IElOVEVMX1BMQU5FX0NBUF9DQ1NfTUMsDQo+ID4+ICsgICAg ICAgfSwgew0KPiA+PiArICAgICAgICAgICAgICAgLm1vZGlmaWVyID0gSTkxNV9GT1JNQVRfTU9E XzRfVElMRURfREcyX1JDX0NDU19DQywNCj4gPj4gKyAgICAgICAgICAgICAgIC5kaXNwbGF5X3Zl ciA9IHsgMTMsIDEzIH0sDQo+ID4+ICsgICAgICAgICAgICAgICAucGxhbmVfY2FwcyA9IElOVEVM X1BMQU5FX0NBUF9USUxJTkdfNCB8DQo+ID4+ICsgSU5URUxfUExBTkVfQ0FQX0NDU19SQ19DQywN Cj4gPj4gKw0KPiA+PiArICAgICAgICAgICAgICAgLmNjcy5jY19wbGFuZXMgPSBCSVQoMSksDQo+ ID4+ICAgICAgICAgIH0sIHsNCj4gPj4gICAgICAgICAgICAgICAgICAubW9kaWZpZXIgPSBJOTE1 X0ZPUk1BVF9NT0RfNF9USUxFRF9ERzJfUkNfQ0NTLA0KPiA+PiAgICAgICAgICAgICAgICAgIC5k aXNwbGF5X3ZlciA9IHsgMTMsIDEzIH0sIEBAIC01NTksNiArNTY1LDcgQEANCj4gPj4gaW50ZWxf dGlsZV93aWR0aF9ieXRlcyhjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IGNv bG9yX3BsYW5lKQ0KPiA+PiAgICAgICAgICAgICAgICAgIGVsc2UNCj4gPj4gICAgICAgICAgICAg ICAgICAgICAgICAgIHJldHVybiA1MTI7DQo+ID4+ICAgICAgICAgIGNhc2UgSTkxNV9GT1JNQVRf TU9EXzRfVElMRURfREcyX1JDX0NDUzoNCj4gPj4gKyAgICAgICBjYXNlIEk5MTVfRk9STUFUX01P RF80X1RJTEVEX0RHMl9SQ19DQ1NfQ0M6DQo+ID4+ICAgICAgICAgIGNhc2UgSTkxNV9GT1JNQVRf TU9EXzRfVElMRURfREcyX01DX0NDUzoNCj4gPj4gICAgICAgICAgY2FzZSBJOTE1X0ZPUk1BVF9N T0RfNF9USUxFRDoNCj4gPj4gICAgICAgICAgICAgICAgICAvKg0KPiA+PiBAQCAtNzYzLDYgKzc3 MCw3IEBAIHVuc2lnbmVkIGludCBpbnRlbF9zdXJmX2FsaWdubWVudChjb25zdCBzdHJ1Y3QNCj4g ZHJtX2ZyYW1lYnVmZmVyICpmYiwNCj4gPj4gICAgICAgICAgY2FzZSBJOTE1X0ZPUk1BVF9NT0Rf WWZfVElMRUQ6DQo+ID4+ICAgICAgICAgICAgICAgICAgcmV0dXJuIDEgKiAxMDI0ICogMTAyNDsN Cj4gPj4gICAgICAgICAgY2FzZSBJOTE1X0ZPUk1BVF9NT0RfNF9USUxFRF9ERzJfUkNfQ0NTOg0K PiA+PiArICAgICAgIGNhc2UgSTkxNV9GT1JNQVRfTU9EXzRfVElMRURfREcyX1JDX0NDU19DQzoN Cj4gPj4gICAgICAgICAgY2FzZSBJOTE1X0ZPUk1BVF9NT0RfNF9USUxFRF9ERzJfTUNfQ0NTOg0K PiA+PiAgICAgICAgICAgICAgICAgIHJldHVybiAxNiAqIDEwMjQ7DQo+ID4+ICAgICAgICAgIGRl ZmF1bHQ6DQo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L3Nr bF91bml2ZXJzYWxfcGxhbmUuYw0KPiA+PiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv c2tsX3VuaXZlcnNhbF9wbGFuZS5jDQo+ID4+IGluZGV4IGMzOGFlMDg3NmMxNS4uYjRkY2VkMTkw N2M1IDEwMDY0NA0KPiA+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L3NrbF91 bml2ZXJzYWxfcGxhbmUuYw0KPiA+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L3NrbF91bml2ZXJzYWxfcGxhbmUuYw0KPiA+PiBAQCAtNzcyLDYgKzc3Miw4IEBAIHN0YXRpYyB1 MzIgc2tsX3BsYW5lX2N0bF90aWxpbmcodTY0IGZiX21vZGlmaWVyKQ0KPiA+PiAgICAgICAgICAg ICAgICAgIHJldHVybiBQTEFORV9DVExfVElMRURfNCB8DQo+ID4+ICAgICAgICAgICAgICAgICAg ICAgICAgICBQTEFORV9DVExfTUVESUFfREVDT01QUkVTU0lPTl9FTkFCTEUgfA0KPiA+PiAgICAg ICAgICAgICAgICAgICAgICAgICAgUExBTkVfQ1RMX0NMRUFSX0NPTE9SX0RJU0FCTEU7DQo+ID4+ ICsgICAgICAgY2FzZSBJOTE1X0ZPUk1BVF9NT0RfNF9USUxFRF9ERzJfUkNfQ0NTX0NDOg0KPiA+ PiArICAgICAgICAgICAgICAgcmV0dXJuIFBMQU5FX0NUTF9USUxFRF80IHwNCj4gPj4gKyBQTEFO RV9DVExfUkVOREVSX0RFQ09NUFJFU1NJT05fRU5BQkxFOw0KPiA+PiAgICAgICAgICBjYXNlIEk5 MTVfRk9STUFUX01PRF9ZX1RJTEVEX0NDUzoNCj4gPj4gICAgICAgICAgY2FzZSBJOTE1X0ZPUk1B VF9NT0RfWV9USUxFRF9HRU4xMl9SQ19DQ1NfQ0M6DQo+ID4+ICAgICAgICAgICAgICAgICAgcmV0 dXJuIFBMQU5FX0NUTF9USUxFRF9ZIHwNCj4gPj4gUExBTkVfQ1RMX1JFTkRFUl9ERUNPTVBSRVNT SU9OX0VOQUJMRTsNCj4gPj4gQEAgLTIzNTgsMTAgKzIzNjAsMTUgQEAgc2tsX2dldF9pbml0aWFs X3BsYW5lX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Yw0KPiAqY3J0YywNCj4gPj4gICAgICAgICAg ICAgICAgICBicmVhazsNCj4gPj4gICAgICAgICAgY2FzZSBQTEFORV9DVExfVElMRURfWUY6IC8q IGFrYSBQTEFORV9DVExfVElMRURfNCBvbiBYRV9MUEQrICovDQo+ID4+ICAgICAgICAgICAgICAg ICAgaWYgKEhBU180VElMRShkZXZfcHJpdikpIHsNCj4gPj4gLSAgICAgICAgICAgICAgICAgICAg ICAgaWYgKHZhbCAmIFBMQU5FX0NUTF9SRU5ERVJfREVDT01QUkVTU0lPTl9FTkFCTEUpDQo+ID4+ ICsgICAgICAgICAgICAgICAgICAgICAgIHUzMiByY19tYXNrID0gUExBTkVfQ1RMX1JFTkRFUl9E RUNPTVBSRVNTSU9OX0VOQUJMRSB8DQo+ID4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgUExBTkVfQ1RMX0NMRUFSX0NPTE9SX0RJU0FCTEU7DQo+ID4+ICsNCj4gPj4gKyAg ICAgICAgICAgICAgICAgICAgICAgaWYgKCh2YWwgJiByY19tYXNrKSA9PSByY19tYXNrKQ0KPiA+ PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYi0+bW9kaWZpZXIgPSBJOTE1X0ZP Uk1BVF9NT0RfNF9USUxFRF9ERzJfUkNfQ0NTOw0KPiA+PiAgICAgICAgICAgICAgICAgICAgICAg ICAgZWxzZSBpZiAodmFsICYgUExBTkVfQ1RMX01FRElBX0RFQ09NUFJFU1NJT05fRU5BQkxFKQ0K PiA+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYi0+bW9kaWZpZXIgPQ0KPiA+ PiBJOTE1X0ZPUk1BVF9NT0RfNF9USUxFRF9ERzJfTUNfQ0NTOw0KPiA+PiArICAgICAgICAgICAg ICAgICAgICAgICBlbHNlIGlmICh2YWwgJiBQTEFORV9DVExfUkVOREVSX0RFQ09NUFJFU1NJT05f RU5BQkxFKQ0KPiA+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZiLT5tb2RpZmll ciA9DQo+ID4+ICsgSTkxNV9GT1JNQVRfTU9EXzRfVElMRURfREcyX1JDX0NDU19DQzsNCj4gPj4g ICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UNCj4gPj4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZmItPm1vZGlmaWVyID0gSTkxNV9GT1JNQVRfTU9EXzRfVElMRUQ7DQo+ID4+ ICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCj4gPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFw aS9kcm0vZHJtX2ZvdXJjYy5oDQo+ID4+IGIvaW5jbHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmgg aW5kZXggYjhmYjdiNDRjMDNjLi42OTc2MTRlYTRiODQNCj4gPj4gMTAwNjQ0DQo+ID4+IC0tLSBh L2luY2x1ZGUvdWFwaS9kcm0vZHJtX2ZvdXJjYy5oDQo+ID4+ICsrKyBiL2luY2x1ZGUvdWFwaS9k cm0vZHJtX2ZvdXJjYy5oDQo+ID4+IEBAIC02MDUsNiArNjA1LDE2IEBAIGV4dGVybiAiQyIgew0K PiA+PiAgICAqLw0KPiA+PiAgICNkZWZpbmUgSTkxNV9GT1JNQVRfTU9EXzRfVElMRURfREcyX01D X0NDUw0KPiBmb3VyY2NfbW9kX2NvZGUoSU5URUwsDQo+ID4+IDExKQ0KPiA+Pg0KPiA+PiArLyoN Cj4gPj4gKyAqIEludGVsIGNvbG9yIGNvbnRyb2wgc3VyZmFjZXMgKENDUykgZm9yIERHMiBjbGVh ciBjb2xvciByZW5kZXIgY29tcHJlc3Npb24uDQo+ID4+ICsgKg0KPiA+PiArICogREcyIHVzZXMg YSB1bmlmaWVkIGNvbXByZXNzaW9uIGZvcm1hdCBmb3IgY2xlYXIgY29sb3IgcmVuZGVyDQo+IGNv bXByZXNzaW9uLg0KPiA+DQo+ID4gV2hhdCdzIHVuaWZpZWQgYWJvdXQgREcyJ3MgY29tcHJlc3Np b24gZm9ybWF0PyBJZiB0aGlzIGRvZXNuJ3QgYWZmZWN0DQo+ID4gdGhlIGxheW91dCwgbWF5YmUg d2Ugc2hvdWxkIGRyb3AgdGhpcyBzZW50ZW5jZS4NCj4gPg0KPiA+PiArICogVGhlIGdlbmVyYWwg bGF5b3V0IGlzIGEgdGlsZWQgbGF5b3V0IHVzaW5nIDRLYiB0aWxlcyBpLmUuIFRpbGU0IGxheW91 dC4NCj4gPj4gKyAqDQo+ID4NCj4gPiBUaGlzIGFsc28gbmVlZHMgYSBwaXRjaCBhbGlnbmVkIHRv IGZvdXIgdGlsZXMsIHJpZ2h0PyBJIHRoaW5rIHdlIGNhbg0KPiA+IHNhdmUgc29tZSBlZmZvcnQg YnkgcmVmZXJlbmNpbmcgdGhlIERHMl9SQ19DQ1MgbW9kaWZpZXIgaGVyZS4NCj4gPg0KPiA+PiAr ICogRmFzdCBjbGVhciBjb2xvciB2YWx1ZSBleHBlY3RlZCBieSBIVyBpcyBsb2NhdGVkIGluIGZi IGF0IG9mZnNldA0KPiA+PiArIDAgb2YgcGxhbmUjMQ0KPiA+DQo+ID4gV2h5IGlzIHRoZSBleHBl Y3RlZCBvZmZzZXQgaGFyZGNvZGVkIHRvIDAgaW5zdGVhZCBvZiByZWx5aW5nIG9uIHRoZQ0KPiA+ IG9mZnNldCBwcm92aWRlZCBieSB0aGUgbW9kaWZpZXIgQVBJPyBUaGlzIGxvb2tzIGxpa2UgYSBi dWcuDQo+IA0KPiBIaSBOYW5sZXksDQo+IA0KPiBjYW4geW91IGVsYWJvcmF0ZSBhIGJpdCwgd2hp Y2ggb2Zmc2V0IGZyb20gbW9kaWZpZXIgQVBJIHRoYXQgYXBwbGllcyB0byBjYyBzdXJmYWNlPw0K PiANCg0KSGkgSnVoYS1QZWtrYSwNCg0KT24gdGhlIGtlcm5lbC1zaWRlIG9mIHRoaW5ncywgSSdt IHRoaW5raW5nIG9mIGRybV9tb2RlX2ZiX2NtZDI6Om9mZnNldHNbMV0uDQoNCi1OYW5sZXkNCg0K PiA+DQo+ID4gV2Ugc2hvdWxkIHByb2JhYmx5IGdpdmUgc29tZSBpbmZvIGFib3V0IHRoZSByZWxl dmFudCBmaWVsZHMgaW4gdGhlDQo+ID4gZmFzdCBjbGVhciBwbGFuZSAobGlrZSB3aGF0J3MgZG9u ZSBpbiB0aGUgR0VOMTJfUkNfQ0NTX0NDIG1vZGlmaWVyKS4NCj4gDQo+IGFncmVlLCB0aGF0J3Mg dG90YWxseSBtaXNzaW5nIGhlcmUuDQo+IA0KPiAvSnVoYS1QZWtrYQ0KPiANCj4gPg0KPiA+PiAr ICovDQo+ID4+ICsjZGVmaW5lIEk5MTVfRk9STUFUX01PRF80X1RJTEVEX0RHMl9SQ19DQ1NfQ0MN Cj4gZm91cmNjX21vZF9jb2RlKElOVEVMLA0KPiA+PiArMTIpDQo+ID4+ICsNCj4gPj4gICAvKg0K PiA+PiAgICAqIFRpbGVkLCBOVjEyTVQsIGdyb3VwZWQgaW4gNjQgKHBpeGVscykgeCAzMiAobGlu ZXMpIC1zaXplZCBtYWNyb2Jsb2Nrcw0KPiA+PiAgICAqDQo+ID4+IC0tDQo+ID4+IDIuMjAuMQ0K PiA+Pg0KDQo=