diff options
Diffstat (limited to 'tex')
-rw-r--r-- | tex/context/base/mkii/cont-new.mkii | 2 | ||||
-rw-r--r-- | tex/context/base/mkii/context.mkii | 2 | ||||
-rw-r--r-- | tex/context/base/mkii/mult-en.mkii | 5 | ||||
-rw-r--r-- | tex/context/base/mkii/mult-ro.mkii | 1 | ||||
-rw-r--r-- | tex/context/base/mkiv/cont-new.mkiv | 2 | ||||
-rw-r--r-- | tex/context/base/mkiv/context.mkiv | 2 | ||||
-rw-r--r-- | tex/context/base/mkiv/status-files.pdf | bin | 24640 -> 24641 bytes | |||
-rw-r--r-- | tex/context/base/mkiv/status-lua.pdf | bin | 260463 -> 260468 bytes | |||
-rw-r--r-- | tex/context/base/mkxl/cont-new.mkxl | 2 | ||||
-rw-r--r-- | tex/context/base/mkxl/context.mkxl | 2 | ||||
-rw-r--r-- | tex/context/base/mkxl/math-act.lmt | 14 | ||||
-rw-r--r-- | tex/context/base/mkxl/math-dim.lmt | 2 | ||||
-rw-r--r-- | tex/context/base/mkxl/math-frc.mkxl | 19 | ||||
-rw-r--r-- | tex/context/base/mkxl/math-ini.mkxl | 22 | ||||
-rw-r--r-- | tex/context/base/mkxl/math-noa.lmt | 16 | ||||
-rw-r--r-- | tex/context/fonts/mkiv/minion-math.lfg | 61 | ||||
-rw-r--r-- | tex/context/interface/mkii/keys-en.xml | 5 | ||||
-rw-r--r-- | tex/context/interface/mkii/keys-ro.xml | 1 | ||||
-rw-r--r-- | tex/generic/context/luatex/luatex-fonts-merged.lua | 2 |
19 files changed, 129 insertions, 31 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii index b85af351e..545627d07 100644 --- a/tex/context/base/mkii/cont-new.mkii +++ b/tex/context/base/mkii/cont-new.mkii @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2022.09.11 20:42} +\newcontextversion{2022.09.16 14:39} %D This file is loaded at runtime, thereby providing an %D excellent place for hacks, patches, extensions and new diff --git a/tex/context/base/mkii/context.mkii b/tex/context/base/mkii/context.mkii index 9ec0966b5..90eea4118 100644 --- a/tex/context/base/mkii/context.mkii +++ b/tex/context/base/mkii/context.mkii @@ -20,7 +20,7 @@ %D your styles an modules. \edef\contextformat {\jobname} -\edef\contextversion{2022.09.11 20:42} +\edef\contextversion{2022.09.16 14:39} %D For those who want to use this: diff --git a/tex/context/base/mkii/mult-en.mkii b/tex/context/base/mkii/mult-en.mkii index cb26f8c65..9ac93c22d 100644 --- a/tex/context/base/mkii/mult-en.mkii +++ b/tex/context/base/mkii/mult-en.mkii @@ -93,7 +93,6 @@ \setinterfacevariable{author}{author} \setinterfacevariable{auto}{auto} \setinterfacevariable{autointro}{autointro} -\setinterfacevariable{autopunctuation}{autopunctuation} \setinterfacevariable{back}{back} \setinterfacevariable{background}{background} \setinterfacevariable{backmatter}{backmatter} @@ -677,9 +676,13 @@ \setinterfaceconstant{authoretaltext}{authoretaltext} \setinterfaceconstant{auto}{auto} \setinterfaceconstant{autocase}{autocase} +\setinterfaceconstant{autofencing}{autofencing} \setinterfaceconstant{autofile}{autofile} \setinterfaceconstant{autofocus}{autofocus} \setinterfaceconstant{autohang}{autohang} +\setinterfaceconstant{autonumbers}{autonumbers} +\setinterfaceconstant{autopunctuation}{autopunctuation} +\setinterfaceconstant{autospacing}{autospacing} \setinterfaceconstant{autostrut}{autostrut} \setinterfaceconstant{autowidth}{autowidth} \setinterfaceconstant{availableheight}{availableheight} diff --git a/tex/context/base/mkii/mult-ro.mkii b/tex/context/base/mkii/mult-ro.mkii index e35ebac50..9e9969c3d 100644 --- a/tex/context/base/mkii/mult-ro.mkii +++ b/tex/context/base/mkii/mult-ro.mkii @@ -676,6 +676,7 @@ \setinterfaceconstant{authoretaltext}{authoretaltext} \setinterfaceconstant{auto}{auto} \setinterfaceconstant{autocase}{autocase} +\setinterfaceconstant{autofencing}{autofencing} \setinterfaceconstant{autofile}{autofile} \setinterfaceconstant{autofocus}{autofocus} \setinterfaceconstant{autohang}{autohang} diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv index 21bd1470a..40594ad05 100644 --- a/tex/context/base/mkiv/cont-new.mkiv +++ b/tex/context/base/mkiv/cont-new.mkiv @@ -13,7 +13,7 @@ % \normalend % uncomment this to get the real base runtime -\newcontextversion{2022.09.11 20:42} +\newcontextversion{2022.09.16 14:39} %D This file is loaded at runtime, thereby providing an excellent place for hacks, %D patches, extensions and new features. There can be local overloads in cont-loc diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv index 0d89ea361..1de2ec104 100644 --- a/tex/context/base/mkiv/context.mkiv +++ b/tex/context/base/mkiv/context.mkiv @@ -49,7 +49,7 @@ %D {YYYY.MM.DD HH:MM} format. \edef\contextformat {\jobname} -\edef\contextversion{2022.09.11 20:42} +\edef\contextversion{2022.09.16 14:39} %D Kind of special: diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf Binary files differindex 517ab30c3..fb4443218 100644 --- a/tex/context/base/mkiv/status-files.pdf +++ b/tex/context/base/mkiv/status-files.pdf diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf Binary files differindex 07a782d8f..d75e37cee 100644 --- a/tex/context/base/mkiv/status-lua.pdf +++ b/tex/context/base/mkiv/status-lua.pdf diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl index 6fc406a17..5fb6ae5b6 100644 --- a/tex/context/base/mkxl/cont-new.mkxl +++ b/tex/context/base/mkxl/cont-new.mkxl @@ -13,7 +13,7 @@ % \normalend % uncomment this to get the real base runtime -\newcontextversion{2022.09.11 20:42} +\newcontextversion{2022.09.16 14:39} %D This file is loaded at runtime, thereby providing an excellent place for hacks, %D patches, extensions and new features. There can be local overloads in cont-loc diff --git a/tex/context/base/mkxl/context.mkxl b/tex/context/base/mkxl/context.mkxl index 47e196a62..cd7075d5e 100644 --- a/tex/context/base/mkxl/context.mkxl +++ b/tex/context/base/mkxl/context.mkxl @@ -29,7 +29,7 @@ %D {YYYY.MM.DD HH:MM} format. \immutable\edef\contextformat {\jobname} -\immutable\edef\contextversion{2022.09.11 20:42} +\immutable\edef\contextversion{2022.09.16 14:39} %overloadmode 1 % check frozen / warning %overloadmode 2 % check frozen / error diff --git a/tex/context/base/mkxl/math-act.lmt b/tex/context/base/mkxl/math-act.lmt index 687f5fed5..f0b132d66 100644 --- a/tex/context/base/mkxl/math-act.lmt +++ b/tex/context/base/mkxl/math-act.lmt @@ -67,6 +67,8 @@ function fonts.constructors.assignmathparameters(original,target) -- wrong way a end end +-- we need a better reset because the following will scale + local undefined <const> = 0x3FFFFFFF -- maxdimen or undefined_math_parameter function mathematics.initializeparameters(target,original) @@ -74,11 +76,11 @@ function mathematics.initializeparameters(target,original) if mathparameters and next(mathparameters) then mathparameters = mathematics.dimensions(mathparameters) -- - if not mathparameters.MinConnectorOverlap then mathparameters.MinConnectorOverlap = undefined end - if not mathparameters.SubscriptShiftDownWithSuperscript then mathparameters.SubscriptShiftDownWithSuperscript = undefined end -- a tex one - if not mathparameters.FractionDelimiterSize then mathparameters.FractionDelimiterSize = undefined end - if not mathparameters.FractionDelimiterDisplayStyleSize then mathparameters.FractionDelimiterDisplayStyleSize = undefined end - if not mathparameters.SkewedDelimiterTolerance then mathparameters.SkewedDelimiterTolerance = undefined end + -- if not mathparameters.MinConnectorOverlap then mathparameters.MinConnectorOverlap = undefined end + -- if not mathparameters.SubscriptShiftDownWithSuperscript then mathparameters.SubscriptShiftDownWithSuperscript = undefined end -- a tex one + -- if not mathparameters.FractionDelimiterSize then mathparameters.FractionDelimiterSize = undefined end + -- if not mathparameters.FractionDelimiterDisplayStyleSize then mathparameters.FractionDelimiterDisplayStyleSize = undefined end + -- if not mathparameters.SkewedDelimiterTolerance then mathparameters.SkewedDelimiterTolerance = undefined end -- some more can be undefined: if not mathparameters.PrimeRaisePercent then mathparameters.PrimeRaisePercent = 50 end if not mathparameters.PrimeRaiseComposedPercent then mathparameters.PrimeRaiseComposedPercent = 25 end @@ -103,6 +105,8 @@ function mathematics.initializeparameters(target,original) if not mathparameters.AccentExtendMargin then mathparameters.AccentExtendMargin = 50 end if not mathparameters.DelimiterPercent then mathparameters.DelimiterPercent = 100 end if not mathparameters.DelimiterShortfall then mathparameters.DelimiterShortfall = 0 end + if not mathparameters.RadicalKernAfterExtensible then mathparameters.RadicalKernAfterExtensible = 0 end + if not mathparameters.RadicalKernBeforeExtensible then mathparameters.RadicalKernBeforeExtensible = 0 end -- target.mathparameters = mathparameters end diff --git a/tex/context/base/mkxl/math-dim.lmt b/tex/context/base/mkxl/math-dim.lmt index e0730da95..15eeb47b3 100644 --- a/tex/context/base/mkxl/math-dim.lmt +++ b/tex/context/base/mkxl/math-dim.lmt @@ -131,7 +131,7 @@ end -- return t.default or t.text_style or 0 -- end -- --- This will all go away in \LMTX\ becuase itv makes no sense to support old fonts any longer, +-- This will all go away in \LMTX\ because it makes no sense to support old fonts any longer, -- even when we assemble them one really needs to think about proper values. Okay, there is -- some historic value in here. diff --git a/tex/context/base/mkxl/math-frc.mkxl b/tex/context/base/mkxl/math-frc.mkxl index 06150b3ea..c0ef58c27 100644 --- a/tex/context/base/mkxl/math-frc.mkxl +++ b/tex/context/base/mkxl/math-frc.mkxl @@ -454,21 +454,32 @@ \def\math_fraction_set_threshold_inline_auto {\Umathfractiondelsize\textstyle \maxdimen \Umathfractiondelsize\scriptstyle \maxdimen - \Umathfractiondelsize\scriptscriptstyle\maxdimen} + \Umathfractiondelsize\scriptscriptstyle\maxdimen +\Umathfractiondelsize\crampedtextstyle \Umathfractiondelsize\textstyle +\Umathfractiondelsize\crampedscriptstyle \Umathfractiondelsize\scriptstyle +\Umathfractiondelsize\crampedscriptscriptstyle\Umathfractiondelsize\scriptscriptstyle + } \def\math_fraction_set_threshold_display_auto - {\Umathfractiondelsize\displaystyle \maxdimen} + {\Umathfractiondelsize\displaystyle \maxdimen +\Umathfractiondelsize\crampeddisplaystyle \Umathfractiondelsize\displaystyle + } \def\math_fraction_set_threshold_inline_ratio {\edef\p_threshold{\mathfractionparameter\c!inlinethreshold}% \Umathfractiondelsize\textstyle \p_threshold\dimexpr\textface\relax \Umathfractiondelsize\scriptstyle \p_threshold\dimexpr\scriptface\relax - \Umathfractiondelsize\scriptscriptstyle\p_threshold\dimexpr\scriptscriptface\relax} + \Umathfractiondelsize\scriptscriptstyle\p_threshold\dimexpr\scriptscriptface\relax +\Umathfractiondelsize\crampedtextstyle \Umathfractiondelsize\textstyle +\Umathfractiondelsize\crampedscriptstyle \Umathfractiondelsize\scriptstyle +\Umathfractiondelsize\crampedscriptscriptstyle\Umathfractiondelsize\scriptscriptstyle + } \def\math_fraction_set_threshold_display_ratio {\edef\p_threshold{\mathfractionparameter\c!displaythreshold}% \Umathfractiondelsize\displaystyle \p_threshold\dimexpr\textface\relax - \Umathfractiondelsize\displaystyle \maxdimen} +\Umathfractiondelsize\crampeddisplaystyle \Umathfractiondelsize\displaystyle + } \setupmathfractions [\c!inlinethreshold=.25, % no unit but fraction diff --git a/tex/context/base/mkxl/math-ini.mkxl b/tex/context/base/mkxl/math-ini.mkxl index ce5f73d74..bf674068a 100644 --- a/tex/context/base/mkxl/math-ini.mkxl +++ b/tex/context/base/mkxl/math-ini.mkxl @@ -1296,7 +1296,9 @@ \inherited\setmathspacing \mathfractioncode \mathmiddlecode \allsplitstyles \thickmuskip \inherited\setmathspacing \mathfractioncode \mathmiddlecode \allscriptstyles \pettymuskip \inherited\setmathspacing \mathfractioncode \mathclosecode \allmathstyles \pettymuskip - % \inherited\setmathspacing \mathfractioncode \mathpunctuationcode \allmathstyles \zeromuskip + \inherited\setmathspacing \mathfractioncode \mathpunctuationcode \allsplitstyles \tinymuskip + \inherited\setmathspacing \mathfractioncode \mathpunctuationcode \allscriptstyles \pettymuskip + \inherited\setmathspacing \mathfractioncode \mathtextpunctuationcode \allmathstyles \tinymuskip \inherited\setmathspacing \mathfractioncode \mathconstructcode \allsplitstyles \thinmuskip \inherited\setmathspacing \mathfractioncode \mathconstructcode \allscriptstyles \pettymuskip \inherited\setmathspacing \mathfractioncode \mathellipsiscode \allsplitstyles \thinmuskip @@ -1317,7 +1319,8 @@ \inherited\setmathspacing \mathradicalcode \mathmiddlecode \allsplitstyles \thickmuskip \inherited\setmathspacing \mathradicalcode \mathmiddlecode \allscriptstyles \pettymuskip % \inherited\setmathspacing \mathradicalcode \mathclosecode \allmathstyles \zeromuskip - % \inherited\setmathspacing \mathradicalcode \mathpunctuationcode \allmathstyles \zeromuskip + \inherited\setmathspacing \mathradicalcode \mathpunctuationcode \allsplitstyles \pettymuskip + \inherited\setmathspacing \mathradicalcode \mathpunctuationcode \allscriptstyles \tinymuskip \inherited\setmathspacing \mathradicalcode \mathconstructcode \allsplitstyles \thinmuskip \inherited\setmathspacing \mathradicalcode \mathconstructcode \allscriptstyles \pettymuskip \inherited\setmathspacing \mathradicalcode \mathellipsiscode \allsplitstyles \thinmuskip @@ -1393,6 +1396,21 @@ \inherited\setmathspacing \mathtextpunctuationcode \mathradicalcode \allmathstyles \mathinterwordmuskip \inherited\setmathspacing \mathtextpunctuationcode \mathdifferentialcode \allmathstyles \mathinterwordmuskip \inherited\setmathspacing \mathtextpunctuationcode \mathpunctuationcode \allmathstyles \mathinterwordmuskip + + \inherited\setmathspacing \mathordinarycode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathoperatorcode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathbinarycode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathrelationcode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathopencode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathmiddlecode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathclosecode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathpunctuationcode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathconstructcode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathellipsiscode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathfractioncode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathradicalcode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathdifferentialcode \mathtextpunctuationcode \allmathstyles \tinymuskip + \inherited\setmathspacing \mathpunctuationcode \mathtextpunctuationcode \allmathstyles \tinymuskip \stopsetups \directsetup{math:spacing:default} diff --git a/tex/context/base/mkxl/math-noa.lmt b/tex/context/base/mkxl/math-noa.lmt index 8ac0c1cef..a754f6f39 100644 --- a/tex/context/base/mkxl/math-noa.lmt +++ b/tex/context/base/mkxl/math-noa.lmt @@ -1880,7 +1880,11 @@ do local followedbyspace_code = tex.noadoptioncodes.followedbyspace local function followedbyspace(n) - return getoptions(n) & followedbyspace_code == followedbyspace_code + return n and (getoptions(n) & followedbyspace_code == followedbyspace_code) + end + + local function followbyspace(n) + setoptions(n,getoptions(n) | followedbyspace_code) end numbers[mathchar_code] = function(pointer,what,n,parent) @@ -1981,10 +1985,10 @@ do local found = middles[oldchar] if found then local prev, next = getboth(parent) - if getcharspec(next) == oldchar then + if getcharspec(next) == oldchar and not followedbyspace(parent) then local nextnext = getnext(next) -- we need to preserve the followed property - if getcharspec(nextnext) == oldchar then + if getcharspec(nextnext) == oldchar and not followedbyspace(next) then oldchar = singles[3] prev, parent = nuts.remove(prev,parent,true) prev, parent = nuts.remove(prev,parent,true) @@ -2002,8 +2006,12 @@ do local f2 = makefence(chr,fam,middlefence_code,middle_class,pointer) setlink(prev,f1,f2,next) flushnode(parent) +followbyspace(f1) +followbyspace(f2) + return true, f2 + else + return true, parent end - return true, parent end end end diff --git a/tex/context/fonts/mkiv/minion-math.lfg b/tex/context/fonts/mkiv/minion-math.lfg index 8ebca4c91..162b9f628 100644 --- a/tex/context/fonts/mkiv/minion-math.lfg +++ b/tex/context/fonts/mkiv/minion-math.lfg @@ -34,6 +34,27 @@ return { }, }, mathematics = { + parameters = { + NoLimitSupFactor = 0, + NoLimitSubFactor = 900, + -- AccentTopShiftUp = -15, + -- FlattenedAccentTopShiftUp = -15, + -- -- AccentExtendMargin = 50, + -- AccentBaseDepth = 50, + -- RadicalDegreeBottomRaisePercent = 60, + -- RadicalRuleThickness = 66, -- 72 in font + -- DelimiterPercent = 90, + -- DelimiterShortfall = 400, + -- DisplayOperatorMinHeight = 1900, -- 1250 in font + -- -- AccentSuperscriptDrop = 100, + -- -- AccentSuperscriptPercent = 20, + PrimeRaisePercent = 50, -- 50 default + PrimeRaiseComposedPercent = 25, -- 25 default + -- PrimeShiftUp = 0, + -- PrimeBaselineDropMax = 0, + RadicalKernAfterExtensible = 100, -- 0 default + RadicalKernBeforeExtensible = 100, -- 0 default + }, tweaks = { aftercopying = { -- { @@ -45,21 +66,49 @@ return { -- smaller = true, list = dimensions, }, + -- { + -- tweak = "variants", + -- kind = "script", + -- feature = "s_s_0",-- this changes to chancery style for lucida + -- -- feature = false, -- use the saved ones (see typescript) + -- selector = 0xFE00, + -- }, + -- -- 0xFEO1 should be roundhand style, if present + -- { + -- tweak = "variants", + -- kind = "script", + -- selector = 0xFE01, + -- }, + { - tweak = "fixprimes", - factor = 0.85, + tweak = "extendaccents", }, { - tweak = "checkspacing", + tweak = "fixaccents", }, { - tweak = "addscripts", + tweak = "copyaccents", }, { - tweak = "accentdimensions", + tweak = "fixprimes", + factor = 0.95, + scale = 0.9, }, + -- { + -- tweak = "checkspacing", + -- }, + -- { + -- tweak = "addscripts", + -- }, + -- { + -- tweak = "accentdimensions", + -- }, + -- { + -- tweak = "addrules", + -- }, { - tweak = "addrules", + tweak = "addfourier", + variant = 1, }, }, }, diff --git a/tex/context/interface/mkii/keys-en.xml b/tex/context/interface/mkii/keys-en.xml index 39538688d..adadb86c5 100644 --- a/tex/context/interface/mkii/keys-en.xml +++ b/tex/context/interface/mkii/keys-en.xml @@ -96,7 +96,6 @@ <cd:variable name='author' value='author'/> <cd:variable name='auto' value='auto'/> <cd:variable name='autointro' value='autointro'/> - <cd:variable name='autopunctuation' value='autopunctuation'/> <cd:variable name='back' value='back'/> <cd:variable name='background' value='background'/> <cd:variable name='backmatter' value='backmatter'/> @@ -683,9 +682,13 @@ <cd:constant name='authoretaltext' value='authoretaltext'/> <cd:constant name='auto' value='auto'/> <cd:constant name='autocase' value='autocase'/> + <cd:constant name='autofencing' value='autofencing'/> <cd:constant name='autofile' value='autofile'/> <cd:constant name='autofocus' value='autofocus'/> <cd:constant name='autohang' value='autohang'/> + <cd:constant name='autonumbers' value='autonumbers'/> + <cd:constant name='autopunctuation' value='autopunctuation'/> + <cd:constant name='autospacing' value='autospacing'/> <cd:constant name='autostrut' value='autostrut'/> <cd:constant name='autowidth' value='autowidth'/> <cd:constant name='availableheight' value='availableheight'/> diff --git a/tex/context/interface/mkii/keys-ro.xml b/tex/context/interface/mkii/keys-ro.xml index 360ec0f64..1348116c6 100644 --- a/tex/context/interface/mkii/keys-ro.xml +++ b/tex/context/interface/mkii/keys-ro.xml @@ -682,6 +682,7 @@ <cd:constant name='authoretaltext' value='authoretaltext'/> <cd:constant name='auto' value='auto'/> <cd:constant name='autocase' value='autocase'/> + <cd:constant name='autofencing' value='autofencing'/> <cd:constant name='autofile' value='autofile'/> <cd:constant name='autofocus' value='autofocus'/> <cd:constant name='autohang' value='autohang'/> diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 3d3a952f5..c539d886c 100644 --- a/tex/generic/context/luatex/luatex-fonts-merged.lua +++ b/tex/generic/context/luatex/luatex-fonts-merged.lua @@ -1,6 +1,6 @@ -- merged file : c:/data/develop/context/sources/luatex-fonts-merged.lua -- parent file : c:/data/develop/context/sources/luatex-fonts.lua --- merge date : 2022-09-11 20:42 +-- merge date : 2022-09-16 14:39 do -- begin closure to overcome local limits and interference |