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,UNPARSEABLE_RELAY, 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 0139CC433E0 for ; Thu, 25 Feb 2021 17:36:53 +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 6E5C064EC3 for ; Thu, 25 Feb 2021 17:36:52 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6E5C064EC3 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=collabora.com 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:Date:To:From: Subject:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=Hn23O0r9Nn2VLdkS0b/StSSADiMX/0jOux/FeWOIwx0=; b=GEdqtHb5Xfirh2JXRIXN1gZbF Ce0cArwvEHdG719M5BkJ5/xycuDbb+2ooDGyDnNJOpqSAW8gPvYoy1YBIEXbmUd9hhOeVh4o7lYZd v1LnRKmm0hcBE6L84fZZQ/GDjTXqDJpEBj7ZbRBrM5/P3FdNz6+XWgV4HeF9cniQ4HsEVp1AE6uXl rpsBkiU1YbXoVMrWl9iB7nBCLKCcDpurs4vh+xor7psTFQDbuv3wUC2TD+QZvWI0aJ16fkO3r00rc 8u8VOftY2BZBh3hR8nOsVj+9nUcxaeVey9po5dOcEop22eTs6yMGj3hMwjVVrOKGpx/6X9nNpIIFF JGz3MnZyQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1lFKXr-0003nR-Tp; Thu, 25 Feb 2021 17:35:23 +0000 Received: from bhuna.collabora.co.uk ([2a00:1098:0:82:1000:25:2eeb:e3e3]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1lFKXo-0003m7-H6; Thu, 25 Feb 2021 17:35:22 +0000 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: ezequiel) with ESMTPSA id 4512B1F4633D Message-ID: Subject: Re: Re: [PATCH v3 1/9] media: hevc: Modify structures to follow H265 ITU spec From: Ezequiel Garcia To: Jernej =?UTF-8?Q?=C5=A0krabec?= , 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 Date: Thu, 25 Feb 2021 14:34:48 -0300 In-Reply-To: <233731323.ucs1DXFtIZ@kista> References: <20210222122406.41782-1-benjamin.gaignard@collabora.com> <20210222122406.41782-2-benjamin.gaignard@collabora.com> <2109948614dc0e3f253d69ca92a4b63fe8828bfb.camel@collabora.com> <233731323.ucs1DXFtIZ@kista> Organization: Collabora User-Agent: Evolution 3.38.2-1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210225_123520_850281_322A5921 X-CRM114-Status: GOOD ( 46.70 ) 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 SGV5IEplcm5laiwKCk9uIFRodSwgMjAyMS0wMi0yNSBhdCAxODowMSArMDEwMCwgSmVybmVqIMWg a3JhYmVjIHdyb3RlOgo+IEhpIEV6ZXF1aWVsLAo+IAo+IERuZSDEjWV0cnRlaywgMjUuIGZlYnJ1 YXIgMjAyMSBvYiAxNDowOTo1MiBDRVQgamUgRXplcXVpZWwgR2FyY2lhIG5hcGlzYWwoYSk6Cj4g PiBIaSBCZW5qYW1pbiwKPiA+IAo+ID4gVGhhbmtzIGZvciB0aGUgZ29vZCB3b3JrLgo+ID4gCj4g PiBPbiBNb24sIDIwMjEtMDItMjIgYXQgMTM6MjMgKzAxMDAsIEJlbmphbWluIEdhaWduYXJkIHdy b3RlOgo+ID4gPiBUaGUgSC4yNjUgSVRVIHNwZWNpZmljYXRpb24gKHNlY3Rpb24gNy40KSBkZWZp bmUgdGhlIGdlbmVyYWwKPiA+ID4gc2xpY2Ugc2VnbWVudCBoZWFkZXIgc2VtYW50aWNzLgo+ID4g PiBNb2RpZmllZC9hZGRlZCBmaWVsZHMgYXJlOgo+ID4gPiAtIHZpZGVvX3BhcmFtZXRlcl9zZXRf aWQ6ICg3LjQuMy4xKSBpZGVudGlmaWVzIHRoZSBWUFMgZm9yCj4gPiA+IHJlZmVyZW5jZSBieSBv dGhlciBzeW50YXggZWxlbWVudHMuCj4gPiA+IC0gc2VxX3BhcmFtZXRlcl9zZXRfaWQ6ICg3LjQu My4yLjEpIHNwZWNpZmllcyB0aGUgdmFsdWUgb2YKPiA+ID4gdGhlIHZwc192aWRlb19wYXJhbWV0 ZXJfc2V0X2lkIG9mIHRoZSBhY3RpdmUgVlBTLgo+ID4gPiAtIGNocm9tYV9mb3JtYXRfaWRjOiAo Ny40LjMuMi4xKSBzcGVjaWZpZXMgdGhlIGNocm9tYSBzYW1wbGluZwo+ID4gPiDCoHJlbGF0aXZl IHRvIHRoZSBsdW1hIHNhbXBsaW5nCj4gPiA+IC0gcGljX3BhcmFtZXRlcl9zZXRfaWQ6ICg3LjQu My4zLjEpIGlkZW50aWZpZXMgdGhlIFBQUyBmb3IKPiA+ID4gcmVmZXJlbmNlIGJ5IG90aGVyIHN5 bnRheCBlbGVtZW50cwo+ID4gPiAtIG51bV9yZWZfaWR4X2wwX2RlZmF1bHRfYWN0aXZlX21pbnVz MTogKDcuNC4zLjMuMSkgc3BlY2lmaWVzCj4gPiA+IHRoZSBpbmZlcnJlZCB2YWx1ZSBvZiBudW1f cmVmX2lkeF9sMF9hY3RpdmVfbWludXMxCj4gPiA+IC0gbnVtX3JlZl9pZHhfbDFfZGVmYXVsdF9h Y3RpdmVfbWludXMxOiAoNy40LjMuMy4xKSBzcGVjaWZpZXMKPiA+ID4gdGhlIGluZmVycmVkIHZh bHVlIG9mIG51bV9yZWZfaWR4X2wxX2FjdGl2ZV9taW51czEKPiA+ID4gLSBzbGljZV9zZWdtZW50 X2FkZHI6ICg3LjQuNy4xKSBzcGVjaWZpZXMgdGhlIGFkZHJlc3Mgb2YKPiA+ID4gdGhlIGZpcnN0 IGNvZGluZyB0cmVlIGJsb2NrIGluIHRoZSBzbGljZSBzZWdtZW50Cj4gPiA+IC0gbnVtX2VudHJ5 X3BvaW50X29mZnNldHM6ICg3LjQuNy4xKSBzcGVjaWZpZXMgdGhlIG51bWJlciBvZgo+ID4gPiBl bnRyeV9wb2ludF9vZmZzZXRfbWludXMxWyBpIF0gc3ludGF4IGVsZW1lbnRzIGluIHRoZSBzbGlj ZSBoZWFkZXIKPiA+ID4gCj4gPiA+IEFkZCBIRVZDIGRlY29kZSBwYXJhbXMgY29udGFpbnMgdGhl IGluZm9ybWF0aW9uIHVzZWQgaW4gc2VjdGlvbgo+ID4gPiAiOC4zIFNsaWNlIGRlY29kaW5nIHBy b2Nlc3MiIG9mIHRoZSBzcGVjaWZpY2F0aW9uIHRvIGxldCB0aGUgaGFyZHdhcmUKPiA+ID4gcGVy Zm9ybSBkZWNvZGluZyBvZiBhIHNsaWNlcy4KPiA+ID4gCj4gPiA+IEFkYXB0IENlZHJ1cyBkcml2 ZXIgYWNjb3JkaW5nIHRvIHRoZXNlIGNoYW5nZXMuCj4gPiA+IAo+ID4gPiBTaWduZWQtb2ZmLWJ5 OiBCZW5qYW1pbiBHYWlnbmFyZCA8YmVuamFtaW4uZ2FpZ25hcmRAY29sbGFib3JhLmNvbT4KPiA+ ID4gLS0tCj4gPiA+IHZlcnNpb24gMzoKPiA+ID4gLSBBZGQgZG9jdW1lbnRhdGlvbiBhYm91dCB0 aGUgbmV3IHN0cnVjdHVlcnMgYW5kIGZpZWxkcy4KPiA+ID4gCj4gPiA+IHZlcnNpb24gMjoKPiA+ ID4gLSByZW1vdmUgYWxsIGNoYW5nZSByZWxhdGVkIHRvIHNjYWxpbmcKPiA+ID4gLSBzcXVhc2gg Y29tbWl0cyB0byBhIGNvaGVyZW50IHNwbGl0Cj4gPiA+IC0gYmUgbW9yZSB2ZXJib3NlIGFib3V0 IHRoZSBhZGRlZCBmaWVsZHMKPiA+ID4gCj4gPiA+IMKgLi4uL21lZGlhL3Y0bC9leHQtY3RybHMt Y29kZWMucnN0wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHwgMTI2ICsrKysrKysrKysrKysrKy0t LQo+ID4gPiDCoC4uLi9tZWRpYS92NGwvdmlkaW9jLXF1ZXJ5Y3RybC5yc3TCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHzCoMKgIDYgKwo+ID4gPiDCoGRyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDIt Y3RybHMuY8KgwqDCoMKgwqDCoMKgwqDCoCB8wqAgMjYgKysrLQo+ID4gPiDCoGRyaXZlcnMvc3Rh Z2luZy9tZWRpYS9zdW54aS9jZWRydXMvY2VkcnVzLmPCoMKgIHzCoMKgIDYgKwo+ID4gPiDCoGRy aXZlcnMvc3RhZ2luZy9tZWRpYS9zdW54aS9jZWRydXMvY2VkcnVzLmjCoMKgIHzCoMKgIDEgKwo+ ID4gPiDCoC4uLi9zdGFnaW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXNfZGVjLmPCoMKgIHzC oMKgIDIgKwo+ID4gPiDCoC4uLi9zdGFnaW5nL21lZGlhL3N1bnhpL2NlZHJ1cy9jZWRydXNfaDI2 NS5jwqAgfMKgwqAgNiArLQo+ID4gPiDCoGluY2x1ZGUvbWVkaWEvaGV2Yy1jdHJscy5owqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDQ1ICsrKysrLS0KPiA+ID4gwqA4 IGZpbGVzIGNoYW5nZWQsIDE4NiBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKPiA+ID4g Cj4gPiA+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3VzZXJzcGFjZS1hcGkvbWVkaWEvdjRs L2V4dC1jdHJscy1jb2RlYy5yc3QgYi8KPiBEb2N1bWVudGF0aW9uL3VzZXJzcGFjZS1hcGkvbWVk aWEvdjRsL2V4dC1jdHJscy1jb2RlYy5yc3QKPiA+ID4gaW5kZXggMDA5NDRlOTdkNjM4Li41ZTZk NzdlODU4YzAgMTAwNjQ0Cj4gPiA+IC0tLSBhL0RvY3VtZW50YXRpb24vdXNlcnNwYWNlLWFwaS9t ZWRpYS92NGwvZXh0LWN0cmxzLWNvZGVjLnJzdAo+ID4gPiArKysgYi9Eb2N1bWVudGF0aW9uL3Vz ZXJzcGFjZS1hcGkvbWVkaWEvdjRsL2V4dC1jdHJscy1jb2RlYy5yc3QKPiA+ID4gQEAgLTMxMDks NiArMzEwOSwxNSBAQCBlbnVtIHY0bDJfbXBlZ192aWRlb19oZXZjX3NpemVfb2ZfbGVuZ3RoX2Zp ZWxkIC0KPiA+ID4gwqDCoMKgwqAgOnN0dWItY29sdW1uczogMAo+ID4gPiDCoMKgwqDCoCA6d2lk dGhzOsKgwqDCoMKgwqDCoCAxIDEgMgo+ID4gPiDCoAo+ID4gPiArwqDCoMKgICogLSBfX3U4Cj4g PiA+ICvCoMKgwqDCoMKgIC0gYGB2aWRlb19wYXJhbWV0ZXJfc2V0X2lkYGAKPiA+ID4gK8KgwqDC oMKgwqAgLSBJZGVudGlmaWVzIHRoZSBWUFMgZm9yIHJlZmVyZW5jZSBieSBvdGhlciBzeW50YXgg ZWxlbWVudHMKPiA+ID4gK8KgwqDCoCAqIC0gX191OAo+ID4gPiArwqDCoMKgwqDCoCAtIGBgc2Vx X3BhcmFtZXRlcl9zZXRfaWTMgGBgCj4gPiA+ICvCoMKgwqDCoMKgIC0gU3BlY2lmaWVzIHRoZSB2 YWx1ZSBvZiB0aGUgdnBzX3ZpZGVvX3BhcmFtZXRlcl9zZXRfaWQgb2YgdGhlIAo+IGFjdGl2ZSBW UFMKPiA+ID4gK8KgwqDCoCAqIC0gX191OAo+ID4gPiArwqDCoMKgwqDCoCAtIGBgY2hyb21hX2Zv cm1hdF9pZGNgYAo+ID4gPiArwqDCoMKgwqDCoCAtIFNwZWNpZmllcyB0aGUgY2hyb21hIHNhbXBs aW5nIHJlbGF0aXZlIHRvIHRoZSBsdW1hIHNhbXBsaW5nCj4gPiAKPiA+IE5vbmUgb2YgdGhlc2Ug ZmllbGRzIHNlZW0gbmVlZGVkIGZvciB0aGUgSGFudHJvIEcyIGRyaXZlciwKPiA+IHNvIEkgc3Vn Z2VzdCB5b3UgZHJvcCB0aGVtIGZvciBub3cuCj4gPiAKPiA+ID4gwqDCoMKgwqAgKiAtIF9fdTE2 Cj4gPiA+IMKgwqDCoMKgwqDCoCAtIGBgcGljX3dpZHRoX2luX2x1bWFfc2FtcGxlc2BgCj4gPiA+ IMKgwqDCoMKgwqDCoCAtCj4gPiA+IEBAIC0zMTcyLDYgKzMxODEsOSBAQCBlbnVtIHY0bDJfbXBl Z192aWRlb19oZXZjX3NpemVfb2ZfbGVuZ3RoX2ZpZWxkIC0KPiA+ID4gwqDCoMKgwqAgKiAtIF9f dTgKPiA+ID4gwqDCoMKgwqDCoMKgIC0gYGBjaHJvbWFfZm9ybWF0X2lkY2BgCj4gPiA+IMKgwqDC oMKgwqDCoCAtCj4gPiA+ICvCoMKgwqAgKiAtIF9fdTgKPiA+ID4gK8KgwqDCoMKgwqAgLSBgYG51 bV9zbGljZXNgYAo+ID4gPiArCj4gPiAKPiA+IE5vdCB1c2VkLCBidXQgYWxzbyBkb2Vzbid0IHNl ZW0gcGFydCBvZiB0aGUgU1BTIHN5bnRheC4gSWYgd2UgaGF2ZSB0bwo+ID4gcGFzcyB0aGUgbnVt YmVyIG9mIHNsaWNlcywgd2UnbGwgbmVlZCBhbm90aGVyIG1lY2hhbmlzbS4KPiA+IAo+ID4gPiDC oMKgwqDCoMKgIC0KPiA+ID4gwqDCoMKgwqAgKiAtIF9fdTY0Cj4gPiA+IMKgwqDCoMKgwqDCoCAt IGBgZmxhZ3NgYAo+ID4gPiDCoMKgwqDCoMKgwqAgLSBTZWUgOnJlZjpgU2VxdWVuY2UgUGFyYW1l dGVyIFNldCBGbGFncyA8aGV2Y19zcHNfZmxhZ3M+YAo+ID4gPiBAQCAtMzIzMSw5ICszMjQzLDE4 IEBAIGVudW0gdjRsMl9tcGVnX3ZpZGVvX2hldmNfc2l6ZV9vZl9sZW5ndGhfZmllbGQgLQo+ID4g PiDCoMKgwqDCoCA6c3R1Yi1jb2x1bW5zOiAwCj4gPiA+IMKgwqDCoMKgIDp3aWR0aHM6wqDCoMKg wqDCoMKgIDEgMSAyCj4gPiA+IMKgCj4gPiA+ICvCoMKgwqAgKiAtIF9fdTgKPiA+ID4gK8KgwqDC oMKgwqAgLSBgYHBpY19wYXJhbWV0ZXJfc2V0X2lkYGAKPiA+ID4gK8KgwqDCoMKgwqAgLSBJZGVu dGlmaWVzIHRoZSBQUFMgZm9yIHJlZmVyZW5jZSBieSBvdGhlciBzeW50YXggZWxlbWVudHMKPiA+ IAo+ID4gTm90IHVzZWQuCj4gPiAKPiA+ID4gwqDCoMKgwqAgKiAtIF9fdTgKPiA+ID4gwqDCoMKg wqDCoMKgIC0gYGBudW1fZXh0cmFfc2xpY2VfaGVhZGVyX2JpdHNgYAo+ID4gPiDCoMKgwqDCoMKg wqAgLQo+ID4gPiArwqDCoMKgICogLSBfX3U4Cj4gPiA+ICvCoMKgwqDCoMKgIC0gYGBudW1fcmVm X2lkeF9sMF9kZWZhdWx0X2FjdGl2ZV9taW51czFgYAo+ID4gPiArwqDCoMKgwqDCoCAtIFNwZWNp ZmllcyB0aGUgaW5mZXJyZWQgdmFsdWUgb2YgbnVtX3JlZl9pZHhfbDBfYWN0aXZlX21pbnVzMQo+ ID4gPiArwqDCoMKgICogLSBfX3U4Cj4gPiA+ICvCoMKgwqDCoMKgIC0gYGBudW1fcmVmX2lkeF9s MV9kZWZhdWx0X2FjdGl2ZV9taW51czFgYAo+ID4gPiArwqDCoMKgwqDCoCAtIFNwZWNpZmllcyB0 aGUgaW5mZXJyZWQgdmFsdWUgb2YgbnVtX3JlZl9pZHhfbDFfYWN0aXZlX21pbnVzMQo+ID4gPiDC oMKgwqDCoCAqIC0gX19zOAo+ID4gPiDCoMKgwqDCoMKgwqAgLSBgYGluaXRfcXBfbWludXMyNmBg Cj4gPiA+IMKgwqDCoMKgwqDCoCAtCj4gPiA+IEBAIC0zMzQyLDYgKzMzNjMsMTIgQEAgZW51bSB2 NGwyX21wZWdfdmlkZW9faGV2Y19zaXplX29mX2xlbmd0aF9maWVsZCAtCj4gPiA+IMKgwqDCoMKg ICogLSBgYFY0TDJfSEVWQ19QUFNfRkxBR19TTElDRV9TRUdNRU5UX0hFQURFUl9FWFRFTlNJT05f UFJFU0VOVGBgCj4gPiA+IMKgwqDCoMKgwqDCoCAtIDB4MDAwNDAwMDAKPiA+ID4gwqDCoMKgwqDC oMKgIC0KPiA+ID4gK8KgwqDCoCAqIC0gYGBWNEwyX0hFVkNfUFBTX0ZMQUdfREVCTE9DS0lOR19G SUxURVJfQ09OVFJPTF9QUkVTRU5UYGAKPiA+ID4gK8KgwqDCoMKgwqAgLSAweDAwMDgwMDAwCj4g PiA+ICvCoMKgwqDCoMKgIC0KPiA+ID4gK8KgwqDCoCAqIC0gYGBWNEwyX0hFVkNfUFBTX0ZMQUdf VU5JRk9STV9TUEFDSU5HYGAKPiA+ID4gK8KgwqDCoMKgwqAgLSAweDAwMTAwMDAwCj4gPiA+ICvC oMKgwqDCoMKgIC0KPiA+ID4gwqAKPiA+IAo+ID4gSSBzdWdnZXN0IHRvIGRvIGFsbCB0aGUgUFBT IGNvbnRyb2wgY2hhbmdlcyBpbiBhIHNlcGFyYXRlIHBhdGNoLAo+ID4gZmVlbHMgZWFzaWVyIHRv IHJldmlldyBhbmQgY2xlYW5lciBhcyB5b3UgY2FuIGV4cGxhaW4gdGhlCj4gPiBjaGFuZ2VzIHdp dGggbW9yZSBkZXRhaWwgaW4gdGhlIGNvbW1pdCBkZXNjcmlwdGlvbi4KPiA+IAo+ID4gTG9va2lu ZyBhdCB0aGUgUFBTIHN5bnRheCBmb3IgdGlsZXMsIEknbSB3b25kZXJpbmcgaWYgdGhlc2UKPiA+ IGRlc2VydmUgdGhlaXIgb3duIGNvbnRyb2wsIHdoaWNoIHdvdWxkIGJlIHVzZWQgaWYgdGlsZXMg YXJlIGVuYWJsZWQsCj4gPiBpLmUuIFY0TDJfSEVWQ19QUFNfRkxBR19USUxFU19FTkFCTEVEIGlz IHNldC4KPiA+IAo+ID4gwqDCoMKgwqDCoMKgwqAgX191OMKgwqDCoCBudW1fdGlsZV9jb2x1bW5z X21pbnVzMTvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAKPiA+IMKgwqDCoMKgwqDCoMKgIF9fdTjC oMKgwqAgbnVtX3RpbGVfcm93c19taW51czE7wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Cj4gPiDCoMKgwqDCoMKgwqDCoCBfX3U4wqDCoMKgIGNvbHVtbl93aWR0aF9taW51czFbMjBdO8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIAo+ID4gwqDCoMKgwqDCoMKgwqAgX191OMKgwqDCoCByb3df aGVpZ2h0X21pbnVzMVsyMl07wqDCoMKgIAo+ID4gCj4gPiBOb3Qgc29tZXRoaW5nIHdlIG5lY2Vz c2FyaWx5IGhhdmUgdG8gdGFja2xlIG5vdy4KPiA+IAo+ID4gPiDCoGBgVjRMMl9DSURfTVBFR19W SURFT19IRVZDX1NMSUNFX1BBUkFNUyAoc3RydWN0KWBgCj4gPiA+IMKgwqDCoMKgIFNwZWNpZmll cyB2YXJpb3VzIHNsaWNlLXNwZWNpZmljIHBhcmFtZXRlcnMsIGVzcGVjaWFsbHkgZnJvbSB0aGUg TkFMIAo+IHVuaXQKPiA+ID4gQEAgLTMzNjYsNiArMzM5MywxMiBAQCBlbnVtIHY0bDJfbXBlZ192 aWRlb19oZXZjX3NpemVfb2ZfbGVuZ3RoX2ZpZWxkIC0KPiA+ID4gwqDCoMKgwqAgKiAtIF9fdTMy Cj4gPiA+IMKgwqDCoMKgwqDCoCAtIGBgZGF0YV9iaXRfb2Zmc2V0YGAKPiA+ID4gwqDCoMKgwqDC oMKgIC0gT2Zmc2V0IChpbiBiaXRzKSB0byB0aGUgdmlkZW8gZGF0YSBpbiB0aGUgY3VycmVudCBz bGljZSBkYXRhLgo+ID4gPiArwqDCoMKgICogLSBfX3UzMgo+ID4gPiArwqDCoMKgwqDCoCAtIGBg c2xpY2Vfc2VnbWVudF9hZGRyYGAKPiA+ID4gK8KgwqDCoMKgwqAgLSBTcGVjaWZpZXMgdGhlIGFk ZHJlc3Mgb2YgdGhlIGZpcnN0IGNvZGluZyB0cmVlIGJsb2NrIGluIHRoZSBzbGljZSAKPiBzZWdt ZW50Cj4gPiAKPiA+IE5vdCB1c2VkLgo+ID4gCj4gPiA+ICvCoMKgwqAgKiAtIF9fdTMyCj4gPiA+ ICvCoMKgwqDCoMKgIC0gYGBudW1fZW50cnlfcG9pbnRfb2Zmc2V0c2BgCj4gPiA+ICvCoMKgwqDC oMKgIC0gU3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgZW50cnlfcG9pbnRfb2Zmc2V0X21pbnVzMVsg aSBdIHN5bnRheCAKPiBlbGVtZW50cyBpbiB0aGUgc2xpY2UgaGVhZGVyCj4gPiAKPiA+IE5vdCB1 c2VkLgo+IAo+IFdoaWxlIGFib3ZlIHR3byBmaWVsZHMgbWF5IG5vdCBiZSB1c2VkIGluIEhhbnRy bywgdGhleSBhcmUgZm9yIHN1cmUgdXNlZnVsIGZvciAKPiBDZWRydXMgYW5kIFJQaTQuIEkgd291 bGQgbGlrZSB0byBrZWVwIHRoZW0sIG90aGVyd2lzZSB3aXRoIHN1Y2ggYXBwcm9hY2ggSEVWQyAK PiB3aWxsIHN0YXkgaW4gc3RhZ2luZyBmb3IgYSBsb25nIHRpbWUuIEknbSBzdGlsbCBiYWZmbGVk IHdoeSBzY2FsaW5nIG1hdHJpeCAKPiBjb250cm9sIHdhcyBkcm9wcGVkLiBJdCB3b3VsZCBmaXQg d2VsbCBpbiBDZWRydXMgYW5kIFJQaTQgZHJpdmVyIGFuZCBhZnRlciBhIAo+IHF1aWNrIGxvb2ss IGl0IHNlZW1zIHRoYXQgaXQgd2FzIHVzZWQgaW4gZHJpdmVyIGluIGxhdGVyIHBhdGNoLgo+IAoK SSdkIGxpa2UgdG8gbWFrZSBzdXJlIGVhY2ggbW9kaWZpY2F0aW9uIHdlIGFyZSBtYWtpbmcgdG8g dGhlIHVBUEkKZ29lcyBpbiB0aGUgcmlnaHQgZGlyZWN0aW9uLCB0aGF0IGlzIGluIHRoZSBkaXJl Y3Rpb24gb2YgbW92aW5nCnRoZSBBUEkgb3V0IG9mIHN0YWdpbmcuCgpTaW5jZSByZXZpZXdpbmcg ZWFjaCBmaWVsZCBpcyBxdWl0ZSBoYXJkLCBhbmQgb3BlbnMgc29tZSBkaXNjdXNzaW9ucywKSSB3 YW50ZWQgdG8ga2VlcCB0aGlzIHBhdGNoc2V0IHNwZWNpZmljIHRvIHdoYXQncyBuZWVkZWQgZm9y IEhhbnRybyBHMi4KClRoZSBTY2FsaW5nIG1hdHJpeCBjb250cm9sIGlzIGNlcnRhaW5seSBhIGdv b2Qgb25lLCBhcyB3ZWxsIGFzIHRoZSBvbmVzCm5lZWRlZCBmb3IgQ2VkcnVzIGFuZCBSUGk0LiBI b3dldmVyLCBJIGZlZWwgaXQncyBiZXR0ZXIgdG8gZGlzY3Vzcwp0aGVtIGluIHRoZWlyIG93biAi dUFQSSByZXZpZXciIHNlcmllcyBzbyB3ZSBjYW4gcmV2aWV3IGFsbCB0aGUgY2hhbmdlcwp3aXRo IGFuIEFQSSBoYXQuCgpUaGlzIHdheSB3ZSBkZWNvdXBsZSB0aGUgSGFudHJvIEcyIGRpc2N1c3Np b24gYW5kIHdvcmsgZnJvbSB0aGUgQVBJIHdvcmsuCgpBbHNvIHBsZWFzZSBmZWVsIGZyZWUgdG8g c3VibWl0IFJGQyBwYXRjaGVzIGZvIENlZHJ1cyBhbmQgUlBpNAooQVBJIGFuZCBkcml2ZXIgY2hh bmdlcykuIFdlIGNhbiBjZXJ0YWlubHkgc3RhcnQgdGhlIGRpc2N1c3Npb24gYXJvdW5kIHRoYXQs CndpdGggZHJpdmVyIGNoYW5nZXMgaW4gY29udGV4dC4KCkhvcGUgSSdtIG1ha2luZyBzZW5zZSBo ZXJlIDopCgpUaGFua3MsCkV6ZXF1aWVsCgo+IEJlc3QgcmVnYXJkcywKPiBKZXJuZWoKPiAKPiA+ IAo+ID4gPiDCoMKgwqDCoCAqIC0gX191OAo+ID4gPiDCoMKgwqDCoMKgwqAgLSBgYG5hbF91bml0 X3R5cGVgYAo+ID4gPiDCoMKgwqDCoMKgwqAgLQo+ID4gPiBAQCAtMzQyMiwyOCArMzQ1NSwyMCBA QCBlbnVtIHY0bDJfbXBlZ192aWRlb19oZXZjX3NpemVfb2ZfbGVuZ3RoX2ZpZWxkIC0KPiA+ID4g wqDCoMKgwqAgKiAtIF9fdTgKPiA+ID4gwqDCoMKgwqDCoMKgIC0gYGBwaWNfc3RydWN0YGAKPiA+ ID4gwqDCoMKgwqDCoMKgIC0KPiA+ID4gLcKgwqDCoCAqIC0gX191OAo+ID4gPiAtwqDCoMKgwqDC oCAtIGBgbnVtX2FjdGl2ZV9kcGJfZW50cmllc2BgCj4gPiA+IC3CoMKgwqDCoMKgIC0gVGhlIG51 bWJlciBvZiBlbnRyaWVzIGluIGBgZHBiYGAuCj4gPiAKPiA+IE5lZWQgdG8gZXhwbGFpbiBpbiB0 aGUgY29tbWl0IGRlc2NyaXB0aW9uIHdoeSB0aGlzIGZpZWxkIGlzIG1vdmVkLgo+ID4gCj4gPiA+ IMKgwqDCoMKgICogLSBfX3U4Cj4gPiA+IMKgwqDCoMKgwqDCoCAtIGBgcmVmX2lkeF9sMFtWNEwy X0hFVkNfRFBCX0VOVFJJRVNfTlVNX01BWF1gYAo+ID4gPiDCoMKgwqDCoMKgwqAgLSBUaGUgbGlz dCBvZiBMMCByZWZlcmVuY2UgZWxlbWVudHMgYXMgaW5kaWNlcyBpbiB0aGUgRFBCLgo+ID4gPiDC oMKgwqDCoCAqIC0gX191OAo+ID4gPiDCoMKgwqDCoMKgwqAgLSBgYHJlZl9pZHhfbDFbVjRMMl9I RVZDX0RQQl9FTlRSSUVTX05VTV9NQVhdYGAKPiA+ID4gwqDCoMKgwqDCoMKgIC0gVGhlIGxpc3Qg b2YgTDEgcmVmZXJlbmNlIGVsZW1lbnRzIGFzIGluZGljZXMgaW4gdGhlIERQQi4KPiA+ID4gK8Kg wqDCoCAqIC0gX191MTYKPiA+ID4gK8KgwqDCoMKgwqAgLSBgYHNob3J0X3Rlcm1fcmVmX3BpY19z ZXRfc2l6ZWBgCj4gPiA+ICsKPiA+IAo+ID4gTm90IHVzZWQuCj4gPiAKPiA+ID4gwqDCoMKgwqDC oCAtCj4gPiA+ICvCoMKgwqAgKiAtIF9fdTE2Cj4gPiA+ICvCoMKgwqDCoMKgIC0gYGBsb25nX3Rl cm1fcmVmX3BpY19zZXRfc2l6ZWBgCj4gPiA+ICvCoMKgwqDCoMKgIC0KPiA+IAo+ID4gTm90IHVz ZWQuCj4gPiAKPiA+ID4gwqDCoMKgwqAgKiAtIF9fdTgKPiA+ID4gLcKgwqDCoMKgwqAgLSBgYG51 bV9ycHNfcG9jX3N0X2N1cnJfYmVmb3JlYGAKPiA+ID4gLcKgwqDCoMKgwqAgLSBUaGUgbnVtYmVy IG9mIHJlZmVyZW5jZSBwaWN0dXJlcyBpbiB0aGUgc2hvcnQtdGVybSBzZXQgdGhhdCBjb21lIAo+ IGJlZm9yZQo+ID4gPiAtwqDCoMKgwqDCoMKgwqAgdGhlIGN1cnJlbnQgZnJhbWUuCj4gPiAKPiA+ IElmIHRoaXMgbWF0Y2hlcyBOdW1Qb2NTdEN1cnJCZWZvcmUgZnJvbSBzZWN0aW9uIDguMy4yICJE ZWNvZGluZyBwcm9jZXNzIGZvciAKPiByZWZlcmVuY2UgcGljdHVyZSBzZXQiCj4gPiB0aGVuIEkg d291bGQgZG9jdW1lbnQgdGhhdC4gQW5kIHBlcmhhcHMgcmVuYW1lIGl0IHRvIG51bV9wb2Nfc3Rf Y3Vycl9iZWZvcmUuCj4gPiAKPiA+ID4gLcKgwqDCoCAqIC0gX191OAo+ID4gPiAtwqDCoMKgwqDC oCAtIGBgbnVtX3Jwc19wb2Nfc3RfY3Vycl9hZnRlcmBgCj4gPiA+IC3CoMKgwqDCoMKgIC0gVGhl IG51bWJlciBvZiByZWZlcmVuY2UgcGljdHVyZXMgaW4gdGhlIHNob3J0LXRlcm0gc2V0IHRoYXQg Y29tZSAKPiBhZnRlcgo+ID4gPiAtwqDCoMKgwqDCoMKgwqAgdGhlIGN1cnJlbnQgZnJhbWUuCj4g PiAKPiA+IERpdHRvLgo+ID4gCj4gPiA+IC3CoMKgwqAgKiAtIF9fdTgKPiA+ID4gLcKgwqDCoMKg wqAgLSBgYG51bV9ycHNfcG9jX2x0X2N1cnJgYAo+ID4gPiAtwqDCoMKgwqDCoCAtIFRoZSBudW1i ZXIgb2YgcmVmZXJlbmNlIHBpY3R1cmVzIGluIHRoZSBsb25nLXRlcm0gc2V0Lgo+ID4gCj4gPiBE aXR0by4KPiA+IAo+ID4gQWxzbywgSSdkIGxpa2UgdGhlIGNoYW5nZXMgdGhhdCBtb3ZlIGZpZWxk cyBmcm9tIAo+IFY0TDJfQ0lEX01QRUdfVklERU9fSEVWQ19TTElDRV9QQVJBTVMKPiA+IHRvIHRo ZSBuZXcgVjRMMl9DSURfTVBFR19WSURFT19IRVZDX0RFQ09ERV9QQVJBTVMgY29udHJvbCwgdG8g YmUgaW4gdGhlaXIKPiA+IHBhdGNoLgo+ID4gCj4gPiBUaGF0IHdpbGwgYWxsb3cgdXMgdG8gcHV0 IGluIHRoZSBjb21taXQgZGVzY3JpcHRpb24gYSBwcm9wZXIKPiA+IGV4cGxhbmF0aW9uIG9mIHdo eSBhcmUgZmllbGRzIGJlaW5nIG1vdmVkLiBOb3RoaW5nIGZhbmN5LCBzaW1wbHkKPiA+IGV4cGxh aW5pbmcgdGhhdCB0aGVzZSB2YXJpYWJsZXMgY29tZSBmcm9tIHNlY3Rpb24gOC4zLjIKPiA+ICJE ZWNvZGluZyBwcm9jZXNzIGZvciByZWZlcmVuY2UgcGljdHVyZSBzZXQiLCB3aGljaCBkZXNjcmli ZXMKPiA+IGEgcHJvY2VzcyBpbnZva2VkIG9uY2UgcGVyIHBpY3R1cmUsIHNvIHRoZXkgYXJlIG5v dCBwZXItc2xpY2UuCj4gPiAKPiA+ID4gLcKgwqDCoCAqIC0gX191OAo+ID4gPiAtwqDCoMKgwqDC oCAtIGBgcGFkZGluZ1s3XWBgCj4gPiA+ICvCoMKgwqDCoMKgIC0gYGBwYWRkaW5nYGAKPiA+ID4g wqDCoMKgwqDCoMKgIC0gQXBwbGljYXRpb25zIGFuZCBkcml2ZXJzIG11c3Qgc2V0IHRoaXMgdG8g emVyby4KPiA+ID4gwqDCoMKgwqAgKiAtIHN0cnVjdCA6Yzp0eXBlOmB2NGwyX2hldmNfZHBiX2Vu dHJ5YAo+ID4gPiDCoMKgwqDCoMKgwqAgLSBgYGRwYltWNEwyX0hFVkNfRFBCX0VOVFJJRVNfTlVN X01BWF1gYAo+ID4gPiBAQCAtMzY0NiwzICszNjcxLDc0IEBAIGVudW0gdjRsMl9tcGVnX3ZpZGVv X2hldmNfc2l6ZV9vZl9sZW5ndGhfZmllbGQgLQo+ID4gPiDCoMKgwqDCoCBzbyB0aGlzIGhhcyB0 byBjb21lIGZyb20gY2xpZW50Lgo+ID4gPiDCoMKgwqDCoCBUaGlzIGlzIGFwcGxpY2FibGUgdG8g SDI2NCBhbmQgdmFsaWQgUmFuZ2UgaXMgZnJvbSAwIHRvIDYzLgo+ID4gPiDCoMKgwqDCoCBTb3Vy Y2UgUmVjLiBJVFUtVCBILjI2NCAoMDYvMjAxOSk7IEcuNy40LjEuMSwgRy44LjguMS4KPiA+ID4g Kwo+ID4gPiArYGBWNEwyX0NJRF9NUEVHX1ZJREVPX0hFVkNfREVDT0RFX1BBUkFNUyAoc3RydWN0 KWBgCj4gPiA+ICvCoMKgwqAgU3BlY2lmaWVzIHZhcmlvdXMgZGVjb2RlIHBhcmFtZXRlcnMsIGVz cGVjaWFsbHkgdGhlIHJlZmVyZW5jZXMgcGljdHVyZSAKPiBvcmRlcgo+ID4gPiArwqDCoMKgIGNv dW50IChQT0MpIGZvciBhbGwgdGhlIGxpc3RzIChzaG9ydCwgbG9uZywgYmVmb3JlLCBjdXJyZW50 LCBhZnRlcikgCj4gYW5kIHRoZQo+ID4gPiArwqDCoMKgIG51bWJlciBvZiBlbnRyaWVzIGZvciBl YWNoIG9mIHRoZW0uCj4gPiA+ICvCoMKgwqAgVGhlc2UgcGFyYW1ldGVycyBhcmUgZGVmaW5lZCBh Y2NvcmRpbmcgdG8gOnJlZjpgaGV2Y2AuCj4gPiA+ICvCoMKgwqAgVGhleSBhcmUgZGVzY3JpYmVk IGluIHNlY3Rpb24gOC4zICJTbGljZSBkZWNvZGluZyBwcm9jZXNzIiBvZiB0aGUKPiA+ID4gK8Kg wqDCoCBzcGVjaWZpY2F0aW9uLgo+ID4gPiArCj4gPiA+ICsuLiBjOnR5cGU6OiB2NGwyX2N0cmxf aGV2Y19kZWNvZGVfcGFyYW1zCj4gPiA+ICsKPiA+ID4gKy4uIGNzc2NsYXNzOjogbG9uZ3RhYmxl Cj4gPiA+ICsKPiA+ID4gKy4uIGZsYXQtdGFibGU6OiBzdHJ1Y3QgdjRsMl9jdHJsX2hldmNfZGVj b2RlX3BhcmFtcwo+ID4gPiArwqDCoMKgIDpoZWFkZXItcm93czrCoCAwCj4gPiA+ICvCoMKgwqAg OnN0dWItY29sdW1uczogMAo+ID4gPiArwqDCoMKgIDp3aWR0aHM6wqDCoMKgwqDCoMKgIDEgMSAy Cj4gPiA+ICsKPiA+ID4gK8KgwqDCoCAqIC0gX19zMzIKPiA+ID4gK8KgwqDCoMKgwqAgLSBgYHBp Y19vcmRlcl9jbnRfdmFsYGAKPiA+ID4gK8KgwqDCoMKgwqAgLQo+ID4gCj4gPiBDYW4gYmUgZG9j dW1lbnRlZCBhczoKPiA+IAo+ID4gIiIiCj4gPiBQaWNPcmRlckNudFZhbCBhcyBkZXNjcmliZWQg aW4gc2VjdGlvbiA4LjMuMSAiRGVjb2RpbmcgcHJvY2Vzcwo+ID4gZm9yIHBpY3R1cmUgb3JkZXIg Y291bnQiIG9mIHRoZSBzcGVjaWZpY2F0aW9uLgo+ID4gIiIiCj4gPiAKPiA+IE5vdGUgdGhhdCBz bmFrZSBjYXNlIGlzIHVzZWQgdG8gbWF0Y2ggdGhlIGtlcm5lbCBzdHlsZSwKPiA+IGJ1dCBvdGhl ciB0aGFuIHRoYXQgd2UgdHJ5IHRvIGtlZXAgdGhlIEhFVkMgc3BlYyB2YXJpYWJsZQo+ID4gbmFt ZXMuCj4gPiAKPiA+ID4gK8KgwqDCoCAqIC0gX191OAo+ID4gPiArwqDCoMKgwqDCoCAtIGBgbnVt X2FjdGl2ZV9kcGJfZW50cmllc2BgCj4gPiA+ICvCoMKgwqDCoMKgIC0gVGhlIG51bWJlciBvZiBl bnRyaWVzIGluIGBgZHBiYGAuCj4gPiA+ICvCoMKgwqAgKiAtIHN0cnVjdCA6Yzp0eXBlOmB2NGwy X2hldmNfZHBiX2VudHJ5YAo+ID4gPiArwqDCoMKgwqDCoCAtIGBgZHBiW1Y0TDJfSEVWQ19EUEJf RU5UUklFU19OVU1fTUFYXWBgCj4gPiA+ICvCoMKgwqDCoMKgIC0gVGhlIGRlY29kZWQgcGljdHVy ZSBidWZmZXIsIGZvciBtZXRhLWRhdGEgYWJvdXQgcmVmZXJlbmNlIGZyYW1lcy4KPiA+IAo+ID4g VGhlIERQQiBpcyBoZXJlLCBidXQgaXQgc2VlbXMgaXQncyBhbHNvIGluIHRoZSBzbGljZSBjb250 cm9sPwo+ID4gCj4gPiA+ICvCoMKgwqAgKiAtIF9fdTgKPiA+ID4gK8KgwqDCoMKgwqAgLSBgYG51 bV9ycHNfcG9jX3N0X2N1cnJfYmVmb3JlYGAKPiA+ID4gK8KgwqDCoMKgwqAgLSBUaGUgbnVtYmVy IG9mIHJlZmVyZW5jZSBwaWN0dXJlcyBpbiB0aGUgc2hvcnQtdGVybSBzZXQgdGhhdCBjb21lIAo+ IGJlZm9yZQo+ID4gPiArwqDCoMKgwqDCoMKgwqAgdGhlIGN1cnJlbnQgZnJhbWUuCj4gPiA+ICvC oMKgwqAgKiAtIF9fdTgKPiA+ID4gK8KgwqDCoMKgwqAgLSBgYG51bV9ycHNfcG9jX3N0X2N1cnJf YWZ0ZXJgYAo+ID4gPiArwqDCoMKgwqDCoCAtIFRoZSBudW1iZXIgb2YgcmVmZXJlbmNlIHBpY3R1 cmVzIGluIHRoZSBzaG9ydC10ZXJtIHNldCB0aGF0IGNvbWUgCj4gYWZ0ZXIKPiA+ID4gK8KgwqDC oMKgwqDCoMKgIHRoZSBjdXJyZW50IGZyYW1lLgo+ID4gPiArwqDCoMKgICogLSBfX3U4Cj4gPiA+ ICvCoMKgwqDCoMKgIC0gYGBudW1fcnBzX3BvY19sdF9jdXJyYGAKPiA+ID4gK8KgwqDCoMKgwqAg LSBUaGUgbnVtYmVyIG9mIHJlZmVyZW5jZSBwaWN0dXJlcyBpbiB0aGUgbG9uZy10ZXJtIHNldC4K PiA+ID4gK8KgwqDCoCAqIC0gX191OAo+ID4gPiArwqDCoMKgwqDCoCAtIGBgcnBzX3N0X2N1cnJf YmVmb3JlW1Y0TDJfSEVWQ19EUEJfRU5UUklFU19OVU1fTUFYXWBgCj4gPiA+ICvCoMKgwqDCoMKg IC0KPiA+ID4gK8KgwqDCoCAqIC0gX191OAo+ID4gPiArwqDCoMKgwqDCoCAtIGBgcnBzX3N0X2N1 cnJfYWZ0ZXJbVjRMMl9IRVZDX0RQQl9FTlRSSUVTX05VTV9NQVhdYGAKPiA+ID4gK8KgwqDCoMKg wqAgLQo+ID4gPiArwqDCoMKgICogLSBfX3U4Cj4gPiA+ICvCoMKgwqDCoMKgIC0gYGBycHNfbHRf Y3VycltWNEwyX0hFVkNfRFBCX0VOVFJJRVNfTlVNX01BWF1gYAo+ID4gPiArwqDCoMKgwqDCoCAt Cj4gPiAKPiA+IENvdWxkIHlvdSBkb2N1bWVudCB0aGVzZSBhcyB3ZWxsPwo+ID4gCj4gPiBUaGFu a3MgYSBsb3QsCj4gPiBFemVxdWllbAo+ID4gCj4gPiAKPiAKPiAKCgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5n IGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5p bmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=