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 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BA01AC433EF for ; Tue, 28 Sep 2021 18:59:44 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 769BD61246 for ; Tue, 28 Sep 2021 18:59:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 769BD61246 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=collabora.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Date:Cc: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=ozs8vC98d3/32atpQzkw5Hhrl1Ko91tcpAjUUvajXno=; b=vHkfd2jzDYqJIR z4tI99H+XDoYrdEhWtZqtoZjQpWLsB6y4J4Ln1lCuKaMqkSLjNwDgFG5EqPJfH5qebuunqBdKpECd XWAQ8Cd2GbDtbpUuvVb/z3rt2rCf/owIalAsP4jAhhcMBqlVLpAAqKGOYEIckziBY0E5fVhEcK2Zl qrlcDdjIpffggLStyUDb9MdVVqjZqLKgQVXX/V/pvbCeq8dU4i6bBzO+mDO12gnpcucqc9I8IoGF9 /bO/UiXsqi583aW3jpUsfBWotYRnpY+OddGqjZ1s1LWsBxkoWInwjbme72GZCs9da3NYj4RHYcXl5 O7E6K+jqVkiYm2fWRrpQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mVIKK-008YjE-70; Tue, 28 Sep 2021 18:59:40 +0000 Received: from bhuna.collabora.co.uk ([2a00:1098:0:82:1000:25:2eeb:e3e3]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mVIJy-008YZt-VF; Tue, 28 Sep 2021 18:59:22 +0000 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: nicolas) with ESMTPSA id 58B7E1F43BE3 Message-ID: Subject: Re: [PATCH v6 09/10] media: hantro: Support VP9 on the G2 core From: Nicolas Dufresne To: Ezequiel Garcia , Andrzej Pietrasiewicz Cc: linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-staging@lists.linux.dev, Benjamin Gaignard , Boris Brezillon , Fabio Estevam , Greg Kroah-Hartman , Hans Verkuil , Heiko Stuebner , Jernej Skrabec , Mauro Carvalho Chehab , NXP Linux Team , Pengutronix Kernel Team , Philipp Zabel , Sascha Hauer , Shawn Guo , kernel@collabora.com, bob.beckett@collabora.com Date: Tue, 28 Sep 2021 14:59:05 -0400 In-Reply-To: References: <20210927151958.24426-1-andrzej.p@collabora.com> <20210927151958.24426-10-andrzej.p@collabora.com> <532bfb30-c464-137e-1635-b6a868d5d7e6@collabora.com> User-Agent: Evolution 3.40.4 (3.40.4-1.fc34) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210928_115919_320781_0EA6035C X-CRM114-Status: GOOD ( 27.47 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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 TGUgbWFyZGkgMjggc2VwdGVtYnJlIDIwMjEgw6AgMTM6NTUgLTAzMDAsIEV6ZXF1aWVsIEdhcmNp YSBhIMOpY3JpdMKgOgo+IE9uIFR1ZSwgU2VwIDI4LCAyMDIxIGF0IDA1OjM5OjAyUE0gKzAyMDAs IEFuZHJ6ZWogUGlldHJhc2lld2ljeiB3cm90ZToKPiA+IEhpIE5pY29sYXMsCj4gPiAKPiA+IFcg ZG5pdSAyNy4wOS4yMDIxIG/CoDIxOjE3LCBOaWNvbGFzIER1ZnJlc25lIHBpc3plOgo+ID4gPiBM ZSBsdW5kaSAyNyBzZXB0ZW1icmUgMjAyMSDDoCAxNzoxOSArMDIwMCwgQW5kcnplaiBQaWV0cmFz aWV3aWN6IGEgw6ljcml0wqA6Cj4gPiA+ID4gVmVyaVNpbGljb24gSGFudHJvIEcyIGNvcmUgc3Vw cG9ydHMgVlA5IGNvZGVjLgo+ID4gPiA+IAo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEFuZHJ6ZWog UGlldHJhc2lld2ljeiA8YW5kcnplai5wQGNvbGxhYm9yYS5jb20+Cj4gPiA+ID4gUmV2aWV3ZWQt Ynk6IEJlbmphbWluIEdhaWduYXJkIDxiZW5qYW1pbi5nYWlnbmFyZEBjb2xsYWJvcmEuY29tPgo+ ID4gPiA+IC0tLQo+ID4gPiA+ICAgZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9LY29uZmln ICAgICAgICAgIHwgICAxICsKPiA+ID4gPiAgIGRyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8v TWFrZWZpbGUgICAgICAgICB8ICAgNiArLQo+ID4gPiA+ICAgZHJpdmVycy9zdGFnaW5nL21lZGlh L2hhbnRyby9oYW50cm8uaCAgICAgICAgIHwgIDI2ICsKPiA+ID4gPiAgIGRyaXZlcnMvc3RhZ2lu Zy9tZWRpYS9oYW50cm8vaGFudHJvX2Rydi5jICAgICB8ICAxOCArLQo+ID4gPiA+ICAgZHJpdmVy cy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9fZzJfcmVncy5oIHwgIDk3ICsrCj4gPiA+ID4g ICAuLi4vc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2cyX3ZwOV9kZWMuYyAgfCA5NzggKysr KysrKysrKysrKysrKysrCj4gPiA+ID4gICBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hh bnRyb19ody5oICAgICAgfCAgNjcgKysKPiA+ID4gPiAgIGRyaXZlcnMvc3RhZ2luZy9tZWRpYS9o YW50cm8vaGFudHJvX3Y0bDIuYyAgICB8ICAgNiArCj4gPiA+ID4gICBkcml2ZXJzL3N0YWdpbmcv bWVkaWEvaGFudHJvL2hhbnRyb192cDkuYyAgICAgfCAyNDAgKysrKysKPiA+ID4gPiAgIGRyaXZl cnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX3ZwOS5oICAgICB8IDEwMyArKwo+ID4gPiA+ ICAgZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9pbXg4bV92cHVfaHcuYyAgIHwgIDIyICst Cj4gPiA+ID4gICAxMSBmaWxlcyBjaGFuZ2VkLCAxNTYwIGluc2VydGlvbnMoKyksIDQgZGVsZXRp b25zKC0pCj4gPiA+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9zdGFnaW5nL21lZGlh L2hhbnRyby9oYW50cm9fZzJfdnA5X2RlYy5jCj4gPiA+ID4gICBjcmVhdGUgbW9kZSAxMDA2NDQg ZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9fdnA5LmMKPiA+ID4gPiAgIGNyZWF0 ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hhbnRyb192cDkuaAo+ ID4gPiA+IAo+ID4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJv L0tjb25maWcgYi9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL0tjb25maWcKPiA+ID4gPiBp bmRleCAyMGIxZjZkN2I2OWMuLjAwYTU3ZDg4YzkyZSAxMDA2NDQKPiA+ID4gPiAtLS0gYS9kcml2 ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL0tjb25maWcKPiA+ID4gPiArKysgYi9kcml2ZXJzL3N0 YWdpbmcvbWVkaWEvaGFudHJvL0tjb25maWcKPiA+ID4gPiBAQCAtOSw2ICs5LDcgQEAgY29uZmln IFZJREVPX0hBTlRSTwo+ID4gPiA+ICAgCXNlbGVjdCBWSURFT0JVRjJfVk1BTExPQwo+ID4gPiA+ ICAgCXNlbGVjdCBWNEwyX01FTTJNRU1fREVWCj4gPiA+ID4gICAJc2VsZWN0IFY0TDJfSDI2NAo+ ID4gPiA+ICsJc2VsZWN0IFY0TDJfVlA5Cj4gPiA+ID4gICAJaGVscAo+ID4gPiA+ICAgCSAgU3Vw cG9ydCBmb3IgdGhlIEhhbnRybyBJUCBiYXNlZCBWaWRlbyBQcm9jZXNzaW5nIFVuaXRzIHByZXNl bnQgb24KPiA+ID4gPiAgIAkgIFJvY2tjaGlwIGFuZCBOWFAgaS5NWDhNIFNvQ3MsIHdoaWNoIGFj Y2VsZXJhdGUgdmlkZW8gYW5kIGltYWdlCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3Rh Z2luZy9tZWRpYS9oYW50cm8vTWFrZWZpbGUgYi9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJv L01ha2VmaWxlCj4gPiA+ID4gaW5kZXggZmU2ZDg0ODcxZDA3Li4yOGFmMGExZWU0YmYgMTAwNjQ0 Cj4gPiA+ID4gLS0tIGEvZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9NYWtlZmlsZQo+ID4g PiA+ICsrKyBiL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vTWFrZWZpbGUKPiA+ID4gPiBA QCAtMTAsOSArMTAsMTAgQEAgaGFudHJvLXZwdS15ICs9IFwKPiA+ID4gPiAgIAkJaGFudHJvX2cx Lm8gXAo+ID4gPiA+ICAgCQloYW50cm9fZzFfaDI2NF9kZWMubyBcCj4gPiA+ID4gICAJCWhhbnRy b19nMV9tcGVnMl9kZWMubyBcCj4gPiA+ID4gLQkJaGFudHJvX2cyX2hldmNfZGVjLm8gXAo+ID4g PiA+ICAgCQloYW50cm9fZzFfdnA4X2RlYy5vIFwKPiA+ID4gPiAgIAkJaGFudHJvX2cyLm8gXAo+ ID4gPiA+ICsJCWhhbnRyb19nMl9oZXZjX2RlYy5vIFwKPiA+ID4gPiArCQloYW50cm9fZzJfdnA5 X2RlYy5vIFwKPiA+ID4gPiAgIAkJcm9ja2NoaXBfdnB1Ml9od19qcGVnX2VuYy5vIFwKPiA+ID4g PiAgIAkJcm9ja2NoaXBfdnB1Ml9od19oMjY0X2RlYy5vIFwKPiA+ID4gPiAgIAkJcm9ja2NoaXBf dnB1Ml9od19tcGVnMl9kZWMubyBcCj4gPiA+ID4gQEAgLTIxLDcgKzIyLDggQEAgaGFudHJvLXZw dS15ICs9IFwKPiA+ID4gPiAgIAkJaGFudHJvX2gyNjQubyBcCj4gPiA+ID4gICAJCWhhbnRyb19o ZXZjLm8gXAo+ID4gPiA+ICAgCQloYW50cm9fbXBlZzIubyBcCj4gPiA+ID4gLQkJaGFudHJvX3Zw OC5vCj4gPiA+ID4gKwkJaGFudHJvX3ZwOC5vIFwKPiA+ID4gPiArCQloYW50cm9fdnA5Lm8KPiA+ ID4gPiAgIGhhbnRyby12cHUtJChDT05GSUdfVklERU9fSEFOVFJPX0lNWDhNKSArPSBcCj4gPiA+ ID4gICAJCWlteDhtX3ZwdV9ody5vCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2lu Zy9tZWRpYS9oYW50cm8vaGFudHJvLmggYi9kcml2ZXJzL3N0YWdpbmcvbWVkaWEvaGFudHJvL2hh bnRyby5oCj4gPiA+ID4gaW5kZXggZDkxZWIyYjFjNTA5Li4xZThjMWE2ZTNlYjAgMTAwNjQ0Cj4g PiA+ID4gLS0tIGEvZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm8uaAo+ID4gPiA+ ICsrKyBiL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvLmgKPiA+ID4gPiBAQCAt MzYsNiArMzYsNyBAQCBzdHJ1Y3QgaGFudHJvX3Bvc3Rwcm9jX29wczsKPiA+ID4gPiAgICNkZWZp bmUgSEFOVFJPX1ZQOF9ERUNPREVSCUJJVCgxNykKPiA+ID4gPiAgICNkZWZpbmUgSEFOVFJPX0gy NjRfREVDT0RFUglCSVQoMTgpCj4gPiA+ID4gICAjZGVmaW5lIEhBTlRST19IRVZDX0RFQ09ERVIJ QklUKDE5KQo+ID4gPiA+ICsjZGVmaW5lIEhBTlRST19WUDlfREVDT0RFUglCSVQoMjApCj4gPiA+ ID4gICAjZGVmaW5lIEhBTlRST19ERUNPREVSUwkJMHhmZmZmMDAwMAo+ID4gPiA+ICAgLyoqCj4g PiA+ID4gQEAgLTExMCw2ICsxMTEsNyBAQCBlbnVtIGhhbnRyb19jb2RlY19tb2RlIHsKPiA+ID4g PiAgIAlIQU5UUk9fTU9ERV9NUEVHMl9ERUMsCj4gPiA+ID4gICAJSEFOVFJPX01PREVfVlA4X0RF QywKPiA+ID4gPiAgIAlIQU5UUk9fTU9ERV9IRVZDX0RFQywKPiA+ID4gPiArCUhBTlRST19NT0RF X1ZQOV9ERUMsCj4gPiA+ID4gICB9Owo+ID4gPiA+ICAgLyoKPiA+ID4gPiBAQCAtMjIzLDYgKzIy NSw3IEBAIHN0cnVjdCBoYW50cm9fZGV2IHsKPiA+ID4gPiAgICAqIEBtcGVnMl9kZWM6CQlNUEVH LTItZGVjb2RpbmcgY29udGV4dC4KPiA+ID4gPiAgICAqIEB2cDhfZGVjOgkJVlA4LWRlY29kaW5n IGNvbnRleHQuCj4gPiA+ID4gICAgKiBAaGV2Y19kZWM6CQlIRVZDLWRlY29kaW5nIGNvbnRleHQu Cj4gPiA+ID4gKyAqIEB2cDlfZGVjOgkJVlA5LWRlY29kaW5nIGNvbnRleHQuCj4gPiA+ID4gICAg Ki8KPiA+ID4gPiAgIHN0cnVjdCBoYW50cm9fY3R4IHsKPiA+ID4gPiAgIAlzdHJ1Y3QgaGFudHJv X2RldiAqZGV2Owo+ID4gPiA+IEBAIC0yNTAsNiArMjUzLDcgQEAgc3RydWN0IGhhbnRyb19jdHgg ewo+ID4gPiA+ICAgCQlzdHJ1Y3QgaGFudHJvX21wZWcyX2RlY19od19jdHggbXBlZzJfZGVjOwo+ ID4gPiA+ICAgCQlzdHJ1Y3QgaGFudHJvX3ZwOF9kZWNfaHdfY3R4IHZwOF9kZWM7Cj4gPiA+ID4g ICAJCXN0cnVjdCBoYW50cm9faGV2Y19kZWNfaHdfY3R4IGhldmNfZGVjOwo+ID4gPiA+ICsJCXN0 cnVjdCBoYW50cm9fdnA5X2RlY19od19jdHggdnA5X2RlYzsKPiA+ID4gPiAgIAl9Owo+ID4gPiA+ ICAgfTsKPiA+ID4gPiBAQCAtMjk5LDYgKzMwMywyMiBAQCBzdHJ1Y3QgaGFudHJvX3Bvc3Rwcm9j X3JlZ3Mgewo+ID4gPiA+ICAgCXN0cnVjdCBoYW50cm9fcmVnIGRpc3BsYXlfd2lkdGg7Cj4gPiA+ ID4gICB9Owo+ID4gPiA+ICtzdHJ1Y3QgaGFudHJvX3ZwOV9kZWNvZGVkX2J1ZmZlcl9pbmZvIHsK PiA+ID4gPiArCS8qIEluZm8gbmVlZGVkIHdoZW4gdGhlIGRlY29kZWQgZnJhbWUgc2VydmVzIGFz IGEgcmVmZXJlbmNlIGZyYW1lLiAqLwo+ID4gPiA+ICsJdW5zaWduZWQgc2hvcnQgd2lkdGg7Cj4g PiA+ID4gKwl1bnNpZ25lZCBzaG9ydCBoZWlnaHQ7Cj4gPiA+ID4gKwl1MzIgYml0X2RlcHRoIDog NDsKPiA+ID4gPiArfTsKPiA+ID4gPiArCj4gPiA+ID4gK3N0cnVjdCBoYW50cm9fZGVjb2RlZF9i dWZmZXIgewo+ID4gPiA+ICsJLyogTXVzdCBiZSB0aGUgZmlyc3QgZmllbGQgaW4gdGhpcyBzdHJ1 Y3QuICovCj4gPiA+ID4gKwlzdHJ1Y3QgdjRsMl9tMm1fYnVmZmVyIGJhc2U7Cj4gPiA+ID4gKwo+ ID4gPiA+ICsJdW5pb24gewo+ID4gPiA+ICsJCXN0cnVjdCBoYW50cm9fdnA5X2RlY29kZWRfYnVm ZmVyX2luZm8gdnA5Owo+ID4gPiA+ICsJfTsKPiA+ID4gPiArfTsKPiA+ID4gPiArCj4gPiA+ID4g ICAvKiBMb2dnaW5nIGhlbHBlcnMgKi8KPiA+ID4gPiAgIC8qKgo+ID4gPiA+IEBAIC00MzYsNiAr NDU2LDEyIEBAIGhhbnRyb19nZXRfZGVjX2J1Zl9hZGRyKHN0cnVjdCBoYW50cm9fY3R4ICpjdHgs IHN0cnVjdCB2YjJfYnVmZmVyICp2YikKPiA+ID4gPiAgIAlyZXR1cm4gdmIyX2RtYV9jb250aWdf cGxhbmVfZG1hX2FkZHIodmIsIDApOwo+ID4gPiA+ICAgfQo+ID4gPiA+ICtzdGF0aWMgaW5saW5l IHN0cnVjdCBoYW50cm9fZGVjb2RlZF9idWZmZXIgKgo+ID4gPiA+ICt2YjJfdG9faGFudHJvX2Rl Y29kZWRfYnVmKHN0cnVjdCB2YjJfYnVmZmVyICpidWYpCj4gPiA+ID4gK3sKPiA+ID4gPiArCXJl dHVybiBjb250YWluZXJfb2YoYnVmLCBzdHJ1Y3QgaGFudHJvX2RlY29kZWRfYnVmZmVyLCBiYXNl LnZiLnZiMl9idWYpOwo+ID4gPiA+ICt9Cj4gPiA+ID4gKwo+ID4gPiA+ICAgdm9pZCBoYW50cm9f cG9zdHByb2NfZGlzYWJsZShzdHJ1Y3QgaGFudHJvX2N0eCAqY3R4KTsKPiA+ID4gPiAgIHZvaWQg aGFudHJvX3Bvc3Rwcm9jX2VuYWJsZShzdHJ1Y3QgaGFudHJvX2N0eCAqY3R4KTsKPiA+ID4gPiAg IHZvaWQgaGFudHJvX3Bvc3Rwcm9jX2ZyZWUoc3RydWN0IGhhbnRyb19jdHggKmN0eCk7Cj4gPiA+ ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2Rydi5j IGIvZHJpdmVycy9zdGFnaW5nL21lZGlhL2hhbnRyby9oYW50cm9fZHJ2LmMKPiA+ID4gPiBpbmRl eCA4YTJlZGQ2N2YyYzYuLjgwMGM4ODc5YWVlMCAxMDA2NDQKPiA+ID4gPiAtLS0gYS9kcml2ZXJz L3N0YWdpbmcvbWVkaWEvaGFudHJvL2hhbnRyb19kcnYuYwo+ID4gPiA+ICsrKyBiL2RyaXZlcnMv c3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2Rydi5jCj4gPiA+ID4gQEAgLTIzMiw3ICsyMzIs NyBAQCBxdWV1ZV9pbml0KHZvaWQgKnByaXYsIHN0cnVjdCB2YjJfcXVldWUgKnNyY192cSwgc3Ry dWN0IHZiMl9xdWV1ZSAqZHN0X3ZxKQo+ID4gPiA+ICAgCWRzdF92cS0+aW9fbW9kZXMgPSBWQjJf TU1BUCB8IFZCMl9ETUFCVUY7Cj4gPiA+ID4gICAJZHN0X3ZxLT5kcnZfcHJpdiA9IGN0eDsKPiA+ ID4gPiAgIAlkc3RfdnEtPm9wcyA9ICZoYW50cm9fcXVldWVfb3BzOwo+ID4gPiA+IC0JZHN0X3Zx LT5idWZfc3RydWN0X3NpemUgPSBzaXplb2Yoc3RydWN0IHY0bDJfbTJtX2J1ZmZlcik7Cj4gPiA+ ID4gKwlkc3RfdnEtPmJ1Zl9zdHJ1Y3Rfc2l6ZSA9IHNpemVvZihzdHJ1Y3QgaGFudHJvX2RlY29k ZWRfYnVmZmVyKTsKPiA+ID4gPiAgIAlkc3RfdnEtPnRpbWVzdGFtcF9mbGFncyA9IFY0TDJfQlVG X0ZMQUdfVElNRVNUQU1QX0NPUFk7Cj4gPiA+ID4gICAJZHN0X3ZxLT5sb2NrID0gJmN0eC0+ZGV2 LT52cHVfbXV0ZXg7Cj4gPiA+ID4gICAJZHN0X3ZxLT5kZXYgPSBjdHgtPmRldi0+djRsMl9kZXYu ZGV2Owo+ID4gPiA+IEBAIC0yNjYsNiArMjY2LDEyIEBAIHN0YXRpYyBpbnQgaGFudHJvX3RyeV9j dHJsKHN0cnVjdCB2NGwyX2N0cmwgKmN0cmwpCj4gPiA+ID4gICAJCWlmIChzcHMtPmZsYWdzICYg VjRMMl9IRVZDX1NQU19GTEFHX1NDQUxJTkdfTElTVF9FTkFCTEVEKQo+ID4gPiA+ICAgCQkJLyog Tm8gc2NhbGluZyBzdXBwb3J0ICovCj4gPiA+ID4gICAJCQlyZXR1cm4gLUVJTlZBTDsKPiA+ID4g PiArCX0gZWxzZSBpZiAoY3RybC0+aWQgPT0gVjRMMl9DSURfU1RBVEVMRVNTX1ZQOV9GUkFNRSkg ewo+ID4gPiA+ICsJCWNvbnN0IHN0cnVjdCB2NGwyX2N0cmxfdnA5X2ZyYW1lICpkZWNfcGFyYW1z ID0gY3RybC0+cF9uZXcucF92cDlfZnJhbWU7Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCS8qIFdlIG9u bHkgc3VwcG9ydCBwcm9maWxlIDAgKi8KPiA+ID4gPiArCQlpZiAoZGVjX3BhcmFtcy0+cHJvZmls ZSAhPSAwKQo+ID4gPiA+ICsJCQlyZXR1cm4gLUVJTlZBTDsKPiA+ID4gPiAgIAl9Cj4gPiA+ID4g ICAJcmV0dXJuIDA7Cj4gPiA+ID4gICB9Cj4gPiA+ID4gQEAgLTQ1OSw2ICs0NjUsMTYgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBoYW50cm9fY3RybCBjb250cm9sc1tdID0gewo+ID4gPiA+ICAgCQkJ LnN0ZXAgPSAxLAo+ID4gPiA+ICAgCQkJLm9wcyA9ICZoYW50cm9faGV2Y19jdHJsX29wcywKPiA+ ID4gPiAgIAkJfSwKPiA+ID4gPiArCX0sIHsKPiA+ID4gPiArCQkuY29kZWMgPSBIQU5UUk9fVlA5 X0RFQ09ERVIsCj4gPiA+ID4gKwkJLmNmZyA9IHsKPiA+ID4gPiArCQkJLmlkID0gVjRMMl9DSURf U1RBVEVMRVNTX1ZQOV9GUkFNRSwKPiA+ID4gPiArCQl9LAo+ID4gPiA+ICsJfSwgewo+ID4gPiA+ ICsJCS5jb2RlYyA9IEhBTlRST19WUDlfREVDT0RFUiwKPiA+ID4gPiArCQkuY2ZnID0gewo+ID4g PiA+ICsJCQkuaWQgPSBWNEwyX0NJRF9TVEFURUxFU1NfVlA5X0NPTVBSRVNTRURfSERSLAo+ID4g PiA+ICsJCX0sCj4gPiA+ID4gICAJfSwKPiA+ID4gPiAgIH07Cj4gPiA+ID4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvc3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2cyX3JlZ3MuaCBiL2RyaXZlcnMv c3RhZ2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2cyX3JlZ3MuaAo+ID4gPiA+IGluZGV4IDBhYzBi YTM3NWU4MC4uMjFjYTIxNjQ4NjE0IDEwMDY0NAo+ID4gPiA+IC0tLSBhL2RyaXZlcnMvc3RhZ2lu Zy9tZWRpYS9oYW50cm8vaGFudHJvX2cyX3JlZ3MuaAo+ID4gPiA+ICsrKyBiL2RyaXZlcnMvc3Rh Z2luZy9tZWRpYS9oYW50cm8vaGFudHJvX2cyX3JlZ3MuaAo+ID4gPiA+IEBAIC0yOCw2ICsyOCw3 IEBACj4gPiA+ID4gICAjZGVmaW5lIEcyX1JFR19JTlRFUlJVUFRfREVDX0UJCUJJVCgwKQo+ID4g PiA+ICAgI2RlZmluZSBIRVZDX0RFQ19NT0RFCQkJMHhjCj4gPiA+ID4gKyNkZWZpbmUgVlA5X0RF Q19NT0RFCQkJMHhkCj4gPiA+ID4gICAjZGVmaW5lIEJVU19XSURUSF8zMgkJCTAKPiA+ID4gPiAg ICNkZWZpbmUgQlVTX1dJRFRIXzY0CQkJMQo+ID4gPiA+IEBAIC00OSw2ICs1MCw3IEBACj4gPiA+ ID4gICAjZGVmaW5lIGcyX3BpY19oZWlnaHRfaW5fY2JzCUcyX0RFQ19SRUcoNCwgNiwgIDB4MWZm ZikKPiA+ID4gPiAgICNkZWZpbmUgZzJfbnVtX3JlZl9mcmFtZXMJRzJfREVDX1JFRyg0LCAwLCAg MHgxZikKPiA+ID4gPiArI2RlZmluZSBnMl9zdGFydF9iaXQJCUcyX0RFQ19SRUcoNSwgMjUsIDB4 N2YpCj4gPiA+ID4gICAjZGVmaW5lIGcyX3NjYWxpbmdfbGlzdF9lCUcyX0RFQ19SRUcoNSwgMjQs IDB4MSkKPiA+ID4gPiAgICNkZWZpbmUgZzJfY2JfcXBfb2Zmc2V0CQlHMl9ERUNfUkVHKDUsIDE5 LCAweDFmKQo+ID4gPiA+ICAgI2RlZmluZSBnMl9jcl9xcF9vZmZzZXQJCUcyX0RFQ19SRUcoNSwg MTQsIDB4MWYpCj4gPiA+ID4gQEAgLTg0LDYgKzg2LDcgQEAKPiA+ID4gPiAgICNkZWZpbmUgZzJf Yml0X2RlcHRoX3lfbWludXM4CUcyX0RFQ19SRUcoOCwgNiwgIDB4MykKPiA+ID4gPiAgICNkZWZp bmUgZzJfYml0X2RlcHRoX2NfbWludXM4CUcyX0RFQ19SRUcoOCwgNCwgIDB4MykKPiA+ID4gPiAg ICNkZWZpbmUgZzJfb3V0cHV0XzhfYml0cwlHMl9ERUNfUkVHKDgsIDMsICAweDEpCj4gPiA+ID4g KyNkZWZpbmUgZzJfb3V0cHV0X2Zvcm1hdAlHMl9ERUNfUkVHKDgsIDAsICAweDcpCj4gPiA+ID4g ICAjZGVmaW5lIGcyX3JlZmlkeDFfYWN0aXZlCUcyX0RFQ19SRUcoOSwgMTksIDB4MWYpCj4gPiA+ ID4gICAjZGVmaW5lIGcyX3JlZmlkeDBfYWN0aXZlCUcyX0RFQ19SRUcoOSwgMTQsIDB4MWYpCj4g PiA+ID4gQEAgLTk2LDYgKzk5LDE0IEBACj4gPiA+ID4gICAjZGVmaW5lIGcyX3RpbGVfZQkJRzJf REVDX1JFRygxMCwgMSwgIDB4MSkKPiA+ID4gPiAgICNkZWZpbmUgZzJfZW50cm9weV9zeW5jX2UJ RzJfREVDX1JFRygxMCwgMCwgIDB4MSkKPiA+ID4gPiArI2RlZmluZSB2cDlfdHJhbnNmb3JtX21v ZGUJRzJfREVDX1JFRygxMSwgMjcsIDB4NykKPiA+ID4gPiArI2RlZmluZSB2cDlfZmlsdF9zaGFy cG5lc3MJRzJfREVDX1JFRygxMSwgMjEsIDB4NykKPiA+ID4gPiArI2RlZmluZSB2cDlfbWNvbXBf ZmlsdF90eXBlCUcyX0RFQ19SRUcoMTEsICA4LCAweDcpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X2hp Z2hfcHJlY19tdl9lCUcyX0RFQ19SRUcoMTEsICA3LCAweDEpCj4gPiA+ID4gKyNkZWZpbmUgdnA5 X2NvbXBfcHJlZF9tb2RlCUcyX0RFQ19SRUcoMTEsICA0LCAweDMpCj4gPiA+ID4gKyNkZWZpbmUg dnA5X2dyZWZfc2lnbl9iaWFzCUcyX0RFQ19SRUcoMTEsICAyLCAweDEpCj4gPiA+ID4gKyNkZWZp bmUgdnA5X2FyZWZfc2lnbl9iaWFzCUcyX0RFQ19SRUcoMTEsICAwLCAweDEpCj4gPiA+ID4gKwo+ ID4gPiA+ICAgI2RlZmluZSBnMl9yZWZlcl9sdGVybV9lCUcyX0RFQ19SRUcoMTIsIDE2LCAweGZm ZmYpCj4gPiA+ID4gICAjZGVmaW5lIGcyX21pbl9jYl9zaXplCQlHMl9ERUNfUkVHKDEyLCAxMywg MHg3KQo+ID4gPiA+ICAgI2RlZmluZSBnMl9tYXhfY2Jfc2l6ZQkJRzJfREVDX1JFRygxMiwgMTAs IDB4NykKPiA+ID4gPiBAQCAtMTU0LDYgKzE2NSw1MCBAQAo+ID4gPiA+ICAgI2RlZmluZSBnMl9w YXJ0aWFsX2N0Yl95CUcyX0RFQ19SRUcoMjAsIDMwLCAweDEpCj4gPiA+ID4gICAjZGVmaW5lIGcy X3BpY193aWR0aF80eDQJRzJfREVDX1JFRygyMCwgMTYsIDB4ZmZmKQo+ID4gPiA+ICAgI2RlZmlu ZSBnMl9waWNfaGVpZ2h0XzR4NAlHMl9ERUNfUkVHKDIwLCAwLCAgMHhmZmYpCj4gPiA+ID4gKwo+ ID4gPiA+ICsjZGVmaW5lIHZwOV9xcF9kZWx0YV95X2RjCUcyX0RFQ19SRUcoMTMsIDIzLCAweDNm KQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9xcF9kZWx0YV9jaF9kYwlHMl9ERUNfUkVHKDEzLCAxNywg MHgzZikKPiA+ID4gPiArI2RlZmluZSB2cDlfcXBfZGVsdGFfY2hfYWMJRzJfREVDX1JFRygxMywg MTEsIDB4M2YpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X2xhc3Rfc2lnbl9iaWFzCUcyX0RFQ19SRUco MTMsIDEwLCAweDEpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X2xvc3NsZXNzX2UJCUcyX0RFQ19SRUco MTMsICA5LCAweDEpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X2NvbXBfcHJlZF92YXJfcmVmMQlHMl9E RUNfUkVHKDEzLCAgNywgMHgzKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9jb21wX3ByZWRfdmFyX3Jl ZjAJRzJfREVDX1JFRygxMywgIDUsIDB4MykKPiA+ID4gPiArI2RlZmluZSB2cDlfY29tcF9wcmVk X2ZpeGVkX3JlZglHMl9ERUNfUkVHKDEzLCAgMywgMHgzKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9z ZWdtZW50X3RlbXBfdXBkX2UJRzJfREVDX1JFRygxMywgIDIsIDB4MSkKPiA+ID4gPiArI2RlZmlu ZSB2cDlfc2VnbWVudF91cGRfZQlHMl9ERUNfUkVHKDEzLCAgMSwgMHgxKQo+ID4gPiA+ICsjZGVm aW5lIHZwOV9zZWdtZW50X2UJCUcyX0RFQ19SRUcoMTMsICAwLCAweDEpCj4gPiA+ID4gKwo+ID4g PiA+ICsjZGVmaW5lIHZwOV9maWx0X2xldmVsCQlHMl9ERUNfUkVHKDE0LCAxOCwgMHgzZikKPiA+ ID4gPiArI2RlZmluZSB2cDlfcmVmcGljX3NlZzAJCUcyX0RFQ19SRUcoMTQsIDE1LCAweDcpCj4g PiA+ID4gKyNkZWZpbmUgdnA5X3NraXBfc2VnMAkJRzJfREVDX1JFRygxNCwgMTQsIDB4MSkKPiA+ ID4gPiArI2RlZmluZSB2cDlfZmlsdF9sZXZlbF9zZWcwCUcyX0RFQ19SRUcoMTQsICA4LCAweDNm KQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9xdWFudF9zZWcwCQlHMl9ERUNfUkVHKDE0LCAgMCwgMHhm ZikKPiA+ID4gPiArCj4gPiA+ID4gKyNkZWZpbmUgdnA5X3JlZnBpY19zZWcxCQlHMl9ERUNfUkVH KDE1LCAxNSwgMHg3KQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9za2lwX3NlZzEJCUcyX0RFQ19SRUco MTUsIDE0LCAweDEpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X2ZpbHRfbGV2ZWxfc2VnMQlHMl9ERUNf UkVHKDE1LCAgOCwgMHgzZikKPiA+ID4gPiArI2RlZmluZSB2cDlfcXVhbnRfc2VnMQkJRzJfREVD X1JFRygxNSwgIDAsIDB4ZmYpCj4gPiA+ID4gKwo+ID4gPiA+ICsjZGVmaW5lIHZwOV9yZWZwaWNf c2VnMgkJRzJfREVDX1JFRygxNiwgMTUsIDB4NykKPiA+ID4gPiArI2RlZmluZSB2cDlfc2tpcF9z ZWcyCQlHMl9ERUNfUkVHKDE2LCAxNCwgMHgxKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9maWx0X2xl dmVsX3NlZzIJRzJfREVDX1JFRygxNiwgIDgsIDB4M2YpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X3F1 YW50X3NlZzIJCUcyX0RFQ19SRUcoMTYsICAwLCAweGZmKQo+ID4gPiA+ICsKPiA+ID4gPiArI2Rl ZmluZSB2cDlfcmVmcGljX3NlZzMJCUcyX0RFQ19SRUcoMTcsIDE1LCAweDcpCj4gPiA+ID4gKyNk ZWZpbmUgdnA5X3NraXBfc2VnMwkJRzJfREVDX1JFRygxNywgMTQsIDB4MSkKPiA+ID4gPiArI2Rl ZmluZSB2cDlfZmlsdF9sZXZlbF9zZWczCUcyX0RFQ19SRUcoMTcsICA4LCAweDNmKQo+ID4gPiA+ ICsjZGVmaW5lIHZwOV9xdWFudF9zZWczCQlHMl9ERUNfUkVHKDE3LCAgMCwgMHhmZikKPiA+ID4g PiArCj4gPiA+ID4gKyNkZWZpbmUgdnA5X3JlZnBpY19zZWc0CQlHMl9ERUNfUkVHKDE4LCAxNSwg MHg3KQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9za2lwX3NlZzQJCUcyX0RFQ19SRUcoMTgsIDE0LCAw eDEpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X2ZpbHRfbGV2ZWxfc2VnNAlHMl9ERUNfUkVHKDE4LCAg OCwgMHgzZikKPiA+ID4gPiArI2RlZmluZSB2cDlfcXVhbnRfc2VnNAkJRzJfREVDX1JFRygxOCwg IDAsIDB4ZmYpCj4gPiA+ID4gKwo+ID4gPiA+ICsjZGVmaW5lIHZwOV9yZWZwaWNfc2VnNQkJRzJf REVDX1JFRygxOSwgMTUsIDB4NykKPiA+ID4gPiArI2RlZmluZSB2cDlfc2tpcF9zZWc1CQlHMl9E RUNfUkVHKDE5LCAxNCwgMHgxKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9maWx0X2xldmVsX3NlZzUJ RzJfREVDX1JFRygxOSwgIDgsIDB4M2YpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X3F1YW50X3NlZzUJ CUcyX0RFQ19SRUcoMTksICAwLCAweGZmKQo+ID4gPiA+ICsKPiA+ID4gPiAgICNkZWZpbmUgaGV2 Y19jdXJfcG9jXzAwCQlHMl9ERUNfUkVHKDQ2LCAyNCwgMHhmZikKPiA+ID4gPiAgICNkZWZpbmUg aGV2Y19jdXJfcG9jXzAxCQlHMl9ERUNfUkVHKDQ2LCAxNiwgMHhmZikKPiA+ID4gPiAgICNkZWZp bmUgaGV2Y19jdXJfcG9jXzAyCQlHMl9ERUNfUkVHKDQ2LCA4LCAgMHhmZikKPiA+ID4gPiBAQCAt MTc0LDYgKzIyOSw0NCBAQAo+ID4gPiA+ICAgI2RlZmluZSBoZXZjX2N1cl9wb2NfMTQJCUcyX0RF Q19SRUcoNDksIDgsICAweGZmKQo+ID4gPiA+ICAgI2RlZmluZSBoZXZjX2N1cl9wb2NfMTUJCUcy X0RFQ19SRUcoNDksIDAsICAweGZmKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9yZWZwaWNfc2VnNgkJ RzJfREVDX1JFRygzMSwgMTUsIDB4NykKPiA+ID4gPiArI2RlZmluZSB2cDlfc2tpcF9zZWc2CQlH Ml9ERUNfUkVHKDMxLCAxNCwgMHgxKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9maWx0X2xldmVsX3Nl ZzYJRzJfREVDX1JFRygzMSwgIDgsIDB4M2YpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X3F1YW50X3Nl ZzYJCUcyX0RFQ19SRUcoMzEsICAwLCAweGZmKQo+ID4gPiA+ICsKPiA+ID4gPiArI2RlZmluZSB2 cDlfcmVmcGljX3NlZzcJCUcyX0RFQ19SRUcoMzIsIDE1LCAweDcpCj4gPiA+ID4gKyNkZWZpbmUg dnA5X3NraXBfc2VnNwkJRzJfREVDX1JFRygzMiwgMTQsIDB4MSkKPiA+ID4gPiArI2RlZmluZSB2 cDlfZmlsdF9sZXZlbF9zZWc3CUcyX0RFQ19SRUcoMzIsICA4LCAweDNmKQo+ID4gPiA+ICsjZGVm aW5lIHZwOV9xdWFudF9zZWc3CQlHMl9ERUNfUkVHKDMyLCAgMCwgMHhmZikKPiA+ID4gPiArCj4g PiA+ID4gKyNkZWZpbmUgdnA5X2xyZWZfd2lkdGgJCUcyX0RFQ19SRUcoMzMsIDE2LCAweGZmZmYp Cj4gPiA+ID4gKyNkZWZpbmUgdnA5X2xyZWZfaGVpZ2h0CQlHMl9ERUNfUkVHKDMzLCAgMCwgMHhm ZmZmKQo+ID4gPiA+ICsKPiA+ID4gPiArI2RlZmluZSB2cDlfZ3JlZl93aWR0aAkJRzJfREVDX1JF RygzNCwgMTYsIDB4ZmZmZikKPiA+ID4gPiArI2RlZmluZSB2cDlfZ3JlZl9oZWlnaHQJCUcyX0RF Q19SRUcoMzQsICAwLCAweGZmZmYpCj4gPiA+ID4gKwo+ID4gPiA+ICsjZGVmaW5lIHZwOV9hcmVm X3dpZHRoCQlHMl9ERUNfUkVHKDM1LCAxNiwgMHhmZmZmKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9h cmVmX2hlaWdodAkJRzJfREVDX1JFRygzNSwgIDAsIDB4ZmZmZikKPiA+ID4gPiArCj4gPiA+ID4g KyNkZWZpbmUgdnA5X2xyZWZfaG9yX3NjYWxlCUcyX0RFQ19SRUcoMzYsIDE2LCAweGZmZmYpCj4g PiA+ID4gKyNkZWZpbmUgdnA5X2xyZWZfdmVyX3NjYWxlCUcyX0RFQ19SRUcoMzYsICAwLCAweGZm ZmYpCj4gPiA+ID4gKwo+ID4gPiA+ICsjZGVmaW5lIHZwOV9ncmVmX2hvcl9zY2FsZQlHMl9ERUNf UkVHKDM3LCAxNiwgMHhmZmZmKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9ncmVmX3Zlcl9zY2FsZQlH Ml9ERUNfUkVHKDM3LCAgMCwgMHhmZmZmKQo+ID4gPiA+ICsKPiA+ID4gPiArI2RlZmluZSB2cDlf YXJlZl9ob3Jfc2NhbGUJRzJfREVDX1JFRygzOCwgMTYsIDB4ZmZmZikKPiA+ID4gPiArI2RlZmlu ZSB2cDlfYXJlZl92ZXJfc2NhbGUJRzJfREVDX1JFRygzOCwgIDAsIDB4ZmZmZikKPiA+ID4gPiAr Cj4gPiA+ID4gKyNkZWZpbmUgdnA5X2ZpbHRfcmVmX2Fkal8wCUcyX0RFQ19SRUcoNDYsIDI0LCAw eDdmKQo+ID4gPiA+ICsjZGVmaW5lIHZwOV9maWx0X3JlZl9hZGpfMQlHMl9ERUNfUkVHKDQ2LCAx NiwgMHg3ZikKPiA+ID4gPiArI2RlZmluZSB2cDlfZmlsdF9yZWZfYWRqXzIJRzJfREVDX1JFRyg0 NiwgIDgsIDB4N2YpCj4gPiA+ID4gKyNkZWZpbmUgdnA5X2ZpbHRfcmVmX2Fkal8zCUcyX0RFQ19S RUcoNDYsICAwLCAweDdmKQo+ID4gPiA+ICsKPiA+ID4gPiArI2RlZmluZSB2cDlfZmlsdF9tYl9h ZGpfMAlHMl9ERUNfUkVHKDQ3LCAyNCwgMHg3ZikKPiA+ID4gPiArI2RlZmluZSB2cDlfZmlsdF9t Yl9hZGpfMQlHMl9ERUNfUkVHKDQ3LCAxNiwgMHg3ZikKPiA+ID4gPiArI2RlZmluZSB2cDlfZmls dF9tYl9hZGpfMglHMl9ERUNfUkVHKDQ3LCAgOCwgMHg3ZikKPiA+ID4gPiArI2RlZmluZSB2cDlf ZmlsdF9tYl9hZGpfMwlHMl9ERUNfUkVHKDQ3LCAgMCwgMHg3ZikKPiA+ID4gPiArCj4gPiA+ID4g ICAjZGVmaW5lIGcyX2FwZl90aHJlc2hvbGQJRzJfREVDX1JFRyg1NSwgMCwgMHhmZmZmKQo+ID4g PiA+ICAgI2RlZmluZSBnMl9jbGtfZ2F0ZV9lCQlHMl9ERUNfUkVHKDU4LCAxNiwgMHgxKQo+ID4g PiA+IEBAIC0xODYsNiArMjc5LDggQEAKPiA+ID4gPiAgICNkZWZpbmUgRzJfQUREUl9EU1QJCShH Ml9TV1JFRyg2NSkpCj4gPiA+ID4gICAjZGVmaW5lIEcyX1JFR19BRERSX1JFRihpKQkoRzJfU1dS RUcoNjcpICArICgoaSkgKiAweDgpKQo+ID4gPiA+ICsjZGVmaW5lIFZQOV9BRERSX1NFR01FTlRf V1JJVEUJKEcyX1NXUkVHKDc5KSkKPiA+ID4gPiArI2RlZmluZSBWUDlfQUREUl9TRUdNRU5UX1JF QUQJKEcyX1NXUkVHKDgxKSkKPiA+ID4gPiAgICNkZWZpbmUgRzJfQUREUl9EU1RfQ0hSCQkoRzJf U1dSRUcoOTkpKQo+ID4gPiA+ICAgI2RlZmluZSBHMl9SRUdfQ0hSX1JFRihpKQkoRzJfU1dSRUco MTAxKSArICgoaSkgKiAweDgpKQo+ID4gPiA+ICAgI2RlZmluZSBHMl9BRERSX0RTVF9NVgkJKEcy X1NXUkVHKDEzMykpCj4gPiA+ID4gQEAgLTE5Myw2ICsyODgsOCBAQAo+ID4gPiA+ICAgI2RlZmlu ZSBHMl9BRERSX1RJTEVfU0laRQkoRzJfU1dSRUcoMTY3KSkKPiA+ID4gCj4gPiA+IEkgdGhpbmsg dGhpcyBuYW1lIGNhbiBiZSBpbXByb3ZlZC4gV2UgZG9uJ3Qgc2F5ICJHMiBhZGRyZXNzIHRpbGUg c2l6ZSIsIGJ1dCAiRzIKPiA+ID4gdGlsZSBzaXplIGFkZHJlc3MiLiBBbHNvLCB0aGVyZSBpcyBt dWx0aXBsZSB0aWxlIHNpemVzLCBzbyBJJ2QgcHJlZmVyIGlmIHdlIHNheQo+ID4gPiAiRzIgdGls ZSBzaXplcyBhZGRyZXNzIi4gTWF5IEkgc3VnZ2VzdCB0aGlzIG5hbWluZyB0aGVuID8KPiA+ID4g Cj4gPiA+ICAgICNkZWZpbmUgRzJfVElMRV9TSVpFU19BRERSX0xTQiAuLi4KPiA+ID4gCj4gPiA+ IEFzIGEgcmVmZXJlbmNlLCBWU0kgbmFtZXMgdGhpcyBzd190aWxlX2Jhc2VfbHNiIC4gVGhhdCBk ZW5vdGVzIHRoYXQgdGhlIG5hbWUKPiA+ID4gYWxzbyBmYWlscyB0byBjYXB0dXJlIHRoYXQgdGhp cyBpcyBvbmx5IHRoZSBsb3dlciAzMmJpdCBvZiB0aGUgdGlsZV9zaXplcwo+ID4gPiBhZGRyZXNz IGFuZCB0aGF0IGlmIHNvbWVvbmUgaGF2ZSBhIEcyIGNvcmUgb24gYSBsYXJnZXIgYW1vdW50IG9m IFJBTSBpdCB3aWxsCj4gPiA+IG5lZWQgdG8gZmlndXJlIHdoZXJlIGlzIHRoZSBzZWNvbmQgaGFs ZiAoc3BvaWxlciwgaXQgbG9va3MgbGlrZSBpdCdzCj4gPiA+IEcxX1NXUkVHKDE2NikgKS4gQW55 d2F5LCB0aGF0J3Mgd2h5IEknbSBwcm9wb3NpbmcgZHJvcHBpbmcgTFNCIGluIHRoZXJlLiBOb3QK PiA+ID4gc3VyZSBiZXR3ZWVuIExTQl9BRERSIG9yIEFERFJfTFNCLgo+ID4gCj4gPiBUaGUgTFNC L01TQiBwb2ludCBpcyBpbmRlZWQgdmFsaWQuIEkgdGhpbmsgSSB3aWxsIGNoYW5nZSBoYW50cm9f d3JpdGVfYWRkcigpIHRvCj4gPiBzb21ldGhpbmcgb24gdGhlIGxpbmVzIG9mOgo+ID4gCj4gPiBz dGF0aWMgaW5saW5lIHZvaWQgaGFudHJvX3dyaXRlX2FkZHIoc3RydWN0IGhhbnRyb19kZXYgKnZw dSwKPiA+IAkJCQkgICAgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0LAo+ID4gCQkJCSAgICAgZG1hX2Fk ZHJfdCBhZGRyKQo+ID4gewo+ID4gCXZkcHVfd3JpdGUodnB1LCBhZGRyICYgMHhmZmZmZmZmZiwg b2Zmc2V0KTsKPiA+ICNpZmRlZiBDT05GSUdfQVJDSF9ETUFfQUREUl9UXzY0QklUCj4gPiAJdmRw dV93cml0ZSh2cHUsIChhZGRyID4+IDMyKSAmIDB4ZmZmZmZmZmYsIG9mZnNldCArIDQpOwo+ID4g I2VuZGlmCj4gPiB9Cj4gPiAKPiA+IFRoZW4gdGhlICNkZWZpbmVzIHdpbGwgbm90IG5lZWQgdGhl IF9MU0IvX01TQiBzdWZmaXhlcyBhdCBhbGwKPiA+IChhbmQgd2lsbCByZW1haW4gYXMgdGhleSBh cmUpIGFuZCB0aGUgbW9kaWZpZWQgZnVuY3Rpb24gd2lsbAo+ID4gc3RpbGwgZG8gdGhlIHJpZ2h0 IHRoaW5nLgo+ID4gCj4gCj4gSSdkIHJhdGhlciBub3QgZ28gaW4gdGhpcyBkaXJlY3Rpb24uIEZp cnN0IG9mIGFsbCwgaWZkZWZzIGFyZSBzb21ldGhpbmcKPiB0byBhdm9pZCwgYW5kIG9ubHkgdXNl IGlmIHJlYWxseSBuZWVkZWQuIEkga25vdyB0aGVyZSBhcmUgb3RoZXIgZHJpdmVycwo+IGRvaW5n IHRoaXMsIGJ1dCB0aGF0IGRvZXNuJ3QgbWVhbiBpdCdzIG5pY2UuCj4gCj4gQW5kIHRoZW4gSSdt IG5vdCBzdXJlIGlmIHRoaXMgaXMgZXZlbiBjb3JyZWN0LiBUaGUgTVNCIGJpdHMgYXJlIG5lZWRl ZAo+IGlmIHRoZSBkZXZpY2UgaXMgc2l0dGluZyBvbiBhIGJ1cyB0aGF0IGNhbiBkbyA2NC1iaXRz IERNQS4KPiBUaGF0IF9tYXlfIGJlIHNvbWV0aGluZyB5b3UgY2FuIGZpZ3VyZSBvdXQgcGVyIGFy Y2hpdGVjdHVyZSwKPiBidXQgZG9lc24ndCBoYXZlIHRvIGJlIGxpa2UgdGhhdC4KPiAKPiBGb3Ig aW5zdGFuY2UsIHRoZSBIYW50cm8gZGV2aWNlIGNvdWxkIGJlIHNpdHRpbmcgb24gUENJIChBZGRp bmcKPiBSb2JlcnQgaW4gQ2Mgd2hvIGNhbiBjb21tZW50IG9uIHRoaXMpLgo+IAo+IEZvciBub3cs IEkgZG9uJ3QgdGhpbmsgd2UgY2FyZSBnaXZlbiB3ZSBhcmUgc2V0dGluZwo+IHRoZSBETUEgbWFz ayB0byAzMi1iaXRzIChzZWUgaGFudHJvX3Byb2JlKS4gU28gd2Ugd29uJ3QgZ2V0Cj4gNjQtYml0 IGFkZHJlc3Nlcy4gSSdkIHJlYWxseSBsaWtlIHRvIHNlZSA2NC1iaXQgc3VwcG9ydAo+IHZpYSB0 aGUgTFNCL01TQiByZWdpc3RlcnMsIGJ1dCBJIHRoaW5rIGl0J3Mgbm90IHNvbWV0aGluZwo+IHdl IHNob3VsZCBjb3ZlciBvbiB0aGlzIFZQOSBwYXRjaHNldC4KClBlcmhhcHMgeW91IHdhbnRlZCB0 byBzdWdnZXN0IHRvIGp1c3QgY2xlYXIgdGhlIE1TQiB0byAwIGZvciBub3cgPyBPciBwZXJoYXBz CnlvdSBmb3Jnb3QgdG8gbWFrZSBhIHN1Z2dlc3Rpb24gYW5kIGhhdmUgc29tZXRoaW5nIGVsc2Ug aW4gbWluZCA/CgpUaGUgcmVnaXN0ZXIgbmFtZXMgYXJlIHdyaXR0ZW4gYXMgZm9vdCBndW5zLCB0 aGV5IGRvbid0IG1hdGNoIGVpdGhlciBIVyBkZXNpZ25lcgpkb2MsIG9yIHZlbmRvciBjb2RlLCBh bmQgdGhleSBhcmUgbWlzc2luZyBwcmV2aW91cyBpbmZvcm1hdGlvbiwgbGlrZSBiZWluZyBhbgph ZGRyZXNzLCBvciBoYXZpbmcgYSBjb21wYW5pb24gTVNCIGFkZHIuIFdlIGRvbid0IGhhdmUgdG8g Zml4IGV2ZXJ5dGhpbmcsIGJ1dCBJCnRoaW5rIHdoZW4gd2Ugbm90aWNlIHN1Y2ggdGhpbmcsIGl0 IHNob3VsZCBhdCBsZWFzdCBnbyBpbnRvIFRPRE9zIG9mIHRoZQpyZXNwZWN0aXZlIHN0YWdpbmcg ZHJpdmVyIGlmIG5vdCBhbHJlYWR5IHRoZXJlLgoKPiAKPiBPbmUgbW9yZSB0aGluZzogaXMgaXQg Y29ycmVjdCB0byBhc3N1bWUgdGhhdCB0aGUgTVNCIHJlZ2lzdGVyCj4gaXMgYWx3YXlzIHJpZ2h0 IGFmdGVyIHRoZSBMU0IgcmVnaXN0ZXI/IElzIHRoYXQgdGhlIGNhc2UKPiBmb3IgYWxsIGJ1ZmZl cnMgYW5kIEhhbnRyby1saWtlIHZhcmlhbnRzPwoKV2VsbCwgbm8sIHNpbmNlIGl0J3MgYWx3YXlz IGJlZm9yZSAoZS5nLiBSRUcgMTY2IGlzICBzd190aWxlX2Jhc2VfbXNiIGFuZCBSRUcKMTY3IGlz IHN3X3RpbGVfYmFzZV9sc2IpLiBJIGRpZG4ndCBjb21tZW50IGFzIHRoaXMgd2FzIGNvbW1lbnRl ZCBhcyAic29tZXRoaW5nCm9uIHRoZSBsaW5lcyBvZjoiIGFuZCBJJ20gcHJldHR5IHN1cmUgQW5k cnplaiBQaWV0cmFzaWV3aWN6ICB3b3VsZCBoYXZlIG5vdGljZWQuClRob3VnaCwgZnJvbSB0aGUg YmVzdCBvZiBteSByZWFkaW5nIG9mIHRoZSByZWYgY29kZSBhbmQgcmVnaXN0ZXIgbWFwIGRvY3Vt ZW50IEkKaGF2ZSwgaXQncyBjb25zaXN0ZW50IGZvciBhbGwgYWRkcmVzc2VzLgoKPiAKPiBUaGFu a3MsCj4gRXplcXVpZWwKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KTGludXgtcm9ja2NoaXAgbWFpbGluZyBsaXN0CkxpbnV4LXJvY2tjaGlwQGxpc3Rz LmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5m by9saW51eC1yb2NrY2hpcAo=