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=-6.5 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, 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 62D32CA90AF for ; Tue, 12 May 2020 16:19:51 +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 2EC55206B7 for ; Tue, 12 May 2020 16:19:51 +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="iNGqWckl" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2EC55206B7 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.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 BE66C89F55; Tue, 12 May 2020 16:19:50 +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 D217089F55 for ; Tue, 12 May 2020 16:19:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1589300388; 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=hDXdXH27c6Z7TZDRHBG7Vcchi0UL2x2oJouz+NDldOo=; b=iNGqWckl0cYCyi84d4XJvQFOal1uwy7ZP1LjfG3yesJ1ZApjIig++1VbSjoSgC07xSn8/e m4m+fghvwhWAmgLP8ohNODMNvhAYHFD2pG8pcEQxzkkdAgEA1fMiziZNmRss32E96wqNkC Ip5wUKTvxbltW71s8LJMnoKP93FoE5Q= Received: from mail-qv1-f69.google.com (mail-qv1-f69.google.com [209.85.219.69]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-386-ZSCeyQDkMPeSId_JVdkrEQ-1; Tue, 12 May 2020 12:19:42 -0400 X-MC-Unique: ZSCeyQDkMPeSId_JVdkrEQ-1 Received: by mail-qv1-f69.google.com with SMTP id h15so2268913qvk.0 for ; Tue, 12 May 2020 09:19:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:organization:user-agent:mime-version :content-transfer-encoding; bh=hDXdXH27c6Z7TZDRHBG7Vcchi0UL2x2oJouz+NDldOo=; b=iSk4L6e3ThpKhNSPKHAoyTyc5ezo1GE8b39vkR/oGXgFivt2SGPUEnu8Jg2ruhkpdo iFbM3ma287hCiSaGybcuE+fctG0wkNHWLCHUwxgONJCmOpd1Jblj/vjq5uIETtiE741e ayjQFUS5hGhoeQh3RGcyv9e5SsYdYbXlpF1f6uNLxqs64zBd7wLbISiQfqVLv0XyVPPi GvOKOnAZToTBJfpWlC0fXZ+y00ZuRfMkkAyRvYbRCQ/jYk1yFz1J1krJq0899gTM9gJF Osiq0XOPzcVYDdcV70C0XBIMPEJBj9d0CQcC+l6RRnnRQrxpzUzPE1qu9bn+EckI5tOI 3p5A== X-Gm-Message-State: AOAM530C7qcVAJbcAJsMqnpQ4mofCdHCOSBbGDUvHlB8K+oaK8SzpdzL jgAZfzArYPwEhnXboCiM72+m74KVHbZNwI6srqkUz2/wnE2PqaHoav1WRiKowffMsf03OLf6MTo BoO0FOLINA4RgUAHNP9j/vBXo0csj X-Received: by 2002:a37:9a95:: with SMTP id c143mr7243546qke.201.1589300381969; Tue, 12 May 2020 09:19:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyWqZF2KZt4bMOjX/3talHw8CJ4Gx6V6WfLSfYAPwXl8msFNk1DwU+SAZyQWmXnnmTQyEqTiQ== X-Received: by 2002:a37:9a95:: with SMTP id c143mr7243515qke.201.1589300381603; Tue, 12 May 2020 09:19:41 -0700 (PDT) Received: from Ruby.lyude.net (static-173-76-190-23.bstnma.ftas.verizon.net. [173.76.190.23]) by smtp.gmail.com with ESMTPSA id h185sm11401768qkc.19.2020.05.12.09.19.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 May 2020 09:19:40 -0700 (PDT) Message-ID: From: Lyude Paul To: "20200417212408.19649-1-shawn.c.lee@intel.com" <20200417212408.19649-1-shawn.c.lee@intel.com>, "intel-gfx@lists.freedesktop.org" Date: Tue, 12 May 2020 12:19:39 -0400 In-Reply-To: References: <20200417212408.19649-1-shawn.c.lee@intel.com> <078627d6dff5e01868771b5b2158b75446200fd9.camel@redhat.com> Organization: Red Hat User-Agent: Evolution 3.36.2 (3.36.2-1.fc32) MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Subject: Re: [Intel-gfx] [PATCH] drm/i915/mst: filter out the display mode exceed sink's capability 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: "Chiou, Cooper" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gVHVlLCAyMDIwLTA1LTEyIGF0IDA2OjE3ICswMDAwLCBMZWUsIFNoYXduIEMgd3JvdGU6Cj4g T24gVGh1LCBNYXkgMTEsIDIwMjAsIFZpbGxlIFN5cmrDpGzDpCB3cm90ZToKPiA+IE9uIFRodSwg TWF5IDA3LCAyMDIwIGF0IDA2OjQ2OjE3UE0gLTA0MDAsIEx5dWRlIFBhdWwgd3JvdGU6Cj4gPiA+ IE9uIFRodSwgMjAyMC0wNC0zMCBhdCAwMjozNyArMDAwMCwgTGVlLCBTaGF3biBDIHdyb3RlOgo+ ID4gPiA+IE9uIFNhdCwgMjAyMC0wNC0yNSwgTHl1ZGUgUGF1bCB3cm90ZToKPiA+ID4gPiA+IEhp ISBTb3JyeSB0aGlzIHRvb2sgbWUgYSBsaXR0bGUgd2hpbGUgdG8gZ2V0IGJhY2sgdG8sIEkgaGFk IGEgY291cGxlCj4gPiA+ID4gPiBvZgo+ID4gPiA+ID4gTVNUIHJlZ3Jlc3Npb25zIHRoYXQgSSBo YWQgdG8gbG9vayBpbnRvCj4gPiA+ID4gPiAKPiA+ID4gPiA+IE9uIFNhdCwgMjAyMC0wNC0xOCBh dCAwNToyNCArMDgwMCwgTGVlIFNoYXduIEMgd3JvdGU6Cj4gPiA+ID4gPiA+IFNvIGZhciwgbWF4 IGRvdCBjbG9jayByYXRlIGZvciBNU1QgbW9kZSByZWx5IG9uIHBoeXNjaWFsCj4gPiA+ID4gPiA+ IGJhbmR3aWR0aCAKPiA+ID4gPiA+ID4gbGltaXRhdGlvbi4gSXQgd291bGQgY2F1c2VkIGNvbXBh dGliaWxpdHkgaXNzdWUgaWYgc291cmNlIGRpc3BsYXkgCj4gPiA+ID4gPiA+IHJlc29sdXRpb24g ZXhjZWVkIE1TVCBodWIgb3V0cHV0IGFiaWxpdHkuCj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiBG b3IgZXhhbXBsZSwgc291cmNlIERVVCBoYWQgRFAgMS4yIG91dHB1dCBjYXBhYmlsaXR5Lgo+ID4g PiA+ID4gPiBBbmQgTVNUIGRvY2tpbmcganVzdCBzdXBwb3J0IEhETUkgMS40IHNwZWMuIFdoZW4g YSBIRE1JIDIuMAo+ID4gPiA+ID4gPiBtb25pdG9yIAo+ID4gPiA+ID4gPiBjb25uZWN0ZWQuIFNv dXJjZSB3b3VsZCByZXRyaWV2ZSBFRElEIGZyb20gZXh0ZXJuYWwgYW5kIGdldCBtYXggCj4gPiA+ ID4gPiA+IHJlc29sdXRpb24gNGtANjBmcHMuIERQIDEuMiBjYW4gc3VwcG9ydCA0S0A2MGZwcyBi ZWNhdXNlIGl0IGRpZAo+ID4gPiA+ID4gPiBub3QgCj4gPiA+ID4gPiA+IHN1cnBhc3MgRFAgcGh5 c2ljYWwgYmFuZHdpZHRoIGxpbWl0YXRpb24uCj4gPiA+ID4gPiA+IERvIG1vZGVzZXQgdG8gNGtA NjBmcHMsIHNvdXJjZSBvdXRwdXQgZGlzcGxheSBkYXRhIGJ1dCBNU1QKPiA+ID4gPiA+ID4gZG9j a2luZyAKPiA+ID4gPiA+ID4gY2FuJ3Qgb3V0cHV0IEhETUkgcHJvcGVybHkgZHVlIHRvIHRoaXMg cmVzb2x1dGlvbiBhbHJlYWR5IG92ZXIKPiA+ID4gPiA+ID4gSERNSSAKPiA+ID4gPiA+ID4gMS40 IHNwZWMuCj4gPiA+ID4gPiA+IAo+ID4gPiA+ID4gPiBSZWZlciB0byBjb21taXQgPGZjZjQ2Mzgw NzU5Nj4gKCJkcm0vZHBfbXN0OiBVc2UgZnVsbF9wYm4gaW5zdGVhZAo+ID4gPiA+ID4gPiBvZiAK PiA+ID4gPiA+ID4gYXZhaWxhYmxlX3BibiBmb3IgYmFuZHdpZHRoIGNoZWNrcyIpLgo+ID4gPiA+ ID4gPiBTb3VyY2UgZHJpdmVyIHNob3VsZCByZWZlciB0byBmdWxsX3BibiB0byBldmFsdWF0ZSBz aW5rIG91dHB1dCAKPiA+ID4gPiA+ID4gY2FwYWJpbGl0eS4gQW5kIGZpbHRlciBvdXQgdGhlIHJl c29sdXRpb24gc3VycGFzcyBzaW5rIG91dHB1dCAKPiA+ID4gPiA+ID4gbGltaXRhdGlvbi4KPiA+ ID4gPiA+ID4gCj4gPiA+ID4gPiA+IENjOiBNYW5hc2kgTmF2YXJlIDxtYW5hc2kuZC5uYXZhcmVA aW50ZWwuY29tPgo+ID4gPiA+ID4gPiBDYzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGxpbnV4 LmludGVsLmNvbT4KPiA+ID4gPiA+ID4gQ2M6IFZpbGxlIFN5cmphbGEgPHZpbGxlLnN5cmphbGFA bGludXguaW50ZWwuY29tPgo+ID4gPiA+ID4gPiBDYzogQ29vcGVyIENoaW91IDxjb29wZXIuY2hp b3VAaW50ZWwuY29tPgo+ID4gPiA+ID4gPiBDYzogTHl1ZGUgUGF1bCA8bHl1ZGVAcmVkaGF0LmNv bT4KPiA+ID4gPiA+ID4gU2lnbmVkLW9mZi1ieTogTGVlIFNoYXduIEMgPHNoYXduLmMubGVlQGlu dGVsLmNvbT4KPiA+ID4gPiA+ID4gLS0tCj4gPiA+ID4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2RwX21zdC5jIHwgMjQgCj4gPiA+ID4gPiA+ICsrKysrKysrKysrKysr KysrKysrLQo+ID4gPiA+ID4gPiAgMSBmaWxlIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDEg ZGVsZXRpb24oLSkKPiA+ID4gPiA+ID4gCj4gPiA+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5jCj4gPiA+ID4gPiA+IGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcF9tc3QuYwo+ID4gPiA+ID4gPiBpbmRleCA2 MTYwNWViOGMyYWYuLjY4Njk3ZjQ2M2RhYiAxMDA2NDQKPiA+ID4gPiA+ID4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcF9tc3QuYwo+ID4gPiA+ID4gPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwX21zdC5jCj4gPiA+ID4gPiA+IEBA IC02MDksNiArNjA5LDI2IEBAIHN0YXRpYyBpbnQgaW50ZWxfZHBfbXN0X2dldF9tb2RlcyhzdHJ1 Y3QgCj4gPiA+ID4gPiA+IGRybV9jb25uZWN0b3IKPiA+ID4gPiA+ID4gKmNvbm5lY3RvcikKPiA+ ID4gPiA+ID4gIAlyZXR1cm4gaW50ZWxfZHBfbXN0X2dldF9kZGNfbW9kZXMoY29ubmVjdG9yKTsK PiA+ID4gPiA+ID4gIH0KPiA+ID4gPiA+ID4gIAo+ID4gPiA+ID4gPiArc3RhdGljIGJvb2wKPiA+ ID4gPiA+ID4gK2ludGVsX2RwX21zdF9tb2RlX2Nsb2NrX2V4Y2VlZF9wYm5fYmFuZHdpZHRoKHN0 cnVjdCBkcm1fY29ubmVjdG9yCj4gPiA+ID4gPiA+ICpjb25uZWN0b3IsIGludCBjbG9jaywgaW50 IGJwcCkKPiA+ID4gPiA+ID4gK3sKPiA+ID4gPiA+ID4gKwlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICppbnRlbF9jb25uZWN0b3IgPQo+ID4gPiA+ID4gPiB0b19pbnRlbF9jb25uZWN0b3IoY29ubmVj dG9yKTsKPiA+ID4gPiA+ID4gKwlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0gaW50ZWxfY29u bmVjdG9yLT5tc3RfcG9ydDsKPiA+ID4gPiA+ID4gKwlzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9n eV9tZ3IgKm1nciA9ICZpbnRlbF9kcC0+bXN0X21ncjsKPiA+ID4gPiA+ID4gKwlzdHJ1Y3QgZHJt X2RwX21zdF9wb3J0ICpwb3J0ID0KPiA+ID4gPiA+ID4gKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25u ZWN0b3IpKS0+cG9ydDsKPiA+ID4gPiA+ID4gKwlib29sIHJldCA9IGZhbHNlOwo+ID4gPiA+ID4g PiArCj4gPiA+ID4gPiA+ICsJaWYgKCFtZ3IpCj4gPiA+ID4gPiA+ICsJCXJldHVybiByZXQ7Cj4g PiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4gKwltdXRleF9sb2NrKCZtZ3ItPmxvY2spOwo+ID4gPiA+ ID4gCj4gPiA+ID4gPiBUaGlzIGlzbid0IHRoZSByaWdodCBsb2NrIGZvciB0aGlzIC0gbWdyLT5s b2NrIHByb3RlY3RzIHRoZSB0b3BvbG9neQo+ID4gPiA+ID4gbGF5b3V0IChlLmcuIGRybV9kcF9t c3RfcG9ydC5tc3RiLCBkcm1fZHBfbXN0X3BvcnQubmV4dCwgYW5kCj4gPiA+ID4gPiBkcm1fZHBf bXN0X2JyYW5jaC5wb3J0cykuIHBvcnQtPmZ1bGxfcGJuIGlzIHByb3RlY3RlZCB1bmRlcgo+ID4g PiA+ID4gJmRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyLmJhc2UubG9jayAobm90Cj4gPiA+ID4gPiBk cm1fZHBfbXN0X3RvcG9sb2d5X21nci5sb2NrKSwgc28KPiA+ID4gPiA+IHlvdSBuZWVkIHRvIGZp cnN0IGFkZCBhIHZlcnNpb24gb2YgLm1vZGVfdmFsaWQoKSB0byBzdHJ1Y3QKPiA+ID4gPiA+IGRy bV9jb25uZWN0b3JfaGVscGVyX2Z1bmNzIHRoYXQgYWNjZXB0cyBhIGRybV9tb2Rlc2V0X2FjcXVp cmVfY3R4IHNvCj4gPiA+ID4gPiB5b3UKPiA+ID4gPiA+IGNhbiB1c2UgdGhhdCB0byBzYWZlbHkg Z3JhYiAmZHJtX2RwX21zdF90b3BvbG9neV9tZ3IuYmFzZS5sb2NrLgo+ID4gPiA+ID4gCj4gPiA+ ID4gCj4gPiA+ID4gVGhhbmtzIGZvciBjb21tZW50cyEgSSB3aWxsIGNvcnJlY3QgdGhlIGxvY2sg dG8gcHJvdGVjdCBwb3J0LQo+ID4gPiA+ID5mdWxsX3Bibi4KPiA+ID4gPiAKPiA+ID4gPiA+ID4g KwlpZiAocG9ydC0+ZnVsbF9wYm4pCj4gPiA+ID4gPiAKPiA+ID4gPiA+IEFsc28gLSB0aGVyZSdz IG5vIHJlYXNvbiB0byBjaGVjayBpZiAocG9ydC0+ZnVsbF9wYm4pIGhlcmUsIHNvIGxvbmcKPiA+ ID4gPiA+IGFzCj4gPiA+ID4gPiB5b3UncmUgaG9sZGluZyB0aGUgcmlnaHQgbG9ja3MgdGhpcyBz aG91bGQgYWx3YXlzIGJlIHBvcHVsYXRlZCBieQo+ID4gPiA+ID4gdGhlIHRpbWUKPiA+ID4gPiA+ IHdlIGNyZWF0ZSB0aGUgZHJtX2Nvbm5lY3RvciBmb3IgdGhlIE1TVCBwb3J0IChpZiBpdCdzIG5v dCwgdGhhdCdzIGEKPiA+ID4gPiA+IGJ1Zwo+ID4gPiA+ID4gdGhhdCBuZWVkcyB0byBiZSBmaXhl ZCkuCj4gPiA+ID4gPiAKPiA+ID4gPiAKPiA+ID4gPiBKdXN0IHdhbnQgdG8gbWFrZSBzdXJlIGZ1 bGxfcGJuIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB6ZXJvLiBBcyB5b3UKPiA+ID4gPiBtZW50aW9u Cj4gPiA+ID4gaW4gYW5vdGhlciBwYXRjaCwgaXQncyBoYXJkIHRvIHByZWRpY3Qgc2luayByZXBv cnQgZnVsbCBvciBhdmFpbGFibGUKPiA+ID4gPiBQQk4KPiA+ID4gPiBwcm9wZXJseS4KPiA+ID4g Cj4gPiA+IFNvcnJ5IHRoaXMgdG9vayBtZSBhIGxpdHRsZSB3aGlsZSB0byByZXNwb25kIHRvLCBj cnVuY2ggdGltZSBjYW1lIHVwIGF0Cj4gPiA+IHdvcmsuCj4gPiA+IEFueXdheS1oYXZlIHlvdSBz ZWVuIGlzc3VlcyB3aXRoIGZ1bGxfcGJuIHJlcG9ydGluZyBvbiBodWJzPyBJJ3ZlIHNlZW4KPiA+ ID4gcGxlbnR5Cj4gPiA+IG9mIHByb2JsZW1zIHdpdGggYXZhaWxhYmxlX3BibiByZXBvcnRpbmcs IGJ1dCB0aGUgcmVhc29uIHdlIHN3aXRjaGVkCj4gPiA+IG92ZXIgdG8KPiA+ID4gZnVsbF9wYm4g aW4gdGhlIGZpcnN0IHBsYWNlIGlzIGJlY2F1c2UgdGhhdCBzZWVtZWQgdG8gYmUgdGhlIG9uZSBo dWJzCj4gPiA+IHJlcG9ydGVkCj4gPiA+IHJlbGlhYmx5LiBXZSBhY3R1YWxseSBtYWtlIHRoZSBh c3N1bXB0aW9uIGZ1bGxfcGJuIGlzIGFsd2F5cyA+IDAgaWYKPiA+ID4gc29tZXRoaW5nJ3MgY29u bmVjdGVkIGluIHNvbWUgcGxhY2VzIGluIHRoZSBNU1QgaGVscGVycywgc28gaWYgd2UndmUgZ290 Cj4gPiA+IGNhc2VzCj4gPiA+IG9mIGZ1bGxfcGJuIGx5aW5nIGFzIHdlbGwgb24gc29tZSBodWJz IHdlIG1pZ2h0IHdhbnQgdG8gZml4IHRoYXQuCj4gPiAKPiA+IFdlIGhhdmUgYXQgbGVhc3Qgb25l IGZ1bGxfcGJuPT0wIGlzc3VlIGluIGNpOgo+ID4gPDQ+WyAgICA1LjA2MTM0NV0gV0FSTklORzog Q1BVOiAwIFBJRDogMzc2IGF0Cj4gPiBkcml2ZXJzL2dwdS9kcm0vZHJtX2RwX21zdF90b3BvbG9n eS5jOjQ4ODkKPiA+IGRybV9kcF9tc3RfYXRvbWljX2NoZWNrX21zdGJfYndfbGltaXQrMHgxOTMv MHgxYzAKPiA+IAo+ID4gaHR0cHM6Ly9pbnRlbC1nZngtY2kuMDEub3JnL3RyZWUvZHJtLXRpcC9D SV9EUk1fODQ2MC9maS1rYmwtNzU2MHUvYm9vdDAudHh0Cj4gPiAKCk9oIHlpa2VzLXllYWgsIGl0 J3MgZGVmaW5pdGVseSByZXBvcnRpbmcgMCBQQk4sIHRoYXQncyBhIG5ldyBvbmUuIEFueXdheS1J J2xsCnRha2UgYSBsb29rIGF0IHRoaXMgcGF0Y2ggc29tZXRpbWUgdG9kYXkuIEknZCBsaWtlIHRv IGxvb2sgbW9yZSBpbnRvIHRoYXQgaHViCnRob3VnaCwgSSdtIGFsbW9zdCBjZXJ0YWluIHRoYXQg ZnVsbF9wYm4gPSAwIGlzIGFnYWluc3QgdGhlIE1TVCBzcGVjLCBidXQgdGhlCmh1YiBkb2VzIHNl ZW0gdG8gYmUgcmVwb3J0aW5nIHRoYXQ6Cgo8Nz5bICAgIDUuMDAyMjc5XSBbZHJtOmRybV9kcF9z ZW5kX2VudW1fcGF0aF9yZXNvdXJjZXNdIGVudW0gcGF0aCByZXNvdXJjZXMgMzoKMCAwCgpTaW5j ZSBodWJzIHdpbGwgc2V0IGZ1bGxfcGJuIGJhc2VkIG9uIHRoZSBjdXJyZW50IGRvd25zdHJlYW0g bGluayB0cmFpbmluZwpzZXR0aW5ncyBmb3IgdGhlIG1zdCBwb3J0IHRob3VnaCwgSSB3b25kZXIg aWYgbWF5YmUgdGhpcyBodWIgaXMganVzdCBmYWlsaW5nCnRvIGRvIGxpbmsgdHJhaW5pbmcgZG93 bnN0cmVhbSBvciBmYWlsaW5nIHRvIGRldGVjdCBhIGRpc3BsYXkgZG93bnN0cmVhbT8KUHJvYmFi bHkgd291bGQgYmUgdXNlZnVsIHRvIGtub3cgd2hhdCBraW5kIG9mIGEgaHViIHRoaXMgaXMsIGFu ZCB3aGF0IGtpbmQgb2YKZGlzcGxheXMgYXJlIGhvb2tlZCB1cCB0byBpdC4gQWxzbywgaGF2aW5n IGRybSBEUCBlbmFibGVkIGluIHRob3NlIGxvZ3Mgd291bGQKYmUgcXVpdGUgaGVscGZ1bCBhcyB3 ZWxsCgo+ID4gRHVubm8gaWYgdGhhdCdzIHRoZSBNU1QgZGV2aWNlIHJlcG9ydGluZyB6ZXJvIG9y IGR1ZSB0byBzb21lIG90aGVyCj4gPiBidWcsIGJ1dCBhdCBsZWFzdCBDSSBpcyBjdXJyZW50bHkg Ym9ya2VkIG9uIHRoYXQgbWFjaGluZS4KPiAKPiBUaGFua3MgZm9yIHNoYXJpbmchIEl0IHdpbGwg YmUgZ29vZCB0byBrZWVwIGNoZWNraW5nIGZ1bGxfcGJuIHRvIGF2b2lkCj4gdW5leHBlY3RlZCBp c3N1ZS4KPiBCVFcsIEkganVzdCB1cGxvYWQgcGF0Y2ggdjIuIENvdWxkIHlvdSBwbGVhc2Ugc2hh cmUgeW91ciBjb21tZW50cyBhYm91dAo+IHRoYXQ/Cj4gCj4gQmVzdCByZWdhcmRzLAo+IFNoYXdu Cj4gCi0tIApDaGVlcnMsCglMeXVkZSBQYXVsIChzaGUvaGVyKQoJQXNzb2NpYXRlIFNvZnR3YXJl IEVuZ2luZWVyIGF0IFJlZCBIYXQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=