From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/117344 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alan Braslau via ntg-context Newsgroups: gmane.comp.tex.context Subject: Re: update / punctuation / math Date: Sat, 1 Apr 2023 19:46:11 -0600 Message-ID: <20230401194611.4ba30ef3@boo.my.domain> References: Reply-To: mailing list for ConTeXt users Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="27123"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Alan Braslau To: Hans Hagen via ntg-context Original-X-From: ntg-context-bounces@ntg.nl Sun Apr 02 03:46:55 2023 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane-mx.org Original-Received: from [5.39.185.232] (helo=zapf.ntg.nl) by ciao.gmane.io with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pimo3-0006qj-5F for gctc-ntg-context-518@m.gmane-mx.org; Sun, 02 Apr 2023 03:46:55 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id B96631C0D1B; Sun, 2 Apr 2023 03:46:22 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jmEXspUwGS3k; Sun, 2 Apr 2023 03:46:21 +0200 (CEST) Original-Received: from zapf.ntg.nl (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id E29A51C0F19; Sun, 2 Apr 2023 03:46:20 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id 9AB851C0C4C for ; Sun, 2 Apr 2023 03:46:18 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id htOuI9s_4bi9 for ; Sun, 2 Apr 2023 03:46:17 +0200 (CEST) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=17.58.38.50; helo=ms11p00im-qufo17281301.me.com; envelope-from=alan.braslau@icloud.com; receiver= Original-Received: from ms11p00im-qufo17281301.me.com (ms11p00im-qufo17281301.me.com [17.58.38.50]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by zapf.ntg.nl (Postfix) with ESMTPS id 25AD21C04A6 for ; Sun, 2 Apr 2023 03:46:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=icloud.com; s=1a1hai; t=1680399974; bh=d/igVMz8L4bepbVKNRwTw2CSEPFkWJ7AP9B5gCKfIkA=; h=Date:From:To:Subject:Message-ID:MIME-Version:Content-Type; b=UQN/0g9XirDWgLbGV3wFujdsIP7C+YE8lN3R5iIgafAR3xTLVQiOTsugitt84Mh/N N49aJy66gasdQi4duZww5Sj9wspgWNKyisqMGSNzDryYevD1sGT6MDDypiqffKqa0F Wx6zleAGm/5MkN8wOXNl3n0wzqpksB6MDxaU+41A9xwJRDYWD+mfhIZJR3jNZJQvQ1 SruruAkO7AFFkzYW7V6tJLZIAJh+vb5v89m+ycU6li1KiGdfPgFsesKAx9Y0VtbVcw 7zZp2OTGieYXqgVsM1Ymljkw9+SAUwR4VOyWYhf1xhm1xU6CVhpBiMi1//h1OfixEv 9KgaffKc05Ukw== Original-Received: from boo.my.domain (ms11p00im-dlb-asmtpmailmevip.me.com [17.57.154.19]) by ms11p00im-qufo17281301.me.com (Postfix) with ESMTPSA id 7AF8BCC0149; Sun, 2 Apr 2023 01:46:14 +0000 (UTC) In-Reply-To: X-Mailer: Claws Mail 3.19.0 (GTK+ 2.24.33; amd64-portbld-freebsd13.1) X-Proofpoint-GUID: K7Ys_-cw0gX3qrukmGwjFP_ug3ik4TCY X-Proofpoint-ORIG-GUID: K7Ys_-cw0gX3qrukmGwjFP_ug3ik4TCY X-Proofpoint-Virus-Version: =?UTF-8?Q?vendor=3Dfsecure_engine=3D1.1.170-22c6f66c430a71ce266a39bfe25bc?= =?UTF-8?Q?2903e8d5c8f:6.0.425,18.0.572,17.11.62.513.0000000_definitions?= =?UTF-8?Q?=3D2022-01-14=5F01:2022-01-14=5F01,2020-02-14=5F11,2021-12-02?= =?UTF-8?Q?=5F01_signatures=3D0?= X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 phishscore=0 malwarescore=0 mlxscore=0 mlxlogscore=999 bulkscore=0 adultscore=0 suspectscore=0 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2304020014 X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.26 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ntg-context-bounces@ntg.nl Original-Sender: "ntg-context" X-Broken-Reverse-DNS: no host name found for IP address 5.39.185.232 Xref: news.gmane.io gmane.comp.tex.context:117344 Archived-At: SGVyZSBpbiBDb2xvcmFkbywgd2UgbmVlZCAkXHdpZGVjb3dib3loYXQkLgpPZiBjb3Vyc2UsIGNh cmUgc2hvdWxkIGJlIHRha2VuIHNvIHRoYXQgaXQgdHlwZXNldCBwcm9wZXJseSBpbgpyaWdodC10 by1sZWZ0IGFzIHdlbGwuCgpBbGFuCgoKT24gU2F0LCAxIEFwciAyMDIzIDEwOjI3OjQxICswMjAw CkhhbnMgSGFnZW4gdmlhIG50Zy1jb250ZXh0IDxudGctY29udGV4dEBudGcubmw+IHdyb3RlOgoK PiBIaSwKPiAKPiBUaGVyZSBoYXZlIGJlZW4gc29tZSBtYWlscyBhYm91dCBwdW5jdHVhdGlvbiBz cGFjaW5nIGFuZCBhIGZpeCB3YXMKPiBhZGRlZCB0byB0aGUgZW5naW5lIHRoYXQgcmVsYXRlZCB0 byB0aGF0LiBBcyB0ZXN0cyBzaG93ZWQgaXQgdG8gYmUKPiBva2F5IHNvIHdlIG1hZGUgYW4gdXBk YXRlLiBJdCB0b29rIGEgYml0IGxvbmdlciB0aGFuIG5vcm1hbCBiZWNhdXNlCj4gd2Ugd2VyZSBp biB0aGUgbWlkZGxlIG9mIHNvbWUgb3RoZXIgbWF0aCBzdHVmZjogYWRkaXRpb25hbCBmb250cyBh bmQKPiBleHRlbnNpYmxlcy4KPiAKPiBEYW5pZWwgRmxpcG8gbWFpbnRhaW5zIGEgZmV3IG1hdGgg Zm9udHMgKGxpa2UgY29uY3JldGUsIHhjaGFydGVyLCAKPiBlcmV3aG9uLCBrcCwgZXVsZXIpIGFu ZCB0aGUgbGFzdCBmZXcgd2Vla3MgbW9yZSBleHRlbnNpdmUgc3VwcG9ydCBmb3IgCj4gZXh0ZW5z aWJsZXMgd2FzIGFkZGVkIGFuZCBjb25jcmV0ZSBiZWNhbWUgcXVpdGUgbmljZSB0b28sIHNvIHRo ZXNlCj4gZm9udHMgbWFrZSBhIG5pY2UgYmVuY2htYXJrLiBBcyB0aGV5IGFyZSBwYXJ0IG9mIHRo ZSBsbXR4IGluc3RhbGwgYW5kCj4gd2UgbWFkZSBzdXJlIHRvIHN1cHBvcnQgdGhlbS4KPiAKPiBJ biB0aGUgcHJvY2VzcyB3ZSBhZGFwdGVkIG91ciAyMDIzIHJvYWRtYXAgb2Ygd2hpY2ggcGFydCBp cyBhdHRhY2hlZAo+ICh3ZSBpbmNsdWRlZCBhbiBleGFtcGxlIGVuZCB0aGVuIGRlY2lkZWQgdG8g c2hvdyBvZiBjb25jcmV0ZSkuCj4gCj4gV2hlbiB3ZSBnbyB0aHJvdWdoIHRoZSBwcm9jZXNzIG9m ICd1cGdyYWRpbmcnIHdlIG5vdGljZWQgc29tZSAKPiBpbnRlcmVzdGluZyBuYW1lcyBmb3Igc3lt Ym9scyBhbmQgJ2NvbnN0cnVjdHMnLiBRdWl0ZSBzb21lIGNvbWUgZnJvbSAKPiBwbGFpbiBhbmQv b3IgYW1zbWF0aCAoaW4gdGhlIHBhc3QgdGFjbyBhbmQgYWRpdHlhIGRpZCBzb21lIHBvcnRpbmcg dG8gCj4gY29udGV4dCkgYW5kIHdlJ3JlIG5vdCBhbHdheXMgc3VyZSBpZiBzb21ldGhpbmcgaXMg cmVhbGx5IHVzZWQgKG9yCj4gZXZlbiB3aGF0IGl0IHdhcyBpbnRlbmRlZCBmb3IpIHNvIGlmIHlv dSBub3RpY2Ugc29tZXRoaW5nIHdlaXJkIG9yCj4gbWlzc2luZywgbGV0IHVzIGtub3cuIEV4YW1w bGVzIGFyZSB3ZWxjb21lIHRvby4gSXQgbWlnaHQgYWxzbyBiZSB0aGF0Cj4gc29tZXRoaW5nIGNh biBnbyBhd2F5IGJlY2F1c2UgaXQncyBvYnNvbGV0ZSBvciBuZXZlciBuZWVkZWQgKHNvIGZhcgo+ IHdlIGNvdWxkIHJlc2lzdCB0ZSBraWNrLW91dC1zeW1ib2xlLW5hbWUgdGVtcHRhdGlvbiB3aGVu IGl0IGNvbWVzIHRvCj4gc3ltYm9sIG5hbWVzIHRoYXQgd2UgdGhpbmsgbm8gc2FuZSB1c2VyIGNh biByZW1lbWJlciBvciBpbWFnaW5lIHRvIGJlCj4gdGhlcmUpLgo+IAo+IFdoZW4gb2Z0ZW4gYWRk IGV4dHJhIHRlc3RzIHRvIHRoZSB0ZXN0IHN1aXRlIChtYXRoIHN1YnNlY3Rpb24pLgo+IAo+IEhh bnMgJiBNaWthZWwKPiAKPiBwcy4gQWxhbiBhbmQgSSBhcmUgc3RpbGwgbWVzc2luZyBhcm91bmQg d2l0aCBzb21lIGNyb3NzIHJlZmVyZW5jaW5nLiAKPiBUaGF0IGNvZGUgaXMgc3RpbGwgZXhwZXJp bWVudGFsIGFuZCBjYW4gaGF2ZSBpc3N1ZXMgdGhhdCB3ZSdyZQo+IGxvb2tpbmcgYXQgYnV0IGhh cmQgdG8gbmFpbCBkb3duIChodWdlIGNvbXBsZXggY3Jvc3MtcmVmZXJlbmNpbmcKPiBkb2N1bWVu dHMpLiBNb3JlIGFib3V0IHRoYXQgbGF0ZXIuCj4gCj4gPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQo+IAo+IFdlIGFkZGVkIHRoZSB0ZXggb2YgdGhlIHBkZiBiZWxvdwo+IAo+ID09 PT09PSBleHRyYWN0IGZyb20gcm9hZG1hcCA9PT09PT0KPiAKPiBcdXNlbW9kdWxlW2FydGljbGUt YmFzaWMsYWJicmV2aWF0aW9ucy1sb2dvc10KPiAKPiBcc2V0dXBib2R5Zm9udFtjb25jcmV0ZV0K PiAKPiBcc3RhcnR0ZXh0Cj4gCj4gXHN0YXJ0c3ViamVjdFt0aXRsZT1NYXRoIGluIFxDT05URVhU XCByb2FkbWFwXQo+IAo+IFxzdGFydGl0ZW1pemVbbl0KPiAKPiBcc3RhcnRpdGVtCj4gICAgICBB ZnRlciBwbGF5aW5nIHdpdGggbWF0aCBzdXBwb3J0IGZvciBtb3JlIHRoYW4gYSB5ZWFyLCB3ZSBo YXZlCj4gY29tZSB0byB0aGUKPiAgICAgIGNvbmNsdXNpb24gdGhhdCBpdCBpcyB0aW1lIHRvIG1v dmUgb24uIFdlIGhhdmUgYWxyZWFkeSBkaXNjYXJkZWQKPiBpdGFsaWMgY29ycmVjdGlvbiBhbmQg bm93IGFyZSByZXBsYWNpbmcgcnVsZXMgd2l0aCBleHRlbnNpYmxlcy4gTXVjaAo+IHdhcyBhbHJl YWR5IGluCj4gICAgICBwbGFjZSAoYW5kIGFwcGxpZWQpIGJ1dCBleHBlcmllbmNlcyB3aXRoIHR5 cGUgb25lIGFudHlrd2FzIG1hZGUKPiB1cyByZXZpZXcKPiAgICAgIHNvbWUgXE9QRU5UWVBFXCBm b250cy4gTm90IHVzaW5nIHJ1bGVzIG1ha2VzIHNvbWUgb2YgdGhlbSBsb29rIAo+IGJldHRlci4g VGhlCj4gICAgICBlZmZlY3QgaXMgc3VidGxlIGFuZCBwcm9iYWJseSBub3QgXEFNU1wgY29tcGxp YW50LCBidXQgd2UgdGhpbmsgCj4gdGhhdCBpdCB3aWxsCj4gICAgICB3b3JrIG91dCB3ZWxsIGZv ciBzaW1wbGUgbWF0aCBsaWtlIGZyYWN0aW9ucyBvZiBkZWNpbWFsIG51bWJlcnMuCj4gICAgICBD b25zZXF1ZW50bHksIHdlIGhhdmUgYWRkZWQgdG8gb3VyIHNocmlua2luZyB0by1kbyBsaXN0IHRo ZQo+IGJ1cmRlbiB0byBpbnZlc3RpZ2F0ZSB3aGV0aGVyIHdlIGNhbiByZW1vdmUgdGhvc2Ugb2Jz b2xldGUgY29kZSBwYXRocwo+IGZyb20gdGhlIGVuZ2luZS4KPiAgICAgIEFmdGVyIGFsbCwgd2hv IG5lZWRzIGl0YWxpYyBjb3JyZWN0aW9uLCB3aG8gcHJlZmVycyB1Z2x5IHJ1bGVzCj4gdG8gYmVh dXRpZnVsCj4gICAgICBnbHlwaHMsIGFuZCB3aG8gdW5kZXJzdGFuZHMgYWxsIHRoZXNlIGZvbnQg cGFyYW1ldGVycz8KPiBGdXJ0aGVybW9yZSwgYWZ0ZXIgYWxsCj4gICAgICB0aGVzZSB5ZWFycywg d2UgZG9uJ3QgZXhwZWN0IFxPUEVOVFlQRVwgZm9udCBhbmQgXFVOSUNPREVcIG1hdGggCj4gdGVj aG5vbG9naWVzCj4gICAgICB0byBpbXByb3ZlIG11Y2g7IHdlIGRvbid0IGtub3cgaWYgXE1JQ1JP U09GVFwgaXMgZGV2ZWxvcGluZwo+IHRoZWlyIHRlY2hub2xvZ3kKPiAgICAgIGZ1cnRoZXIgYXQg YWxsLiBUaGVyZWZvcmUsIHdlIGFyZSBjb25maWRlbnQgdGhhdCB3aGF0IHdlIGFyZQo+IGRvaW5n IGlzIHRoZSB3YXkKPiAgICAgIGl0IHNob3VsZCBoYXZlIGJlZW4gZG9uZSB3aGVuIG1hdGggd2Fz IHVwZ3JhZGVkLiBIb3BlZnVsbHkgdXNlcnMgCj4gd2lsbCBub3RpY2UKPiAgICAgIHRoZSBpbXBy b3ZlbWVudHMuCj4gXHN0b3BpdGVtCj4gCj4gXHN0YXJ0aXRlbQo+ICAgICAgTWF0aCBhbHNvIG1l YW5zIHBoeXNpY3MgYW5kIHVuaXRzICh0aGF0IHRvcGljIHdhcyBicm91Z2h0IHVwIAo+IHJlY2Vu dGx5IG9uIHRoZQo+ICAgICAgbGlzdCBieSBHYXZpbikuIFRoZXJlZm9yZSwgYmVjYXVzZSB3ZSdy ZSBpbiBjbGVhbnVwIG1vZGUsIHdlCj4gZGVjaWRlZCB0byBlbGltaW5hdGUgc29tZSBtb3JlLiBX aXRoIFxJU09cIG5vdyBpbiBwbGFjZSBmb3IgYSBsb25nCj4gdGltZSwgd2UgYXJlIGdvaW5nIHRv Cj4gICAgICBpZ25vcmUgdGhlIGV4aXN0ZW5jZSBvZiB0aGUgaW5jaCBhcyB1bml0IGZyb20gbm93 IG9uLiBUaGUgdW5pdAo+IHdpbGwgcHJvYmFibHkKPiAgICAgIHJlbWFpbiBpbiB0aGUgZW5naW5l IGZvciBub3N0YWxnaWMgcmVhc29ucywgYnV0IGl0IHdpbGwgbm8gYmUgCj4gYWNjZXB0ZWQgaW4K PiAgICAgIE1XRS4gSW5zdGVhZCwgd2Ugd2lsbCBwcm92aWRlIHNvbWUgbW9yZSBtb2Rlcm4sIGN1 bHR1cmFsbHkKPiBjb3JyZWN0LCBraWQtZnJpZW5kbHkgdW5pdHMgdGhhdCB3ZSB3aWxsIHVzZSBp biBleGFtcGxlcywgbWFudWFscyBhbmQKPiBzdWNoLiBCZWNhdXNlCj4gICAgICB0aGUgZm91ci1w ZXJzb24gc3Ryb25nIHRlYW0gZGVhbGluZyB3aXRoIHRoaXMgd2FudHMgdG8gYXZvaWQKPiBtYWtp bmcgbWlzdGFrZXMsCj4gICAgICB3ZSB3aWxsIGdvIHRocm91Z2ggYSBjYXJlZnVsIGFuZCBzY2ll bnRpZmljYWxseSBzb3VuZCBwcm9jZXNzIG9mIAo+IGNhbGlicmF0aW9uCj4gICAgICBmaXJzdCwg dXNpbmcgYSBzZWxlY3RlZCB0ZXggc2F2dnkgYXVkaWVuY2UuIFdlIGV4cGVjdCB0aGVzZSBuZXcg Cj4gdW5pdHMgdG8gYmUKPiAgICAgIHN0YWJsZSBhIG1vbnRoIGZyb20gbm93LiBCZWxpZXZlIGl0 IG9yIG5vdCwgaW4gdGhlIHByb2Nlc3Mgb2YgCj4gZG9jdW1lbnRpbmcgYWxsCj4gICAgICB0aGlz LCB3ZSBmb3VuZCBhIGJ1Z2xldCBpbiB0aGUgbmV3IG1hdGggZGltZW5zaW9uIHNwYWNpbmcsIHNv IGl0IAo+IGhhcyBhbHJlYWR5Cj4gICAgICBwYWlkIG9mZi4gRXhwZWN0IHRvIGhlYXIgbW9yZSBp biBhIG1vbnRoIG9yIHNvLCBhbmQgZW5qb3kgeW91ciAKPiBpbmNoZXMgYXMgbG9uZwo+ICAgICAg YXMgeW91IHN0aWxsIGNhbi4gSW4gY2FzZSB5b3Ugd29uZGVyIGhvdyB0aGlzIHJlbGF0ZXMgdG8g bWF0aAo+IG90aGVyIHRoYW4KPiAgICAgIG1lbnRpb25lZDogdGhlIG1hdGggc3Vic3lzdGVtIGhh cyAnbXUnIGFzIGFkYXB0aXZlIHVuaXQsIGFuZAo+IHRoYXQgaW5zcGlyZWQgaXMKPiAgICAgIHRv IGNvbWUgdXAgd2l0aCBvbmUgZm9yIHRleHQgKGluIGFkZGl0aW9uIHRvIHR3byBuZXcgbW9yZSBv cgo+IGxlc3MgZml4ZWQgdW5pdHMpLgo+IFxzdG9waXRlbQo+IAo+IFxzdGFydGl0ZW0KPiAgICAg IFRoZSBtYXRoIGZhbWlseSBtb2RlbCBpcyBhIGZ1bmRhbWVudGFsIGNvbmNlcHQgaW4gXFRFWFwg YnV0IHdlIAo+IHRoaW5rIHdlIGNhbgo+ICAgICAgZG8gd2l0aG91dC4gRmlyc3Qgb2YgYWxsLCBc T1BFTlRZUEVcIG1hdGggZm9udHMgaGF2ZSAoZGVzaWduKSAKPiBzY3JpcHQgYW5kCj4gICAgICBz Y3JpcHRzY3JpcHQgc2l6ZXMgYnVpbHQgaW4sIHNvIGZvciB0aGF0IHdlIGhhdmUgb25lIGZhbWls eS4gCj4gU2Vjb25kLCBvbmx5Cj4gICAgICBmdWxsIGJvbGQgKGhlYXZ5KSBtYWtlcyBzZW5zZSBh cyBjb21wYW5pb24gZm9yIHJlZ3VsYXIgbWF0aAo+IHdoaWNoIGlzIHNvbWV0aGluZyB0aGF0IGlu IHByYWN0aWNlIHdlIGNhbiBzdXBwb3J0IG90aGVyd2lzZS4gU28sCj4gdGhpcyBtYWtlcyB1cyBj b25zaWRlciBkcm9wcGluZyBmYW1pbGllcyBhbHRvZ2V0aGVyIHdoaWNoIHRoZW4KPiBwcm92aWRl cyAobWVtKSBzcGFjZSBmb3IKPiAgICAgIGV2ZW4gbW9yZSBjbGFzc2VzIG9yIGRpY3Rpb25hcmll cy4gSWYgd2UgbmV2ZXJ0aGVsZXNzIGRlY2lkZSB0bwo+IGtlZXAgZmFtaWxpZXMsIHdlIGNhbiBj ZXJ0YWlubHkgZ28gd2l0aCBsZXNzIHRoYW4gd2UgaGF2ZSBub3csIG1heWJlCj4gdHdvIChvciBm b3VyCj4gICAgICBpZiB3ZSB3YW50IHRvIGJlIGdlbmVyb3VzIGFuZCBhbHNvIHJlc2VtYmxlIG9y aWdpbmFsIHRleCkgb2YKPiB0aGVtIGlzIGVub3VnaC4KPiAgICAgIFdlIGNhbm5vdCBpbWFnaW5l IHVzZXJzIHdhbnRpbmcgbW9yZS4gQXMgYSBzaWRlIG5vdGU6IGNvbXBsZXRlbHkgCj4gZGl2b3Jj aW5nCj4gICAgICBmYW1pbGllcyBjb3VsZCBtYWtlIHRoZSBtYXRoIGVuZ2luZSBhIGJpdCBsZWFu ZXIuIEl0IGlzIGhhcmQgdG8gCj4gZXhwbGFpbiBhbmQKPiAgICAgIHVzZXJzIG9ubHkgY2FyZSBh Ym91dCB0aGUgb3V0Y29tZS4gU28gbW9yZSBvbiB0aGlzIGxhdGVyLgo+IFxzdG9waXRlbQo+IAo+ IFxzdGFydGl0ZW0KPiAgICAgIEFub3RoZXIgcGF0aCB0byBleHBsb3JlIGlzIHRvIGlkZW50aWZ5 IHRoZSBmZXcgYnVpbGRpbmcgYmxvY2tzCj4gdGhhdCBhcmUgbmVlZGVkIGZvciB0eXBlc2V0dGlu ZyBtYXRoLCBhbmQgdGhlbiBkb2luZyBhIGJpdCBtb3JlIGF0Cj4gdGhlIHRleCBlbmQuIE9mCj4g ICAgICBjb3Vyc2UgdGhhdCB3b3VsZCBuaWwgcXVpdGUgc29tZSBlYXJsaWVyIGVmZm9ydCwgd2hp Y2ggaXMgYSBiaXQgCj4gZnJ1c3RyYXRpbmcsCj4gICAgICBidXQgc3RpbGwgXHVua25vd25cIG1h eWJlIHRoZSBtYXRoIGVuZ2luZSBjYW4gYmUgcmVkdWNlZCB0byBhIAo+IGZyYWN0aW9uIG9mCj4g ICAgICB3aGF0IGlzIGlzIG5vdy4KPiBcc3RvcGl0ZW0KPiAKPiBcc3RhcnRpdGVtCj4gICAgICBX aGVuIHdlIGxvb2sgYXQgdGhlIG1hdGggZm9udHMgYW5kIHNvbWUgY2hhcmFjdGVycyBpbiB0aGVy ZSwgd2UgCj4gc29tZXRpbWVzCj4gICAgICB3b25kZXIgd2hhdCBtYWtlcyBzZW5zZS4gRm9yIHNv bWUsIHNlYXJjaGluZyBpbiBlLmcuIGFyWGl2Cj4gYnJpbmdzIG5vIGhpdC4KPiAgICAgIEJhc2lj YWxseSB3ZSBoYXZlIG9ic29sZXRlIG1hdGggc3ltYm9scyBhbmQgY3VycmVudGx5IHVzZWQgb25l LiAKPiBUaGF0IG1hZGUgdXMKPiAgICAgIHRoaW5rIGFib3V0IGFuY2llbnQgbWF0aCB2ZXJzdXMg bW9kZXJuIG1hdGgsIGp1c3QgbGlrZSB0aGVyZSBpcyAKPiBhbmNpZW50IGdyZWVrCj4gICAgICBh bmQgbW9kZXJuIGdyZWVrLiBCZWNhdXNlIG1hdGggaXMgYSBzY3JpcHQgb25lIGNhbiB3b25kZXIg YWJvdXQgCj4gb2Jzb2xldGUgbWF0aAo+ICAgICAgZGlhbGVjdHMgd2l0aCBzeW1ib2xzIGp1c3Qg bGlrZSB0aGVyZSBhcmUgcGxlbnR5IGRlYWwgc2NyaXB0cyBpbiAKPiBcVU5JQ09ERS4gV2UKPiAg ICAgIGFscmVhZHkgYXJlIHdvcmtpbmcgb24gZGljdGlvbmFyaWVzIGJ1dCBhbm90aGVyIGF4aXMg aXMKPiB1c2VhYmlsaXR5LiBcc3RvcGl0ZW0KPiAKPiBcc3RhcnRpdGVtCj4gICAgICBXZSBubyBs b25nZXIgaGF2ZSB0aGUgc21hbGwgLyBsYXJnZSBleHRlbnNpYmxlIGZhbWlseSBtb2RlbCBzbwo+ IHdlIGNhbiBzaW1wbGlmeSBkZWxpbWl0ZXJzIGluIHRoZSBlbmdpbmUuIE5vdCBzb21ldGhpbmcg dXNlcnMgc2hvdWxkCj4gd29ycnkgYWJvdXQuCj4gXHN0b3BpdGVtCj4gCj4gXHN0YXJ0aXRlbQo+ ICAgICAgV2UncmUgbm90IHN1cmUgd2h5IG1hdGggaXMgY29uc2lkZXJlZCBzdGFibGUgYmVjYXVz ZSBldmVyeXRoaW5nCj4gbW92ZWQgZm9yd2FyZC4gVGhlcmVmb3JlIHdlJ3JlIHByZXBhcmluZyBh IGJpZCBmb3IgZXh0cmEgbWF0aCBzeW1ib2xzCj4gYXMgbmVlZGVkIGluCj4gICAgICBtb2Rlcm4g ZXhwbG9yYXRpdmUgYW5kIGRhcmluZyBtYXRoIHRoZXNpcy4gV2hlbiBzeW1ib2xzIGFyZQo+IHJl YWxseSB1c2VkLCBhbmQKPiAgICAgIHdlIGhhdmUgcHJvb2Ygb2YgdGhhdCwgaXQgc2hvdWxkIGJl IHBvc3NpYmxlIHRvIGdldCB0aGVtIHVuIAo+IFxVTklDT0RFLCBqdXN0Cj4gICAgICBsaWtlIGFs bCB0aGVzZSBlbW9qaS4gV2Ugd2VsY29tZSBpbnB1dCBhbmQgYXMgYW4gZXhhbXBsZSBvZiAKPiBj dXJyZW50bHkgZmFrZWQKPiAgICAgIHN5bWJvbHMgd2UgYWRkZWQgc29tZSB0byB0aGUgZGlzdHJp YnV0aW9uIGFzIGVhc3RlciBlZ2dzLiBPbmUKPiBleGFtcGxlOgo+IAo+ICAgICAgTWlrYWVsIGdv dCBjb250YWN0ZWQgYnkgYSBzdHJlc3NlZCBzdHVkZW50IHdvcmtpbmcgb24gYSB0aGVzaXMgb24K PiAgICAgIHByb2JhYmlsaXR5LiBUaGlzIHN0dWRlbnQgbmVlZGVkIHRvIHR5cGVzZXQgdGhlIGNo YXJhY3RlcmlzdGljIAo+IGZ1bmN0aW9uIG9mIGEKPiAgICAgIHJhbmRvbSB2YXJpYWJsZSBcaW0g e1h9IHdpdGggZGVuc2l0eSBmdW5jdGlvbiBcaW0ge2Zfe1h9fSwgYW5kCj4gaXQgd2FzIGluc2lz dGVkIHRvIHVzZSBhbm90aGVyIG5vdGF0aW9uIHRoYW4gdGhlICh3aWRlKSBoYXQsIHRoYXQgd2Fz IAo+IGFscmVhZHkgdXNlZAo+ICAgICAgZm9yIHNvbWV0aGluZyBlbHNlLiBGb3IgdGhpcyByZWFz b24gdGhlIFx0ZXgge3dpZGVyYW5kb21oYXR9IHdhcyAKPiBpbnRyb2R1Y2VkLAo+IAo+ICAgICAg XHVzZU1QbGlicmFyeVtuZXdtYXRoXQo+IAo+ICAgICAgXHN0YXJ0Zm9ybXVsYQo+ICAgICAgICAg IEVbXGVlXntcaWkgdFh9XSA9IFx3aWRlcmFuZG9taGF0e2Zfe1h9fSh0KVxtdHB7LH0KPiAgICAg ICAgICBFW1xlZV57XGlpIHQoWF8xK1hfMil9XSA9IFx3aWRlcmFuZG9taGF0e2Zfe1hfMX0gXGFz dCAKPiBmX3tYXzJ9fSh0KVxtdHB7Ln0KPiAgICAgIFxzdG9wZm9ybXVsYQo+IAo+ICAgICAgTmF0 dXJhbGx5LCBpdCBpcyBhdXRvbWF0aWNhbGx5IHNjYWxlZCwganVzdCBsaWtlIHRoZSBvcmRpbmFy eQo+IHdpZGUgaGF0Cj4gCj4gICAgICBcc3RhcnRmb3JtdWxhCj4gICAgICAgICAgXHdpZGVoYXR7 YStiK2MrZCtlK2Z9IFxuZXEgXHdpZGVyYW5kb21oYXR7YStiK2MrZCtlK2Z9Cj4gICAgICBcc3Rv cGZvcm11bGEKPiAKPiAgICAgIE9uY2UgdGhlIHRoZXNpcyBpcyBwcmludGVkLCB3ZSB3aWxsIGNv bnRhY3QgdGhlIFxVTklDT0RFXAo+IENvbnNvcnRpdW0gdG8gc3VnZ2VzdCB0aGF0IGl0IGdldHMg YSBzbG90Lgo+IFxzdG9waXRlbQo+IAo+IFxzdGFydGl0ZW0KPiAgICAgIE91ciBtb3N0IGFtYml0 aW91cyBwcm9qZWN0IGlzIGEgcmV2ZXJzZSBlbmdpbmVlcmluZyBvbmUsIHdoaWNoCj4gaXMgd2h5 IGl0IGlzCj4gICAgICBjb25kdWN0ZWQgYXQgdGhlIGVuZ2luZWVyaW5nIGZhY3VsdHkgb2YgdGhl IERudWwgdW5pdmVyc2l0eSAod2UKPiBjYW5ub3QgcmV2ZWFsIHRoZSByZWFsIG5hbWUgeWV0KS4g SW4gbWF0aCBhcnRpY2xlcyBvbmUgY2FuIGZpbmQgCj4gdmlzdWFsaXppbmcgbGlrZQo+ICAgICAg JHhcbGVmdGFycm93IHgkIGFuZCB0aGVyZSBhcmUgcGxlbnR5IG9mIFxURVhcIGNvbW1hbmRzIHRo YXQgaGF2ZSAKPiBhcnJvdyBvcgo+ICAgICAgaG9vayBpbiB0aGVpciBuYW1lcy4gSWYgeW91IGxv b2sgYXQgdGhlIG5hbWVzIG9mIG1hdGggc3ltYm9scwo+IHBsZW50eSBhcmUga2luZCBvZiB3ZWly ZC4gV2UgdGhpbmsgaXQgaXMgbm90IG5hdHVyYWwgYW5kIGFyZQo+IGNvbnNpZGVyaW5nIGEgXHF1 b3RlCj4gICAgICB7bmF0dXJhbCBsYW5ndWFnZSBtYXRoIGlucHV0fSBwcm9qZWN0LCB3aGVyZSB5 b3UgdGVsbCB3aGF0IGl0IGlzIAo+IGFuZCBnZXQgdGhlCj4gICAgICBzeW1ib2xzIHlvdSBleHBl Y3QuIEZvciB0aGF0IHdlIG5lZWQgdG8gYW5hbHl6ZSB0eXBlc2V0IG1hdGggYW5kIAo+IGZyb20g dGhlCj4gICAgICBjb250ZXh0IGFzIHdlbGwgYXMgdmlzdWFsaXphdGlvbiBkZXJpdmUgYSBkYXRh c2V0IHRoYXQgd2UgY2FuCj4gZmVlZCBpbnRvIGEKPiAgICAgIG1hY2hpbmUgbGVhcm5pbmcgc3Vi c3lzdGVtIHRoYXQgdGhlbiBjYW4gYmUgdXNlZCB0byB0dXJuIGlucHV0Cj4gaW50byB0eXBlLiBX ZQo+ICAgICAgaGF2ZSBzZXZlcmFsIHN0YWdlcyBpbiBtaW5kIHNwYW5uaW5nIHllYXJzIGJ1dCBp dCBjYW4gYmUgZnVuLgo+IFRoaW5rIG9mIGl0Cj4gICAgICBsaWtlIFxxdW90ZSB7dW50YWdnZWQg bWF0aH0gd2hpY2ggdGhlbiBvZiBjb3Vyc2UgcmVzdWx0cyBpbgo+IFxxdW90ZSB7dW50YWdnZWQK PiAgICAgIHBkZn0sIGJ1dCBiZXR0ZXIhCj4gXHN0b3BpdGVtCj4gCj4gXHN0b3BpdGVtaXplCj4g Cj4gTWlrYWVsICYgSGFucwo+IAo+IFxzdG9wc3ViamVjdAo+IAo+IFxzdG9wdGV4dAo+IAo+IAo+ IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEhh bnMgSGFnZW4gfCBQUkFHTUEgQURFCj4gICAgICAgICAgICAgICAgUmlkZGVyc3RyYWF0IDI3IHwg ODA2MSBHSCBIYXNzZWx0IHwgVGhlIE5ldGhlcmxhbmRzCj4gICAgICAgICB0ZWw6IDAzOCA0Nzcg NTMgNjkgfCB3d3cucHJhZ21hLWFkZS5ubCB8IHd3dy5wcmFnbWEtcG9kLm5sCj4gLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCklmIHlvdXIgcXVlc3Rpb24gaXMgb2YgaW50ZXJl c3QgdG8gb3RoZXJzIGFzIHdlbGwsIHBsZWFzZSBhZGQgYW4gZW50cnkgdG8gdGhlIFdpa2khCgpt YWlsbGlzdCA6IG50Zy1jb250ZXh0QG50Zy5ubCAvIGh0dHBzOi8vd3d3Lm50Zy5ubC9tYWlsbWFu L2xpc3RpbmZvL250Zy1jb250ZXh0CndlYnBhZ2UgIDogaHR0cHM6Ly93d3cucHJhZ21hLWFkZS5u bCAvIGh0dHA6Ly9jb250ZXh0LmFhbmhldC5uZXQKYXJjaGl2ZSAgOiBodHRwczovL2JpdGJ1Y2tl dC5vcmcvcGhnL2NvbnRleHQtbWlycm9yL2NvbW1pdHMvCndpa2kgICAgIDogaHR0cHM6Ly9jb250 ZXh0Z2FyZGVuLm5ldApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo=