From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.7 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,HTML_MESSAGE,MAILING_LIST_MULTI, T_SCC_BODY_TEXT_LINE,URIBL_SBL_A autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 1112 invoked from network); 21 Jul 2023 15:37:19 -0000 Received: from cgl.ntg.nl (5.39.185.202) by inbox.vuxu.org with ESMTPUTF8; 21 Jul 2023 15:37:19 -0000 Received: from localhost (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id 62749482A18 for ; Fri, 21 Jul 2023 17:36:27 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at cgl.ntg.nl Received: from cgl.ntg.nl ([127.0.0.1]) by localhost (cgl.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id D0TYnTyjIpW6 for ; Fri, 21 Jul 2023 17:36:26 +0200 (CEST) Received: from cgl.ntg.nl (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id C4D4A482ACE for ; Fri, 21 Jul 2023 17:35:10 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id C1963482918 for ; Fri, 21 Jul 2023 17:34:43 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at cgl.ntg.nl Received: from cgl.ntg.nl ([127.0.0.1]) by localhost (cgl.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZF7UOvFWfTmH for ; Fri, 21 Jul 2023 17:34:43 +0200 (CEST) Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by cgl.ntg.nl (Postfix) with ESMTPS id 4ED39482915 for ; Fri, 21 Jul 2023 17:34:43 +0200 (CEST) Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-3fd18b1d924so17356305e9.1 for ; Fri, 21 Jul 2023 08:34:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1689953681; x=1690558481; h=subject:from:to:content-language:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=yN6yQnG6Bau4Ixo9uqYjaiqRGZDiPf3rb1/F5/IkYpQ=; b=eTX7ILV7LHXqhXGbT7fZewIxxx+1BpBDf4UYTFkGfsRstyn57hhpS8IJ/BwvMM2ERO 7iG1n9LUo3P5grOkO5EEo9rQo8Oin7QH5LUJByEcHeoB1Q8X71nRsxvLx+cgeKjal/YU wBEMubKY2NQBJBkkzSDsi5f8+LdBYOk+GUhzk+Xb795+ZfgjJw0Q25B1+lpgj+ssm97I YRUYZBueY/iKjmwQfaQs25EvUFK0VkC43E8frApmFuRbkjqNj/iklqP/Imi5R71vX5uP 4jfEw2rIQc/BdfJf+JoWAwvdtsKY/DxfF2LBqpJnjV2AL/S/lcMRT51a2nK8X1FLjZE0 RJmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689953681; x=1690558481; h=subject:from:to:content-language:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=yN6yQnG6Bau4Ixo9uqYjaiqRGZDiPf3rb1/F5/IkYpQ=; b=bel5MxLgGg764rzqV1ziaiSKWJxBZko/52ch0ntaXPS06skVx9GLPM2GUmraxwg7i8 3IhVjulRvHhjAsR4kZZ9IqTzh+jIo4w93OKbfVG0noGgHIzKs8bKopxiIWZd0AVZDzjM xmIe5/cEho27vBneKZaqcGAKBjBG0Z0F7qAoedYgz0QvAj02oHs6+k5ZS2DrDm7+Wos7 mxRyPuGU8uqCSGWFQaPk5YFD1uai2WLSM+qgLzfWeo5kffTZ+snywZIJvPQnMnoJNHVU 2ZQNkSPnETJ6Fp9K0aZm5MD7tzzWW2TXM/5mSZR7Dj/vraM7Qy92EZMc0Ut28aRTw1JT Khig== X-Gm-Message-State: ABy/qLYWldcDNsy3DMSVxRaOuAU1VL9GGgZRZ5nUqlL54mVWHk8a57St m4SEFG101f4tCCSkBJQZJQnMaPXpT3o= X-Google-Smtp-Source: APBJJlEMPb3wC/Ee7Ma6+0iFZvwInfYDyxIMgR4RhlTI7APGBylyZq8/kbhgC7zQPuo734BQSgAWxQ== X-Received: by 2002:a7b:c856:0:b0:3fb:dd5d:76b with SMTP id c22-20020a7bc856000000b003fbdd5d076bmr1637352wml.7.1689953681306; Fri, 21 Jul 2023 08:34:41 -0700 (PDT) Received: from [192.168.0.33] (uddi-29-b2-v4wan-167779-cust774.vm12.cable.virginm.net. [82.41.179.7]) by smtp.gmail.com with ESMTPSA id t10-20020a1c770a000000b003faef96ee78sm6398948wmi.33.2023.07.21.08.34.39 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 21 Jul 2023 08:34:40 -0700 (PDT) Message-ID: <71307b8a-b5cc-dd88-a145-8df34c5af67e@gmail.com> Date: Fri, 21 Jul 2023 16:34:39 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Content-Language: en-GB To: mailing list for ConTeXt users From: Keith McKay Message-ID-Hash: DGIZ6CLBZ7JC7JC4MBBNBUFIK76EIHAX X-Message-ID-Hash: DGIZ6CLBZ7JC7JC4MBBNBUFIK76EIHAX X-MailFrom: mckaymeister@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.8 Precedence: list Reply-To: mailing list for ConTeXt users Subject: [NTG-context] Par Builder Tests List-Id: mailing list for ConTeXt users Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: multipart/mixed; boundary="===============2223045764483273374==" This is a multi-part message in MIME format. --===============2223045764483273374== Content-Type: multipart/alternative; boundary="------------kSWfDC1sbBWeAFj6LChgNiak" Content-Language: en-GB This is a multi-part message in MIME format. --------------kSWfDC1sbBWeAFj6LChgNiak Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi all, At the end of June, Hans uploaded a new lmtx version which included improvements to par building which he and Mikael had been working on in math mode. Hans suggested in the online chat that these improvements may be useful in typesetting novels. I was keen to try these since I have typset novels in the past. I have ran some tests on two novels which I downloaded from the Gutenberg Project site as epubs and extracted them to get the original xhtml files which I then typeset in context. I made very little in the way of changes to the files so that my setup for xml was very simple. Here are my setups for the layout of the novels showing some trackers that were used as well: \definepapersize[pagee][width=5.06in,height=7.81in] \setuppapersize[pagee] % XML setups here \startsetups[grid][mypenalties] \setdefaultpenalties \setpenalties\widowpenalties{1}{150} \setpenalties\clubpenalties {1}{150} \stopsetups \setuplayout[ width=10cm, topspace=0.5in, backspace=2.0cm, header=7.5mm, footer=0.25in, location={middle,middle}, vs=2, grid=yes, setups=mypenalties ] %\enabletrackers[makeup] %\enabletrackers[builders.hpack.quality] \enabletrackers[builders.hpack.overflow] %\enabletrackers[layout.vz] %\enabletrackers[paragraphs.passes] \enabletrackers[paragraphs.passes=summary] %\enabletrackers[paragraphs.passes=details] \setupalign[granular] %\setupalign[nothyphenated,hz,verytolerant] %\setupalign[vertical,height] %\setupalignpass[decent] %\setupalignpass[quality] %\setupalignpass[test1] \setupalignpass[test2] %\setupalignpass[test3] %\setupalignpass[test4] %\setupalignpass[test5] %\setupalignpass[optional1] %\setupalignpass[test2b] \starttext \setuppagenumbering[location={footer,middle},alternative=doublesided,state=start] \setcounter[userpage][1] %\showmakeup[vbox] %\showlayout \dostepwiserecurse{0}{30}{1}{ \xmlprocessfile{mysetups}{/path to xhtml files/4439720318703948998_84-h-\recurselevel.htm.xhtml}{} } \stoptext Below are the result showing the number of overfull boxes for these novels using the setups in the file spac-imp-tests.mkxl . See the manual Low Level - Lines Test        Novel1   Novel2 Test1        70            35 Test2        30            8 Test3        62            23 Test4        89            40 Test5        28            9 Optional1 55            19 Quality      74            32 Decent      39            11 From these initial tests one can see that Test2 gave the lowest number of overfull boxes. So I edited test two, ran it, and the results are below. Test        Novel1   Novel2 Test2b      11        0 My setup for test 2b is as follows: \startsetups align:pass:test2b     \pretolerance 100     \tolerance    200     \parpasses      3         classes              \indecentparpassclasses         threshold            0.025pt         tolerance            800         extrahyphenpenalty    50       next         threshold            0.025pt         tolerance            900         adjustspacing          3         adjustspacingstep      1         adjustspacingshrink   10         adjustspacingstretch  15     next         threshold            0.025pt         tolerance            1000         adjustspacing          3         adjustspacingstep      1         adjustspacingshrink   20         adjustspacingstretch  40         emergencystretch     .25\bodyfontsize     \relax %     \linebreakpasses\plusone \stopsetups The only difference between test 2 and 2b are that I increased the tolerance in each of the three passes. In novel 2 this was successful in eliminating the overfull boxes but not in Novel 1 although I noticed that majority of overfull boxes were above 1pt with the largest about 12pt in Novel 1. I am at the stage now where I need some kind of strategy to reduce/eliminate overfull boxes, other than changing the tolerance, and I'm hoping for some advice from the community. Suggestions for further reading particularly on the commands in \setupalignpass and their usage would be appreciated and on the best way to tackle overfull boxes. Best Wishes Keith McKay --------------kSWfDC1sbBWeAFj6LChgNiak Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: base64 PGh0bWw+DQogIDxoZWFkPg0KDQogICAgPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBl IiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPg0KICA8L2hlYWQ+DQogIDxi b2R5Pg0KICAgIDxwPkhpIGFsbCw8YnI+DQogICAgICA8YnI+DQogICAgICBBdCB0aGUgZW5k IG9mIEp1bmUsIEhhbnMgdXBsb2FkZWQgYSBuZXcgbG10eCB2ZXJzaW9uIHdoaWNoDQogICAg ICBpbmNsdWRlZCBpbXByb3ZlbWVudHMgdG8gcGFyIGJ1aWxkaW5nIHdoaWNoIGhlIGFuZCBN aWthZWwgaGFkIGJlZW4NCiAgICAgIHdvcmtpbmcgb24gaW4gbWF0aCBtb2RlLiBIYW5zIHN1 Z2dlc3RlZCBpbiB0aGUgb25saW5lIGNoYXQgdGhhdA0KICAgICAgdGhlc2UgaW1wcm92ZW1l bnRzIG1heSBiZSB1c2VmdWwgaW4gdHlwZXNldHRpbmcgbm92ZWxzLiBJIHdhcyBrZWVuDQog ICAgICB0byB0cnkgdGhlc2Ugc2luY2UgSSBoYXZlIHR5cHNldCBub3ZlbHMgaW4gdGhlIHBh c3QuPC9wPg0KICAgIDxwPkkgaGF2ZSByYW4gc29tZSB0ZXN0cyBvbiB0d28gbm92ZWxzIHdo aWNoIEkgZG93bmxvYWRlZCBmcm9tIHRoZQ0KICAgICAgR3V0ZW5iZXJnIFByb2plY3Qgc2l0 ZSBhcyBlcHVicyBhbmQgZXh0cmFjdGVkIHRoZW0gdG8gZ2V0IHRoZQ0KICAgICAgb3JpZ2lu YWwgeGh0bWwgZmlsZXMgd2hpY2ggSSB0aGVuIHR5cGVzZXQgaW4gY29udGV4dC4gSSBtYWRl IHZlcnkNCiAgICAgIGxpdHRsZSBpbiB0aGUgd2F5IG9mIGNoYW5nZXMgdG8gdGhlIGZpbGVz IHNvIHRoYXQgbXkgc2V0dXAgZm9yIHhtbA0KICAgICAgd2FzIHZlcnkgc2ltcGxlLjwvcD4N CiAgICA8cD5IZXJlIGFyZSBteSBzZXR1cHMgZm9yIHRoZSBsYXlvdXQgb2YgdGhlIG5vdmVs cyBzaG93aW5nIHNvbWUNCiAgICAgIHRyYWNrZXJzIHRoYXQgd2VyZSB1c2VkIGFzIHdlbGw6 IDxicj4NCiAgICA8L3A+DQogICAgPGRpdiBzdHlsZT0iY29sb3I6ICMwMDAwMDA7YmFja2dy b3VuZC1jb2xvcjogI2ZmZmZmZjtmb250LWZhbWlseTogTWVubG8sIE1vbmFjbywgJ0NvdXJp ZXIgTmV3JywgbW9ub3NwYWNlO2ZvbnQtd2VpZ2h0OiBub3JtYWw7Zm9udC1zaXplOiAxMnB4 O2xpbmUtaGVpZ2h0OiAxOHB4O3doaXRlLXNwYWNlOiBwcmU7Ij48ZGl2PlxkZWZpbmVwYXBl cnNpemVbcGFnZWVdW3dpZHRoPTUuMDZpbixoZWlnaHQ9Ny44MWluXTwvZGl2PjxkaXY+XHNl dHVwcGFwZXJzaXplW3BhZ2VlXTwvZGl2PjxkaXY+PHNwYW4gc3R5bGU9ImNvbG9yOiAjMDAw MDAwOyI+DQo8L3NwYW4+PC9kaXY+PGRpdj48c3BhbiBzdHlsZT0iY29sb3I6ICMwMDAwMDA7 Ij4lIFhNTCBzZXR1cHMgaGVyZTwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuIHN0eWxlPSJjb2xv cjogIzAwMDAwMDsiPg0KPC9zcGFuPjwvZGl2PjwvZGl2Pg0KICAgIDxkaXYgc3R5bGU9ImNv bG9yOiAjMDAwMDAwO2JhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7Zm9udC1mYW1pbHk6IE1l bmxvLCBNb25hY28sICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTtmb250LXdlaWdodDogbm9y bWFsO2ZvbnQtc2l6ZTogMTJweDtsaW5lLWhlaWdodDogMThweDt3aGl0ZS1zcGFjZTogcHJl OyI+PGRpdj5cc3RhcnRzZXR1cHNbZ3JpZF1bbXlwZW5hbHRpZXNdPC9kaXY+PGRpdj4gICAg XHNldGRlZmF1bHRwZW5hbHRpZXM8L2Rpdj48ZGl2PiAgICBcc2V0cGVuYWx0aWVzXHdpZG93 cGVuYWx0aWVzezF9ezE1MH08L2Rpdj48ZGl2PiAgICBcc2V0cGVuYWx0aWVzXGNsdWJwZW5h bHRpZXMgezF9ezE1MH08L2Rpdj48ZGl2PlxzdG9wc2V0dXBzPC9kaXY+PGRpdj5cc2V0dXBs YXlvdXRbPC9kaXY+PGRpdj4gICAgd2lkdGg9MTBjbSw8L2Rpdj48ZGl2PiAgICB0b3BzcGFj ZT0wLjVpbiw8L2Rpdj48ZGl2PiAgICBiYWNrc3BhY2U9Mi4wY20sPC9kaXY+PGRpdj4gICAg aGVhZGVyPTcuNW1tLDwvZGl2PjxkaXY+ICAgIGZvb3Rlcj0wLjI1aW4sPC9kaXY+PGRpdj4g ICAgbG9jYXRpb249e21pZGRsZSxtaWRkbGV9LDwvZGl2PjxkaXY+ICAgIHZzPTIsPC9kaXY+ PGRpdj4gICAgZ3JpZD15ZXMsPC9kaXY+PGRpdj4gICAgc2V0dXBzPW15cGVuYWx0aWVzPC9k aXY+PGRpdj4gICAgXTwvZGl2PjxkaXY+JVxlbmFibGV0cmFja2Vyc1ttYWtldXBdPC9kaXY+ PGRpdj4lXGVuYWJsZXRyYWNrZXJzW2J1aWxkZXJzLmhwYWNrLnF1YWxpdHldPC9kaXY+PGRp dj5cZW5hYmxldHJhY2tlcnNbYnVpbGRlcnMuaHBhY2sub3ZlcmZsb3ddPC9kaXY+PGRpdj4l XGVuYWJsZXRyYWNrZXJzW2xheW91dC52el08L2Rpdj48ZGl2PiVcZW5hYmxldHJhY2tlcnNb cGFyYWdyYXBocy5wYXNzZXNdPC9kaXY+PGRpdj5cZW5hYmxldHJhY2tlcnNbcGFyYWdyYXBo cy5wYXNzZXM9c3VtbWFyeV08L2Rpdj48ZGl2PiVcZW5hYmxldHJhY2tlcnNbcGFyYWdyYXBo cy5wYXNzZXM9ZGV0YWlsc108L2Rpdj5cc2V0dXBhbGlnbltncmFudWxhcl08ZGl2IHN0eWxl PSJjb2xvcjogIzAwMDAwMDtiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO2ZvbnQtZmFtaWx5 OiBNZW5sbywgTW9uYWNvLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7Zm9udC13ZWlnaHQ6 IG5vcm1hbDtmb250LXNpemU6IDEycHg7bGluZS1oZWlnaHQ6IDE4cHg7d2hpdGUtc3BhY2U6 IHByZTsiPjxkaXY+JVxzZXR1cGFsaWduW25vdGh5cGhlbmF0ZWQsaHosdmVyeXRvbGVyYW50 XTwvZGl2PjxkaXY+JVxzZXR1cGFsaWduW3ZlcnRpY2FsLGhlaWdodF08L2Rpdj48ZGl2PiVc c2V0dXBhbGlnbnBhc3NbZGVjZW50XTwvZGl2PjxkaXY+JVxzZXR1cGFsaWducGFzc1txdWFs aXR5XTwvZGl2PjxkaXY+JVxzZXR1cGFsaWducGFzc1t0ZXN0MV08L2Rpdj48ZGl2PlxzZXR1 cGFsaWducGFzc1t0ZXN0Ml08L2Rpdj48ZGl2PiVcc2V0dXBhbGlnbnBhc3NbdGVzdDNdPC9k aXY+PGRpdj4lXHNldHVwYWxpZ25wYXNzW3Rlc3Q0XTwvZGl2PjxkaXY+JVxzZXR1cGFsaWdu cGFzc1t0ZXN0NV08L2Rpdj48ZGl2PiVcc2V0dXBhbGlnbnBhc3Nbb3B0aW9uYWwxXTwvZGl2 PjxkaXY+JVxzZXR1cGFsaWducGFzc1t0ZXN0MmJdPC9kaXY+PGRpdj5cc3RhcnR0ZXh0PC9k aXY+PGRpdj5cc2V0dXBwYWdlbnVtYmVyaW5nW2xvY2F0aW9uPXtmb290ZXIsbWlkZGxlfSxh bHRlcm5hdGl2ZT1kb3VibGVzaWRlZCxzdGF0ZT1zdGFydF08L2Rpdj48ZGl2PlxzZXRjb3Vu dGVyW3VzZXJwYWdlXVsxXTwvZGl2PjxkaXY+JVxzaG93bWFrZXVwW3Zib3hdPC9kaXY+PGRp dj4lXHNob3dsYXlvdXQ8L2Rpdj48ZGl2Plxkb3N0ZXB3aXNlcmVjdXJzZXswfXszMH17MX17 ICA8L2Rpdj48ZGl2Plx4bWxwcm9jZXNzZmlsZXtteXNldHVwc317L3BhdGggdG8geGh0bWwg ZmlsZXMvNDQzOTcyMDMxODcwMzk0ODk5OF84NC1oLVxyZWN1cnNlbGV2ZWwuaHRtLnhodG1s fXt9PC9kaXY+PGRpdj59PC9kaXY+PGRpdj5cc3RvcHRleHQ8L2Rpdj48L2Rpdj48L2Rpdj4N CiAgICA8cD48L3A+DQogICAgPHA+QmVsb3cgYXJlIHRoZSByZXN1bHQgc2hvd2luZyB0aGUg bnVtYmVyIG9mIG92ZXJmdWxsIGJveGVzIGZvcg0KICAgICAgdGhlc2Ugbm92ZWxzIHVzaW5n IHRoZSBzZXR1cHMgaW4gdGhlIGZpbGUgc3BhYy1pbXAtdGVzdHMubWt4bCAuDQogICAgICBT ZWUgdGhlIG1hbnVhbCBMb3cgTGV2ZWwgLSBMaW5lczxicj4NCiAgICAgIDxicj4NCiAgICAg IFRlc3TCoMKgwqDCoMKgwqDCoCBOb3ZlbDHCoMKgIE5vdmVsMjxicj4NCiAgICAgIFRlc3Qx wqDCoMKgwqDCoMKgwqAgNzDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDM1PGJyPg0KICAgICAg VGVzdDLCoMKgwqDCoMKgwqDCoCAzMMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgODxicj4NCiAg ICAgIFRlc3QzwqDCoMKgwqDCoMKgwqAgNjLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDIzPGJy Pg0KICAgICAgVGVzdDTCoMKgwqDCoMKgwqDCoCA4OcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg NDA8YnI+DQogICAgICBUZXN0NcKgwqDCoMKgwqDCoMKgIDI4wqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA5PGJyPg0KICAgICAgT3B0aW9uYWwxIDU1wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAx OTxicj4NCiAgICAgIFF1YWxpdHnCoMKgwqDCoMKgIDc0wqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAzMjxicj4NCiAgICAgIERlY2VudMKgwqDCoMKgwqAgMznCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIDExPGJyPg0KICAgICAgPGJyPg0KICAgICAgRnJvbSB0aGVzZSBpbml0aWFsIHRlc3Rz IG9uZSBjYW4gc2VlIHRoYXQgVGVzdDIgZ2F2ZSB0aGUgbG93ZXN0DQogICAgICBudW1iZXIg b2Ygb3ZlcmZ1bGwgYm94ZXMuIFNvIEkgZWRpdGVkIHRlc3QgdHdvLCByYW4gaXQsIGFuZCB0 aGUNCiAgICAgIHJlc3VsdHMgYXJlIGJlbG93Ljxicj4NCiAgICAgIDxicj4NCiAgICAgIFRl c3TCoMKgwqDCoMKgwqDCoCBOb3ZlbDHCoMKgIE5vdmVsMjxicj4NCiAgICAgIDxicj4NCiAg ICAgIFRlc3QyYsKgwqDCoMKgwqAgMTHCoMKgwqDCoMKgwqDCoCAwPGJyPg0KICAgICAgPGJy Pg0KICAgICAgTXkgc2V0dXAgZm9yIHRlc3QgMmIgaXMgYXMgZm9sbG93czo8YnI+DQogICAg ICBcc3RhcnRzZXR1cHMgYWxpZ246cGFzczp0ZXN0MmI8YnI+DQogICAgICDCoMKgwqAgXHBy ZXRvbGVyYW5jZSAxMDA8YnI+DQogICAgICDCoMKgwqAgXHRvbGVyYW5jZcKgwqDCoCAyMDA8 YnI+DQogICAgICDCoMKgwqAgXHBhcnBhc3Nlc8KgwqDCoMKgwqAgMzxicj4NCiAgICAgIMKg wqDCoMKgwqDCoMKgIGNsYXNzZXPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBcaW5kZWNl bnRwYXJwYXNzY2xhc3Nlczxicj4NCiAgICAgIMKgwqDCoMKgwqDCoMKgIHRocmVzaG9sZMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgMC4wMjVwdDxicj4NCiAgICAgIMKgwqDCoMKgwqDCoMKg IHRvbGVyYW5jZcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgODAwPGJyPg0KICAgICAgwqDCoMKg wqDCoMKgwqAgZXh0cmFoeXBoZW5wZW5hbHR5wqDCoMKgIDUwPGJyPg0KICAgICAgwqDCoMKg wqDCoCBuZXh0PGJyPg0KICAgICAgwqDCoMKgwqDCoMKgwqAgdGhyZXNob2xkwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCAwLjAyNXB0PGJyPg0KICAgICAgwqDCoMKgwqDCoMKgwqAgdG9sZXJh bmNlwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA5MDA8YnI+DQogICAgICDCoMKgwqDCoMKgwqDC oCBhZGp1c3RzcGFjaW5nwqDCoMKgwqDCoMKgwqDCoMKgIDM8YnI+DQogICAgICDCoMKgwqDC oMKgwqDCoCBhZGp1c3RzcGFjaW5nc3RlcMKgwqDCoMKgwqAgMTxicj4NCiAgICAgIMKgwqDC oMKgwqDCoMKgIGFkanVzdHNwYWNpbmdzaHJpbmvCoMKgIDEwPGJyPg0KICAgICAgwqDCoMKg wqDCoMKgwqAgYWRqdXN0c3BhY2luZ3N0cmV0Y2jCoCAxNTxicj4NCiAgICAgIMKgwqDCoCBu ZXh0PGJyPg0KICAgICAgwqDCoMKgwqDCoMKgwqAgdGhyZXNob2xkwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCAwLjAyNXB0PGJyPg0KICAgICAgwqDCoMKgwqDCoMKgwqAgdG9sZXJhbmNlwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAxMDAwPGJyPg0KICAgICAgwqDCoMKgwqDCoMKgwqAgYWRq dXN0c3BhY2luZ8KgwqDCoMKgwqDCoMKgwqDCoCAzPGJyPg0KICAgICAgwqDCoMKgwqDCoMKg wqAgYWRqdXN0c3BhY2luZ3N0ZXDCoMKgwqDCoMKgIDE8YnI+DQogICAgICDCoMKgwqDCoMKg wqDCoCBhZGp1c3RzcGFjaW5nc2hyaW5rwqDCoCAyMDxicj4NCiAgICAgIMKgwqDCoMKgwqDC oMKgIGFkanVzdHNwYWNpbmdzdHJldGNowqAgNDA8YnI+DQogICAgICDCoMKgwqDCoMKgwqDC oCBlbWVyZ2VuY3lzdHJldGNowqDCoMKgwqAgLjI1XGJvZHlmb250c2l6ZTxicj4NCiAgICAg IMKgwqDCoCBccmVsYXg8YnI+DQogICAgICAlwqDCoMKgwqAgXGxpbmVicmVha3Bhc3Nlc1xw bHVzb25lPGJyPg0KICAgICAgXHN0b3BzZXR1cHM8YnI+DQogICAgICBUaGUgb25seSBkaWZm ZXJlbmNlIGJldHdlZW4gdGVzdCAyIGFuZCAyYiBhcmUgdGhhdCBJIGluY3JlYXNlZCB0aGUN CiAgICAgIHRvbGVyYW5jZSBpbiBlYWNoIG9mIHRoZSB0aHJlZSBwYXNzZXMuPGJyPg0KICAg ICAgSW4gbm92ZWwgMiB0aGlzIHdhcyBzdWNjZXNzZnVsIGluIGVsaW1pbmF0aW5nIHRoZSBv dmVyZnVsbCBib3hlcw0KICAgICAgYnV0IG5vdCBpbiBOb3ZlbCAxIGFsdGhvdWdoIEkgbm90 aWNlZCB0aGF0IG1ham9yaXR5IG9mIG92ZXJmdWxsDQogICAgICBib3hlcyB3ZXJlIGFib3Zl IDFwdCB3aXRoIHRoZSBsYXJnZXN0IGFib3V0IDEycHQgaW4gTm92ZWwgMS48L3A+DQogICAg PHA+SSBhbSBhdCB0aGUgc3RhZ2Ugbm93IHdoZXJlIEkgbmVlZCBzb21lIGtpbmQgb2Ygc3Ry YXRlZ3kgdG8NCiAgICAgIHJlZHVjZS9lbGltaW5hdGUgb3ZlcmZ1bGwgYm94ZXMsIG90aGVy IHRoYW4gY2hhbmdpbmcgdGhlDQogICAgICB0b2xlcmFuY2UsIGFuZCBJJ20gaG9waW5nIGZv ciBzb21lIGFkdmljZSBmcm9tIHRoZSBjb21tdW5pdHkuDQogICAgICBTdWdnZXN0aW9ucyBm b3IgZnVydGhlciByZWFkaW5nIHBhcnRpY3VsYXJseSBvbiB0aGUgY29tbWFuZHMgaW4NCiAg ICAgIFxzZXR1cGFsaWducGFzcyBhbmQgdGhlaXIgdXNhZ2Ugd291bGQgYmUgYXBwcmVjaWF0 ZWQgYW5kIG9uIHRoZQ0KICAgICAgYmVzdCB3YXkgdG8gdGFja2xlIG92ZXJmdWxsIGJveGVz LjwvcD4NCiAgICA8cD5CZXN0IFdpc2hlczwvcD4NCiAgICA8cD5LZWl0aCBNY0theTxicj4N CiAgICA8L3A+DQogIDwvYm9keT4NCjwvaHRtbD4NCg== --------------kSWfDC1sbBWeAFj6LChgNiak-- --===============2223045764483273374== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / https://www.ntg.nl/mailman/listinfo/ntg-context webpage : https://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : https://contextgarden.net ___________________________________________________________________________________ --===============2223045764483273374==--