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=-13.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,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 70698C433DB for ; Thu, 18 Feb 2021 21:43:33 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (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 C03E664E92 for ; Thu, 18 Feb 2021 21:43:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C03E664E92 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=siol.net Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-ID:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=NF6MMAkIkm0lDyraG6duclWCeuzp9niPOgj/+gXJ1/w=; b=LFr1U1ga6VnbICEMkhYl6rLkP EOixFPqduIYkOV19IPb93DE/it/mhQY4aRo54QBYbgNRtwlCe/k1Zx7slWw6ufNVBXqCTjgVScljY 1dN8QbsLJ2Vc9t1PCFlLzNvNmpqeAH4qE5nBQaYTNQjf920qIW2LEI8hRfLQVLqxbMZNqSrT0KGMe YCHaU/basw0TyFpxmKEHlKrlhKUncg3RVtaatUdAX+2Q9v03NHoKlnP5uylAFcnQ0OpbURK14NXJt kyBXioXqmnl76RPfs486IxBYuUgbaQZThzEiW89VNUjV4UJagQfevfXDsDWFlZ9bV0CKzx4HUn+Sv 2c1dkf5eQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1lCr54-0000Aw-T3; Thu, 18 Feb 2021 21:43:26 +0000 Received: from mailoutvs29.siol.net ([185.57.226.220] helo=mail.siol.net) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1lCr50-00009S-5C; Thu, 18 Feb 2021 21:43:24 +0000 Received: from localhost (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTP id B310C52269D; Thu, 18 Feb 2021 22:43:19 +0100 (CET) X-Virus-Scanned: amavisd-new at psrvmta09.zcs-production.pri Received: from mail.siol.net ([127.0.0.1]) by localhost (psrvmta09.zcs-production.pri [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id HnWkJJ_plBwO; Thu, 18 Feb 2021 22:43:19 +0100 (CET) Received: from mail.siol.net (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTPS id 019B85226AC; Thu, 18 Feb 2021 22:43:19 +0100 (CET) Received: from kista.localnet (cpe-86-58-17-133.cable.triera.net [86.58.17.133]) (Authenticated sender: jernej.skrabec@siol.net) by mail.siol.net (Postfix) with ESMTPA id 4DD505226AA; Thu, 18 Feb 2021 22:43:18 +0100 (CET) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: ezequiel@collabora.com, p.zabel@pengutronix.de, mchehab@kernel.org, robh+dt@kernel.org, shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, linux-imx@nxp.com, gregkh@linuxfoundation.org, mripard@kernel.org, paul.kocialkowski@bootlin.com, wens@csie.org, peng.fan@nxp.com, hverkuil-cisco@xs4all.nl, dan.carpenter@oracle.com, Benjamin Gaignard Subject: Re: [PATCH v2 1/9] media: hevc: Modify structures to follow H265 ITU spec Date: Thu, 18 Feb 2021 22:43:18 +0100 Message-ID: <12182109.SKTadsSyRz@kista> In-Reply-To: <20210218191844.297869-2-benjamin.gaignard@collabora.com> References: <20210218191844.297869-1-benjamin.gaignard@collabora.com> <20210218191844.297869-2-benjamin.gaignard@collabora.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210218_164323_057877_2E900556 X-CRM114-Status: GOOD ( 22.46 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Benjamin Gaignard , linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, kernel@collabora.com, linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org SGkhCgpEbmUgxI1ldHJ0ZWssIDE4LiBmZWJydWFyIDIwMjEgb2IgMjA6MTg6MzYgQ0VUIGplIEJl bmphbWluIEdhaWduYXJkIG5hcGlzYWwoYSk6Cj4gVGhlIEguMjY1IElUVSBzcGVjaWZpY2F0aW9u IChzZWN0aW9uIDcuNCkgZGVmaW5lIHRoZSBnZW5lcmFsCj4gc2xpY2Ugc2VnbWVudCBoZWFkZXIg c2VtYW50aWNzLgo+IE1vZGlmaWVkL2FkZGVkIGZpZWxkcyBhcmU6Cj4gLSB2aWRlb19wYXJhbWV0 ZXJfc2V0X2lkOiAoNy40LjMuMSkgaWRlbnRpZmllcyB0aGUgVlBTIGZvcgo+IHJlZmVyZW5jZSBi eSBvdGhlciBzeW50YXggZWxlbWVudHMuCj4gLSBzZXFfcGFyYW1ldGVyX3NldF9pZDogKDcuNC4z LjIuMSkgc3BlY2lmaWVzIHRoZSB2YWx1ZSBvZgo+IHRoZSB2cHNfdmlkZW9fcGFyYW1ldGVyX3Nl dF9pZCBvZiB0aGUgYWN0aXZlIFZQUy4KPiAtIGNocm9tYV9mb3JtYXRfaWRjOiAoNy40LjMuMi4x KSBzcGVjaWZpZXMgdGhlIGNocm9tYSBzYW1wbGluZwo+ICByZWxhdGl2ZSB0byB0aGUgbHVtYSBz YW1wbGluZwo+IC0gcGljX3BhcmFtZXRlcl9zZXRfaWQ6ICg3LjQuMy4zLjEpIGlkZW50aWZpZXMg dGhlIFBQUyBmb3IKPiByZWZlcmVuY2UgYnkgb3RoZXIgc3ludGF4IGVsZW1lbnRzCj4gLSBudW1f cmVmX2lkeF9sMF9kZWZhdWx0X2FjdGl2ZV9taW51czE6ICg3LjQuMy4zLjEpIHNwZWNpZmllcwo+ IHRoZSBpbmZlcnJlZCB2YWx1ZSBvZiBudW1fcmVmX2lkeF9sMF9hY3RpdmVfbWludXMxCj4gLSBu dW1fcmVmX2lkeF9sMV9kZWZhdWx0X2FjdGl2ZV9taW51czE6ICg3LjQuMy4zLjEpIHNwZWNpZmll cwo+IHRoZSBpbmZlcnJlZCB2YWx1ZSBvZiBudW1fcmVmX2lkeF9sMV9hY3RpdmVfbWludXMxCj4g LSBzbGljZV9zZWdtZW50X2FkZHI6ICg3LjQuNy4xKSBzcGVjaWZpZXMgdGhlIGFkZHJlc3Mgb2YK PiB0aGUgZmlyc3QgY29kaW5nIHRyZWUgYmxvY2sgaW4gdGhlIHNsaWNlIHNlZ21lbnQKPiAtIG51 bV9lbnRyeV9wb2ludF9vZmZzZXRzOiAoNy40LjcuMSkgc3BlY2lmaWVzIHRoZSBudW1iZXIgb2YK PiBlbnRyeV9wb2ludF9vZmZzZXRfbWludXMxWyBpIF0gc3ludGF4IGVsZW1lbnRzIGluIHRoZSBz bGljZSBoZWFkZXIKPiAKPiBBZGQgSEVWQyBkZWNvZGUgcGFyYW1zIGNvbnRhaW5zIHRoZSBpbmZv cm1hdGlvbiB1c2VkIGluIHNlY3Rpb24KPiAiOC4zIFNsaWNlIGRlY29kaW5nIHByb2Nlc3MiIG9m IHRoZSBzcGVjaWZpY2F0aW9uIHRvIGxldCB0aGUgaGFyZHdhcmUKPiBwZXJmb3JtIGRlY29kaW5n IG9mIGEgc2xpY2VzLgo+IAo+IEFkYXB0IENlZHJ1cyBkcml2ZXIgYWNjb3JkaW5nIHRvIHRoZXNl IGNoYW5nZXMuCj4gCj4gU2lnbmVkLW9mZi1ieTogQmVuamFtaW4gR2FpZ25hcmQgPGJlbmphbWlu LmdhaWduYXJkQGNvbGxhYm9yYS5jb20+Cj4gLS0tCj4gdmVyc2lvbiAyOgo+IC0gcmVtb3ZlIGFs bCBjaGFuZ2UgcmVsYXRlZCB0byBzY2FsaW5nCj4gLSBzcXVhc2ggY29tbWl0cyB0byBhIGNvaGVy ZW50IHNwbGl0Cj4gLSBiZSBtb3JlIHZlcmJvc2UgYWJvdXQgdGhlIGFkZGVkIGZpZWxkcwo+IAo+ ICBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92NGwyLWN0cmxzLmMgICAgICAgICAgfCAyNiArKysr KysrKy0tLQo+ICBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1cy5jICAg fCAgNiArKysKPiAgZHJpdmVycy9zdGFnaW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXMuaCAg IHwgIDEgKwo+ICAuLi4vc3RhZ2luZy9tZWRpYS9zdW54aS9jZWRydXMvY2VkcnVzX2RlYy5jICAg fCAgMiArCj4gIC4uLi9zdGFnaW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXNfaDI2NS5jICB8 ICA2ICsrLQo+ICBpbmNsdWRlL21lZGlhL2hldmMtY3RybHMuaCAgICAgICAgICAgICAgICAgICAg fCA0NSArKysrKysrKysrKysrKystLS0tCj4gIDYgZmlsZXMgY2hhbmdlZCwgNjkgaW5zZXJ0aW9u cygrKSwgMTcgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvdjRs Mi1jb3JlL3Y0bDItY3RybHMuYyBiL2RyaXZlcnMvbWVkaWEvdjRsMi1jb3JlLwp2NGwyLWN0cmxz LmMKPiBpbmRleCAwMTZjZjYyMDRjYmIuLjQwNjBiNWJjYzNjMCAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL21lZGlhL3Y0bDItY29yZS92NGwyLWN0cmxzLmMKPiArKysgYi9kcml2ZXJzL21lZGlhL3Y0 bDItY29yZS92NGwyLWN0cmxzLmMKPiBAQCAtMTAyOCw2ICsxMDI4LDcgQEAgY29uc3QgY2hhciAq djRsMl9jdHJsX2dldF9uYW1lKHUzMiBpZCkKPiAgCWNhc2UgVjRMMl9DSURfTVBFR19WSURFT19I RVZDX1NQUzoJCQkKcmV0dXJuICJIRVZDIFNlcXVlbmNlIFBhcmFtZXRlciBTZXQiOwo+ICAJY2Fz ZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0hFVkNfUFBTOgkJCQpyZXR1cm4gIkhFVkMgUGljdHVyZSBQ YXJhbWV0ZXIgU2V0IjsKPiAgCWNhc2UgVjRMMl9DSURfTVBFR19WSURFT19IRVZDX1NMSUNFX1BB UkFNUzoJCXJldHVybiAKIkhFVkMgU2xpY2UgUGFyYW1ldGVycyI7Cj4gKwljYXNlIFY0TDJfQ0lE X01QRUdfVklERU9fSEVWQ19ERUNPREVfUEFSQU1TOgkJCnJldHVybiAiSEVWQyBEZWNvZGUgUGFy YW1ldGVycyI7Cj4gIAljYXNlIFY0TDJfQ0lEX01QRUdfVklERU9fSEVWQ19ERUNPREVfTU9ERToJ CXJldHVybiAiSEVWQyAKRGVjb2RlIE1vZGUiOwo+ICAJY2FzZSBWNEwyX0NJRF9NUEVHX1ZJREVP X0hFVkNfU1RBUlRfQ09ERToJCXJldHVybiAKIkhFVkMgU3RhcnQgQ29kZSI7Cj4gIAo+IEBAIC0x NDgyLDYgKzE0ODMsOSBAQCB2b2lkIHY0bDJfY3RybF9maWxsKHUzMiBpZCwgY29uc3QgY2hhciAq Km5hbWUsIGVudW0gCnY0bDJfY3RybF90eXBlICp0eXBlLAo+ICAJY2FzZSBWNEwyX0NJRF9NUEVH X1ZJREVPX0hFVkNfU0xJQ0VfUEFSQU1TOgo+ICAJCSp0eXBlID0gVjRMMl9DVFJMX1RZUEVfSEVW Q19TTElDRV9QQVJBTVM7Cj4gIAkJYnJlYWs7Cj4gKwljYXNlIFY0TDJfQ0lEX01QRUdfVklERU9f SEVWQ19ERUNPREVfUEFSQU1TOgo+ICsJCSp0eXBlID0gVjRMMl9DVFJMX1RZUEVfSEVWQ19ERUNP REVfUEFSQU1TOwo+ICsJCWJyZWFrOwo+ICAJY2FzZSBWNEwyX0NJRF9VTklUX0NFTExfU0laRToK PiAgCQkqdHlwZSA9IFY0TDJfQ1RSTF9UWVBFX0FSRUE7Cj4gIAkJKmZsYWdzIHw9IFY0TDJfQ1RS TF9GTEFHX1JFQURfT05MWTsKPiBAQCAtMTgzMyw2ICsxODM3LDcgQEAgc3RhdGljIGludCBzdGRf dmFsaWRhdGVfY29tcG91bmQoY29uc3Qgc3RydWN0IAp2NGwyX2N0cmwgKmN0cmwsIHUzMiBpZHgs Cj4gIAlzdHJ1Y3QgdjRsMl9jdHJsX2hldmNfc3BzICpwX2hldmNfc3BzOwo+ICAJc3RydWN0IHY0 bDJfY3RybF9oZXZjX3BwcyAqcF9oZXZjX3BwczsKPiAgCXN0cnVjdCB2NGwyX2N0cmxfaGV2Y19z bGljZV9wYXJhbXMgKnBfaGV2Y19zbGljZV9wYXJhbXM7Cj4gKwlzdHJ1Y3QgdjRsMl9jdHJsX2hl dmNfZGVjb2RlX3BhcmFtcyAqcF9oZXZjX2RlY29kZV9wYXJhbXM7Cj4gIAlzdHJ1Y3QgdjRsMl9h cmVhICphcmVhOwo+ICAJdm9pZCAqcCA9IHB0ci5wICsgaWR4ICogY3RybC0+ZWxlbV9zaXplOwo+ ICAJdW5zaWduZWQgaW50IGk7Cj4gQEAgLTIxMDgsMjMgKzIxMTMsMjcgQEAgc3RhdGljIGludCBz dGRfdmFsaWRhdGVfY29tcG91bmQoY29uc3Qgc3RydWN0IAp2NGwyX2N0cmwgKmN0cmwsIHUzMiBp ZHgsCj4gIAkJemVyb19wYWRkaW5nKCpwX2hldmNfcHBzKTsKPiAgCQlicmVhazsKPiAgCj4gLQlj YXNlIFY0TDJfQ1RSTF9UWVBFX0hFVkNfU0xJQ0VfUEFSQU1TOgo+IC0JCXBfaGV2Y19zbGljZV9w YXJhbXMgPSBwOwo+ICsJY2FzZSBWNEwyX0NUUkxfVFlQRV9IRVZDX0RFQ09ERV9QQVJBTVM6Cj4g KwkJcF9oZXZjX2RlY29kZV9wYXJhbXMgPSBwOwo+ICAKPiAtCQlpZiAocF9oZXZjX3NsaWNlX3Bh cmFtcy0+bnVtX2FjdGl2ZV9kcGJfZW50cmllcyA+Cj4gKwkJaWYgKHBfaGV2Y19kZWNvZGVfcGFy YW1zLT5udW1fYWN0aXZlX2RwYl9lbnRyaWVzID4KPiAgCQkgICAgVjRMMl9IRVZDX0RQQl9FTlRS SUVTX05VTV9NQVgpCj4gIAkJCXJldHVybiAtRUlOVkFMOwo+ICAKPiAtCQl6ZXJvX3BhZGRpbmco cF9oZXZjX3NsaWNlX3BhcmFtcy0+cHJlZF93ZWlnaHRfdGFibGUpOwo+IC0KPiAtCQlmb3IgKGkg PSAwOyBpIDwgcF9oZXZjX3NsaWNlX3BhcmFtcy0KPm51bV9hY3RpdmVfZHBiX2VudHJpZXM7Cj4g KwkJZm9yIChpID0gMDsgaSA8IHBfaGV2Y19kZWNvZGVfcGFyYW1zLQo+bnVtX2FjdGl2ZV9kcGJf ZW50cmllczsKPiAgCQkgICAgIGkrKykgewo+ICAJCQlzdHJ1Y3QgdjRsMl9oZXZjX2RwYl9lbnRy eSAqZHBiX2VudHJ5ID0KPiAtCQkJCSZwX2hldmNfc2xpY2VfcGFyYW1zLT5kcGJbaV07Cj4gKwkJ CQkmcF9oZXZjX2RlY29kZV9wYXJhbXMtPmRwYltpXTsKPiAgCj4gIAkJCXplcm9fcGFkZGluZygq ZHBiX2VudHJ5KTsKPiAgCQl9Cj4gIAo+ICsJCWJyZWFrOwo+ICsKPiArCWNhc2UgVjRMMl9DVFJM X1RZUEVfSEVWQ19TTElDRV9QQVJBTVM6Cj4gKwkJcF9oZXZjX3NsaWNlX3BhcmFtcyA9IHA7Cj4g Kwo+ICsJCXplcm9fcGFkZGluZyhwX2hldmNfc2xpY2VfcGFyYW1zLT5wcmVkX3dlaWdodF90YWJs ZSk7Cj4gIAkJemVyb19wYWRkaW5nKCpwX2hldmNfc2xpY2VfcGFyYW1zKTsKPiAgCQlicmVhazsK PiAgCj4gQEAgLTI4MjEsNiArMjgzMCw5IEBAIHN0YXRpYyBzdHJ1Y3QgdjRsMl9jdHJsICp2NGwy X2N0cmxfbmV3KHN0cnVjdCAKdjRsMl9jdHJsX2hhbmRsZXIgKmhkbCwKPiAgCWNhc2UgVjRMMl9D VFJMX1RZUEVfSEVWQ19TTElDRV9QQVJBTVM6Cj4gIAkJZWxlbV9zaXplID0gc2l6ZW9mKHN0cnVj dCB2NGwyX2N0cmxfaGV2Y19zbGljZV9wYXJhbXMpOwo+ICAJCWJyZWFrOwo+ICsJY2FzZSBWNEwy X0NUUkxfVFlQRV9IRVZDX0RFQ09ERV9QQVJBTVM6Cj4gKwkJZWxlbV9zaXplID0gc2l6ZW9mKHN0 cnVjdCB2NGwyX2N0cmxfaGV2Y19kZWNvZGVfcGFyYW1zKTsKPiArCQlicmVhazsKPiAgCWNhc2Ug VjRMMl9DVFJMX1RZUEVfQVJFQToKPiAgCQllbGVtX3NpemUgPSBzaXplb2Yoc3RydWN0IHY0bDJf YXJlYSk7Cj4gIAkJYnJlYWs7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9z dW54aS9jZWRydXMvY2VkcnVzLmMgYi9kcml2ZXJzL3N0YWdpbmcvCm1lZGlhL3N1bnhpL2NlZHJ1 cy9jZWRydXMuYwo+IGluZGV4IDdiZDkyOTFjOGQ1Zi4uNGNkM2NhYjFhMjU3IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9zdW54aS9jZWRydXMvY2VkcnVzLmMKPiArKysgYi9k cml2ZXJzL3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1cy5jCj4gQEAgLTE1MSw2ICsx NTEsMTIgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBjZWRydXNfY29udHJvbCBjZWRydXNfY29udHJv bHNbXSA9IAp7Cj4gIAkJfSwKPiAgCQkuY29kZWMJCT0gQ0VEUlVTX0NPREVDX1ZQOCwKPiAgCX0s Cj4gKwl7Cj4gKwkJLmNmZyA9IHsKPiArCQkJLmlkID0gVjRMMl9DSURfTVBFR19WSURFT19IRVZD X0RFQ09ERV9QQVJBTVMsCj4gKwkJfSwKPiArCQkuY29kZWMJCT0gQ0VEUlVTX0NPREVDX0gyNjUs Cj4gKwl9LAo+ICB9Owo+ICAKPiAgI2RlZmluZSBDRURSVVNfQ09OVFJPTFNfQ09VTlQJQVJSQVlf U0laRShjZWRydXNfY29udHJvbHMpCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy9tZWRp YS9zdW54aS9jZWRydXMvY2VkcnVzLmggYi9kcml2ZXJzL3N0YWdpbmcvCm1lZGlhL3N1bnhpL2Nl ZHJ1cy9jZWRydXMuaAo+IGluZGV4IDI1MWE2YTY2MDM1MS4uMmNhMzNhYzM4YjlhIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9zdW54aS9jZWRydXMvY2VkcnVzLmgKPiArKysg Yi9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1cy5oCj4gQEAgLTc2LDYg Kzc2LDcgQEAgc3RydWN0IGNlZHJ1c19oMjY1X3J1biB7Cj4gIAljb25zdCBzdHJ1Y3QgdjRsMl9j dHJsX2hldmNfc3BzCQkJKnNwczsKPiAgCWNvbnN0IHN0cnVjdCB2NGwyX2N0cmxfaGV2Y19wcHMJ CQkqcHBzOwo+ICAJY29uc3Qgc3RydWN0IHY0bDJfY3RybF9oZXZjX3NsaWNlX3BhcmFtcwkqc2xp Y2VfcGFyYW1zOwo+ICsJY29uc3Qgc3RydWN0IHY0bDJfY3RybF9oZXZjX2RlY29kZV9wYXJhbXMJ KmRlY29kZV9wYXJhbXM7Cj4gIH07Cj4gIAo+ICBzdHJ1Y3QgY2VkcnVzX3ZwOF9ydW4gewo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1c19kZWMu YyBiL2RyaXZlcnMvCnN0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1c19kZWMuYwo+IGlu ZGV4IGE5MDkwZGFmNjI2YS4uY2Q4MjFmNDE3YTE0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvc3Rh Z2luZy9tZWRpYS9zdW54aS9jZWRydXMvY2VkcnVzX2RlYy5jCj4gKysrIGIvZHJpdmVycy9zdGFn aW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXNfZGVjLmMKPiBAQCAtNjgsNiArNjgsOCBAQCB2 b2lkIGNlZHJ1c19kZXZpY2VfcnVuKHZvaWQgKnByaXYpCj4gIAkJCVY0TDJfQ0lEX01QRUdfVklE RU9fSEVWQ19QUFMpOwo+ICAJCXJ1bi5oMjY1LnNsaWNlX3BhcmFtcyA9IGNlZHJ1c19maW5kX2Nv bnRyb2xfZGF0YShjdHgsCj4gIAkJCVY0TDJfQ0lEX01QRUdfVklERU9fSEVWQ19TTElDRV9QQVJB TVMpOwo+ICsJCXJ1bi5oMjY1LmRlY29kZV9wYXJhbXMgPSBjZWRydXNfZmluZF9jb250cm9sX2Rh dGEoY3R4LAo+ICsJCQlWNEwyX0NJRF9NUEVHX1ZJREVPX0hFVkNfREVDT0RFX1BBUkFNUyk7Cj4g IAkJYnJlYWs7Cj4gIAo+ICAJY2FzZSBWNEwyX1BJWF9GTVRfVlA4X0ZSQU1FOgo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1c19oMjY1LmMgYi9k cml2ZXJzLwpzdGFnaW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXNfaDI2NS5jCj4gaW5kZXgg Y2U0OTdkMDE5N2RmLi5kY2U1ZGI2YmUxM2EgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9zdGFnaW5n L21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXNfaDI2NS5jCj4gKysrIGIvZHJpdmVycy9zdGFnaW5n L21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXNfaDI2NS5jCj4gQEAgLTI0NSw2ICsyNDUsNyBAQCBz dGF0aWMgdm9pZCBjZWRydXNfaDI2NV9zZXR1cChzdHJ1Y3QgY2VkcnVzX2N0eCAqY3R4LAo+ICAJ Y29uc3Qgc3RydWN0IHY0bDJfY3RybF9oZXZjX3NwcyAqc3BzOwo+ICAJY29uc3Qgc3RydWN0IHY0 bDJfY3RybF9oZXZjX3BwcyAqcHBzOwo+ICAJY29uc3Qgc3RydWN0IHY0bDJfY3RybF9oZXZjX3Ns aWNlX3BhcmFtcyAqc2xpY2VfcGFyYW1zOwo+ICsJY29uc3Qgc3RydWN0IHY0bDJfY3RybF9oZXZj X2RlY29kZV9wYXJhbXMgKmRlY29kZV9wYXJhbXM7Cj4gIAljb25zdCBzdHJ1Y3QgdjRsMl9oZXZj X3ByZWRfd2VpZ2h0X3RhYmxlICpwcmVkX3dlaWdodF90YWJsZTsKPiAgCWRtYV9hZGRyX3Qgc3Jj X2J1Zl9hZGRyOwo+ICAJZG1hX2FkZHJfdCBzcmNfYnVmX2VuZF9hZGRyOwo+IEBAIC0yNTYsNiAr MjU3LDcgQEAgc3RhdGljIHZvaWQgY2VkcnVzX2gyNjVfc2V0dXAoc3RydWN0IGNlZHJ1c19jdHgg KmN0eCwKPiAgCXNwcyA9IHJ1bi0+aDI2NS5zcHM7Cj4gIAlwcHMgPSBydW4tPmgyNjUucHBzOwo+ ICAJc2xpY2VfcGFyYW1zID0gcnVuLT5oMjY1LnNsaWNlX3BhcmFtczsKPiArCWRlY29kZV9wYXJh bXMgPSBydW4tPmgyNjUuZGVjb2RlX3BhcmFtczsKPiAgCXByZWRfd2VpZ2h0X3RhYmxlID0gJnNs aWNlX3BhcmFtcy0+cHJlZF93ZWlnaHRfdGFibGU7Cj4gIAo+ICAJLyogTVYgY29sdW1uIGJ1ZmZl ciBzaXplIGFuZCBhbGxvY2F0aW9uLiAqLwo+IEBAIC00ODcsNyArNDg5LDcgQEAgc3RhdGljIHZv aWQgY2VkcnVzX2gyNjVfc2V0dXAoc3RydWN0IGNlZHJ1c19jdHggKmN0eCwKPiAgCj4gIAlyZWcg PSAKVkVfREVDX0gyNjVfREVDX1NMSUNFX0hEUl9JTkZPMV9TTElDRV9UQ19PRkZTRVRfRElWMihz bGljZV9wYXJhbXMtCj5zbGljZV90Y19vZmZzZXRfZGl2MikgfAo+ICAJICAgICAgClZFX0RFQ19I MjY1X0RFQ19TTElDRV9IRFJfSU5GTzFfU0xJQ0VfQkVUQV9PRkZTRVRfRElWMihzbGljZV9wYXJh bXMtCj5zbGljZV9iZXRhX29mZnNldF9kaXYyKSB8Cj4gLQkgICAgICAKVkVfREVDX0gyNjVfREVD X1NMSUNFX0hEUl9JTkZPMV9TTElDRV9QT0NfQklHRVNUX0lOX1JQU19TVChzbGljZV9wYXJhbXMt Cj5udW1fcnBzX3BvY19zdF9jdXJyX2FmdGVyID09IDApIHwKPiArCSAgICAgIApWRV9ERUNfSDI2 NV9ERUNfU0xJQ0VfSERSX0lORk8xX1NMSUNFX1BPQ19CSUdFU1RfSU5fUlBTX1NUKGRlY29kZV9w YXJhbXMtCj5udW1fcnBzX3BvY19zdF9jdXJyX2FmdGVyID09IDApIHwKPiAgCSAgICAgIApWRV9E RUNfSDI2NV9ERUNfU0xJQ0VfSERSX0lORk8xX1NMSUNFX0NSX1FQX09GRlNFVChzbGljZV9wYXJh bXMtCj5zbGljZV9jcl9xcF9vZmZzZXQpIHwKPiAgCSAgICAgIApWRV9ERUNfSDI2NV9ERUNfU0xJ Q0VfSERSX0lORk8xX1NMSUNFX0NCX1FQX09GRlNFVChzbGljZV9wYXJhbXMtCj5zbGljZV9jYl9x cF9vZmZzZXQpIHwKPiAgCSAgICAgIFZFX0RFQ19IMjY1X0RFQ19TTElDRV9IRFJfSU5GTzFfU0xJ Q0VfUVBfREVMVEEoc2xpY2VfcGFyYW1zLQo+c2xpY2VfcXBfZGVsdGEpOwo+IEBAIC01MjgsNyAr NTMwLDcgQEAgc3RhdGljIHZvaWQgY2VkcnVzX2gyNjVfc2V0dXAoc3RydWN0IGNlZHJ1c19jdHgg KmN0eCwKPiAgCj4gIAkvKiBXcml0ZSBkZWNvZGVkIHBpY3R1cmUgYnVmZmVyIGluIHBpYyBsaXN0 LiAqLwo+ICAJY2VkcnVzX2gyNjVfZnJhbWVfaW5mb193cml0ZV9kcGIoY3R4LCBzbGljZV9wYXJh bXMtPmRwYiwKPiAtCQkJCQkgc2xpY2VfcGFyYW1zLQo+bnVtX2FjdGl2ZV9kcGJfZW50cmllcyk7 Cj4gKwkJCQkJIGRlY29kZV9wYXJhbXMtCj5udW1fYWN0aXZlX2RwYl9lbnRyaWVzKTsKPiAgCj4g IAkvKiBPdXRwdXQgZnJhbWUuICovCj4gIAo+IGRpZmYgLS1naXQgYS9pbmNsdWRlL21lZGlhL2hl dmMtY3RybHMuaCBiL2luY2x1ZGUvbWVkaWEvaGV2Yy1jdHJscy5oCj4gaW5kZXggYjRjYjJlZjAy ZjE3Li43ZmU3MDRhMDhmNzcgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9tZWRpYS9oZXZjLWN0cmxz LmgKPiArKysgYi9pbmNsdWRlL21lZGlhL2hldmMtY3RybHMuaAo+IEBAIC0xOSw2ICsxOSw3IEBA Cj4gICNkZWZpbmUgVjRMMl9DSURfTVBFR19WSURFT19IRVZDX1NQUwkJKFY0TDJfQ0lEX0NPREVD X0JBU0UgKyAKMTAwOCkKPiAgI2RlZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0hFVkNfUFBTCQko VjRMMl9DSURfQ09ERUNfQkFTRSArIAoxMDA5KQo+ICAjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklE RU9fSEVWQ19TTElDRV9QQVJBTVMJKFY0TDJfQ0lEX0NPREVDX0JBU0UgKyAKMTAxMCkKPiArI2Rl ZmluZSBWNEwyX0NJRF9NUEVHX1ZJREVPX0hFVkNfREVDT0RFX1BBUkFNUwkoVjRMMl9DSURfQ09E RUNfQkFTRSArIAoxMDEyKQo+ICAjZGVmaW5lIFY0TDJfQ0lEX01QRUdfVklERU9fSEVWQ19ERUNP REVfTU9ERQkoVjRMMl9DSURfQ09ERUNfQkFTRSArIAoxMDE1KQo+ICAjZGVmaW5lIFY0TDJfQ0lE X01QRUdfVklERU9fSEVWQ19TVEFSVF9DT0RFCShWNEwyX0NJRF9DT0RFQ19CQVNFICsgCjEwMTYp Cj4gIAo+IEBAIC0yNiw2ICsyNyw3IEBACj4gICNkZWZpbmUgVjRMMl9DVFJMX1RZUEVfSEVWQ19T UFMgMHgwMTIwCj4gICNkZWZpbmUgVjRMMl9DVFJMX1RZUEVfSEVWQ19QUFMgMHgwMTIxCj4gICNk ZWZpbmUgVjRMMl9DVFJMX1RZUEVfSEVWQ19TTElDRV9QQVJBTVMgMHgwMTIyCj4gKyNkZWZpbmUg VjRMMl9DVFJMX1RZUEVfSEVWQ19ERUNPREVfUEFSQU1TIDB4MDEyNAo+ICAKPiAgZW51bSB2NGwy X21wZWdfdmlkZW9faGV2Y19kZWNvZGVfbW9kZSB7Cj4gIAlWNEwyX01QRUdfVklERU9fSEVWQ19E RUNPREVfTU9ERV9TTElDRV9CQVNFRCwKPiBAQCAtNTQsNiArNTYsOSBAQCBlbnVtIHY0bDJfbXBl Z192aWRlb19oZXZjX3N0YXJ0X2NvZGUgewo+ICAvKiBUaGUgY29udHJvbHMgYXJlIG5vdCBzdGFi bGUgYXQgdGhlIG1vbWVudCBhbmQgd2lsbCBsaWtlbHkgYmUgcmV3b3JrZWQuIAoqLwo+ICBzdHJ1 Y3QgdjRsMl9jdHJsX2hldmNfc3BzIHsKPiAgCS8qIElTTy9JRUMgMjMwMDgtMiwgSVRVLVQgUmVj LiBILjI2NTogU2VxdWVuY2UgcGFyYW1ldGVyIHNldCAqLwo+ICsJX191OAl2aWRlb19wYXJhbWV0 ZXJfc2V0X2lkOwo+ICsJX191OAlzZXFfcGFyYW1ldGVyX3NldF9pZDsKPiArCV9fdTgJY2hyb21h X2Zvcm1hdF9pZGM7Cj4gIAlfX3UxNglwaWNfd2lkdGhfaW5fbHVtYV9zYW1wbGVzOwo+ICAJX191 MTYJcGljX2hlaWdodF9pbl9sdW1hX3NhbXBsZXM7Cj4gIAlfX3U4CWJpdF9kZXB0aF9sdW1hX21p bnVzODsKPiBAQCAtNzQsOSArNzksOSBAQCBzdHJ1Y3QgdjRsMl9jdHJsX2hldmNfc3BzIHsKPiAg CV9fdTgJbG9nMl9kaWZmX21heF9taW5fcGNtX2x1bWFfY29kaW5nX2Jsb2NrX3NpemU7Cj4gIAlf X3U4CW51bV9zaG9ydF90ZXJtX3JlZl9waWNfc2V0czsKPiAgCV9fdTgJbnVtX2xvbmdfdGVybV9y ZWZfcGljc19zcHM7Cj4gLQlfX3U4CWNocm9tYV9mb3JtYXRfaWRjOwo+ICAKPiAtCV9fdTgJcGFk ZGluZzsKPiArCV9fdTgJbnVtX3NsaWNlczsKPiArCV9fdTgJcGFkZGluZ1s2XTsKPiAgCj4gIAlf X3U2NAlmbGFnczsKPiAgfTsKPiBAQCAtMTAwLDEwICsxMDUsMTUgQEAgc3RydWN0IHY0bDJfY3Ry bF9oZXZjX3NwcyB7Cj4gICNkZWZpbmUgVjRMMl9IRVZDX1BQU19GTEFHX1BQU19ESVNBQkxFX0RF QkxPQ0tJTkdfRklMVEVSCSgxVUxMIDw8IDE2KQo+ICAjZGVmaW5lIFY0TDJfSEVWQ19QUFNfRkxB R19MSVNUU19NT0RJRklDQVRJT05fUFJFU0VOVAkJKDFVTEwgPDwgMTcpCj4gICNkZWZpbmUgVjRM Ml9IRVZDX1BQU19GTEFHX1NMSUNFX1NFR01FTlRfSEVBREVSX0VYVEVOU0lPTl9QUkVTRU5UICgx VUxMIDw8IAoxOCkKPiArI2RlZmluZSBWNEwyX0hFVkNfUFBTX0ZMQUdfREVCTE9DS0lOR19GSUxU RVJfQ09OVFJPTF9QUkVTRU5UCSgxVUxMIDw8IDE5KQo+ICsjZGVmaW5lIFY0TDJfSEVWQ19QUFNf RkxBR19VTklGT1JNX1NQQUNJTkcJCQkKKDFVTEwgPDwgMjApCj4gIAo+ICBzdHJ1Y3QgdjRsMl9j dHJsX2hldmNfcHBzIHsKPiAgCS8qIElTTy9JRUMgMjMwMDgtMiwgSVRVLVQgUmVjLiBILjI2NTog UGljdHVyZSBwYXJhbWV0ZXIgc2V0ICovCj4gKwlfX3U4CXBpY19wYXJhbWV0ZXJfc2V0X2lkOwo+ ICAJX191OAludW1fZXh0cmFfc2xpY2VfaGVhZGVyX2JpdHM7Cj4gKwlfX3U4CW51bV9yZWZfaWR4 X2wwX2RlZmF1bHRfYWN0aXZlX21pbnVzMTsKPiArCV9fdTgJbnVtX3JlZl9pZHhfbDFfZGVmYXVs dF9hY3RpdmVfbWludXMxOwo+ICAJX19zOAlpbml0X3FwX21pbnVzMjY7Cj4gIAlfX3U4CWRpZmZf Y3VfcXBfZGVsdGFfZGVwdGg7Cj4gIAlfX3M4CXBwc19jYl9xcF9vZmZzZXQ7Cj4gQEAgLTExNiw3 ICsxMjYsNyBAQCBzdHJ1Y3QgdjRsMl9jdHJsX2hldmNfcHBzIHsKPiAgCV9fczgJcHBzX3RjX29m ZnNldF9kaXYyOwo+ICAJX191OAlsb2cyX3BhcmFsbGVsX21lcmdlX2xldmVsX21pbnVzMjsKPiAg Cj4gLQlfX3U4CXBhZGRpbmdbNF07Cj4gKwlfX3U4CXBhZGRpbmc7Cj4gIAlfX3U2NAlmbGFnczsK PiAgfTsKPiAgCj4gQEAgLTE2NSw2ICsxNzUsMTAgQEAgc3RydWN0IHY0bDJfY3RybF9oZXZjX3Ns aWNlX3BhcmFtcyB7Cj4gIAlfX3UzMgliaXRfc2l6ZTsKPiAgCV9fdTMyCWRhdGFfYml0X29mZnNl dDsKPiAgCj4gKwkvKiBJU08vSUVDIDIzMDA4LTIsIElUVS1UIFJlYy4gSC4yNjU6IEdlbmVyYWwg c2xpY2Ugc2VnbWVudCBoZWFkZXIgCiovCj4gKwlfX3UzMglzbGljZV9zZWdtZW50X2FkZHI7Cj4g KwlfX3UzMgludW1fZW50cnlfcG9pbnRfb2Zmc2V0czsKPiArCj4gIAkvKiBJU08vSUVDIDIzMDA4 LTIsIElUVS1UIFJlYy4gSC4yNjU6IE5BTCB1bml0IGhlYWRlciAqLwo+ICAJX191OAluYWxfdW5p dF90eXBlOwo+ICAJX191OAludWhfdGVtcG9yYWxfaWRfcGx1czE7Cj4gQEAgLTE5MCwxNSArMjA0 LDEzIEBAIHN0cnVjdCB2NGwyX2N0cmxfaGV2Y19zbGljZV9wYXJhbXMgewo+ICAJX191OAlwaWNf c3RydWN0Owo+ICAKPiAgCS8qIElTTy9JRUMgMjMwMDgtMiwgSVRVLVQgUmVjLiBILjI2NTogR2Vu ZXJhbCBzbGljZSBzZWdtZW50IGhlYWRlciAKKi8KPiAtCV9fdTgJbnVtX2FjdGl2ZV9kcGJfZW50 cmllczsKPiAgCV9fdTgJcmVmX2lkeF9sMFtWNEwyX0hFVkNfRFBCX0VOVFJJRVNfTlVNX01BWF07 Cj4gIAlfX3U4CXJlZl9pZHhfbDFbVjRMMl9IRVZDX0RQQl9FTlRSSUVTX05VTV9NQVhdOwo+ICAK PiAtCV9fdTgJbnVtX3Jwc19wb2Nfc3RfY3Vycl9iZWZvcmU7Cj4gLQlfX3U4CW51bV9ycHNfcG9j X3N0X2N1cnJfYWZ0ZXI7Cj4gLQlfX3U4CW51bV9ycHNfcG9jX2x0X2N1cnI7Cj4gKwlfX3UxNglz aG9ydF90ZXJtX3JlZl9waWNfc2V0X3NpemU7Cj4gKwlfX3UxNglsb25nX3Rlcm1fcmVmX3BpY19z ZXRfc2l6ZTsKPiAgCj4gLQlfX3U4CXBhZGRpbmc7Cj4gKwlfX3U4CXBhZGRpbmdbNV07Cj4gIAo+ ICAJLyogSVNPL0lFQyAyMzAwOC0yLCBJVFUtVCBSZWMuIEguMjY1OiBHZW5lcmFsIHNsaWNlIHNl Z21lbnQgaGVhZGVyIAoqLwo+ICAJc3RydWN0IHY0bDJfaGV2Y19kcGJfZW50cnkgZHBiW1Y0TDJf SEVWQ19EUEJfRU5UUklFU19OVU1fTUFYXTsKPiBAQCAtMjA5LDQgKzIyMSwyMSBAQCBzdHJ1Y3Qg djRsMl9jdHJsX2hldmNfc2xpY2VfcGFyYW1zIHsKPiAgCV9fdTY0CWZsYWdzOwo+ICB9Owo+ICAK PiArI2RlZmluZSBWNEwyX0hFVkNfREVDT0RFX1BBUkFNX0ZMQUdfSVJBUF9QSUMJCTB4MQo+ICsj ZGVmaW5lIFY0TDJfSEVWQ19ERUNPREVfUEFSQU1fRkxBR19JRFJfUElDCQkweDIKPiArI2RlZmlu ZSBWNEwyX0hFVkNfREVDT0RFX1BBUkFNX0ZMQUdfTk9fT1VUUFVUX09GX1BSSU9SICAweDQKPiAr Cj4gK3N0cnVjdCB2NGwyX2N0cmxfaGV2Y19kZWNvZGVfcGFyYW1zIHsKPiArCV9fczMyCXBpY19v cmRlcl9jbnRfdmFsOwo+ICsJX191OAludW1fYWN0aXZlX2RwYl9lbnRyaWVzOwo+ICsJc3RydWN0 CXY0bDJfaGV2Y19kcGJfZW50cnkgZHBiW1Y0TDJfSEVWQ19EUEJfRU5UUklFU19OVU1fTUFYXTsK PiArCV9fdTgJbnVtX3Jwc19wb2Nfc3RfY3Vycl9iZWZvcmU7Cj4gKwlfX3U4CW51bV9ycHNfcG9j X3N0X2N1cnJfYWZ0ZXI7Cj4gKwlfX3U4CW51bV9ycHNfcG9jX2x0X2N1cnI7Cj4gKwlfX3U4CXJw c19zdF9jdXJyX2JlZm9yZVtWNEwyX0hFVkNfRFBCX0VOVFJJRVNfTlVNX01BWF07Cj4gKwlfX3U4 CXJwc19zdF9jdXJyX2FmdGVyW1Y0TDJfSEVWQ19EUEJfRU5UUklFU19OVU1fTUFYXTsKPiArCV9f dTgJcnBzX2x0X2N1cnJbVjRMMl9IRVZDX0RQQl9FTlRSSUVTX05VTV9NQVhdOwo+ICsJX191NjQJ ZmxhZ3M7Cj4gK307CgpDdXJyZW50IHByYWN0aWNlIGlzIHRvIGFsc28gYWRkL3VwZGF0ZSBjb250 cm9scyBkb2N1bWVudGF0aW9uIGluIApEb2N1bWVudGF0aW9uL3VzZXJzcGFjZS1hcGkvbWVkaWEv djRsLwoKV2l0aCB5b3VyIGNoYW5nZXMsIHY0bDJfY3RybF9oZXZjX3BwcyBhbmQgdjRsMl9jdHJs X2hldmNfc2xpY2VfcGFyYW1zIApkZXNjcmlwdGlvbnMgYXJlIG91dCBvZiBzeW5jIGFuZCB2NGwy X2N0cmxfaGV2Y19kZWNvZGVfcGFyYW1zIGRlc2NyaXB0aW9uIGlzIApjb21wbGV0ZWx5IG1pc3Np bmcuCgpCZXN0IHJlZ2FyZHMsCkplcm5lagoKPiArCj4gICNlbmRpZgo+IC0tIAo+IDIuMjUuMQo+ IAo+IAoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpM aW51eC1yb2NrY2hpcCBtYWlsaW5nIGxpc3QKTGludXgtcm9ja2NoaXBAbGlzdHMuaW5mcmFkZWFk Lm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJv Y2tjaGlwCg==