From xemacs-m  Wed May 28 17:31:08 1997
Received: from CNRI.Reston.VA.US (CNRI.Reston.VA.US [132.151.1.1])
	by xemacs.org (8.8.5/8.8.5) with SMTP id RAA20128;
	Wed, 28 May 1997 17:31:06 -0500 (CDT)
Received: from newcnri.cnri.reston.va.us by CNRI.Reston.VA.US id aa13784;
          28 May 97 18:33 EDT
Received: from glyph.cnri.reston.va.us by newcnri.CNRI.Reston.Va.US (SMI-8.6/SMI-SVR4)
	id SAA18200; Wed, 28 May 1997 18:33:12 -0400
Received: from localhost (klm@localhost) by glyph.cnri.reston.va.us (8.7.5/8.7.3) with SMTPid SAA24587; Wed, 28 May 1997 18:32:04 -0400 (EDT)
X-Authentication-Warning: glyph.cnri.reston.va.us: klm owned process doing -bs
Date: Wed, 28 May 1997 18:32:03 -0400 (EDT)
From: Ken Manheimer <klm@CNRI.Reston.VA.US>
Reply-To: klm@python.org
To: Steven L Baur <steve@xemacs.org>
cc: xemacs-beta@xemacs.org
Subject: Re: Where to send package updates?
In-Reply-To: <m2zptf784h.fsf@altair.xemacs.org>
Message-ID: <Pine.GSO.3.96.970528181933.364f-400000@glyph.cnri.reston.va.us>
X-Organization: Corporation for National Research Initiatives
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED; BOUNDARY="-559023410-752095483-864858723=:364"

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

---559023410-752095483-864858723=:364
Content-Type: TEXT/PLAIN; charset=US-ASCII

On 28 May 1997, Steven L Baur wrote:

> Ken Manheimer <klm@CNRI.Reston.VA.US> writes:
> 
> > I've got some small changes for an emacs package i maintain (and
> > developed) - icomplete.el.  All prompted by a request from stallman
> > for updates for a new plain-emacs release, i'd like to release them to
> > XEmacs, a swell.  Can someone tell me where i should send the updates
> > for XEmacs?
> 
> You can email them to me, thanks.

Ok - i've attached the diff, the changelog, and the complete new
version.  The diff is slightly larger than needs be, because i altered
some comments to agree with the gnu emacs version - figuring they're
more finicky, and i don't think the difference has *any* practical,
besides making a larger diff in this case...

> > (The changes are pretty small, but refine the cool XEmacs-specific
> > dynamic keybindings display that someone incorporated.
> 
> I did that, and for what it's worth the changes are FSF copyright
> assigned.

Nice - i really like having the keys displayed.  (I just realized it
would be easy to indicate the keybinding for a command that is "complete
but not unique" - but i think it would clutter the display too much, and
i've already sent the update to rms, and have this packaged for you.
Little hacks like this can become infinite time syncs, can't they?)
(... Like, it would be nice to integrate the abbreviated completion
method, "o-w" -> "other-window", that some people use...)

> > And it sorta kinda reconciles them for the original GNU emacs.)
> > (Well, sorta reconciles, because i couldn't find the means in plain
> > emacs to get the buffer from which the minibuffer was entered -
> > owindow, in XEmacs - so it's really just inhibited in plain emacs...)
> 
> Ugh, I remember.  There ought to be a cleaner way to do that.

Yeah - the name 'owindow', for an undocumented var, is not very good in
the first place...

Anyway, thanks for taking care of this!  Should it be posted to the
newsgroup, as well?  Someone suggested that, but i don't know if the
interest is there...

Ken Manheimer		klm@cnri.reston.va.us	    703 620-8990 x268
	    (orporation for National Research |nitiatives

	# If you appreciate Python, consider joining the PSA! #
		  # <http://www.python.org/psa/>. #


---559023410-752095483-864858723=:364
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=cdiff
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.GSO.3.96.970528183203.364g@glyph.cnri.reston.va.us>
Content-Description: diff -c <old> <new>

KioqIGljb21wbGV0ZXhlbS5lbAlXZWQgTWF5IDI4IDE4OjIzOjMwIDE5OTcN
Ci0tLSBpY29tcGxldGUuZWwJV2VkIE1heSAyOCAxMDozNzo0MCAxOTk3DQoq
KioqKioqKioqKioqKioNCioqKiAxLDMzICoqKioNCiEgOzs7IGljb21wbGV0
ZS5lbCAtLS0gbWluaWJ1ZmZlciBjb21wbGV0aW9uIHdpdGggaW5jcmVtZW50
YWwgZmVlZGJhY2sNCiAgDQohIDs7OyBDb3B5cmlnaHQgKEMpIDE5OTIsIDE5
OTMsIDE5OTQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuDQogIA0K
ISA7OzsgQXV0aG9yOiBLZW4gTWFuaGVpbWVyIDxrbG1AbmlzdC5nb3Y+DQoh
IDs7OyBNYWludGFpbmVyOiBLZW4gTWFuaGVpbWVyIDxrbG1AbmlzdC5nb3Y+
DQohIDs7OyBWZXJzaW9uOiAkSWQ6IGljb21wbGV0ZS5lbCx2IDQuNCAxOTk1
LzA4LzAzIDIxOjQyOjE1IGtsbSBFeHAga2xtICQNCiEgOzs7IENyZWF0ZWQ6
IE1hciAxOTkzIGtsbUBuaXN0LmdvdiAtIGZpcnN0IHJlbGVhc2UgdG8gdXNl
bmV0DQohIDs7OyBLZXl3b3JkczogaGVscCwgYWJicmV2DQogIA0KISA7Ozsg
SGFja2VkIGZvciBYRW1hY3M6IERhdmlkIEh1Z2hlcyA3dGggU2VwdGVtYmVy
IDE5OTUNCiAgDQohIDs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIFhFbWFjcy4N
CiEgDQohIDs7IFhFbWFjcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl
ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0DQohIDs7IHVuZGVyIHRo
ZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg
cHVibGlzaGVkIGJ5DQogIDs7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp
b247IGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikNCiAg
OzsgYW55IGxhdGVyIHZlcnNpb24uDQogIA0KISA7OyBYRW1hY3MgaXMgZGlz
dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwg
YnV0DQohIDs7IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g
dGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiEgOzsgTUVSQ0hBTlRBQklMSVRZ
IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRo
ZSBHTlUNCiEgOzsgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk
ZXRhaWxzLg0KICANCiAgOzsgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEg
Y29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiEgOzsg
YWxvbmcgd2l0aCBYRW1hY3M7IHNlZSB0aGUgZmlsZSBDT1BZSU5HLiAgSWYg
bm90LCB3cml0ZSB0byB0aGUgRnJlZQ0KISA7OyBTb2Z0d2FyZSBGb3VuZGF0
aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UgLSBTdWl0ZSAzMzAsIEJvc3Rv
biwgTUENCiEgOzsgMDIxMTEtMTMwNywgVVNBLg0KISANCiEgOzs7IFN5bmNo
ZWQgdXAgd2l0aDogRlNGIDE5LjM0Lg0KICANCiAgOzs7IENvbW1lbnRhcnk6
DQogIA0KLS0tIDEsMzMgLS0tLQ0KISA7OztfLiBpY29tcGxldGUuZWwgLSBt
aW5pYnVmZmVyIGNvbXBsZXRpb24gaW5jcmVtZW50YWwgZmVlZGJhY2sNCiAg
DQohIDs7IENvcHlyaWdodCAoQykgMTk5MiwgMTk5MywgMTk5NCBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCiAgDQohIDs7IEF1dGhvcjogS2Vu
IE1hbmhlaW1lciA8a2xtQHB5dGhvbi5vcmc+DQohIDs7IE1haW50YWluZXI6
IEtlbiBNYW5oZWltZXIgPGtsbUBweXRob24ub3JnPg0KISA7OyBWZXJzaW9u
OiAkSWQ6IGljb21wbGV0ZS5lbCx2IDQuOSAxOTk3LzA1LzI4IDE0OjM1OjE3
IGtsbSBFeHAgJA0KISA7OyBDcmVhdGVkOiBNYXIgMTk5MyBrbG1AbmlzdC5n
b3YgLSBmaXJzdCByZWxlYXNlIHRvIHVzZW5ldA0KISA7OyBLZXl3b3Jkczog
aGVscCwgYWJicmV2DQogIA0KISA7OyBUaGlzIGZpbGUgaXMgcGFydCBvZiBH
TlUgRW1hY3MuDQogIA0KISA7OyBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2Fy
ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KISA7
OyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KICA7OyB0aGUgRnJlZSBTb2Z0
d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyLCBvciAoYXQgeW91
ciBvcHRpb24pDQogIDs7IGFueSBsYXRlciB2ZXJzaW9uLg0KICANCiEgOzsg
R05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQg
d2lsbCBiZSB1c2VmdWwsDQohIDs7IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U
WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQohIDs7
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUNCiEgOzsgR05VIEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiAgDQogIDs7IFlvdSBzaG91bGQg
aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp
YyBMaWNlbnNlDQohIDs7IGFsb25nIHdpdGggR05VIEVtYWNzOyBzZWUgdGhl
IGZpbGUgQ09QWUlORy4gIElmIG5vdCwgd3JpdGUgdG8gdGhlDQohIDs7IEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNl
IC0gU3VpdGUgMzMwLA0KISA7OyBCb3N0b24sIE1BIDAyMTExLTEzMDcsIFVT
QS4NCiEgDQohIDs7IFRoaXMgZmlsZSBpcyBhbHNvIHBhcnQgb2YgWEVtYWNz
Lg0KISA7OyBIYWNrZWQgZm9yIFhFbWFjczogRGF2aWQgSHVnaGVzIDd0aCBT
ZXB0ZW1iZXIgMTk5NQ0KISA7OyBXaXRoIHNvbWUgaW50ZWdyYXRpb24gYW5k
IHJlZmluZW1lbnQgYnkgS2VuIE1hbmhlaW1lciwgTWF5IDE5OTcNCiAgDQog
IDs7OyBDb21tZW50YXJ5Og0KICANCioqKioqKioqKioqKioqKg0KKioqIDcy
LDc3ICoqKioNCi0tLSA3Miw4NCAtLS0tDQogIChwcm92aWRlICdpY29tcGxl
dGUpDQogIA0KICA7OztfKiBVc2VyIEN1c3RvbWl6YXRpb24gdmFyaWFibGVz
DQorIChkZWZ2YXIgaWNvbXBsZXRlLWNvbXB1dGUtZGVsYXkgLjMNCisgICAi
KkNvbXBsZXRpb25zLWNvbXB1dGF0aW9uIHN0YWxsLCB1c2VkIG9ubHkgd2l0
aCBsYXJnZS1udW1iZXINCisgY29tcGxldGlvbnMgLSBzZWUgYGljb21wbGV0
ZS1kZWxheS1jb21wbGV0aW9ucy10aHJlc2hvbGQnLiIpDQorIChkZWZ2YXIg
aWNvbXBsZXRlLWRlbGF5LWNvbXBsZXRpb25zLXRocmVzaG9sZCA0MDANCisg
ICAiKlBlbmRpbmctY29tcGxldGlvbnMgbnVtYmVyIG92ZXIgd2hpY2ggdG8g
YXBwbHkgaWNvbXBsZXRlLWNvbXB1dGUtZGVsYXkuIikNCisgKGRlZnZhciBp
Y29tcGxldGUtbWF4LWRlbGF5LWNoYXJzIDMNCisgICAiKk1heGltdW0gbnVt
YmVyIG9mIGluaXRpYWwgY2hhcnMgdG8gYXBwbHkgaWNvbXBsZXRlIGNvbXB1
dGUgZGVsYXkuIikNCiAgDQogIDs7O18qIEluaXRpYWxpemF0aW9uDQogIDs7
O18gID0gaWNvbXBsZXRlLW1pbmlidWZmZXItc2V0dXAtaG9vaw0KKioqKioq
KioqKioqKioqDQoqKiogOTEsOTkgKioqKg0KICB3aWxsIGNvbnN0cmFpbiBy
c3otbWluaSB0byBhIG1heGltdW0gbWluaWJ1ZmZlciBoZWlnaHQgb2YgMyBs
aW5lcyB3aGVuDQogIGljb21wbGV0aW9uIGlzIG9jY3VycmluZy4iKQ0KICAN
Ci0gKGlmIChzdHJpbmctbWF0Y2ggIlhFbWFjc1xcfEx1Y2lkIiBlbWFjcy12
ZXJzaW9uKQ0KLSAgICAgKGFkZC1ob29rICdpY29tcGxldGUtbWluaWJ1ZmZl
ci1zZXR1cC1ob29rICdpY29tcGxldGUtZXhoaWJpdCkpDQotIA0KICA7Oztf
ICsgSW50ZXJuYWwgVmFyaWFibGVzDQogIDs7O18gID0gaWNvbXBsZXRlLW1v
ZGUNCiAgKGRlZnZhciBpY29tcGxldGUtbW9kZSB0DQotLS0gOTgsMTAzIC0t
LS0NCioqKioqKioqKioqKioqKg0KKioqIDEyMCwxNDcgKioqKg0KICBtaW5p
YnVmZmVyIGNvbXBsZXRpb24uIikNCiAgKGFkZC1ob29rICdpY29tcGxldGUt
cG9zdC1jb21tYW5kLWhvb2sgJ2ljb21wbGV0ZS1leGhpYml0KQ0KICANCiEg
OzsgWEVtYWNzIGFkZGl0aW9uDQohIChkZWZ2YXIgaWNvbXBsZXRlLXNob3ct
a2V5LWJpbmRpbmdzIHQNCiAgICAiV2hlbiBub24tbmlsIHNob3cga2V5IGJp
bmRpbmdzIGFzIHdlbGwgYXMgY29tcGxldGlvbiB3aGVuIG1hdGNoaW5nDQoh
IGEgY29tbWFuZC4iKQ0KICANCi0gOzsgWEVtYWNzIGFkZGl0aW9uDQogIChk
ZWZ1biBpY29tcGxldGUtZ2V0LWtleXMgKGZ1bmMtbmFtZSkNCiEgICAiUmV0
dXJuIHRoZSBrZXlzIGBmdW5jLW5hbWUnIGlzIGJvdW5kIHRvIGFzIGEgc3Ry
aW5nLiINCiAgICAod2hlbiAoY29tbWFuZHAgZnVuYy1uYW1lKQ0KICAgICAg
KHNhdmUtZXhjdXJzaW9uDQogICAgICAgIChsZXQqICgoc3ltIChpbnRlcm4g
ZnVuYy1uYW1lKSkNCiAgCSAgICAgKGJ1ZiAoc2V0LWJ1ZmZlciAod2luZG93
LWJ1ZmZlciBvd2luZG93KSkpDQogIAkgICAgIChrZXlzICh3aGVyZS1pcy1p
bnRlcm5hbCBzeW0gKGN1cnJlbnQtbG9jYWwtbWFwIGJ1ZikpKSkNCiEgCShj
b25jYXQgIjwiDQohIAkJKGlmIGtleXMNCiAgCQkgICAgKG1hcGNvbmNhdCAn
a2V5LWRlc2NyaXB0aW9uDQohIAkJCSAgICAgICAoc29ydCAnKFtuZXh0XSBb
a3BfbmV4dF0gWyhjb250cm9sIHYpXSkNCiAgCQkJCSAgICAgIycobGFtYmRh
ICh4IHkpDQogIAkJCQkJICg8IChsZW5ndGggeCkgKGxlbmd0aCB5KSkpKQ0K
ICAJCQkgICAgICAgIiwgIikNCiEgCQkgICJVbmJvdW5kIikNCiEgCQkiPiIp
KSkpKQ0KICANCiAgOzs7XyA+IGljb21wbGV0ZS1tb2RlICgmb3B0aW9uYWwg
cHJlZml4KQ0KICA7OzsjIyNhdXRvbG9hZA0KLS0tIDEyNCwxNTIgLS0tLQ0K
ICBtaW5pYnVmZmVyIGNvbXBsZXRpb24uIikNCiAgKGFkZC1ob29rICdpY29t
cGxldGUtcG9zdC1jb21tYW5kLWhvb2sgJ2ljb21wbGV0ZS1leGhpYml0KQ0K
ICANCiEgKGRlZnZhciBpY29tcGxldGUtc2hvdy1rZXktYmluZGluZ3MgKHN0
cmluZy1tYXRjaCAiWEVtYWNzXFx8THVjaWQiDQohIAkJCQkJCSAgZW1hY3Mt
dmVyc2lvbikNCiAgICAiV2hlbiBub24tbmlsIHNob3cga2V5IGJpbmRpbmdz
IGFzIHdlbGwgYXMgY29tcGxldGlvbiB3aGVuIG1hdGNoaW5nDQohIGEgY29t
bWFuZC4gIEN1cnJlbnRseSB3b3JraW5nIG9ubHkgZm9yIFhFbWFjcyAtIHNl
ZSBgaWNvbXBsZXRlLWdldC1rZXlzJy4iKQ0KICANCiAgKGRlZnVuIGljb21w
bGV0ZS1nZXQta2V5cyAoZnVuYy1uYW1lKQ0KISAgICJSZXR1cm4gdGhlIGtl
eXMgYGZ1bmMtbmFtZScgaXMgYm91bmQgdG8gYXMgYSBzdHJpbmcsIG9yIG5p
bCBpZiBub25lLg0KISAgIE5PVEUgdGhhdCB0aGlzIGRlcGVuZHMgb24gYG93
aW5kb3cnIG1pbmJ1ZiBzZXR0aW5nIGFuZCBgY3VycmVudC1sb2NhbC1tYXAn
DQohICAgdGFraW5nIGFyZywgYm90aCBwcmVzZW50IGluIFhFbWFjcyBidXQg
bm90IHByZXNlbnQgaW4gbWFpbmxpbmUgR05VIEVtYWNzDQohICAgMTkuMzQu
Ig0KICAgICh3aGVuIChjb21tYW5kcCBmdW5jLW5hbWUpDQogICAgICAoc2F2
ZS1leGN1cnNpb24NCiAgICAgICAgKGxldCogKChzeW0gKGludGVybiBmdW5j
LW5hbWUpKQ0KICAJICAgICAoYnVmIChzZXQtYnVmZmVyICh3aW5kb3ctYnVm
ZmVyIG93aW5kb3cpKSkNCiAgCSAgICAgKGtleXMgKHdoZXJlLWlzLWludGVy
bmFsIHN5bSAoY3VycmVudC1sb2NhbC1tYXAgYnVmKSkpKQ0KISAJKGlmIGtl
eXMNCiEgCSAgICAoY29uY2F0ICI8Ig0KICAJCSAgICAobWFwY29uY2F0ICdr
ZXktZGVzY3JpcHRpb24NCiEgCQkJICAgICAgIChzb3J0IGtleXMNCiAgCQkJ
CSAgICAgIycobGFtYmRhICh4IHkpDQogIAkJCQkJICg8IChsZW5ndGggeCkg
KGxlbmd0aCB5KSkpKQ0KICAJCQkgICAgICAgIiwgIikNCiEgCQkgICAgIj4i
KSkpKSkpDQogIA0KICA7OztfID4gaWNvbXBsZXRlLW1vZGUgKCZvcHRpb25h
bCBwcmVmaXgpDQogIDs7OyMjI2F1dG9sb2FkDQoqKioqKioqKioqKioqKioN
CioqKiAyMTUsMjIwICoqKioNCi0tLSAyMjAsMjI2IC0tLS0NCiAgOzs7XyA+
IGljb21wbGV0ZS1leGhpYml0ICgpDQogIChkZWZ1biBpY29tcGxldGUtZXho
aWJpdCAoKQ0KICAgICJJbnNlcnQgaWNvbXBsZXRlIGNvbXBsZXRpb25zIGRp
c3BsYXkuDQorIA0KICBTaG91bGQgYmUgcnVuIHZpYSBtaW5pYnVmZmVyIGBw
b3N0LWNvbW1hbmQtaG9vaycuICBTZWUgYGljb21wbGV0ZS1tb2RlJw0KICBh
bmQgYG1pbmlidWZmZXItc2V0dXAtaG9vaycuIg0KICAgIChpZiAoaWNvbXBs
ZXRlLXNpbXBsZS1jb21wbGV0aW5nLXApDQoqKioqKioqKioqKioqKioNCioq
KiAyMzAsMjM2ICoqKioNCiAgCSAgICAgIChtYWtlLWxvY2FsLXZhcmlhYmxl
ICdpY29tcGxldGUtZW9pbnB1dCkpDQogIAkgIChzZXRxIGljb21wbGV0ZS1l
b2lucHV0IChwb2ludCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA7IEluc2VydCB0aGUgbWF0Y2gtc3RhdHVzIGluZm9y
bWF0aW9uOg0KISAJICAoaWYgKD4gKHBvaW50LW1heCkgMSkNCiAgCSAgICAg
IChpbnNlcnQtc3RyaW5nDQogIAkgICAgICAgKGljb21wbGV0ZS1jb21wbGV0
aW9ucyBjb250ZW50cw0KICAJCQkJICAgICAgbWluaWJ1ZmZlci1jb21wbGV0
aW9uLXRhYmxlDQotLS0gMjM2LDI1NyAtLS0tDQogIAkgICAgICAobWFrZS1s
b2NhbC12YXJpYWJsZSAnaWNvbXBsZXRlLWVvaW5wdXQpKQ0KICAJICAoc2V0
cSBpY29tcGxldGUtZW9pbnB1dCAocG9pbnQpKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBJbnNlcnQgdGhlIG1hdGNo
LXN0YXR1cyBpbmZvcm1hdGlvbjoNCiEgCSAgKGlmIChhbmQgKD4gKHBvaW50
LW1heCkgMSkNCiEgCQkgICAob3INCiEgCQkgICAgOzsgRG9uJ3QgYm90aGVy
IHdpdGggZGVsYXkgYWZ0ZXIgY2VydGFpbiBudW1iZXIgb2YgY2hhcnM6DQoh
IAkJICAgICg+IChwb2ludC1tYXgpIGljb21wbGV0ZS1tYXgtZGVsYXktY2hh
cnMpDQohIAkJICAgIDs7IERvbid0IGRlbGF5IGlmIGFsdGVybmF0aXZlcyBu
dW1iZXIgaXMgc21hbGwgZW5vdWdoOg0KISAJCSAgICAoaWYgbWluaWJ1ZmZl
ci1jb21wbGV0aW9uLXRhYmxlDQohIAkJCShjb25kICgobnVtYmVycCBtaW5p
YnVmZmVyLWNvbXBsZXRpb24tdGFibGUpDQohIAkJCSAgICAgICAoPCBtaW5p
YnVmZmVyLWNvbXBsZXRpb24tdGFibGUNCiEgCQkJCSAgaWNvbXBsZXRlLWRl
bGF5LWNvbXBsZXRpb25zLXRocmVzaG9sZCkpDQohIAkJCSAgICAgICgoc2Vx
dWVuY2VwIG1pbmlidWZmZXItY29tcGxldGlvbi10YWJsZSkNCiEgCQkJICAg
ICAgICg8IChsZW5ndGggbWluaWJ1ZmZlci1jb21wbGV0aW9uLXRhYmxlKQ0K
ISAJCQkJICBpY29tcGxldGUtZGVsYXktY29tcGxldGlvbnMtdGhyZXNob2xk
KSkNCiEgCQkJICAgICAgKSkNCiEgCQkgICAgOzsgRGVsYXkgLSBnaXZlIHNv
bWUgZ3JhY2UgdGltZSBmb3IgbmV4dCBrZXlzdHJva2UsIGJlZm9yZQ0KISAJ
CSAgICA7OyBlbWJhcmtpbmcgb24gY29tcHV0aW5nIGNvbXBsZXRpb25zOg0K
ISAJCSAgICAoc2l0LWZvciBpY29tcGxldGUtY29tcHV0ZS1kZWxheSkpKQ0K
ICAJICAgICAgKGluc2VydC1zdHJpbmcNCiAgCSAgICAgICAoaWNvbXBsZXRl
LWNvbXBsZXRpb25zIGNvbnRlbnRzDQogIAkJCQkgICAgICBtaW5pYnVmZmVy
LWNvbXBsZXRpb24tdGFibGUNCioqKioqKioqKioqKioqKg0KKioqIDI1NSwy
NjEgKioqKg0KICANCiAgVGhlIGRpc3BsYXlzIGZvciB1bmFtYmlndW91cyBt
YXRjaGVzIGhhdmUgYCBbTWF0Y2hlZF0nIGFwcGVuZGVkDQogIFwod2hldGhl
ciBjb21wbGV0ZSBvciBub3QpLCBvciBgIFxbTm8gbWF0Y2hlc10nLCBpZiBu
byBlbGlnaWJsZQ0KISBtYXRjaGVzIGV4aXN0LiINCiAgDQogICAgKGxldCAo
KGNvbXBzIChhbGwtY29tcGxldGlvbnMgbmFtZSBjYW5kaWRhdGVzIHByZWRp
Y2F0ZSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICA7ICItZGV0ZXJtaW5lZCIgLSBvbmx5IG9uZSBjYW5kaWRhdGUNCi0t
LSAyNzYsMjg4IC0tLS0NCiAgDQogIFRoZSBkaXNwbGF5cyBmb3IgdW5hbWJp
Z3VvdXMgbWF0Y2hlcyBoYXZlIGAgW01hdGNoZWRdJyBhcHBlbmRlZA0KICBc
KHdoZXRoZXIgY29tcGxldGUgb3Igbm90KSwgb3IgYCBcW05vIG1hdGNoZXNd
JywgaWYgbm8gZWxpZ2libGUNCiEgbWF0Y2hlcyBleGlzdC4gIFwoSW4gWEVt
YWNzLCBrZXliaW5kaW5ncyBmb3IgbWF0Y2hlZCBjb21tYW5kcywgaWYgYW55
LA0KISBhcmUgZXhoaWJpdGVkIHdpdGhpbiB0aGUgc3F1YXJlIGJyYWNlcy4p
Ig0KISANCiEgICA7OyAnYWxsLWNvbXBsZXRpb25zJyBkb2Vzbid0IGxpa2Ug
ZW1wdHkNCiEgICA7OyBtaW5pYnVmZmVyLWNvbXBsZXRpb24tdGFibGUncyAo
aWU6IChuaWwpKQ0KISAgIChpZiAoYW5kIChsaXN0cCBjYW5kaWRhdGVzKSAo
bnVsbCAoY2FyIGNhbmRpZGF0ZXMpKSkNCiEgICAgICAgKHNldHEgY2FuZGlk
YXRlcyBuaWwpKQ0KICANCiAgICAobGV0ICgoY29tcHMgKGFsbC1jb21wbGV0
aW9ucyBuYW1lIGNhbmRpZGF0ZXMgcHJlZGljYXRlKSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgIi1kZXRlcm1pbmVk
IiAtIG9ubHkgb25lIGNhbmRpZGF0ZQ0KKioqKioqKioqKioqKioqDQoqKiog
MjY1LDMxNyAqKioqDQogICAgICAgICAgKG9wZW4tYnJhY2tldC1wcm9zcGVj
dHMgInsiKQ0KICAgICAgICAgIChjbG9zZS1icmFja2V0LXByb3NwZWN0cyAi
fSIpDQogICAgICAgICAgKQ0KISAgICAgKGNvbmQgKChudWxsIGNvbXBzKSAo
Zm9ybWF0ICIgJXNObyBtYXRjaGVzJXMiDQohIAkJCQlvcGVuLWJyYWNrZXQt
ZGV0ZXJtaW5lZA0KISAJCQkJY2xvc2UtYnJhY2tldC1kZXRlcm1pbmVkKSkN
CiEgCSAgKChudWxsIChjZHIgY29tcHMpKSAgICAgICAgICAgO29uZSBtYXRj
aA0KISAJICAgKGNvbmNhdCAoaWYgKGFuZCAoPiAobGVuZ3RoIChjYXIgY29t
cHMpKQ0KISAJCQkgICAgICAgKGxlbmd0aCBuYW1lKSkpDQohIAkJICAgICAg
IChjb25jYXQgb3Blbi1icmFja2V0LWRldGVybWluZWQNCiEgCQkJICAgICAg
IChzdWJzdHJpbmcgKGNhciBjb21wcykgKGxlbmd0aCBuYW1lKSkNCiEgCQkJ
ICAgICAgIGNsb3NlLWJyYWNrZXQtZGV0ZXJtaW5lZCkNCiEgCQkgICAgICIi
KQ0KISAJCSAgICIgW01hdGNoZWRdIg0KISAJICAgOzsgWEVtYWNzDQohIAkJ
ICAgKGlmIChhbmQgaWNvbXBsZXRlLXNob3cta2V5LWJpbmRpbmdzDQohIAkJ
CSAgICAoY29tbWFuZHAgKGludGVybi1zb2Z0IChjYXIgY29tcHMpKSkpDQoh
IAkJICAgICAgIChpY29tcGxldGUtZ2V0LWtleXMgKGNhciBjb21wcykpDQoh
IAkJICAgICAiIikNCiEgCQkgICApKQ0KISAJICAodCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICA7bXVsdGlwbGUgbWF0Y2hlcw0KISAJICAgKGxldCog
KChtb3N0ICh0cnktY29tcGxldGlvbiBuYW1lIGNhbmRpZGF0ZXMgcHJlZGlj
YXRlKSkNCiEgCQkgIChtb3N0LWxlbiAobGVuZ3RoIG1vc3QpKQ0KISAJCSAg
bW9zdC1pcy1leGFjdA0KISAJCSAgKGFsdGVybmF0aXZlcw0KISAJCSAgIChh
cHBseQ0KISAJCSAgICAoZnVuY3Rpb24gY29uY2F0KQ0KISAJCSAgICAoY2Ry
IChhcHBseQ0KISAJCQkgIChmdW5jdGlvbiBuY29uYykNCiEgCQkJICAobWFw
Y2FyICcobGFtYmRhIChjb20pDQohIAkJCQkgICAgIChpZiAoPSAobGVuZ3Ro
IGNvbSkgbW9zdC1sZW4pDQohIAkJCQkJIDs7IE1vc3QgaXMgb25lIGV4YWN0
IG1hdGNoLA0KISAJCQkJCSA7OyBub3RlIHRoYXQgYW5kIGxlYXZlIG91dA0K
ISAJCQkJCSA7OyBmb3IgbGF0ZXIgaW5kaWNhdGlvbjoNCiEgCQkJCQkgKHBy
b2duDQohIAkJCQkJICAgKHNldHEgbW9zdC1pcy1leGFjdCB0KQ0KISAJCQkJ
CSAgICgpKQ0KISAJCQkJICAgICAgIChsaXN0ICIsIg0KISAJCQkJCSAgICAg
KHN1YnN0cmluZyBjb20NCiEgCQkJCQkJCW1vc3QtbGVuKSkpKQ0KISAJCQkJ
ICBjb21wcykpKSkpKQ0KISAJICAgICAoY29uY2F0IChhbmQgKD4gbW9zdC1s
ZW4gKGxlbmd0aCBuYW1lKSkNCiEgCQkJICAoY29uY2F0IG9wZW4tYnJhY2tl
dC1kZXRlcm1pbmVkDQohIAkJCQkgIChzdWJzdHJpbmcgbW9zdCAobGVuZ3Ro
IG5hbWUpKQ0KICAJCQkJICBjbG9zZS1icmFja2V0LWRldGVybWluZWQpKQ0K
ISAJCSAgICAgb3Blbi1icmFja2V0LXByb3NwZWN0cw0KISAJCSAgICAgKGlm
IG1vc3QtaXMtZXhhY3QNCiEgCQkJIChjb25jYXQgIiwiIGFsdGVybmF0aXZl
cykNCiEgCQkgICAgICAgYWx0ZXJuYXRpdmVzKQ0KISAJCSAgICAgY2xvc2Ut
YnJhY2tldC1wcm9zcGVjdHMpKSkpKSkNCiAgDQogIDs7O18gKyBJbml0aWFs
aXphdGlvbg0KICA7OzsgSWYgdXNlciBoYXNuJ3Qgc2V0cS1kZWZhdWx0IGlj
b21wbGV0ZS1tb2RlIHRvIG5pbCwgdGhlbiBzZXR1cCBmb3INCi0tLSAyOTIs
MzYyIC0tLS0NCiAgICAgICAgICAob3Blbi1icmFja2V0LXByb3NwZWN0cyAi
eyIpDQogICAgICAgICAgKGNsb3NlLWJyYWNrZXQtcHJvc3BlY3RzICJ9IikN
CiAgICAgICAgICApDQohICAgICAoY2F0Y2ggJ2lucHV0DQohICAgICAgIChj
b25kICgobnVsbCBjb21wcykgKGZvcm1hdCAiICVzTm8gbWF0Y2hlcyVzIg0K
ISAJCQkJICBvcGVuLWJyYWNrZXQtZGV0ZXJtaW5lZA0KICAJCQkJICBjbG9z
ZS1icmFja2V0LWRldGVybWluZWQpKQ0KISAJICAgICgobnVsbCAoY2RyIGNv
bXBzKSkJCTtvbmUgbWF0Y2gNCiEgCSAgICAgKGNvbmNhdCAoaWYgKGFuZCAo
PiAobGVuZ3RoIChjYXIgY29tcHMpKQ0KISAJCQkJIChsZW5ndGggbmFtZSkp
KQ0KISAJCQkgKGNvbmNhdCBvcGVuLWJyYWNrZXQtZGV0ZXJtaW5lZA0KISAJ
CQkJIChzdWJzdHJpbmcgKGNhciBjb21wcykgKGxlbmd0aCBuYW1lKSkNCiEg
CQkJCSBjbG9zZS1icmFja2V0LWRldGVybWluZWQpDQohIAkJICAgICAgICIi
KQ0KISAJCSAgICAgIiBbTWF0Y2hlZCINCiEgCQkgICAgIChsZXQgKChrZXlz
IChhbmQgaWNvbXBsZXRlLXNob3cta2V5LWJpbmRpbmdzDQohIAkJCQkgICAg
ICAoY29tbWFuZHAgKGludGVybi1zb2Z0IChjYXIgY29tcHMpKSkNCiEgCQkJ
CSAgICAgIChpY29tcGxldGUtZ2V0LWtleXMgKGNhciBjb21wcykpKSkpDQoh
IAkJICAgICAgIChpZiBrZXlzDQohIAkJCSAgIChjb25jYXQgIjsgIiBrZXlz
KQ0KISAJCQkgIiIpKQ0KISAJCSAgICAgIl0iKSkNCiEgCSAgICAodAkJCQk7
bXVsdGlwbGUgbWF0Y2hlcw0KISAJICAgICAobGV0KiAoKG1vc3QNCiEgCQkg
ICAgICh0cnktY29tcGxldGlvbiBuYW1lIGNhbmRpZGF0ZXMNCiEgCQkJCSAg
ICAgKGFuZCBwcmVkaWNhdGUNCiEgCQkJCQkgIDs7IFdyYXAgcHJlZGljYXRl
IGluIGltcGF0aWVuY2UgLSBpZSwNCiEgCQkJCQkgIDs7IGB0aHJvdycgdXAg
d2hlbiBwZW5kaW5nIGlucHV0IGlzDQohIAkJCQkJICA7OyBub3RpY2VkLiAg
QWRkcyBzb21lIG92ZXJoZWFkIHRvDQohIAkJCQkJICA7OyBwcmVkaWNhdGUs
IGJ1dCBzaG91bGQgYmUgd29ydGggaXQuDQohIAkJCQkJICAoZnVuY3Rpb24N
CiEgCQkJCQkgICAobGFtYmRhIChpdGVtKQ0KISAJCQkJCSAgICAgKGlmIChp
bnB1dC1wZW5kaW5nLXApDQohIAkJCQkJCSAodGhyb3cgJ2lucHV0ICIiKQ0K
ISAJCQkJCSAgICAgICAoYXBwbHkgcHJlZGljYXRlDQohIAkJCQkJCSAgICAg
IGl0ZW0gbmlsKSkpKSkpKQ0KISAJCSAgICAobW9zdC1sZW4gKGxlbmd0aCBt
b3N0KSkNCiEgCQkgICAgbW9zdC1pcy1leGFjdA0KISAJCSAgICAoYWx0ZXJu
YXRpdmVzDQohIAkJICAgICAoc3Vic3RyaW5nIA0KISAJCSAgICAgIChhcHBs
eSAoZnVuY3Rpb24gY29uY2F0KQ0KISAJCQkgICAgIChtYXBjYXIgKGZ1bmN0
aW9uDQohIAkJCQkgICAgICAobGFtYmRhIChjb20pDQohIAkJCQkJKGlmIChp
bnB1dC1wZW5kaW5nLXApDQohIAkJCQkJICAgICh0aHJvdyAnaW5wdXQgIiIp
KQ0KISAJCQkJCShpZiAoPSAobGVuZ3RoIGNvbSkgbW9zdC1sZW4pDQohIAkJ
CQkJICAgIDs7IE1vc3QgaXMgb25lIGV4YWN0IG1hdGNoLA0KISAJCQkJCSAg
ICA7OyBub3RlIHRoYXQgYW5kIGxlYXZlIG91dA0KISAJCQkJCSAgICA7OyBm
b3IgbGF0ZXIgaW5kaWNhdGlvbjoNCiEgCQkJCQkgICAgKHByb2duDQohIAkJ
CQkJICAgICAgKHNldHEgbW9zdC1pcy1leGFjdCB0KQ0KISAJCQkJCSAgICAg
ICgpKQ0KISAJCQkJCSAgKGNvbmNhdCAiLCINCiEgCQkJCQkJICAoc3Vic3Ry
aW5nIGNvbQ0KISAJCQkJCQkJICAgICBtb3N0LWxlbikpKSkpDQohIAkJCQkg
ICAgIGNvbXBzKSkNCiEgCQkgICAgICAxKSkpDQohIAkgICAgICAgKGNvbmNh
dCAoYW5kICg+IG1vc3QtbGVuIChsZW5ndGggbmFtZSkpDQohIAkJCSAgICAo
Y29uY2F0IG9wZW4tYnJhY2tldC1kZXRlcm1pbmVkDQohIAkJCQkgICAgKHN1
YnN0cmluZyBtb3N0IChsZW5ndGggbmFtZSkpDQohIAkJCQkgICAgY2xvc2Ut
YnJhY2tldC1kZXRlcm1pbmVkKSkNCiEgCQkgICAgICAgb3Blbi1icmFja2V0
LXByb3NwZWN0cw0KISAJCSAgICAgICAoaWYgbW9zdC1pcy1leGFjdA0KISAJ
CQkgICA7OyBBZGQgYSAnLCcgYXQgdGhlIGZyb250IHRvIGluZGljYXRlICJj
b21wbGV0ZSBidXQNCiEgCQkJICAgOzsgbm90IHVuaXF1ZSI6DQohIAkJCSAg
IChjb25jYXQgIiwiIGFsdGVybmF0aXZlcykNCiEgCQkJIGFsdGVybmF0aXZl
cykNCiEgCQkgICAgICAgY2xvc2UtYnJhY2tldC1wcm9zcGVjdHMpKSkpKSkp
DQogIA0KICA7OztfICsgSW5pdGlhbGl6YXRpb24NCiAgOzs7IElmIHVzZXIg
aGFzbid0IHNldHEtZGVmYXVsdCBpY29tcGxldGUtbW9kZSB0byBuaWwsIHRo
ZW4gc2V0dXAgZm9yDQo=
---559023410-752095483-864858723=:364
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=ChangeLog
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.GSO.3.96.970528183203.364h@glyph.cnri.reston.va.us>
Content-Description: ChangeLog

VHVlIE1heSAyNyAxMzo0Mjo1NyAxOTk3ICBLZW4gTWFuaGVpbWVyICA8a2xt
QHB5dGhvbi5vcmc+DQoNCgkqIFVwZGF0ZWQgbXkgZW1haWwgYWRkcmVzcyAt
IGtsbUBweXRob24ub3JnIGluc3RlYWQgb2Yga2xtQG5pc3QuZ292Lg0KDQoJ
KiBJbnRlZ3JhdGVkIEVtYWNzIDE5LjM0IGFuZCBYRW1hY3MgMTkuMTUgY29y
cmVjdGlvbnMgKHR5cG9zLA0KIAkgIHN0eWxlLCBjb21tYW5kIHJldmlzaW9u
cywgZXRjKS4NCg0KCSogSW50ZWdyYXRlZCBoYWNrZWQgdXAgWEVtYWNzIGlt
bWVkaWF0ZSBrZXliaW5kaW5ncyBkaXNwbGF5LiAgU2VlDQoJICBgaWNvbXBs
ZXRlLXNob3cta2V5LWJpbmRpbmdzJywgYGljb21wbGV0ZS1nZXQta2V5cycs
IGFuZA0KCSAgYGljb21wbGV0ZS1jb21wbGV0aW9ucycuICBEb2Vzbid0IHdv
cmsgd2l0aCBtYWlubGluZSBHTlUgDQoJICBFbWFjcyAxOS4zNCAoYmVjYXVz
ZSB0aGUgY21kbG9vcCBkb2Vzbid0IHNldCBvd2luZG93LCBhbmQgdGhlDQoJ
ICBjdXJyZW50LWxvY2FsLW1hcCBkb2Vzbid0IHRha2Ugb3B0aW9uYWwgYnVm
ZmVyIGFyZyksIHNvIGZlYXR1cmUNCgkgIGlzLCBieSBkZWZhdWx0LCBpbmhp
Yml0ZWQgdW5sZXNzIHdlJ3JlIHJ1bm5pbmcgaW4gWEVtYWNzLg0KDQoJKiBg
aWNvbXBsZXRlLWdldC1rZXlzJzogUmV0dXJuIGtleXMgYm91bmQgdG8gZnVu
YyBuYW1lIGluIGJ1ZmZlcg0KCSAgIm93aW5kb3ciIC0gc2luY2UgIm93aW5k
b3ciIGlzIGNhbGxpbmctYnVmZmVyIGhpc3RvcnkgcHJlc2VudA0KCSAgb25s
eSBpbiBYRW1hY3MsIHRoaXMgZnVuY3Rpb24gaXMgb25seSB1c2VmdWwgaW4g
WEVtYWNzLg0KDQoJKiBBZGRlZCBpY29tcGxldGUgZGVsYXkgYmVoYXZpb3Is
IHNvIGNvbXBsZXRpb25zIGRvbid0IGludHJ1ZGUgYXMNCiAJICBxdWlja2x5
IGZvciBzaG9ydCBpbnB1dCwgd2l0aCBjdXN0b21pemF0aW9uIHZhcmlhYmxl
czoNCg0KCSAgYGljb21wbGV0ZS1tYXgtZGVsYXktY2hhcnMnIC0gTWF4aW11
bSBudW1iZXIgb2YgaW5pdGlhbCBjaGFycyB0bw0KCSAgYXBwbHkgaWNvbXBs
ZXRlIGNvbXB1dGUgZGVsYXkuDQoJDQoJICBgaWNvbXBsZXRlLWNvbXB1dGUt
ZGVsYXknIC0gQ29tcGxldGlvbnMtY29tcHV0YXRpb24gc3RhbGwsIHVzZWQN
CgkgIG9ubHkgd2l0aCBsYXJnZS1udW1iZXIgY29tcGxldGlvbnMNCg0KCSAg
YGljb21wbGV0ZS1kZWxheS1jb21wbGV0aW9ucy10aHJlc2hvbGQnIFBlbmRp
bmctY29tcGxldGlvbnMNCgkgIG51bWJlciBvdmVyIHdoaWNoIHRvIGFwcGx5
IGljb21wbGV0ZS1jb21wdXRlLWRlbGF5DQoNCg0K
---559023410-752095483-864858723=:364
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="icomplete.el"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.GSO.3.96.970528183203.364i@glyph.cnri.reston.va.us>
Content-Description: New version of icomplete

Ozs7Xy4gaWNvbXBsZXRlLmVsIC0gbWluaWJ1ZmZlciBjb21wbGV0aW9uIGlu
Y3JlbWVudGFsIGZlZWRiYWNrDQoNCjs7IENvcHlyaWdodCAoQykgMTk5Miwg
MTk5MywgMTk5NCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCg0K
OzsgQXV0aG9yOiBLZW4gTWFuaGVpbWVyIDxrbG1AcHl0aG9uLm9yZz4NCjs7
IE1haW50YWluZXI6IEtlbiBNYW5oZWltZXIgPGtsbUBweXRob24ub3JnPg0K
OzsgVmVyc2lvbjogJElkOiBpY29tcGxldGUuZWwsdiA0LjkgMTk5Ny8wNS8y
OCAxNDozNToxNyBrbG0gRXhwICQNCjs7IENyZWF0ZWQ6IE1hciAxOTkzIGts
bUBuaXN0LmdvdiAtIGZpcnN0IHJlbGVhc2UgdG8gdXNlbmV0DQo7OyBLZXl3
b3JkczogaGVscCwgYWJicmV2DQoNCjs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9m
IEdOVSBFbWFjcy4NCg0KOzsgR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU7
IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCjs7IGl0
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQo7OyB0aGUgRnJlZSBTb2Z0d2FyZSBG
b3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyLCBvciAoYXQgeW91ciBvcHRp
b24pDQo7OyBhbnkgbGF0ZXIgdmVyc2lvbi4NCg0KOzsgR05VIEVtYWNzIGlz
IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm
dWwsDQo7OyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl
biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KOzsgTUVSQ0hBTlRBQklMSVRZ
IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRo
ZQ0KOzsgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0
YWlscy4NCg0KOzsgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCjs7IGFsb25nIHdp
dGggR05VIEVtYWNzOyBzZWUgdGhlIGZpbGUgQ09QWUlORy4gIElmIG5vdCwg
d3JpdGUgdG8gdGhlDQo7OyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu
Yy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwNCjs7IEJvc3Rvbiwg
TUEgMDIxMTEtMTMwNywgVVNBLg0KDQo7OyBUaGlzIGZpbGUgaXMgYWxzbyBw
YXJ0IG9mIFhFbWFjcy4NCjs7IEhhY2tlZCBmb3IgWEVtYWNzOiBEYXZpZCBI
dWdoZXMgN3RoIFNlcHRlbWJlciAxOTk1DQo7OyBXaXRoIHNvbWUgaW50ZWdy
YXRpb24gYW5kIHJlZmluZW1lbnQgYnkgS2VuIE1hbmhlaW1lciwgTWF5IDE5
OTcNCg0KOzs7IENvbW1lbnRhcnk6DQoNCjs7IExvYWRpbmcgdGhpcyBwYWNr
YWdlIGltcGxlbWVudHMgYSBtb3JlIGZpbmUtZ3JhaW5lZCBtaW5pYnVmZmVy
DQo7OyBjb21wbGV0aW9uIGZlZWRiYWNrIHNjaGVtZS4gIFByb3NwZWN0aXZl
IGNvbXBsZXRpb25zIGFyZSBjb25jaXNlbHkNCjs7IGluZGljYXRlZCB3aXRo
aW4gdGhlIG1pbmlidWZmZXIgaXRzZWxmLCB3aXRoIGVhY2ggc3VjY2Vzc2l2
ZQ0KOzsga2V5c3Ryb2tlLg0KDQo7OyBTZWUgJ2ljb21wbGV0ZS1jb21wbGV0
aW9ucycgZG9jc3RyaW5nIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZQ0KOzsg
aWNvbXBsZXRlIGRpc3BsYXkgZm9ybWF0Lg0KDQo7OyBTZWUgdGhlIGBpY29t
cGxldGUtbWluaWJ1ZmZlci1zZXR1cC1ob29rJyBkb2NzdHJpbmcgZm9yIGEg
bWVhbnMgdG8NCjs7IGN1c3RvbWl6ZSBpY29tcGxldGUgc2V0dXAgZm9yIGlu
dGVyb3BlcmF0aW9uIHdpdGggb3RoZXINCjs7IG1pbmlidWZmZXItb3JpZW50
ZWQgcGFja2FnZXMuDQoNCjs7IFRvIGFjdGl2YXRlIGljb21wbGV0ZSBtb2Rl
LCBzaW1wbHkgbG9hZCB0aGUgcGFja2FnZS4gIFlvdSBjYW4NCjs7IHN1YnNl
cXVlbnRseSBkZWFjdGl2YXRlIGl0IGJ5IGludm9raW5nIHRoZSBmdW5jdGlv
biBpY29tcGxldGUtbW9kZQ0KOzsgd2l0aCBhIG5lZ2F0aXZlIHByZWZpeC1h
cmcgKEMtVSAtMSBFU0MteCBpY29tcGxldGUtbW9kZSkuICBBbHNvLA0KOzsg
eW91IGNhbiBwcmV2ZW50IGFjdGl2YXRpb24gb2YgdGhlIG1vZGUgZHVyaW5n
IHBhY2thZ2UgbG9hZCBieQ0KOzsgZmlyc3Qgc2V0dGluZyB0aGUgdmFyaWFi
bGUgYGljb21wbGV0ZS1tb2RlJyB0byBuaWwuICBJY29tcGxldGlvbg0KOzsg
Y2FuIGJlIGVuYWJsZWQgYW55IHRpbWUgYWZ0ZXIgdGhlIHBhY2thZ2UgaXMg
bG9hZGVkIGJ5IGludm9raW5nDQo7OyBpY29tcGxldGUtbW9kZSB3aXRob3V0
IGEgcHJlZml4IGFyZy4NCg0KOzsgVGhpcyB2ZXJzaW9uIG9mIGljb21wbGV0
ZSBydW5zIG9uIEVtYWNzIDE5LjE4IGFuZCBsYXRlci4gIChJdA0KOzsgZGVw
ZW5kcyBvbiB0aGUgaW5jb3Jwb3JhdGlvbiBvZiBtaW5pYnVmZmVyLXNldHVw
LWhvb2suKSAgVGhlIGVsaXNwDQo7OyBhcmNoaXZlcywgZnRwOi8vYXJjaGl2
ZS5jaXMub2hpby1zdGF0ZS5lZHUvcHViL2dudS9lbWFjcy9lbGlzcC1hcmNo
aXZlLA0KOzsgcHJvYmFibHkgc3RpbGwgaGFzIGEgdmVyc2lvbiB0aGF0IHdv
cmtzIGluIEdOVSBFbWFjcyB2MTguDQoNCjs7IFRoYW5rcyB0byBldmVyeW9u
ZSBmb3IgdGhlaXIgc3VnZ2VzdGlvbnMgZm9yIHJlZmluZW1lbnRzIG9mIHRo
aXMNCjs7IHBhY2thZ2UuICBJIHBhcnRpY3VsYXJseSBoYXZlIHRvIGNyZWRp
dCBNaWNoYWVsIENvb2ssIHdobw0KOzsgaW1wbGVtZW50ZWQgYW4gaW5jcmVt
ZW50YWwgY29tcGxldGlvbiBzdHlsZSBpbiBoaXMgJ2lzd2l0Y2gnDQo7OyBm
dW5jdGlvbnMgdGhhdCBzZXJ2ZWQgYXMgYSBtb2RlbCBmb3IgaWNvbXBsZXRl
LiAgU29tZSBvdGhlcg0KOzsgY29udHJpYnV0b3JzOiBOb2FoIEZyZWlkbWFu
IChyZXN0cnVjdHVyaW5nIGFzIG1pbm9yIG1vZGUpLCBDb2xpbg0KOzsgUmFm
ZmVydHkgKGxlbWFjcyByZWNvbmNpbGlhdGlvbiksIExhcnMgTGluZGJlcmcs
IFJNUywgYW5kDQo7OyBvdGhlcnMuDQoNCjs7IGtsbS4NCg0KOzs7IENvZGU6
DQoNCjs7O18qIFByb3ZpZGUNCihwcm92aWRlICdpY29tcGxldGUpDQoNCjs7
O18qIFVzZXIgQ3VzdG9taXphdGlvbiB2YXJpYWJsZXMNCihkZWZ2YXIgaWNv
bXBsZXRlLWNvbXB1dGUtZGVsYXkgLjMNCiAgIipDb21wbGV0aW9ucy1jb21w
dXRhdGlvbiBzdGFsbCwgdXNlZCBvbmx5IHdpdGggbGFyZ2UtbnVtYmVyDQpj
b21wbGV0aW9ucyAtIHNlZSBgaWNvbXBsZXRlLWRlbGF5LWNvbXBsZXRpb25z
LXRocmVzaG9sZCcuIikNCihkZWZ2YXIgaWNvbXBsZXRlLWRlbGF5LWNvbXBs
ZXRpb25zLXRocmVzaG9sZCA0MDANCiAgIipQZW5kaW5nLWNvbXBsZXRpb25z
IG51bWJlciBvdmVyIHdoaWNoIHRvIGFwcGx5IGljb21wbGV0ZS1jb21wdXRl
LWRlbGF5LiIpDQooZGVmdmFyIGljb21wbGV0ZS1tYXgtZGVsYXktY2hhcnMg
Mw0KICAiKk1heGltdW0gbnVtYmVyIG9mIGluaXRpYWwgY2hhcnMgdG8gYXBw
bHkgaWNvbXBsZXRlIGNvbXB1dGUgZGVsYXkuIikNCg0KOzs7XyogSW5pdGlh
bGl6YXRpb24NCjs7O18gID0gaWNvbXBsZXRlLW1pbmlidWZmZXItc2V0dXAt
aG9vaw0KKGRlZnZhciBpY29tcGxldGUtbWluaWJ1ZmZlci1zZXR1cC1ob29r
IG5pbA0KICAiKkljb21wbGV0ZS1zcGVjaWZpYyBjdXN0b21pemF0aW9uIG9m
IG1pbmlidWZmZXIgc2V0dXAuDQoNClRoaXMgaG9vayBpcyBydW4gZHVyaW5n
IG1pbmlidWZmZXIgc2V0dXAgaWZmIGljb21wbGV0ZSB3aWxsIGJlIGFjdGl2
ZS4NCkl0IGlzIGludGVuZGVkIGZvciB1c2UgaW4gY3VzdG9taXppbmcgaWNv
bXBsZXRlIGZvciBpbnRlcm9wZXJhdGlvbg0Kd2l0aCBvdGhlciBwYWNrYWdl
cy4gIEZvciBpbnN0YW5jZToNCg0KICBcKGFkZC1ob29rICdpY29tcGxldGUt
bWluaWJ1ZmZlci1zZXR1cC1ob29rDQoJICAgIFwoZnVuY3Rpb24NCgkgICAg
IFwobGFtYmRhICgpDQoJICAgICAgIFwobWFrZS1sb2NhbC12YXJpYWJsZSAn
cmVzaXplLW1pbmlidWZmZXItd2luZG93LW1heC1oZWlnaHQpDQoJICAgICAg
IFwoc2V0cSByZXNpemUtbWluaWJ1ZmZlci13aW5kb3ctbWF4LWhlaWdodCAz
KSkpKQ0KDQp3aWxsIGNvbnN0cmFpbiByc3otbWluaSB0byBhIG1heGltdW0g
bWluaWJ1ZmZlciBoZWlnaHQgb2YgMyBsaW5lcyB3aGVuDQppY29tcGxldGlv
biBpcyBvY2N1cnJpbmcuIikNCg0KOzs7XyArIEludGVybmFsIFZhcmlhYmxl
cw0KOzs7XyAgPSBpY29tcGxldGUtbW9kZQ0KKGRlZnZhciBpY29tcGxldGUt
bW9kZSB0DQogICJOb24tbmlsIGVuYWJsZXMgaW5jcmVtZW50YWwgbWluaWJ1
ZmZlciBjb21wbGV0aW9uLCBvbmNlDQpgXFxbaWNvbXBsZXRlLW1vZGVdJyBm
dW5jdGlvbiBoYXMgc2V0IHRoaW5ncyB1cC4iKQ0KOzs7XyAgPSBpY29tcGxl
dGUtZW9pbnB1dCAxDQooZGVmdmFyIGljb21wbGV0ZS1lb2lucHV0IDENCiAg
IlBvaW50IHdoZXJlIG1pbmlidWZmZXIgaW5wdXQgZW5kcyBhbmQgY29tcGxl
dGlvbiBpbmZvIGJlZ2lucy4iKQ0KKG1ha2UtdmFyaWFibGUtYnVmZmVyLWxv
Y2FsICdpY29tcGxldGUtZW9pbnB1dCkNCjs7O18gID0gaWNvbXBsZXRlLXBy
ZS1jb21tYW5kLWhvb2sNCihkZWZ2YXIgaWNvbXBsZXRlLXByZS1jb21tYW5k
LWhvb2sgbmlsDQogICJJbmNyZW1lbnRhbC1taW5pYnVmZmVyLWNvbXBsZXRp
b24gcHJlLWNvbW1hbmQtaG9vay4NCg0KSXMgcnVuIGluIG1pbmlidWZmZXIg
YmVmb3JlIHVzZXIgaW5wdXQgd2hlbiBgaWNvbXBsZXRlLW1vZGUnIGlzIG5v
bi1uaWwuDQpVc2UgYGljb21wbGV0ZS1tb2RlJyBmdW5jdGlvbiB0byBzZXQg
aXQgdXAgcHJvcGVybHkgZm9yIGluY3JlbWVudGFsDQptaW5pYnVmZmVyIGNv
bXBsZXRpb24uIikNCihhZGQtaG9vayAnaWNvbXBsZXRlLXByZS1jb21tYW5k
LWhvb2sgJ2ljb21wbGV0ZS10aWR5KQ0KOzs7XyAgPSBpY29tcGxldGUtcG9z
dC1jb21tYW5kLWhvb2sNCihkZWZ2YXIgaWNvbXBsZXRlLXBvc3QtY29tbWFu
ZC1ob29rIG5pbA0KICAiSW5jcmVtZW50YWwtbWluaWJ1ZmZlci1jb21wbGV0
aW9uIHBvc3QtY29tbWFuZC1ob29rLg0KDQpJcyBydW4gaW4gbWluaWJ1ZmZl
ciBhZnRlciB1c2VyIGlucHV0IHdoZW4gYGljb21wbGV0ZS1tb2RlJyBpcyBu
b24tbmlsLg0KVXNlIGBpY29tcGxldGUtbW9kZScgZnVuY3Rpb24gdG8gc2V0
IGl0IHVwIHByb3Blcmx5IGZvciBpbmNyZW1lbnRhbA0KbWluaWJ1ZmZlciBj
b21wbGV0aW9uLiIpDQooYWRkLWhvb2sgJ2ljb21wbGV0ZS1wb3N0LWNvbW1h
bmQtaG9vayAnaWNvbXBsZXRlLWV4aGliaXQpDQoNCihkZWZ2YXIgaWNvbXBs
ZXRlLXNob3cta2V5LWJpbmRpbmdzIChzdHJpbmctbWF0Y2ggIlhFbWFjc1xc
fEx1Y2lkIg0KCQkJCQkJICBlbWFjcy12ZXJzaW9uKQ0KICAiV2hlbiBub24t
bmlsIHNob3cga2V5IGJpbmRpbmdzIGFzIHdlbGwgYXMgY29tcGxldGlvbiB3
aGVuIG1hdGNoaW5nDQphIGNvbW1hbmQuICBDdXJyZW50bHkgd29ya2luZyBv
bmx5IGZvciBYRW1hY3MgLSBzZWUgYGljb21wbGV0ZS1nZXQta2V5cycuIikN
Cg0KKGRlZnVuIGljb21wbGV0ZS1nZXQta2V5cyAoZnVuYy1uYW1lKQ0KICAi
UmV0dXJuIHRoZSBrZXlzIGBmdW5jLW5hbWUnIGlzIGJvdW5kIHRvIGFzIGEg
c3RyaW5nLCBvciBuaWwgaWYgbm9uZS4NCiAgTk9URSB0aGF0IHRoaXMgZGVw
ZW5kcyBvbiBgb3dpbmRvdycgbWluYnVmIHNldHRpbmcgYW5kIGBjdXJyZW50
LWxvY2FsLW1hcCcNCiAgdGFraW5nIGFyZywgYm90aCBwcmVzZW50IGluIFhF
bWFjcyBidXQgbm90IHByZXNlbnQgaW4gbWFpbmxpbmUgR05VIEVtYWNzDQog
IDE5LjM0LiINCiAgKHdoZW4gKGNvbW1hbmRwIGZ1bmMtbmFtZSkNCiAgICAo
c2F2ZS1leGN1cnNpb24NCiAgICAgIChsZXQqICgoc3ltIChpbnRlcm4gZnVu
Yy1uYW1lKSkNCgkgICAgIChidWYgKHNldC1idWZmZXIgKHdpbmRvdy1idWZm
ZXIgb3dpbmRvdykpKQ0KCSAgICAgKGtleXMgKHdoZXJlLWlzLWludGVybmFs
IHN5bSAoY3VycmVudC1sb2NhbC1tYXAgYnVmKSkpKQ0KCShpZiBrZXlzDQoJ
ICAgIChjb25jYXQgIjwiDQoJCSAgICAobWFwY29uY2F0ICdrZXktZGVzY3Jp
cHRpb24NCgkJCSAgICAgICAoc29ydCBrZXlzDQoJCQkJICAgICAjJyhsYW1i
ZGEgKHggeSkNCgkJCQkJICg8IChsZW5ndGggeCkgKGxlbmd0aCB5KSkpKQ0K
CQkJICAgICAgICIsICIpDQoJCSAgICAiPiIpKSkpKSkNCg0KOzs7XyA+IGlj
b21wbGV0ZS1tb2RlICgmb3B0aW9uYWwgcHJlZml4KQ0KOzs7IyMjYXV0b2xv
YWQNCihkZWZ1biBpY29tcGxldGUtbW9kZSAoJm9wdGlvbmFsIHByZWZpeCkN
CiAgIkFjdGl2YXRlIGluY3JlbWVudGFsIG1pbmlidWZmZXIgY29tcGxldGlv
biBmb3IgdGhpcyBlbWFjcyBzZXNzaW9uLA0Kb3IgZGVhY3RpdmF0ZSB3aXRo
IG5lZ2F0aXZlIHByZWZpeCBhcmcuIg0KICAoaW50ZXJhY3RpdmUgInAiKQ0K
ICAob3IgcHJlZml4IChzZXRxIHByZWZpeCAwKSkNCiAgKGNvbmQgKCg+PSBw
cmVmaXggMCkNCgkgKHNldHEgaWNvbXBsZXRlLW1vZGUgdCkNCgkgOzsgVGhl
IGZvbGxvd2luZyBpcyBub3QgcmVhbGx5IG5lY2Vzc2FyeSBhZnRlciBmaXJz
dCB0aW1lIC0NCgkgOzsgbm8gZ3JlYXQgbG9zcy4NCgkgKGFkZC1ob29rICdt
aW5pYnVmZmVyLXNldHVwLWhvb2sgJ2ljb21wbGV0ZS1taW5pYnVmZmVyLXNl
dHVwKSkNCgkodCAoc2V0cSBpY29tcGxldGUtbW9kZSBuaWwpKSkpDQoNCjs7
O18gPiBpY29tcGxldGUtc2ltcGxlLWNvbXBsZXRpbmctcCAoKQ0KKGRlZnVu
IGljb21wbGV0ZS1zaW1wbGUtY29tcGxldGluZy1wICgpDQoNCiAgIk5vbi1u
aWwgaWYgY3VycmVudCB3aW5kb3cgaXMgbWluaWJ1ZmZlciB0aGF0J3MgZG9p
bmcgc2ltcGxlIGNvbXBsZXRpb24uDQoNCkNvbmRpdGlvbnMgYXJlOg0KICAg
dGhlIHNlbGVjdGVkIHdpbmRvdyBpcyBhIG1pbmlidWZmZXIsDQogICBhbmQg
bm90IGluIHRoZSBtaWRkbGUgb2YgbWFjcm8gZXhlY3V0aW9uLA0KICAgYW5k
IG1pbmlidWZmZXItY29tcGxldGlvbi10YWJsZSBpcyBub3QgYSBzeW1ib2wg
KHdoaWNoIHdvdWxkDQogICAgICAgaW5kaWNhdGUgc29tZSBub24tc3RhbmRh
cmQsIG5vbi1zaW1wbGUgY29tcGxldGlvbiBtZWNoYW5pc20sDQogICAgICAg
bGlrZSBmaWxlLW5hbWUgYW5kIG90aGVyIGN1c3RvbS1mdW5jIGNvbXBsZXRp
b25zKS4iDQoNCiAgKGFuZCAod2luZG93LW1pbmlidWZmZXItcCAoc2VsZWN0
ZWQtd2luZG93KSkNCiAgICAgICAobm90IGV4ZWN1dGluZy1rYmQtbWFjcm8p
DQogICAgICAgKG5vdCAoc3ltYm9scCBtaW5pYnVmZmVyLWNvbXBsZXRpb24t
dGFibGUpKSkpDQoNCjs7O18gPiBpY29tcGxldGUtbWluaWJ1ZmZlci1zZXR1
cCAoKQ0KOzs7IyMjYXV0b2xvYWQNCihkZWZ1biBpY29tcGxldGUtbWluaWJ1
ZmZlci1zZXR1cCAoKQ0KICAiUnVuIGluIG1pbmlidWZmZXIgb24gYWN0aXZh
dGlvbiB0byBlc3RhYmxpc2ggaW5jcmVtZW50YWwgY29tcGxldGlvbi4NClVz
dWFsbHkgcnVuIGJ5IGluY2x1c2lvbiBpbiBgbWluaWJ1ZmZlci1zZXR1cC1o
b29rJy4iDQogIChjb25kICgoYW5kIGljb21wbGV0ZS1tb2RlIChpY29tcGxl
dGUtc2ltcGxlLWNvbXBsZXRpbmctcCkpDQoJIChtYWtlLWxvY2FsLWhvb2sg
J3ByZS1jb21tYW5kLWhvb2spDQoJIChhZGQtaG9vayAncHJlLWNvbW1hbmQt
aG9vaw0KCQkgICAoZnVuY3Rpb24gKGxhbWJkYSAoKQ0KCQkJICAgICAgIChy
dW4taG9va3MgJ2ljb21wbGV0ZS1wcmUtY29tbWFuZC1ob29rKSkpDQoJCSAg
IG5pbCB0KQ0KCSAobWFrZS1sb2NhbC1ob29rICdwb3N0LWNvbW1hbmQtaG9v
aykNCgkgKGFkZC1ob29rICdwb3N0LWNvbW1hbmQtaG9vaw0KCQkgICAoZnVu
Y3Rpb24gKGxhbWJkYSAoKQ0KCQkJICAgICAgIChydW4taG9va3MgJ2ljb21w
bGV0ZS1wb3N0LWNvbW1hbmQtaG9vaykpKQ0KCQkgICBuaWwgdCkNCgkgKHJ1
bi1ob29rcyAnaWNvbXBsZXRlLW1pbmlidWZmZXItc2V0dXAtaG9vaykpKSkN
CgwNCjs7O18qIENvbXBsZXRpb24NCg0KOzs7XyA+IGljb21wbGV0ZS10aWR5
ICgpDQooZGVmdW4gaWNvbXBsZXRlLXRpZHkgKCkNCiAgIlJlbW92ZSBjb21w
bGV0aW9ucyBkaXNwbGF5IFwoaWYgYW55KSBwcmlvciB0byBuZXcgdXNlciBp
bnB1dC4NClNob3VsZCBiZSBydW4gaW4gb24gdGhlIG1pbmlidWZmZXIgYHBy
ZS1jb21tYW5kLWhvb2snLiAgU2VlIGBpY29tcGxldGUtbW9kZScNCmFuZCBg
bWluaWJ1ZmZlci1zZXR1cC1ob29rJy4iDQogIChpZiAoaWNvbXBsZXRlLXNp
bXBsZS1jb21wbGV0aW5nLXApDQogICAgICAoaWYgKGFuZCAoYm91bmRwICdp
Y29tcGxldGUtZW9pbnB1dCkNCgkgICAgICAgaWNvbXBsZXRlLWVvaW5wdXQp
DQoNCgkgIChpZiAoPiBpY29tcGxldGUtZW9pbnB1dCAocG9pbnQtbWF4KSkN
CgkgICAgICA7OyBPb3BzLCBnb3QgcnVnIHB1bGxlZCBvdXQgZnJvbSB1bmRl
ciB1cyAtIHJlaW5pdDoNCgkgICAgICAoc2V0cSBpY29tcGxldGUtZW9pbnB1
dCAocG9pbnQtbWF4KSkNCgkgICAgKGxldCAoKGJ1ZmZlci11bmRvLWxpc3Qg
YnVmZmVyLXVuZG8tbGlzdCApKSA7IHByZXZlbnQgZW50cnkNCgkgICAgICAo
ZGVsZXRlLXJlZ2lvbiBpY29tcGxldGUtZW9pbnB1dCAocG9pbnQtbWF4KSkp
KQ0KDQoJOzsgUmVlc3RhYmxpc2ggdGhlIGxvY2FsIHZhcmlhYmxlICdjYXVz
ZSBtaW5pYnVmZmVyLXNldHVwIGlzIHdlaXJkOg0KCShtYWtlLWxvY2FsLXZh
cmlhYmxlICdpY29tcGxldGUtZW9pbnB1dCkNCgkoc2V0cSBpY29tcGxldGUt
ZW9pbnB1dCAxKSkpKQ0KDQo7OztfID4gaWNvbXBsZXRlLWV4aGliaXQgKCkN
CihkZWZ1biBpY29tcGxldGUtZXhoaWJpdCAoKQ0KICAiSW5zZXJ0IGljb21w
bGV0ZSBjb21wbGV0aW9ucyBkaXNwbGF5Lg0KDQpTaG91bGQgYmUgcnVuIHZp
YSBtaW5pYnVmZmVyIGBwb3N0LWNvbW1hbmQtaG9vaycuICBTZWUgYGljb21w
bGV0ZS1tb2RlJw0KYW5kIGBtaW5pYnVmZmVyLXNldHVwLWhvb2snLiINCiAg
KGlmIChpY29tcGxldGUtc2ltcGxlLWNvbXBsZXRpbmctcCkNCiAgICAgIChs
ZXQgKChjb250ZW50cyAoYnVmZmVyLXN1YnN0cmluZyAocG9pbnQtbWluKShw
b2ludC1tYXgpKSkNCgkgICAgKGJ1ZmZlci11bmRvLWxpc3QgdCkpDQoJKHNh
dmUtZXhjdXJzaW9uDQoJICAoZ290by1jaGFyIChwb2ludC1tYXgpKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDsgUmVnaXN0
ZXIgdGhlIGVuZCBvZiBpbnB1dCwgc28gd2UNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICA7IGtub3cgd2hlcmUgdGhlIGV4dHJh
IHN0dWZmDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOyAobWF0Y2gtc3RhdHVzIGluZm8pIGJlZ2luczoNCgkgIChpZiAobm90
IChib3VuZHAgJ2ljb21wbGV0ZS1lb2lucHV0KSkNCgkgICAgICA7OyBJbiBj
YXNlIGl0IGdvdCB3aXBlZCBvdXQgYnkgbWFqb3IgbW9kZSBidXNpbmVzczoN
CgkgICAgICAobWFrZS1sb2NhbC12YXJpYWJsZSAnaWNvbXBsZXRlLWVvaW5w
dXQpKQ0KCSAgKHNldHEgaWNvbXBsZXRlLWVvaW5wdXQgKHBvaW50KSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7IEluc2Vy
dCB0aGUgbWF0Y2gtc3RhdHVzIGluZm9ybWF0aW9uOg0KCSAgKGlmIChhbmQg
KD4gKHBvaW50LW1heCkgMSkNCgkJICAgKG9yDQoJCSAgICA7OyBEb24ndCBi
b3RoZXIgd2l0aCBkZWxheSBhZnRlciBjZXJ0YWluIG51bWJlciBvZiBjaGFy
czoNCgkJICAgICg+IChwb2ludC1tYXgpIGljb21wbGV0ZS1tYXgtZGVsYXkt
Y2hhcnMpDQoJCSAgICA7OyBEb24ndCBkZWxheSBpZiBhbHRlcm5hdGl2ZXMg
bnVtYmVyIGlzIHNtYWxsIGVub3VnaDoNCgkJICAgIChpZiBtaW5pYnVmZmVy
LWNvbXBsZXRpb24tdGFibGUNCgkJCShjb25kICgobnVtYmVycCBtaW5pYnVm
ZmVyLWNvbXBsZXRpb24tdGFibGUpDQoJCQkgICAgICAgKDwgbWluaWJ1ZmZl
ci1jb21wbGV0aW9uLXRhYmxlDQoJCQkJICBpY29tcGxldGUtZGVsYXktY29t
cGxldGlvbnMtdGhyZXNob2xkKSkNCgkJCSAgICAgICgoc2VxdWVuY2VwIG1p
bmlidWZmZXItY29tcGxldGlvbi10YWJsZSkNCgkJCSAgICAgICAoPCAobGVu
Z3RoIG1pbmlidWZmZXItY29tcGxldGlvbi10YWJsZSkNCgkJCQkgIGljb21w
bGV0ZS1kZWxheS1jb21wbGV0aW9ucy10aHJlc2hvbGQpKQ0KCQkJICAgICAg
KSkNCgkJICAgIDs7IERlbGF5IC0gZ2l2ZSBzb21lIGdyYWNlIHRpbWUgZm9y
IG5leHQga2V5c3Ryb2tlLCBiZWZvcmUNCgkJICAgIDs7IGVtYmFya2luZyBv
biBjb21wdXRpbmcgY29tcGxldGlvbnM6DQoJCSAgICAoc2l0LWZvciBpY29t
cGxldGUtY29tcHV0ZS1kZWxheSkpKQ0KCSAgICAgIChpbnNlcnQtc3RyaW5n
DQoJICAgICAgIChpY29tcGxldGUtY29tcGxldGlvbnMgY29udGVudHMNCgkJ
CQkgICAgICBtaW5pYnVmZmVyLWNvbXBsZXRpb24tdGFibGUNCgkJCQkgICAg
ICBtaW5pYnVmZmVyLWNvbXBsZXRpb24tcHJlZGljYXRlDQoJCQkJICAgICAg
KG5vdA0KCQkJCSAgICAgICBtaW5pYnVmZmVyLWNvbXBsZXRpb24tY29uZmly
bSkpKSkpKSkpDQoNCjs7O18gPiBpY29tcGxldGUtY29tcGxldGlvbnMgKG5h
bWUgY2FuZGlkYXRlcyBwcmVkaWNhdGUgcmVxdWlyZS1tYXRjaCkNCihkZWZ1
biBpY29tcGxldGUtY29tcGxldGlvbnMgKG5hbWUgY2FuZGlkYXRlcyBwcmVk
aWNhdGUgcmVxdWlyZS1tYXRjaCkNCiAgIklkZW50aWZ5IHByb3NwZWN0aXZl
IGNhbmRpZGF0ZXMgZm9yIG1pbmlidWZmZXIgY29tcGxldGlvbi4NCg0KVGhl
IGRpc3BsYXkgaXMgdXBkYXRlZCB3aXRoIGVhY2ggbWluaWJ1ZmZlciBrZXlz
dHJva2UgZHVyaW5nDQptaW5pYnVmZmVyIGNvbXBsZXRpb24uDQoNClByb3Nw
ZWN0aXZlIGNvbXBsZXRpb24gc3VmZml4ZXMgKGlmIGFueSkgYXJlIGRpc3Bs
YXllZCwgYnJhY2tldGVkIGJ5DQpvbmUgb2YgXCgpLCBcW10sIG9yIFx7fSBw
YWlycy4gIFRoZSBjaG9pY2Ugb2YgYnJhY2tldHMgaXMgYXMgZm9sbG93czoN
Cg0KICBcKC4uLikgLSBhIHNpbmdsZSBwcm9zcGVjdCBpcyBpZGVudGlmaWVk
IGFuZCBtYXRjaGluZyBpcyBlbmZvcmNlZCwNCiAgXFsuLi5dIC0gYSBzaW5n
bGUgcHJvc3BlY3QgaXMgaWRlbnRpZmllZCBidXQgbWF0Y2hpbmcgaXMgb3B0
aW9uYWwsIG9yDQogIFx7Li4ufSAtIG11bHRpcGxlIHByb3NwZWN0cywgc2Vw
YXJhdGVkIGJ5IGNvbW1hcywgYXJlIGluZGljYXRlZCwgYW5kDQogICAgICAg
ICAgZnVydGhlciBpbnB1dCBpcyByZXF1aXJlZCB0byBkaXN0aW5ndWlzaCBh
IHNpbmdsZSBvbmUuDQoNClRoZSBkaXNwbGF5cyBmb3IgdW5hbWJpZ3VvdXMg
bWF0Y2hlcyBoYXZlIGAgW01hdGNoZWRdJyBhcHBlbmRlZA0KXCh3aGV0aGVy
IGNvbXBsZXRlIG9yIG5vdCksIG9yIGAgXFtObyBtYXRjaGVzXScsIGlmIG5v
IGVsaWdpYmxlDQptYXRjaGVzIGV4aXN0LiAgXChJbiBYRW1hY3MsIGtleWJp
bmRpbmdzIGZvciBtYXRjaGVkIGNvbW1hbmRzLCBpZiBhbnksDQphcmUgZXho
aWJpdGVkIHdpdGhpbiB0aGUgc3F1YXJlIGJyYWNlcy4pIg0KDQogIDs7ICdh
bGwtY29tcGxldGlvbnMnIGRvZXNuJ3QgbGlrZSBlbXB0eQ0KICA7OyBtaW5p
YnVmZmVyLWNvbXBsZXRpb24tdGFibGUncyAoaWU6IChuaWwpKQ0KICAoaWYg
KGFuZCAobGlzdHAgY2FuZGlkYXRlcykgKG51bGwgKGNhciBjYW5kaWRhdGVz
KSkpDQogICAgICAoc2V0cSBjYW5kaWRhdGVzIG5pbCkpDQoNCiAgKGxldCAo
KGNvbXBzIChhbGwtY29tcGxldGlvbnMgbmFtZSBjYW5kaWRhdGVzIHByZWRp
Y2F0ZSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgOyAiLWRldGVybWluZWQiIC0gb25seSBvbmUgY2FuZGlkYXRlDQogICAg
ICAgIChvcGVuLWJyYWNrZXQtZGV0ZXJtaW5lZCAoaWYgcmVxdWlyZS1tYXRj
aCAiKCIgIlsiKSkNCiAgICAgICAgKGNsb3NlLWJyYWNrZXQtZGV0ZXJtaW5l
ZCAoaWYgcmVxdWlyZS1tYXRjaCAiKSIgIl0iKSkNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICA7Ii1wcm9zcGVjdHMiIC0gbW9y
ZSB0aGFuIG9uZSBjYW5kaWRhdGUNCiAgICAgICAgKG9wZW4tYnJhY2tldC1w
cm9zcGVjdHMgInsiKQ0KICAgICAgICAoY2xvc2UtYnJhY2tldC1wcm9zcGVj
dHMgIn0iKQ0KICAgICAgICApDQogICAgKGNhdGNoICdpbnB1dA0KICAgICAg
KGNvbmQgKChudWxsIGNvbXBzKSAoZm9ybWF0ICIgJXNObyBtYXRjaGVzJXMi
DQoJCQkJICBvcGVuLWJyYWNrZXQtZGV0ZXJtaW5lZA0KCQkJCSAgY2xvc2Ut
YnJhY2tldC1kZXRlcm1pbmVkKSkNCgkgICAgKChudWxsIChjZHIgY29tcHMp
KQkJO29uZSBtYXRjaA0KCSAgICAgKGNvbmNhdCAoaWYgKGFuZCAoPiAobGVu
Z3RoIChjYXIgY29tcHMpKQ0KCQkJCSAobGVuZ3RoIG5hbWUpKSkNCgkJCSAo
Y29uY2F0IG9wZW4tYnJhY2tldC1kZXRlcm1pbmVkDQoJCQkJIChzdWJzdHJp
bmcgKGNhciBjb21wcykgKGxlbmd0aCBuYW1lKSkNCgkJCQkgY2xvc2UtYnJh
Y2tldC1kZXRlcm1pbmVkKQ0KCQkgICAgICAgIiIpDQoJCSAgICAgIiBbTWF0
Y2hlZCINCgkJICAgICAobGV0ICgoa2V5cyAoYW5kIGljb21wbGV0ZS1zaG93
LWtleS1iaW5kaW5ncw0KCQkJCSAgICAgIChjb21tYW5kcCAoaW50ZXJuLXNv
ZnQgKGNhciBjb21wcykpKQ0KCQkJCSAgICAgIChpY29tcGxldGUtZ2V0LWtl
eXMgKGNhciBjb21wcykpKSkpDQoJCSAgICAgICAoaWYga2V5cw0KCQkJICAg
KGNvbmNhdCAiOyAiIGtleXMpDQoJCQkgIiIpKQ0KCQkgICAgICJdIikpDQoJ
ICAgICh0CQkJCTttdWx0aXBsZSBtYXRjaGVzDQoJICAgICAobGV0KiAoKG1v
c3QNCgkJICAgICAodHJ5LWNvbXBsZXRpb24gbmFtZSBjYW5kaWRhdGVzDQoJ
CQkJICAgICAoYW5kIHByZWRpY2F0ZQ0KCQkJCQkgIDs7IFdyYXAgcHJlZGlj
YXRlIGluIGltcGF0aWVuY2UgLSBpZSwNCgkJCQkJICA7OyBgdGhyb3cnIHVw
IHdoZW4gcGVuZGluZyBpbnB1dCBpcw0KCQkJCQkgIDs7IG5vdGljZWQuICBB
ZGRzIHNvbWUgb3ZlcmhlYWQgdG8NCgkJCQkJICA7OyBwcmVkaWNhdGUsIGJ1
dCBzaG91bGQgYmUgd29ydGggaXQuDQoJCQkJCSAgKGZ1bmN0aW9uDQoJCQkJ
CSAgIChsYW1iZGEgKGl0ZW0pDQoJCQkJCSAgICAgKGlmIChpbnB1dC1wZW5k
aW5nLXApDQoJCQkJCQkgKHRocm93ICdpbnB1dCAiIikNCgkJCQkJICAgICAg
IChhcHBseSBwcmVkaWNhdGUNCgkJCQkJCSAgICAgIGl0ZW0gbmlsKSkpKSkp
KQ0KCQkgICAgKG1vc3QtbGVuIChsZW5ndGggbW9zdCkpDQoJCSAgICBtb3N0
LWlzLWV4YWN0DQoJCSAgICAoYWx0ZXJuYXRpdmVzDQoJCSAgICAgKHN1YnN0
cmluZyANCgkJICAgICAgKGFwcGx5IChmdW5jdGlvbiBjb25jYXQpDQoJCQkg
ICAgIChtYXBjYXIgKGZ1bmN0aW9uDQoJCQkJICAgICAgKGxhbWJkYSAoY29t
KQ0KCQkJCQkoaWYgKGlucHV0LXBlbmRpbmctcCkNCgkJCQkJICAgICh0aHJv
dyAnaW5wdXQgIiIpKQ0KCQkJCQkoaWYgKD0gKGxlbmd0aCBjb20pIG1vc3Qt
bGVuKQ0KCQkJCQkgICAgOzsgTW9zdCBpcyBvbmUgZXhhY3QgbWF0Y2gsDQoJ
CQkJCSAgICA7OyBub3RlIHRoYXQgYW5kIGxlYXZlIG91dA0KCQkJCQkgICAg
OzsgZm9yIGxhdGVyIGluZGljYXRpb246DQoJCQkJCSAgICAocHJvZ24NCgkJ
CQkJICAgICAgKHNldHEgbW9zdC1pcy1leGFjdCB0KQ0KCQkJCQkgICAgICAo
KSkNCgkJCQkJICAoY29uY2F0ICIsIg0KCQkJCQkJICAoc3Vic3RyaW5nIGNv
bQ0KCQkJCQkJCSAgICAgbW9zdC1sZW4pKSkpKQ0KCQkJCSAgICAgY29tcHMp
KQ0KCQkgICAgICAxKSkpDQoJICAgICAgIChjb25jYXQgKGFuZCAoPiBtb3N0
LWxlbiAobGVuZ3RoIG5hbWUpKQ0KCQkJICAgIChjb25jYXQgb3Blbi1icmFj
a2V0LWRldGVybWluZWQNCgkJCQkgICAgKHN1YnN0cmluZyBtb3N0IChsZW5n
dGggbmFtZSkpDQoJCQkJICAgIGNsb3NlLWJyYWNrZXQtZGV0ZXJtaW5lZCkp
DQoJCSAgICAgICBvcGVuLWJyYWNrZXQtcHJvc3BlY3RzDQoJCSAgICAgICAo
aWYgbW9zdC1pcy1leGFjdA0KCQkJICAgOzsgQWRkIGEgJywnIGF0IHRoZSBm
cm9udCB0byBpbmRpY2F0ZSAiY29tcGxldGUgYnV0DQoJCQkgICA7OyBub3Qg
dW5pcXVlIjoNCgkJCSAgIChjb25jYXQgIiwiIGFsdGVybmF0aXZlcykNCgkJ
CSBhbHRlcm5hdGl2ZXMpDQoJCSAgICAgICBjbG9zZS1icmFja2V0LXByb3Nw
ZWN0cykpKSkpKSkNCg0KOzs7XyArIEluaXRpYWxpemF0aW9uDQo7OzsgSWYg
dXNlciBoYXNuJ3Qgc2V0cS1kZWZhdWx0IGljb21wbGV0ZS1tb2RlIHRvIG5p
bCwgdGhlbiBzZXR1cCBmb3INCjs7OyBhY3RpdmF0aW9uOg0KKGlmIGljb21w
bGV0ZS1tb2RlDQogICAgKGljb21wbGV0ZS1tb2RlKSkNCg0KDQo7OztfKiBM
b2NhbCBlbWFjcyB2YXJzLg0KOzs7TG9jYWwgdmFyaWFibGVzOg0KOzs7b3V0
bGluZS1sYXlvdXQ6ICgtMiA6KQ0KOzs7RW5kOg0KDQo7OzsgaWNvbXBsZXRl
LmVsIGVuZHMgaGVyZQ0K
---559023410-752095483-864858723=:364--

