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 26D32E9B34D for ; Mon, 2 Mar 2026 09:58:50 +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: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=qkcX+rTqVMmZfSp6dh3CpHzDBeCk2kB20zp0qopX/5E=; b=tx3GaYkzx/kH4z D2o/uHYxSC2QPR+YX39n/XC29MY5a2Bx4LW/51VP1VipCWO/G8bMGCbSLDyKN9TAYvO+JSAAHYdE7 XgJKqpxSkv0aBS3KHpE8njoU9BczRs+0r2ohhffhOx0OnGjPT8LA6oOLkPZf9IHHDwAVz2zGo8o+K ElTZy/u3VdQGQT4/DI1GbeJ29+vT6QaPUiJ0Msl0Fprn509t1sVglR1usPodJEnCjFWnyaEu1zg51 A180iEghZoFHUZ2+xCN9IpkOSuOm11WLMwTAF6xUKomUQazLZVAyBCkTu98WDa6qVPZtPmM1jKNoC K1Muco2ROCYCnWjupf3A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vx02x-0000000CdLY-2xG2; Mon, 02 Mar 2026 09:58:39 +0000 Received: from smtpout-03.galae.net ([185.246.85.4]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vx02u-0000000CdKu-39dx for linux-riscv@lists.infradead.org; Mon, 02 Mar 2026 09:58:38 +0000 Received: from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233]) by smtpout-03.galae.net (Postfix) with ESMTPS id 60B524E424DA; Mon, 2 Mar 2026 09:58:34 +0000 (UTC) Received: from mail.galae.net (mail.galae.net [212.83.136.155]) by smtpout-01.galae.net (Postfix) with ESMTPS id 3414D5FE89; Mon, 2 Mar 2026 09:58:34 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon) with ESMTPSA id 53D22102F1C60; Mon, 2 Mar 2026 10:58:26 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim; t=1772445513; h=from:subject:date:message-id:to:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references; bh=iwiEelWhER4t/r6sMqYxG5Tn4/kBZkljoQa9dHWraG0=; b=Bx8avbq7O2QjyfWCKDige+h5z6avm9Hn+oW8VyBuWAp146RJvoz2j36FaZxWyr2s2bpzAt gc6wPz0ry+CYsFVFKZjh/zfGOJLQlnqvYG9BJqZR8LTu/Izql7WToJ+UoxbU5ZhNwICWjy ZuCAWu/4e9DR7GlTHvVlOOUgJ1k5h8HloF9nCNHi+GI+6d0LmN8PbBiQvbLlYfCvJH5/Wu aRv4W7Ib71+KuEGiQdr7+sczm4aHDgECw9dCQlwEtCWiaZzZ7JCytanTqtiYCi+jpoqlQX rQR1wwDeS1kvV5S1zzoQvHkHv7EYV0wadGeklDekf20hSIGMme4+JxluKVhqCQ== Date: Mon, 2 Mar 2026 10:58:24 +0100 From: Herve Codina To: Conor Dooley Cc: linux-gpio@vger.kernel.org, Conor Dooley , Thomas Gleixner , Daire McNamara , Rob Herring , Krzysztof Kozlowski , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Linus Walleij , Bartosz Golaszewski , linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RFC v11 3/4] soc: microchip: add mpfs gpio interrupt mux driver Message-ID: <20260302105824.21b5c7d6@bootlin.com> In-Reply-To: <20260227-flashing-overcast-85ff59b2e82c@spud> References: <20260227-ajar-wolverine-7ce1ebd79821@spud> <20260227-flashing-overcast-85ff59b2e82c@spud> Organization: Bootlin X-Mailer: Claws Mail 4.3.1 (GTK 3.24.49; x86_64-redhat-linux-gnu) MIME-Version: 1.0 X-Last-TLS-Session-Version: TLSv1.3 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260302_015836_922651_FBC7BB7C X-CRM114-Status: GOOD ( 37.94 ) X-BeenThere: linux-riscv@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-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org SGkgQ29ub3IsCgpPbiBGcmksIDI3IEZlYiAyMDI2IDE0OjUyOjI5ICswMDAwCkNvbm9yIERvb2xl eSA8Y29ub3JAa2VybmVsLm9yZz4gd3JvdGU6Cgo+IEZyb206IENvbm9yIERvb2xleSA8Y29ub3Iu ZG9vbGV5QG1pY3JvY2hpcC5jb20+Cj4gCj4gT24gUG9sYXJGaXJlIFNvQyB0aGVyZSBhcmUgbW9y ZSBHUElPIGludGVycnVwdHMgdGhhbiB0aGVyZSBhcmUgaW50ZXJydXB0Cj4gbGluZXMgYXZhaWxh YmxlIG9uIHRoZSBQTElDLCBhbmQgYSBydW50aW1lIGNvbmZpZ3VyYWJsZSBtdXggaXMgdXNlZCB0 bwo+IGRlY2lkZSB3aGljaCBpbnRlcnJ1cHRzIGFyZSBhc3NpZ25lZCBkaXJlY3QgY29ubmVjdGlv bnMgdG8gdGhlIFBMSUMgJgo+IHdoaWNoIGFyZSByZWxlZ2F0ZWQgdG8gc2hhcmluZyBhIGxpbmUu Cj4gCj4gQWRkIGEgZHJpdmVyIHNvIHRoYXQgTGludXggY2FuIHNldCB0aGUgbXV4IGJhc2VkIG9u IHRoZSBpbnRlcnJ1cHQKPiBtYXBwaW5nIGluIHRoZSBkZXZpY2V0cmVlLgo+IAo+IFNpZ25lZC1v ZmYtYnk6IENvbm9yIERvb2xleSA8Y29ub3IuZG9vbGV5QG1pY3JvY2hpcC5jb20+Cj4gLS0tCi4u LgoKPiAtLS0gYS9kcml2ZXJzL3NvYy9taWNyb2NoaXAvS2NvbmZpZwo+ICsrKyBiL2RyaXZlcnMv c29jL21pY3JvY2hpcC9LY29uZmlnCj4gQEAgLTEsMyArMSwxNCBAQAo+ICtjb25maWcgUE9MQVJG SVJFX1NPQ19JUlFfTVVYCj4gKwlib29sICJNaWNyb2NoaXAgUG9sYXJGaXJlIFNvQydzIEdQSU8g SVJRIE11eCIKPiArCWRlcGVuZHMgb24gQVJDSF9NSUNST0NISVAKPiArCXNlbGVjdCBSRUdNQVAK PiArCXNlbGVjdCBSRUdNQVBfTU1JTwo+ICsJZGVmYXVsdCB5Cj4gKwloZWxwCj4gKwkgIFN1cHBv cnQgZm9yIHRoZSBpbnRlcnJ1cHQgbXV4IG9uIFBvbGFyZmlyZSBTb0MuIEl0IHNpdHMgYmV0d2Vl bgo+ICsJICB0aGUgR1BJTyBjb250cm9sbGVycyBhbmQgdGhlIFBMSUMsIGFzIG9ubHkgMzUgaW50 ZXJydXB0cyBhcmUgc2hhcmVkCj4gKwkgIGJldHdlZW4gMyBHUElPIGNvbnRyb2xsZXJzIHdpdGgg MzIgaW50ZXJydXB0cyBlYWNoLgoKMzUgaW50ZXJydXB0cyA/CgpQcmV2aW91c2x5IChvdGhlciBw YXRjaGVzKSB5b3UgbWVudGlvbm5lZCA0MSAoMzggKyAzKS4KCkFsc28gMzIgaW50ZXJydXRwcyBv biBlYWNoICgzICogMzIgPSA5NikgYnV0IHlvdSB0YWxrZWQgYWJvdXQgNzAgb24gcHJldmlvdXMK cGF0Y2hlcy4KCkNhbiB5b3UgZG91YmxlIGNoZWNrIG9yIGNsYXJpZnkgdGhvc2UgbnVtYmVycyA/ CgouLi4KPiArKysgYi9kcml2ZXJzL3NvYy9taWNyb2NoaXAvbXBmcy1pcnFtdXguYwo+IEBAIC0w LDAgKzEsMTY3IEBACj4gKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wLW9ubHkK PiArLyoKPiArICogTGFyZ2VseSBjb3BpZWQgZnJvbSByem4xX2lycW11eC5jCj4gKyAqLwo+ICsK PiArI2luY2x1ZGUgPGxpbnV4L2JpdG1hcC5oPgo+ICsjaW5jbHVkZSA8bGludXgvYml0b3BzLmg+ Cj4gKyNpbmNsdWRlIDxsaW51eC9tZmQvc3lzY29uLmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9tb2R1 bGUuaD4KPiArI2luY2x1ZGUgPGxpbnV4L29mLmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9vZl9pcnEu aD4KPiArI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3JtX2RldmljZS5oPgo+ICsjaW5jbHVkZSA8bGlu dXgvcmVnbWFwLmg+Cj4gKwo+ICsjZGVmaW5lIE1QRlNfSVJRTVVYX0NSCQkweDU0Cj4gKyNkZWZp bmUgTVBGU19JUlFNVVhfTlVNX09VVFBVVFMJNzAKCklzIDcwIHJlYWxseSB0aGUgb3V0cHV0cyA/ CgpBY2NvcmRpbmcgdG8gcHJldmlvdXMgcGF0Y2hlcywgSSB3b3VsZCBzYXkgNDEgKDM4KzMpLgoK Li4uCj4gK3N0YXRpYyBpbnQgbXBmc19pcnFtdXhfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldikKPiArewo+ICsJREVDTEFSRV9CSVRNQVAobGluZV9kb25lLCBNUEZTX0lSUU1VWF9O VU1fT1VUUFVUUykgPSB7fTsKPiArCXN0cnVjdCBkZXZpY2UgKmRldiA9ICZwZGV2LT5kZXY7Cj4g KwlzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wID0gZGV2LT5vZl9ub2RlOwo+ICsJc3RydWN0IG9mX2lt YXBfcGFyc2VyIGltYXBfcGFyc2VyOwo+ICsJc3RydWN0IG9mX2ltYXBfaXRlbSBpbWFwX2l0ZW07 Cj4gKwlzdHJ1Y3QgcmVnbWFwICpyZWdtYXA7Cj4gKwlpbnQgcmV0LCBkaXJlY3RfbW9kZSwgbGlu ZSwgY29udHJvbGxlciwgZ3BpbzsKClJldmVyc2UgWG1hcyB0cmVlLgoKPiArCXUzMiB0bXAsIHZh bCA9IDAsIG9sZDsKCi4uLgo+ICsJZm9yX2VhY2hfb2ZfaW1hcF9pdGVtKCZpbWFwX3BhcnNlciwg JmltYXBfaXRlbSkgewo+ICsKPiArCQlkaXJlY3RfbW9kZSA9IG1wZnNfaXJxbXV4X2lzX2RpcmVj dF9tb2RlKGRldiwgJmltYXBfaXRlbS5wYXJlbnRfYXJncyk7Cj4gKwkJaWYgKGRpcmVjdF9tb2Rl IDwgMCkgewo+ICsJCQlvZl9ub2RlX3B1dChpbWFwX2l0ZW0ucGFyZW50X2FyZ3MubnApOwo+ICsJ CQlyZXR1cm4gZGlyZWN0X21vZGU7Cj4gKwkJfQo+ICsKPiArCQlsaW5lID0gaW1hcF9pdGVtLmNo aWxkX2ltYXBbMF07Cj4gKwkJZ3BpbyA9IGxpbmUgJSAzMjsKPiArCQljb250cm9sbGVyID0gbGlu ZSAvIDMyOwo+ICsKPiArCQlpZiAoY29udHJvbGxlciA+IDIpIHsKPiArCQkJb2Zfbm9kZV9wdXQo aW1hcF9pdGVtLnBhcmVudF9hcmdzLm5wKTsKPiArCQkJZGV2X2VycihkZXYsICJjaGlsZCBpbnRl cnJ1cHQgbnVtYmVyIHRvbyBsYXJnZTogJWRcbiIsIGxpbmUpOwo+ICsJCQlyZXR1cm4gLUVJTlZB TDsKPiArCQl9Cj4gKwo+ICsJCWlmICh0ZXN0X2FuZF9zZXRfYml0KGxpbmUsIGxpbmVfZG9uZSkp IHsKCllvdXIgYml0bWFwIHNpemUgaXMgTVBGU19JUlFNVVhfTlVNX09VVFBVVFMgYnV0IHlvdSB5 b3VyIGxpbmUgdmFyaWFibGUgY2FuCmhhdmUgdmFsdWVzIGZyb20gMCB0byA5NS4KCk1heWJlIHNv bWUgY2hlY2tzIG9uIGltYXBfaXRlbS5jaGlsZF9pbWFwWzBdIG9yIGxpbmUgY291bGQgYmUgYWRk ZWQgaW4Kb3JkZXIgdG8gYmUgYmUgc3VyZSB0aGF0IGxpbmUgdmFsdWUgd2lsbCBmaXQgaW4gdGhl IGJpdG1hcC4KCgo+ICsJCQlvZl9ub2RlX3B1dChpbWFwX2l0ZW0ucGFyZW50X2FyZ3MubnApOwo+ ICsJCQlkZXZfZXJyKGRldiwgIk11eCBvdXRwdXQgbGluZSAlZCBhbHJlYWR5IGRlZmluZWQgaW4g aW50ZXJydXB0LW1hcFxuIiwKPiArCQkJCWxpbmUpOwoKbGluZSBpcyBjb21wdXRlZCBmcm9tIGlt YXBfaXRlbS5jaGlsZF9pbWFwWzBdLiBJdCBpcyB0aGUgaW5wdXQgYW5kIG5vdCB0aGUKb3V0cHV0 LgoKSW4gcnpuMS1pcnFtdXguYywgdGhlIGJpdG1hcCBpcyB1c2VkIHRvIGF2b2lkIG11bHRpcGxl IGlucHV0IGxpbmVzIHVzaW5nIHRoZSBzYW1lCm91dHB1dCBsaW5lLiBCaXRtYXAgYml0cyByZXBy ZXNlbnQgb3V0cHV0cy4KCj4gKwkJCXJldHVybiAtRUlOVkFMOwo+ICsJCX0KPiArCj4gKwkJLyoK PiArCQkgKiBUaGVyZSBhcmUgNDEgaW50ZXJydXB0cyBhc3NpZ25lZCB0byBHUElPcywgb2Ygd2hp Y2ggMzggYXJlICJkaXJlY3QiLiBTaW5jZSB0aGUKPiArCQkgKiBtdXggaGFzIDMyIGJpdHMgb25s eSwgNiBvZiB0aGVzZSBleGNsdXNpdmUvImRpcmVjdCIgaW50ZXJydXB0cyByZW1haW4uIFRoZXNl Cj4gKwkJICogYXJlIHVzZWQgYnkgR1BJTyBjb250cm9sbGVyIDEncyBsaW5lcyAxOCB0byAyMy4g Tm90aGluZyBuZWVkcyB0byBiZSBkb25lCj4gKwkJICogZm9yIHRoZXNlIGludGVycnVwdHMuCj4g KwkJICovCj4gKwkJaWYgKGNvbnRyb2xsZXIgPT0gMSAmJiBncGlvID49IDE4KQo+ICsJCQljb250 aW51ZTsKPiArCj4gKwkJLyoKPiArCQkgKiBUaGUgbXV4IGhhcyBhIHNpbmdsZSByZWdpc3Rlciwg d2hlcmUgYml0cyAwIHRvIDEzIG11eCBiZXR3ZWVuIEdQSU8gY29udHJvbGxlcgo+ICsJCSAqIDEn cyAxNCBHUElPcyBhbmQgR1BJTyBjb250cm9sbGVyIDIncyBmaXJzdCAxNCBHUElPcy4gVGhlIHJl bWFpbmluZyBiaXRzIG11eAo+ICsJCSAqIGJldHdlZW4gdGhlIGZpcnN0IDE4IEdQSU9zIG9mIGNv bnRyb2xsZXIgMSBhbmQgdGhlIGxhc3QgMTggR1BJT1Mgb2YKPiArCQkgKiBjb250cm9sbGVyIDIu IElmIGEgYml0IGluIHRoZSBtdXgncyBjb250cm9sIHJlZ2lzdGVyIGlzIHNldCwgdGhlCj4gKwkJ ICogY29ycmVzcG9uZGluZyBpbnRlcnJ1cHQgbGluZSBmb3IgR1BJTyBjb250cm9sbGVyIDAgb3Ig MSB3aWxsIGJlIHB1dCBpbgo+ICsJCSAqICJub24tZGlyZWN0IiBtb2RlLiBJZiBjbGVhcmVkLCB0 aGUgImZhYnJpYyIgY29udHJvbGxlcidzIHdpbGwuCj4gKwkJICoKPiArCQkgKiBSZWdpc3RlciBs YXlvdXQ6Cj4gKwkJICogICAgR1BJTyAxIGludGVycnVwdCBsaW5lIDE3IHwgbXV4IGJpdCAzMSB8 IEdQSU8gMiBpbnRlcnJ1cHQgbGluZSAzMQo+ICsJCSAqICAgIC4uLiAgICAgICAgICAgICAgICAg ICAgICB8IC4uLiAgICAgICAgfCAuLi4KPiArCQkgKiAgICAuLi4gICAgICAgICAgICAgICAgICAg ICAgfCAuLi4gICAgICAgIHwgLi4uCj4gKwkJICogICAgR1BJTyAxIGludGVycnVwdCBsaW5lICAw IHwgbXV4IGJpdCAxNCB8IEdQSU8gMiBpbnRlcnJ1cHQgbGluZSAxNAo+ICsJCSAqICAgIEdQSU8g MCBpbnRlcnJ1cHQgbGluZSAxMyB8IG11eCBiaXQgMTMgfCBHUElPIDIgaW50ZXJydXB0IGxpbmUg MTMKPiArCQkgKiAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgfCAuLi4gICAgICAgIHwgLi4u Cj4gKwkJICogICAgLi4uICAgICAgICAgICAgICAgICAgICAgIHwgLi4uICAgICAgICB8IC4uLgo+ ICsJCSAqICAgIEdQSU8gMCBpbnRlcnJ1cHQgbGluZSAgMCB8IG11eCBiaXQgIDAgfCBHUElPIDIg aW50ZXJydXB0IGxpbmUgIDAKPiArCQkgKgo+ICsJCSAqIEFzIHRoZSBiaW5kaW5nIG1hbmRhdGVz IDcwIGl0ZW1zLCBvbmUgZm9yIGVhY2ggR1BJTyBsaW5lLCB0aGVyZSdzIG5vIG5lZWQgdG8KPiAr CQkgKiBoYW5kbGUgYW55dGhpbmcgZm9yIEdQSU8gY29udHJvbGxlciAyLCBzaW5jZSB0aGUgYml0 IHdpbGwgYmUgc2V0IGZvciB0aGUKPiArCQkgKiBjb3JyZXNwb25kaW5nIGxpbmUgaW4gR1BJTyBj b250cm9sbGVyIDAgb3IgMS4KCkh1bSwgd2hhdCBoYXBwZW4gaWYgdGhlIGludGVycnVwdHMgcHJv cGVydHkgaXMgc2V0IGluIHRoZSBHUElPIGNvbnRyb2xsZXIgMiBhbmQgbm90CkdQSU8gY29udHJv bGxlcnMgMCBvciAxLgoKSXMgaXQgbGVnaXQgPwoKSWYgc28sIHNob3VsZCBsaW5lcyBjb21pbmcg ZnJvbSBHUElPIGNvbnRyb2xsZXIgMiBiZSB0b29rIGludG8gYWNjb3VudCA/CgpNYXliZSBteSBj b21tZW50IGlzIG5vdCByZWxldmFudCBkdWUgdG8gc29tZSBtaXN1bmRlcnN0YW5kaW5nIGluIHRo ZSBub3QKc28gb2J2aW91cyBtYXBwaW5nLgoKPiArCQkgKi8KPiArCQlpZiAoY29udHJvbGxlciA9 PSAyKQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJLyoKPiArCQkgKiBJZiBpbiBkaXJlY3QgbW9k ZSwgdGhlIGJpdCBpcyBjbGVhcmVkLCBub3RoaW5nIG5lZWRzIHRvIGJlIGRvbmUgYXMgdmFsIGlz IHplcm8KPiArCQkgKiBpbml0aWFsaXNlZCBhbmQgdGhhdCdzIHRoZSBkaXJlY3QgbW9kZSBzZXR0 aW5nIGZvciBHUElPIGNvbnRyb2xsZXIgMCBhbmQgMS4KPiArCQkgKi8KPiArCQlpZiAoZGlyZWN0 X21vZGUpCj4gKwkJCWNvbnRpbnVlOwo+ICsKPiArCQlpZiAoY29udHJvbGxlciA9PSAwKQo+ICsJ CQl2YWwgfD0gMVUgPDwgZ3BpbzsKPiArCQllbHNlCj4gKwkJCXZhbCB8PSAxVSA8PCAoZ3BpbyAr IDE0KTsKPiArCX0KPiArCj4gKwlyZWdtYXBfcmVhZChyZWdtYXAsIE1QRlNfSVJRTVVYX0NSLCAm b2xkKTsKPiArCXJlZ21hcF93cml0ZShyZWdtYXAsIE1QRlNfSVJRTVVYX0NSLCB2YWwpOwo+ICsK PiArCWlmICh2YWwgIT0gb2xkKQo+ICsJCWRldl9pbmZvKGRldiwgImZpcm13YXJlIG11eCBzZXR0 aW5nIG9mIDB4JXggb3ZlcndyaXR0ZW4gdG8gMHgleFxuIiwgb2xkLCB2YWwpOwo+ICsKPiArCXJl dHVybiAwOwo+ICt9Cj4gKwoKQmVzdCByZWdhcmRzLApIZXJ2w6kKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LXJpc2N2IG1haWxpbmcgbGlzdAps aW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YK