From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Michael Welsh Duggan Newsgroups: gmane.emacs.devel Subject: Re: 23.0.60; Incorrect fontification for man in utf8 environment Date: Tue, 06 May 2008 23:41:16 -0400 Message-ID: <87y76mixwj.fsf@maru.md5i.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: ger.gmane.org 1210131776 15446 80.91.229.12 (7 May 2008 03:42:56 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 7 May 2008 03:42:56 +0000 (UTC) To: emacs-devel@gnu.org, 124@emacsbugs.donarmstrong.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed May 07 05:43:31 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JtaYG-000294-KM for ged-emacs-devel@m.gmane.org; Wed, 07 May 2008 05:42:46 +0200 Original-Received: from localhost ([127.0.0.1]:47829 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JtaXY-0008OL-89 for ged-emacs-devel@m.gmane.org; Tue, 06 May 2008 23:42:00 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JtaXU-0008OF-9I for emacs-devel@gnu.org; Tue, 06 May 2008 23:41:56 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JtaXS-0008O3-Kf for emacs-devel@gnu.org; Tue, 06 May 2008 23:41:55 -0400 Original-Received: from [199.232.76.173] (port=53613 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JtaXS-0008O0-Hc for emacs-devel@gnu.org; Tue, 06 May 2008 23:41:54 -0400 Original-Received: from md5i.com ([66.207.132.105] helo=maru.md5i.com) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JtaXR-00032f-Gc for emacs-devel@gnu.org; Tue, 06 May 2008 23:41:54 -0400 Original-Received: from md5i by maru.md5i.com with local (Exim 4.69) (envelope-from ) id 1JtaWq-00038f-K6; Tue, 06 May 2008 23:41:16 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:96645 Archived-At: --=-=-= Some more research on this: The resulting file from: TERM=dumb GROFF_NO_SGR=1 man man > /tmp/man.out on my system is: --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=man.out Content-Transfer-Encoding: base64 TUFOKDEpICAgICAgICAgICAgICAgICAgICAgICAgTWFudWFsIHBhZ2VyIHV0aWxzICAgICAgICAg ICAgICAgICAgICAgICAgTUFOKDEpCgoKCk5BTUUKICAgICAgIG1hbiDiiJIgYW4gaW50ZXJmYWNl IHRvIHRoZSBvbuKAkGxpbmUgcmVmZXJlbmNlIG1hbnVhbHMKClNZTk9QU0lTCiAgICAgICBtYW4g IFviiOKIkmN84ojiiJJ3fOKI4oiSdFpdIFviiOKIkkhbYnJvd3Nlcl1dIFviiOKIklRbZGV2aWNl XV0gW+KI4oiSWFtkcGldXSBb4ojiiJJhZGh1N1ZdIFviiOKIkml84ojiiJJJXQogICAgICAgW+KI 4oiSbSBzeXN0ZW1bLC4uLl1dIFviiOKIkkwgbG9jYWxlXSBb4ojiiJJwICBzdHJpbmddICBb4oji iJJDICBmaWxlXSAgW+KI4oiSTSAgcGF0aF0gIFviiOKIklAKICAgICAgIHBhZ2VyXSAgW+KI4oiS ciAgcHJvbXB0XSAgW+KI4oiSUyAgbGlzdF0gW+KI4oiSZSBleHRlbnNpb25dIFviiOKIkuKI4oiS d2FybmluZ3MgW3dhcm5pbmdzXV0KICAgICAgIFtbc2VjdGlvbl0gcGFnZSAuLi5dIC4uLgogICAg ICAgbWFuIOKI4oiSbCBb4ojiiJI3XSBb4ojiiJJ0Wl0gW+KI4oiSSFticm93c2VyXV0gW+KI4oiS VFtkZXZpY2VdXSBb4ojiiJJYW2RwaV1dIFviiOKIknAgc3RyaW5nXSAgW+KI4oiSUAogICAgICAg cGFnZXJdIFviiOKIknIgcHJvbXB0XSBb4ojiiJLiiOKIkndhcm5pbmdzW3dhcm5pbmdzXV0gZmls ZSAuLi4KICAgICAgIG1hbiDiiOKIkmsgW2Fwcm9wb3Mgb3B0aW9uc10gcmVnZXhwIC4uLgogICAg ICAgbWFuIOKI4oiSZiBbd2hhdGlzIG9wdGlvbnNdIHBhZ2UgLi4uCgpERVNDUklQVElPTgogICAg ICAgbWFuICBpcyAgdGhlICBzeXN0ZW3igJlzIG1hbnVhbCBwYWdlci4gRWFjaCBwYWdlIGFyZ3Vt ZW50IGdpdmVuIHRvIG1hbiBpcwogICAgICAgbm9ybWFsbHkgdGhlIG5hbWUgb2YgYSBwcm9ncmFt LCB1dGlsaXR5IG9yIGZ1bmN0aW9uLiAgVGhlICBtYW51YWwgIHBhZ2UKICAgICAgIGFzc29jaWF0 ZWQgIHdpdGggZWFjaCBvZiB0aGVzZSBhcmd1bWVudHMgaXMgdGhlbiBmb3VuZCBhbmQgZGlzcGxh eWVkLiBBCiAgICAgICBzZWN0aW9uLCBpZiBwcm92aWRlZCwgd2lsbCBkaXJlY3QgbWFuIHRvIGxv b2sgb25seSBpbiB0aGF0ICBzZWN0aW9uICBvZgogICAgICAgdGhlICBtYW51YWwuICAgVGhlICBk ZWZhdWx0IGFjdGlvbiBpcyB0byBzZWFyY2ggaW4gYWxsIG9mIHRoZSBhdmFpbGFibGUKICAgICAg IHNlY3Rpb25zLCBmb2xsb3dpbmcgYSBwcmXigJBkZWZpbmVkIG9yZGVyIGFuZCB0byBzaG93IG9u bHkgdGhlIGZpcnN0IHBhZ2UKICAgICAgIGZvdW5kLCBldmVuIGlmIHBhZ2UgZXhpc3RzIGluIHNl dmVyYWwgc2VjdGlvbnMuCgogICAgICAgVGhlIHRhYmxlIGJlbG93IHNob3dzIHRoZSBzZWN0aW9u IG51bWJlcnMgb2YgdGhlIG1hbnVhbCBmb2xsb3dlZCBieSB0aGUKICAgICAgIHR5cGVzIG9mIHBh Z2VzIHRoZXkgY29udGFpbi4KCgogICAgICAgMSAgIEV4ZWN1dGFibGUgcHJvZ3JhbXMgb3Igc2hl bGwgY29tbWFuZHMKICAgICAgIDIgICBTeXN0ZW0gY2FsbHMgKGZ1bmN0aW9ucyBwcm92aWRlZCBi eSB0aGUga2VybmVsKQogICAgICAgMyAgIExpYnJhcnkgY2FsbHMgKGZ1bmN0aW9ucyB3aXRoaW4g cHJvZ3JhbSBsaWJyYXJpZXMpCiAgICAgICA0ICAgU3BlY2lhbCBmaWxlcyAodXN1YWxseSBmb3Vu ZCBpbiAvZGV2KQogICAgICAgNSAgIEZpbGUgZm9ybWF0cyBhbmQgY29udmVudGlvbnMgZWcgL2V0 Yy9wYXNzd2QKICAgICAgIDYgICBHYW1lcwogICAgICAgNyAgIE1pc2NlbGxhbmVvdXMgKGluY2x1 ZGluZyBtYWNybyAgcGFja2FnZXMgIGFuZCAgY29udmVu4oCQCiAgICAgICAgICAgdGlvbnMpLCBl LmcuIG1hbig3KSwgZ3JvZmYoNykKICAgICAgIDggICBTeXN0ZW0gYWRtaW5pc3RyYXRpb24gY29t bWFuZHMgKHVzdWFsbHkgb25seSBmb3Igcm9vdCkKICAgICAgIDkgICBLZXJuZWwgcm91dGluZXMg W05vbiBzdGFuZGFyZF0KCiAgICAgICBBIG1hbnVhbCBwYWdlIGNvbnNpc3RzIG9mIHNldmVyYWwg cGFydHMuCgogICAgICAgVGhleSAgbWF5ICBiZSAgbGFiZWxsZWQgIE5BTUUsICBTWU5PUFNJUywg IERFU0NSSVBUSU9OLCBPUFRJT05TLCBGSUxFUywKICAgICAgIFNFRSBBTFNPLCBCVUdTLCBhbmQg QVVUSE9SLgoKICAgICAgIFRoZSBmb2xsb3dpbmcgY29udmVudGlvbnMgYXBwbHkgdG8gdGhlIFNZ Tk9QU0lTIHNlY3Rpb24gYW5kIGNhbiBiZSB1c2VkCiAgICAgICBhcyBhIGd1aWRlIGluIG90aGVy IHNlY3Rpb25zLgoKCiAgICAgICBib2xkIHRleHQgICAgICAgICAgdHlwZSBleGFjdGx5IGFzIHNo b3duLgogICAgICAgaXRhbGljIHRleHQgICAgICAgIHJlcGxhY2Ugd2l0aCBhcHByb3ByaWF0ZSBh cmd1bWVudC4KICAgICAgIFviiOKIkmFiY10gICAgICAgICAgICAgYW55IG9yIGFsbCBhcmd1bWVu dHMgd2l0aGluIFsgXSBhcmUgb3B0aW9uYWwuCiAgICAgICDiiOKIkmF84ojiiJJiICAgICAgICAg ICAgICBvcHRpb25zIGRlbGltaXRlZCBieSB8IGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyLgogICAg ICAgYXJndW1lbnQgLi4uICAgICAgIGFyZ3VtZW50IGlzIHJlcGVhdGFibGUuCiAgICAgICBbZXhw cmVzc2lvbl0gLi4uICAgZW50aXJlIGV4cHJlc3Npb24gd2l0aGluIFsgXSBpcyByZXBlYXRhYmxl LgoKICAgICAgIFRoZSBjb21tYW5kIG9yIGZ1bmN0aW9uIGlsbHVzdHJhdGlvbiBpcyBhIHBhdHRl cm4gdGhhdCBzaG91bGQgbWF0Y2ggYWxsCiAgICAgICBwb3NzaWJsZSBpbnZvY2F0aW9ucy4gIElu IHNvbWUgY2FzZXMgaXQgaXMgYWR2aXNhYmxlIHRvIGlsbHVzdHJhdGUgc2V24oCQCiAgICAgICBl cmFsICBleGNsdXNpdmUgaW52b2NhdGlvbnMgYXMgaXMgc2hvd24gaW4gdGhlIFNZTk9QU0lTIHNl Y3Rpb24gb2YgdGhpcwogICAgICAgbWFudWFsIHBhZ2UuCgpFWEFNUExFUwogICAgICAgbWFuIGxz CiAgICAgICAgICAgRGlzcGxheSB0aGUgbWFudWFsIHBhZ2UgZm9yIHRoZSBpdGVtIChwcm9ncmFt KSBscy4KCiAgICAgICBtYW4g4ojiiJJhIGludHJvCiAgICAgICAgICAgRGlzcGxheSwgaW4gc3Vj Y2Vzc2lvbiwgYWxsIG9mIHRoZSAgYXZhaWxhYmxlICBpbnRybyAgbWFudWFsICBwYWdlcwogICAg ICAgICAgIGNvbnRhaW5lZCAgd2l0aGluICB0aGUgbWFudWFsLiAgSXQgaXMgcG9zc2libGUgdG8g cXVpdCBiZXR3ZWVuIHN1Y+KAkAogICAgICAgICAgIGNlc3NpdmUgZGlzcGxheXMgb3Igc2tpcCBh bnkgb2YgdGhlbS4KCiAgICAgICBtYW4g4ojiiJJ0IGFsaWFzIHwgbHByIOKIklBwcwogICAgICAg ICAgIEZvcm1hdCB0aGUgbWFudWFsIHBhZ2UgcmVmZXJlbmNlZCBieSDigJhhbGlhc+KAmSwgdXN1 YWxseSBhIHNoZWxsICBtYW7igJAKICAgICAgICAgICB1YWwgcGFnZSwgaW50byB0aGUgZGVmYXVs dCB0cm9mZiBvciBncm9mZiBmb3JtYXQgYW5kIHBpcGUgaXQgdG8gdGhlCiAgICAgICAgICAgcHJp bnRlciAgbmFtZWQgIHBzLiAgIFRoZSAgZGVmYXVsdCAgb3V0cHV0ICBmb3IgIGdyb2ZmICBpcyAg dXN1YWxseQogICAgICAgICAgIFBvc3RTY3JpcHQuICAgbWFuICDiiOKIkuKI4oiSaGVscCAgc2hv dWxkICBhZHZpc2UgIGFzIHRvIHdoaWNoIHByb2Nlc3NvciBpcwogICAgICAgICAgIGJvdW5kIHRv IHRoZSDiiOKIknQgb3B0aW9uLgoKICAgICAgIG1hbiDiiOKIkmwg4ojiiJJUZHZpIC4vZm9vLjF4 Lmd6ID4gLi9mb28uMXguZHZpCiAgICAgICAgICAgVGhpcyBjb21tYW5kIHdpbGwgZGVjb21wcmVz cyBhbmQgZm9ybWF0ICB0aGUgIG5yb2ZmICBzb3VyY2UgIG1hbnVhbAogICAgICAgICAgIHBhZ2Ug IC4vZm9vLjF4Lmd6ICBpbnRvIGEgZGV2aWNlIGluZGVwZW5kZW50IChkdmkpIGZpbGUuICBUaGUg cmVkaeKAkAogICAgICAgICAgIHJlY3Rpb24gaXMgbmVjZXNzYXJ5IGFzIHRoZSDiiOKIklQgZmxh ZyBjYXVzZXMgb3V0cHV0IHRvIGJlIGRpcmVjdGVkIHRvCiAgICAgICAgICAgc3Rkb3V0ICB3aXRo ICBubyAgcGFnZXIuICBUaGUgb3V0cHV0IGNvdWxkIGJlIHZpZXdlZCB3aXRoIGEgcHJvZ3JhbQog ICAgICAgICAgIHN1Y2ggYXMgeGR2aSBvciBmdXJ0aGVyIHByb2Nlc3NlZCBpbnRvIFBvc3RTY3Jp cHQgdXNpbmcgIGEgIHByb2dyYW0KICAgICAgICAgICBzdWNoIGFzIGR2aXBzLgoKICAgICAgIG1h biDiiOKIkmsgcHJpbnRmCiAgICAgICAgICAgU2VhcmNoIHRoZSBzaG9ydCBkZXNjcmlwdGlvbnMg YW5kIG1hbnVhbCBwYWdlIG5hbWVzIGZvciB0aGUga2V5d29yZAogICAgICAgICAgIHByaW50ZiBh cyByZWd1bGFyIGV4cHJlc3Npb24uICBQcmludCBvdXQgYW55ICBtYXRjaGVzLiAgIEVxdWl2YWxl bnQKICAgICAgICAgICB0byBhcHJvcG9zIOKI4oiSciBwcmludGYuCgogICAgICAgbWFuIOKI4oiS ZiBzbWFpbAogICAgICAgICAgIExvb2t1cCB0aGUgbWFudWFsIHBhZ2VzIHJlZmVyZW5jZWQgYnkg c21haWwgYW5kIHByaW50IG91dCB0aGUgc2hvcnQKICAgICAgICAgICBkZXNjcmlwdGlvbnMgb2Yg YW55IGZvdW5kLiAgRXF1aXZhbGVudCB0byB3aGF0aXMg4ojiiJJyIHNtYWlsLgoKT1ZFUlZJRVcK ICAgICAgIE1hbnkgb3B0aW9ucyBhcmUgYXZhaWxhYmxlIHRvIG1hbiBpbiBvcmRlciB0byBnaXZl IGFzIG11Y2ggIGZsZXhpYmlsaXR5CiAgICAgICBhcyAgcG9zc2libGUgdG8gdGhlIHVzZXIuICBD aGFuZ2VzIGNhbiBiZSBtYWRlIHRvIHRoZSBzZWFyY2ggcGF0aCwgc2Vj4oCQCiAgICAgICB0aW9u IG9yZGVyLCBvdXRwdXQgIHByb2Nlc3NvciwgIGFuZCAgb3RoZXIgIGJlaGF2aW91cnMgIGFuZCAg b3BlcmF0aW9ucwogICAgICAgZGV0YWlsZWQgYmVsb3cuCgogICAgICAgSWYgc2V0LCB2YXJpb3Vz IGVudmlyb25tZW50IHZhcmlhYmxlcyBhcmUgaW50ZXJyb2dhdGVkIHRvIGRldGVybWluZSB0aGUK ICAgICAgIG9wZXJhdGlvbiBvZiBtYW4uICBJdCBpcyBwb3NzaWJsZSAgdG8gIHNldCAgdGhlICDi gJhjYXRjaCAgYWxs4oCZICB2YXJpYWJsZQogICAgICAgJE1BTk9QVCAgdG8gIGFueSAgc3RyaW5n IGluIGNvbW1hbmQgbGluZSBmb3JtYXQgd2l0aCB0aGUgZXhjZXB0aW9uIHRoYXQKICAgICAgIGFu eSBzcGFjZXMgdXNlZCBhcyBwYXJ0IG9mIGFuIG9wdGlvbuKAmXMgYXJndW1lbnQgbXVzdCBiZSAg ZXNjYXBlZCAgKHByZeKAkAogICAgICAgY2VkZWQgYnkgYSBiYWNrc2xhc2gpLiAgbWFuIHdpbGwg cGFyc2UgJE1BTk9QVCBwcmlvciB0byBwYXJzaW5nIGl0cyBvd24KICAgICAgIGNvbW1hbmQgbGlu ZS4gIFRob3NlIG9wdGlvbnMgcmVxdWlyaW5nIGFuIGFyZ3VtZW50IHdpbGwgIGJlICBvdmVycmlk ZGVuCiAgICAgICBieSAgdGhlICBzYW1lICBvcHRpb25zICBmb3VuZCBvbiB0aGUgY29tbWFuZCBs aW5lLiAgVG8gcmVzZXQgYWxsIG9mIHRoZQogICAgICAgb3B0aW9ucyBzZXQgaW4gJE1BTk9QVCwg 4ojiiJJEIGNhbiBiZSBzcGVjaWZpZWQgYXMgdGhlIGluaXRpYWwgY29tbWFuZCBsaW5lCiAgICAg ICBvcHRpb24uICBUaGlzIHdpbGwgYWxsb3cgbWFuIHRvIOKAmGZvcmdldOKAmSBhYm91dCB0aGUg b3B0aW9ucyBzcGVjaWZpZWQgaW4KICAgICAgICRNQU5PUFQgYWx0aG91Z2ggdGhleSBtdXN0IHN0 aWxsIGhhdmUgYmVlbiB2YWxpZC4KCiAgICAgICBUaGUgbWFudWFsIHBhZ2VyIHV0aWxpdGllcyBw YWNrYWdlZCBhcyBtYW7igOKAkGRiICBtYWtlICBleHRlbnNpdmUgIHVzZSAgb2YKICAgICAgIGlu ZGV4ICBkYXRhYmFzZSBjYWNoZXMuICBUaGVzZSBjYWNoZXMgY29udGFpbiBpbmZvcm1hdGlvbiBz dWNoIGFzIHdoZXJlCiAgICAgICBlYWNoIG1hbnVhbCBwYWdlIGNhbiBiZSBmb3VuZCBvbiB0aGUg ZmlsZXN5c3RlbSAgYW5kICB3aGF0ICBpdHMgIHdoYXRpcwogICAgICAgKHNob3J0IG9uZSBsaW5l IGRlc2NyaXB0aW9uIG9mIHRoZSBtYW4gcGFnZSkgY29udGFpbnMsIGFuZCBhbGxvdyBtYW4gdG8K ICAgICAgIHJ1biBmYXN0ZXIgdGhhbiBpZiBpdCBoYWQgdG8gc2VhcmNoIHRoZSBmaWxlc3lzdGVt IGVhY2ggIHRpbWUgIHRvICBmaW5kCiAgICAgICB0aGUgIGFwcHJvcHJpYXRlICBtYW51YWwgIHBh Z2UuICAgSWYgcmVxdWVzdGVkIHVzaW5nIHRoZSDiiOKIknUgb3B0aW9uLCBtYW4KICAgICAgIHdp bGwgZW5zdXJlIHRoYXQgdGhlIGNhY2hlcyByZW1haW4gY29uc2lzdGVudCwgd2hpY2ggIGNhbiAg b2J2aWF0ZSAgdGhlCiAgICAgICBuZWVkICB0byAgbWFudWFsbHkgIHJ1biAgc29mdHdhcmUgIHRv ICB1cGRhdGUgIHRyYWRpdGlvbmFsICB3aGF0aXMgdGV4dAogICAgICAgZGF0YWJhc2VzLgoKICAg ICAgIElmIG1hbiBjYW5ub3QgZmluZCBhIG1hbmRiIGluaXRpYXRlZCBpbmRleCBkYXRhYmFzZSAg Zm9yICBhICBwYXJ0aWN1bGFyCiAgICAgICBtYW51YWwgIHBhZ2UgIGhpZXJhcmNoeSwgIGl0IHdp bGwgc3RpbGwgc2VhcmNoIGZvciB0aGUgcmVxdWVzdGVkIG1hbnVhbAogICAgICAgcGFnZXMsIGFs dGhvdWdoIGZpbGUgZ2xvYmJpbmcgd2lsbCBiZSBuZWNlc3NhcnkgdG8gc2VhcmNoICB3aXRoaW4g IHRoYXQKICAgICAgIGhpZXJhcmNoeS4gICBJZiB3aGF0aXMgb3IgYXByb3BvcyBmYWlscyB0byBm aW5kIGFuIGluZGV4IGl0IHdpbGwgdHJ5IHRvCiAgICAgICBleHRyYWN0IGluZm9ybWF0aW9uIGZy b20gYSB0cmFkaXRpb25hbCB3aGF0aXMgZGF0YWJhc2UgaW5zdGVhZC4KCiAgICAgICBUaGVzZSB1 dGlsaXRpZXMgIHN1cHBvcnQgIGNvbXByZXNzZWQgIHNvdXJjZSAgbnJvZmYgIGZpbGVzICBoYXZp bmcsICBieQogICAgICAgZGVmYXVsdCwgdGhlIGV4dGVuc2lvbnMgb2YgLlosIC56IGFuZCAuZ3ou ICBJdCBpcyBwb3NzaWJsZSB0byBkZWFsIHdpdGgKICAgICAgIGFueSBjb21wcmVzc2lvbiBleHRl bnNpb24sIGJ1dCB0aGlzIGluZm9ybWF0aW9uIG11c3QgYmUga25vd24gIGF0ICBjb23igJAKICAg ICAgIHBpbGUgIHRpbWUuICAgQWxzbywgIGJ5ICBkZWZhdWx0LCBhbnkgY2F0IHBhZ2VzIHByb2R1 Y2VkIGFyZSBjb21wcmVzc2VkCiAgICAgICB1c2luZyBnemlwLiAgRWFjaCDigJhnbG9iYWzigJkg bWFudWFsIHBhZ2UgaGllcmFyY2h5IHN1Y2ggYXMgL3Vzci9zaGFyZS9tYW4KICAgICAgIG9yICAv dXNyL1gxMVI2L21hbiAgbWF5ICBoYXZlICBhbnkgZGlyZWN0b3J5IGFzIGl0cyBjYXQgcGFnZSBo aWVyYXJjaHkuCiAgICAgICBUcmFkaXRpb25hbGx5IHRoZSBjYXQgcGFnZXMgYXJlIHN0b3JlZCB1 bmRlciB0aGUgc2FtZSBoaWVyYXJjaHkgYXMgIHRoZQogICAgICAgbWFuICBwYWdlcywgYnV0IGZv ciByZWFzb25zIHN1Y2ggYXMgdGhvc2Ugc3BlY2lmaWVkIGluIHRoZSBGaWxlIEhpZXJhcuKA4oCQ CiAgICAgICBjaHkgU3RhbmRhcmQgKEZIUyksIGl0IG1heSBiZSBiZXR0ZXIgIHRvICBzdG9yZSAg dGhlbSAgZWxzZXdoZXJlLiAgIEZvcgogICAgICAgZGV0YWlscyAgb24gaG93IHRvIGRvIHRoaXMs IHBsZWFzZSByZWFkIG1hbnBhdGgoNSkuICBGb3IgZGV0YWlscyBvbiB3aHkKICAgICAgIHRvIGRv IHRoaXMsIHJlYWQgdGhlIHN0YW5kYXJkLgoKICAgICAgIEludGVybmF0aW9uYWwgc3VwcG9ydCBp cyBhdmFpbGFibGUgd2l0aCB0aGlzIHBhY2thZ2UuICBOYXRpdmUgIGxhbmd1YWdlCiAgICAgICBt YW51YWwgIHBhZ2VzICBhcmUgIGFjY2Vzc2libGUgKGlmIGF2YWlsYWJsZSBvbiB5b3VyIHN5c3Rl bSkgdmlhIHVzZSBvZgogICAgICAgbG9jYWxlIGZ1bmN0aW9ucy4gIFRvIGFjdGl2YXRlIHN1Y2gg c3VwcG9ydCwgaXQgIGlzICBuZWNlc3NhcnkgIHRvICBzZXQKICAgICAgIGVpdGhlciAgJExDX01F U1NBR0VTLCAgJExBTkcgIG9yICBhbm90aGVyICBzeXN0ZW0gZGVwZW5kZW50IGVudmlyb25tZW50 CiAgICAgICB2YXJpYWJsZSB0byB5b3VyIGxhbmd1YWdlIGxvY2FsZSwgdXN1YWxseSBzcGVjaWZp ZWQgaW4gdGhlIFBPU0lYIDEwMDMuMQogICAgICAgYmFzZWQgZm9ybWF0OgoKICAgICAgIDxsYW5n dWFnZT5bXzx0ZXJyaXRvcnk+Wy48Y2hhcmFjdGVy4oCQc2V0PlssPHZlcnNpb24+XV1dCgogICAg ICAgSWYgIHRoZSAgZGVzaXJlZCBwYWdlIGlzIGF2YWlsYWJsZSBpbiB5b3VyIGxvY2FsZSwgaXQg d2lsbCBiZSBkaXNwbGF5ZWQKICAgICAgIGluIGxpZXUgb2YgdGhlIHN0YW5kYXJkICh1c3VhbGx5 IEFtZXJpY2FuIEVuZ2xpc2gpIHBhZ2UuCgogICAgICAgU3VwcG9ydCBmb3IgaW50ZXJuYXRpb25h bCBtZXNzYWdlIGNhdGFsb2d1ZXMgaXMgYWxzbyBmZWF0dXJlZCAgaW4gIHRoaXMKICAgICAgIHBh Y2thZ2UgIGFuZCAgY2FuIGJlIGFjdGl2YXRlZCBpbiB0aGUgc2FtZSB3YXksIGFnYWluIGlmIGF2 YWlsYWJsZS4gIElmCiAgICAgICB5b3UgZmluZCB0aGF0IHRoZSBtYW51YWwgcGFnZXMgYW5kICBt ZXNzYWdlICBjYXRhbG9ndWVzICBzdXBwbGllZCAgd2l0aAogICAgICAgdGhpcyAgcGFja2FnZSAg YXJlICBub3QgYXZhaWxhYmxlIGluIHlvdXIgbmF0aXZlIGxhbmd1YWdlIGFuZCB5b3Ugd291bGQK ICAgICAgIGxpa2UgdG8gc3VwcGx5IHRoZW0sIHBsZWFzZSBjb250YWN0IHRoZSBtYWludGFpbmVy IHdobyB3aWxsIGJlICBjb29yZGnigJAKICAgICAgIG5hdGluZyBzdWNoIGFjdGl2aXR5LgoKICAg ICAgIEZvciAgaW5mb3JtYXRpb24gcmVnYXJkaW5nIG90aGVyIGZlYXR1cmVzIGFuZCBleHRlbnNp b25zIGF2YWlsYWJsZSB3aXRoCiAgICAgICB0aGlzIG1hbnVhbCBwYWdlciwgcGxlYXNlIHJlYWQg dGhlIGRvY3VtZW50cyBzdXBwbGllZCB3aXRoIHRoZSBwYWNrYWdlLgoKREVGQVVMVFMKICAgICAg IG1hbiAgd2lsbCBzZWFyY2ggZm9yIHRoZSBkZXNpcmVkIG1hbnVhbCBwYWdlcyB3aXRoaW4gdGhl IGluZGV4IGRhdGFiYXNlCiAgICAgICBjYWNoZXMuIElmIHRoZSDiiOKIknUgb3B0aW9uIGlzIGdp dmVuLCBhIGNhY2hlIGNvbnNpc3RlbmN5ICBjaGVjayAgaXMgIHBlcuKAkAogICAgICAgZm9ybWVk ICB0byAgZW5zdXJlIHRoZSBkYXRhYmFzZXMgYWNjdXJhdGVseSByZWZsZWN0IHRoZSBmaWxlc3lz dGVtLiAgSWYKICAgICAgIHRoaXMgb3B0aW9uIGlzIGFsd2F5cyBnaXZlbiwgaXQgaXMgbm90IGdl bmVyYWxseSBuZWNlc3NhcnkgdG8gcnVuIG1hbmRiCiAgICAgICBhZnRlciB0aGUgY2FjaGVzIGFy ZSBpbml0aWFsbHkgY3JlYXRlZCwgdW5sZXNzIGEgY2FjaGUgYmVjb21lcyBjb3JydXB0LgogICAg ICAgSG93ZXZlciwgdGhlIGNhY2hlIGNvbnNpc3RlbmN5IGNoZWNrIGNhbiBiZSBzbG93IG9uIHN5 c3RlbXMgIHdpdGggIG1hbnkKICAgICAgIG1hbnVhbCAgcGFnZXMgIGluc3RhbGxlZCwgc28gaXQg aXMgbm90IHBlcmZvcm1lZCBieSBkZWZhdWx0LCBhbmQgc3lzdGVtCiAgICAgICBhZG1pbmlzdHJh dG9ycyBtYXkgd2lzaCB0byBydW4gbWFuZGIgZXZlcnkgIHdlZWsgIG9yICBzbyAgdG8gIGtlZXAg IHRoZQogICAgICAgZGF0YWJhc2UgIGNhY2hlcyAgZnJlc2guICAgVG8gIGZvcmVzdGFsbCAgcHJv YmxlbXMgIGNhdXNlZCAgYnkgb3V0ZGF0ZWQKICAgICAgIGNhY2hlcywgbWFuIHdpbGwgZmFsbCBi YWNrIHRvIGZpbGUgZ2xvYmJpbmcgaWYgYSAgY2FjaGUgIGxvb2t1cCAgZmFpbHMsCiAgICAgICBq dXN0IGFzIGl0IHdvdWxkIGlmIG5vIGNhY2hlIHdhcyBwcmVzZW50LgoKICAgICAgIE9uY2UgIGEg IG1hbnVhbCBwYWdlIGhhcyBiZWVuIGxvY2F0ZWQsIGEgY2hlY2sgaXMgcGVyZm9ybWVkIHRvIGZp bmQgb3V0CiAgICAgICBpZiBhIHJlbGF0aXZlIHByZWZvcm1hdHRlZCDigJhjYXTigJkgZmlsZSBh bHJlYWR5IGV4aXN0cyBhbmQgaXMgbmV3ZXIgIHRoYW4KICAgICAgIHRoZSBucm9mZiBmaWxlLiAg SWYgaXQgZG9lcyBhbmQgaXMsIHRoaXMgcHJlZm9ybWF0dGVkIGZpbGUgaXMgKHVzdWFsbHkpCiAg ICAgICBkZWNvbXByZXNzZWQgYW5kIHRoZW4gZGlzcGxheWVkLCB2aWEgdXNlIG9mIGEgcGFnZXIu ICBUaGUgcGFnZXIgY2FuICBiZQogICAgICAgc3BlY2lmaWVkICBpbiAgYSBudW1iZXIgb2Ygd2F5 cywgb3IgZWxzZSB3aWxsIGZhbGwgYmFjayB0byBhIGRlZmF1bHQgaXMKICAgICAgIHVzZWQgKHNl ZSBvcHRpb24g4ojiiJJQIGZvciBkZXRhaWxzKS4gIElmIG5vIGNhdCBpcyBmb3VuZCBvciBpcyBv bGRlciAgdGhhbgogICAgICAgdGhlICBucm9mZiAgZmlsZSwgdGhlIG5yb2ZmIGlzIGZpbHRlcmVk IHRocm91Z2ggdmFyaW91cyBwcm9ncmFtcyBhbmQgaXMKICAgICAgIHNob3duIGltbWVkaWF0ZWx5 LgoKICAgICAgIElmIGEgY2F0IGZpbGUgY2FuIGJlIHByb2R1Y2VkIChhIHJlbGF0aXZlIGNhdCBk aXJlY3RvcnkgZXhpc3RzIGFuZCAgaGFzCiAgICAgICBhcHByb3ByaWF0ZSAgcGVybWlzc2lvbnMp LCAgbWFuIHdpbGwgY29tcHJlc3MgYW5kIHN0b3JlIHRoZSBjYXQgZmlsZSBpbgogICAgICAgdGhl IGJhY2tncm91bmQuCgogICAgICAgVGhlIGZpbHRlcnMgYXJlIGRlY2lwaGVyZWQgYnkgYSBudW1i ZXIgb2YgbWVhbnMuIEZpcnN0bHksICB0aGUgIGNvbW1hbmQKICAgICAgIGxpbmUgb3B0aW9uIOKI 4oiScCBvciB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgJE1BTlJPRkZTRVEgaXMgaW50ZXJyb2dh dGVkLgogICAgICAgSWYg4ojiiJJwIHdhcyBub3QgdXNlZCBhbmQgdGhlIGVudmlyb25tZW50IHZh cmlhYmxlIHdhcyBub3Qgc2V0LCAgdGhlICBpbmnigJAKICAgICAgIHRpYWwgIGxpbmUgIG9mICB0 aGUgbnJvZmYgZmlsZSBpcyBwYXJzZWQgZm9yIGEgcHJlcHJvY2Vzc29yIHN0cmluZy4gIFRvCiAg ICAgICBjb250YWluIGEgdmFsaWQgcHJlcHJvY2Vzc29yIHN0cmluZywgdGhlIGZpcnN0IGxpbmUg bXVzdCByZXNlbWJsZQoKICAgICAgIOKA4oCZXCIgPHN0cmluZz4KCiAgICAgICB3aGVyZSBzdHJp bmcgY2FuIGJlIGFueSBjb21iaW5hdGlvbiBvZiBsZXR0ZXJzIGRlc2NyaWJlZCBieSAgb3B0aW9u ICDiiOKIknAKICAgICAgIGJlbG93LgoKICAgICAgIElmICBub25lIG9mIHRoZSBhYm92ZSBtZXRo b2RzIHByb3ZpZGUgYW55IGZpbHRlciBpbmZvcm1hdGlvbiwgYSBkZWZhdWx0CiAgICAgICBzZXQg aXMgdXNlZC4KCiAgICAgICBBIGZvcm1hdHRpbmcgcGlwZWxpbmUgaXMgZm9ybWVkIGZyb20gdGhl IGZpbHRlcnMgYW5kIHRoZSAgcHJpbWFyeSAgZm9y4oCQCiAgICAgICBtYXR0ZXIgIChucm9mZiBv ciBbdGddcm9mZiB3aXRoIOKI4oiSdCkgYW5kIGV4ZWN1dGVkLiAgQWx0ZXJuYXRpdmVseSwgaWYg YW4KICAgICAgIGV4ZWN1dGFibGUgcHJvZ3JhbSBtYW5kYl9uZm10IChvciBtYW5kYl90Zm10IHdp dGgg4ojiiJJ0KSBleGlzdHMgaW4gdGhlIG1hbgogICAgICAgdHJlZSAgcm9vdCwgIGl0ICBpcyBl eGVjdXRlZCBpbnN0ZWFkLiAgSXQgZ2V0cyBwYXNzZWQgdGhlIG1hbnVhbCBzb3VyY2UKICAgICAg IGZpbGUsIHRoZSBwcmVwcm9jZXNzb3Igc3RyaW5nLCBhbmQgb3B0aW9uYWxseSB0aGUgZGV2aWNl IHNwZWNpZmllZCB3aXRoCiAgICAgICDiiOKIklQgb3Ig4ojiiJJFIGFzIGFyZ3VtZW50cy4KCk9Q VElPTlMKICAgICAgIE5vbiBhcmd1bWVudCBvcHRpb25zIHRoYXQgYXJlIGR1cGxpY2F0ZWQgZWl0 aGVyIG9uIHRoZSBjb21tYW5kIGxpbmUsIGluCiAgICAgICAkTUFOT1BULCBvciBib3RoLCBhcmUg bm90IGhhcm1mdWwuICBGb3Igb3B0aW9ucyB0aGF0IHJlcXVpcmUgIGFuICBhcmd14oCQCiAgICAg ICBtZW50LCBlYWNoIGR1cGxpY2F0aW9uIHdpbGwgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIGFyZ3Vt ZW50IHZhbHVlLgoKICAgICAgIOKI4oiSbCwg4ojiiJLiiOKIkmxvY2Fs4ojiiJJmaWxlCiAgICAg ICAgICAgICAgQWN0aXZhdGUgIOKAmGxvY2Fs4oCZICBtb2RlLiAgIEZvcm1hdCBhbmQgZGlzcGxh eSBsb2NhbCBtYW51YWwgZmlsZXMKICAgICAgICAgICAgICBpbnN0ZWFkIG9mIHNlYXJjaGluZyB0 aHJvdWdoICB0aGUgIHN5c3RlbeKAmXMgIG1hbnVhbCAgY29sbGVjdGlvbi4KICAgICAgICAgICAg ICBFYWNoIG1hbnVhbCBwYWdlIGFyZ3VtZW50IHdpbGwgYmUgaW50ZXJwcmV0ZWQgYXMgYW4gbnJv ZmYgc291cmNlCiAgICAgICAgICAgICAgZmlsZSBpbiB0aGUgY29ycmVjdCBmb3JtYXQuICBObyBj YXQgZmlsZSBpcyBwcm9kdWNlZC4gIElmIOKAmeKIkuKAmSBpcwogICAgICAgICAgICAgIGxpc3Rl ZCAgYXMgb25lIG9mIHRoZSBhcmd1bWVudHMsIGlucHV0IHdpbGwgYmUgdGFrZW4gZnJvbSBzdGRp bi4KICAgICAgICAgICAgICBXaGVuIHRoaXMgb3B0aW9uIGlzIG5vdCB1c2VkLCBhbmQgbWFuIGZh aWxzICB0byAgZmluZCAgdGhlICBwYWdlCiAgICAgICAgICAgICAgcmVxdWlyZWQsICBiZWZvcmUg IGRpc3BsYXlpbmcgIHRoZSBlcnJvciBtZXNzYWdlLCBpdCBhdHRlbXB0cyB0bwogICAgICAgICAg ICAgIGFjdCBhcyBpZiB0aGlzIG9wdGlvbiB3YXMgc3VwcGxpZWQsIHVzaW5nIHRoZSBuYW1lIGFz IGEgZmlsZW5hbWUKICAgICAgICAgICAgICBhbmQgbG9va2luZyBmb3IgYW4gZXhhY3QgbWF0Y2gu CgogICAgICAg4ojiiJJMIGxvY2FsZSwg4ojiiJLiiOKIkmxvY2FsZT1sb2NhbGUKICAgICAgICAg ICAgICBtYW4gd2lsbCBub3JtYWxseSBkZXRlcm1pbmUgeW91ciBjdXJyZW50IGxvY2FsZSBieSBh IGNhbGwgdG8gdGhlCiAgICAgICAgICAgICAgQyBmdW5jdGlvbiBzZXRsb2NhbGUoMykgd2hpY2gg aW50ZXJyb2dhdGVzICB2YXJpb3VzICBlbnZpcm9ubWVudAogICAgICAgICAgICAgIHZhcmlhYmxl cywgIHBvc3NpYmx5ICBpbmNsdWRpbmcgJExDX01FU1NBR0VTIGFuZCAkTEFORy4gIFRvIHRlbeKA kAogICAgICAgICAgICAgIHBvcmFyaWx5IG92ZXJyaWRlIHRoZSBkZXRlcm1pbmVkIHZhbHVlLCB1 c2UgdGhpcyBvcHRpb24gdG8gIHN1cOKAkAogICAgICAgICAgICAgIHBseSBhIGxvY2FsZSBzdHJp bmcgZGlyZWN0bHkgdG8gbWFuLiAgTm90ZSB0aGF0IGl0IHdpbGwgbm90IHRha2UKICAgICAgICAg ICAgICBlZmZlY3QgdW50aWwgdGhlIHNlYXJjaCBmb3IgcGFnZXMgYWN0dWFsbHkgYmVnaW5zLiAg T3V0cHV0ICBzdWNoCiAgICAgICAgICAgICAgYXMgIHRoZSAgaGVscCAgbWVzc2FnZSB3aWxsIGFs d2F5cyBiZSBkaXNwbGF5ZWQgaW4gdGhlIGluaXRpYWxseQogICAgICAgICAgICAgIGRldGVybWlu ZWQgbG9jYWxlLgoKICAgICAgIOKI4oiSRCwg4ojiiJLiiOKIkmRlZmF1bHQKICAgICAgICAgICAg ICBUaGlzIG9wdGlvbiBpcyBub3JtYWxseSBpc3N1ZWQgYXMgIHRoZSAgdmVyeSAgZmlyc3QgIG9w dGlvbiAgYW5kCiAgICAgICAgICAgICAgcmVzZXRzICBtYW7igOKAmXMgIGJlaGF2aW91ciAgdG8g IGl0cyAgZGVmYXVsdC4gIEl0cyB1c2UgaXMgdG8gcmVzZXQKICAgICAgICAgICAgICB0aG9zZSBv cHRpb25zIHRoYXQgbWF5IGhhdmUgYmVlbiBzZXQgaW4gICRNQU5PUFQuICAgQW55ICBvcHRpb25z CiAgICAgICAgICAgICAgdGhhdCBmb2xsb3cg4ojiiJJEIHdpbGwgaGF2ZSB0aGVpciB1c3VhbCBl ZmZlY3QuCgogICAgICAg4ojiiJJDIGZpbGUsIOKI4oiS4ojiiJJjb25maWfiiOKIkmZpbGU9Zmls ZQogICAgICAgICAgICAgIFVzZSAgdGhpcyAgdXNlciAgY29uZmlndXJhdGlvbiAgZmlsZSAgcmF0 aGVyIHRoYW4gdGhlIGRlZmF1bHQgb2YKICAgICAgICAgICAgICB+Ly5tYW5wYXRoLgoKICAgICAg IOKI4oiS4ojiiJJ3YXJuaW5nc1s9d2FybmluZ3NdCiAgICAgICAgICAgICAgRW5hYmxlIHdhcm5p bmdzIGZyb20gZ3JvZmYuICBUaGlzIG1heSBiZSB1c2VkIHRvIHBlcmZvcm0gIHNhbml0eQogICAg ICAgICAgICAgIGNoZWNrcyBvbiB0aGUgc291cmNlIHRleHQgb2YgbWFudWFsIHBhZ2VzLiAgd2Fy bmluZ3MgaXMgYSBjb21tYeKAkAogICAgICAgICAgICAgIHNlcGFyYXRlZCBsaXN0IG9mIHdhcm5p bmcgbmFtZXM7IGlmICBpdCAgaXMgIG5vdCAgc3VwcGxpZWQsICB0aGUKICAgICAgICAgICAgICBk ZWZhdWx0IGlzICJtYWMiLgoKICAgICAgIOKI4oiSTSBwYXRoLCDiiOKIkuKI4oiSbWFucGF0aD1w YXRoCiAgICAgICAgICAgICAgU3BlY2lmeSAgYW4gYWx0ZXJuYXRlIG1hbnBhdGggdG8gdXNlLiAg QnkgZGVmYXVsdCwgbWFuIHVzZXMgbWFu4oDigJAKICAgICAgICAgICAgICBwYXRoIGRlcml2ZWQg Y29kZSB0byBkZXRlcm1pbmUgdGhlIHBhdGggdG8gc2VhcmNoLiAgVGhpcyAgb3B0aW9uCiAgICAg ICAgICAgICAgb3ZlcnJpZGVzIHRoZSAkTUFOUEFUSCBlbnZpcm9ubWVudCB2YXJpYWJsZSBhbmQg Y2F1c2VzIG9wdGlvbiDiiOKIkm0KICAgICAgICAgICAgICB0byBiZSBpZ25vcmVkLgoKICAgICAg ICAgICAgICBBIHBhdGggc3BlY2lmaWVkIGFzIGEgbWFucGF0aCBtdXN0IGJlIHRoZSByb290IG9m IGEgbWFudWFsICBwYWdlCiAgICAgICAgICAgICAgaGllcmFyY2h5ICBzdHJ1Y3R1cmVkICBpbnRv ICBzZWN0aW9ucyBhcyBkZXNjcmliZWQgaW4gdGhlIG1hbuKAkGRiCiAgICAgICAgICAgICAgbWFu dWFsICh1bmRlciAiVGhlIG1hbnVhbCBwYWdlIHN5c3RlbSIpLiAgVG8gdmlldyAgbWFudWFsICBw YWdlcwogICAgICAgICAgICAgIG91dHNpZGUgc3VjaCBoaWVyYXJjaGllcywgc2VlIHRoZSDiiOKI kmwgb3B0aW9uLgoKICAgICAgIOKI4oiSUCBwYWdlciwg4ojiiJLiiOKIknBhZ2VyPXBhZ2VyCiAg ICAgICAgICAgICAgU3BlY2lmeSAgd2hpY2ggb3V0cHV0IHBhZ2VyIHRvIHVzZS4gIEJ5IGRlZmF1 bHQsIG1hbiB1c2VzIHBhZ2Vy4oCQCiAgICAgICAgICAgICAgcy4gIFRoaXMgb3B0aW9uIG92ZXJy aWRlcyB0aGUgICRNQU5QQUdFUiAgZW52aXJvbm1lbnQgIHZhcmlhYmxlLAogICAgICAgICAgICAg IHdoaWNoICBpbiB0dXJuIG92ZXJyaWRlcyB0aGUgJFBBR0VSIGVudmlyb25tZW50IHZhcmlhYmxl LiAgSXQgaXMKICAgICAgICAgICAgICBub3QgdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIOKI4oiS ZiBvciDiiOKIkmsuCgogICAgICAg4ojiiJJyIHByb21wdCwg4ojiiJLiiOKIknByb21wdD1wcm9t cHQKICAgICAgICAgICAgICBJZiBhIHJlY2VudCB2ZXJzaW9uIG9mIGxlc3MgaXMgIHVzZWQgIGFz ICB0aGUgIHBhZ2VyLCAgbWFuICB3aWxsCiAgICAgICAgICAgICAgYXR0ZW1wdCAgdG8gIHNldCAg aXRzICBwcm9tcHQgIGFuZCAgc29tZSAgc2Vuc2libGUgb3B0aW9ucy4gIFRoZQogICAgICAgICAg ICAgIGRlZmF1bHQgcHJvbXB0IGxvb2tzIGxpa2UKCiAgICAgICAgICAgICAgIE1hbnVhbCBwYWdl IG5hbWUoc2VjKSBsaW5lIHgKCiAgICAgICAgICAgICAgd2hlcmUgbmFtZSBkZW5vdGVzIHRoZSBt YW51YWwgcGFnZSBuYW1lLCBzZWMgZGVub3RlcyB0aGUgc2VjdGlvbgogICAgICAgICAgICAgIGl0 ICB3YXMgIGZvdW5kICB1bmRlciAgYW5kICB4ICB0aGUgY3VycmVudCBsaW5lIG51bWJlci4gIFRo aXMgaXMKICAgICAgICAgICAgICBhY2hpZXZlZCBieSB1c2luZyB0aGUgJExFU1MgZW52aXJvbm1l bnQgdmFyaWFibGUuCgogICAgICAgICAgICAgIFN1cHBseWluZyDiiOKIknIgd2l0aCBhIHN0cmlu ZyAgd2lsbCAgb3ZlcnJpZGUgIHRoaXMgIGRlZmF1bHQuICAgVGhlCiAgICAgICAgICAgICAgc3Ry aW5nICBtYXkgIGNvbnRhaW4gIHRoZSB0ZXh0ICRNQU5fUE4gd2hpY2ggd2lsbCBiZSBleHBhbmRl ZCB0bwogICAgICAgICAgICAgIHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IG1hbnVhbCBwYWdlIGFu ZCBpdHMgIHNlY3Rpb24gIG5hbWUgIHN1cuKAkAogICAgICAgICAgICAgIHJvdW5kZWQgIGJ5IOKA mCjigJkgYW5kIOKAmCnigJkuICBUaGUgc3RyaW5nIHVzZWQgdG8gcHJvZHVjZSB0aGUgZGVmYXVs dAogICAgICAgICAgICAgIGNvdWxkIGJlIGV4cHJlc3NlZCBhcwoKICAgICAgICAgICAgICBcIE1h bnVhbFwgcGFnZVwgXCRNQU5fUE5cID9sdGxpbmVcICVsdD9MLyVMLjoKICAgICAgICAgICAgICBi eXRlXCAlYkI/cy8lcy4uP1wgKEVORCk6P3BCICVwQlxcJS4uCgogICAgICAgICAgICAgIEl0IGlz IGJyb2tlbiBpbnRvIHR3byBsaW5lcyBoZXJlIGZvciAgdGhlICBzYWtlICBvZiAgcmVhZGFiaWxp dHkKICAgICAgICAgICAgICBvbmx5LiAgIEZvciBpdHMgbWVhbmluZyBzZWUgdGhlIGxlc3MoMSkg bWFudWFsIHBhZ2UuICBUaGUgcHJvbXB0CiAgICAgICAgICAgICAgc3RyaW5nIGlzIGZpcnN0IGV2 YWx1YXRlZCBieSAgdGhlICBzaGVsbC4gICBBbGwgIGRvdWJsZSAgcXVvdGVzLAogICAgICAgICAg ICAgIGJhY2vigJBxdW90ZXMgIGFuZCAgYmFja3NsYXNoZXMgaW4gdGhlIHByb21wdCBtdXN0IGJl IGVzY2FwZWQgYnkgYQogICAgICAgICAgICAgIHByZWNlZGluZyBiYWNrc2xhc2guICBUaGUgcHJv bXB0IHN0cmluZyBtYXkgZW5kIGluIGFuIGVzY2FwZWQgICQKICAgICAgICAgICAgICB3aGljaCAg bWF5ICBiZSBmb2xsb3dlZCBieSBmdXJ0aGVyIG9wdGlvbnMgZm9yIGxlc3MuICBCeSBkZWZhdWx0 CiAgICAgICAgICAgICAgbWFuIHNldHMgdGhlIOKI4oiSaXg4IG9wdGlvbnMuCgogICAgICAgICAg ICAgIElmIHlvdSB3YW50IHRvIG92ZXJyaWRlICBtYW7igJlzICBwcm9tcHQgIHN0cmluZyAgcHJv Y2Vzc2luZyAgY29t4oCQCiAgICAgICAgICAgICAgcGxldGVseSwgIHVzZSB0aGUgJE1BTkxFU1Mg ZW52aXJvbm1lbnQgdmFyaWFibGUgZGVzY3JpYmVkIGJlbG93LgoKICAgICAgIOKI4oiSNywg4oji iJLiiOKIkmFzY2lpCiAgICAgICAgICAgICAgV2hlbiB2aWV3aW5nIGEgcHVyZSBhc2NpaSg3KSBt YW51YWwgcGFnZSBvbiBhIDcgYml0IHRlcm1pbmFsICBvcgogICAgICAgICAgICAgIHRlcm1pbmFs ICBlbXVsYXRvciwgIHNvbWUgIGNoYXJhY3RlcnMgIG1heSBub3QgZGlzcGxheSBjb3JyZWN0bHkK ICAgICAgICAgICAgICB3aGVuIHVzaW5nIHRoZSBsYXRpbjEoNykgIGRldmljZSAgZGVzY3JpcHRp b24gIHdpdGggIEdOVSAgbnJvZmYuCiAgICAgICAgICAgICAgVGhpcyAgb3B0aW9uICBhbGxvd3Mg IHB1cmUgYXNjaWkgbWFudWFsIHBhZ2VzIHRvIGJlIGRpc3BsYXllZCBpbgogICAgICAgICAgICAg IGFzY2lpIHdpdGggdGhlIGxhdGluMSBkZXZpY2UuICBJdCB3aWxsIG5vdCB0cmFuc2xhdGUgYW55 ICBsYXRpbjEKICAgICAgICAgICAgICB0ZXh0LiAgIFRoZSAgZm9sbG93aW5nICB0YWJsZSAgc2hv d3MgdGhlIHRyYW5zbGF0aW9ucyBwZXJmb3JtZWQ6CiAgICAgICAgICAgICAgc29tZSBwYXJ0cyBv ZiBpdCBtYXkgb25seSBiZSBkaXNwbGF5ZWQgcHJvcGVybHkgd2hlbiAgdXNpbmcgIEdOVQogICAg ICAgICAgICAgIG5yb2Zm4oCZcyBsYXRpbjEoNykgZGV2aWNlLgoKCiAgICAgICAgICAgICAgRGVz Y3JpcHRpb24gICAgICAgICAgIE9jdGFsICAgbGF0aW4xICAgYXNjaWkKICAgICAgICAgICAgICAt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAgICAgICAg ICBjb250aW51YXRpb24gaHlwaGVuICAgIDI1NSAgICAgIMKtICAgICAgICDigJAKICAgICAgICAg ICAgICBidWxsZXQgKG1pZGRsZSBkb3QpICAgIDI2NyAgICAgIMK3ICAgICAgICBvCiAgICAgICAg ICAgICAgYWN1dGUgYWNjZW50ICAgICAgICAgICAyNjQgICAgICDCtCAgICAgICAg4oCZCiAgICAg ICAgICAgICAgbXVsdGlwbGljYXRpb24gc2lnbiAgICAzMjcgICAgICDDlyAgICAgICAgeAoKICAg ICAgICAgICAgICBJZiAgdGhlICBsYXRpbjEgIGNvbHVtbiBkaXNwbGF5cyBjb3JyZWN0bHksIHlv dXIgdGVybWluYWwgbWF5IGJlCiAgICAgICAgICAgICAgc2V0IHVwIGZvciBsYXRpbjEgY2hhcmFj dGVycyBhbmQgdGhpcyBvcHRpb24gaXMgIG5vdCAgbmVjZXNzYXJ5LgogICAgICAgICAgICAgIElm ICB0aGUgIGxhdGluMSBhbmQgYXNjaWkgY29sdW1ucyBhcmUgaWRlbnRpY2FsLCB5b3UgYXJlIHJl YWRpbmcKICAgICAgICAgICAgICB0aGlzIHBhZ2UgdXNpbmcgdGhpcyBvcHRpb24gb3IgbWFuICBk aWQgIG5vdCAgZm9ybWF0ICB0aGlzICBwYWdlCiAgICAgICAgICAgICAgdXNpbmcgIHRoZSAgbGF0 aW4xICBkZXZpY2UgZGVzY3JpcHRpb24uICBJZiB0aGUgbGF0aW4xIGNvbHVtbiBpcwogICAgICAg ICAgICAgIG1pc3Npbmcgb3IgY29ycnVwdCwgeW91IG1heSBuZWVkIHRvIHZpZXcgbWFudWFsIHBh Z2VzIHdpdGggIHRoaXMKICAgICAgICAgICAgICBvcHRpb24uCgogICAgICAgICAgICAgIFRoaXMg IG9wdGlvbiBpcyBpZ25vcmVkIHdoZW4gdXNpbmcgb3B0aW9ucyDiiOKIknQsIOKI4oiSSCwg4oji iJJULCBvciDiiOKIklogYW5kCiAgICAgICAgICAgICAgbWF5IGJlIHVzZWxlc3MgZm9yIG5yb2Zm IG90aGVyIHRoYW4gR05V4oDigJlzLgoKICAgICAgIOKI4oiSUyBsaXN0LCDiiOKIknMgbGlzdCwg 4ojiiJLiiOKIknNlY3Rpb25zPWxpc3QKICAgICAgICAgICAgICBMaXN0IGlzIGEgY29sb27igJAg b3IgY29tbWHigJBzZXBhcmF0ZWQgIGxpc3QgIG9mICDigJhvcmRlciAgc3BlY2lmaWPigJkKICAg ICAgICAgICAgICBtYW51YWwgIHNlY3Rpb25zICB0byBzZWFyY2guICBUaGlzIG9wdGlvbiBvdmVy cmlkZXMgdGhlICRNQU5TRUNUCiAgICAgICAgICAgICAgZW52aXJvbm1lbnQgdmFyaWFibGUuICAo VGhlIOKI4oiScyAgc3BlbGxpbmcgIGlzICBmb3IgIGNvbXBhdGliaWxpdHkKICAgICAgICAgICAg ICB3aXRoIFN5c3RlbSBWLikKCiAgICAgICDiiOKIkmEsIOKI4oiS4ojiiJJhbGwKICAgICAgICAg ICAgICBCeSAgZGVmYXVsdCwgIG1hbiAgd2lsbCAgZXhpdCBhZnRlciBkaXNwbGF5aW5nIHRoZSBt b3N0IHN1aXRhYmxlCiAgICAgICAgICAgICAgbWFudWFsIHBhZ2UgaXQgZmluZHMuICBVc2luZyB0 aGlzIG9wdGlvbiBmb3JjZXMgbWFuICB0byAgZGlzcGxheQogICAgICAgICAgICAgIGFsbCAgdGhl IG1hbnVhbCBwYWdlcyB3aXRoIG5hbWVzIHRoYXQgbWF0Y2ggdGhlIHNlYXJjaCBjcml0ZXJpYS4K CiAgICAgICDiiOKIkmMsIOKI4oiS4ojiiJJjYXRtYW4KICAgICAgICAgICAgICBUaGlzIG9wdGlv biBpcyBub3QgZm9yIGdlbmVyYWwgdXNlIGFuZCBzaG91bGQgb25seSAgYmUgIHVzZWQgIGJ5CiAg ICAgICAgICAgICAgdGhlIGNhdG1hbiBwcm9ncmFtLgoKICAgICAgIOKI4oiSZCwg4ojiiJLiiOKI kmRlYnVnCiAgICAgICAgICAgICAgUHJpbnQgbG90cyBvZiBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24u CgogICAgICAg4ojiiJJlIHN1YuKAkGV4dGVuc2lvbiwg4ojiiJLiiOKIkmV4dGVuc2lvbj1zdWLi gJBleHRlbnNpb24KICAgICAgICAgICAgICBTb21lIHN5c3RlbXMgaW5jb3Jwb3JhdGUgbGFyZ2Ug cGFja2FnZXMgb2YgbWFudWFsIHBhZ2VzLCBzdWNoIGFzCiAgICAgICAgICAgICAgdGhvc2UgdGhh dCBhY2NvbXBhbnkgdGhlIFRjbCBwYWNrYWdlLCBpbnRvIHRoZSBtYWluIG1hbnVhbCAgcGFnZQog ICAgICAgICAgICAgIGhpZXJhcmNoeS4gIFRvIGdldCBhcm91bmQgdGhlIHByb2JsZW0gb2YgaGF2 aW5nIHR3byBtYW51YWwgcGFnZXMKICAgICAgICAgICAgICB3aXRoIHRoZSBzYW1lIG5hbWUgc3Vj aCBhcyBleGl0KDMpLCB0aGUgVGNsIHBhZ2VzICB3ZXJlICB1c3VhbGx5CiAgICAgICAgICAgICAg YWxsICBhc3NpZ25lZCAgdG8gIHNlY3Rpb24gbC4gIEFzIHRoaXMgaXMgdW5mb3J0dW5hdGUsIGl0 IGlzIG5vdwogICAgICAgICAgICAgIHBvc3NpYmxlIHRvIHB1dCB0aGUgcGFnZXMgaW4gdGhlIGNv cnJlY3Qgc2VjdGlvbiwgYW5kIHRvICBhc3NpZ24KICAgICAgICAgICAgICBhIHNwZWNpZmljIOKA mGV4dGVuc2lvbuKAmSB0byB0aGVtLCBpbiB0aGlzIGNhc2UsIGV4aXQoM3RjbCkuICBVbmRlcgog ICAgICAgICAgICAgIG5vcm1hbCBvcGVyYXRpb24sIG1hbiB3aWxsICBkaXNwbGF5ICBleGl0KDMp ICBpbiAgcHJlZmVyZW5jZSAgdG8KICAgICAgICAgICAgICBleGl0KDN0Y2wpLiAgIFRvIG5lZ290 aWF0ZSB0aGlzIHNpdHVhdGlvbiBhbmQgdG8gYXZvaWQgaGF2aW5nIHRvCiAgICAgICAgICAgICAg a25vdyB3aGljaCBzZWN0aW9uIHRoZSBwYWdlIHlvdSByZXF1aXJlIHJlc2lkZXMgaW4sICBpdCAg aXMgIG5vdwogICAgICAgICAgICAgIHBvc3NpYmxlICB0byAgZ2l2ZSAgbWFuICBhIHN1YuKAkGV4 dGVuc2lvbiBzdHJpbmcgaW5kaWNhdGluZyB3aGljaAogICAgICAgICAgICAgIHBhY2thZ2UgdGhl IHBhZ2UgbXVzdCBiZWxvbmcgdG8uICBVc2luZyB0aGUgYWJvdmUgZXhhbXBsZSwgIHN1cOKAkAog ICAgICAgICAgICAgIHBseWluZyAgdGhlICBvcHRpb24gIOKI4oiSZSB0Y2wgIHRvICBtYW4gd2ls bCByZXN0cmljdCB0aGUgc2VhcmNoIHRvCiAgICAgICAgICAgICAgcGFnZXMgaGF2aW5nIGFuIGV4 dGVuc2lvbiBvZiAqdGNsLgoKICAgICAgIOKI4oiSZiwg4ojiiJLiiOKIkndoYXRpcwogICAgICAg ICAgICAgIEVxdWl2YWxlbnQgdG8gd2hhdGlzLiAgRGlzcGxheSBhIHNob3J0IGRlc2NyaXB0aW9u IGZyb20gdGhlIG1hbuKAkAogICAgICAgICAgICAgIHVhbCBwYWdlLCBpZiBhdmFpbGFibGUuIFNl ZSB3aGF0aXMoMSkgZm9yIGRldGFpbHMuCgogICAgICAg4ojiiJJoLCDiiOKIkuKI4oiSaGVscAog ICAgICAgICAgICAgIFByaW50IGEgaGVscCBtZXNzYWdlIGFuZCBleGl0LgoKICAgICAgIOKI4oiS aSwg4ojiiJLiiOKIkmlnbm9yZeKI4oiSY2FzZQogICAgICAgICAgICAgIElnbm9yZSAgY2FzZSAg d2hlbiAgc2VhcmNoaW5nICBmb3IgIG1hbnVhbCAgcGFnZXMuICAgVGhpcyBpcyB0aGUKICAgICAg ICAgICAgICBkZWZhdWx0LgoKICAgICAgIOKI4oiSSSwg4ojiiJLiiOKIkm1hdGNo4ojiiJJjYXNl CiAgICAgICAgICAgICAgU2VhcmNoIGZvciBtYW51YWwgcGFnZXMgY2FzZeKAkHNlbnNpdGl2ZWx5 LgoKICAgICAgIOKI4oiSaywg4ojiiJLiiOKIkmFwcm9wb3MKICAgICAgICAgICAgICBFcXVpdmFs ZW50IHRvIGFwcm9wb3MuICBTZWFyY2ggdGhlIHNob3J0ICBtYW51YWwgIHBhZ2UgIGRlc2NyaXDi gJAKICAgICAgICAgICAgICB0aW9ucyAgZm9yIGtleXdvcmRzIGFuZCBkaXNwbGF5IGFueSBtYXRj aGVzLiAgU2VlIGFwcm9wb3MoMSkgZm9yCiAgICAgICAgICAgICAgZGV0YWlscy4KCiAgICAgICDi iOKIkm0gc3lzdGVtWywuLi5dLCDiiOKIkuKI4oiSc3lzdGVtcz1zeXN0ZW1bLC4uLl0KICAgICAg ICAgICAgICBJZiB0aGlzIHN5c3RlbSBoYXMgYWNjZXNzIHRvICBvdGhlciAgb3BlcmF0aW5nICBz eXN0ZW3igJlzICBtYW51YWwKICAgICAgICAgICAgICBwYWdlcywgIHRoZXkgY2FuIGJlIGFjY2Vz c2VkIHVzaW5nIHRoaXMgb3B0aW9uLiAgVG8gc2VhcmNoIGZvciBhCiAgICAgICAgICAgICAgbWFu dWFsIHBhZ2UgZnJvbSBOZXdPU+KAmXMgbWFudWFsIHBhZ2UgY29sbGVjdGlvbiwgdXNlIHRoZSAg b3B0aW9uCiAgICAgICAgICAgICAg4ojiiJJtIE5ld09TLgoKICAgICAgICAgICAgICBUaGUgIHN5 c3RlbSAgc3BlY2lmaWVkICBjYW4gIGJlIGEgY29tYmluYXRpb24gb2YgY29tbWEgZGVsaW1pdGVk CiAgICAgICAgICAgICAgb3BlcmF0aW5nIHN5c3RlbSBuYW1lcy4gIFRvIGluY2x1ZGUgYSBzZWFy Y2ggb2YgdGhlIG5hdGl2ZSBvcGVy4oCQCiAgICAgICAgICAgICAgYXRpbmcgIHN5c3RlbeKAmXMg bWFudWFsIHBhZ2VzLCBpbmNsdWRlIHRoZSBzeXN0ZW0gbmFtZSBtYW4gaW4gdGhlCiAgICAgICAg ICAgICAgYXJndW1lbnQgc3RyaW5nLiAgVGhpcyBvcHRpb24gd2lsbCBvdmVycmlkZSB0aGUgJFNZ U1RFTSBlbnZpcm9u4oCQCiAgICAgICAgICAgICAgbWVudCB2YXJpYWJsZS4KCiAgICAgICDiiOKI knAgc3RyaW5nLCDiiOKIkuKI4oiScHJlcHJvY2Vzc29yPXN0cmluZwogICAgICAgICAgICAgIFNw ZWNpZnkgIHRoZSAgc2VxdWVuY2UgIG9mICBwcmVwcm9jZXNzb3JzIHRvIHJ1biBiZWZvcmUgbnJv ZmYgb3IKICAgICAgICAgICAgICB0cm9mZi9ncm9mZi4gIE5vdCBhbGwgaW5zdGFsbGF0aW9ucyB3 aWxsIGhhdmUgYSBmdWxsIHNldCBvZiBwcmXigJAKICAgICAgICAgICAgICBwcm9jZXNzb3JzLiAg IFNvbWUgIG9mIHRoZSBwcmVwcm9jZXNzb3JzIGFuZCB0aGUgbGV0dGVycyB1c2VkIHRvCiAgICAg ICAgICAgICAgZGVzaWduYXRlIHRoZW0gYXJlOiBlcW4gKGUpLCBncmFwIChnKSwgcGljIChwKSwg dGJsICh0KSwgIHZncmluZAogICAgICAgICAgICAgICh2KSwgICByZWZlciAgIChyKS4gICAgVGhp cyAgb3B0aW9uICBvdmVycmlkZXMgIHRoZSAgJE1BTlJPRkZTRVEKICAgICAgICAgICAgICBlbnZp cm9ubWVudCB2YXJpYWJsZS4gIHpzb2VsaW0gaXMgYWx3YXlzIHJ1biBhcyB0aGUgIHZlcnkgIGZp cnN0CiAgICAgICAgICAgICAgcHJlcHJvY2Vzc29yLgoKICAgICAgIOKI4oiSdSwg4ojiiJLiiOKI knVwZGF0ZQogICAgICAgICAgICAgIFRoaXMgIG9wdGlvbiAgY2F1c2VzIG1hbiB0byBwZXJmb3Jt IGFuIOKAmGlub2RlIGxldmVs4oCZIGNvbnNpc3RlbmN5CiAgICAgICAgICAgICAgY2hlY2sgb24g aXRzIGRhdGFiYXNlIGNhY2hlcyB0byBlbnN1cmUgdGhhdCB0aGV5IGFyZSBhbiBhY2N1cmF0ZQog ICAgICAgICAgICAgIHJlcHJlc2VudGF0aW9uICBvZiAgdGhlICBmaWxlc3lzdGVtLiAgSXQgd2ls bCBvbmx5IGhhdmUgYSB1c2VmdWwKICAgICAgICAgICAgICBlZmZlY3QgaWYgbWFuIGlzIGluc3Rh bGxlZCB3aXRoIHRoZSBzZXR1aWQgYml0IHNldC4KCiAgICAgICDiiOKIknQsIOKI4oiS4ojiiJJ0 cm9mZgogICAgICAgICAgICAgIFVzZSBncm9mZiDigJBtYW5kb2MgdG8gZm9ybWF0IHRoZSBtYW51 YWwgIHBhZ2UgIHRvICBzdGRvdXQuICAgVGhpcwogICAgICAgICAgICAgIG9wdGlvbiBpcyBub3Qg cmVxdWlyZWQgaW4gY29uanVuY3Rpb24gd2l0aCDiiOKIkkgsIOKI4oiSVCwgb3Ig4ojiiJJaLgoK ICAgICAgIOKI4oiSVFtkZXZpY2VdLCDiiOKIkuKI4oiSdHJvZmbiiOKIkmRldmljZVs9ZGV2aWNl XQogICAgICAgICAgICAgIFRoaXMgb3B0aW9uIGlzIHVzZWQgdG8gY2hhbmdlIGdyb2ZmIChvciBw b3NzaWJseSB0cm9mZuKA4oCZcykgb3V0cHV0CiAgICAgICAgICAgICAgdG8gYmUgc3VpdGFibGUg Zm9yIGEgZGV2aWNlIG90aGVyIHRoYW4gdGhlIGRlZmF1bHQuICBJdCAgaW1wbGllcwogICAgICAg ICAgICAgIOKI4oiSdC4gICBFeGFtcGxlcyAgKHByb3ZpZGVkICB3aXRoIEdyb2Zm4oCQMS4xNykg aW5jbHVkZSBkdmksIGxhdGluMSwKICAgICAgICAgICAgICBwcywgdXRmOCwgWDc1IGFuZCBYMTAw LgoKICAgICAgIOKI4oiSWFtkcGldLCDiiOKIkuKI4oiSZ3hkaXR2aWV3Wz1kcGldCiAgICAgICAg ICAgICAgVGhpcyBvcHRpb24gZGlzcGxheXMgdGhlIG91dHB1dCBvZiBncm9mZiBpbiBhICBncmFw aGljYWwgIHdpbmRvdwogICAgICAgICAgICAgIHVzaW5nIHRoZSBneGRpdHZpZXcgcHJvZ3JhbS4g IFRoZSBkcGkgKGRvdHMgcGVyIGluY2gpIG1heSBiZSA3NSwKICAgICAgICAgICAgICA3NeKAkDEy LCAxMDAsIG9yIDEwMOKAkDEyLCBkZWZhdWx0aW5nIHRvIDc1OyB0aGUg4oCQMTIgdmFyaWFudHMg dXNlICBhCiAgICAgICAgICAgICAgMTLigJBwb2ludCAgYmFzZSAgZm9udC4gICBUaGlzICBvcHRp b24gIGltcGxpZXMgIOKI4oiSVCAgd2l0aCB0aGUgWDc1LAogICAgICAgICAgICAgIFg3NeKAkDEy LCBYMTAwLCBvciBYMTAw4oCQMTIgZGV2aWNlIHJlc3BlY3RpdmVseS4KCiAgICAgICDiiOKIklos IOKI4oiS4ojiiJJkaXRyb2ZmCiAgICAgICAgICAgICAgZ3JvZmYgd2lsbCBydW4gdHJvZmYgYW5k IHRoZW4gdXNlIGFuIGFwcHJvcHJpYXRlICBwb3N04oCQcHJvY2Vzc29yCiAgICAgICAgICAgICAg dG8gIHByb2R1Y2UgIG91dHB1dCAgc3VpdGFibGUgIGZvciAgdGhlIGNob3NlbiBkZXZpY2UuICBJ ZiBncm9mZgogICAgICAgICAgICAgIOKAkG1hbmRvYyBpcyBncm9mZiwgdGhpcyBvcHRpb24gaXMg cGFzc2VkIHRvIGdyb2ZmIGFuZCAgd2lsbCAgc3Vw4oCQCiAgICAgICAgICAgICAgcHJlc3MgdGhl IHVzZSBvZiBhIHBvc3TigJBwcm9jZXNzb3IuICBJdCBpbXBsaWVzIOKI4oiSdC4KCiAgICAgICDi iOKIkkhbYnJvd3Nlcl0sIOKI4oiS4ojiiJJodG1sWz1icm93c2VyXQogICAgICAgICAgICAgIFRo aXMgIG9wdGlvbiAgd2lsbCAgY2F1c2UgZ3JvZmYgdG8gcHJvZHVjZSBIVE1MIG91dHB1dCwgYW5k IHdpbGwKICAgICAgICAgICAgICBkaXNwbGF5IHRoYXQgb3V0cHV0IGluIGEgd2ViIGJyb3dzZXIu ICBUaGUgY2hvaWNlIG9mIGJyb3dzZXIgIGlzCiAgICAgICAgICAgICAgZGV0ZXJtaW5lZCAgYnkg dGhlIG9wdGlvbmFsIGJyb3dzZXIgYXJndW1lbnQgaWYgb25lIGlzIHByb3ZpZGVkLAogICAgICAg ICAgICAgIGJ5IHRoZSAkQlJPV1NFUiAgZW52aXJvbm1lbnQgIHZhcmlhYmxlLCAgb3IgIGJ5ICBh ICBjb21waWxl4oCQdGltZQogICAgICAgICAgICAgIGRlZmF1bHQgIGlmICB0aGF0ICBpcyB1bnNl dCAodXN1YWxseSBseW54KS4gIFRoaXMgb3B0aW9uIGltcGxpZXMKICAgICAgICAgICAgICDiiOKI knQsIGFuZCB3aWxsIG9ubHkgd29yayB3aXRoIEdOVSB0cm9mZi4KCiAgICAgICDiiOKIkkUgZGV2 aWNlLCDiiOKIkuKI4oiSZW5jb2Rpbmc9ZGV2aWNlCiAgICAgICAgICAgICAgR2VuZXJhdGUgb3V0 cHV0IGZvciBhIGNoYXJhY3RlciBlbmNvZGluZyBvdGhlciB0aGFuIHRoZSBkZWZhdWx0LgogICAg ICAgICAgICAgIER1ZSB0byB0aGUgd2F5IG5yb2ZmIGlzIGN1cnJlbnRseSBkZXNpZ25lZCwgdGhl IGFyZ3VtZW50IHRvIHRoaXMKICAgICAgICAgICAgICBmdW5jdGlvbiBtdXN0IGJlIGFuIG5yb2Zm IGRldmljZSBzdWNoIGFzIGFzY2lpLCBsYXRpbjEsIG9yIHV0ZjguCgogICAgICAg4ojiiJJ3LCDi iOKIkuKI4oiSd2hlcmUsIOKI4oiS4ojiiJJsb2NhdGlvbgogICAgICAgICAgICAgIERvbuKAmXQg IGFjdHVhbGx5IGRpc3BsYXkgdGhlIG1hbnVhbCBwYWdlcywgYnV0IGRvIHByaW50IHRoZSBsb2Nh 4oCQCiAgICAgICAgICAgICAgdGlvbihzKSBvZiB0aGUgc291cmNlIG5yb2ZmIGZpbGVzIHRoYXQg d291bGQgYmUgZm9ybWF0dGVkLgoKICAgICAgIOKI4oiSVywg4ojiiJLiiOKIkndoZXJl4ojiiJJj YXQsIOKI4oiS4ojiiJJsb2NhdGlvbuKI4oiSY2F0CiAgICAgICAgICAgICAgRG9u4oCZdCBhY3R1 YWxseSBkaXNwbGF5IHRoZSBtYW51YWwgcGFnZXMsIGJ1dCBkbyBwcmludCB0aGUgIGxvY2HigJAK ICAgICAgICAgICAgICB0aW9uKHMpICBvZiB0aGUgY2F0IGZpbGVzIHRoYXQgd291bGQgYmUgZGlz cGxheWVkLiAgSWYg4oiSdyBhbmQg4oiSVwogICAgICAgICAgICAgIGFyZSBib3RoIHNwZWNpZmll ZCwgcHJpbnQgYm90aCBzZXBhcmF0ZWQgYnkgYSBzcGFjZS4KCiAgICAgICDiiOKIklIgZW5jb2Rp bmcsIOKI4oiS4ojiiJJyZWNvZGU9ZW5jb2RpbmcKICAgICAgICAgICAgICBJbnN0ZWFkIG9mIGZv cm1hdHRpbmcgdGhlIG1hbnVhbCBwYWdlIGluIHRoZSB1c3VhbCAgd2F5LCAgb3V0cHV0CiAgICAg ICAgICAgICAgaXRzICBzb3VyY2UgY29udmVydGVkIHRvIHRoZSBzcGVjaWZpZWQgZW5jb2Rpbmcu ICBJZiB5b3UgYWxyZWFkeQogICAgICAgICAgICAgIGtub3cgdGhlIGVuY29kaW5nIG9mIHRoZSBz b3VyY2UgZmlsZSwgIHlvdSAgY2FuICBhbHNvICB1c2UgIG1hbuKA4oCQCiAgICAgICAgICAgICAg Y29udigxKSAgZGlyZWN0bHkuICAgSG93ZXZlciwgIHRoaXMgb3B0aW9uIGFsbG93cyB5b3UgdG8g Y29udmVydAogICAgICAgICAgICAgIHNldmVyYWwgbWFudWFsIHBhZ2VzIHRvIGEgIHNpbmdsZSAg ZW5jb2RpbmcgIHdpdGhvdXQgIGhhdmluZyAgdG8KICAgICAgICAgICAgICBleHBsaWNpdGx5ICBz dGF0ZSAgdGhlIGVuY29kaW5nIG9mIGVhY2gsIHByb3ZpZGVkIHRoYXQgdGhleSB3ZXJlCiAgICAg ICAgICAgICAgYWxyZWFkeSBpbnN0YWxsZWQgaW4gYSBzdHJ1Y3R1cmUgc2ltaWxhciB0byBhIG1h bnVhbCBwYWdlICBoaWVy4oCQCiAgICAgICAgICAgICAgYXJjaHkuCgogICAgICAg4ojiiJJWLCDi iOKIkuKI4oiSdmVyc2lvbgogICAgICAgICAgICAgIERpc3BsYXkgdmVyc2lvbiBpbmZvcm1hdGlv bi4KCkVYSVQgU1RBVFVTCiAgICAgICAwICAgICAgU3VjY2Vzc2Z1bCBwcm9ncmFtIGV4ZWN1dGlv bi4KCiAgICAgICAxICAgICAgVXNhZ2UsIHN5bnRheCBvciBjb25maWd1cmF0aW9uIGZpbGUgZXJy b3IuCgogICAgICAgMiAgICAgIE9wZXJhdGlvbmFsIGVycm9yLgoKICAgICAgIDMgICAgICBBIGNo aWxkIHByb2Nlc3MgcmV0dXJuZWQgYSBub27igJB6ZXJvIGV4aXQgc3RhdHVzLgoKICAgICAgIDE2 ICAgICBBdCAgbGVhc3Qgb25lIG9mIHRoZSBwYWdlcy9maWxlcy9rZXl3b3JkcyBkaWRu4oCZdCBl eGlzdCBvciB3YXNu4oCZdAogICAgICAgICAgICAgIG1hdGNoZWQuCgpFTlZJUk9OTUVOVAogICAg ICAgTUFOUEFUSAogICAgICAgICAgICAgIElmICRNQU5QQVRIIGlzIHNldCwgaXRzIHZhbHVlIGlz IHVzZWQgYXMgdGhlIHBhdGggdG8gc2VhcmNoICBmb3IKICAgICAgICAgICAgICBtYW51YWwgcGFn ZXMuCgogICAgICAgTUFOUk9GRk9QVAogICAgICAgICAgICAgIFRoZSAgY29udGVudHMgb2YgJE1B TlJPRkZPUFQgYXJlIGFkZGVkIHRvIHRoZSBjb21tYW5kIGxpbmUgZXZlcnkKICAgICAgICAgICAg ICB0aW1lIG1hbiBpbnZva2VzIHRoZSBmb3JtYXR0ZXIgKG5yb2ZmLCB0cm9mZiwgb3IgZ3JvZmYp LgoKICAgICAgIE1BTlJPRkZTRVEKICAgICAgICAgICAgICBJZiAkTUFOUk9GRlNFUSBpcyBzZXQs IGl0cyB2YWx1ZSBpcyB1c2VkIHRvIGRldGVybWluZSB0aGUgc2V0IG9mCiAgICAgICAgICAgICAg cHJlcHJvY2Vzc29ycyAgdG8gIHBhc3MgIGVhY2ggIG1hbnVhbCBwYWdlIHRocm91Z2guICBUaGUg ZGVmYXVsdAogICAgICAgICAgICAgIHByZXByb2Nlc3NvciBsaXN0IGlzIHN5c3RlbSBkZXBlbmRl bnQuCgogICAgICAgTUFOU0VDVAogICAgICAgICAgICAgIElmICRNQU5TRUNUIGlzIHNldCwgaXRz IHZhbHVlIGlzIGEgY29sb27igJBkZWxpbWl0ZWQgbGlzdCBvZiAgc2Vj4oCQCiAgICAgICAgICAg ICAgdGlvbnMgIGFuZCAgaXQgIGlzICB1c2VkICB0byAgZGV0ZXJtaW5lIHdoaWNoIG1hbnVhbCBz ZWN0aW9ucyB0bwogICAgICAgICAgICAgIHNlYXJjaCBhbmQgaW4gd2hhdCBvcmRlci4KCiAgICAg ICBNQU5QQUdFUiwgUEFHRVIKICAgICAgICAgICAgICBJZiAkTUFOUEFHRVIgb3IgJFBBR0VSIGlz IHNldCAoJE1BTlBBR0VSIGlzIHVzZWQgaW4gcHJlZmVyZW5jZSksCiAgICAgICAgICAgICAgaXRz IHZhbHVlIGlzIHVzZWQgYXMgdGhlIG5hbWUgb2YgdGhlIHByb2dyYW0gdXNlZCB0byBkaXNwbGF5 IHRoZQogICAgICAgICAgICAgIG1hbnVhbCBwYWdlLiAgQnkgZGVmYXVsdCwgcGFnZXIg4oDigJBz IGlzIHVzZWQuCgogICAgICAgTUFOTEVTUwogICAgICAgICAgICAgIElmICRNQU5MRVNTIGlzIHNl dCwgbWFuIHdpbGwgbm90IHBlcmZvcm0gYW55IG9mIGl0cyAgdXN1YWwgIHByb+KAkAogICAgICAg ICAgICAgIGNlc3NpbmcgIHRvIHNldCB1cCBhIHByb21wdCBzdHJpbmcgZm9yIHRoZSBsZXNzIHBh Z2VyLiAgSW5zdGVhZCwKICAgICAgICAgICAgICB0aGUgdmFsdWUgb2YgJE1BTkxFU1Mgd2lsbCBi ZSBjb3BpZWQgdmVyYmF0aW0gaW50byAgJExFU1MuICAgRm9yCiAgICAgICAgICAgICAgZXhhbXBs ZSwgaWYgeW91IHdhbnQgdG8gc2V0IHRoZSBwcm9tcHQgc3RyaW5nIHVuY29uZGl0aW9uYWxseSB0 bwogICAgICAgICAgICAgIOKAnG15IHByb21wdCBzdHJpbmfigJ0sIHNldCAkTUFOTEVTUyB0byDi gJjiiOKIklBzbXkgcHJvbXB0IHN0cmluZ+KAmS4KCiAgICAgICBCUk9XU0VSCiAgICAgICAgICAg ICAgSWYgJEJST1dTRVIgaXMgc2V0LCBpdHMgdmFsdWUgaXMgYSBjb2xvbuKAkGRlbGltaXRlZCBs aXN0IG9mICBjb23igJAKICAgICAgICAgICAgICBtYW5kcywgIGVhY2ggIG9mICB3aGljaCAgaW4g IHR1cm4gIGlzIHVzZWQgdG8gdHJ5IHRvIHN0YXJ0IGEgd2ViCiAgICAgICAgICAgICAgYnJvd3Nl ciBmb3IgbWFuIOKI4oiS4ojiiJJodG1sLiAgSW4gZWFjaCBjb21tYW5kLCAlcyBpcyAgcmVwbGFj ZWQgIGJ5ICBhCiAgICAgICAgICAgICAgZmlsZW5hbWUgIGNvbnRhaW5pbmcgIHRoZSBIVE1MIG91 dHB1dCBmcm9tIGdyb2ZmLCAlJSBpcyByZXBsYWNlZAogICAgICAgICAgICAgIGJ5IGEgc2luZ2xl IHBlcmNlbnQgc2lnbiAoJSksIGFuZCAlYyBpcyByZXBsYWNlZCBieSBhIGNvbG9uICg6KS4KCiAg ICAgICBTWVNURU0gSWYgICRTWVNURU0gIGlzICBzZXQsICBpdCB3aWxsIGhhdmUgdGhlIHNhbWUg ZWZmZWN0IGFzIG9wdGlvbiDiiOKIkm0KICAgICAgICAgICAgICBzdHJpbmcgd2hlcmUgc3RyaW5n IHdpbGwgYmUgdGFrZW4gYXMgJFNZU1RFTeKAmXMgY29udGVudHMuCgogICAgICAgTUFOT1BUIElm ICRNQU5PUFQgaXMgc2V0LCBpdCB3aWxsIGJlIHBhcnNlZCBwcmlvciB0byBtYW7igOKAmXMgY29t bWFuZCBsaW5lCiAgICAgICAgICAgICAgYW5kICBpcyBleHBlY3RlZCB0byBiZSBpbiBhIHNpbWls YXIgZm9ybWF0LiAgQXMgYWxsIG9mIHRoZSBvdGhlcgogICAgICAgICAgICAgIG1hbiBzcGVjaWZp YyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgY2FuIGJlIGV4cHJlc3NlZCAgYXMgIGNvbW1hbmQKICAg ICAgICAgICAgICBsaW5lICBvcHRpb25zLCAgYW5kICBhcmUgIHRodXMgIGNhbmRpZGF0ZXMgZm9y IGJlaW5nIGluY2x1ZGVkIGluCiAgICAgICAgICAgICAgJE1BTk9QVCBpdCBpcyBleHBlY3RlZCB0 aGF0IHRoZXkgd2lsbCBiZWNvbWUgb2Jzb2xldGUuICBOLkIuIEFsbAogICAgICAgICAgICAgIHNw YWNlcyAgdGhhdCAgc2hvdWxkIGJlIGludGVycHJldGVkIGFzIHBhcnQgb2YgYW4gb3B0aW9u4oCZ cyBhcmd14oCQCiAgICAgICAgICAgICAgbWVudCBtdXN0IGJlIGVzY2FwZWQuCgogICAgICAgTUFO V0lEVEgKICAgICAgICAgICAgICBJZiAkTUFOV0lEVEggaXMgc2V0LCBpdHMgdmFsdWUgaXMgdXNl ZCBhcyB0aGUgIGxpbmUgIGxlbmd0aCAgZm9yCiAgICAgICAgICAgICAgd2hpY2ggIG1hbnVhbCBw YWdlcyBzaG91bGQgYmUgZm9ybWF0dGVkLiAgSWYgaXQgaXMgbm90IHNldCwgbWFu4oCQCiAgICAg ICAgICAgICAgdWFsIHBhZ2VzIHdpbGwgYmUgZm9ybWF0dGVkIHdpdGggYSBsaW5lICBsZW5ndGgg IGFwcHJvcHJpYXRlICB0bwogICAgICAgICAgICAgIHRoZSAgY3VycmVudCB0ZXJtaW5hbCAodXNp bmcgYW4gaW9jdGwoMikgaWYgYXZhaWxhYmxlLCB0aGUgdmFsdWUKICAgICAgICAgICAgICBvZiAk Q09MVU1OUywgb3IgZmFsbGluZyBiYWNrIHRvICA4MCAgY2hhcmFjdGVycyAgaWYgIG5laXRoZXIg IGlzCiAgICAgICAgICAgICAgYXZhaWxhYmxlKS4gICBDYXQgcGFnZXMgd2lsbCBvbmx5IGJlIHNh dmVkIHdoZW4gdGhlIGRlZmF1bHQgZm9y4oCQCiAgICAgICAgICAgICAgbWF0dGluZyBjYW4gYmUg dXNlZCwgdGhhdCBpcyB3aGVuIHRoZSB0ZXJtaW5hbCAgbGluZSAgbGVuZ3RoICBpcwogICAgICAg ICAgICAgIGJldHdlZW4gNjYgYW5kIDgwIGNoYXJhY3RlcnMuCgogICAgICAgTUFOX0tFRVBfRk9S TUFUVElORwogICAgICAgICAgICAgIE5vcm1hbGx5LCAgd2hlbiBvdXRwdXQgaXMgbm90IGJlaW5n IGRpcmVjdGVkIHRvIGEgdGVybWluYWwgKHN1Y2gKICAgICAgICAgICAgICBhcyB0byBhIGZpbGUg b3IgYSBwaXBlKSwgZm9ybWF0dGluZyBjaGFyYWN0ZXJzIGFyZSBkaXNjYXJkZWQgIHRvCiAgICAg ICAgICAgICAgbWFrZSAgaXQgIGVhc2llciB0byByZWFkIHRoZSByZXN1bHQgd2l0aG91dCBzcGVj aWFsIHRvb2xzLiAgSG934oCQCiAgICAgICAgICAgICAgZXZlciwgaWYgJE1BTl9LRUVQX0ZPUk1B VFRJTkcgaXMgc2V0ICB0byAgYW55ICBub27igJBlbXB0eSAgdmFsdWUsCiAgICAgICAgICAgICAg dGhlc2UgIGZvcm1hdHRpbmcgIGNoYXJhY3RlcnMgIGFyZSByZXRhaW5lZC4gIFRoaXMgbWF5IGJl IHVzZWZ1bAogICAgICAgICAgICAgIGZvciB3cmFwcGVycyBhcm91bmQgbWFuIHRoYXQgY2FuICBp bnRlcnByZXQgIGZvcm1hdHRpbmcgIGNoYXJhY+KAkAogICAgICAgICAgICAgIHRlcnMuCgogICAg ICAgTEFORywgTENfTUVTU0FHRVMKICAgICAgICAgICAgICBEZXBlbmRpbmcgIG9uIHN5c3RlbSBh bmQgaW1wbGVtZW50YXRpb24sIGVpdGhlciBvciBib3RoIG9mICRMQU5HCiAgICAgICAgICAgICAg YW5kICRMQ19NRVNTQUdFUyB3aWxsIGJlIGludGVycm9nYXRlZCBmb3IgIHRoZSAgY3VycmVudCAg bWVzc2FnZQogICAgICAgICAgICAgIGxvY2FsZS4gIG1hbiB3aWxsIGRpc3BsYXkgaXRzIG1lc3Nh Z2VzIGluIHRoYXQgbG9jYWxlIChpZiBhdmFpbOKAkAogICAgICAgICAgICAgIGFibGUpLiAgU2Vl IHNldGxvY2FsZSgzKSBmb3IgcHJlY2lzZSBkZXRhaWxzLgoKRklMRVMKICAgICAgIC9ldGMvbWFu cGF0aC5jb25maWcKICAgICAgICAgICAgICBtYW7igJBkYiBjb25maWd1cmF0aW9uIGZpbGUuCgog ICAgICAgL3Vzci9zaGFyZS9tYW4KICAgICAgICAgICAgICBBIGdsb2JhbCBtYW51YWwgcGFnZSBo aWVyYXJjaHkuCgogICAgICAgL3Vzci9zaGFyZS9tYW4vaW5kZXguKGJ0fGRifGRpcnxwYWcpCiAg ICAgICAgICAgICAgQSB0cmFkaXRpb25hbCBnbG9iYWwgaW5kZXggZGF0YWJhc2UgY2FjaGUuCgog ICAgICAgL3Zhci9jYWNoZS9tYW4vaW5kZXguKGJ0fGRifGRpcnxwYWcpCiAgICAgICAgICAgICAg QW4gYWx0ZXJuYXRlIG9yIEZIUyBjb21wbGlhbnQgZ2xvYmFsIGluZGV4IGRhdGFiYXNlIGNhY2hl LgoKU0VFIEFMU08KICAgICAgIG1hbmRiKDgpLCBtYW5wYXRoKDEpLCAgbWFucGF0aCg1KSwgIGFw cm9wb3MoMSksICB3aGF0aXMoMSksICBjYXRtYW4oOCksCiAgICAgICBsZXNzKDEpLCAgIG5yb2Zm KDEpLCAgIHRyb2ZmKDEpLCAgZ3JvZmYoMSksICB6c29lbGltKDEpLCAgc2V0bG9jYWxlKDMpLAog ICAgICAgbWFuKDcpLCBhc2NpaSg3KSwgbGF0aW4xKDcpLCB0aGUgbWFu4oCQZGIgcGFja2FnZSBt YW51YWwsIEZTU1RORC4KCkhJU1RPUlkKICAgICAgIDE5OTAsIDE5OTEg4oiSIE9yaWdpbmFsbHkg d3JpdHRlbiBieSBKb2huIFcuIEVhdG9uICAoandlQGNoZS51dGV4YXMuZWR1KS4KCiAgICAgICBE ZWMgMjMgMTk5MjogUmlrIEZhaXRoIChmYWl0aEBjcy51bmMuZWR1KSBhcHBsaWVkIGJ1ZyBmaXhl cyBzdXBwbGllZCBieQogICAgICAgV2lsbGVtIEthc2RvcnAgKHdrYXNkb0BuaWtoZWZrLm5pa2Vm Lm5sKS4KCiAgICAgICAzMHRoIEFwcmlsIDE5OTQg4oiSIDIzcmQgRmVicnVhcnkgMjAwMDogV2ls Zi4gKEcuV2lsZm9yZEBlZS5zdXJyZXkuYWMudWspCiAgICAgICBoYXMgYmVlbiBkZXZlbG9waW5n IGFuZCBtYWludGFpbmluZyB0aGlzIHBhY2thZ2Ugd2l0aCB0aGUgaGVscCBvZiBhIGZldwogICAg ICAgZGVkaWNhdGVkIHBlb3BsZS4KCiAgICAgICAzMHRoICBPY3RvYmVyICAxOTk2ICDiiJIgIDMw dGggIE1hcmNoICAyMDAxOiAgIEZhYnJpemlvICAgUG9sYWNjbyAgIDxmcG/igJAKICAgICAgIGxh Y2NvQGRlYmlhbi5vcmc+ICBtYWludGFpbmVkICBhbmQgZW5oYW5jZWQgdGhpcyBwYWNrYWdlIGZv ciB0aGUgRGViaWFuCiAgICAgICBwcm9qZWN0LCB3aXRoIHRoZSBoZWxwIG9mIGFsbCB0aGUgY29t bXVuaXR5LgoKICAgICAgIDMxc3QgTWFyY2ggMjAwMSDiiJIgcHJlc2VudCBkYXk6IENvbGluICBX YXRzb24gIDxjandhdHNvbkBkZWJpYW4ub3JnPiAgaXMKICAgICAgIG5vdyBkZXZlbG9waW5nIGFu ZCBtYWludGFpbmluZyBtYW7igJBkYi4KCgoKMi41LjEgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDIwMDjigJAwMeKAkDI4ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BTigxKQo= --=-=-= Looking at this file using hexl-find-file, one can see that formatting codes are inserted in the output. See from byte 0xad for example. The coding system is set in man.el by: (coding-system-for-read (if default-enable-multibyte-characters locale-coding-system 'raw-text-unix)) So the coding sytem is utf-8-unix on my system. The aforementioned formatting codes seem as if they are being interpreted as utf8-encoded characters, causing the output from earlier in this bug report. -- Michael Welsh Duggan (md5i@cs.cmu.edu) --=-=-=--