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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 0449EFA373D for ; Sat, 22 Oct 2022 10:41:01 +0000 (UTC) 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=Mj2lZTq2UI1fmBe8lcar40ds168GBjQpiilUZ6NIcpE=; b=QJvVlp7XvCaUL8 +uG3SKzuoZm0lYd2PqevgxnoOdQaDp0h75kmLtDNYFvE0hwD4iTc4N9ZDMo/JSGXLMo9zyk9NjlmJ Ky8LV8/myV6xBM0VLeHxkiK4RZYBckpn+gUy47nsOdLbLNDcfAdJ0hOywjDZeOcAlKtvHlJb7cIoZ hXZdo40Dk0fX1m/qvtRvosgEc40yz363+YPNk9LBj25aBlpZN+eaBAsuyPc3uf2hhPv9QOsHhO5vt JLUtYtdP2yVJ1IrSvQjBoPS1B2yP4J7F721CoVoO7byiR817i2BrXh0W0WBlYYTLle4gMBbyd29wF jbcvi7q4MnLET7yAIwtA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1omBuv-00CFnE-Fz; Sat, 22 Oct 2022 10:39:49 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1omBus-00CFlT-1d; Sat, 22 Oct 2022 10:39:48 +0000 X-UUID: 14851c1ed5454a7b80642082c824a70b-20221022 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=dM4knmEbXoLi8Z8yhKlsNzUq6m5aHXU9IxgQE5YBYsI=; b=tUMYCKd9MtUWGWC3wnXC4Ikdc6lUQjLeGv13Aq8Yb7Ov0sW5+8hhvy/XlcePFOTg4c0AxgMdg1M6+rI4DvTc21vKENRrmJO0NvbAaSnNee4w+p92tRp3eoMIQHAC4uu+rghAGy3Bo6ngU7ZCjd13Wl9p5+hDkyBf9J3opUVSzSE=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.12,REQID:689b61f5-71c1-4cf1-b9d3-13794ce8ff43,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:0 X-CID-META: VersionHash:62cd327,CLOUDID:bd07c26c-89d3-4bfa-baad-dc632a24bca3,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:11|1,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0 X-UUID: 14851c1ed5454a7b80642082c824a70b-20221022 Received: from mtkmbs11n1.mediatek.inc [(172.21.101.185)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1229349660; Sat, 22 Oct 2022 03:39:36 -0700 Received: from mtkmbs11n1.mediatek.inc (172.21.101.185) by mtkmbs11n1.mediatek.inc (172.21.101.185) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.792.15; Sat, 22 Oct 2022 17:59:30 +0800 Received: from mszsdhlt06 (10.16.6.206) by mtkmbs11n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.792.15 via Frontend Transport; Sat, 22 Oct 2022 17:59:30 +0800 Message-ID: Subject: Re: [PATCH v12,1/3] soc: mediatek: Add all settings to mtk_mmsys_ddp_dpi_fmt_config func From: xinlei.lee To: "=?ISO-8859-1?Q?N=EDcolas?= F. R. A. Prado" CC: , , , , , , , , , , , , Date: Sat, 22 Oct 2022 17:59:37 +0800 In-Reply-To: <20221021151423.6lube6aqtqahwpwf@notapiano> References: <1666147936-27368-1-git-send-email-xinlei.lee@mediatek.com> <1666147936-27368-2-git-send-email-xinlei.lee@mediatek.com> <20221020163310.tpkjvr7pe5vhwylh@notapiano> <28c0e6890daeb6bf17779243b23f60fa138b2fd2.camel@mediatek.com> <20221021151423.6lube6aqtqahwpwf@notapiano> X-Mailer: Evolution 3.28.5-0ubuntu0.18.04.2 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221022_033946_125311_8010204C X-CRM114-Status: GOOD ( 70.10 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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 T24gRnJpLCAyMDIyLTEwLTIxIGF0IDExOjE0IC0wNDAwLCBOw61jb2xhcyBGLiBSLiBBLiBQcmFk byB3cm90ZToKPiBPbiBGcmksIE9jdCAyMSwgMjAyMiBhdCAwNzo1OTowMlBNICswODAwLCB4aW5s ZWkubGVlIHdyb3RlOgo+ID4gT24gVGh1LCAyMDIyLTEwLTIwIGF0IDEyOjMzIC0wNDAwLCBOw61j b2xhcyBGLiBSLiBBLiBQcmFkbyB3cm90ZToKPiA+ID4gSGksCj4gPiA+IAo+ID4gPiBPbiBXZWQs IE9jdCAxOSwgMjAyMiBhdCAxMDo1MjoxNEFNICswODAwLCB4aW5sZWkubGVlQG1lZGlhdGVrLmNv bQo+ID4gPiB3cm90ZToKPiA+ID4gPiBGcm9tOiBYaW5sZWkgTGVlIDx4aW5sZWkubGVlQG1lZGlh dGVrLmNvbT4KPiA+ID4gPiAKPiA+ID4gPiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIE1UODE4NiBh bmQgb3RoZXIgSUNzIGlzIHRoYXQgd2hlbgo+ID4gPiA+IG1vZGlmeWluZwo+ID4gPiA+IHRoZQo+ ID4gPiA+IG91dHB1dCBmb3JtYXQsIHdlIG5lZWQgdG8gbW9kaWZ5IHRoZSBtbXN5c19iYXNlKzB4 NDAwIHJlZ2lzdGVyCj4gPiA+ID4gdG8KPiA+ID4gPiB0YWtlCj4gPiA+ID4gZWZmZWN0Lgo+ID4g PiA+IFNvIHdoZW4gc2V0dGluZyB0aGUgZHBpIG91dHB1dCBmb3JtYXQsIHdlIG5lZWQgdG8gY2Fs bAo+ID4gPiA+IG1tc3lzX2Z1bmMKPiA+ID4gPiB0byBzZXQKPiA+ID4gCj4gPiA+IG1tc3lzX2Z1 bmMgaXNuJ3Qgc29tZXRoaW5nIHRoYXQgZXhpc3RzIGluIHRoZSBjb2RlLiBJbnN0ZWFkCj4gPiA+ IG1lbnRpb24KPiA+ID4gdGhlIGFjdHVhbAo+ID4gPiBmdW5jdGlvbiBuYW1lOiBtdGtfbW1zeXNf ZGRwX2RwaV9mbXRfY29uZmlnLgo+ID4gPiAKPiA+ID4gPiBpdCB0byBNVDgxODYgc3luY2hyb25v dXNseS4KPiA+ID4gCj4gPiA+IAo+ID4gPiBIZXJlLCBiZWZvcmUgc2F5aW5nIHRoYXQgdGhlIGNv bW1pdCBhZGRzIGFsbCB0aGUgc2V0dGluZ3MgZm9yCj4gPiA+IGRwaSwKPiA+ID4geW91IGNvdWxk Cj4gPiA+IGhhdmUgbWVudGlvbmVkIHRoYXQgdGhlIHByZXZpb3VzIGNvbW1pdCBsYWNrZWQgdGhv c2UsIHRvIG1ha2UgaXQKPiA+ID4gY2xlYXJlcjoKPiA+ID4gCj4gPiA+IENvbW1pdCBhMDcxZTUy Zjc1ZDEgKCJzb2M6IG1lZGlhdGVrOiBBZGQgbW1zeXMgZnVuYyB0byBhZGFwdCB0bwo+ID4gPiBk cGkKPiA+ID4gb3V0cHV0IGZvciBNVDgxODYiKQo+ID4gPiBsYWNrZWQgc29tZSBvZiB0aGUgcG9z c2libGUgb3V0cHV0IGZvcm1hdHMgYW5kIGFsc28gaGFkIGEgd3JvbmcKPiA+ID4gYml0bWFzay4K PiA+ID4gCj4gPiA+IAo+ID4gPiA+IEFkZGluZyBtbXN5cyBhbGwgdGhlIHNldHRpbmdzIHRoYXQg bmVlZCB0byBiZSBtb2RpZmllZCB3aXRoIGRwaQo+ID4gPiA+IGFyZQo+ID4gPiA+IGZvcgo+ID4g PiA+IG10ODE4Ni4KPiA+ID4gCj4gPiA+IFRoaXMgc2VudGVuY2UgSSB3b3VsZCBjaGFuZ2UgdG8g dGhlIGZvbGxvd2luZyBvbmU6Cj4gPiA+IAo+ID4gPiBBZGQgdGhlIG1pc3Npbmcgb3V0cHV0IGZv cm1hdHMgYW5kIGZpeCB0aGUgYml0bWFzay4KPiA+ID4gCj4gPiA+IAo+ID4gPiBGaW5hbGx5LCB5 b3UncmUgYWxzbyBtYWtpbmcgdGhlIGZ1bmN0aW9uIG1vcmUgSFctYWdub3N0aWMKPiA+ID4gKGFs dGhvdWdoCj4gPiA+IGluIG15Cj4gPiA+IG9waW5pb24gdGhpcyBjb3VsZCd2ZSBiZWVuIGEgZnV0 dXJlIHNlcGFyYXRlIGNvbW1pdCksIHNvIGl0J3MKPiA+ID4gd29ydGgKPiA+ID4gbWVudGlvbmlu Zwo+ID4gPiBpdCBoZXJlOgo+ID4gPiAKPiA+ID4gV2hpbGUgYXQgaXQsIGFsc28gdXBkYXRlIG10 a19tbXN5c19kZHBfZHBpX2ZtdF9jb25maWcoKSB0byB1c2UKPiA+ID4gZ2VuZXJpYyBmb3JtYXRz LAo+ID4gPiBzbyB0aGF0IGl0IGlzIHNsaWdodGx5IGVhc2llciB0byBleHRlbmQgZm9yIG90aGVy IHBsYXRmb3Jtcy4KPiA+ID4gCj4gPiA+ID4gCj4gPiA+ID4gRml4ZXM6IGEwNzFlNTJmNzVkMSAo InNvYzogbWVkaWF0ZWs6IEFkZCBtbXN5cyBmdW5jIHRvIGFkYXB0IHRvCj4gPiA+ID4gZHBpCj4g PiA+ID4gb3V0cHV0IGZvciBNVDgxODYiKQo+ID4gPiAKPiA+ID4gVGhlIGZpeGVzIHRhZyBzaG91 bGQgYmUga2VwdCBpbiBhIHNpbmdsZSBsaW5lLCB3aXRob3V0IHdyYXBwaW5nLgo+ID4gPiAKPiA+ ID4gPiAKPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBYaW5sZWkgTGVlIDx4aW5sZWkubGVlQG1lZGlh dGVrLmNvbT4KPiA+ID4gPiBSZXZpZXdlZC1ieTogQW5nZWxvR2lvYWNjaGlubyBEZWwgUmVnbm8g PAo+ID4gPiA+IGFuZ2Vsb2dpb2FjY2hpbm8uZGVscmVnbm9AY29sbGFib3JhLmNvbT4KPiA+ID4g PiBSZXZpZXdlZC1ieTogQ0sgSHUgPGNrLmh1QG1lZGlhdGVrLmNvbT4KPiA+ID4gPiAtLS0KPiA+ ID4gPiAgZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXQ4MTg2LW1tc3lzLmggICAgfCAgOCArKysrKy0t LQo+ID4gPiA+ICBkcml2ZXJzL3NvYy9tZWRpYXRlay9tdGstbW1zeXMuYyAgICAgICB8IDI3Cj4g PiA+ID4gKysrKysrKysrKysrKysrKysrKysKPiA+ID4gPiAtLS0tLS0KPiA+ID4gPiAgaW5jbHVk ZS9saW51eC9zb2MvbWVkaWF0ZWsvbXRrLW1tc3lzLmggfCAgNyArKysrKysrCj4gPiA+ID4gIDMg ZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKPiA+ID4gPiAK PiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXQ4MTg2LW1tc3lzLmgK PiA+ID4gPiBiL2RyaXZlcnMvc29jL21lZGlhdGVrL210ODE4Ni1tbXN5cy5oCj4gPiA+ID4gaW5k ZXggMDliMWNjYmMwMDkzLi4wMzVhZWMxZWI2MTYgMTAwNjQ0Cj4gPiA+ID4gLS0tIGEvZHJpdmVy cy9zb2MvbWVkaWF0ZWsvbXQ4MTg2LW1tc3lzLmgKPiA+ID4gPiArKysgYi9kcml2ZXJzL3NvYy9t ZWRpYXRlay9tdDgxODYtbW1zeXMuaAo+ID4gPiA+IEBAIC01LDkgKzUsMTEgQEAKPiA+ID4gPiAg Cj4gPiA+ID4gIC8qIFZhbHVlcyBmb3IgRFBJIGNvbmZpZ3VyYXRpb24gaW4gTU1TWVMgYWRkcmVz cyBzcGFjZSAqLwo+ID4gPiA+ICAjZGVmaW5lIE1UODE4Nl9NTVNZU19EUElfT1VUUFVUX0ZPUk1B VAkJMHg0MDAKPiA+ID4gPiAtI2RlZmluZSBEUElfRk9STUFUX01BU0sJCQkJCQo+ID4gPiA+IDB4 MQo+ID4gPiA+IC0jZGVmaW5lIERQSV9SR0I4ODhfRERSX0NPTgkJCQlCSVQoMCkKPiA+ID4gPiAt I2RlZmluZSBEUElfUkdCNTY1X1NEUl9DT04JCQkJQklUKDEpCj4gPiA+ID4gKyNkZWZpbmUgRFBJ X0ZPUk1BVF9NQVNLCQkJCQkKPiA+ID4gPiBHRU5NQVNLCj4gPiA+ID4gKDEsIDApCj4gPiA+ID4g KyNkZWZpbmUgRFBJX1JHQjg4OF9TRFJfQ09OCQkJCTAKPiA+ID4gPiArI2RlZmluZSBEUElfUkdC ODg4X0REUl9DT04JCQkJMQo+ID4gPiA+ICsjZGVmaW5lIERQSV9SR0I1NjVfU0RSX0NPTgkJCQky Cj4gPiA+ID4gKyNkZWZpbmUgRFBJX1JHQjU2NV9ERFJfQ09OCQkJCTMKPiA+ID4gCj4gPiA+IFRo ZXNlIGRlZmluZXMgc2hvdWxkIGFsbCBoYXZlIGEgTVQ4MTg2XyBwcmVmaXguIFRoaXMgd2lsbCBh dm9pZAo+ID4gPiBjb25mdXNpb25zIG5vdwo+ID4gPiB0aGF0IG10a19tbXN5c19kZHBfZHBpX2Zt dF9jb25maWcoKSBpcyBiZWluZyBtYWRlIG1vcmUgcGxhdGZvcm0tCj4gPiA+IGFnbm9zdGljLgo+ ID4gPiAKPiA+ID4gPiAgCj4gPiA+ID4gICNkZWZpbmUgTVQ4MTg2X01NU1lTX09WTF9DT04JCQkw eEYwNAo+ID4gPiA+ICAjZGVmaW5lIE1UODE4Nl9NTVNZU19PVkwwX0NPTl9NQVNLCQkJMHgzCj4g PiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc29jL21lZGlhdGVrL210ay1tbXN5cy5jCj4gPiA+ ID4gYi9kcml2ZXJzL3NvYy9tZWRpYXRlay9tdGstbW1zeXMuYwo+ID4gPiA+IGluZGV4IGQyYzdh ODdhYWI4Ny4uMjA1ZjZkZTQ1ODUxIDEwMDY0NAo+ID4gPiA+IC0tLSBhL2RyaXZlcnMvc29jL21l ZGlhdGVrL210ay1tbXN5cy5jCj4gPiA+ID4gKysrIGIvZHJpdmVycy9zb2MvbWVkaWF0ZWsvbXRr LW1tc3lzLmMKPiA+ID4gPiBAQCAtMjM4LDEyICsyMzgsMjcgQEAgc3RhdGljIHZvaWQgbXRrX21t c3lzX3VwZGF0ZV9iaXRzKHN0cnVjdAo+ID4gPiA+IG10a19tbXN5cyAqbW1zeXMsIHUzMiBvZmZz ZXQsIHUzMiBtYXNrLAo+ID4gPiA+ICAKPiA+ID4gPiAgdm9pZCBtdGtfbW1zeXNfZGRwX2RwaV9m bXRfY29uZmlnKHN0cnVjdCBkZXZpY2UgKmRldiwgdTMyIHZhbCkKPiA+ID4gPiAgewo+ID4gPiA+ IC0JaWYgKHZhbCkKPiA+ID4gPiAtCQltdGtfbW1zeXNfdXBkYXRlX2JpdHMoZGV2X2dldF9kcnZk YXRhKGRldiksCj4gPiA+ID4gTVQ4MTg2X01NU1lTX0RQSV9PVVRQVVRfRk9STUFULAo+ID4gPiA+ IC0JCQkJICAgICAgRFBJX1JHQjg4OF9ERFJfQ09OLAo+ID4gPiA+IERQSV9GT1JNQVRfTUFTSyk7 Cj4gPiA+ID4gLQllbHNlCj4gPiA+ID4gLQkJbXRrX21tc3lzX3VwZGF0ZV9iaXRzKGRldl9nZXRf ZHJ2ZGF0YShkZXYpLAo+ID4gPiA+IE1UODE4Nl9NTVNZU19EUElfT1VUUFVUX0ZPUk1BVCwKPiA+ ID4gPiAtCQkJCSAgICAgIERQSV9SR0I1NjVfU0RSX0NPTiwKPiA+ID4gPiBEUElfRk9STUFUX01B U0spOwo+ID4gPiA+ICsJc3RydWN0IG10a19tbXN5cyAqbW1zeXMgPSBkZXZfZ2V0X2RydmRhdGEo ZGV2KTsKPiA+ID4gPiArCj4gPiA+ID4gKwlzd2l0Y2ggKHZhbCkgewo+ID4gPiA+ICsJY2FzZSBN VEtfRFBJX1JHQjg4OF9TRFJfQ09OOgo+ID4gPiA+ICsJCW10a19tbXN5c191cGRhdGVfYml0cyht bXN5cywKPiA+ID4gPiBNVDgxODZfTU1TWVNfRFBJX09VVFBVVF9GT1JNQVQsCj4gPiA+ID4gKwkJ CQkgICAgICBEUElfRk9STUFUX01BU0ssCj4gPiA+ID4gRFBJX1JHQjg4OF9TRFJfQ09OKTsKPiA+ ID4gPiArCQlicmVhazsKPiA+ID4gPiArCWNhc2UgTVRLX0RQSV9SR0I1NjVfU0RSX0NPTjoKPiA+ ID4gPiArCQltdGtfbW1zeXNfdXBkYXRlX2JpdHMobW1zeXMsCj4gPiA+ID4gTVQ4MTg2X01NU1lT X0RQSV9PVVRQVVRfRk9STUFULAo+ID4gPiA+ICsJCQkJICAgICAgRFBJX0ZPUk1BVF9NQVNLLAo+ ID4gPiA+IERQSV9SR0I1NjVfU0RSX0NPTik7Cj4gPiA+ID4gKwkJYnJlYWs7Cj4gPiA+ID4gKwlj YXNlIE1US19EUElfUkdCNTY1X0REUl9DT046Cj4gPiA+ID4gKwkJbXRrX21tc3lzX3VwZGF0ZV9i aXRzKG1tc3lzLAo+ID4gPiA+IE1UODE4Nl9NTVNZU19EUElfT1VUUFVUX0ZPUk1BVCwKPiA+ID4g PiArCQkJCSAgICAgIERQSV9GT1JNQVRfTUFTSywKPiA+ID4gPiBEUElfUkdCNTY1X0REUl9DT04p Owo+ID4gPiA+ICsJCWJyZWFrOwo+ID4gPiA+ICsJY2FzZSBNVEtfRFBJX1JHQjg4OF9ERFJfQ09O Ogo+ID4gPiA+ICsJZGVmYXVsdDoKPiA+ID4gPiArCQltdGtfbW1zeXNfdXBkYXRlX2JpdHMobW1z eXMsCj4gPiA+ID4gTVQ4MTg2X01NU1lTX0RQSV9PVVRQVVRfRk9STUFULAo+ID4gPiA+ICsJCQkJ ICAgICAgRFBJX0ZPUk1BVF9NQVNLLAo+ID4gPiA+IERQSV9SR0I4ODhfRERSX0NPTik7Cj4gPiA+ ID4gKwkJYnJlYWs7Cj4gPiA+ID4gKwl9Cj4gPiA+IAo+ID4gPiBUbyBiZSBob25lc3QgSSBkb24n dCByZWFsbHkgc2VlIHRoZSBwb2ludCBvZiBtYWtpbmcgdGhlIGZ1bmN0aW9uCj4gPiA+IHNsaWdo dGx5IG1vcmUKPiA+ID4gcGxhdGZvcm0tYWdub3N0aWMgbGlrZSB0aGlzLiBXaXRoIGEgc2luZ2xl IHBsYXRmb3JtIG1ha2luZyB1c2Ugb2YKPiA+ID4gaXQKPiA+ID4gaXQncyBqdXN0Cj4gPiA+IGFu IHVubmVlZGVkIGV4dHJhIGFic3RyYWN0aW9uLCBhbmQgaXQgY291bGQgZWFzaWx5IGJlIGRvbmUg d2hlbiBhCj4gPiA+IHNlY29uZAo+ID4gPiBwbGF0Zm9ybSBzdGFydHMgcmVxdWlyaW5nIHRoaXMg YXMgd2VsbC4uLgo+ID4gPiAKPiA+ID4gSW4gYW55IGNhc2UsCj4gPiA+IAo+ID4gPiBSZXZpZXdl ZC1ieTogTsOtY29sYXMgRi4gUi4gQS4gUHJhZG8gPG5mcmFwcmFkb0Bjb2xsYWJvcmEuY29tPgo+ ID4gPiAKPiA+ID4gVGhhbmtzLAo+ID4gPiBOw61jb2xhcwo+ID4gPiAKPiA+ID4gPiAgfQo+ID4g PiAKPiA+ID4gWy4uXQo+ID4gCj4gPiBIaSBOw61jb2xhczoKPiA+IAo+ID4gVGhhbmtzIGZvciB5 b3VyIGRldGFpbGVkIHJlcGx5IGFuZCBjb3JyZWN0aW9uLgo+ID4gQmVmb3JlIHNlbmRpbmcgb3V0 IHRoZSBuZXh0IGVkaXRpb24sIEkgaGF2ZSB0d28gcXVlc3Rpb25zIEkgd291bGQKPiA+IGxpa2Ug Cj4gPiB0byBjb25maXJtIHdpdGggeW91IGluIHJlc3BvbnNlIHRvIHlvdXIgcmVzcG9uc2VzOgo+ ID4gMS5XaGlsZSBhdCBpdCwgYWxzbyB1cGRhdGUgbXRrX21tc3lzX2RkcF9kcGlfZm10X2NvbmZp ZygpIHRvIHVzZSAKPiA+IGdlbmVyaWMgZm9ybWF0cywgc28gdGhhdCBpdCBpcyBzbGlnaHRseSBl YXNpZXIgdG8gZXh0ZW5kIGZvciBvdGhlciAKPiA+IHBsYXRmb3Jtcy4KPiA+ID0+IFRoaXMgaXMg dG8gbWFrZSB0aGlzIG10a19tbXN5c19kZHBfZHBpX2ZtdF9jb25maWcoKSBmdW5jIG1vcmUgCj4g PiBnZW5lcmFsPyAKPiA+IFRoaXMgZnVuY3Rpb24gbWF5IG9ubHkgYmUgdXNlZCBieSBNVDgxODYs IGJlY2F1c2Ugb25seSBNVDgxODYKPiA+IGhhcyAKPiA+IGNvcnJlc3BvbmRpbmcgbW9kaWZpY2F0 aW9ucyBvbiBIVywgYW5kIGVuYWJsZXMgdGhlIHJlZ2lzdGVycwo+ID4gcmVzZXJ2ZWQgCj4gPiBp biBtbXN5cyBmb3IgZHBpIHVzZSB0byBjb250cm9sIHRoZSBvdXRwdXQgZm9ybWF0LiBCZWNhdXNl IHRoaXMgCj4gPiByZWdpc3RlciBpcyBub3QgZGVmaW5lZCBmb3Igb3RoZXIgaWMsIEkgYWRkZWQg Y29udHJvbCB0byB0aGlzCj4gPiBmdW5jdGlvbiAKPiA+IGNhbGwgaW4gbXRrX2RwaS5jLiBJZiB5 b3UgdGhpbmsgdGhlcmUgYXJlIG90aGVyIHdheXMgdG8gbWFrZSBpdAo+ID4gbG9vayAKPiA+IG1v cmUgZ2VuZXJpYywgd2hlcmUgc2hvdWxkIEkgY29ycmVjdCBpdD8KPiAKPiBZb3UgYWxyZWFkeSBt YWRlIHRoZSBtdGtfbW1zeXNfZGRwX2RwaV9mbXRfY29uZmlnKCkgbW9yZSBnZW5lcmljIGJ5Cj4g bWFraW5nIGl0J3MKPiBmb3JtYXQgcGFyYW1ldGVyIGRlY291cGxlZCBmcm9tIGl0cyByZWdpc3Rl ciByZXByZXNlbnRhdGlvbiBvbgo+IE1UODE4NiwgdGhhdCBpcywKPiBNVEtfRFBJX1JHQjg4OF9T RFJfQ09OIGluc3RlYWQgb2YgRFBJX1JHQjg4OF9TRFJfQ09OLgo+IAo+IEkgd2Fzbid0IGFza2lu ZyBmb3IgYW55IGNvZGUgbW9kaWZpY2F0aW9uIG9uIHRoYXQgY29tbWVudCwgSSB3YXMKPiBzdWdn ZXN0aW5nIHlvdQo+IGFkZCB0aGlzIHNlbnRlbmNlIGluIHRoZSBjb21taXQgbWVzc2FnZSwgc28g aXQgcmVmbGVjdHMgdGhlIGNoYW5nZXMKPiB5b3UncmUKPiBhbHJlYWR5IGRvaW5nLgo+IAo+IFRv IGJlIGV4dHJhIGNsZWFyLCBJIHdhcyBzdWdnZXN0aW5nIHlvdSB1cGRhdGUgdGhlIGNvbW1pdCBt ZXNzYWdlIHRvCj4gdGhlCj4gZm9sbG93aW5nOgo+IAo+ICAgVGhlIGRpZmZlcmVuY2UgYmV0d2Vl biBNVDgxODYgYW5kIG90aGVyIElDcyBpcyB0aGF0IHdoZW4gbW9kaWZ5aW5nCj4gdGhlIG91dHB1 dAo+ICAgZm9ybWF0LCB3ZSBuZWVkIHRvIG1vZGlmeSB0aGUgbW1zeXNfYmFzZSsweDQwMCByZWdp c3RlciB0byB0YWtlCj4gZWZmZWN0LiBTbyB3aGVuCj4gICBzZXR0aW5nIHRoZSBkcGkgb3V0cHV0 IGZvcm1hdCwgd2UgbmVlZCB0byBjYWxsCj4gbXRrX21tc3lzX2RkcF9kcGlfZm10X2NvbmZpZyB0 bwo+ICAgc2V0IGl0IHRvIE1UODE4NiBzeW5jaHJvbm91c2x5Lgo+ICAgCj4gICBDb21taXQgYTA3 MWU1MmY3NWQxICgic29jOiBtZWRpYXRlazogQWRkIG1tc3lzIGZ1bmMgdG8gYWRhcHQgdG8gZHBp Cj4gb3V0cHV0IGZvcgo+ICAgTVQ4MTg2IikgbGFja2VkIHNvbWUgb2YgdGhlIHBvc3NpYmxlIG91 dHB1dCBmb3JtYXRzIGFuZCBhbHNvIGhhZCBhCj4gd3JvbmcKPiAgIGJpdG1hc2suCj4gICAKPiAg IEFkZCB0aGUgbWlzc2luZyBvdXRwdXQgZm9ybWF0cyBhbmQgZml4IHRoZSBiaXRtYXNrLgo+ICAg Cj4gICBXaGlsZSBhdCBpdCwgYWxzbyB1cGRhdGUgbXRrX21tc3lzX2RkcF9kcGlfZm10X2NvbmZp ZygpIHRvIHVzZQo+IGdlbmVyaWMgZm9ybWF0cywKPiAgIHNvIHRoYXQgaXQgaXMgc2xpZ2h0bHkg ZWFzaWVyIHRvIGV4dGVuZCBmb3Igb3RoZXIgcGxhdGZvcm1zLgo+ICAgCj4gICBGaXhlczogYTA3 MWU1MmY3NWQxICgic29jOiBtZWRpYXRlazogQWRkIG1tc3lzIGZ1bmMgdG8gYWRhcHQgdG8gZHBp Cj4gb3V0cHV0IGZvciBNVDgxODYiKQo+IAo+ID4gCj4gPiAyLiBUaGVzZSBkZWZpbml0aW9ucyBz aG91bGQgYWxsIGhhdmUgYSBNVDgxODZfIHByZWZpeC4gVGhpcyB3aWxsCj4gPiBhdm9pZCAKPiA+ IGNvbmZ1c2lvbiBhcyBtdGtfbW1zeXNfZGRwX2RwaV9mbXRfY29uZmlnKCkgYmVjb21lcyBtb3Jl IHBsYXRmb3JtIAo+ID4gaW5kZXBlbmRlbnQuCj4gPiAKPiA+IEhvbmVzdGx5LCBJIGRvbid0IHJl YWxseSBzZWUgdGhlIHBvaW50IG9mIG1ha2luZyB0aGUgZmVhdHVyZQo+ID4gcGxhdGZvcm0tCj4g PiBhZ25vc3RpYyBsaWtlIHRoaXMuIFVzaW5nIGl0IG9uIGEgc2luZ2xlIHBsYXRmb3JtIGlzIGp1 c3QgYW4gZXh0cmEgCj4gPiBhYnN0cmFjdGlvbiB0aGF0IGlzbid0IG5lZWRlZCwgd2hlbiBhIHNl Y29uZCBwbGF0Zm9ybSBzdGFydHMKPiA+IG5lZWRpbmcgCj4gPiBpdCB0b28sIGl0IGNhbiBiZSBk b25lIGVhc2lseS4uLgo+ID4gCj4gPiA9PiBNeSB1bmRlcnN0YW5kaW5nIGhlcmUgaXMgdGhhdCBw cmVmaXhpbmcgdmFyaWFibGVzIHdpdGggbGFiZWxzCj4gPiBpcyAKPiA+IG1vcmUgY29uZHVjaXZl IHRvIG1ha2luZyBmdW5jdGlvbnMgZ2VuZXJpYywgYW5kIGNhbiBiZSByZXVzZWQgaWYKPiA+IHRo ZXJlIAo+ID4gaXMgc3VjaCBhIHNpdHVhdGlvbiBpbiB0aGUgZnV0dXJlLiBJIHVuZGVyc3RhbmQg dGhlIGltcG9ydGFuY2Ugb2YgCj4gPiBrZWVwaW5nIHRoZSBmdW5jdGlvbiBwbGF0Zm9ybSBhZ25v c3RpYywgYnV0IGFzIG1lbnRpb25lZCwgaXQgbWF5Cj4gPiBvbmx5IAo+ID4gYmUgdXNlZCBieSB0 aGUgTVQ4MTg2IGlmIHRoZXJlIGFyZSBzcGVjaWFsIGNhc2VzIHdoZXJlIG90aGVyIElDcwo+ID4g bWF5IAo+ID4gcmVseSBvbiBtdGtfbW1zeXNfdXBkYXRlX2JpdHMgdG8gY3JlYXRlIG5ldyBmdW5j dGlvbnMuCj4gCj4gV2hhdCBJJ20gc2F5aW5nIGlzIHRoYXQsIGV2ZW4gdGhvdWdoIHlvdSd2ZSBt YWRlIHRoZSBmdW5jdGlvbiByZWNlaXZlCj4gYSBnZW5lcmljCj4gZm9ybWF0IGFzIGEgcGFyYW1l dGVyLCBsaWtlIE1US19EUElfUkdCODg4X1NEUl9DT04sIGF0IHRoaXMgcG9pbnQgaW4KPiB0aW1l Cj4gTVQ4MTg2IGlzIHRoZSBvbmx5IFNvQyB0aGF0IGhhcyBhIHJlZ2lzdGVyIGluIG1tc3lzIGZv ciBpdCwgc28gdGhlCj4gdmFsdWVzCj4gCj4gRFBJX0ZPUk1BVF9NQVNLCj4gRFBJX1JHQjg4OF9T RFJfQ09OCj4gRFBJX1JHQjg4OF9ERFJfQ09OCj4gRFBJX1JHQjU2NV9TRFJfQ09OCj4gRFBJX1JH QjU2NV9ERFJfQ09OCj4gCj4gYXJlIHJlYWxseSBhbGwgTVQ4MTg2LXNwZWNpZmljLCBhdCBsZWFz dCBhdCB0aGlzIHBvaW50LiBMZWF2aW5nIHRoZW0KPiB3aXRob3V0IHRoZQo+IE1UODE4Nl8gY2Fu IGdpdmUgdGhlIGZhbHNlIGltcHJlc3Npb24gdGhhdCB0aGV5J3JlIGFscmVhZHkgdXNlZAo+IGVs c2V3aGVyZS4gQWxzbwo+IGl0J3MgcmVhbGx5IGVhc3kgdG8gbWlzdGFrZSB0aGVtIGZvciB0aGUg Z2VuZXJpYyBvbmVzIChsaWtlCj4gTVRLX0RQSV9SR0I4ODhfU0RSX0NPTikuIE1UODE4Nl9NTVNZ U19EUElfT1VUUFVUX0ZPUk1BVCBhbHJlYWR5IGhhcwo+IHRoZSBNVDgxODZfCj4gcHJlZml4LCBz byBJJ20gcmVhbGx5IGp1c3Qgc2F5aW5nIHRoYXQgdGhlIG90aGVyIG9uZXMgc2hvdWxkIGhhdmUg YXMKPiB3ZWxsLgo+IAo+IElmL3doZW4gdGhlIHNhbWUgYWRkcmVzcywgbWFzayBvciB2YWx1ZXMg Zm9yIHRoaXMgcmVnaXN0ZXIgc3RhcnQKPiBiZWluZyB1c2VkIG9uIGEKPiBkaWZmZXJlbnQgU29D LCB0aGVuIHlvdSBjYW4gcmVtb3ZlIHRoZSBwcmVmaXggYW5kIG1vdmUgaXQgdG8gdGhlIG10ay0K PiBtbXN5cy5oCj4gZ2VuZXJpYyBoZWFkZXIuCj4gCj4gQnV0IGZvciBub3cgYWRkaW5nIHRoZSBw cmVmaXhlcyB3aWxsIGF2b2lkIGNvbmZ1c2lvbiBhbmQgbWFrZSBpdAo+IGNsZWFyIHRoaXMgaXMK PiBNVDgxODYgc3BlY2lmaWMuCj4gCj4gVGhhbmtzLAo+IE7DrWNvbGFzCgpIaSBOw61jb2xhczoK ClRoYW5rcyBmb3IgdGhlIGRldGFpbGVkIGV4cGxhbmF0aW9uIGFuZCBjb3JyZWN0aW9uLCBJIHVu ZGVyc3RhbmQgdGhhdCAKdGhlc2UgdmFsdWVzIGluIHRoZSBtdDgxODYtbW1zeXMuaCBmaWxlIHNo b3VsZCBiZSBnaXZlbjoKRFBJX0ZPUk1BVF9NQVNLCkRQSV9SR0I4ODhfU0RSX0NPTgpEUElfUkdC ODg4X0REUl9DT04KRFBJX1JHQjU2NV9TRFJfQ09OCkRQSV9SR0I1NjVfRERSX0NPTgoKQWRkIHRo ZSBwcmVmaXggb2YgTVQ4MTg2XyB0byBhdm9pZCBjb25mdXNpb24sIGl0IGRvZXMgbG9vayBnZW5l cmljIGluIAp0aGUgbXRrX21tc3lzX3VwZGF0ZV9iaXRzKCkgZnVuY3Rpb24uCgpUaGFua3MgYWdh aW4gZm9yIHlvdXIgc3VnZ2VzdGlvbiwgSSB3aWxsIHJldmlzZSBpdCBpbiB0aGUgbmV4dCBlZGl0 aW9uLgoKQmVzdCBSZWdhcmRzIQp4aW5sZWkKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1h cm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcv bWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==