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=unavailable 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 1B2ABC433DB for ; Thu, 25 Feb 2021 18:07:36 +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 AA0B264DE8 for ; Thu, 25 Feb 2021 18:07:35 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AA0B264DE8 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-arm-kernel-bounces+linux-arm-kernel=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=ZZCZMneX0QmlBjOxcCJBkrHSN7WgJWc+uwr0kRDl/Zw=; b=XgZZzR4EL2nUBBQRqN0rZrNAw BauaK40F6BsrrVCy0nj6OHqvlzKI8/mQ9WpS3oE7+mIQxE4CGW0uUJrh+0KEX8APZMXakrC/KhYDE ua5zb6+oMCXh9zV5SKXnQFgzLY40wjs5x/Wwowq2avRKqM2pL4yZ8Zq33Rh2Bb6X2h7tAVH1ReO5n qZ2MRHiuKjVmF4wLoRqqA1vFiqXIv7AtVj2hiIwt7tAV1En1lJOngxOZEztl15Y1PzTRjyUBplJAS R1yqvYGAAsf+pir2B35q9eB5vTn1/6VfM+Vcf6Ctc+bhXM+sccNV1bMREZSFhuK5XyXZRzh4LYEMY u8ulhqrNA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1lFL1Y-00086n-6Z; Thu, 25 Feb 2021 18:06:04 +0000 Received: from mailoutvs5.siol.net ([185.57.226.196] helo=mail.siol.net) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1lFL1U-00086C-AI; Thu, 25 Feb 2021 18:06:02 +0000 Received: from localhost (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTP id 662A1522698; Thu, 25 Feb 2021 19:05:57 +0100 (CET) X-Virus-Scanned: amavisd-new at psrvmta10.zcs-production.pri Received: from mail.siol.net ([127.0.0.1]) by localhost (psrvmta10.zcs-production.pri [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id cOwmNd4Uc02L; Thu, 25 Feb 2021 19:05:56 +0100 (CET) Received: from mail.siol.net (localhost [127.0.0.1]) by mail.siol.net (Postfix) with ESMTPS id 960035240FB; Thu, 25 Feb 2021 19:05:56 +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 A2167522698; Thu, 25 Feb 2021 19:05:55 +0100 (CET) From: Jernej =?utf-8?B?xaBrcmFiZWM=?= To: Benjamin Gaignard , 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, Ezequiel Garcia Subject: Re: Re: Re: [PATCH v3 1/9] media: hevc: Modify structures to follow H265 ITU spec Date: Thu, 25 Feb 2021 19:05:55 +0100 Message-ID: <5861676.snnbt3pK2g@kista> In-Reply-To: References: <20210222122406.41782-1-benjamin.gaignard@collabora.com> <233731323.ucs1DXFtIZ@kista> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210225_130600_657328_DDA67AF4 X-CRM114-Status: GOOD ( 47.03 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, 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-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org RG5lIMSNZXRydGVrLCAyNS4gZmVicnVhciAyMDIxIG9iIDE4OjM0OjQ4IENFVCBqZSBFemVxdWll bCBHYXJjaWEgbmFwaXNhbChhKToKPiBIZXkgSmVybmVqLAo+IAo+IE9uIFRodSwgMjAyMS0wMi0y NSBhdCAxODowMSArMDEwMCwgSmVybmVqIMWga3JhYmVjIHdyb3RlOgo+ID4gSGkgRXplcXVpZWws Cj4gPiAKPiA+IERuZSDEjWV0cnRlaywgMjUuIGZlYnJ1YXIgMjAyMSBvYiAxNDowOTo1MiBDRVQg amUgRXplcXVpZWwgR2FyY2lhIApuYXBpc2FsKGEpOgo+ID4gPiBIaSBCZW5qYW1pbiwKPiA+ID4g Cj4gPiA+IFRoYW5rcyBmb3IgdGhlIGdvb2Qgd29yay4KPiA+ID4gCj4gPiA+IE9uIE1vbiwgMjAy MS0wMi0yMiBhdCAxMzoyMyArMDEwMCwgQmVuamFtaW4gR2FpZ25hcmQgd3JvdGU6Cj4gPiA+ID4g VGhlIEguMjY1IElUVSBzcGVjaWZpY2F0aW9uIChzZWN0aW9uIDcuNCkgZGVmaW5lIHRoZSBnZW5l cmFsCj4gPiA+ID4gc2xpY2Ugc2VnbWVudCBoZWFkZXIgc2VtYW50aWNzLgo+ID4gPiA+IE1vZGlm aWVkL2FkZGVkIGZpZWxkcyBhcmU6Cj4gPiA+ID4gLSB2aWRlb19wYXJhbWV0ZXJfc2V0X2lkOiAo Ny40LjMuMSkgaWRlbnRpZmllcyB0aGUgVlBTIGZvcgo+ID4gPiA+IHJlZmVyZW5jZSBieSBvdGhl ciBzeW50YXggZWxlbWVudHMuCj4gPiA+ID4gLSBzZXFfcGFyYW1ldGVyX3NldF9pZDogKDcuNC4z LjIuMSkgc3BlY2lmaWVzIHRoZSB2YWx1ZSBvZgo+ID4gPiA+IHRoZSB2cHNfdmlkZW9fcGFyYW1l dGVyX3NldF9pZCBvZiB0aGUgYWN0aXZlIFZQUy4KPiA+ID4gPiAtIGNocm9tYV9mb3JtYXRfaWRj OiAoNy40LjMuMi4xKSBzcGVjaWZpZXMgdGhlIGNocm9tYSBzYW1wbGluZwo+ID4gPiA+ICByZWxh dGl2ZSB0byB0aGUgbHVtYSBzYW1wbGluZwo+ID4gPiA+IC0gcGljX3BhcmFtZXRlcl9zZXRfaWQ6 ICg3LjQuMy4zLjEpIGlkZW50aWZpZXMgdGhlIFBQUyBmb3IKPiA+ID4gPiByZWZlcmVuY2UgYnkg b3RoZXIgc3ludGF4IGVsZW1lbnRzCj4gPiA+ID4gLSBudW1fcmVmX2lkeF9sMF9kZWZhdWx0X2Fj dGl2ZV9taW51czE6ICg3LjQuMy4zLjEpIHNwZWNpZmllcwo+ID4gPiA+IHRoZSBpbmZlcnJlZCB2 YWx1ZSBvZiBudW1fcmVmX2lkeF9sMF9hY3RpdmVfbWludXMxCj4gPiA+ID4gLSBudW1fcmVmX2lk eF9sMV9kZWZhdWx0X2FjdGl2ZV9taW51czE6ICg3LjQuMy4zLjEpIHNwZWNpZmllcwo+ID4gPiA+ IHRoZSBpbmZlcnJlZCB2YWx1ZSBvZiBudW1fcmVmX2lkeF9sMV9hY3RpdmVfbWludXMxCj4gPiA+ ID4gLSBzbGljZV9zZWdtZW50X2FkZHI6ICg3LjQuNy4xKSBzcGVjaWZpZXMgdGhlIGFkZHJlc3Mg b2YKPiA+ID4gPiB0aGUgZmlyc3QgY29kaW5nIHRyZWUgYmxvY2sgaW4gdGhlIHNsaWNlIHNlZ21l bnQKPiA+ID4gPiAtIG51bV9lbnRyeV9wb2ludF9vZmZzZXRzOiAoNy40LjcuMSkgc3BlY2lmaWVz IHRoZSBudW1iZXIgb2YKPiA+ID4gPiBlbnRyeV9wb2ludF9vZmZzZXRfbWludXMxWyBpIF0gc3lu dGF4IGVsZW1lbnRzIGluIHRoZSBzbGljZSBoZWFkZXIKPiA+ID4gPiAKPiA+ID4gPiBBZGQgSEVW QyBkZWNvZGUgcGFyYW1zIGNvbnRhaW5zIHRoZSBpbmZvcm1hdGlvbiB1c2VkIGluIHNlY3Rpb24K PiA+ID4gPiAiOC4zIFNsaWNlIGRlY29kaW5nIHByb2Nlc3MiIG9mIHRoZSBzcGVjaWZpY2F0aW9u IHRvIGxldCB0aGUgaGFyZHdhcmUKPiA+ID4gPiBwZXJmb3JtIGRlY29kaW5nIG9mIGEgc2xpY2Vz Lgo+ID4gPiA+IAo+ID4gPiA+IEFkYXB0IENlZHJ1cyBkcml2ZXIgYWNjb3JkaW5nIHRvIHRoZXNl IGNoYW5nZXMuCj4gPiA+ID4gCj4gPiA+ID4gU2lnbmVkLW9mZi1ieTogQmVuamFtaW4gR2FpZ25h cmQgPGJlbmphbWluLmdhaWduYXJkQGNvbGxhYm9yYS5jb20+Cj4gPiA+ID4gLS0tCj4gPiA+ID4g dmVyc2lvbiAzOgo+ID4gPiA+IC0gQWRkIGRvY3VtZW50YXRpb24gYWJvdXQgdGhlIG5ldyBzdHJ1 Y3R1ZXJzIGFuZCBmaWVsZHMuCj4gPiA+ID4gCj4gPiA+ID4gdmVyc2lvbiAyOgo+ID4gPiA+IC0g cmVtb3ZlIGFsbCBjaGFuZ2UgcmVsYXRlZCB0byBzY2FsaW5nCj4gPiA+ID4gLSBzcXVhc2ggY29t bWl0cyB0byBhIGNvaGVyZW50IHNwbGl0Cj4gPiA+ID4gLSBiZSBtb3JlIHZlcmJvc2UgYWJvdXQg dGhlIGFkZGVkIGZpZWxkcwo+ID4gPiA+IAo+ID4gPiA+ICAuLi4vbWVkaWEvdjRsL2V4dC1jdHJs cy1jb2RlYy5yc3QgICAgICAgICAgICAgfCAxMjYgKysrKysrKysrKysrKysKKy0tLQo+ID4gPiA+ ICAuLi4vbWVkaWEvdjRsL3ZpZGlvYy1xdWVyeWN0cmwucnN0ICAgICAgICAgICAgfCAgIDYgKwo+ ID4gPiA+ICBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92NGwyLWN0cmxzLmMgICAgICAgICAgfCAg MjYgKysrLQo+ID4gPiA+ICBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVzL2NlZHJ1 cy5jICAgfCAgIDYgKwo+ID4gPiA+ICBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvc3VueGkvY2VkcnVz L2NlZHJ1cy5oICAgfCAgIDEgKwo+ID4gPiA+ICAuLi4vc3RhZ2luZy9tZWRpYS9zdW54aS9jZWRy dXMvY2VkcnVzX2RlYy5jICAgfCAgIDIgKwo+ID4gPiA+ICAuLi4vc3RhZ2luZy9tZWRpYS9zdW54 aS9jZWRydXMvY2VkcnVzX2gyNjUuYyAgfCAgIDYgKy0KPiA+ID4gPiAgaW5jbHVkZS9tZWRpYS9o ZXZjLWN0cmxzLmggICAgICAgICAgICAgICAgICAgIHwgIDQ1ICsrKysrLS0KPiA+ID4gPiAgOCBm aWxlcyBjaGFuZ2VkLCAxODYgaW5zZXJ0aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCj4gPiA+ID4g Cj4gPiA+ID4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vdXNlcnNwYWNlLWFwaS9tZWRpYS92 NGwvZXh0LWN0cmxzLWNvZGVjLnJzdCAKYi8KPiA+IERvY3VtZW50YXRpb24vdXNlcnNwYWNlLWFw aS9tZWRpYS92NGwvZXh0LWN0cmxzLWNvZGVjLnJzdAo+ID4gPiA+IGluZGV4IDAwOTQ0ZTk3ZDYz OC4uNWU2ZDc3ZTg1OGMwIDEwMDY0NAo+ID4gPiA+IC0tLSBhL0RvY3VtZW50YXRpb24vdXNlcnNw YWNlLWFwaS9tZWRpYS92NGwvZXh0LWN0cmxzLWNvZGVjLnJzdAo+ID4gPiA+ICsrKyBiL0RvY3Vt ZW50YXRpb24vdXNlcnNwYWNlLWFwaS9tZWRpYS92NGwvZXh0LWN0cmxzLWNvZGVjLnJzdAo+ID4g PiA+IEBAIC0zMTA5LDYgKzMxMDksMTUgQEAgZW51bSB2NGwyX21wZWdfdmlkZW9faGV2Y19zaXpl X29mX2xlbmd0aF9maWVsZCAtCj4gPiA+ID4gICAgICA6c3R1Yi1jb2x1bW5zOiAwCj4gPiA+ID4g ICAgICA6d2lkdGhzOiAgICAgICAxIDEgMgo+ID4gPiA+ICAKPiA+ID4gPiArICAgICogLSBfX3U4 Cj4gPiA+ID4gKyAgICAgIC0gYGB2aWRlb19wYXJhbWV0ZXJfc2V0X2lkYGAKPiA+ID4gPiArICAg ICAgLSBJZGVudGlmaWVzIHRoZSBWUFMgZm9yIHJlZmVyZW5jZSBieSBvdGhlciBzeW50YXggZWxl bWVudHMKPiA+ID4gPiArICAgICogLSBfX3U4Cj4gPiA+ID4gKyAgICAgIC0gYGBzZXFfcGFyYW1l dGVyX3NldF9pZMyAYGAKPiA+ID4gPiArICAgICAgLSBTcGVjaWZpZXMgdGhlIHZhbHVlIG9mIHRo ZSB2cHNfdmlkZW9fcGFyYW1ldGVyX3NldF9pZCBvZiB0aGUgCj4gPiBhY3RpdmUgVlBTCj4gPiA+ ID4gKyAgICAqIC0gX191OAo+ID4gPiA+ICsgICAgICAtIGBgY2hyb21hX2Zvcm1hdF9pZGNgYAo+ ID4gPiA+ICsgICAgICAtIFNwZWNpZmllcyB0aGUgY2hyb21hIHNhbXBsaW5nIHJlbGF0aXZlIHRv IHRoZSBsdW1hIHNhbXBsaW5nCj4gPiA+IAo+ID4gPiBOb25lIG9mIHRoZXNlIGZpZWxkcyBzZWVt IG5lZWRlZCBmb3IgdGhlIEhhbnRybyBHMiBkcml2ZXIsCj4gPiA+IHNvIEkgc3VnZ2VzdCB5b3Ug ZHJvcCB0aGVtIGZvciBub3cuCj4gPiA+IAo+ID4gPiA+ICAgICAgKiAtIF9fdTE2Cj4gPiA+ID4g ICAgICAgIC0gYGBwaWNfd2lkdGhfaW5fbHVtYV9zYW1wbGVzYGAKPiA+ID4gPiAgICAgICAgLQo+ ID4gPiA+IEBAIC0zMTcyLDYgKzMxODEsOSBAQCBlbnVtIHY0bDJfbXBlZ192aWRlb19oZXZjX3Np emVfb2ZfbGVuZ3RoX2ZpZWxkIC0KPiA+ID4gPiAgICAgICogLSBfX3U4Cj4gPiA+ID4gICAgICAg IC0gYGBjaHJvbWFfZm9ybWF0X2lkY2BgCj4gPiA+ID4gICAgICAgIC0KPiA+ID4gPiArICAgICog LSBfX3U4Cj4gPiA+ID4gKyAgICAgIC0gYGBudW1fc2xpY2VzYGAKPiA+ID4gPiArCj4gPiA+IAo+ ID4gPiBOb3QgdXNlZCwgYnV0IGFsc28gZG9lc24ndCBzZWVtIHBhcnQgb2YgdGhlIFNQUyBzeW50 YXguIElmIHdlIGhhdmUgdG8KPiA+ID4gcGFzcyB0aGUgbnVtYmVyIG9mIHNsaWNlcywgd2UnbGwg bmVlZCBhbm90aGVyIG1lY2hhbmlzbS4KPiA+ID4gCj4gPiA+ID4gICAgICAgLQo+ID4gPiA+ICAg ICAgKiAtIF9fdTY0Cj4gPiA+ID4gICAgICAgIC0gYGBmbGFnc2BgCj4gPiA+ID4gICAgICAgIC0g U2VlIDpyZWY6YFNlcXVlbmNlIFBhcmFtZXRlciBTZXQgRmxhZ3MgPGhldmNfc3BzX2ZsYWdzPmAK PiA+ID4gPiBAQCAtMzIzMSw5ICszMjQzLDE4IEBAIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2hldmNf c2l6ZV9vZl9sZW5ndGhfZmllbGQgLQo+ID4gPiA+ICAgICAgOnN0dWItY29sdW1uczogMAo+ID4g PiA+ICAgICAgOndpZHRoczogICAgICAgMSAxIDIKPiA+ID4gPiAgCj4gPiA+ID4gKyAgICAqIC0g X191OAo+ID4gPiA+ICsgICAgICAtIGBgcGljX3BhcmFtZXRlcl9zZXRfaWRgYAo+ID4gPiA+ICsg ICAgICAtIElkZW50aWZpZXMgdGhlIFBQUyBmb3IgcmVmZXJlbmNlIGJ5IG90aGVyIHN5bnRheCBl bGVtZW50cwo+ID4gPiAKPiA+ID4gTm90IHVzZWQuCj4gPiA+IAo+ID4gPiA+ICAgICAgKiAtIF9f dTgKPiA+ID4gPiAgICAgICAgLSBgYG51bV9leHRyYV9zbGljZV9oZWFkZXJfYml0c2BgCj4gPiA+ ID4gICAgICAgIC0KPiA+ID4gPiArICAgICogLSBfX3U4Cj4gPiA+ID4gKyAgICAgIC0gYGBudW1f cmVmX2lkeF9sMF9kZWZhdWx0X2FjdGl2ZV9taW51czFgYAo+ID4gPiA+ICsgICAgICAtIFNwZWNp ZmllcyB0aGUgaW5mZXJyZWQgdmFsdWUgb2YgbnVtX3JlZl9pZHhfbDBfYWN0aXZlX21pbnVzMQo+ ID4gPiA+ICsgICAgKiAtIF9fdTgKPiA+ID4gPiArICAgICAgLSBgYG51bV9yZWZfaWR4X2wxX2Rl ZmF1bHRfYWN0aXZlX21pbnVzMWBgCj4gPiA+ID4gKyAgICAgIC0gU3BlY2lmaWVzIHRoZSBpbmZl cnJlZCB2YWx1ZSBvZiBudW1fcmVmX2lkeF9sMV9hY3RpdmVfbWludXMxCj4gPiA+ID4gICAgICAq IC0gX19zOAo+ID4gPiA+ICAgICAgICAtIGBgaW5pdF9xcF9taW51czI2YGAKPiA+ID4gPiAgICAg ICAgLQo+ID4gPiA+IEBAIC0zMzQyLDYgKzMzNjMsMTIgQEAgZW51bSB2NGwyX21wZWdfdmlkZW9f aGV2Y19zaXplX29mX2xlbmd0aF9maWVsZCAtCj4gPiA+ID4gICAgICAqIC0gYGBWNEwyX0hFVkNf UFBTX0ZMQUdfU0xJQ0VfU0VHTUVOVF9IRUFERVJfRVhURU5TSU9OX1BSRVNFTlRgYAo+ID4gPiA+ ICAgICAgICAtIDB4MDAwNDAwMDAKPiA+ID4gPiAgICAgICAgLQo+ID4gPiA+ICsgICAgKiAtIGBg VjRMMl9IRVZDX1BQU19GTEFHX0RFQkxPQ0tJTkdfRklMVEVSX0NPTlRST0xfUFJFU0VOVGBgCj4g PiA+ID4gKyAgICAgIC0gMHgwMDA4MDAwMAo+ID4gPiA+ICsgICAgICAtCj4gPiA+ID4gKyAgICAq IC0gYGBWNEwyX0hFVkNfUFBTX0ZMQUdfVU5JRk9STV9TUEFDSU5HYGAKPiA+ID4gPiArICAgICAg LSAweDAwMTAwMDAwCj4gPiA+ID4gKyAgICAgIC0KPiA+ID4gPiAgCj4gPiA+IAo+ID4gPiBJIHN1 Z2dlc3QgdG8gZG8gYWxsIHRoZSBQUFMgY29udHJvbCBjaGFuZ2VzIGluIGEgc2VwYXJhdGUgcGF0 Y2gsCj4gPiA+IGZlZWxzIGVhc2llciB0byByZXZpZXcgYW5kIGNsZWFuZXIgYXMgeW91IGNhbiBl eHBsYWluIHRoZQo+ID4gPiBjaGFuZ2VzIHdpdGggbW9yZSBkZXRhaWwgaW4gdGhlIGNvbW1pdCBk ZXNjcmlwdGlvbi4KPiA+ID4gCj4gPiA+IExvb2tpbmcgYXQgdGhlIFBQUyBzeW50YXggZm9yIHRp bGVzLCBJJ20gd29uZGVyaW5nIGlmIHRoZXNlCj4gPiA+IGRlc2VydmUgdGhlaXIgb3duIGNvbnRy b2wsIHdoaWNoIHdvdWxkIGJlIHVzZWQgaWYgdGlsZXMgYXJlIGVuYWJsZWQsCj4gPiA+IGkuZS4g VjRMMl9IRVZDX1BQU19GTEFHX1RJTEVTX0VOQUJMRUQgaXMgc2V0Lgo+ID4gPiAKPiA+ID4gICAg ICAgICBfX3U4ICAgIApudW1fdGlsZV9jb2x1bW5zX21pbnVzMTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIAo+ID4gPiAgICAgICAgIF9fdTggICAgCm51bV90aWxlX3Jv d3NfbWludXMxOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCj4g PiA+ICAgICAgICAgX191OCAgICAKY29sdW1uX3dpZHRoX21pbnVzMVsyMF07ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPiA+ID4gICAgICAgICBfX3U4ICAgIHJvd19o ZWlnaHRfbWludXMxWzIyXTsgICAgCj4gPiA+IAo+ID4gPiBOb3Qgc29tZXRoaW5nIHdlIG5lY2Vz c2FyaWx5IGhhdmUgdG8gdGFja2xlIG5vdy4KPiA+ID4gCj4gPiA+ID4gIGBgVjRMMl9DSURfTVBF R19WSURFT19IRVZDX1NMSUNFX1BBUkFNUyAoc3RydWN0KWBgCj4gPiA+ID4gICAgICBTcGVjaWZp ZXMgdmFyaW91cyBzbGljZS1zcGVjaWZpYyBwYXJhbWV0ZXJzLCBlc3BlY2lhbGx5IGZyb20gdGhl IApOQUwgCj4gPiB1bml0Cj4gPiA+ID4gQEAgLTMzNjYsNiArMzM5MywxMiBAQCBlbnVtIHY0bDJf bXBlZ192aWRlb19oZXZjX3NpemVfb2ZfbGVuZ3RoX2ZpZWxkIC0KPiA+ID4gPiAgICAgICogLSBf X3UzMgo+ID4gPiA+ICAgICAgICAtIGBgZGF0YV9iaXRfb2Zmc2V0YGAKPiA+ID4gPiAgICAgICAg LSBPZmZzZXQgKGluIGJpdHMpIHRvIHRoZSB2aWRlbyBkYXRhIGluIHRoZSBjdXJyZW50IHNsaWNl IGRhdGEuCj4gPiA+ID4gKyAgICAqIC0gX191MzIKPiA+ID4gPiArICAgICAgLSBgYHNsaWNlX3Nl Z21lbnRfYWRkcmBgCj4gPiA+ID4gKyAgICAgIC0gU3BlY2lmaWVzIHRoZSBhZGRyZXNzIG9mIHRo ZSBmaXJzdCBjb2RpbmcgdHJlZSBibG9jayBpbiB0aGUgCnNsaWNlIAo+ID4gc2VnbWVudAo+ID4g PiAKPiA+ID4gTm90IHVzZWQuCj4gPiA+IAo+ID4gPiA+ICsgICAgKiAtIF9fdTMyCj4gPiA+ID4g KyAgICAgIC0gYGBudW1fZW50cnlfcG9pbnRfb2Zmc2V0c2BgCj4gPiA+ID4gKyAgICAgIC0gU3Bl Y2lmaWVzIHRoZSBudW1iZXIgb2YgZW50cnlfcG9pbnRfb2Zmc2V0X21pbnVzMVsgaSBdIHN5bnRh eCAKPiA+IGVsZW1lbnRzIGluIHRoZSBzbGljZSBoZWFkZXIKPiA+ID4gCj4gPiA+IE5vdCB1c2Vk Lgo+ID4gCj4gPiBXaGlsZSBhYm92ZSB0d28gZmllbGRzIG1heSBub3QgYmUgdXNlZCBpbiBIYW50 cm8sIHRoZXkgYXJlIGZvciBzdXJlIHVzZWZ1bCAKZm9yIAo+ID4gQ2VkcnVzIGFuZCBSUGk0LiBJ IHdvdWxkIGxpa2UgdG8ga2VlcCB0aGVtLCBvdGhlcndpc2Ugd2l0aCBzdWNoIGFwcHJvYWNoIApI RVZDIAo+ID4gd2lsbCBzdGF5IGluIHN0YWdpbmcgZm9yIGEgbG9uZyB0aW1lLiBJJ20gc3RpbGwg YmFmZmxlZCB3aHkgc2NhbGluZyBtYXRyaXggCj4gPiBjb250cm9sIHdhcyBkcm9wcGVkLiBJdCB3 b3VsZCBmaXQgd2VsbCBpbiBDZWRydXMgYW5kIFJQaTQgZHJpdmVyIGFuZCBhZnRlciAKYSAKPiA+ IHF1aWNrIGxvb2ssIGl0IHNlZW1zIHRoYXQgaXQgd2FzIHVzZWQgaW4gZHJpdmVyIGluIGxhdGVy IHBhdGNoLgo+ID4gCj4gCj4gSSdkIGxpa2UgdG8gbWFrZSBzdXJlIGVhY2ggbW9kaWZpY2F0aW9u IHdlIGFyZSBtYWtpbmcgdG8gdGhlIHVBUEkKPiBnb2VzIGluIHRoZSByaWdodCBkaXJlY3Rpb24s IHRoYXQgaXMgaW4gdGhlIGRpcmVjdGlvbiBvZiBtb3ZpbmcKPiB0aGUgQVBJIG91dCBvZiBzdGFn aW5nLgo+IAo+IFNpbmNlIHJldmlld2luZyBlYWNoIGZpZWxkIGlzIHF1aXRlIGhhcmQsIGFuZCBv cGVucyBzb21lIGRpc2N1c3Npb25zLAo+IEkgd2FudGVkIHRvIGtlZXAgdGhpcyBwYXRjaHNldCBz cGVjaWZpYyB0byB3aGF0J3MgbmVlZGVkIGZvciBIYW50cm8gRzIuCj4gCj4gVGhlIFNjYWxpbmcg bWF0cml4IGNvbnRyb2wgaXMgY2VydGFpbmx5IGEgZ29vZCBvbmUsIGFzIHdlbGwgYXMgdGhlIG9u ZXMKPiBuZWVkZWQgZm9yIENlZHJ1cyBhbmQgUlBpNC4gSG93ZXZlciwgSSBmZWVsIGl0J3MgYmV0 dGVyIHRvIGRpc2N1c3MKPiB0aGVtIGluIHRoZWlyIG93biAidUFQSSByZXZpZXciIHNlcmllcyBz byB3ZSBjYW4gcmV2aWV3IGFsbCB0aGUgY2hhbmdlcwo+IHdpdGggYW4gQVBJIGhhdC4KPiAKPiBU aGlzIHdheSB3ZSBkZWNvdXBsZSB0aGUgSGFudHJvIEcyIGRpc2N1c3Npb24gYW5kIHdvcmsgZnJv bSB0aGUgQVBJIHdvcmsuCj4gCj4gQWxzbyBwbGVhc2UgZmVlbCBmcmVlIHRvIHN1Ym1pdCBSRkMg cGF0Y2hlcyBmbyBDZWRydXMgYW5kIFJQaTQKPiAoQVBJIGFuZCBkcml2ZXIgY2hhbmdlcykuIFdl IGNhbiBjZXJ0YWlubHkgc3RhcnQgdGhlIGRpc2N1c3Npb24gYXJvdW5kIHRoYXQsCj4gd2l0aCBk cml2ZXIgY2hhbmdlcyBpbiBjb250ZXh0LgoKSSBkb24ndCBrbm93IG11Y2ggYWJvdXQgUlBpNCBk cml2ZXIsIG9ubHkgZmV3IGltcGxlbWVudGF0aW9uIGRldGFpbHMsIHNvIAp5b3UnbGwgaGF2ZSB0 byBwaW5nIGRldmVsb3BlciB3aG8gd3JvdGUgaXQuIFJlZ2FyZGluZyBIRVZDIG9uIENlZHJ1cyAt IGl0IGhhcyAKb25lIHBhaW4gcG9pbnQgLSBpdCBuZWVkcyBlbnRyeSBwb2ludCB0YWJsZSB3aGlj aCBpbiB0dXJuIG5lZWRzIHN1cHBvcnQgZm9yIAp2YXJpYWJsZSBhcnJheXMgaW4gb3JkZXIgdG8g YmUgZmVhc2FibGUgQUZBSUsuIEkgZG9uJ3QgcGxhbiB0byBkZXZlbG9wIHRoYXQuIApQYXRjaGVz IGZvciBzY2FsaW5nIG1hdHJpeCBhbmQgc2VnbWVudCBhZGRyZXNzIHdlcmUgc2VudCBhIGJpdCBt b3JlIHRoYW4gYSAKeWVhciBhZ28gYnV0IHdlcmUgdHVybmVkIGRvd24gYmVjYXVzZSB0aGV5IGNo YW5nZSBjb250cm9sIHN0cnVjdHVyZXMgKGFtb25nIApvdGhlciB0aGluZ3MpLiBTb3JyeSB0byBz YXksIGJ1dCBJIHdvcmsgb24gb3RoZXIgdGhpbmdzIG5vdywgc28gQ2VkcnVzIHdpbGwgCmhhdmUg dG8gd2FpdC4gQWx0ZXJuYXRpdmVseSwgc29tZW9uZSBjYW4gdGFrZSBteSBwYXRjaGVzIGZyb20g TGlicmVFTEVDLCAKdXBkYXRlIGFuZCBzdWJtaXQgdGhlbS4gVGhleSBhcmUgaW4gdXNlIGZvciBh IGxvbmcgdGltZS4KCkJlc3QgcmVnYXJkcywKSmVybmVqCgo+IAo+IEhvcGUgSSdtIG1ha2luZyBz ZW5zZSBoZXJlIDopCj4gCj4gVGhhbmtzLAo+IEV6ZXF1aWVsCj4gCj4gPiBCZXN0IHJlZ2FyZHMs Cj4gPiBKZXJuZWoKPiA+IAo+ID4gPiAKPiA+ID4gPiAgICAgICogLSBfX3U4Cj4gPiA+ID4gICAg ICAgIC0gYGBuYWxfdW5pdF90eXBlYGAKPiA+ID4gPiAgICAgICAgLQo+ID4gPiA+IEBAIC0zNDIy LDI4ICszNDU1LDIwIEBAIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2hldmNfc2l6ZV9vZl9sZW5ndGhf ZmllbGQgCi0KPiA+ID4gPiAgICAgICogLSBfX3U4Cj4gPiA+ID4gICAgICAgIC0gYGBwaWNfc3Ry dWN0YGAKPiA+ID4gPiAgICAgICAgLQo+ID4gPiA+IC0gICAgKiAtIF9fdTgKPiA+ID4gPiAtICAg ICAgLSBgYG51bV9hY3RpdmVfZHBiX2VudHJpZXNgYAo+ID4gPiA+IC0gICAgICAtIFRoZSBudW1i ZXIgb2YgZW50cmllcyBpbiBgYGRwYmBgLgo+ID4gPiAKPiA+ID4gTmVlZCB0byBleHBsYWluIGlu IHRoZSBjb21taXQgZGVzY3JpcHRpb24gd2h5IHRoaXMgZmllbGQgaXMgbW92ZWQuCj4gPiA+IAo+ ID4gPiA+ICAgICAgKiAtIF9fdTgKPiA+ID4gPiAgICAgICAgLSBgYHJlZl9pZHhfbDBbVjRMMl9I RVZDX0RQQl9FTlRSSUVTX05VTV9NQVhdYGAKPiA+ID4gPiAgICAgICAgLSBUaGUgbGlzdCBvZiBM MCByZWZlcmVuY2UgZWxlbWVudHMgYXMgaW5kaWNlcyBpbiB0aGUgRFBCLgo+ID4gPiA+ICAgICAg KiAtIF9fdTgKPiA+ID4gPiAgICAgICAgLSBgYHJlZl9pZHhfbDFbVjRMMl9IRVZDX0RQQl9FTlRS SUVTX05VTV9NQVhdYGAKPiA+ID4gPiAgICAgICAgLSBUaGUgbGlzdCBvZiBMMSByZWZlcmVuY2Ug ZWxlbWVudHMgYXMgaW5kaWNlcyBpbiB0aGUgRFBCLgo+ID4gPiA+ICsgICAgKiAtIF9fdTE2Cj4g PiA+ID4gKyAgICAgIC0gYGBzaG9ydF90ZXJtX3JlZl9waWNfc2V0X3NpemVgYAo+ID4gPiA+ICsK PiA+ID4gCj4gPiA+IE5vdCB1c2VkLgo+ID4gPiAKPiA+ID4gPiAgICAgICAtCj4gPiA+ID4gKyAg ICAqIC0gX191MTYKPiA+ID4gPiArICAgICAgLSBgYGxvbmdfdGVybV9yZWZfcGljX3NldF9zaXpl YGAKPiA+ID4gPiArICAgICAgLQo+ID4gPiAKPiA+ID4gTm90IHVzZWQuCj4gPiA+IAo+ID4gPiA+ ICAgICAgKiAtIF9fdTgKPiA+ID4gPiAtICAgICAgLSBgYG51bV9ycHNfcG9jX3N0X2N1cnJfYmVm b3JlYGAKPiA+ID4gPiAtICAgICAgLSBUaGUgbnVtYmVyIG9mIHJlZmVyZW5jZSBwaWN0dXJlcyBp biB0aGUgc2hvcnQtdGVybSBzZXQgdGhhdCAKY29tZSAKPiA+IGJlZm9yZQo+ID4gPiA+IC0gICAg ICAgIHRoZSBjdXJyZW50IGZyYW1lLgo+ID4gPiAKPiA+ID4gSWYgdGhpcyBtYXRjaGVzIE51bVBv Y1N0Q3VyckJlZm9yZSBmcm9tIHNlY3Rpb24gOC4zLjIgIkRlY29kaW5nIHByb2Nlc3MgCmZvciAK PiA+IHJlZmVyZW5jZSBwaWN0dXJlIHNldCIKPiA+ID4gdGhlbiBJIHdvdWxkIGRvY3VtZW50IHRo YXQuIEFuZCBwZXJoYXBzIHJlbmFtZSBpdCB0byAKbnVtX3BvY19zdF9jdXJyX2JlZm9yZS4KPiA+ ID4gCj4gPiA+ID4gLSAgICAqIC0gX191OAo+ID4gPiA+IC0gICAgICAtIGBgbnVtX3Jwc19wb2Nf c3RfY3Vycl9hZnRlcmBgCj4gPiA+ID4gLSAgICAgIC0gVGhlIG51bWJlciBvZiByZWZlcmVuY2Ug cGljdHVyZXMgaW4gdGhlIHNob3J0LXRlcm0gc2V0IHRoYXQgCmNvbWUgCj4gPiBhZnRlcgo+ID4g PiA+IC0gICAgICAgIHRoZSBjdXJyZW50IGZyYW1lLgo+ID4gPiAKPiA+ID4gRGl0dG8uCj4gPiA+ IAo+ID4gPiA+IC0gICAgKiAtIF9fdTgKPiA+ID4gPiAtICAgICAgLSBgYG51bV9ycHNfcG9jX2x0 X2N1cnJgYAo+ID4gPiA+IC0gICAgICAtIFRoZSBudW1iZXIgb2YgcmVmZXJlbmNlIHBpY3R1cmVz IGluIHRoZSBsb25nLXRlcm0gc2V0Lgo+ID4gPiAKPiA+ID4gRGl0dG8uCj4gPiA+IAo+ID4gPiBB bHNvLCBJJ2QgbGlrZSB0aGUgY2hhbmdlcyB0aGF0IG1vdmUgZmllbGRzIGZyb20gCj4gPiBWNEwy X0NJRF9NUEVHX1ZJREVPX0hFVkNfU0xJQ0VfUEFSQU1TCj4gPiA+IHRvIHRoZSBuZXcgVjRMMl9D SURfTVBFR19WSURFT19IRVZDX0RFQ09ERV9QQVJBTVMgY29udHJvbCwgdG8gYmUgaW4gCnRoZWly Cj4gPiA+IHBhdGNoLgo+ID4gPiAKPiA+ID4gVGhhdCB3aWxsIGFsbG93IHVzIHRvIHB1dCBpbiB0 aGUgY29tbWl0IGRlc2NyaXB0aW9uIGEgcHJvcGVyCj4gPiA+IGV4cGxhbmF0aW9uIG9mIHdoeSBh cmUgZmllbGRzIGJlaW5nIG1vdmVkLiBOb3RoaW5nIGZhbmN5LCBzaW1wbHkKPiA+ID4gZXhwbGFp bmluZyB0aGF0IHRoZXNlIHZhcmlhYmxlcyBjb21lIGZyb20gc2VjdGlvbiA4LjMuMgo+ID4gPiAi RGVjb2RpbmcgcHJvY2VzcyBmb3IgcmVmZXJlbmNlIHBpY3R1cmUgc2V0Iiwgd2hpY2ggZGVzY3Jp YmVzCj4gPiA+IGEgcHJvY2VzcyBpbnZva2VkIG9uY2UgcGVyIHBpY3R1cmUsIHNvIHRoZXkgYXJl IG5vdCBwZXItc2xpY2UuCj4gPiA+IAo+ID4gPiA+IC0gICAgKiAtIF9fdTgKPiA+ID4gPiAtICAg ICAgLSBgYHBhZGRpbmdbN11gYAo+ID4gPiA+ICsgICAgICAtIGBgcGFkZGluZ2BgCj4gPiA+ID4g ICAgICAgIC0gQXBwbGljYXRpb25zIGFuZCBkcml2ZXJzIG11c3Qgc2V0IHRoaXMgdG8gemVyby4K PiA+ID4gPiAgICAgICogLSBzdHJ1Y3QgOmM6dHlwZTpgdjRsMl9oZXZjX2RwYl9lbnRyeWAKPiA+ ID4gPiAgICAgICAgLSBgYGRwYltWNEwyX0hFVkNfRFBCX0VOVFJJRVNfTlVNX01BWF1gYAo+ID4g PiA+IEBAIC0zNjQ2LDMgKzM2NzEsNzQgQEAgZW51bSB2NGwyX21wZWdfdmlkZW9faGV2Y19zaXpl X29mX2xlbmd0aF9maWVsZCAtCj4gPiA+ID4gICAgICBzbyB0aGlzIGhhcyB0byBjb21lIGZyb20g Y2xpZW50Lgo+ID4gPiA+ICAgICAgVGhpcyBpcyBhcHBsaWNhYmxlIHRvIEgyNjQgYW5kIHZhbGlk IFJhbmdlIGlzIGZyb20gMCB0byA2My4KPiA+ID4gPiAgICAgIFNvdXJjZSBSZWMuIElUVS1UIEgu MjY0ICgwNi8yMDE5KTsgRy43LjQuMS4xLCBHLjguOC4xLgo+ID4gPiA+ICsKPiA+ID4gPiArYGBW NEwyX0NJRF9NUEVHX1ZJREVPX0hFVkNfREVDT0RFX1BBUkFNUyAoc3RydWN0KWBgCj4gPiA+ID4g KyAgICBTcGVjaWZpZXMgdmFyaW91cyBkZWNvZGUgcGFyYW1ldGVycywgZXNwZWNpYWxseSB0aGUg cmVmZXJlbmNlcyAKcGljdHVyZSAKPiA+IG9yZGVyCj4gPiA+ID4gKyAgICBjb3VudCAoUE9DKSBm b3IgYWxsIHRoZSBsaXN0cyAoc2hvcnQsIGxvbmcsIGJlZm9yZSwgY3VycmVudCwgCmFmdGVyKSAK PiA+IGFuZCB0aGUKPiA+ID4gPiArICAgIG51bWJlciBvZiBlbnRyaWVzIGZvciBlYWNoIG9mIHRo ZW0uCj4gPiA+ID4gKyAgICBUaGVzZSBwYXJhbWV0ZXJzIGFyZSBkZWZpbmVkIGFjY29yZGluZyB0 byA6cmVmOmBoZXZjYC4KPiA+ID4gPiArICAgIFRoZXkgYXJlIGRlc2NyaWJlZCBpbiBzZWN0aW9u IDguMyAiU2xpY2UgZGVjb2RpbmcgcHJvY2VzcyIgb2YgdGhlCj4gPiA+ID4gKyAgICBzcGVjaWZp Y2F0aW9uLgo+ID4gPiA+ICsKPiA+ID4gPiArLi4gYzp0eXBlOjogdjRsMl9jdHJsX2hldmNfZGVj b2RlX3BhcmFtcwo+ID4gPiA+ICsKPiA+ID4gPiArLi4gY3NzY2xhc3M6OiBsb25ndGFibGUKPiA+ ID4gPiArCj4gPiA+ID4gKy4uIGZsYXQtdGFibGU6OiBzdHJ1Y3QgdjRsMl9jdHJsX2hldmNfZGVj b2RlX3BhcmFtcwo+ID4gPiA+ICsgICAgOmhlYWRlci1yb3dzOiAgMAo+ID4gPiA+ICsgICAgOnN0 dWItY29sdW1uczogMAo+ID4gPiA+ICsgICAgOndpZHRoczogICAgICAgMSAxIDIKPiA+ID4gPiAr Cj4gPiA+ID4gKyAgICAqIC0gX19zMzIKPiA+ID4gPiArICAgICAgLSBgYHBpY19vcmRlcl9jbnRf dmFsYGAKPiA+ID4gPiArICAgICAgLQo+ID4gPiAKPiA+ID4gQ2FuIGJlIGRvY3VtZW50ZWQgYXM6 Cj4gPiA+IAo+ID4gPiAiIiIKPiA+ID4gUGljT3JkZXJDbnRWYWwgYXMgZGVzY3JpYmVkIGluIHNl Y3Rpb24gOC4zLjEgIkRlY29kaW5nIHByb2Nlc3MKPiA+ID4gZm9yIHBpY3R1cmUgb3JkZXIgY291 bnQiIG9mIHRoZSBzcGVjaWZpY2F0aW9uLgo+ID4gPiAiIiIKPiA+ID4gCj4gPiA+IE5vdGUgdGhh dCBzbmFrZSBjYXNlIGlzIHVzZWQgdG8gbWF0Y2ggdGhlIGtlcm5lbCBzdHlsZSwKPiA+ID4gYnV0 IG90aGVyIHRoYW4gdGhhdCB3ZSB0cnkgdG8ga2VlcCB0aGUgSEVWQyBzcGVjIHZhcmlhYmxlCj4g PiA+IG5hbWVzLgo+ID4gPiAKPiA+ID4gPiArICAgICogLSBfX3U4Cj4gPiA+ID4gKyAgICAgIC0g YGBudW1fYWN0aXZlX2RwYl9lbnRyaWVzYGAKPiA+ID4gPiArICAgICAgLSBUaGUgbnVtYmVyIG9m IGVudHJpZXMgaW4gYGBkcGJgYC4KPiA+ID4gPiArICAgICogLSBzdHJ1Y3QgOmM6dHlwZTpgdjRs Ml9oZXZjX2RwYl9lbnRyeWAKPiA+ID4gPiArICAgICAgLSBgYGRwYltWNEwyX0hFVkNfRFBCX0VO VFJJRVNfTlVNX01BWF1gYAo+ID4gPiA+ICsgICAgICAtIFRoZSBkZWNvZGVkIHBpY3R1cmUgYnVm ZmVyLCBmb3IgbWV0YS1kYXRhIGFib3V0IHJlZmVyZW5jZSAKZnJhbWVzLgo+ID4gPiAKPiA+ID4g VGhlIERQQiBpcyBoZXJlLCBidXQgaXQgc2VlbXMgaXQncyBhbHNvIGluIHRoZSBzbGljZSBjb250 cm9sPwo+ID4gPiAKPiA+ID4gPiArICAgICogLSBfX3U4Cj4gPiA+ID4gKyAgICAgIC0gYGBudW1f cnBzX3BvY19zdF9jdXJyX2JlZm9yZWBgCj4gPiA+ID4gKyAgICAgIC0gVGhlIG51bWJlciBvZiBy ZWZlcmVuY2UgcGljdHVyZXMgaW4gdGhlIHNob3J0LXRlcm0gc2V0IHRoYXQgCmNvbWUgCj4gPiBi ZWZvcmUKPiA+ID4gPiArICAgICAgICB0aGUgY3VycmVudCBmcmFtZS4KPiA+ID4gPiArICAgICog LSBfX3U4Cj4gPiA+ID4gKyAgICAgIC0gYGBudW1fcnBzX3BvY19zdF9jdXJyX2FmdGVyYGAKPiA+ ID4gPiArICAgICAgLSBUaGUgbnVtYmVyIG9mIHJlZmVyZW5jZSBwaWN0dXJlcyBpbiB0aGUgc2hv cnQtdGVybSBzZXQgdGhhdCAKY29tZSAKPiA+IGFmdGVyCj4gPiA+ID4gKyAgICAgICAgdGhlIGN1 cnJlbnQgZnJhbWUuCj4gPiA+ID4gKyAgICAqIC0gX191OAo+ID4gPiA+ICsgICAgICAtIGBgbnVt X3Jwc19wb2NfbHRfY3VycmBgCj4gPiA+ID4gKyAgICAgIC0gVGhlIG51bWJlciBvZiByZWZlcmVu Y2UgcGljdHVyZXMgaW4gdGhlIGxvbmctdGVybSBzZXQuCj4gPiA+ID4gKyAgICAqIC0gX191OAo+ ID4gPiA+ICsgICAgICAtIGBgcnBzX3N0X2N1cnJfYmVmb3JlW1Y0TDJfSEVWQ19EUEJfRU5UUklF U19OVU1fTUFYXWBgCj4gPiA+ID4gKyAgICAgIC0KPiA+ID4gPiArICAgICogLSBfX3U4Cj4gPiA+ ID4gKyAgICAgIC0gYGBycHNfc3RfY3Vycl9hZnRlcltWNEwyX0hFVkNfRFBCX0VOVFJJRVNfTlVN X01BWF1gYAo+ID4gPiA+ICsgICAgICAtCj4gPiA+ID4gKyAgICAqIC0gX191OAo+ID4gPiA+ICsg ICAgICAtIGBgcnBzX2x0X2N1cnJbVjRMMl9IRVZDX0RQQl9FTlRSSUVTX05VTV9NQVhdYGAKPiA+ ID4gPiArICAgICAgLQo+ID4gPiAKPiA+ID4gQ291bGQgeW91IGRvY3VtZW50IHRoZXNlIGFzIHdl bGw/Cj4gPiA+IAo+ID4gPiBUaGFua3MgYSBsb3QsCj4gPiA+IEV6ZXF1aWVsCj4gPiA+IAo+ID4g PiAKPiA+IAo+ID4gCj4gCj4gCj4gCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1r ZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWls bWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK