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=-11.6 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS 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 9DA1FC10F25 for ; Tue, 10 Mar 2020 00:19:14 +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 6B4A724649 for ; Tue, 10 Mar 2020 00:19:14 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=google.com header.i=@google.com header.b="jYkXsyTo" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6B4A724649 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.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 EE9156E5BE; Tue, 10 Mar 2020 00:19:13 +0000 (UTC) Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4D7286E5BE for ; Tue, 10 Mar 2020 00:19:12 +0000 (UTC) Received: by mail-lf1-x143.google.com with SMTP id j15so9356251lfk.6 for ; Mon, 09 Mar 2020 17:19:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=rVfuufYR5ZjD8N921scghWy2a5E/d3WC1eICtD+kCSo=; b=jYkXsyTol7/Te5zaFnIIT9MH3c5/vTL9e6P+d71kAHbmC7u/IWgydvOm0ljJ4bzuta 1cv9q6SMbdJHsm4HvAb9wLjVbzWDX/pcusOpawpECXMgZDo6KVKQUjZN67TLynjYJ7v/ HseGG8s8RFv4d+byNUuhsjgYaB5rTd8fmFI0LwQaBplBzX29/obTULn3KML7HazVyn4d 9OObCBi4ZvgOZHiCAUdlVuaxV9VOr3OaExhu5YH5dygBGPa2lU9G/BL6zs8ESdKEBtAH ghc6igKd8lBaGSDHUpc3BUPPOSF8MGpMKRrHCBaTdyghypLxLEKMRP4uzQgWUKlc89Y3 v5ag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=rVfuufYR5ZjD8N921scghWy2a5E/d3WC1eICtD+kCSo=; b=SPa4i0nKTWgIVwFn1tbRDRE0LPf1KXnrf9LdYWa51/S/O5W7tDW+4uI4PSgYum86N0 V39jQ9WOTWyrkdoLPQd5kjKgBffXa8wSNZU7TuBDeWo7WFH3CSxEoD0jDHDPYMCR2geH ikFyxRac2k3WYU9iI1OuE5KCH2oX6XfMa2XATeydHou/wkUjvS3JmFPTYe4l0yJpLo0u gR1Sfy1Kf2Purt3u9vcvZvLDoRquFFXU4rO/sQ9yCftjpO0L2Ma30yrCIEtWznprzk1J FKp3JyQ1om50gx6RtgZZhn99uHMIJHZ/2C5U9Oe+kItYMqUljHH9nytUcmYz2nR7zWqP H9kw== X-Gm-Message-State: ANhLgQ3fSp+1SOTU7ED7jo8n16whEBfwk5VBYypkcxtR6KtkVKM0c4at C38eYD4xPy+nS9ADqo4FAXVTC4MYuiS03XXxVlih8w== X-Google-Smtp-Source: ADFU+vsIUYcochFoo+re+fV3CkUvmh5JVBkSEUz7CR0na3eOVhN96RdKOQNAxN0HLOPmoQLirUehLRtvJRZE/1vW4XM= X-Received: by 2002:a19:a415:: with SMTP id q21mr8517319lfc.21.1583799550232; Mon, 09 Mar 2020 17:19:10 -0700 (PDT) MIME-Version: 1.0 References: <20200310000617.20662-1-rajatja@google.com> <20200310000617.20662-5-rajatja@google.com> In-Reply-To: <20200310000617.20662-5-rajatja@google.com> From: Rajat Jain Date: Mon, 9 Mar 2020 17:18:32 -0700 Message-ID: To: Maarten Lankhorst , Maxime Ripard , Sean Paul , David Airlie , Daniel Vetter , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= , Chris Wilson , Imre Deak , =?UTF-8?Q?Jos=C3=A9_Roberto_de_Souza?= , Linux Kernel Mailing List , dri-devel , intel-gfx@lists.freedesktop.org, Greg Kroah-Hartman , Mat King , Daniel Thompson , Jonathan Corbet , Pavel Machek , Sean Paul , Duncan Laurie , Jesse Barnes , Thierry Reding , Mark Pearson , Nitin Joshi1 , Sugumaran Lacshiminarayanan , Tomoki Maruichi Subject: Re: [Intel-gfx] [PATCH v7 4/4] drm/i915: Add support for integrated privacy screen 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: Rajat Jain Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" SGkgSmFuaSwKCkkgaGF2ZSAxIHF1ZXN0aW9uIC8gbmVlZCAxIGhlbHAgYWJvdXQgdGhpcyBwYXRj aDoKCk9uIE1vbiwgTWFyIDksIDIwMjAgYXQgNTowNiBQTSBSYWphdCBKYWluIDxyYWphdGphQGdv b2dsZS5jb20+IHdyb3RlOgo+Cj4gQWRkIHN1cHBvcnQgZm9yIGFuIEFDUEkgYmFzZWQgaW50ZWdy YXRlZCBwcml2YWN5IHNjcmVlbiB0aGF0IGlzCj4gYXZhaWxhYmxlIG9uIHNvbWUgc3lzdGVtcy4K Pgo+IFNpZ25lZC1vZmYtYnk6IFJhamF0IEphaW4gPHJhamF0amFAZ29vZ2xlLmNvbT4KPiAtLS0K PiB2NzogKiBNb3ZlIHRoZSBwcml2YWN5LXNjcmVlbiBwcm9wZXJ0eSBiYWNrIGludG8gZHJtIGNv cmUuCj4gICAgICogRG8gdGhlIGFjdHVhbCBIVyBFUFMgdG9nZ2xpbmcgYXQgY29tbWl0IHRpbWUu Cj4gICAgICogUHJvdmlkZSBhIHNhbXBsZSBBQ1BJIG5vZGUgZm9yIHJlZmVyZW5jZSBpbiBjb21t ZW50cy4KPiB2NjogQWx3YXlzIGluaXRpYWxpemUgcHJvcCBpbiBpbnRlbF9hdHRhY2hfcHJpdmFj eV9zY3JlZW5fcHJvcGVydHkoKQo+IHY1OiBmaXggYSBjb3NtZXRpYyBjaGVja3BhdGNoIHdhcm5p bmcKPiB2NDogRml4IGEgdHlwbyBpbiBpbnRlbF9wcml2YWN5X3NjcmVlbi5oCj4gdjM6ICogQ2hh bmdlIGxpY2Vuc2UgdG8gR1BMLTIuMCBPUiBNSVQKPiAgICAgKiBNb3ZlIHByaXZhY3kgc2NyZWVu IGVudW0gZnJvbSBVQVBJIHRvIGludGVsX2Rpc3BsYXlfdHlwZXMuaAo+ICAgICAqIFJlbmFtZSBw YXJhbWV0ZXIgbmFtZSBhbmQgc29tZSBvdGhlciBtaW5vciBjaGFuZ2VzLgo+IHYyOiBGb3JtZWQg Ynkgc3BsaXR0aW5nIHRoZSBvcmlnaW5hbCBwYXRjaCBpbnRvIG11bHRpcGxlIHBhdGNoZXMuCj4g ICAgIC0gQWxsIGNvZGUgaGFzIGJlZW4gbW92ZWQgaW50byBpOTE1IG5vdy4KPiAgICAgLSBQcml2 YWN5IHNjcmVlbiBpcyBhIGk5MTUgcHJvcGVydHkKPiAgICAgLSBIYXZlIGEgbG9jYWwgc3RhdGUg dmFyaWFibGUgdG8gc3RvcmUgdGhlIHBydmFjeSBzY3JlZW4uIERvbid0IHJlYWQKPiAgICAgICBp dCBmcm9tIGhhcmR3YXJlLgo+Cj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlICAgICAg ICAgICAgICAgICB8ICAgMyArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2F0b21pYy5jICAgfCAgIDEgKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2RwLmMgICAgICAgfCAgMzAgKystCj4gIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3ByaXZh Y3lfc2NyZWVuLmMgICB8IDE3NSArKysrKysrKysrKysrKysrKysKPiAgLi4uL2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfcHJpdmFjeV9zY3JlZW4uaCAgIHwgIDI3ICsrKwo+ICA1IGZpbGVzIGNoYW5n ZWQsIDIzNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+ICBjcmVhdGUgbW9kZSAxMDA2 NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wcml2YWN5X3NjcmVlbi5jCj4g IGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3By aXZhY3lfc2NyZWVuLmgKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtl ZmlsZSBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlCj4gaW5kZXggOWY4ODdhODZlNTU1 ZC4uZGE0MjM4OTEwN2Y5YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtl ZmlsZQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlCj4gQEAgLTIwOSw3ICsy MDksOCBAQCBpOTE1LXkgKz0gXAo+ICAgICAgICAgZGlzcGxheS9pbnRlbF92Z2Eubwo+ICBpOTE1 LSQoQ09ORklHX0FDUEkpICs9IFwKPiAgICAgICAgIGRpc3BsYXkvaW50ZWxfYWNwaS5vIFwKPiAt ICAgICAgIGRpc3BsYXkvaW50ZWxfb3ByZWdpb24ubwo+ICsgICAgICAgZGlzcGxheS9pbnRlbF9v cHJlZ2lvbi5vIFwKPiArICAgICAgIGRpc3BsYXkvaW50ZWxfcHJpdmFjeV9zY3JlZW4ubwo+ICBp OTE1LSQoQ09ORklHX0RSTV9GQkRFVl9FTVVMQVRJT04pICs9IFwKPiAgICAgICAgIGRpc3BsYXkv aW50ZWxfZmJkZXYubwo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfYXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0 b21pYy5jCj4gaW5kZXggZDA0MzA1N2QyZmEwMy4uZmM2MjY0YjRhN2Y3MyAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21pYy5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuYwo+IEBAIC0xNTAsNiArMTUw LDcgQEAgaW50IGludGVsX2RpZ2l0YWxfY29ubmVjdG9yX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubiwKPiAgICAgICAgICAgICBuZXdfY29ubl9zdGF0ZS0+YmFzZS5waWN0 dXJlX2FzcGVjdF9yYXRpbyAhPSBvbGRfY29ubl9zdGF0ZS0+YmFzZS5waWN0dXJlX2FzcGVjdF9y YXRpbyB8fAo+ICAgICAgICAgICAgIG5ld19jb25uX3N0YXRlLT5iYXNlLmNvbnRlbnRfdHlwZSAh PSBvbGRfY29ubl9zdGF0ZS0+YmFzZS5jb250ZW50X3R5cGUgfHwKPiAgICAgICAgICAgICBuZXdf Y29ubl9zdGF0ZS0+YmFzZS5zY2FsaW5nX21vZGUgIT0gb2xkX2Nvbm5fc3RhdGUtPmJhc2Uuc2Nh bGluZ19tb2RlIHx8Cj4gKyAgICAgICAgICAgbmV3X2Nvbm5fc3RhdGUtPmJhc2UucHJpdmFjeV9z Y3JlZW5fc3RhdHVzICE9IG9sZF9jb25uX3N0YXRlLT5iYXNlLnByaXZhY3lfc2NyZWVuX3N0YXR1 cyB8fAo+ICAgICAgICAgICAgICFibG9iX2VxdWFsKG5ld19jb25uX3N0YXRlLT5iYXNlLmhkcl9v dXRwdXRfbWV0YWRhdGEsCj4gICAgICAgICAgICAgICAgICAgICAgICAgb2xkX2Nvbm5fc3RhdGUt PmJhc2UuaGRyX291dHB1dF9tZXRhZGF0YSkpCj4gICAgICAgICAgICAgICAgIGNydGNfc3RhdGUt Pm1vZGVfY2hhbmdlZCA9IHRydWU7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZHAuYwo+IGluZGV4IDQxYzYyM2IwMjk0NjQuLmEzOWIwYzQyMGI1MGEgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCj4gQEAgLTYyLDYgKzYyLDcgQEAKPiAgI2lu Y2x1ZGUgImludGVsX2xzcGNvbi5oIgo+ICAjaW5jbHVkZSAiaW50ZWxfbHZkcy5oIgo+ICAjaW5j bHVkZSAiaW50ZWxfcGFuZWwuaCIKPiArI2luY2x1ZGUgImludGVsX3ByaXZhY3lfc2NyZWVuLmgi Cj4gICNpbmNsdWRlICJpbnRlbF9wc3IuaCIKPiAgI2luY2x1ZGUgImludGVsX3NpZGViYW5kLmgi Cj4gICNpbmNsdWRlICJpbnRlbF90Yy5oIgo+IEBAIC01ODg2LDYgKzU4ODcsMTIgQEAgaW50ZWxf ZHBfY29ubmVjdG9yX3JlZ2lzdGVyKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4g ICAgICAgICAgICAgICAgIGRldl9wcml2LT5hY3BpX3NjYW5fZG9uZSA9IHRydWU7Cj4gICAgICAg ICB9Cj4KPiArICAgICAgIC8qIENoZWNrIGZvciBpbnRlZ3JhdGVkIFByaXZhY3kgc2NyZWVuIHN1 cHBvcnQgKi8KPiArICAgICAgIGlmIChpbnRlbF9wcml2YWN5X3NjcmVlbl9wcmVzZW50KHRvX2lu dGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKSkKPiArICAgICAgICAgICAgICAgZHJtX2Nvbm5lY3Rv cl9hdHRhY2hfcHJpdmFjeV9zY3JlZW5fcHJvcGVydHkoY29ubmVjdG9yKTsKPiArICAgICAgIGVs c2UKPiArICAgICAgICAgICAgICAgZHJtX2Nvbm5lY3Rvcl9kZXN0cm95X3ByaXZhY3lfc2NyZWVu X3Byb3BlcnR5KGNvbm5lY3Rvcik7Cj4gKwo+ICAgICAgICAgRFJNX0RFQlVHX0tNUygicmVnaXN0 ZXJpbmcgJXMgYnVzIGZvciAlc1xuIiwKPiAgICAgICAgICAgICAgICAgICAgICAgaW50ZWxfZHAt PmF1eC5uYW1lLCBjb25uZWN0b3ItPmtkZXYtPmtvYmoubmFtZSk7Cj4KPiBAQCAtNjg4MSw5ICs2 ODg4LDMwIEBAIGludGVsX2RwX2FkZF9wcm9wZXJ0aWVzKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxf ZHAsIHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0Cj4gICAgICAgICAgICAgICAgIGRybV9j b25uZWN0b3JfYXR0YWNoX3NjYWxpbmdfbW9kZV9wcm9wZXJ0eShjb25uZWN0b3IsIGFsbG93ZWRf c2NhbGVycyk7Cj4KPiAgICAgICAgICAgICAgICAgY29ubmVjdG9yLT5zdGF0ZS0+c2NhbGluZ19t b2RlID0gRFJNX01PREVfU0NBTEVfQVNQRUNUOwo+ICsKPiArICAgICAgICAgICAgICAgZHJtX2Nv bm5lY3Rvcl9jcmVhdGVfcHJpdmFjeV9zY3JlZW5fcHJvcGVydHkoY29ubmVjdG9yKTsKPiAgICAg ICAgIH0KPiAgfQo+Cj4gK3N0YXRpYyB2b2lkIGludGVsX2RwX3VwZGF0ZV9wcml2YWN5X3NjcmVl bihzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3Jf c3RhdGUgKmNvbm5fc3RhdGUpCj4gK3sKPiArICAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IgPSBjb25uX3N0YXRlLT5jb25uZWN0b3I7Cj4gKwo+ICsgICAgICAgaWYgKGNvbm5l Y3Rvci0+cHJpdmFjeV9zY3JlZW5fcHJvcGVydHkpCj4gKyAgICAgICAgICAgICAgIGludGVsX3By aXZhY3lfc2NyZWVuX3NldF92YWwodG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvciksCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29ubl9zdGF0ZS0+cHJp dmFjeV9zY3JlZW5fc3RhdHVzKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgaW50ZWxfZHBfdXBk YXRlX3BpcGUoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3Rh dGUsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGRybV9j b25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpCj4gK3sKPiArICAgICAgIGludGVsX2RwX3VwZGF0 ZV9wcml2YWN5X3NjcmVlbihlbmNvZGVyLCBjcnRjX3N0YXRlLCBjb25uX3N0YXRlKTsKPiArICAg ICAgIGludGVsX3BhbmVsX3VwZGF0ZV9iYWNrbGlnaHQoZW5jb2RlciwgY3J0Y19zdGF0ZSwgY29u bl9zdGF0ZSk7Cj4gK30KPiArCj4gIHN0YXRpYyB2b2lkIGludGVsX2RwX2luaXRfcGFuZWxfcG93 ZXJfdGltZXN0YW1wcyhzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICB7Cj4gICAgICAgICBp bnRlbF9kcC0+cGFuZWxfcG93ZXJfb2ZmX3RpbWUgPSBrdGltZV9nZXRfYm9vdHRpbWUoKTsKPiBA QCAtNzgyNSw3ICs3ODUzLDcgQEAgYm9vbCBpbnRlbF9kcF9pbml0KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwKPiAgICAgICAgIGludGVsX2VuY29kZXItPmNvbXB1dGVfY29uZmln ID0gaW50ZWxfZHBfY29tcHV0ZV9jb25maWc7Cj4gICAgICAgICBpbnRlbF9lbmNvZGVyLT5nZXRf aHdfc3RhdGUgPSBpbnRlbF9kcF9nZXRfaHdfc3RhdGU7Cj4gICAgICAgICBpbnRlbF9lbmNvZGVy LT5nZXRfY29uZmlnID0gaW50ZWxfZHBfZ2V0X2NvbmZpZzsKPiAtICAgICAgIGludGVsX2VuY29k ZXItPnVwZGF0ZV9waXBlID0gaW50ZWxfcGFuZWxfdXBkYXRlX2JhY2tsaWdodDsKPiArICAgICAg IGludGVsX2VuY29kZXItPnVwZGF0ZV9waXBlID0gaW50ZWxfZHBfdXBkYXRlX3BpcGU7CgpGb3Ig bXkgdGVzdGluZyBwdXJwb3NlcywgSSdtIHRlc3RpbmcgdGhpcyB1c2luZyB0aGUgcHJvcHRlc3Qg dXNlcnNwYWNlIHV0aWxpdHkKaW4gb3VyIGRpc3RyaWJ1dGlvbiAoSSB0aGluayBmcm9tCmh0dHBz Oi8vZ2l0aHViLmNvbS9DUEZML2RybS9ibG9iL21hc3Rlci90ZXN0cy9wcm9wdGVzdC9wcm9wdGVz dC5jKS4gSQpub3RpY2UgdGhhdCB3aGVuIEkgY2hhbmdlIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVy dHkgZnJvbSB1c2Vyc3BhY2UsCmV2ZW4gdGhvdWdoIHRoZSBkcm1fY29ubmVjdG9yX3N0YXRlLT5w cml2YWN5X3NjcmVlbl9zdGF0dXMgZ2V0cwp1cGRhdGVkIGFuZCByZWZsZWN0cyB0aGUgY2hhbmdl LCB0aGUgZW5jb2Rlci0+dXBkYXRlX3BpcGUoKSBpcyBub3QKZ2V0dGluZyBjYWxsZWQuIEp1c3Qg d2FudGVkIHRvIGFzayBpZiB0aGlzIGlzIGV4cGVjdGVkIHNpbmNlIHlvdSBzZWVtCnRvIGhhdmUg aW1wbGllZCB0aGF0IHRoaXMgdXBkYXRlX3BpcGUoKSBtaWdodCAqbm90KiBnZXQgY2FsbGVkIGlm IHRoZXJlICppcyogYQpmdWxsIG1vZGVzZXQ/IChXaGF0IGlzIHRoZSBob29rIHRoYXQgZ2V0cyBj YWxsZWQgZm9yIGEgZnVsbCBtb2Rlc2V0CndoZXJlIGk5MTUgZHJpdmVyIHNob3VsZCBjb21taXQg dGhpcyBwcm9wZXJ0eSBjaGFuZ2UgdG8gdGhlIGhhcmR3YXJlPykKClRoYW5rcyBhIGxvdCBmb3Ig YWxsIHlvdXIgaGVscCwKCkJlc3QgUmVnYXJkcywKClJhamF0Cgo+ICAgICAgICAgaW50ZWxfZW5j b2Rlci0+c3VzcGVuZCA9IGludGVsX2RwX2VuY29kZXJfc3VzcGVuZDsKPiAgICAgICAgIGlmIChJ U19DSEVSUllWSUVXKGRldl9wcml2KSkgewo+ICAgICAgICAgICAgICAgICBpbnRlbF9lbmNvZGVy LT5wcmVfcGxsX2VuYWJsZSA9IGNodl9kcF9wcmVfcGxsX2VuYWJsZTsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wcml2YWN5X3NjcmVlbi5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wcml2YWN5X3NjcmVlbi5jCj4gbmV3IGZp bGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAwMDAwLi42ZmY2MWRkZjRjMGE0Cj4gLS0t IC9kZXYvbnVsbAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHJp dmFjeV9zY3JlZW4uYwo+IEBAIC0wLDAgKzEsMTc1IEBACj4gKy8vIFNQRFgtTGljZW5zZS1JZGVu dGlmaWVyOiBHUEwtMi4wIE9SIE1JVAo+ICsvKgo+ICsgKiBJbnRlbCBBQ1BJIHByaXZhY3kgc2Ny ZWVuIGNvZGUKPiArICoKPiArICogQ29weXJpZ2h0IMKpIDIwMjAgR29vZ2xlIEluYy4KPiArICoK PiArICogVGhpcyBjb2RlIGNhbiBoZWxwIGRldGVjdCBhbmQgY29udHJvbCBhbiBpbnRlZ3JhdGVk IEVQUyAoZWxlY3Ryb25pYwo+ICsgKiBwcml2YWN5IHNjcmVlbikgdmlhIEFDUEkgZnVuY3Rpb25z LiBJdCBleHBlY3RzIGFuIEFDUEkgbm9kZSBmb3IgdGhlCj4gKyAqIGRybSBjb25uZWN0b3IgZGV2 aWNlIHdpdGggdGhlIGZvbGxvd2luZyBlbGVtZW50czoKPiArICoKPiArICogVVVJRCBzaG91bGQg YmUgImM3MDMzMTEzLTg3MjAtNGNlYi05MDkwLTlkNTJiM2U1MmQ3MyIKPiArICoKPiArICogX0FE UiA9IEFDUEkgYWRkcmVzcyBwZXIgU3BlYyAoYWxzbyBzZWUgaW50ZWxfYWNwaV9kZXZpY2VfaWRf dXBkYXRlKCkpCj4gKyAqIGh0dHBzOi8vdWVmaS5vcmcvc2l0ZXMvZGVmYXVsdC9maWxlcy9yZXNv dXJjZXMvQUNQSV82XzNfZmluYWxfSmFuMzAucGRmCj4gKyAqIFBhZ2VzIDExMTkgLSAxMTIzLgo+ ICsgKgo+ICsgKiBfRFNNIG1ldGhvZCB0aGF0IHdpbGwgcGVyZm9ybSB0aGUgZm9sbG93aW5nIGZ1 bmN0aW9ucyBhY2NvcmRpbmcgdG8KPiArICogTG9jYWwxIGFyZ3VtZW50IHBhc3NlZCB0byBpdDoK PiArICogIC0gTG9jYWwxID0gMCAoRVBTIGNhcGFiaWxpdGllcyk6IFJlcG9ydCBFUFMgcHJlc2Vu Y2UgYW5kIGNhcGFiaWxpdGllcy4KPiArICogIC0gTG9jYWwxID0gMSAoRVBTIFN0YXRlKSAgOiAg X0RTTSByZXR1cm5zIDEgaWYgRVBTIGlzIGVuYWJsZWQsIDAgb3RoZXJ3aXNlLgo+ICsgKiAgLSBM b2NhbDEgPSAyIChFUFMgRW5hYmxlKSA6ICBfRFNNIGVuYWJsZXMgRVBTCj4gKyAqICAtIExvY2Fs MSA9IDMgKEVQUyBEaXNhYmxlKTogIF9EU00gZGlzYWJsZXMgRVBTCj4gKyAqCj4gKyAqIEhlcmUg aXMgYSBzYW1wbGUgQUNQSSBub2RlOgo+ICsgKgo+ICsgKiAgU2NvcGUgKFxfU0IuUENJMC5HRlgw KSAvLyBJbnRlbCBncmFwaGljcyBkZXZpY2UgKFBDSSBkZXZpY2UpCj4gKyAqICB7Cj4gKyAqICAg ICAgTWV0aG9kIChfRE9ELCAwLCBOb3RTZXJpYWxpemVkKSAgLy8gX0RPRDogRGlzcGxheSBPdXRw dXQgRGV2aWNlcwo+ICsgKiAgICAgIHsKPiArICogICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgw eDAxKQo+ICsgKiAgICAgICAgICB7Cj4gKyAqICAgICAgICAgICAgICAweDgwMDEwNDAwCj4gKyAq ICAgICAgICAgIH0pCj4gKyAqICAgICAgfQo+ICsgKgo+ICsgKiAgICAgIERldmljZSAoTENEKQo+ ICsgKiAgICAgIHsKPiArICogICAgICAgICAgTmFtZSAoX0FEUiwgMHg4MDAxMDQwMCkgIC8vIF9B RFI6IEFkZHJlc3MKPiArICogICAgICAgICAgTmFtZSAoX1NUQSwgMHgwRikgIC8vIF9TVEE6IFN0 YXR1cwo+ICsgKgo+ICsgKiAgICAgICAgICBNZXRob2QgKEVQU1AsIDAsIE5vdFNlcmlhbGl6ZWQp IC8vIEVQUyBQcmVzZW50Cj4gKyAqICAgICAgICAgIHsKPiArICogICAgICAgICAgICAgIFJldHVy biAoMHgwMSkKPiArICogICAgICAgICAgfQo+ICsgKgo+ICsgKiAgICAgICAgICBNZXRob2QgKEVQ U1MsIDAsIE5vdFNlcmlhbGl6ZWQpIC8vIEVQUyBTdGF0ZQo+ICsgKiAgICAgICAgICB7Cj4gKyAq ICAgICAgICAgICAgICBMb2NhbDAgPSBcX1NCLlBDSTAuR1JYUyAoMHhDRCkKPiArICogICAgICAg ICAgICAgIFJldHVybiAoTG9jYWwwKQo+ICsgKiAgICAgICAgICB9Cj4gKyAqCj4gKyAqICAgICAg ICAgIE1ldGhvZCAoRVBTRSwgMCwgTm90U2VyaWFsaXplZCkgLy8gRVBTIEVuYWJsZQo+ICsgKiAg ICAgICAgICB7Cj4gKyAqICAgICAgICAgICAgICBcX1NCLlBDSTAuU1RYUyAoMHhDRCkKPiArICog ICAgICAgICAgfQo+ICsgKgo+ICsgKiAgICAgICAgICBNZXRob2QgKEVQU0QsIDAsIE5vdFNlcmlh bGl6ZWQpIC8vIEVQUyBEaXNhYmxlCj4gKyAqICAgICAgICAgIHsKPiArICogICAgICAgICAgICAg IFxfU0IuUENJMC5DVFhTICgweENEKQo+ICsgKiAgICAgICAgICB9Cj4gKyAqCj4gKyAqICAgICAg ICAgIE1ldGhvZCAoX0RTTSwgNCwgU2VyaWFsaXplZCkgIC8vIF9EU006IERldmljZS1TcGVjaWZp YyBNZXRob2QKPiArICogICAgICAgICAgewo+ICsgKiAgICAgICAgICAgICAgVG9CdWZmZXIgKEFy ZzAsIExvY2FsMCkKPiArICogICAgICAgICAgICAgIElmICgoTG9jYWwwID09IFRvVVVJRCAoImM3 MDMzMTEzLTg3MjAtNGNlYi05MDkwLTlkNTJiM2U1MmQ3MyIpKSkKPiArICogICAgICAgICAgICAg IHsKPiArICogICAgICAgICAgICAgICAgICBUb0ludGVnZXIgKEFyZzIsIExvY2FsMSkKPiArICog ICAgICAgICAgICAgICAgICBJZiAoKExvY2FsMSA9PSBaZXJvKSkKPiArICogICAgICAgICAgICAg ICAgICB7Cj4gKyAqICAgICAgICAgICAgICAgICAgICAgIExvY2FsMiA9IEVQU1AgKCkKPiArICog ICAgICAgICAgICAgICAgICAgICAgSWYgKChMb2NhbDIgPT0gT25lKSkKPiArICogICAgICAgICAg ICAgICAgICAgICAgewo+ICsgKiAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCdWZm ZXIgKE9uZSkKPiArICogICAgICAgICAgICAgICAgICAgICAgICAgIHsKPiArICogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMHgwRgo+ICsgKiAgICAgICAgICAgICAgICAgICAgICAgICAg fSkKPiArICogICAgICAgICAgICAgICAgICAgICAgfQo+ICsgKiAgICAgICAgICAgICAgICAgIH0K PiArICoKPiArICogICAgICAgICAgICAgICAgICBJZiAoKExvY2FsMSA9PSBPbmUpKQo+ICsgKiAg ICAgICAgICAgICAgICAgIHsKPiArICogICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChFUFNT ICgpKQo+ICsgKiAgICAgICAgICAgICAgICAgIH0KPiArICoKPiArICogICAgICAgICAgICAgICAg ICBJZiAoKExvY2FsMSA9PSAweDAyKSkKPiArICogICAgICAgICAgICAgICAgICB7Cj4gKyAqICAg ICAgICAgICAgICAgICAgICAgIEVQU0UgKCkKPiArICogICAgICAgICAgICAgICAgICB9Cj4gKyAq Cj4gKyAqICAgICAgICAgICAgICAgICAgSWYgKChMb2NhbDEgPT0gMHgwMykpCj4gKyAqICAgICAg ICAgICAgICAgICAgewo+ICsgKiAgICAgICAgICAgICAgICAgICAgICBFUFNEICgpCj4gKyAqICAg ICAgICAgICAgICAgICAgfQo+ICsgKgo+ICsgKiAgICAgICAgICAgICAgICAgIFJldHVybiAoQnVm ZmVyIChPbmUpCj4gKyAqICAgICAgICAgICAgICAgICAgewo+ICsgKiAgICAgICAgICAgICAgICAg ICAgICAgMHgwMAo+ICsgKiAgICAgICAgICAgICAgICAgIH0pCj4gKyAqICAgICAgICAgICAgICB9 Cj4gKyAqCj4gKyAqICAgICAgICAgICAgICBSZXR1cm4gKEJ1ZmZlciAoT25lKQo+ICsgKiAgICAg ICAgICAgICAgewo+ICsgKiAgICAgICAgICAgICAgICAgICAweDAwCj4gKyAqICAgICAgICAgICAg ICB9KQo+ICsgKiAgICAgICAgICB9Cj4gKyAqICAgICAgfQo+ICsgKiAgfQo+ICsgKi8KPiArCj4g KyNpbmNsdWRlIDxsaW51eC9hY3BpLmg+Cj4gKwo+ICsjaW5jbHVkZSAiaW50ZWxfcHJpdmFjeV9z Y3JlZW4uaCIKPiArCj4gKyNkZWZpbmUgQ09OTkVDVE9SX0RTTV9SRVZJRCAxCj4gKwo+ICsjZGVm aW5lIENPTk5FQ1RPUl9EU01fRk5fUFJJVkFDWV9FTkFCTEUgICAgICAgICAgICAgICAgMgo+ICsj ZGVmaW5lIENPTk5FQ1RPUl9EU01fRk5fUFJJVkFDWV9ESVNBQkxFICAgICAgIDMKPiArCj4gK3N0 YXRpYyBjb25zdCBndWlkX3QgZHJtX2Nvbm5fZHNtX2d1aWQgPQo+ICsgICAgICAgR1VJRF9JTklU KDB4QzcwMzMxMTMsIDB4ODcyMCwgMHg0Q0VCLAo+ICsgICAgICAgICAgICAgICAgIDB4OTAsIDB4 OTAsIDB4OUQsIDB4NTIsIDB4QjMsIDB4RTUsIDB4MkQsIDB4NzMpOwo+ICsKPiArLyogTWFrZXMg X0RTTSBjYWxsIHRvIHNldCBwcml2YWN5IHNjcmVlbiBzdGF0dXMgKi8KPiArc3RhdGljIHZvaWQg YWNwaV9wcml2YWN5X3NjcmVlbl9jYWxsX2RzbShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25u ZWN0b3IsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1NjQgZnVu YykKPiArewo+ICsgICAgICAgdW5pb24gYWNwaV9vYmplY3QgKm9iajsKPiArICAgICAgIGFjcGlf aGFuZGxlIGFjcGlfaGFuZGxlID0gY29ubmVjdG9yLT5hY3BpX2hhbmRsZTsKPiArCj4gKyAgICAg ICBpZiAoIWFjcGlfaGFuZGxlKQo+ICsgICAgICAgICAgICAgICByZXR1cm47Cj4gKwo+ICsgICAg ICAgb2JqID0gYWNwaV9ldmFsdWF0ZV9kc20oYWNwaV9oYW5kbGUsICZkcm1fY29ubl9kc21fZ3Vp ZCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENPTk5FQ1RPUl9EU01fUkVWSUQs IGZ1bmMsIE5VTEwpOwo+ICsgICAgICAgaWYgKCFvYmopIHsKPiArICAgICAgICAgICAgICAgZHJt X2Vycihjb25uZWN0b3ItPmJhc2UuZGV2LAo+ICsgICAgICAgICAgICAgICAgICAgICAgICJmYWls ZWQgdG8gZXZhbHVhdGUgX0RTTSBmb3IgZm4gJWxseFxuIiwgZnVuYyk7Cj4gKyAgICAgICAgICAg ICAgIHJldHVybjsKPiArICAgICAgIH0KPiArCj4gKyAgICAgICBBQ1BJX0ZSRUUob2JqKTsKPiAr fQo+ICsKPiArdm9pZCBpbnRlbF9wcml2YWN5X3NjcmVlbl9zZXRfdmFsKHN0cnVjdCBpbnRlbF9j b25uZWN0b3IgKmNvbm5lY3RvciwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZW51bSBkcm1fcHJpdmFjeV9zY3JlZW5fc3RhdHVzIHZhbCkKPiArewo+ICsgICAgICAgaWYgKHZh bCA9PSBQUklWQUNZX1NDUkVFTl9ESVNBQkxFRCkKPiArICAgICAgICAgICAgICAgYWNwaV9wcml2 YWN5X3NjcmVlbl9jYWxsX2RzbShjb25uZWN0b3IsCj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgQ09OTkVDVE9SX0RTTV9GTl9QUklWQUNZX0RJU0FCTEUpOwo+ ICsgICAgICAgZWxzZSBpZiAodmFsID09IFBSSVZBQ1lfU0NSRUVOX0VOQUJMRUQpCj4gKyAgICAg ICAgICAgICAgIGFjcGlfcHJpdmFjeV9zY3JlZW5fY2FsbF9kc20oY29ubmVjdG9yLAo+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENPTk5FQ1RPUl9EU01fRk5f UFJJVkFDWV9FTkFCTEUpOwo+ICsgICAgICAgZWxzZQo+ICsgICAgICAgICAgICAgICBkcm1fZXJy KGNvbm5lY3Rvci0+YmFzZS5kZXYsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBz ZXQgcHJpdmFjeSBzY3JlZW4gdG8gaW52YWxpZCB2YWwgJXVcbiIsIHZhbCk7Cj4gK30KPiArCj4g K2Jvb2wgaW50ZWxfcHJpdmFjeV9zY3JlZW5fcHJlc2VudChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICpjb25uZWN0b3IpCj4gK3sKPiArICAgICAgIGFjcGlfaGFuZGxlIGhhbmRsZSA9IGNvbm5lY3Rv ci0+YWNwaV9oYW5kbGU7Cj4gKwo+ICsgICAgICAgaWYgKCFoYW5kbGUpCj4gKyAgICAgICAgICAg ICAgIHJldHVybiBmYWxzZTsKPiArCj4gKyAgICAgICBpZiAoIWFjcGlfY2hlY2tfZHNtKGhhbmRs ZSwgJmRybV9jb25uX2RzbV9ndWlkLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICBDT05O RUNUT1JfRFNNX1JFVklELAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAxIDw8IENPTk5F Q1RPUl9EU01fRk5fUFJJVkFDWV9FTkFCTEUgfAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAxIDw8IENPTk5FQ1RPUl9EU01fRk5fUFJJVkFDWV9ESVNBQkxFKSkgewo+ICsgICAgICAgICAg ICAgICBkcm1fZGJnX2ttcyhjb25uZWN0b3ItPmJhc2UuZGV2LAo+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAiQUNQSSBub2RlIGJ1dCBubyBwcml2YWN5IHNjcm5cbiIpOwo+ICsgICAgICAg ICAgICAgICByZXR1cm4gZmFsc2U7Cj4gKyAgICAgICB9Cj4gKyAgICAgICBkcm1faW5mbyhjb25u ZWN0b3ItPmJhc2UuZGV2LCAic3VwcG9ydHMgcHJpdmFjeSBzY3JlZW5cbiIpOwo+ICsgICAgICAg cmV0dXJuIHRydWU7Cj4gK30KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlz cGxheS9pbnRlbF9wcml2YWN5X3NjcmVlbi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9wcml2YWN5X3NjcmVlbi5oCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAw MDAwMDAwMDAwMDAwLi5mOGQyZTI0NmVhMGJkCj4gLS0tIC9kZXYvbnVsbAo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHJpdmFjeV9zY3JlZW4uaAo+IEBAIC0wLDAg KzEsMjcgQEAKPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAgT1IgTUlUICov Cj4gKy8qCj4gKyAqIENvcHlyaWdodCDCqSAyMDE5IEdvb2dsZSBJbmMuCj4gKyAqLwo+ICsKPiAr I2lmbmRlZiBfX0RSTV9QUklWQUNZX1NDUkVFTl9IX18KPiArI2RlZmluZSBfX0RSTV9QUklWQUNZ X1NDUkVFTl9IX18KPiArCj4gKyNpbmNsdWRlICJpbnRlbF9kaXNwbGF5X3R5cGVzLmgiCj4gKwo+ ICsjaWZkZWYgQ09ORklHX0FDUEkKPiArYm9vbCBpbnRlbF9wcml2YWN5X3NjcmVlbl9wcmVzZW50 KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7Cj4gK3ZvaWQgaW50ZWxfcHJpdmFj eV9zY3JlZW5fc2V0X3ZhbChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gZHJtX3ByaXZhY3lfc2NyZWVuX3N0 YXR1cyB2YWwpOwo+ICsjZWxzZQo+ICtzdGF0aWMgYm9vbCBpbnRlbF9wcml2YWN5X3NjcmVlbl9w cmVzZW50KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKPiArewo+ICsgICAgICAg cmV0dXJuIGZhbHNlOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZAo+ICtpbnRlbF9wcml2YWN5X3Nj cmVlbl9zZXRfdmFsKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGVudW0gZHJtX3ByaXZhY3lfc2NyZWVuX3N0YXR1cyB2YWwp Cj4gK3sgfQo+ICsjZW5kaWYgLyogQ09ORklHX0FDUEkgKi8KPiArCj4gKyNlbmRpZiAvKiBfX0RS TV9QUklWQUNZX1NDUkVFTl9IX18gKi8KPiAtLQo+IDIuMjUuMS40ODEuZ2ZiY2UwZWI4MDEtZ29v Zwo+Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=