Patch adds support for the Adafruit PiPlate

Jonathan Brogdon <[email protected]> Mon, 25 Mar 2013 08:18:45 -0500
Newsgroups gmane.comp.sysutils.lcdproc
Message-ID <CANAYU8ZnvhkPu+V9b4SrhEavGbQd0Due9=B2uBqcEwnonqE4rA@mail.gmail.com>
--f46d0401f8fb01d09604d8bfa5f5
Content-Type: multipart/alternative; boundary=f46d0401f8fb01d07c04d8bfa5f3

--f46d0401f8fb01d07c04d8bfa5f3
Content-Type: text/plain; charset=ISO-8859-1

Never saw a response on the corrected patch for the Adafruit PiPlate.
 Resubmitting.

Jon

---------- Forwarded message ----------
From: Jonathan Brogdon <[email protected]>
Date: Mon, Feb 18, 2013 at 9:34 AM
Subject: [Lcdproc] Patch adds support for the Adafruit PiPlate
To: [email protected]


You are correct regarding the blue backlight pin.  I've fixed the code, and
attached a new patch.

Jon


On Tue, Feb 12, 2013 at 1:29 AM, Markus Dolze <[email protected]> wrote:

> On 11.02.2013 22:32, Jonathan Brogdon wrote:
> > Never saw this on the mailing list, or a response.  Re-sending.
> >
> > Jon
> >
> > ---------- Forwarded message ----------
> > From: *Jonathan Brogdon* <[email protected]
> > <mailto:[email protected]>>
> > Date: Sat, Feb 9, 2013 at 1:26 AM
> > Subject: [PATCH] Add support for the Adafruit PiPlate
> > To: [email protected] <mailto:[email protected]>
> >
> >
> > For your consideration, I have attached a v0.5.6 patch which adds a
> > driver for the Adafruit PiPlate (http://adafruit.com/products/1109).
> >  The PiPlate includes a HD44780 LCD and 5 button keys which is
> > accessed via a MCP23017 I2C IO expander.
> >
> > The driver was adapted from the HD44780-i2c driver, which uses the
> > PCF8574 I2C IO expander.
> >
> > Jon Brogdon
> >
>
> Hi,
>
> please read [1]. Thank you.
>
> [1] http://lcdproc.sourceforge.net/docs/current-dev.html#code-style
>
> According to the schematic from [1], the pin for blue backlight is on
> GPB0, not on GPA8 (which does not exist anyway).
>
> Is the schematic wrong or did I miss something?
>
> [2]
>
> http://learn.adafruit.com/system/assets/assets/000/003/861/original/pilcdplate.png?1360171818
>
> Regards,
> Markus
>
> _______________________________________________
> LCDproc mailing list
> [email protected]
> http://lists.omnipotent.net/mailman/listinfo/lcdproc
>

--f46d0401f8fb01d07c04d8bfa5f3
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Never saw a response on the corrected patch for the Adafruit PiPlate. =A0Re=
submitting.<div><br></div><div>Jon<br><div><br><div class=3D"gmail_quote">-=
--------- Forwarded message ----------<br>From: <b class=3D"gmail_sendernam=
e">Jonathan Brogdon</b> <span dir=3D"ltr">&lt;<a href=3D"mailto:jlbrogdon@g=
mail.com">[email protected]</a>&gt;</span><br>
Date: Mon, Feb 18, 2013 at 9:34 AM<br>Subject: [Lcdproc] Patch adds support=
 for the Adafruit PiPlate<br>To: <a href=3D"mailto:[email protected]=
.net">[email protected]</a><br><br><br><div class=3D"HOEnZb"><di=
v class=3D"h5">
You are correct regarding the blue backlight pin. =A0I&#39;ve fixed the cod=
e, and attached a new patch.<br><div class=3D"gmail_quote"><div><br></div><=
div>Jon<div><div><br><br><div class=3D"gmail_quote">On Tue, Feb 12, 2013 at=
 1:29 AM, Markus Dolze <span dir=3D"ltr">&lt;<a href=3D"mailto:bsdfan@nurfu=
erspam.de" target=3D"_blank">[email protected]</a>&gt;</span> wrote:<br=
>


<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex"><div>On 11.02.2013 22:32, Jonathan Brogdon w=
rote:<br>
&gt; Never saw this on the mailing list, or a response. =A0Re-sending.<br>
&gt;<br>
&gt; Jon<br>
&gt;<br>
&gt; ---------- Forwarded message ----------<br>
</div><div>&gt; From: *Jonathan Brogdon* &lt;<a href=3D"mailto:jlbrogdon@gm=
ail.com" target=3D"_blank">[email protected]</a><br>
&gt; &lt;mailto:<a href=3D"mailto:[email protected]" target=3D"_blank">jl=
[email protected]</a>&gt;&gt;<br>
&gt; Date: Sat, Feb 9, 2013 at 1:26 AM<br>
&gt; Subject: [PATCH] Add support for the Adafruit PiPlate<br>
</div><div>&gt; To: <a href=3D"mailto:[email protected]" target=
=3D"_blank">[email protected]</a> &lt;mailto:<a href=3D"mailto:l=
[email protected]" target=3D"_blank">[email protected]=
</a>&gt;<br>


&gt;<br>
&gt;<br>
&gt; For your consideration, I have attached a v0.5.6 patch which adds a<br=
>
&gt; driver for the Adafruit PiPlate (<a href=3D"http://adafruit.com/produc=
ts/1109" target=3D"_blank">http://adafruit.com/products/1109</a>).<br>
&gt; =A0The PiPlate includes a HD44780 LCD and 5 button keys which is<br>
&gt; accessed via a MCP23017 I2C IO expander.<br>
&gt;<br>
&gt; The driver was adapted from the HD44780-i2c driver, which uses the<br>
&gt; PCF8574 I2C IO expander.<br>
&gt;<br>
&gt; Jon Brogdon<br>
&gt;<br>
<br>
</div>Hi,<br>
<br>
please read [1]. Thank you.<br>
<br>
[1] <a href=3D"http://lcdproc.sourceforge.net/docs/current-dev.html#code-st=
yle" target=3D"_blank">http://lcdproc.sourceforge.net/docs/current-dev.html=
#code-style</a><br>
<br>
According to the schematic from [1], the pin for blue backlight is on<br>
GPB0, not on GPA8 (which does not exist anyway).<br>
<br>
Is the schematic wrong or did I miss something?<br>
<br>
[2]<br>
<a href=3D"http://learn.adafruit.com/system/assets/assets/000/003/861/origi=
nal/pilcdplate.png?1360171818" target=3D"_blank">http://learn.adafruit.com/=
system/assets/assets/000/003/861/original/pilcdplate.png?1360171818</a><br>



<br>
Regards,<br>
Markus<br>
<br>
_______________________________________________<br>
LCDproc mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">LCDproc@l=
ists.omnipotent.net</a><br>
<a href=3D"http://lists.omnipotent.net/mailman/listinfo/lcdproc" target=3D"=
_blank">http://lists.omnipotent.net/mailman/listinfo/lcdproc</a><br>
</blockquote></div><br></div></div></div>
</div><br>
</div></div></div><br></div></div>

--f46d0401f8fb01d07c04d8bfa5f3--
--f46d0401f8fb01d09604d8bfa5f5
Content-Type: application/octet-stream; name="lcdproc-piplate.patch"
Content-Disposition: attachment; filename="lcdproc-piplate.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hd6nc5pz0

ZGlmZiAtdXJOIC4vbGNkcHJvYy9hY2luY2x1ZGUubTQgLi9sY2Rwcm9jLXBpcGxhdGUvYWNpbmNs
dWRlLm00Ci0tLSAuL2xjZHByb2MvYWNpbmNsdWRlLm00CTIwMTMtMDEtMjcgMDU6NDQ6NDMuMDAw
MDAwMDAwIC0wNjAwCisrKyAuL2xjZHByb2MtcGlwbGF0ZS9hY2luY2x1ZGUubTQJMjAxMy0wMi0w
OCAyMzoxNDo1MC4wMDAwMDAwMDAgLTA2MDAKQEAgLTIyNyw2ICsyMjcsNyBAQAogCQkJZmkKIAkJ
CWlmIHRlc3QgIiR4X2FjX2hhdmVfaTJjIiA9IHllczsgdGhlbgogCQkJCUhENDQ3ODBfRFJJVkVS
Uz0iJEhENDQ3ODBfRFJJVkVSUyBoZDQ0NzgwLWhkNDQ3ODAtaTJjLm8iCisJCQkJSEQ0NDc4MF9E
UklWRVJTPSIkSEQ0NDc4MF9EUklWRVJTIGhkNDQ3ODAtaGQ0NDc4MC1pMmMtcGlwbGF0ZS5vIgog
CQkJZmkKIGRubAkJCVRoZSBoZDQ0NzAtcnBpIGRyaXZlciBvbmx5IHdvcmtzIG9uIGEgUmFzcGJl
cnJ5IFBpLAogZG5sCQkJd2hpY2ggaXMgYW4gQVJNIHBsYXRmb3JtLiBSZXF1aXJlIHBlb3BsZSB0
byBjb21waWxlIG9uCmRpZmYgLXVyTiAuL2xjZHByb2Mvc2VydmVyL2RyaXZlcnMvaGQ0NDc4MC1k
cml2ZXJzLmggLi9sY2Rwcm9jLXBpcGxhdGUvc2VydmVyL2RyaXZlcnMvaGQ0NDc4MC1kcml2ZXJz
LmgKLS0tIC4vbGNkcHJvYy9zZXJ2ZXIvZHJpdmVycy9oZDQ0NzgwLWRyaXZlcnMuaAkyMDEzLTAx
LTI3IDA1OjQ0OjQzLjAwMDAwMDAwMCAtMDYwMAorKysgLi9sY2Rwcm9jLXBpcGxhdGUvc2VydmVy
L2RyaXZlcnMvaGQ0NDc4MC1kcml2ZXJzLmgJMjAxMy0wMi0wOCAyMzoyMzoxNi4wMDAwMDAwMDAg
LTA2MDAKQEAgLTMxLDYgKzMxLDcgQEAKICNlbmRpZgogI2lmZGVmIEhBVkVfSTJDCiAjIGluY2x1
ZGUgImhkNDQ3ODAtaTJjLmgiCisjIGluY2x1ZGUgImhkNDQ3ODAtaTJjLXBpcGxhdGUuaCIKICNl
bmRpZgogI2lmZGVmIFdJVEhfRVRITENECiAjIGluY2x1ZGUgImhkNDQ3ODAtZXRobGNkLmgiCkBA
IC04MCw2ICs4MSw3IEBACiAJLyogSTJDIGNvbm5lY3Rpb24gdHlwZXMgKi8KICNpZmRlZiBIQVZF
X0kyQwogCXsgImkyYyIsICAgICAgICAgICBIRDQ0NzgwX0NUX0kyQywgICAgICAgICAgIElGX1RZ
UEVfSTJDLCAgICAgaGRfaW5pdF9pMmMgICAgICAgfSwKKyAgICAgICAgeyAiaTJjLXBpcGxhdGUi
LCAgIEhENDQ3ODBfQ1RfSTJDX1BJUExBVEUsICAgSUZfVFlQRV9JMkMsICAgICBoZF9pbml0X2ky
Y19waXBsYXRlIH0sCiAjZW5kaWYKIAkvKiBUQ1Agc29ja2V0IGNvbm5lY3Rpb24gdHlwZXMgKi8K
ICNpZmRlZiBXSVRIX0VUSExDRApkaWZmIC11ck4gLi9sY2Rwcm9jL3NlcnZlci9kcml2ZXJzL2hk
NDQ3ODAtaTJjLXBpcGxhdGUuYyAuL2xjZHByb2MtcGlwbGF0ZS9zZXJ2ZXIvZHJpdmVycy9oZDQ0
NzgwLWkyYy1waXBsYXRlLmMKLS0tIC4vbGNkcHJvYy9zZXJ2ZXIvZHJpdmVycy9oZDQ0NzgwLWky
Yy1waXBsYXRlLmMJMTk2OS0xMi0zMSAxODowMDowMC4wMDAwMDAwMDAgLTA2MDAKKysrIC4vbGNk
cHJvYy1waXBsYXRlL3NlcnZlci9kcml2ZXJzL2hkNDQ3ODAtaTJjLXBpcGxhdGUuYwkyMDEzLTAy
LTEzIDIxOjQxOjM3LjAwMDAwMDAwMCAtMDYwMApAQCAtMCwwICsxLDQxMCBAQAorLyoqIFxmaWxl
IHNlcnZlci9kcml2ZXJzL2hkNDQ3ODAtaTJjLXBpcGxhdGUuYworICogXGMgaTJjICh2aWEgTUNQ
MjMwMTcpIGNvbm5lY3Rpb24gdHlwZSBvZiBcYyBoZDQ0NzgwIGRyaXZlciBmb3IKKyAqIEhpdGFj
aGkgSEQ0NDc4MCBiYXNlZCBMQ0QgZGlzcGxheXMgY29ubmVjdGVkIHRvIHRoZQorICogTUNQMjMw
MTcgSTJDIElPIEV4cGxhbmRlciAoQWRhZnJ1aXQgUGlQbGF0ZSBMQ0QpLgorICoKKyAqIFRoaXMg
ZHJpdmVyIGltcGxlbWVudHMgdGhlIAorICogVGhlIExDRCBpcyBvcGVyYXRlZCBpbiBpdHMgNCBi
aXQtbW9kZSB0byBiZSBjb25uZWN0ZWQgdG8gdGhlIDggYml0LXBvcnQKKyAqIG9mIGEgc2luZ2xl
IE1DUDIzMDE3IGkyYyBJL08gZXhwYW5kZXIgdGhhdCBpcyBhY2Nlc3NlZCBieSB0aGUgc2VydmVy
IHZpYQorICogdGhlIGkyYyBidXMuCisgKi8KKworLyogQ29weXJpZ2h0IChjKSAgMjAxMyBKb25h
dGhhbiBCcm9nZG9uIDxqbGJyb2dkb25AZ21haWwuY29tPgorICogICAgICAgICAgICAgICAgMjAw
NSBNYXR0aGlhcyBHb2VibCA8bWF0dGhpYXMuZ29lYmxAZ29lYmwubmV0PgorICogICAgICAgICAg
ICAgICAgMjAwMCwgMTk5OSwgMTk5NSBCZW5qYW1pbiBUc2UgPGJsdEBDb21wb3J0cy5jb20+Cisg
KiAgICAgICAgICAgICAgICAyMDAxIEpvcmlzIFJvYmlqbiA8am9yaXNAcm9iaWpuLm5ldD4KKyAq
ICAgICAgICAgICAgICAgIDE5OTkgQW5kcmV3IE1jTWVpa2FuIDxhbmRyZXdtQGVuZ2luZWVyLmNv
bT4KKyAqICAgICAgICAgICAgICAgIDE5OTggUmljaGFyZCBSb2dubGllIDxycm9nbmxpZUBnYW1l
cnoubmV0PgorICogICAgICAgICAgICAgICAgMTk5NyBNYXR0aGlhcyBQcmlua2UgPG0ucHJpbmtl
QHRyYXNoY2FuLm1jbmV0LmRlPgorICoKKyAqIFRoZSBjb25uZWN0aW9ucyBhcmU6CisgKiBNQ1Ay
MzAxNwkgIExDRAorICogR1BBNyAgICAgICAgICAgR3JlZW4gTENEIGJhY2tsaWdodAorICogR1BB
NiAgICAgICAgICAgUmVkIExDRCBiYWNrbGlnaHQKKyAqIEdQQTQgICAgICAgICAgIExlZnQga2V5
CisgKiBHUEEzICAgICAgICAgICBVcCBrZXkKKyAqIEdQQTIgICAgICAgICAgIERvd24ga2V5Cisg
KiBHUEExICAgICAgICAgICBSaWdodCBrZXkKKyAqIEdQQTAgICAgICAgICAgIFNlbGVjdCBrZXkK
KyAqIEdQQjcgCSAgUlMgKDQpCisgKiBHUEI2IAkgIFJXICg1KQorICogR1BCNSAJICBFTiAoNikK
KyAqIEdQQjQgCSAgRDcgKDE0KQorICogR1BCMyAJICBENiAoMTMpCisgKiBHUEIyICAJICBENSAo
MTIpCisgKiBHUEIxIAkgIEQ0ICgxMSkKKyAqIEdQQjAgICAgICAgICAgIEJsdWUgTENEIGJhY2ts
aWdodAorICoKKyAqIENvbmZpZ3VyYXRpb246CisgKiBkZXZpY2U9L2Rldi9pMmMtMSAgICMgdGhl
IGRldmljZSBmaWxlIG9mIHRoZSBpMmMgYnVzCisgKiBwb3J0PTB4MjAgICAjIHRoZSBpMmMgYWRk
cmVzcyBvZiB0aGUgaTJjIHBvcnQgZXhwYW5kZXIKKyAqCisgKiBCYXNlZCBtb3N0bHkgb24gdGhl
IGhkNDQ3ODAtaTJjIG1vZHVsZSwgc2VlIHRoZXJlIGZvciBhIGNvbXBsZXRlIGhpc3RvcnkuCisg
KgorICogVGhpcyBmaWxlIGlzIHJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMg
TGljZW5zZS4gUmVmZXIgdG8gdGhlCisgKiBDT1BZSU5HIGZpbGUgZGlzdHJpYnV0ZWQgd2l0aCB0
aGlzIHBhY2thZ2UuCisgKi8KKyNpbmNsdWRlICJoZDQ0NzgwLWkyYy1waXBsYXRlLmgiCisjaW5j
bHVkZSAiaGQ0NDc4MC1sb3cuaCIKKworI2luY2x1ZGUgInJlcG9ydC5oIgorI2luY2x1ZGUgPHN0
ZGlvLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRl
IDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHN5cy9pb2N0bC5oPgor
I2luY2x1ZGUgPGxpbnV4L2kyYy1kZXYuaD4KKworI2RlZmluZSBERUZBVUxUX0RFVklDRQkJIi9k
ZXYvaTJjLTAiCisKK3ZvaWQgaTJjX3BpcGxhdGVfSEQ0NDc4MF9zZW5kZGF0YShQcml2YXRlRGF0
YSAqcCwKKwkJCQkgIHVuc2lnbmVkIGNoYXIgZGlzcGxheUlELAorCQkJCSAgdW5zaWduZWQgY2hh
ciBmbGFncywKKwkJCQkgIHVuc2lnbmVkIGNoYXIgY2gpOwordm9pZCBpMmNfcGlwbGF0ZV9IRDQ0
NzgwX2JhY2tsaWdodChQcml2YXRlRGF0YSAqcCwgdW5zaWduZWQgY2hhciBzdGF0ZSk7Cit1bnNp
Z25lZCBjaGFyIGkyY19waXBsYXRlX0hENDQ3ODBfc2NhbmtleXBhZChQcml2YXRlRGF0YSAqcCk7
Cit2b2lkIGkyY19waXBsYXRlX0hENDQ3ODBfY2xvc2UoUHJpdmF0ZURhdGEgKnApOworCisvKiBN
Q1AyMzAxNyByZWdpc3RlcnMgKi8KKyNkZWZpbmUgTUNQMjMwMTdfSU9ESVJBIDB4MDAKKyNkZWZp
bmUgTUNQMjMwMTdfSU9ESVJCIDB4MDEKKyNkZWZpbmUgTUNQMjMwMTdfR1BQVUEgIDB4MEMKKyNk
ZWZpbmUgTUNQMjMwMTdfR1BQVUIgIDB4MEQKKyNkZWZpbmUgTUNQMjMwMTdfR1BJT0EgIDB4MTIK
KyNkZWZpbmUgTUNQMjMwMTdfR1BJT0IgIDB4MTMKKyNkZWZpbmUgTUNQMjMwMTdfT0xBVEEgIDB4
MTQKKyNkZWZpbmUgTUNQMjMwMTdfT0xBVEIgIDB4MTUKKworLyogR1BJT0EgQklUUyAqLworI2Rl
ZmluZSBHX0JJVCAgICAgKDEgPDwgNykKKyNkZWZpbmUgUl9CSVQgICAgICgxIDw8IDYpCisjZGVm
aW5lIExfS0VZX0JJVCAoMSA8PCA0KQorI2RlZmluZSBVX0tFWV9CSVQgKDEgPDwgMykKKyNkZWZp
bmUgRF9LRVlfQklUICgxIDw8IDIpCisjZGVmaW5lIFJfS0VZX0JJVCAoMSA8PCAxKQorI2RlZmlu
ZSBTX0tFWV9CSVQgKDEgPDwgMCkKKworLyogR1BJT0IgQklUUyAqLworI2RlZmluZSBSU19CSVQg
KDEgPDwgNykKKyNkZWZpbmUgUldfQklUICgxIDw8IDYpCisjZGVmaW5lIEVOX0JJVCAoMSA8PCA1
KQorI2RlZmluZSBEMF9CSVQgKDEgPDwgNCkKKyNkZWZpbmUgRDFfQklUICgxIDw8IDMpCisjZGVm
aW5lIEQyX0JJVCAoMSA8PCAyKQorI2RlZmluZSBEM19CSVQgKDEgPDwgMSkKKyNkZWZpbmUgQl9C
SVQgICgxIDw8IDApCisKKyNkZWZpbmUgREFUQV9NQVNLIChEMF9CSVQgfCBEMV9CSVQgfCBEMl9C
SVQgfCBEM19CSVQpCisKKyNkZWZpbmUgREFUQV9CSVRfU1RBUlRfT0ZGU0VUIDEKKworLyogUmV2
ZXJzZXMgdGhlIGJpdHMgaW4gYSA0IGJpdCB3b3JkICovCisjZGVmaW5lIFNXSVpaTEVfNEJJVFMo
eCkgKCgoKHgpICYgMHgwMSkgPDwgMykgfCAoKCh4KSAmIDB4MDIpIDw8IDEpIHwgKCgoeCkgJiAw
eDA0KSA+PiAxKSB8ICgoKHgpICYgMHgwOCkgPj4gMykpCisKKy8qIFN3aXp6bGUgYW5kIG9mZnNl
dCBiaXRzIGNvcnJlY3RseSBmb3IgdGhlIFBpUGxhdGUgd2lyaW5nICovCisjZGVmaW5lIE1BUF9U
T19EQVRBX1BJTlMoeCkgKFNXSVpaTEVfNEJJVFMoeCkgPDwgREFUQV9CSVRfU1RBUlRfT0ZGU0VU
KQorCisjZGVmaW5lIEkyQ19BRERSX01BU0sgMHg3ZgorCisvKioKKyAqIFJlYWQgb25lIG9mIHRo
ZSBNQ1AyMzAxNyByZWdpc3RlcnMKKyAqIHAgICAgICAgIFBvaW50ZXIgdG8gZHJpdmVyIHByaXZh
dGUgZGF0YS4KKyAqIHJlZyAgICAgIEFkZHJlc3Mgb2YgdGhlIHJlZ2lzdGVyIHRvIHJlYWQuCisg
KiB2YWwgICAgICBQb2ludGVyIHRvIHRoZSByZWFkIGJ1ZmZlci4KKyAqIDAgICAgICAgIFN1Y2Nl
c3MuCisgKiAtMSAgICAgICBFcnJvci4KKyAqLworc3RhdGljIGludAoraTJjX3JlYWRfcmVnKFBy
aXZhdGVEYXRhICpwLCB1bnNpZ25lZCBjaGFyIHJlZywgdW5zaWduZWQgY2hhciAqdmFsKQorewor
ICAvKiBTZXQgdGhlIGFkZHJlc3MgdG8gYmUgcmVhZCAqLworICBpZiAod3JpdGUocC0+ZmQsJnJl
ZywxKSAhPSAxKSB7CisgICAgcmV0dXJuIC0xOworICB9CisKKyAgLyogUmVhZCB0aGUgdmFsdWUg
Ki8KKyAgaWYgKHJlYWQocC0+ZmQsdmFsLDEpICE9IDEpIHsKKyAgICByZXR1cm4gLTE7CisgIH0K
KworICByZXR1cm4gMDsKK30KKworLyoqCisgKiBXcml0ZSBvbmUgb2YgdGhlIE1DUDIzMDE3IHJl
Z2lzdGVycworICogcCAgICAgICAgUG9pbnRlciB0byBkcml2ZXIgcHJpdmF0ZSBkYXRhLgorICog
cmVnICAgICAgQWRkcmVzcyBvZiB0aGUgcmVnaXN0ZXIgdG8gd3JpdGUuCisgKiB2YWwgICAgICBW
YWx1ZSB0byBiZSB3cml0dGVuLgorICogMCAgICAgICAgU3VjY2Vzcy4KKyAqIC0xICAgICAgIEVy
cm9yLgorICovCitzdGF0aWMgaW50CitpMmNfd3JpdGVfcmVnKFByaXZhdGVEYXRhICpwLCB1bnNp
Z25lZCBjaGFyIHJlZywgdW5zaWduZWQgY2hhciB2YWwpCit7CisgIHVuc2lnbmVkIGNoYXIgYnVm
WzJdOworCisgIGJ1ZlswXSA9IHJlZzsKKyAgYnVmWzFdID0gdmFsOworICBpZiAod3JpdGUocC0+
ZmQsYnVmLHNpemVvZihidWYpKSAhPSBzaXplb2YoYnVmKSkgeworICAgIHJldHVybiAtMTsKKyAg
fQorICByZXR1cm4gMDsKK30KKworLyoqCisgKiBMb3cgbGV2ZWwgd3JpdGUgdG8gdGhlIExDRCA0
LWJpdCBpbnRlcmZhY2UuCisgKiBwICAgICAgICBEcml2ZXIgcHJpdmF0ZSBkYXRhLgorICogdmFs
ICAgICAgVmFsdWUgdG8gYmUgd3JpdHRlbi4KKyAqIHJzICAgICAgIFJlZ2lzdGVyL0RhdGEgc2Vs
ZWN0LgorICogMCAgICAgICAgU3VjY2Vzcy4KKyAqIC0xICAgICAgIEVycm9yLgorICovCitzdGF0
aWMgaW50CitpMmNfd3JpdGVfNGJpdHMoUHJpdmF0ZURhdGEgKnAsIHVuc2lnbmVkIGNoYXIgdmFs
LCBpbnQgcnMpCit7CisgIHVuc2lnbmVkIGNoYXIgbmliYmxlWzJdOworICB1bnNpZ25lZCBjaGFy
IHdyaXRlX3ZhbD0wOworICBpbnQgbmliYmxlX2lkeCA9IDA7CisKKyAgLyogU3BsaXQgdGhlIHZh
bCBieXRlIGludG8gbmliYmxlcyAqLworICBuaWJibGVbMF0gPSAodmFsID4+IDQpOworICBuaWJi
bGVbMV0gPSAodmFsICYgMHgwZik7CisKKyAgZm9yIChuaWJibGVfaWR4PTA7bmliYmxlX2lkeCA8
IDI7bmliYmxlX2lkeCsrKSB7CisgICAgLyogQWRqdXN0IGZvciA0LWJpdCBkYXRhIHBpbnMgKi8K
KyAgICB3cml0ZV92YWwgPSBNQVBfVE9fREFUQV9QSU5TKG5pYmJsZVtuaWJibGVfaWR4XSk7Cisg
ICAgCisgICAgLyogU2V0IHRoZSBSUyBiaXQgKi8KKyAgICBpZiAocnMpIHsKKyAgICAgIHdyaXRl
X3ZhbCB8PSBSU19CSVQ7CisgICAgfQorICAgIGVsc2UgeworICAgICAgd3JpdGVfdmFsICY9IH5S
U19CSVQ7CisgICAgfQorCisgICAgLyogU2V0IGVuYWJsZSBiaXQgKi8KKyAgICBpMmNfd3JpdGVf
cmVnKHAsTUNQMjMwMTdfR1BJT0Isd3JpdGVfdmFsIHwgRU5fQklUKTsKKworICAgIHVzbGVlcCgx
KTsKKworICAgIC8qIENsZWFyIGVuYWJsZSBiaXQgKi8KKyAgICBpMmNfd3JpdGVfcmVnKHAsTUNQ
MjMwMTdfR1BJT0Isd3JpdGVfdmFsICYgfkVOX0JJVCk7CisKKyAgfSAvKiBmb3IgZWFjaCBuaWJi
bGUgKi8KKworICByZXR1cm4gMDsKK30KKworLyoqCisgKiBJbml0aWFsaXplIHRoZSBkcml2ZXIu
CisgKiBccGFyYW0gZHJ2dGhpcyAgUG9pbnRlciB0byBkcml2ZXIgc3RydWN0dXJlLgorICogXHJl
dHZhbCAwICAgICAgIFN1Y2Nlc3MuCisgKiBccmV0dmFsIC0xICAgICAgRXJyb3IuCisgKi8KK2lu
dAoraGRfaW5pdF9pMmNfcGlwbGF0ZShEcml2ZXIgKmRydnRoaXMpCit7CisgIFByaXZhdGVEYXRh
ICpwID0gKFByaXZhdGVEYXRhKikgZHJ2dGhpcy0+cHJpdmF0ZV9kYXRhOworICBIRDQ0NzgwX2Z1
bmN0aW9ucyAqaGQ0NDc4MF9mdW5jdGlvbnMgPSBwLT5oZDQ0NzgwX2Z1bmN0aW9uczsKKyAgCisg
IGNoYXIgZGV2aWNlWzI1Nl0gPSBERUZBVUxUX0RFVklDRTsKKyAgCisgIC8qIFJFQUQgQ09ORklH
IEZJTEUgKi8KKyAgCisgIC8qIEdldCBzZXJpYWwgZGV2aWNlIHRvIHVzZSAqLworICBzdHJuY3B5
KGRldmljZSwKKwkgIGRydnRoaXMtPmNvbmZpZ19nZXRfc3RyaW5nKGRydnRoaXMtPm5hbWUsCisJ
CQkJICAgICAiRGV2aWNlIiwKKwkJCQkgICAgIDAsCisJCQkJICAgICBERUZBVUxUX0RFVklDRSks
CisJICBzaXplb2YoZGV2aWNlKSk7CisgIGRldmljZVtzaXplb2YoZGV2aWNlKS0xXSA9ICdcMCc7
CisgIHJlcG9ydChSUFRfSU5GTywKKwkgIkhENDQ3ODA6IEkyQyBwaXBsYXRlOiBVc2luZyBkZXZp
Y2UgJyVzJyBhbmQgYWRkcmVzcyAldSBmb3IgYSBNQ1AyMzAxNyIsCisJIGRldmljZSwKKwkgcC0+
cG9ydCAmIEkyQ19BRERSX01BU0spOworICAKKyAgLyogT3BlbiB0aGUgSTJDIGRldmljZSAqLwor
ICBwLT5mZCA9IG9wZW4oZGV2aWNlLCBPX1JEV1IpOworICBpZiAocC0+ZmQgPCAwKSB7CisgICAg
cmVwb3J0KFJQVF9FUlIsCisJICAgIkhENDQ3ODA6IEkyQyBwaXBsYXRlOiBvcGVuIGkyYyBkZXZp
Y2UgJyVzJyBmYWlsZWQ6ICVzIiwKKwkgICBkZXZpY2UsCisJICAgc3RyZXJyb3IoZXJybm8pKTsK
KyAgICByZXR1cm4oLTEpOworICB9CisgIAorICAvKiBTZXQgSTJDIGFkZHJlc3MgKi8KKyAgaWYg
KGlvY3RsKHAtPmZkLEkyQ19TTEFWRSwgcC0+cG9ydCAmIEkyQ19BRERSX01BU0spIDwgMCkgewor
ICAgIHJlcG9ydChSUFRfRVJSLAorCSAgICJIRDQ0NzgwOiBJMkMgcGlwbGF0ZTogc2V0IGFkZHJl
c3MgdG8gJyVpJzogJXMiLAorCSAgIHAtPnBvcnQgJiBJMkNfQUREUl9NQVNLLAorCSAgIHN0cmVy
cm9yKGVycm5vKSk7CisgICAgcmV0dXJuKC0xKTsKKyAgfQorICAKKyAgLyogSU9ESVJBIC0ga2V5
cyBhcyBpbnB1dCwgYWxsIG90aGVyIGFzIG91dHB1dCAqLworICBpMmNfd3JpdGVfcmVnKHAsIE1D
UDIzMDE3X0lPRElSQSwKKwkodW5zaWduZWQgY2hhcikgKExfS0VZX0JJVCB8IFVfS0VZX0JJVCB8
IERfS0VZX0JJVCB8IFJfS0VZX0JJVCB8IFNfS0VZX0JJVCkKKwkJJiB+KEdfQklUIHwgUl9CSVQp
KTsKKyAgCisgIC8qIElPRElSQiAtIExDRCBjb250cm9sL2RhdGEgYnVzIHNpZ25hbHMgYXMgb3V0
cHV0cyAqLworICBpMmNfd3JpdGVfcmVnKHAsIE1DUDIzMDE3X0lPRElSQiwKKwkodW5zaWduZWQg
Y2hhcikgfihSU19CSVQgfCBSV19CSVQgfCBFTl9CSVQgfCBEMF9CSVQgfCBEMV9CSVQgfCBEMl9C
SVQgfCBEM19CSVQgfCBCX0JJVCkpOworICAKKyAgLyogR1BQVUEgLSBQdWxsdXBzIGZvciBrZXkg
c3dpdGNoIGlucHV0cyAqLworICBpMmNfd3JpdGVfcmVnKHAsIE1DUDIzMDE3X0dQUFVBLAorCSh1
bnNpZ25lZCBjaGFyKSAoTF9LRVlfQklUIHwgVV9LRVlfQklUIHwgRF9LRVlfQklUIHwgUl9LRVlf
QklUIHwgU19LRVlfQklUKQorCQkmIH4oR19CSVQgfCBSX0JJVCkpOworICAKKyAgLyogR1BQVUIg
LSBQdWxsdXBzIGRpc2FiZWQgKi8KKyAgaTJjX3dyaXRlX3JlZyhwLCBNQ1AyMzAxN19HUFBVQiwg
KHVuc2lnbmVkIGNoYXIpIDB4MDApOworICAKKyAgLyogU2V0IGRyaXZlciBmdW5jdGlvbnMgKi8K
KyAgaGQ0NDc4MF9mdW5jdGlvbnMtPnNlbmRkYXRhICAgPSBpMmNfcGlwbGF0ZV9IRDQ0NzgwX3Nl
bmRkYXRhOworICBoZDQ0NzgwX2Z1bmN0aW9ucy0+YmFja2xpZ2h0ICA9IGkyY19waXBsYXRlX0hE
NDQ3ODBfYmFja2xpZ2h0OworICBoZDQ0NzgwX2Z1bmN0aW9ucy0+c2NhbmtleXBhZCA9IGkyY19w
aXBsYXRlX0hENDQ3ODBfc2NhbmtleXBhZDsKKyAgaGQ0NDc4MF9mdW5jdGlvbnMtPmNsb3NlICAg
ICAgPSBpMmNfcGlwbGF0ZV9IRDQ0NzgwX2Nsb3NlOworCisgIC8qIEluaXQgdGhlIExDRCAqLwor
ICBoZDQ0NzgwX2Z1bmN0aW9ucy0+c2VuZGRhdGEocCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSU19JTlNUUiwweDMzKTsK
KyAgaGQ0NDc4MF9mdW5jdGlvbnMtPnVQYXVzZShwLCAxKTsKKworICBoZDQ0NzgwX2Z1bmN0aW9u
cy0+c2VuZGRhdGEocCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBSU19JTlNUUiwweDMyKTsKKyAgaGQ0NDc4MF9mdW5jdGlv
bnMtPnVQYXVzZShwLCAxKTsKKworICBjb21tb25faW5pdChwLCBJRl80QklUKTsKKworICByZXBv
cnQoUlBUX0lORk8sIkhENDQ3ODA6IEkyQyBwaXBsYXRlOiBpbml0aWFsaXplZCEiKTsKKyAgCisg
IHJldHVybiAwOworfQorCisvKioKKyAqIENsb3NlIHRoZSBkZXZpY2UuCisgKiBccGFyYW0gcCAg
ICAgICAgICBQb2ludGVyIHRvIGRyaXZlcidzIHByaXZhdGUgZGF0YSBzdHJ1Y3R1cmUuCisgKi8K
K3ZvaWQKK2kyY19waXBsYXRlX0hENDQ3ODBfY2xvc2UoUHJpdmF0ZURhdGEgKnApIHsKKyAgaWYg
KHAtPmZkID49IDApIHsKKyAgICBjbG9zZShwLT5mZCk7CisgIH0KK30KKworCisvKioKKyAqIFNl
bmQgZGF0YSBvciBjb21tYW5kcyB0byB0aGUgZGlzcGxheS4KKyAqIFxwYXJhbSBwICAgICAgICAg
IFBvaW50ZXIgdG8gZHJpdmVyJ3MgcHJpdmF0ZSBkYXRhIHN0cnVjdHVyZS4KKyAqIFxwYXJhbSBk
aXNwbGF5SUQgIElEIG9mIHRoZSBkaXNwbGF5IChvciAwIGZvciBhbGwpIHRvIHNlbmQgZGF0YSB0
by4KKyAqIFxwYXJhbSBmbGFncyAgICAgIERlZmluZXMgd2hldGhlciB0byBlbmQgYSBjb21tYW5k
IG9yIGRhdGEuCisgKiBccGFyYW0gY2ggICAgICAgICBUaGUgdmFsdWUgdG8gc2VuZC4KKyAqLwor
dm9pZAoraTJjX3BpcGxhdGVfSEQ0NDc4MF9zZW5kZGF0YShQcml2YXRlRGF0YSAqcCwKKwkJCSAg
ICAgdW5zaWduZWQgY2hhciBkaXNwbGF5SUQsCisJCQkgICAgIHVuc2lnbmVkIGNoYXIgZmxhZ3Ms
CisJCQkgICAgIHVuc2lnbmVkIGNoYXIgY2gpCit7CisgIEhENDQ3ODBfZnVuY3Rpb25zICpoZDQ0
NzgwX2Z1bmN0aW9ucyA9IHAtPmhkNDQ3ODBfZnVuY3Rpb25zOworCisgIGlmIChmbGFncyA9PSBS
U19JTlNUUikKKyAgICBpMmNfd3JpdGVfNGJpdHMocCxjaCwwKTsKKyAgZWxzZQorICAgIGkyY193
cml0ZV80Yml0cyhwLGNoLDEpOworCisgIGhkNDQ3ODBfZnVuY3Rpb25zLT51UGF1c2UocCwgMSk7
CisgIAorICBpZiAoKHAtPmJhY2tsaWdodF9iaXQpICYmIChwLT5oZDQ0NzgwX2Z1bmN0aW9ucy0+
YmFja2xpZ2h0KSkgeworICAgIHAtPmhkNDQ3ODBfZnVuY3Rpb25zLT5iYWNrbGlnaHQocCwxKTsK
KyAgfQorICBlbHNlIHsKKyAgICBwLT5oZDQ0NzgwX2Z1bmN0aW9ucy0+YmFja2xpZ2h0KHAsMCk7
CisgIH0KK30KKworLyoqCisgKiBUdXJuIGRpc3BsYXkgYmFja2xpZ2h0IG9uIG9yIG9mZi4KKyAq
IFxwYXJhbSBwICAgICAgUG9pbnRlciB0byBkcml2ZXIncyBwcml2YXRlIGRhdGEgc3RydWN0dXJl
LgorICogXHBhcmFtIHN0YXRlICBOZXcgYmFja2xpZ2h0IHN0YXR1cy4KKyAqLwordm9pZAoraTJj
X3BpcGxhdGVfSEQ0NDc4MF9iYWNrbGlnaHQoUHJpdmF0ZURhdGEgKnAsIHVuc2lnbmVkIGNoYXIg
c3RhdGUpCit7CisgIHVuc2lnbmVkIGNoYXIgZ3Bpb2E9MDsKKyAgdW5zaWduZWQgY2hhciBncGlv
Yj0wOworCisgIC8qIFNldCB0aGUgYmFja2xpdCBiaXQgKi8KKyAgcC0+YmFja2xpZ2h0X2JpdCA9
IChwLT5oYXZlX2JhY2tsaWdodCA/IDB4ZmYgOiAwKSAmIChzdGF0ZSA/IDEgOiAwKTsKKworICAv
KiBSZWFkIHRoZSBSRyBiaXRzICovCisgIGlmIChpMmNfcmVhZF9yZWcocCwgTUNQMjMwMTdfR1BJ
T0EsICZncGlvYSkpIHsKKyAgICByZXR1cm47CisgIH0KKworICAvKiBSZWFkIHRoZSBCIGJpdCAq
LworICBpZiAoaTJjX3JlYWRfcmVnKHAsIE1DUDIzMDE3X0dQSU9CLCAmZ3Bpb2IpKSB7CisgICAg
cmV0dXJuOworICB9CisKKyAgLyogU2V0IG9yIGNsZWFyIHRoZSBSR0IgYml0cyAqLworICBpZiAo
cC0+YmFja2xpZ2h0X2JpdCkgeworICAgIGdwaW9hICY9IH4oUl9CSVQgfCBHX0JJVCk7CisgICAg
Z3Bpb2IgJj0gfihCX0JJVCk7CisgIH0KKyAgZWxzZSB7CisgICAgZ3Bpb2EgfD0gKFJfQklUIHwg
R19CSVQpOworICAgIGdwaW9iIHw9IChCX0JJVCk7CisgIH0KKworICAvKiBXcml0ZSB0aGUgUkdC
IGJpdHMgKi8KKyAgaTJjX3dyaXRlX3JlZyhwLCBNQ1AyMzAxN19HUElPQSxncGlvYSk7CisgIGky
Y193cml0ZV9yZWcocCwgTUNQMjMwMTdfR1BJT0IsZ3Bpb2IpOworfQorCisvKioKKyAqIFNjYW4g
dGhlIExDRCBrZXlzCisgKiBccGFyYW0gcCAgICAgIFBvaW50ZXIgdG8gZHJpdmVyJ3MgcHJpdmF0
ZSBkYXRhIHN0cnVjdHVyZS4KKyAqIFxyZXR2YWwga2V5ICAgS2V5IG51bWJlcgorICovCit1bnNp
Z25lZCBjaGFyCitpMmNfcGlwbGF0ZV9IRDQ0NzgwX3NjYW5rZXlwYWQoUHJpdmF0ZURhdGEgKnAp
Cit7CisgIHVuc2lnbmVkIGNoYXIgZ3Bpb2E9MDsKKworICAvKiBSZWFkIHRoZSBrZXkgYml0cyAq
LworICBpZiAoaTJjX3JlYWRfcmVnKHAsTUNQMjMwMTdfR1BJT0EsJmdwaW9hKSkgeworICAgIHJl
dHVybiAwOworICB9CisKKyAgLyogU2VsZWN0IGtleSAqLworICBpZiAoMD09KGdwaW9hICYgU19L
RVlfQklUKSkgeworICAgIHJldHVybiAxOworICB9CisKKyAgLyogVXAga2V5ICovCisgIGlmICgw
PT0oZ3Bpb2EgJiBVX0tFWV9CSVQpKSB7CisgICAgcmV0dXJuIDI7CisgIH0KKworICAvKiBEb3du
IGtleSAqLworICBpZiAoMD09KGdwaW9hICYgRF9LRVlfQklUKSkgeworICAgIHJldHVybiAzOwor
ICB9CisKKyAgLyogTGVmdCBrZXkgKi8KKyAgaWYgKDA9PShncGlvYSAmIExfS0VZX0JJVCkpIHsK
KyAgICByZXR1cm4gNDsKKyAgfQorCisgIC8qIFJpZ2h0IGtleSAqLworICBpZiAoMD09KGdwaW9h
ICYgUl9LRVlfQklUKSkgeworICAgIHJldHVybiA1OworICB9CisKKyAgcmV0dXJuIDA7Cit9CmRp
ZmYgLXVyTiAuL2xjZHByb2Mvc2VydmVyL2RyaXZlcnMvaGQ0NDc4MC1pMmMtcGlwbGF0ZS5oIC4v
bGNkcHJvYy1waXBsYXRlL3NlcnZlci9kcml2ZXJzL2hkNDQ3ODAtaTJjLXBpcGxhdGUuaAotLS0g
Li9sY2Rwcm9jL3NlcnZlci9kcml2ZXJzL2hkNDQ3ODAtaTJjLXBpcGxhdGUuaAkxOTY5LTEyLTMx
IDE4OjAwOjAwLjAwMDAwMDAwMCAtMDYwMAorKysgLi9sY2Rwcm9jLXBpcGxhdGUvc2VydmVyL2Ry
aXZlcnMvaGQ0NDc4MC1pMmMtcGlwbGF0ZS5oCTIwMTMtMDItMDggMjM6MzQ6MzUuMDAwMDAwMDAw
IC0wNjAwCkBAIC0wLDAgKzEsOSBAQAorI2lmbmRlZiBIRF9JMkNfUFBfSAorI2RlZmluZSBIRF9J
MkNfUFBfSAorCisjaW5jbHVkZSAibGNkLmgiCQkJCQkgIC8qIGZvciBEcml2ZXIgKi8KKworLyog
aW5pdGlhbGlzZSB0aGlzIHBhcnRpY3VsYXIgZHJpdmVyICovCitpbnQgaGRfaW5pdF9pMmNfcGlw
bGF0ZShEcml2ZXIgKmRydnRoaXMpOworCisjZW5kaWYKZGlmZiAtdXJOIC4vbGNkcHJvYy9zZXJ2
ZXIvZHJpdmVycy9oZDQ0NzgwLWxvdy5oIC4vbGNkcHJvYy1waXBsYXRlL3NlcnZlci9kcml2ZXJz
L2hkNDQ3ODAtbG93LmgKLS0tIC4vbGNkcHJvYy9zZXJ2ZXIvZHJpdmVycy9oZDQ0NzgwLWxvdy5o
CTIwMTMtMDEtMjcgMDU6NDQ6NDMuMDAwMDAwMDAwIC0wNjAwCisrKyAuL2xjZHByb2MtcGlwbGF0
ZS9zZXJ2ZXIvZHJpdmVycy9oZDQ0NzgwLWxvdy5oCTIwMTMtMDItMDggMjM6MjQ6MjkuMDAwMDAw
MDAwIC0wNjAwCkBAIC01NCw2ICs1NCw3IEBACiAjZGVmaW5lIEhENDQ3ODBfQ1RfVVNCVElOWQkJ
MjAKICNkZWZpbmUgSEQ0NDc4MF9DVF9VU0I0QUxMCQkyMQogI2RlZmluZSBIRDQ0NzgwX0NUX1JB
U1BCRVJSWVBJCQkyMgorI2RlZmluZSBIRDQ0NzgwX0NUX0kyQ19QSVBMQVRFICAgICAgICAgIDIz
CiAvKipAfSovCiAKIC8qKiBcbmFtZSBTeW1ib2xpYyBuYW1lcyBmb3IgaW50ZXJmYWNlIHR5cGVz
CmRpZmYgLXVyTiAuL2xjZHByb2Mvc2VydmVyL2RyaXZlcnMvTWFrZWZpbGUuYW0gLi9sY2Rwcm9j
LXBpcGxhdGUvc2VydmVyL2RyaXZlcnMvTWFrZWZpbGUuYW0KLS0tIC4vbGNkcHJvYy9zZXJ2ZXIv
ZHJpdmVycy9NYWtlZmlsZS5hbQkyMDEzLTAxLTI3IDA1OjQ0OjQzLjAwMDAwMDAwMCAtMDYwMAor
KysgLi9sY2Rwcm9jLXBpcGxhdGUvc2VydmVyL2RyaXZlcnMvTWFrZWZpbGUuYW0JMjAxMy0wMi0w
OCAyMzoxODowNi4wMDAwMDAwMDAgLTA2MDAKQEAgLTk1LDcgKzk1LDcgQEAKIGdsY2RsaWJfU09V
UkNFUyA9ICAgIGxjZC5oIGxjZF9saWIuaCBnbGNkbGliLmggZ2xjZGxpYi5jIHJlcG9ydC5oCiBn
bGtfU09VUkNFUyA9ICAgICAgICBsY2QuaCBnbGsuYyBnbGsuaCBnbGtwcm90by5jIGdsa3Byb3Rv
LmggcmVwb3J0LmgKIGhkNDQ3ODBfU09VUkNFUyA9ICAgIGxjZC5oIGxjZF9saWIuaCBoZDQ0Nzgw
LmggaGQ0NDc4MC5jIGhkNDQ3ODAtZHJpdmVycy5oIGhkNDQ3ODAtbG93LmggaGQ0NDc4MC1jaGFy
bWFwLmggcmVwb3J0LmggYWR2X2JpZ251bS5oCi1FWFRSQV9oZDQ0NzgwX1NPVVJDRVMgPSBoZDQ0
NzgwLTRiaXQuYyBoZDQ0NzgwLTRiaXQuaCBoZDQ0NzgwLWV4dDhiaXQuYyBoZDQ0NzgwLWV4dDhi
aXQuaCBsY2Rfc2VtLmMgbGNkX3NlbS5oIGhkNDQ3ODAtc2VyaWFsTHB0LmMgaGQ0NDc4MC1zZXJp
YWxMcHQuaCBoZDQ0NzgwLXNlcmlhbC5jIGhkNDQ3ODAtc2VyaWFsLmggaGQ0NDc4MC13aW5hbXAu
YyBoZDQ0NzgwLXdpbmFtcC5oIGhkNDQ3ODAtYndjdC11c2IuYyBoZDQ0NzgwLWJ3Y3QtdXNiLmgg
aGQ0NDc4MC1sY2QydXNiLmMgaGQ0NDc4MC1sY2QydXNiLmggaGQ0NDc4MC11c2J0aW55LmMgaGQ0
NDc4MC11c2J0aW55LmggaGQ0NDc4MC1saXMyLmMgaGQ0NDc4MC1saXMyLmggaGQ0NDc4MC1pMmMu
YyBoZDQ0NzgwLWkyYy5oIGhkNDQ3ODAtZnRkaS5jIGhkNDQ3ODAtZnRkaS5oIGhkNDQ3ODAtZXRo
bGNkLmMgaGQ0NDc4MC1ldGhsY2QuaCBoZDQ0NzgwLXVzczcyMC5jIGhkNDQ3ODAtdXNzNzIwLmgg
aGQ0NDc4MC11c2JsY2QuYyBoZDQ0NzgwLXVzYmxjZC5oIGhkNDQ3ODAtdXNiNGFsbC5jIGhkNDQ3
ODAtdXNiNGFsbC5oIHBvcnQuaCBoZDQ0NzgwLXJwaS5jIGhkNDQ3ODAtcnBpLmggbHB0LXBvcnQu
aCB0aW1pbmcuaAorRVhUUkFfaGQ0NDc4MF9TT1VSQ0VTID0gaGQ0NDc4MC00Yml0LmMgaGQ0NDc4
MC00Yml0LmggaGQ0NDc4MC1leHQ4Yml0LmMgaGQ0NDc4MC1leHQ4Yml0LmggbGNkX3NlbS5jIGxj
ZF9zZW0uaCBoZDQ0NzgwLXNlcmlhbExwdC5jIGhkNDQ3ODAtc2VyaWFsTHB0LmggaGQ0NDc4MC1z
ZXJpYWwuYyBoZDQ0NzgwLXNlcmlhbC5oIGhkNDQ3ODAtd2luYW1wLmMgaGQ0NDc4MC13aW5hbXAu
aCBoZDQ0NzgwLWJ3Y3QtdXNiLmMgaGQ0NDc4MC1id2N0LXVzYi5oIGhkNDQ3ODAtbGNkMnVzYi5j
IGhkNDQ3ODAtbGNkMnVzYi5oIGhkNDQ3ODAtdXNidGlueS5jIGhkNDQ3ODAtdXNidGlueS5oIGhk
NDQ3ODAtbGlzMi5jIGhkNDQ3ODAtbGlzMi5oIGhkNDQ3ODAtaTJjLmMgaGQ0NDc4MC1pMmMuaCBo
ZDQ0NzgwLWZ0ZGkuYyBoZDQ0NzgwLWZ0ZGkuaCBoZDQ0NzgwLWV0aGxjZC5jIGhkNDQ3ODAtZXRo
bGNkLmggaGQ0NDc4MC11c3M3MjAuYyBoZDQ0NzgwLXVzczcyMC5oIGhkNDQ3ODAtdXNibGNkLmMg
aGQ0NDc4MC11c2JsY2QuaCBoZDQ0NzgwLXVzYjRhbGwuYyBoZDQ0NzgwLXVzYjRhbGwuaCBoZDQ0
NzgwLWkyYy1waXBsYXRlLmMgaGQ0NDc4MC1pMmMtcGlwbGF0ZS5oIHBvcnQuaCBoZDQ0NzgwLXJw
aS5jIGhkNDQ3ODAtcnBpLmggbHB0LXBvcnQuaCB0aW1pbmcuaAogaTI1MDB2ZmRfU09VUkNFUyA9
ICAgbGNkLmggaTI1MDB2ZmQuYyBpMjUwMHZmZC5oIGdsY2RfZm9udDV4OC5oIHJlcG9ydC5oCiBp
Y3BfYTEwNl9TT1VSQ0VTID0gICBsY2QuaCBsY2RfbGliLmggaWNwX2ExMDYuYyBpY3BfYTEwNi5o
IHJlcG9ydC5oCiBpbW9uX1NPVVJDRVMgPSAgICAgICBsY2QuaCBsY2RfbGliLmggaGQ0NDc4MC1j
aGFybWFwLmggaW1vbi5oIGltb24uYyByZXBvcnQuaCBhZHZfYmlnbnVtLmgK
--f46d0401f8fb01d09604d8bfa5f5
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
LCDproc mailing list
[email protected]
http://lists.omnipotent.net/mailman/listinfo/lcdproc

--f46d0401f8fb01d09604d8bfa5f5--