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 3EA23F8FA90 for ; Tue, 21 Apr 2026 15:32:33 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 98FA310ECF9; Tue, 21 Apr 2026 15:32:32 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=arm.com header.i=@arm.com header.b="cBNH0mgk"; dkim-atps=neutral Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by gabe.freedesktop.org (Postfix) with ESMTP id 743F010ED08 for ; Tue, 21 Apr 2026 15:32:30 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3BB5B263D for ; Tue, 21 Apr 2026 08:32:24 -0700 (PDT) Received: from [10.2.11.34] (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 92B403FAF5 for ; Tue, 21 Apr 2026 08:32:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=arm.com; s=foss; t=1776785549; bh=fhBy7ZTDUwKSbf3HhFiViEZekUwSlWT1MQ0rYA5c8Qg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=cBNH0mgkEQbQY2/4yQpOcYDCt9ksRfGCY51okiwnnU4i5m30MVA0jtZvWN0s3apJS TTkMh5+PVInUFhiBk+wZa6xsQ111vraiaq9DIgfm+EpShbzOh30HdXv0vS7PdSTw0m wZANf0NTIbtX/xgbo2iILxJZ80iv5r09cmwX9cP4= Date: Tue, 21 Apr 2026 16:32:21 +0100 From: Liviu Dudau To: Laura Nao Cc: dakr@kernel.org, boris.brezillon@collabora.com, steven.price@arm.com, matthew.brost@intel.com, thomas.hellstrom@linux.intel.com, rodrigo.vivi@intel.com, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, nouveau@lists.freedesktop.org, intel-xe@lists.freedesktop.org, kernel@collabora.com Subject: Re: [PATCH] drm: Remove DRIVER_GEM_GPUVA feature flag Message-ID: References: <20260421084701.24227-1-laura.nao@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: base64 In-Reply-To: <20260421084701.24227-1-laura.nao@collabora.com> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gVHVlLCBBcHIgMjEsIDIwMjYgYXQgMTA6NDc6MDFBTSArMDIwMCwgTGF1cmEgTmFvIHdyb3Rl Ogo+IFRoZSBEUklWRVJfR0VNX0dQVVZBIGZlYXR1cmUgZmxhZyBpcyBjdXJyZW50bHkgb25seSB1 c2VkIHRvIGNvbnRyb2wgdHdvCj4gYmVoYXZpb3JzIHdpdGhpbiB0aGUgRFJNIGNvcmU6Cj4gLSBj YWxsaW5nICBkcm1fZ2VtX2dwdXZhX2luaXQoKSBkdXJpbmcKPiAgIEdFTSBvYmplY3QgaW5pdGlh bGl6YXRpb24KPiAtIGNyZWF0aW5nIHRoZSAiZ3B1dmFzIiBkZWJ1Z2ZzIGVudHJ5Cj4gCj4gZHJt X2dlbV9ncHV2YV9pbml0KCkgaXMgYSBwbGFpbiBJTklUX0xJU1RfSEVBRCgpIGFuZCB0aGVyZWZv cmUgaXMgY2hlYXAKPiB0byBydW4gZm9yIGV2ZXJ5IEdFTSBvYmplY3QuIFRoZSBEUk1fREVCVUdG U19HUFVWQV9JTkZPIG1hY3JvIGlzIG9ubHkKPiByZWZlcmVuY2VkIGJ5IEdQVS1WQSBjYXBhYmxl IGRyaXZlcnMsIHNvIGNsZWFyaW5nIHRoZSBmZWF0dXJlIGJpdCBkb2VzCj4gbm90IGNhdXNlIGFu eSB1bnJlbGF0ZWQgZHJpdmVycyB0byBnZXQgdGhlICJncHV2YXMiIGRlYnVnZnMgbm9kZS4gVGhl Cj4gZmxhZyBkb2Vzbid0IGhhdmUgYW55IHJlbGV2YW50IHB1cnBvc2UgKGUuZy4gZ2F0aW5nIGlv Y3RsIGhhbmRsZXJzIG9yIE1NCj4gbG9naWMpIGFuZCBkb2Vzbid0IHByb3ZpZGUgYW55IHByYWN0 aWNhbCBiZW5lZml0Lgo+IAo+IFJlbW92ZSB0aGUgZmxhZyBkZWZpbml0aW9uIGFuZCBkcm9wIGl0 IGZyb20gYWxsIGRyaXZlcnMgdGhhdCB1c2UgaXQsCj4gY2FsbCBkcm1fZ2VtX2dwdXZhX2luaXQo KSB1bmNvbmRpdGlvbmFsbHkgYW5kIGNsZWFyIHRoZSBkcml2ZXIgZmVhdHVyZXMKPiBiaXQgaW4g RFJNX0RFQlVHRlNfR1BVVkFfSU5GTy4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBMYXVyYSBOYW8gPGxh dXJhLm5hb0Bjb2xsYWJvcmEuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5j ICAgICAgICAgICAgIHwgMyArLS0KPiAgZHJpdmVycy9ncHUvZHJtL2ltYWdpbmF0aW9uL3B2cl9k cnYuYyB8IDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMgICAgICAgICB8IDIg LS0KPiAgZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbm91dmVhdV9kcm0uYyB8IDEgLQo+ICBkcml2 ZXJzL2dwdS9kcm0vcGFudGhvci9wYW50aG9yX2Rydi5jIHwgMiArLQoKRm9yIHBhbnRob3IgY2hh bmdlczoKCkFja2VkLWJ5OiBMaXZpdSBEdWRhdSA8bGl2aXUuZHVkYXVAYXJtLmNvbT4KCkJlc3Qg cmVnYXJkcywKTGl2aXUKCj4gIGRyaXZlcnMvZ3B1L2RybS94ZS94ZV9kZXZpY2UuYyAgICAgICAg fCAyICstCj4gIGluY2x1ZGUvZHJtL2RybV9kZWJ1Z2ZzLmggICAgICAgICAgICAgfCAyICstCj4g IGluY2x1ZGUvZHJtL2RybV9kcnYuaCAgICAgICAgICAgICAgICAgfCA2IC0tLS0tLQo+ICBpbmNs dWRlL2RybS9kcm1fZ2VtLmggICAgICAgICAgICAgICAgIHwgMyAtLS0KPiAgOSBmaWxlcyBjaGFu Z2VkLCA1IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9nZW0uYwo+IGlu ZGV4IDAzNzdhNWZkNDAyZC4uY2I3MDNkMDA3MmFhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZ2VtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2dlbS5jCj4gQEAgLTIz Miw4ICsyMzIsNyBAQCB2b2lkIGRybV9nZW1fcHJpdmF0ZV9vYmplY3RfaW5pdChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LAo+ICAJaWYgKCFvYmotPnJlc3YpCj4gIAkJb2JqLT5yZXN2ID0gJm9iai0+ X3Jlc3Y7Cj4gIAo+IC0JaWYgKGRybV9jb3JlX2NoZWNrX2ZlYXR1cmUoZGV2LCBEUklWRVJfR0VN X0dQVVZBKSkKPiAtCQlkcm1fZ2VtX2dwdXZhX2luaXQob2JqKTsKPiArCWRybV9nZW1fZ3B1dmFf aW5pdChvYmopOwo+ICAKPiAgCWRybV92bWFfbm9kZV9yZXNldCgmb2JqLT52bWFfbm9kZSk7Cj4g IAlJTklUX0xJU1RfSEVBRCgmb2JqLT5scnVfbm9kZSk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pbWFnaW5hdGlvbi9wdnJfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaW1hZ2luYXRp b24vcHZyX2Rydi5jCj4gaW5kZXggMjY4OTAwNDY0YWI2Li44MDAzM2Q0Y2I2NmEgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2ltYWdpbmF0aW9uL3B2cl9kcnYuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pbWFnaW5hdGlvbi9wdnJfZHJ2LmMKPiBAQCAtMTM3NSw3ICsxMzc1LDcgQEAg cHZyX2RybV9kcml2ZXJfcG9zdGNsb3NlKF9fYWx3YXlzX3VudXNlZCBzdHJ1Y3QgZHJtX2Rldmlj ZSAqZHJtX2RldiwKPiAgREVGSU5FX0RSTV9HRU1fRk9QUyhwdnJfZHJtX2RyaXZlcl9mb3BzKTsK PiAgCj4gIHN0YXRpYyBzdHJ1Y3QgZHJtX2RyaXZlciBwdnJfZHJtX2RyaXZlciA9IHsKPiAtCS5k cml2ZXJfZmVhdHVyZXMgPSBEUklWRVJfR0VNIHwgRFJJVkVSX0dFTV9HUFVWQSB8IERSSVZFUl9S RU5ERVIgfAo+ICsJLmRyaXZlcl9mZWF0dXJlcyA9IERSSVZFUl9HRU0gfCBEUklWRVJfUkVOREVS IHwKPiAgCQkJICAgRFJJVkVSX1NZTkNPQkogfCBEUklWRVJfU1lOQ09CSl9USU1FTElORSwKPiAg CS5vcGVuID0gcHZyX2RybV9kcml2ZXJfb3BlbiwKPiAgCS5wb3N0Y2xvc2UgPSBwdnJfZHJtX2Ry aXZlcl9wb3N0Y2xvc2UsCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Ry di5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMKPiBpbmRleCAxOTVmNDBlMzMxZTUu LmVlMzhjMTg3MTVmMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYu Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jCj4gQEAgLTgyNSw3ICs4MjUs NiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBmb3BzID0gewo+ICAKPiAg I2RlZmluZSBEUklWRVJfRkVBVFVSRVNfR1BVICggXAo+ICAJCURSSVZFUl9HRU0gfCBcCj4gLQkJ RFJJVkVSX0dFTV9HUFVWQSB8IFwKPiAgCQlEUklWRVJfUkVOREVSIHwgXAo+ICAJCURSSVZFUl9T WU5DT0JKIHwgXAo+ICAJCURSSVZFUl9TWU5DT0JKX1RJTUVMSU5FIHwgXAo+IEBAIC04MzMsNyAr ODMyLDYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgZm9wcyA9IHsKPiAg Cj4gICNkZWZpbmUgRFJJVkVSX0ZFQVRVUkVTX0tNUyAoIFwKPiAgCQlEUklWRVJfR0VNIHwgXAo+ IC0JCURSSVZFUl9HRU1fR1BVVkEgfCBcCj4gIAkJRFJJVkVSX0FUT01JQyB8IFwKPiAgCQlEUklW RVJfTU9ERVNFVCB8IFwKPiAgCQkwICkKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL25v dXZlYXUvbm91dmVhdV9kcm0uYyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L25vdXZlYXVfZHJt LmMKPiBpbmRleCA1ZDg0NzVlNDg5NWUuLjBmNWY2NjJlNTQyOSAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vbm91dmVhdS9ub3V2ZWF1X2RybS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L25vdXZlYXUvbm91dmVhdV9kcm0uYwo+IEBAIC0xMzY0LDcgKzEzNjQsNiBAQCBzdGF0aWMgc3Ry dWN0IGRybV9kcml2ZXIKPiAgZHJpdmVyX3N0dWIgPSB7Cj4gIAkuZHJpdmVyX2ZlYXR1cmVzID0g RFJJVkVSX0dFTSB8Cj4gIAkJCSAgIERSSVZFUl9TWU5DT0JKIHwgRFJJVkVSX1NZTkNPQkpfVElN RUxJTkUgfAo+IC0JCQkgICBEUklWRVJfR0VNX0dQVVZBIHwKPiAgCQkJICAgRFJJVkVSX01PREVT RVQgfAo+ICAJCQkgICBEUklWRVJfUkVOREVSLAo+ICAJLm9wZW4gPSBub3V2ZWF1X2RybV9vcGVu LAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcGFudGhvci9wYW50aG9yX2Rydi5jIGIv ZHJpdmVycy9ncHUvZHJtL3BhbnRob3IvcGFudGhvcl9kcnYuYwo+IGluZGV4IDg3ZDI3YzNjMTQ1 Ni4uMWExZDQwYTc0NGRiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9wYW50aG9yL3Bh bnRob3JfZHJ2LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcGFudGhvci9wYW50aG9yX2Rydi5j Cj4gQEAgLTE4MDUsNyArMTgwNSw3IEBAIHN0YXRpYyB2b2lkIHBhbnRob3JfZGVidWdmc19pbml0 KHN0cnVjdCBkcm1fbWlub3IgKm1pbm9yKQo+ICAgKi8KPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1fZHJpdmVyIHBhbnRob3JfZHJtX2RyaXZlciA9IHsKPiAgCS5kcml2ZXJfZmVhdHVyZXMgPSBE UklWRVJfUkVOREVSIHwgRFJJVkVSX0dFTSB8IERSSVZFUl9TWU5DT0JKIHwKPiAtCQkJICAgRFJJ VkVSX1NZTkNPQkpfVElNRUxJTkUgfCBEUklWRVJfR0VNX0dQVVZBLAo+ICsJCQkgICBEUklWRVJf U1lOQ09CSl9USU1FTElORSwKPiAgCS5vcGVuID0gcGFudGhvcl9vcGVuLAo+ICAJLnBvc3RjbG9z ZSA9IHBhbnRob3JfcG9zdGNsb3NlLAo+ICAJLnNob3dfZmRpbmZvID0gcGFudGhvcl9zaG93X2Zk aW5mbywKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2RldmljZS5jIGIvZHJp dmVycy9ncHUvZHJtL3hlL3hlX2RldmljZS5jCj4gaW5kZXggZmZlYTRhNDUzYzAxLi5iM2FjYzIw MmRmNzYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2RldmljZS5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2RldmljZS5jCj4gQEAgLTM5Myw3ICszOTMsNyBAQCBz dGF0aWMgc3RydWN0IGRybV9kcml2ZXIgZHJpdmVyID0gewo+ICAJLmRyaXZlcl9mZWF0dXJlcyA9 Cj4gIAkgICAgRFJJVkVSX0dFTSB8Cj4gIAkgICAgRFJJVkVSX1JFTkRFUiB8IERSSVZFUl9TWU5D T0JKIHwKPiAtCSAgICBEUklWRVJfU1lOQ09CSl9USU1FTElORSB8IERSSVZFUl9HRU1fR1BVVkEs Cj4gKwkgICAgRFJJVkVSX1NZTkNPQkpfVElNRUxJTkUsCj4gIAkub3BlbiA9IHhlX2ZpbGVfb3Bl biwKPiAgCS5wb3N0Y2xvc2UgPSB4ZV9maWxlX2Nsb3NlLAo+ICAKPiBkaWZmIC0tZ2l0IGEvaW5j bHVkZS9kcm0vZHJtX2RlYnVnZnMuaCBiL2luY2x1ZGUvZHJtL2RybV9kZWJ1Z2ZzLmgKPiBpbmRl eCBlYThjYmE5NDIwOGEuLmViOTM1MTJiMGYyMyAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2RybS9k cm1fZGVidWdmcy5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2RlYnVnZnMuaAo+IEBAIC00OCw3 ICs0OCw3IEBACj4gICAqIEZvciBlYWNoIERSTSBHUFUgVkEgc3BhY2UgZHJpdmVycyBzaG91bGQg Y2FsbCBkcm1fZGVidWdmc19ncHV2YV9pbmZvKCkgZnJvbQo+ICAgKiB0aGVpciBAc2hvdyBjYWxs YmFjay4KPiAgICovCj4gLSNkZWZpbmUgRFJNX0RFQlVHRlNfR1BVVkFfSU5GTyhzaG93LCBkYXRh KSB7ImdwdXZhcyIsIHNob3csIERSSVZFUl9HRU1fR1BVVkEsIGRhdGF9Cj4gKyNkZWZpbmUgRFJN X0RFQlVHRlNfR1BVVkFfSU5GTyhzaG93LCBkYXRhKSB7ImdwdXZhcyIsIHNob3csIDAsIGRhdGF9 Cj4gIAo+ICAvKioKPiAgICogc3RydWN0IGRybV9pbmZvX2xpc3QgLSBkZWJ1Z2ZzIGluZm8gbGlz dCBlbnRyeQo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZHJ2LmggYi9pbmNsdWRlL2Ry bS9kcm1fZHJ2LmgKPiBpbmRleCA0MmZjMDg1Zjk4NmQuLmUwOTU1OTQ5NWM1YiAxMDA2NDQKPiAt LS0gYS9pbmNsdWRlL2RybS9kcm1fZHJ2LmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fZHJ2LmgK PiBAQCAtMTA3LDEyICsxMDcsNiBAQCBlbnVtIGRybV9kcml2ZXJfZmVhdHVyZSB7Cj4gIAkgKiBh Y2NlbGVyYXRpb24gc2hvdWxkIGJlIGhhbmRsZWQgYnkgdHdvIGRyaXZlcnMgdGhhdCBhcmUgY29u bmVjdGVkIHVzaW5nIGF1eGlsaWFyeSBidXMuCj4gIAkgKi8KPiAgCURSSVZFUl9DT01QVVRFX0FD Q0VMICAgICAgICAgICAgPSBCSVQoNyksCj4gLQkvKioKPiAtCSAqIEBEUklWRVJfR0VNX0dQVVZB Ogo+IC0JICoKPiAtCSAqIERyaXZlciBzdXBwb3J0cyB1c2VyIGRlZmluZWQgR1BVIFZBIGJpbmRp bmdzIGZvciBHRU0gb2JqZWN0cy4KPiAtCSAqLwo+IC0JRFJJVkVSX0dFTV9HUFVWQQkJPSBCSVQo OCksCj4gIAkvKioKPiAgCSAqIEBEUklWRVJfQ1VSU09SX0hPVFNQT1Q6Cj4gIAkgKgo+IGRpZmYg LS1naXQgYS9pbmNsdWRlL2RybS9kcm1fZ2VtLmggYi9pbmNsdWRlL2RybS9kcm1fZ2VtLmgKPiBp bmRleCA4NmY1ODQ2MTU0ZjcuLjk5NmFhNDE4ZGNlOSAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2Ry bS9kcm1fZ2VtLmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fZ2VtLmgKPiBAQCAtNjYzLDkgKzY2 Myw2IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBkcm1fZ2VtX2lzX2ltcG9ydGVkKGNvbnN0IHN0cnVj dCBkcm1fZ2VtX29iamVjdCAqb2JqKQo+ICAgKgo+ICAgKiBUaGlzIGluaXRpYWxpemVzIHRoZSAm ZHJtX2dlbV9vYmplY3QncyAmZHJtX2dwdXZtX2JvIGxpc3QuCj4gICAqCj4gLSAqIENhbGxpbmcg dGhpcyBmdW5jdGlvbiBpcyBvbmx5IG5lY2Vzc2FyeSBmb3IgZHJpdmVycyBpbnRlbmRpbmcgdG8g c3VwcG9ydCB0aGUKPiAtICogJmRybV9kcml2ZXJfZmVhdHVyZSBEUklWRVJfR0VNX0dQVVZBLgo+ IC0gKgo+ICAgKiBTZWUgYWxzbyBkcm1fZ2VtX2dwdXZhX3NldF9sb2NrKCkuCj4gICAqLwo+ICBz dGF0aWMgaW5saW5lIHZvaWQgZHJtX2dlbV9ncHV2YV9pbml0KHN0cnVjdCBkcm1fZ2VtX29iamVj dCAqb2JqKQo+IC0tIAo+IDIuMzkuNQo+IAoKLS0gCj09PT09PT09PT09PT09PT09PT09CnwgSSB3 b3VsZCBsaWtlIHRvIHwKfCBmaXggdGhlIHdvcmxkLCAgfAp8IGJ1dCB0aGV5J3JlIG5vdCB8Cnwg Z2l2aW5nIG1lIHRoZSAgIHwKIFwgc291cmNlIGNvZGUhICAvCiAgLS0tLS0tLS0tLS0tLS0tCiAg ICDCr1xfKOODhClfL8KvCg==