Fix formatting glitches.
Andreas Scherer <[email protected]> Fri, 10 May 2024 11:40:40 +0200
| Newsgroups | gmane.comp.tex.metapost |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------3Uq0VSlnVq85j0m2CDkMzeEf Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Dear reader, the attached git-generated patch file---as always prepared with loving care---contains CWEB-related changes that try to fix the more obvious formatting glitches in the first 44 sections of MP.W, i.e., chapters INTRODUCTION and THE CHARACTER SET. Of course, these changes address only a tiny fraction of the MP.W source file. I do not have the resources to dig into the CWEB code of the MetaPost system more seriously at this time. Obviously, there is a lot of work to do in order to prepare even this one---albeit the largest---source module of MetaPost for inclusion in the https://ctan.org/pkg/knuth-pdf and https://ctan.org/pkg/knuth-hint packages anytime soon. Volunteers welcome! Happy hacking! Andreas --------------3Uq0VSlnVq85j0m2CDkMzeEf Content-Type: text/x-patch; charset=UTF-8; name="mp.patch" Content-Disposition: attachment; filename="mp.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL21wLncgYi9tcC53CmluZGV4IDMzOTJhYTkuLmNhZmI5NTIgMTAwNjQ0 Ci0tLSBhL21wLncKKysrIGIvbXAudwpAQCAtMjIsNyArMjIsNyBAQAogCiBcZGVmXCgjMSl7 fSAlIHRoaXMgaXMgdXNlZCB0byBtYWtlIHNlY3Rpb24gbmFtZXMgc29ydCB0aGVtc2VsdmVz IGJldHRlcgogXGRlZlw5IzF7fSAlIHRoaXMgaXMgdXNlZCBmb3Igc29ydCBrZXlzIGluIHRo ZSBpbmRleCB2aWEgQEA6c29ydCBrZXl9e2VudHJ5QEA+Ci1cZGVmXHRpdGxle01ldGFQb3N0 fQorXGRlZlx0aXRsZXtcTVB9CiBccGRmb3V0cHV0PTEKIFxwYWdlbm89MwogCkBAIC05Mywx NCArOTMsMTQgQEAgbGFyZ2UgfE1QX2luc3RhbmNlfCBzdHJ1Y3R1cmUuCiAjaWZuZGVmIEhB VkVfQk9PTEVBTgogdHlwZWRlZiBpbnQgYm9vbGVhbjsKICNlbmRpZgotQDxNZXRhcG9zdCB2 ZXJzaW9uIGhlYWRlckA+CitAPE1ldGFwb3N0IHZlcnNpb24gaGVhZGVyQD5AOwogdHlwZWRl ZiBzdHJ1Y3QgTVBfaW5zdGFuY2UgKk1QOwotQDxFeHBvcnRlZCB0eXBlc0A+CitAPEV4cG9y dGVkIHR5cGVzQD5AOwogdHlwZWRlZiBzdHJ1Y3QgTVBfb3B0aW9ucyB7Ci0gIEA8T3B0aW9u IHZhcmlhYmxlc0A+CisgIEA8T3B0aW9uIHZhcmlhYmxlc0A+QDsKIH0gTVBfb3B0aW9uczsK LUA8RXhwb3J0ZWQgZnVuY3Rpb24gaGVhZGVyc0A+Ci1APE1QbGliIGhlYWRlciBzdHVmZkA+ CitAPEV4cG9ydGVkIGZ1bmN0aW9uIGhlYWRlcnNAPkA7CitAPE1QbGliIGhlYWRlciBzdHVm ZkA+QDsKICNlbmRpZgogCiBAIFRoZSBpbnRlcm5hbCBoZWFkZXIgZmlsZSBpcyBtdWNoIGxv bmdlcjogaXQgbm90IG9ubHkgbGlzdHMgdGhlIGNvbXBsZXRlCkBAIC0xMjcsOCArMTI3LDgg QEAgdHlwZWRlZiBpbnQgYm9vbGVhbjsKIHR5cGVkZWYgaW50IGludGVnZXI7CiAjZGVmaW5l IE1QT1NUX0FCUyBhYnMKICNlbHNlCi0vKiBTZWUgc291cmNlL3RleGsvd2ViMmMvdzJjL2Nv bmZpZy5oICovCi0jaWYgSU5URUdFUl9NQVggPT0gTE9OR19NQVggLyogdGhpcyBzaG91bGQg bWVhbiB8SU5URUdFUl9UWVBFfCA9PSBsb25nICovCisvKiBTZWUgXC57c291cmNlL3RleGsv d2ViMmMvdzJjL2NvbmZpZy5ofSAqLworI2lmIElOVEVHRVJfTUFYID09IExPTkdfTUFYIC8q IHRoaXMgc2hvdWxkIG1lYW4gfElOVEVHRVJfVFlQRSA9PSBsb25nfCAqLwogI2lmZGVmIEhB VkVfTEFCUwogI2RlZmluZSBNUE9TVF9BQlMgbGFicwogI2Vsc2UKQEAgLTEzNiw0NCArMTM2 LDQ0IEBAIHR5cGVkZWYgaW50IGludGVnZXI7CiAjZW5kaWYKICNlbHNlCiAjZGVmaW5lIE1Q T1NUX0FCUyBhYnMKLSNlbmRpZiAvKiBpZiB8SU5URUdFUl9UWVBFfCA9PSBsb25nICovCi0j ZW5kaWYgLyogaWZuZGVmIHxJTlRFR0VSX1RZUEV8ICovCisjZW5kaWYgLyogfGlmIElOVEVH RVJfVFlQRSA9PSBsb25nfCAqLworI2VuZGlmIC8qIHxpZm5kZWYgSU5URUdFUl9UWVBFfCAq LwogCiAKLUA8RGVjbGFyZSBoZWxwZXJzQD47Ci1APEVudW1lcmF0aW9uIHR5cGVzQD47Ci1A PFR5cGVzIGluIHRoZSBvdXRlciBibG9ja0A+OwotQDxDb25zdGFudHMgaW4gdGhlIG91dGVy IGJsb2NrQD47CitAPERlY2xhcmUgaGVscGVyc0A+QDsKK0A8RW51bWVyYXRpb24gdHlwZXNA PkA7CitAPFR5cGVzIGluIHRoZSBvdXRlciBibG9ja0A+QDsKK0A8Q29uc3RhbnRzIGluIHRo ZSBvdXRlciBibG9ja0A+QDsKIHR5cGVkZWYgc3RydWN0IE1QX2luc3RhbmNlIHsKLSAgQDxP cHRpb24gdmFyaWFibGVzQD4KLSAgQDxHbG9iYWwgdmFyaWFibGVzQD4KKyAgQDxPcHRpb24g dmFyaWFibGVzQD5AOworICBAPEdsb2JhbCB2YXJpYWJsZXNAPkA7CiB9IE1QX2luc3RhbmNl OwotQDxJbnRlcm5hbCBsaWJyYXJ5IGRlY2xhcmF0aW9uc0A+Ci1APE1QbGliIGludGVybmFs IGhlYWRlciBzdHVmZkA+CitAPEludGVybmFsIGxpYnJhcnkgZGVjbGFyYXRpb25zQD5AOwor QDxNUGxpYiBpbnRlcm5hbCBoZWFkZXIgc3R1ZmZAPkA7CiAjZW5kaWYKIAogQCBAYwogLypc I2RlZmluZSBERUJVR0VOVkVMT1BFICovCiAjaWZkZWYgREVCVUdFTlZFTE9QRQogc3RhdGlj IGludCBERUJVR0VOVkVMT1BFQ09VTlRFUj0wOwotI2RlZmluZSBkYmdfc3RyKEEpCSAgcHJp bnRmKCJcbi0tWz09WyUwM2QgREVCVUdFTlZFTE9QRSBdPT1dICVzIiwJCSAgIERFQlVHRU5W RUxPUEVDT1VOVEVSKyssICNBKQotI2RlZmluZSBkYmdfbihBKSAJICBwcmludGYoIlxuLS1b PT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gWyclcyddPSVzLCAiLAkgICBERUJVR0VOVkVM T1BFQ09VTlRFUisrLCAjQSwgbnVtYmVyX3Rvc3RyaW5nKEEpKQotI2RlZmluZSBkYmdfaW4o QSkgCSAgcHJpbnRmKCJcbi0tWz09WyUwM2QgREVCVUdFTlZFTE9QRSBdPT1dIFsnJXMnXT0l ZCwgIiwJICAgREVCVUdFTlZFTE9QRUNPVU5URVIrKywgI0EsIChpbnQpKEEpKQotI2RlZmlu ZSBkYmdfZG4oQSkgCSAgcHJpbnRmKCJcbi0tWz09WyUwM2QgREVCVUdFTlZFTE9QRSBdPT1d IFsnJXMnXT0lLjEwMGYsICIsREVCVUdFTlZFTE9QRUNPVU5URVIrKywgI0EsIChkb3VibGUp KEEpKQotI2RlZmluZSBkYmdfa2V5KEEpIAkgIHByaW50ZigiXG4tLVs9PVslMDNkIERFQlVH RU5WRUxPUEUgXT09XSBbJyVzJ109ICIsCSAgIERFQlVHRU5WRUxPUEVDT1VOVEVSKyssICNB KQotI2RlZmluZSBkYmdfa2V5X252YWwoSyxWKSBwcmludGYoIlxuLS1bPT1bJTAzZCBERUJV R0VOVkVMT1BFIF09PV0gWyclcyddPSVzIiwJICAgREVCVUdFTlZFTE9QRUNPVU5URVIrKywg I0ssbnVtYmVyX3Rvc3RyaW5nKFYpKQotI2RlZmluZSBkYmdfa2V5X2l2YWwoSyxWKSBwcmlu dGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gWyclcyddPSVkIiwJICAgREVC VUdFTlZFTE9QRUNPVU5URVIrKywgI0ssKGludCkoVikpCi0jZGVmaW5lIGRiZ19rZXlfZHZh bChLLFYpIHByaW50ZigiXG4tLVs9PVslMDNkIERFQlVHRU5WRUxPUEUgXT09XSBbJyVzJ109 JS4xMDBmIiwgIERFQlVHRU5WRUxPUEVDT1VOVEVSKyssICNLLChkb3VibGUpKFYpKQotI2Rl ZmluZSBkYmdfY29tbWVudChBKSAJICBwcmludGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVM T1BFIF09PV0gLS1bPT1bJXNdPT1dIiwgICBERUJVR0VOVkVMT1BFQ09VTlRFUisrLCAjQSkK LSNkZWZpbmUgZGJnX3NwIAkJICBwcmludGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVMT1BF IF09PV0gICIsICAgCSAgIERFQlVHRU5WRUxPUEVDT1VOVEVSKyspCi0jZGVmaW5lIGRiZ19v cGVuX3QgCSAgcHJpbnRmKCJcbi0tWz09WyUwM2QgREVCVUdFTlZFTE9QRSBdPT1dIHsiLCAg IAkgICBERUJVR0VOVkVMT1BFQ09VTlRFUisrKQotI2RlZmluZSBkYmdfY2xvc2VfdCAJICBw cmludGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gfSIsICAgCSAgIERFQlVH RU5WRUxPUEVDT1VOVEVSKyspCi0jZGVmaW5lIGRiZ19jb21tYSAJICBwcmludGYoIlxuLS1b PT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gLCIsICAgCSAgIERFQlVHRU5WRUxPUEVDT1VO VEVSKyspCi0jZGVmaW5lIGRiZ19ubCAJCSAgcHJpbnRmKCJcbi0tWz09WyUwM2QgREVCVUdF TlZFTE9QRSBdPT1dIFxuIiwgICAJICAgREVCVUdFTlZFTE9QRUNPVU5URVIrKykKKyNkZWZp bmUgZGJnX3N0cihBKQkgIEBbcHJpbnRmKCJcbi0tWz09WyUwM2QgREVCVUdFTlZFTE9QRSBd PT1dICVzIiwJCSAgIERFQlVHRU5WRUxPUEVDT1VOVEVSKyssICNBKUBdCisjZGVmaW5lIGRi Z19uKEEpIAkgIEBbcHJpbnRmKCJcbi0tWz09WyUwM2QgREVCVUdFTlZFTE9QRSBdPT1dIFsn JXMnXT0lcywgIiwJICAgREVCVUdFTlZFTE9QRUNPVU5URVIrKywgI0EsIG51bWJlcl90b3N0 cmluZyhBKSlAXQorI2RlZmluZSBkYmdfaW4oQSkgCSAgQFtwcmludGYoIlxuLS1bPT1bJTAz ZCBERUJVR0VOVkVMT1BFIF09PV0gWyclcyddPSVkLCAiLAkgICBERUJVR0VOVkVMT1BFQ09V TlRFUisrLCAjQSwgKGludCkoQSkpQF0KKyNkZWZpbmUgZGJnX2RuKEEpIAkgIEBbcHJpbnRm KCJcbi0tWz09WyUwM2QgREVCVUdFTlZFTE9QRSBdPT1dIFsnJXMnXT0lLjEwMGYsICIsREVC VUdFTlZFTE9QRUNPVU5URVIrKywgI0EsIChkb3VibGUpKEEpKUBdCisjZGVmaW5lIGRiZ19r ZXkoQSkgCSAgQFtwcmludGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gWycl cyddPSAiLAkgICBERUJVR0VOVkVMT1BFQ09VTlRFUisrLCAjQSlAXQorI2RlZmluZSBkYmdf a2V5X252YWwoSyxWKSBAW3ByaW50ZigiXG4tLVs9PVslMDNkIERFQlVHRU5WRUxPUEUgXT09 XSBbJyVzJ109JXMiLAkgICBERUJVR0VOVkVMT1BFQ09VTlRFUisrLCAjSyxudW1iZXJfdG9z dHJpbmcoVikpQF0KKyNkZWZpbmUgZGJnX2tleV9pdmFsKEssVikgQFtwcmludGYoIlxuLS1b PT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gWyclcyddPSVkIiwJICAgREVCVUdFTlZFTE9Q RUNPVU5URVIrKywgI0ssKGludCkoVikpQF0KKyNkZWZpbmUgZGJnX2tleV9kdmFsKEssVikg QFtwcmludGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gWyclcyddPSUuMTAw ZiIsICBERUJVR0VOVkVMT1BFQ09VTlRFUisrLCAjSywoZG91YmxlKShWKSlAXQorI2RlZmlu ZSBkYmdfY29tbWVudChBKSAJICBAW3ByaW50ZigiXG4tLVs9PVslMDNkIERFQlVHRU5WRUxP UEUgXT09XSAtLVs9PVslc109PV0iLCAgIERFQlVHRU5WRUxPUEVDT1VOVEVSKyssICNBKUBd CisjZGVmaW5lIGRiZ19zcCAJCSAgQFtwcmludGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVM T1BFIF09PV0gICIsICAgCSAgIERFQlVHRU5WRUxPUEVDT1VOVEVSKyspQF0KKyNkZWZpbmUg ZGJnX29wZW5fdCAJICBAW3ByaW50ZigiXG4tLVs9PVslMDNkIERFQlVHRU5WRUxPUEUgXT09 XSB7IiwgICAJICAgREVCVUdFTlZFTE9QRUNPVU5URVIrKylAXQorI2RlZmluZSBkYmdfY2xv c2VfdCAJICBAW3ByaW50ZigiXG4tLVs9PVslMDNkIERFQlVHRU5WRUxPUEUgXT09XSB9Iiwg ICAJICAgREVCVUdFTlZFTE9QRUNPVU5URVIrKylAXQorI2RlZmluZSBkYmdfY29tbWEgCSAg QFtwcmludGYoIlxuLS1bPT1bJTAzZCBERUJVR0VOVkVMT1BFIF09PV0gLCIsICAgCSAgIERF QlVHRU5WRUxPUEVDT1VOVEVSKyspQF0KKyNkZWZpbmUgZGJnX25sIAkJICBAW3ByaW50Zigi XG4tLVs9PVslMDNkIERFQlVHRU5WRUxPUEUgXT09XSBcbiIsICAgCSAgIERFQlVHRU5WRUxP UEVDT1VOVEVSKyspQF0KICNkZWZpbmUgZGJnX0NVQklDICAgICAgICAgZGJnX24ocC0+eF9j b29yZCk7IGRiZ19uKHAtPnlfY29vcmQpOyBcCiAJCQkgIGRiZ19uKHAtPnJpZ2h0X3gpOyBk YmdfbihwLT5yaWdodF95KTsgXAogCQkJICBkYmdfbihxLT5sZWZ0X3gpOyAgZGJnX24ocS0+ bGVmdF95KTsgIFwKLQkJCSAgZGJnX24ocS0+eF9jb29yZCk7IGRiZ19uKHEtPnlfY29vcmQp CisJCQkgIGRiZ19uKHEtPnhfY29vcmQpOyBkYmdfbihxLT55X2Nvb3JkKUA7CiAjZW5kaWYK ICNkZWZpbmUgS1BBVEhTRUFfREVCVUdfSCAxCiAjaW5jbHVkZSA8dzJjL2NvbmZpZy5oPgpA QCAtMTg5LDIzICsxODksMzMgQEAgc3RhdGljIGludCBERUJVR0VOVkVMT1BFQ09VTlRFUj0w OwogI2luY2x1ZGUgPHRpbWUuaD4gICAgICAgICAgICAgICAvKiBmb3Igc3RydWN0IHRtIFwm IGNvICovCiAjaW5jbHVkZSA8emxpYi5oPiAgICAgICAgICAgICAgIC8qIGZvciB8WkxJQl9W RVJTSU9OfCwgemxpYlZlcnNpb24oKSAqLwogI2luY2x1ZGUgPHBuZy5oPiAgICAgICAgICAg ICAgICAvKiBmb3IgfFBOR19MSUJQTkdfVkVSX1NUUklOR3wsIHxwbmdfbGlicG5nX3Zlcnwg Ki8KLS8qXCNpbmNsdWRlIDxwaXhtYW4uaD4qLyAgICAgICAgICAgICAvKiBmb3IgfFBJWE1B Tl9WRVJTSU9OX1NUUklOR3wsIHxwaXhtYW5fdmVyc2lvbl9zdHJpbmcoKXwgKi8KLS8qXCNp bmNsdWRlIDxjYWlyby5oPiovICAgICAgICAgICAgICAvKiBmb3IgfENBSVJPX1ZFUlNJT05f U1RSSU5HfCwgfGNhaXJvX3ZlcnNpb25fc3RyaW5nKCl8ICovCi0vKlwjaW5jbHVkZSA8Z21w Lmg+Ki8gICAgICAgICAgICAgICAgLyogZm9yIHxnbXBfdmVyc2lvbnwgKi8KLS8qXCNpbmNs dWRlIDxtcGZyLmg+Ki8gICAgICAgICAgICAgICAvKiBmb3IgfE1QRlJfVkVSU0lPTl9TVFJJ Tkd8LCB8bXBmcl9nZXRfdmVyc2lvbigpfCAqLworLyp8CisjaW5jbHVkZSA8cGl4bWFuLmg+ fCAqLyAgICAgICAgICAgICAvKiBmb3IgfFBJWE1BTl9WRVJTSU9OX1NUUklOR3wsIHxwaXht YW5fdmVyc2lvbl9zdHJpbmcoKXwgKi8KKy8qfAorI2luY2x1ZGUgPGNhaXJvLmg+fCAqLyAg ICAgICAgICAgICAgLyogZm9yIHxDQUlST19WRVJTSU9OX1NUUklOR3wsIHxjYWlyb192ZXJz aW9uX3N0cmluZygpfCAqLworLyp8CisjaW5jbHVkZSA8Z21wLmg+fCAqLyAgICAgICAgICAg ICAgICAvKiBmb3IgfGdtcF92ZXJzaW9ufCAqLworLyp8CisjaW5jbHVkZSA8bXBmci5oPnwg Ki8gICAgICAgICAgICAgICAvKiBmb3IgfE1QRlJfVkVSU0lPTl9TVFJJTkd8LCB8bXBmcl9n ZXRfdmVyc2lvbigpfCAqLwogI2luY2x1ZGUgIm1wbGliLmgiCiAjaW5jbHVkZSAibXBsaWJw cy5oIiAgICAgICAgICAgIC8qIGV4dGVybmFsIGhlYWRlciAqLwotLypcI2luY2x1ZGUgIm1w bGlic3ZnLmgiICovICAgICAgICAgIC8qIGV4dGVybmFsIGhlYWRlciAqLwotLypcI2luY2x1 ZGUgIm1wbGlicG5nLmgiICovICAgICAgICAgIC8qIGV4dGVybmFsIGhlYWRlciAqLworLyp8 CisjaW5jbHVkZSAibXBsaWJzdmcuaCJ8ICovICAgICAgICAgIC8qIGV4dGVybmFsIGhlYWRl ciAqLworLyp8CisjaW5jbHVkZSAibXBsaWJwbmcuaCJ8ICovICAgICAgICAgIC8qIGV4dGVy bmFsIGhlYWRlciAqLwogI2luY2x1ZGUgIm1wbXAuaCIgICAgICAgICAgICAgICAvKiBpbnRl cm5hbCBoZWFkZXIgKi8KICNpbmNsdWRlICJtcHBzb3V0LmgiICAgICAgICAgICAgLyogaW50 ZXJuYWwgaGVhZGVyICovCi0vKlwjaW5jbHVkZSAibXBzdmdvdXQuaCIqLyAgICAgICAgICAg LyogaW50ZXJuYWwgaGVhZGVyICovCi0vKlwjaW5jbHVkZSAibXBwbmdvdXQuaCIqLyAgICAg ICAgICAgLyogaW50ZXJuYWwgaGVhZGVyICovCisvKnwKKyNpbmNsdWRlICJtcHN2Z291dC5o InwgKi8gICAgICAgICAgIC8qIGludGVybmFsIGhlYWRlciAqLworLyp8CisjaW5jbHVkZSAi bXBwbmdvdXQuaCJ8ICovICAgICAgICAgICAvKiBpbnRlcm5hbCBoZWFkZXIgKi8KICNpbmNs dWRlICJtcG1hdGguaCIgICAgICAgICAgICAgLyogaW50ZXJuYWwgaGVhZGVyICovCiAjaW5j bHVkZSAibXBtYXRoZG91YmxlLmgiICAgICAgIC8qIGludGVybmFsIGhlYWRlciAqLwogI2lu Y2x1ZGUgIm1wbWF0aGRlY2ltYWwuaCIgICAgICAvKiBpbnRlcm5hbCBoZWFkZXIgKi8KLS8q fCNpbmNsdWRlICJtcG1hdGhiaW5hcnkuaCJ8Ki8gICAgICAgLyogaW50ZXJuYWwgaGVhZGVy ICovCi0vKnwjaW5jbHVkZSAibXBtYXRoaW50ZXJ2YWwuaCJ8Ki8gICAgICAgLyogaW50ZXJu YWwgaGVhZGVyICovCisvKnwKKyNpbmNsdWRlICJtcG1hdGhiaW5hcnkuaCJ8ICovICAgICAg IC8qIGludGVybmFsIGhlYWRlciAqLworLyp8CisjaW5jbHVkZSAibXBtYXRoaW50ZXJ2YWwu aCJ8ICovICAgICAgIC8qIGludGVybmFsIGhlYWRlciAqLwogI2luY2x1ZGUgIm1wc3RyaW5n cy5oIiAgICAgICAgICAvKiBpbnRlcm5hbCBoZWFkZXIgKi8KIC8qIEJFR0lOIFBBVENIICov CiBtcF9udW1iZXIgZHhfYXA7ICAgIC8qIGFwcHJveGltYXRpb24gb2YgZHggKi8KQEAgLTI0 NSw5ICsyNTUsMTAgQEAgZXh0ZXJuIGludCBtcF9zdmdfZ3Jfc2hpcF9vdXQgKG1wX2VkZ2Vf b2JqZWN0ICAqaGgsIGludCBwcm9sb2d1ZXMsIGludCBzdGFuZGFsb24KIAogQCBAYwogZXh0 ZXJuIGZvbnRfbnVtYmVyIG1wX3JlYWRfZm9udF9pbmZvIChNUCBtcCwgY2hhciAqZm5hbWUp OyAgICAgIC8qIHRmbWluLncgKi8KLUBoIEA8RGVjbGFyYXRpb25zQD47Ci1APEJhc2ljIHBy aW50aW5nIHByb2NlZHVyZXNAPjsKLUA8RXJyb3IgaGFuZGxpbmcgcHJvY2VkdXJlc0A+CitA aAorQDxEZWNsYXJhdGlvbnNAPkA7CitAPEJhc2ljIHByaW50aW5nIHByb2NlZHVyZXNAPkA7 CitAPEVycm9yIGhhbmRsaW5nIHByb2NlZHVyZXNAPkA7CiAKIEAgU29tZSBkZWJ1Z2dpbmcg c3VwcG9ydCBmb3IgZGV2ZWxvcG1lbnQuIFRoZSB0cmljayB3aXRoIHRoZSB2YXJpYWRpYyBt YWNyb3MKIHByb2JhYmx5IG9ubHkgd29ya3MgaW4gZ2NjLCBhcyB0aGlzIHByZXByb2Nlc3Nv ciBmZWF0dXJlIHdhcyBub3QgZm9ybWFsaXplZApAQCAtMjU4LDI1ICsyNjksMjUgQEAgbW9z dCBjb21waWxlcnMgdW5kZXJzdGFuZCB0aGUgbm9uLWRlYnVnIHZlcnNpb24uCiBAPE1QbGli IGludGVybmFsIGhlYWRlciBzdHVmZkA+PQogLypcI2RlZmluZSBERUJVRyAyKi8KICNpZiBE RUJVRwotI2RlZmluZSBkZWJ1Z19udW1iZXIoQSkgcHJpbnRmKCIlZDogJXM9JS4zMmYgKCVk KVxuIiwgX19MSU5FX18sICNBLCBudW1iZXJfdG9fZG91YmxlKEEpLCBudW1iZXJfdG9fc2Nh bGVkKEEpKQorI2RlZmluZSBkZWJ1Z19udW1iZXIoQSkgQFtwcmludGYoIiVkOiAlcz0lLjMy ZiAoJWQpXG4iLCBfX0xJTkVfXywgI0EsIG51bWJlcl90b19kb3VibGUoQSksIG51bWJlcl90 b19zY2FsZWQoQSkpQF0KICNlbHNlCi0jZGVmaW5lIGRlYnVnX251bWJlcihBKQorI2RlZmlu ZSBkZWJ1Z19udW1iZXIoQSkgQFtAXQogI2VuZGlmCiAjaWYgREVCVUc+MQogdm9pZCBkb19k ZWJ1Z19wcmludGYoTVAgbXAsIGNvbnN0IGNoYXIgKnByZWZpeCwgY29uc3QgY2hhciAqZm10 LCAuLi4pOwotIyAgZGVmaW5lIGRlYnVnX3ByaW50ZihhMSxhMixhMykgZG9fZGVidWdfcHJp bnRmKG1wLCAiIiwgYTEsYTIsYTMpCi0jICBkZWZpbmUgRlVOQ1RJT05fVFJBQ0UxKGExKSBk b19kZWJ1Z19wcmludGYobXAsICJGVFJBQ0U6ICIsIGExKQotIyAgZGVmaW5lIEZVTkNUSU9O X1RSQUNFMihhMSxhMikgZG9fZGVidWdfcHJpbnRmKG1wLCAiRlRSQUNFOiAiLCBhMSxhMikK LSMgIGRlZmluZSBGVU5DVElPTl9UUkFDRTMoYTEsYTIsYTMpIGRvX2RlYnVnX3ByaW50Ziht cCwgIkZUUkFDRTogIiwgYTEsYTIsYTMpCi0jICBkZWZpbmUgRlVOQ1RJT05fVFJBQ0UzWChh MSxhMixhMykgKHZvaWQpbXAKLSMgIGRlZmluZSBGVU5DVElPTl9UUkFDRTQoYTEsYTIsYTMs YTQpIGRvX2RlYnVnX3ByaW50ZihtcCwgIkZUUkFDRTogIiwgYTEsYTIsYTMsYTQpCisjICBk ZWZpbmUgZGVidWdfcHJpbnRmKGExLGEyLGEzKSBAW2RvX2RlYnVnX3ByaW50ZihtcCwgIiIs IGExLGEyLGEzKUBdCisjICBkZWZpbmUgRlVOQ1RJT05fVFJBQ0UxKGExKSBkb19AW2RlYnVn X3ByaW50ZihtcCwgIkZUUkFDRTogIiwgYTEpQF0KKyMgIGRlZmluZSBGVU5DVElPTl9UUkFD RTIoYTEsYTIpIEBbZG9fZGVidWdfcHJpbnRmKG1wLCAiRlRSQUNFOiAiLCBhMSxhMilAXQor IyAgZGVmaW5lIEZVTkNUSU9OX1RSQUNFMyhhMSxhMixhMykgQFtkb19kZWJ1Z19wcmludGYo bXAsICJGVFJBQ0U6ICIsIGExLGEyLGEzKUBdCisjICBkZWZpbmUgRlVOQ1RJT05fVFJBQ0Uz WChhMSxhMixhMykgQFsodm9pZCltcEBdCisjICBkZWZpbmUgRlVOQ1RJT05fVFJBQ0U0KGEx LGEyLGEzLGE0KSBAW2RvX2RlYnVnX3ByaW50ZihtcCwgIkZUUkFDRTogIiwgYTEsYTIsYTMs YTQpQF0KICNlbHNlCi0jICBkZWZpbmUgZGVidWdfcHJpbnRmKGExLGEyLGEzKQotIyAgZGVm aW5lIEZVTkNUSU9OX1RSQUNFMShhMSkgKHZvaWQpbXAKLSMgIGRlZmluZSBGVU5DVElPTl9U UkFDRTIoYTEsYTIpICh2b2lkKW1wCi0jICBkZWZpbmUgRlVOQ1RJT05fVFJBQ0UzKGExLGEy LGEzKSAodm9pZCltcAotIyAgZGVmaW5lIEZVTkNUSU9OX1RSQUNFM1goYTEsYTIsYTMpICh2 b2lkKW1wCi0jICBkZWZpbmUgRlVOQ1RJT05fVFJBQ0U0KGExLGEyLGEzLGE0KSAodm9pZClt cAorIyAgZGVmaW5lIGRlYnVnX3ByaW50ZihhMSxhMixhMykgQFtAXQorIyAgZGVmaW5lIEZV TkNUSU9OX1RSQUNFMShhMSkgQFsodm9pZCltcEBdCisjICBkZWZpbmUgRlVOQ1RJT05fVFJB Q0UyKGExLGEyKSBAWyh2b2lkKW1wQF0KKyMgIGRlZmluZSBGVU5DVElPTl9UUkFDRTMoYTEs YTIsYTMpIEBbKHZvaWQpbXBAXQorIyAgZGVmaW5lIEZVTkNUSU9OX1RSQUNFM1goYTEsYTIs YTMpIEBbKHZvaWQpbXBAXQorIyAgZGVmaW5lIEZVTkNUSU9OX1RSQUNFNChhMSxhMixhMyxh NCkgQFsodm9pZCltcEBdCiAjZW5kaWYKIAogQCBUaGlzIGZ1bmN0aW9uIG9jY2FzaW9uYWxs eSBjcmFzaGVzIChpZiBzb21ldGhpbmcgaXMgd3JpdHRlbiBhZnRlciB0aGUKQEAgLTI4NCwx OSArMjk1LDE2IEBAIGxvZyBmaWxlIGlzIGFscmVhZHkgY2xvc2VkKSwgYnV0IHRoYXQgaXMg bm90IHNvIGltcG9ydGFudCB3aGlsZSBkZWJ1Z2dpbmcuCiAKIEBjCiAjaWYgREVCVUcKLXZv aWQgZG9fZGVidWdfcHJpbnRmKE1QIG1wLCBjb25zdCBjaGFyICpwcmVmaXgsIGNvbnN0IGNo YXIgKmZtdCwgLi4uKSA7CiB2b2lkIGRvX2RlYnVnX3ByaW50ZihNUCBtcCwgY29uc3QgY2hh ciAqcHJlZml4LCBjb25zdCBjaGFyICpmbXQsIC4uLikgewogICB2YV9saXN0IGFwOwotI2lm IDAKICAgdmFfc3RhcnQgKGFwLCBmbXQpOworI2lmIDAKICAgaWYgKG1wLT5sb2dfZmlsZSAm JiAhZmVycm9yKChGSUxFICopbXAtPmxvZ19maWxlKSkgewogICAgIGZwdXRzKHByZWZpeCwg bXAtPmxvZ19maWxlKTsKICAgICB2ZnByaW50ZihtcC0+bG9nX2ZpbGUsIGZtdCwgYXApOwog ICB9CiAgIHZhX2VuZChhcCk7Ci0jZW5kaWYKICAgdmFfc3RhcnQgKGFwLCBmbXQpOwotI2lm IDAKICAgaWYgKG1wLT50ZXJtX291dCAgJiYgIWZlcnJvcigoRklMRSAqKW1wLT50ZXJtX291 dCkpIHsKICNlbHNlCiAgIGlmIChmYWxzZSkgewpAQCAtMzA4LDggKzMxNiwxMSBAQCB2b2lk IGRvX2RlYnVnX3ByaW50ZihNUCBtcCwgY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFy ICpmbXQsIC4uLikgewogICAgIHZmcHJpbnRmKHN0ZG91dCwgZm10LCBhcCk7CiAgIH0KICAg dmFfZW5kKGFwKTsKLX0KKyNpZiAwCisgIH0KICNlbmRpZgorfQorI2VuZGlmIC8qIHxpZiBE RUJVR3wgKi8KIAogQCBIZXJlIGFyZSB0aGUgZnVuY3Rpb25zIHRoYXQgc2V0IHVwIHRoZSBc TVBcIGluc3RhbmNlLgogCkBAIC0zMzMsNiArMzQ0LDggQEAgTVBfb3B0aW9ucyAqbXBfb3B0 aW9ucyAodm9pZCkgewogfGxlZnRfcG9pbnR8IGFuZCB8cmlnaHRfcG9pbnR8IG9mIGEgbnVt YmVyIHxhfCBzaW1wbHkgcmV0dXJuIHxhfCwgd2hpbGUKIHxpbnRlcnZhbF9zZXR8IG9mIHRo ZSBwYWlyIHwoYSxiKXwgIHJldHVybnMgdGhlIG1pZCBwb2ludC4KIAorQHMgbXBfbnVtYmVy IGludAorCiBAPERlY2xhcmF0aW9uc0A+PQogc3RhdGljIHZvaWQgbXBfc3R1Yl9tX2dldF9s ZWZ0X2VuZHBvaW50KE1QIG1wLCBtcF9udW1iZXIgKiByLCBtcF9udW1iZXIgYSk7CiBzdGF0 aWMgdm9pZCBtcF9zdHViX21fZ2V0X3JpZ2h0X2VuZHBvaW50KE1QIG1wLCBtcF9udW1iZXIg KiByLCBtcF9udW1iZXIgYSk7CkBAIC03NjQsNyArNzc3LDkgQEAgYXBwcm9hY2hlcyB0byB0 aGUgcHJvYmxlbSBvZiB1bmRlcnN0YW5kaW5nIGEgc29tZXdoYXQgY29tcGxpY2F0ZWQgc3lz dGVtLgogc3RyYW5nZSBiZWhhdmlvciB0aGF0IHNvbWV0aW1lcyBvY2N1cnMgd2hlbiBcTVBc IGlzIGJlaW5nIGluc3RhbGxlZCBvcgogd2hlbiBzeXN0ZW0gd2l6YXJkcyBhcmUgZm9vbGlu ZyBhcm91bmQgd2l0aCBcTVBcIHdpdGhvdXQgcXVpdGUga25vd2luZwogd2hhdCB0aGV5IGFy ZSBkb2luZy4gU3VjaCBjb2RlIHdpbGwgbm90IG5vcm1hbGx5IGJlIGNvbXBpbGVkOyBpdCBp cwotZGVsaW1pdGVkIGJ5IHRoZSBwcmVwcm9jZXNzb3IgdGVzdCBgfCNpZmRlZiBERUJVRyAu LiAjZW5kaWZ8Jy4KK2RlbGltaXRlZCBieSB0aGUgcHJlcHJvY2Vzc29yIHRlc3R8CisjaWZk ZWYgREVCVUd8ICRcbGRvdHMkfAorI2VuZGlmfC4KIAogQCBUaGUgZm9sbG93aW5nIHBhcmFt ZXRlcnMgY2FuIGJlIGNoYW5nZWQgYXQgY29tcGlsZSB0aW1lIHRvIGV4dGVuZCBvcgogcmVk dWNlIFxNUCdzIGNhcGFjaXR5LgpAQCAtNzk4LDggKzgxMyw3IEBAIGludCB1dGY4X21vZGU7 CiBAIEA8RGVhbGxvYyB2YXJpYWJsZXNAPj0KIHhmcmVlIChtcC0+YmFubmVyKTsKIAotQAot QGQgc2V0X2xvd2VyX2xpbWl0ZWRfdmFsdWUoYSxiLGMpIGRvIHsgYT1jOyBpZiAoYj5jKSBh PWI7IH0gd2hpbGUgKDApCitAIEBkIHNldF9sb3dlcl9saW1pdGVkX3ZhbHVlKGEsYixjKSBk byB7IGE9YzsgaWYgKGI+YykgYT1iOyB9IHdoaWxlICgwKQogCiBAPEFsbG9jYXRlIG9yIC4u LkA+PQogbXAtPnBhcmFtX3NpemUgPSA0OwpAQCAtODc3LDggKzg5MSw4IEBAIHRoZSB1c2Vy J3MgZXh0ZXJuYWwgY2hhcmFjdGVyIHNldCBieSBtZWFucyBvZiBhcnJheXMgfHhvcmR8IGFu ZCB8eGNocnwKIHRoYXQgYXJlIGFuYWxvZ291cyB0byBQYXNjYWwncyB8b3JkfCBhbmQgfGNo cnwgZnVuY3Rpb25zLgogCiBAPE1QbGliIGludGVybmFsIGhlYWRlciBzdHVmZkA+PQotI2Rl ZmluZSB4Y2hyKEEpIG1wLT54Y2hyWyhBKV0KLSNkZWZpbmUgeG9yZChBKSBtcC0+eG9yZFso QSldCisjZGVmaW5lIHhjaHIoQSkgQFttcC0+eGNoclsoQSldQF0KKyNkZWZpbmUgeG9yZChB KSBAW21wLT54b3JkWyhBKV1AXQogCiBAIEA8R2xvYi4uLkA+PQogQVNDSUlfY29kZSB4b3Jk WzI1Nl07ICAgLyogc3BlY2lmaWVzIGNvbnZlcnNpb24gb2YgaW5wdXQgY2hhcmFjdGVycyAq Lwo= --------------3Uq0VSlnVq85j0m2CDkMzeEf Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline -- http://tug.org/metapost/ --------------3Uq0VSlnVq85j0m2CDkMzeEf--