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=-2.3 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no 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 69756C433E0 for ; Fri, 3 Jul 2020 10:44:44 +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 372DC20723 for ; Fri, 3 Jul 2020 10:44:44 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="S3WuIOaV" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 372DC20723 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 92D926E237; Fri, 3 Jul 2020 10:44:43 +0000 (UTC) Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 999F36E237 for ; Fri, 3 Jul 2020 10:44:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1593773081; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GyxSQ2+pnIR3cxHzr+yS9LkIxi5YCC18kyOgPGVd/dE=; b=S3WuIOaVrzNMLHF4BMVz9sDLVWN3ISca07F5OXSwdHnGBt9xowXMk5E7fQY+u/JarMNx+a SR9V5qLwS0yNrgxlfyVKe0RTphMx0X8AQHnVyaldzUNGkal4A1FN7LAAGq+JuEf5k3C9Qv wUFn4Kgzis3QEPoiHhUeaVPs5c0Jb/8= Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-20-3rDKyRbUO02TPsZncEwF9g-1; Fri, 03 Jul 2020 06:44:39 -0400 X-MC-Unique: 3rDKyRbUO02TPsZncEwF9g-1 Received: by mail-wr1-f71.google.com with SMTP id o12so31093113wrj.23 for ; Fri, 03 Jul 2020 03:44:39 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=GyxSQ2+pnIR3cxHzr+yS9LkIxi5YCC18kyOgPGVd/dE=; b=bmgCjDvsdWNnheyIetu6cLs4Irl4D8gjV6aFrEtXLKM8yOdx7NY5jYw26Z03EApAE/ cQeSODuTYmmlN/kjqPEfOkUNqUJvONGkcpDRa6dGQaV8TFncARjkS0ASuZ4iz0r0Utzv bCMqIqUwJUtk1qMq8vRg7MZZ25PE3WSYFyTwyf94ymBuHXlycjqNHrxJ9cyevnLSTXCj HH8/U6r0K9j5/RqkCYzrRmJW9kYl8C0xlkhB7SB/WQ3QXCcbhx5bojFxPQwtBUJQp8lr TkdfcibTnShMIvWHLOszwNOX/BLKRuTV8x0ZylmBh6UxdVO0vGZ8Kl7BMpUxcL7RImSr oU5w== X-Gm-Message-State: AOAM533cRiIQvxeJJHE5UWt02Jd9aKnQQeMpJ8LkgF071siDJ8KSz8L4 FIu0HzbMjqdfh7x3bBkQn7zammTQbZ92UG/FZkToBEka6DuqO0j3JUetpWFpzjgw9h2WHVCH+u4 R0VU8pjUtmBYbfcPwuEYzAnXW9nf4 X-Received: by 2002:a1c:96c5:: with SMTP id y188mr4746207wmd.71.1593773077911; Fri, 03 Jul 2020 03:44:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxCmFaWCrUdIpKvRJ9v+lP3wvr0jF2s4QPgenI1Z+c38l8NN0HGdCnPhXLgGQsi105Ydu8RuQ== X-Received: by 2002:a1c:96c5:: with SMTP id y188mr4746172wmd.71.1593773077633; Fri, 03 Jul 2020 03:44:37 -0700 (PDT) Received: from x1.localdomain (2001-1c00-0c0c-fe00-d2ea-f29d-118b-24dc.cable.dynamic.v6.ziggo.nl. [2001:1c00:c0c:fe00:d2ea:f29d:118b:24dc]) by smtp.gmail.com with ESMTPSA id q7sm1691458wra.56.2020.07.03.03.44.36 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 03 Jul 2020 03:44:37 -0700 (PDT) Subject: Re: [RFC][PATCH 0/9] drm: Support simple-framebuffer devices and firmware fbs To: Thomas Zimmermann , maarten.lankhorst@linux.intel.com, mripard@kernel.org, airlied@linux.ie, daniel@ffwll.ch, kraxel@redhat.com, lgirdwood@gmail.com, broonie@kernel.org, robh@kernel.org, sam@ravnborg.org, emil.l.velikov@gmail.com, noralf@tronnes.org, geert+renesas@glider.be References: <20200625120011.16168-1-tzimmermann@suse.de> <3f1082d6-7268-097f-8bbd-6d9c97f35f1f@suse.de> From: Hans de Goede Message-ID: Date: Fri, 3 Jul 2020 12:44:36 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.9.0 MIME-Version: 1.0 In-Reply-To: <3f1082d6-7268-097f-8bbd-6d9c97f35f1f@suse.de> Content-Language: en-US Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=hdegoede@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.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: , Cc: dri-devel@lists.freedesktop.org Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" SGksCgpPbiA3LzEvMjAgMzo0OCBQTSwgVGhvbWFzIFppbW1lcm1hbm4gd3JvdGU6Cj4gSGkgSGFu cwo+IAo+IEFtIDI5LjA2LjIwIHVtIDExOjM4IHNjaHJpZWIgSGFucyBkZSBHb2VkZToKPj4gSGks Cj4+Cj4+IE9uIDYvMjUvMjAgMjowMCBQTSwgVGhvbWFzIFppbW1lcm1hbm4gd3JvdGU6Cj4+PiBU aGlzIHBhdGNoc2V0IGFkZHMgc3VwcG9ydCBmb3Igc2ltcGxlLWZyYW1lYnVmZmVyIHBsYXRmb3Jt IGRldmljZXMgYW5kCj4+PiBhIGhhbmRvdmVyIG1lY2hhbmlzbSBmb3IgbmF0aXZlIGRyaXZlcnMg dG8gdGFrZS1vdmVyIGNvbnRyb2wgb2YgdGhlCj4+PiBoYXJkd2FyZS4KPj4+Cj4+PiBUaGUgbmV3 IGRyaXZlciwgY2FsbGVkIHNpbXBsZWttcywgYmluZHMgdG8gYSBzaW1wbGUtZnJhbWJ1ZmZlciBw bGF0Zm9ybQo+Pj4gZGV2aWNlLiBUaGUga2VybmVsJ3MgYm9vdCBjb2RlIGNyZWF0ZXMgc3VjaCBk ZXZpY2VzIGZvciBmaXJtd2FyZS1wcm92aWRlZAo+Pj4gZnJhbWVidWZmZXJzLCBzdWNoIGFzIEVG SS1HT1Agb3IgVkVTQS4gVHlwaWNhbGx5IHRoZSBCSU9TLCBVRUZJIG9yIGJvb3QKPj4+IGxvYWRl ciBzZXRzIHVwIHRoZSBmcmFtZWJ1ZmZlcnMuIERlc2NyaXB0aW9uIHZpYSBkZXZpY2UgdHJlZSBp cyBhbHNvIGFuCj4+PiBvcHRpb24uCj4+Pgo+Pj4gU2ltcGxla21zIGlzIHNtYWxsIGVub3VnaCB0 byBiZSBsaW5rZWQgaW50byB0aGUga2VybmVsLiBUaGUgZHJpdmVyJ3MgbWFpbgo+Pj4gcHVycG9z ZSBpcyB0byBwcm92aWRlIGdyYXBoaWNhbCBvdXRwdXQgZHVyaW5nIHRoZSBlYXJseSBwaGFzZXMg b2YgdGhlCj4+PiBib290Cj4+PiBwcm9jZXNzLCBiZWZvcmUgdGhlIG5hdGl2ZSBEUk0gZHJpdmVy cyBhcmUgYXZhaWxhYmxlLiBOYXRpdmUgZHJpdmVycyBhcmUKPj4+IHR5cGljYWxseSBsb2FkZWQg ZnJvbSBhbiBpbml0cmQgcmFtIGRpc2suIE9jY2F0aW9uYWxseSBzaW1wbGVrbXMgY2FuIGFsc28K Pj4+IHNlcnZlIGFzIGludGVyaW0gc29sdXRpb24gb24gZ3JhcGhpY3MgaGFyZHdhcmUgd2l0aG91 dCBuYXRpdmUgRFJNIGRyaXZlci4KPj4KPj4gQ29vbCwgdGhhbmsgeW91IGZvciBkb2luZyB0aGlz LCB0aGlzIGlzIGEgdmVyeSB3ZWxjb21lIGNoYW5nZSwKPj4gYnV0IC4uLiAoc2VlIGJlbG93KS4K Pj4KPj4+IFNvIGZhciBkaXN0cmlidXRpb25zIHJlbHkgb24gZmJkZXYgZHJpdmVycywgc3VjaCBh cyBlZmlmYiwgdmVzYWZiIG9yCj4+PiBzaW1wbGVmYiwgZm9yIGVhcmx5LWJvb3QgZ3JhcGhpY2Fs IG91dHB1dC4gSG93ZXZlciBmYmRldiBpcyBkZXByZWNhdGVkCj4+PiBhbmQKPj4+IHRoZSBkcml2 ZXJzIGRvIG5vdCBwcm92aWRlIERSTSBpbnRlcmZhY2VzIGZvciBtb2Rlcm4gdXNlcnNwYWNlLgo+ Pj4KPj4+IFBhdGNoZXMgMSBhbmQgMiBwcmVwYXJlIHRoZSBEUk0gZm9ybWF0IGhlbHBlcnMgZm9y IHNpbXBsZWttcy4KPj4+Cj4+PiBQYXRjaGVzIDMgdG8gNyBhZGQgdGhlIHNpbXBsZWttcyBkcml2 ZXIuIEl0J3MgYnVpbGQgb24gc2ltcGxlIERSTSBoZWxwZXJzCj4+PiBhbmQgU0hNRU0uIEl0IHN1 cHBvcnRzIDE2LWJpdCwgMjQtYml0IGFuZCAzMi1iaXQgUkdCIGZyYW1lYnVmZmVycy4gRHVyaW5n Cj4+PiBwYWdlZmxpcHMsIFNITUVNIGJ1ZmZlcnMgYXJlIGNvcGllZCBpbnRvIHRoZSBmcmFtZWJ1 ZmZlciBtZW1vcnksIHNpbWlsYXIKPj4+IHRvIGNpcnJ1cyBvciBtZ2FnMjAwLiBUaGUgY29kZSBp biBwYXRjaGVzIDYgYW5kIDcgaGFuZGxlcyBjbG9ja3MgYW5kCj4+PiByZWd1bGF0b3JzLiBJdCdz IGJhc2VkIG9uIHRoZSBzaW1wbGVmYiBkcml2ZXJzLCBidXQgaGFzIGJlZW4gbW9kaWZpZWQgZm9y Cj4+PiBEUk0uCj4+Pgo+Pj4gUGF0Y2hlcyA4IGFuZCA5IGFkZCBhIGhhbmQtb3ZlciBtZWNoYW5p c20uIFNpbXBsZWttcyBhY3F1aXJlcyBpdCdzCj4+PiBmcmFtZWJ1ZmZlcidzIEkvTy1tZW1vcnkg cmFuZ2UgYW5kIHByb3ZpZGVzIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUKPj4+IHJlbW92ZWQg YnkgYSBuYXRpdmUgZHJpdmVyLiBUaGUgbmF0aXZlIGRyaXZlciB3aWxsIHJlbW92ZSBzaW1wbGVr bXMKPj4+IGJlZm9yZQo+Pj4gdGFraW5nIG92ZXIgdGhlIGhhcmR3YXJlLiBUaGUgcmVtb3ZhbCBp cyBpbnRlZ3JhdGVkIGludG8gZXhpc3RpbmcKPj4+IGhlbHBlcnMsCj4+PiBzbyBkcml2ZXJzIHVz ZSBpdCBhdXRvbWF0aWNhbGx5Lgo+Pj4KPj4+IEkgdGVzdGVkIHNpbXBsZWttcyB3aXRoIHg4NiBF RkkgYW5kIFZFU0EgZnJhbWVidWZmZXJzLCB3aGljaCBib3RoIHdvcmsKPj4+IHJlbGlhYmx5LiBU aGUgZmJkZXYgY29uc29sZSBhbmQgV2VzdG9uIHdvcmsgYXV0b21hdGljYWxseS4gWG9yZyByZXF1 aXJlcwo+Pj4gbWFudWFsIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGRldmljZS4gWG9yZ3MgY3VycmVu dCBtb2Rlc2V0dGluZyBkcml2ZXIgZG9lcwo+Pj4gbm90IHdvcmsgd2l0aCBib3RoLCBwbGF0Zm9y bSBhbmQgUENJIGRldmljZSwgZm9yIHRoZSBzYW1lIHBoeXNpY2FsCj4+PiBoYXJkd2FyZS4gT25j ZSBjb25maWd1cmVkLCBYMTEgd29ya3MuCj4+Cj4+IFVnaCwgWG9yZyBub3Qgd29ya2luZyBPT1RC IGlzIGEgYml0IG9mIGEgc2hvd3N0b3BwZXIsIHdlIGNhbm5vdCBqdXN0IGdvCj4+IGFyb3VuZCBh bmQgYnJlYWsgdXNlcnNwYWNlLiBPVE9IIHRoaXMgZG9lcyBzZWVtIGxpa2UgYW4gdXNlcnNwYWNl IGlzc3VlCj4+IGFuZCBub3Qgc29tZXRoaW5nIHdoaWNoIHdlIGNhbiAob3Igc2hvdWxkIHRyeSB0 bykgZml4IGluIHRoZSBrZXJuZWwuCj4gCj4gWG9yZyBpcyBhbiBpbXBvcnRhbnQgdXNlIGNhc2Us IGJ1dCBzaW1wbGVrbXMgZG9lcyBub3QgImJyZWFrIHVzZXJzcGFjZS4iCj4gSWYgeW91J3JlIG5v dCB1c2luZyBzaW1wbGVrbXMsIG5vdGhpbmcgY2hhbmdlczsgaWYgc2ltcGxla21zIGlzIHJlcGxh Y2VkCj4gYnkgdGhlIG5hdGl2ZSBkcml2ZXIsIG5vdGhpbmcgY2hhbmdlcy4gU2ltcGxla21zIHdv cmtzIHdpdGggWG9yZyBvZiB0aGUKPiBkZXZpY2UgaXMgYXV0by1jb25maWd1cmVkLiBYb3JnIGlz IG5vdCBhYmxlIHRvIGF1dG8tY29uZmlndXJlIHNpbXBsZWttcwo+IGRldmljZXMgQVRNLgoKQXMg SSBhbHJlYWR5IG1lbnRpb25lZCBpbiBteSByZXBsYXkgdG8gRGFuaWVsOiBJZiB0aGVyZSBpcyBu byBuYXRpdmUgZHJpdmVyLApvciB0aGUgbmF0aXZlIGRyaXZlciBmYWlscyB0byBsb2FkIChlLmcu IG52aWRpYSBiaW5hcnkgZHJpdmVyIGRrbXMgYnVpbGQKZmFpbHMgd2l0aCBhIG53ZXIga2VybmVs KSB0aGVuIGhhdmluZyBzaW1wbGVrbXMgZW5hYmxlcyBjaGFuZ2VzIHRoZSB1c2VyLApleHBlcmll bmNlIGZyb20gWG9yZyBvbiBmYmRldiwgc2xvdyBidXQgdXNhYmxlIHRvIHNlYXJjaCBmb3IgYSBz b2x1dGlvbgp0byBubyBHVUkuIEkgYWdyZWUgdGhhdCB3ZSBjYW5ub3Qgc29sdmUgdGhpcyBvbiB0 aGUga2VybmVsIHNpZGUsIGJ1dCBpdAppcyBhIHJlYWwgcHJvYmxlbSB3aGljaCB3ZSBuZWVkIHRv IGtlZXAgaW4gbWluZC4KCj4+IEkgZ3Vlc3MgdGhlIHNvbHV0aW9uIHdpbGwgaGF2ZSB0byBiZSB0 byBoYXZlIHRoaXMgZGVmYXVsdCB0byBOIGZvciBub3cKPj4gaW4gS2NvbmZpZyBhbmQgY2xlYXJs eSBtZW50aW9uIGluIHRoZSBLY29uZmlnIGhlbHAgdGV4dCB0aGF0IHRoaXMgbmVlZHMKPj4gYSBm aXhlZCBYb3JnIG1vZGVzZXR0aW5nIGRyaXZlciBiZWZvcmUgaXQgY2FuIGJlIGVuYWJsZWQuCj4g Cj4gU3VyZSwgYnV0IHNpbXBsZWttcyBpcyBqdXN0IGEgZHJpdmVyLiBTaG91bGRuJ3QgaXQgZGVm YXVsdCB0byBOIGFueXdheT8KCkkgZ3Vlc3Mgc28uCgo+PiBBbnkgY2hhbmNlIHlvdSBoYXZlIHRp bWUgdG8gd29yayBvbiBmaXhpbmcgdGhlIFhvcmcgbW9kZXNldHRpbmcgZHJpdmVyCj4+IHNvIHRo YXQgdGhpcyB3aWxsIGp1c3Qgd29yayB3aXRoIHRoZSBzdGFuZGFyZCBYb3JnIGF1dG9jb25maWd1 cmF0aW9uCj4+IHN0dWZmPwo+IAo+IEknbGwgZG8gaWYgc29tZWhvdyBwb3NzaWJsZS4gU2VlIG15 IHJlcGx5IHRvIERhbmllbCBmb3IgYSBkZXNjcmlwdGlvbiBvZgo+IHRoZSBwcm9ibGVtLgoKR3Jl YXQuCgo+Pj4gT25lIGNvc21ldGljYWwgaXNzdWUgaXMgdGhhdCBzaW1wbGVrbXMncyBkZXZpY2Ug ZmlsZSBpcyBjYXJkMCBhbmQgdGhlCj4+PiBuYXRpdmUgZHJpdmVyJ3MgZGV2aWNlIGZpbGUgaXMg Y2FyZDEuIEFmdGVyIHNpbXBsZWttcyBoYXMgYmVlbiBraWNrZWQKPj4+IG91dCwKPj4+IG9ubHkg Y2FyZDEgaXMgbGVmdC4gVGhpcyBkb2VzIG5vdCBzZWVtIHRvIGJlIGEgcHJhY3RpY2FsIHByb2Js ZW0gaG93ZXZlci4KPj4+Cj4+PiBUT0RPL0lERUFTOgo+Pj4KPj4+ICDCoMKgwqDCoCogcHJvdmlk ZSBkZWZlcnJlZCB0YWtlb3Zlcgo+Pgo+PiBJIGFzc3VtZSB5b3UgbWVhbiBha2luIHRvIENPTkZJ R19GUkFNRUJVRkZFUl9DT05TT0xFX0RFRkVSUkVEX1RBS0VPVkVSID8KPj4gSSBkb24ndCB0aGlu ayB5b3UgbmVlZCB0byBkbyBhbnl0aGluZyBmb3IgdGhhdCwgYXMgbG9uZyBhcyB5b3UganVzdAo+ PiBsZWF2ZSB0aGUgZmIgY29udGVudHMgaW50YWN0IHVudGlsIHJlcXVlc3RlZCB0byBjaGFuZ2Ug aXQuCj4gCj4gR3JlYXQuIElmIGl0J3MgdGhhdCBlYXN5OyBldmVuIGJldHRlci4KPiAKPj4KPj4g UmlnaHQgbm93IHdpdGggZmxpY2tlcmZyZWUgYm9vdCB3ZSBoYXZlIGZiY29uIG9uIHRvcCBvZiBl ZmlmYiBhbmQKPj4gZWZpZmIgZG9lcyBub3QgZG8gYW55dGhpbmcgc3BlY2lhbCB3cnQKPj4gQ09O RklHX0ZSQU1FQlVGRkVSX0NPTlNPTEVfREVGRVJSRURfVEFLRU9WRVIKPj4gQVRNIGl0IGRvZXMg ZHJhdy9yZXN0b3JlIHRoZSBBQ1BJIEJHUlQgbG9nbyBzaW5jZSBzaW5jZSBzb21lIGZpcm13YXJl cwo+PiBkb24ndCBkcmF3IHRoYXQgdGhlbXNlbHZlcywgYnV0IHRoYXQgaXMgbm90IG5lY2Vzc2Fy eSBpbiBtb3N0IGNhc2VzCj4+IGFuZCBvdGhlciB0aGVuIHRoYXQgYWxsIHRoZSBkZWZlcnJlZCB0 YWtlb3ZlciBtYWdpYyBpcyBpbiB0aGUgZmJjb24KPj4gY29kZSwgaXQgZG9lcyBub3QgYmluZCB0 byB0aGUgZmJkZXYgKGFuZCB0aHVzIGRvZXMgbm90IGRyYXcgdG8gaXQpCj4+IHVudGlsIHRoZSBm aXJzdCB0aW1lIHRoZSBrZXJuZWwgdHJpZXMgdG8gb3V0cHV0IHRleHQgdG8gdGhlIGNvbnNvbGUs Cj4+IHRvZ2V0aGVyIHdpdGggdGhlICJxdWlldCIga2VybmVsIGNvbW1hbmRsaW5lIGFyZ3VtZW50 IHRoYXQgZW5zdXJlcwo+PiB0aGF0IHRoZSBmYiBpcyBrZXB0IHVubW9kaWZpZWQgdW50aWwgZS5n LiBhIHBhbmljIGhhcHBlbnMuCj4+Cj4+IFdpdGggc2ltcGxla21zIHdlIHdvdWxkIHJlcGxhY2Ug ImZiY29uIG9uIHRvcCBvZiBlZmlmYiIgd2l0aAo+PiAiZmJjb24gb24gdG9wIG9mIGVtdWxhdGVk LWZiZGV2IG9uIHRvcCBvZiBzaW1wbGVrbXMiIHNvIGFzIGxvbmcKPj4gYXMgdGhlIGVtdWxhdGVk LWZiZGV2IGFuZCBzaW1wbGVrbXMgY29kZSBkZWZlciBmcm9tIHNheSBjbGVhcmluZwo+PiB0aGUg c2NyZWVuIHRvIGJsYWNrLCBidXQga2VlcCBpdCBhcyBpcy4gVGhlbiB0aGUgZmIgY29udGVudHMK Pj4gc2hvdWxkIGJlIHByZXNlcnZlZCB1bnRpbCBmYmNvbiBkZWNpZGVzIHRvIHRha2VvdmVyIHRo ZSBmYmRldgo+PiBhbmQgZHJhdyB0byBpdC4KPj4KPj4+ICDCoMKgwqDCoCogcHJvdmlkZSBib290 c3BsYXNoIERSTSBjbGllbnQKPj4KPj4gSG1tLCBJIGd1ZXNzIHRoaXMgbWlnaHQgYmUgaW50ZXJl c3RpbmcgZm9yIHNpbXBsZSBjYXNlcywgYnV0Cj4+IGFsdGhvdWdoIEkgd291bGQgbG92ZSB0byBr aWxsIHBseW1vdXRoIChJJ3ZlIGJlY29tZSBvbmUgb2YgdGhlCj4+IHVwc3RyZWFtIG1haW50YWlu ZXJzIGZvciBpdCkgSSdtIGFmcmFpZCBpdCBpcyBub3QgdGhhdCBlYXN5LAo+PiBpdCBkb2VzIGEg YnVuY2ggb2Ygc3R1ZmYgd2hpY2ggd2lsbCBiZSB0cmlja3kgdG8gZG8gaW4gdGhlIGtlcm5lbDoK PiAKPiBUaGUgd2hvbGUgYm9vdHNwbGFzaCB0aGluZyBpcyByZWFsbHkgYSBmb2xsb3ctdXAgcHJv amVjdC4KPiAKPiBXaGF0IEkgaGF2ZSBpbiBtaW5kIGZvciB0aGUgYm9vdHNwbGFzaCBpcyB0aGUg QUNQSSBCR1JUIGxvZ28gcmVzdG9yYXRpb24KPiB0aGF0IGlzIGN1cnJlbnRseSBpbiBlZmlmYi4g TWF5YmUgb3RoZXIgc291cmNlcyBmb3IgYm9vdCBsb2dvcyBjb3VsZCBiZQo+IGNvbnNpZGVyZWQg YXMgd2VsbC4gQW5kIGlmIG5vdGhpbmcgZWxzZSwgaXQgY291bGQgc2hvdyBhIHBlbmd1aW4uIEFz Cj4gc29vbiBhcyBwbHltb3V0aCBpcyByZWFkeSwgaXQgd291bGQgdGFrZSBvdmVyIHRoZSBkaXNw bGF5IGFuZCBkbyBpdHMgdGhpbmcuCj4gCj4gTm9yYWxmIG1hZGUgYSBwcm90b3R5cGUgb2YgYW4g aW4ta2VybmVsIGJvb3RzcGxhc2ggY2xpZW50IHRoYXQgZGlzcGxheXMKPiBhIGNvbG9yZWQgcmVj dGFuZ2xlLiBUaGF0J3MgYWxyZWFkeSBoYWxmIG9mIHRoZSB3b3JrLCBJIGd1ZXNzLgoKT2ssIHRo aXMgc291bmRzIGdvb2QuCgpSZWdhcmRzLAoKSGFucwoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vZHJpLWRldmVsCg==