From 8217fe09599706a7d8e9029fe6dc2ea444c7ff3b Mon Sep 17 00:00:00 2001 From: schtandard Date: Sun, 15 Mar 2026 18:04:13 +0100 Subject: [PATCH 01/49] Do not discard sign of tick value --- lib/matplotlib/ticker.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index c82cd3bd0419..7503704c2075 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1078,6 +1078,7 @@ def __call__(self, x, pos=None): if x == 0.0: # Symlog return '0' + sign = np.sign(x) x = abs(x) b = self._base # only label the decades @@ -1093,7 +1094,7 @@ def __call__(self, x, pos=None): vmin, vmax = self.axis.get_view_interval() vmin, vmax = mtransforms._nonsingular(vmin, vmax, expander=0.05) - s = self._num_to_string(x, vmin, vmax) + s = self._num_to_string(sign * x, vmin, vmax) return self.fix_minus(s) def format_data(self, value): From 27f3482194cbd364f141837f29b77014e7bbf647 Mon Sep 17 00:00:00 2001 From: schtandard Date: Mon, 16 Mar 2026 12:00:08 +0100 Subject: [PATCH 02/49] Improve some log ticker details - Use the same logic to calculate numticks in LogFormatter.set_locs() as later in LogLocator.tick_values(). - Do not hard-code n_request == 9 in minor tick check. - Correct a type in an explanatary comment (< instead of <=). - Actually calculate the largest possible stride, as outlined in the comments. - The check for lonely ticks at the end of LogLocator.tick_values() assumed that major ticks are not also minor ticks. Fix that logic. --- lib/matplotlib/ticker.py | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 7503704c2075..9b6a75d31129 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1050,11 +1050,8 @@ def set_locs(self, locs=None): else: lmin = math.log(vmin, b) lmax = math.log(vmax, b) - # The nextafter call handles the case where vmin is exactly at a - # decade (e.g. there's one major tick between 1 and 5). - numticks = (math.floor(lmax) - - math.floor(math.nextafter(lmin, -math.inf))) - numdec = abs(lmax - lmin) + numdec = lmax - lmin + numticks = math.floor(lmax) - math.ceil(lmin) + 1 if numticks > self.minor_thresholds[0]: # Label only bases @@ -2520,7 +2517,7 @@ def tick_values(self, vmin, vmax): n_avail = emax - emin + 1 # Total number of decade ticks available. if isinstance(self._subs, str): - if n_avail >= 10 or b < 3: + if n_avail > n_request or b < 3: if self._subs == 'auto': return np.array([]) # no minor or major ticks else: @@ -2542,7 +2539,7 @@ def tick_values(self, vmin, vmax): # be drawn (e.g., with 9 decades ticks, no stride yields 7 # ticks). For a given value of the stride *s*, there are either # floor(n_avail/s) or ceil(n_avail/s) ticks depending on the - # offset. Pick the smallest stride such that floor(n_avail/s) < + # offset. Pick the smallest stride such that floor(n_avail/s) <= # n_request, i.e. n_avail/s < n_request+1, then re-set n_request # to ceil(...) if acceptable, else to floor(...) (which must then # equal the original n_request, i.e. n_request is kept unchanged). @@ -2573,7 +2570,7 @@ def tick_values(self, vmin, vmax): # n_avail/(n_request+1) < stride <= n_avail/n_request # One of these cases must have an integer solution (given the # choice of n_request above). - stride = (n_avail - 1) // (n_request - 1) + stride = math.ceil(n_avail / (n_request - 1)) - 1 if stride < n_avail / n_request: # fallback to second case stride = n_avail // n_request # *Determine the offset*: For a given stride *and offset* @@ -2604,17 +2601,18 @@ def tick_values(self, vmin, vmax): else: ticklocs = b ** np.array(decades) - if (len(subs) > 1 - and stride == 1 - and (len(decades) - 2 # major - + ((vmin <= ticklocs) & (ticklocs <= vmax)).sum()) # minor - <= 1): - # If we're a minor locator *that expects at least two ticks per - # decade* and the major locator stride is 1 and there's no more - # than one major or minor tick, switch to AutoLocator. - return AutoLocator().tick_values(vmin, vmax) - else: - return self.raise_if_exceeds(ticklocs) + if is_minor and stride == 1: + numticks = ((vmin <= ticklocs) & (ticklocs <= vmax)).sum() + if subs[0] != 1.0: + # Major ticks are excluded from minor ticks. + numticks += n_avail + if numticks <= 1: + # If we're a minor locator (expecting at least two ticks per + # decade) and the major locator stride is 1 and there's no more + # than one major or minor tick, switch to AutoLocator. + return AutoLocator().tick_values(vmin, vmax) + + return self.raise_if_exceeds(ticklocs) def view_limits(self, vmin, vmax): """Try to choose the view limits intelligently.""" From 6a28effff07f6266978f5d6039216feb09917146 Mon Sep 17 00:00:00 2001 From: schtandard Date: Mon, 16 Mar 2026 12:07:48 +0100 Subject: [PATCH 03/49] Improve symlog ticker The new SymmetricalLogLocator emulates the behavior of LogLocator in the logarithmic region and extends its behavior to the linear part in a (hopefully) reasonable manner. The change is hidden behind a new rcParam (and corresponding class parameters) for now. --- lib/matplotlib/mpl-data/matplotlibrc | 3 + lib/matplotlib/rcsetup.py | 8 + lib/matplotlib/scale.py | 6 +- lib/matplotlib/scale.pyi | 2 +- lib/matplotlib/ticker.py | 509 ++++++++++++++++++++++----- lib/matplotlib/ticker.pyi | 29 +- lib/matplotlib/typing.py | 1 + 7 files changed, 463 insertions(+), 95 deletions(-) diff --git a/lib/matplotlib/mpl-data/matplotlibrc b/lib/matplotlib/mpl-data/matplotlibrc index 3b8d222bb3a0..de0af0c03674 100644 --- a/lib/matplotlib/mpl-data/matplotlibrc +++ b/lib/matplotlib/mpl-data/matplotlibrc @@ -407,6 +407,9 @@ # - above patches but below lines ('line') # - above all (False) +#axes.locator.legacy_symlog_ticker: True # Use legacy tick placement algorithm + # for symlog axes. May cause bad tick + # placement in some cases. #axes.formatter.limits: -5, 6 # use scientific notation if log10 # of the axis range is smaller than the # first or larger than the second diff --git a/lib/matplotlib/rcsetup.py b/lib/matplotlib/rcsetup.py index f88f07c0e82d..3a39c80b28cd 100644 --- a/lib/matplotlib/rcsetup.py +++ b/lib/matplotlib/rcsetup.py @@ -1187,6 +1187,7 @@ def _convert_validator_spec(key, conv): "axes.labelpad": validate_float, # space between label and axis "axes.labelweight": validate_fontweight, # fontsize of x & y labels "axes.labelcolor": validate_color, # color of axis label + "axes.locator.legacy_symlog_ticker": validate_bool, # use scientific notation if log10 of the axis range is smaller than the # first or larger than the second "axes.formatter.limits": validate_intlist, @@ -2081,6 +2082,13 @@ class _Subsection: "- above patches but below lines ('line') " "- above all (False)" ), + _Param( + "axes.locator.legacy_symlog_ticker", + default=True, + validator=validate_bool, + description="When True, ticks in symlog axes are placed using legacy rules. " + "This is known to cause badly labeled axes in some cases." + ), _Param( "axes.formatter.limits", default=[-5, 6], diff --git a/lib/matplotlib/scale.py b/lib/matplotlib/scale.py index d5a2b8dc0d5c..7eed96d25106 100644 --- a/lib/matplotlib/scale.py +++ b/lib/matplotlib/scale.py @@ -610,7 +610,7 @@ class SymmetricalLogScale(ScaleBase): name = 'symlog' @_make_axis_parameter_optional - def __init__(self, axis=None, *, base=10, linthresh=2, subs=None, linscale=1): + def __init__(self, axis=None, *, base=10, linthresh=2, subs='auto', linscale=1): self._transform = SymmetricalLogTransform(base, linthresh, linscale) self.subs = subs @@ -624,7 +624,9 @@ def set_default_locators_and_formatters(self, axis): axis.set_major_formatter(LogFormatterSciNotation(self.base)) axis.set_minor_locator(SymmetricalLogLocator(self.get_transform(), self.subs)) - axis.set_minor_formatter(NullFormatter()) + axis.set_minor_formatter( + LogFormatterSciNotation(self.base, + labelOnlyBase=(self.subs != 'auto'))) def get_transform(self): """Return the `.SymmetricalLogTransform` associated with this scale.""" diff --git a/lib/matplotlib/scale.pyi b/lib/matplotlib/scale.pyi index 866509ee020d..1a0070e2ec3d 100644 --- a/lib/matplotlib/scale.pyi +++ b/lib/matplotlib/scale.pyi @@ -114,7 +114,7 @@ class SymmetricalLogScale(ScaleBase): *, base: float = ..., linthresh: float = ..., - subs: Iterable[int] | None = ..., + subs: Iterable[int] | Literal["auto", "all"] | None = ..., linscale: float = ... ) -> None: ... @property diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 9b6a75d31129..66ff9df46d10 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -908,6 +908,100 @@ def _set_format(self): self._format = r'$\mathdefault{%s}$' % self._format +class _SymmetricalLogUtil: + """ + Helper class for working with symmetrical log scales. + + Parameters + ---------- + transform : `~.scale.SymmetricalLogTransform`, optional + If set, defines *base*, *linthresh* and *linscale* of the symlog transform. + base, linthresh, linscale : float, optional + The *base*, *linthresh* and *linscale* of the symlog transform, as + documented for `.SymmetricalLogScale`. These parameters are only used + if *transform* is not set. + """ + + def __init__(self, transform=None, base=None, linthresh=None, linscale=None): + if transform is not None: + self.base = transform.base + self.linthresh = transform.linthresh + self.linscale = transform.linscale + elif base is not None and linthresh is not None and linscale is not None: + self.base = base + self.linthresh = linthresh + self.linscale = linscale + else: + raise ValueError("Either transform, or all of base, linthresh and " + "linscale must be provided.") + + def _log_b(self, x): + # Use specialized logs if possible, as they can be more accurate; e.g. + # log(.001) / log(10) = -2.999... (whether math.log or np.log) due to + # floating point error. + return (np.log10(x) if self.base == 10 else + np.log2(x) if self.base == 2 else + np.log(x) / np.log(self.base)) + + def pos(self, val): + """ + Calculate the normalized position of the value on the axis. + It is normalized such that the distance between two logarithmic decades + is 1 and the position of linthresh is linscale. + """ + sign, val = np.sign(val), np.abs(val) / self.linthresh + if val > 1: + val = self.linscale + self._log_b(val) + else: + val *= self.linscale + return sign * val + + def unpos(self, val): + """The inverse of pos.""" + sign, val = np.sign(val), np.abs(val) + if val > self.linscale: + val = np.power(self.base, val - self.linscale) + else: + val /= self.linscale + return sign * val * self.linthresh + + def firstdec(self): + """ + Get the first decade (i.e. first positive major tick candidate). + It shall be at least half the width of a logarithmic decade from the + origin (i.e. its pos shall be at least 0.5). + """ + firstexp = np.ceil(self._log_b(self.unpos(0.5))) + firstpow = np.power(self.base, firstexp) + return firstexp, firstpow + + def dec(self, val): + """ + Calculate the decade number of the value. The first decade to have a + position (given by pos) of at least 0.5 is given the number 1, the + value 0 is given the decade number 0. + """ + firstexp, firstpow = self.firstdec() + sign, val = np.sign(val), np.abs(val) + if val > firstpow: + val = self._log_b(val) - firstexp + 1 + else: + # We scale linearly in order to get a monotonous mapping between + # 0 and 1, though the linear nature is arbitrary. + val /= firstpow + return sign * val + + def undec(self, val): + """The inverse of dec.""" + firstexp, firstpow = self.firstdec() + sign, val = np.sign(val), np.abs(val) + if val > 1: + val = np.power(self.base, firstexp + val - 1) + else: + val *= firstpow + return sign * val + + class LogFormatter(Formatter): """ Base class for formatting ticks on a log or symlog scale. @@ -939,9 +1033,13 @@ class LogFormatter(Formatter): usual ``base=10``, all minor ticks are shown only if the axis limit range spans less than 0.4 decades. - linthresh : None or float, default: None - If a symmetric log scale is in use, its ``linthresh`` - parameter must be supplied here. + linthresh, linscale : None or float, default: None + If a symmetric log scale is in use, its ``linthresh`` and ``linscale`` + parameters must be supplied here. + + legacy_symlog_ticker : bool, default: :rc:`axes.locator.legacy_symlog_ticker` + Whether to use the legacy tick placement algorithm for symlog axes, + which is known to cause bad tick placement in some cases. Notes ----- @@ -968,7 +1066,8 @@ class LogFormatter(Formatter): def __init__(self, base=10.0, labelOnlyBase=False, minor_thresholds=None, - linthresh=None): + linthresh=None, linscale=None, *, + legacy_symlog_ticker=None): self.set_base(base) self.set_label_minor(labelOnlyBase) @@ -980,6 +1079,11 @@ def __init__(self, base=10.0, labelOnlyBase=False, self.minor_thresholds = minor_thresholds self._sublabels = None self._linthresh = linthresh + self._linscale = linscale + self._symlogutil = None + self._firstsublabels = None + self._legacy_symlog_ticker = mpl._val_or_rc( + legacy_symlog_ticker, 'axes.locator.legacy_symlog_ticker') def set_base(self, base): """ @@ -1001,6 +1105,22 @@ def set_label_minor(self, labelOnlyBase): """ self.labelOnlyBase = labelOnlyBase + @property + def _symlog(self): + if self._symlogutil is not None: + return True + if self._linthresh is not None and self._linscale is not None: + self._symlogutil = _SymmetricalLogUtil(base=self._base, + linthresh=self._linthresh, + linscale=self._linscale) + return True + try: + self._symlogutil = _SymmetricalLogUtil(self.axis.get_transform()) + return True + except AttributeError: + pass + return False + def set_locs(self, locs=None): """ Use axis view limits to control which ticks are labeled. @@ -1011,19 +1131,11 @@ def set_locs(self, locs=None): self._sublabels = None return - # Handle symlog case: - linthresh = self._linthresh - if linthresh is None: - try: - linthresh = self.axis.get_transform().linthresh - except AttributeError: - pass - vmin, vmax = self.axis.get_view_interval() if vmin > vmax: vmin, vmax = vmax, vmin - if linthresh is None and vmin <= 0: + if not self._symlog and vmin <= 0: # It's probably a colorbar with # a format kwarg setting a LogFormatter in the manner # that worked with 1.5.x, but that doesn't work now. @@ -1032,21 +1144,27 @@ def set_locs(self, locs=None): b = self._base - if linthresh is not None: # symlog - # Only count ticks and decades in the logarithmic part of the axis. - numdec = numticks = 0 - if vmin < -linthresh: - rhs = min(vmax, -linthresh) - numticks += ( - math.floor(math.log(abs(rhs), b)) - - math.floor(math.nextafter(math.log(abs(vmin), b), -math.inf))) - numdec += math.log(vmin / rhs, b) - if vmax > linthresh: - lhs = max(vmin, linthresh) - numticks += ( - math.floor(math.log(vmax, b)) - - math.floor(math.nextafter(math.log(lhs, b), -math.inf))) - numdec += math.log(vmax / lhs, b) + if self._symlog: + if self._legacy_symlog_ticker: + # Only count ticks and decades in the logarithmic part of the axis. + numdec = numticks = 0 + if vmin < -self._symlogutil.linthresh: + rhs = min(vmax, -self._symlogutil.linthresh) + numticks += ( + math.floor(math.log(abs(rhs), b)) + - math.floor(math.nextafter(math.log(abs(vmin), b), -math.inf))) + numdec += math.log(vmin / rhs, b) + if vmax > self._symlogutil.linthresh: + lhs = max(vmin, self._symlogutil.linthresh) + numticks += ( + math.floor(math.log(vmax, b)) + - math.floor(math.nextafter(math.log(lhs, b), -math.inf))) + numdec += math.log(vmax / lhs, b) + else: + minrdec = self._symlogutil.dec(vmin) + maxrdec = self._symlogutil.dec(vmax) + numdec = maxrdec - minrdec + numticks = np.floor(maxrdec) - np.ceil(minrdec) + 1 else: lmin = math.log(vmin, b) lmax = math.log(vmax, b) @@ -1056,6 +1174,8 @@ def set_locs(self, locs=None): if numticks > self.minor_thresholds[0]: # Label only bases self._sublabels = {1} + if self._symlog: + self._firstsublabels = {0} elif numdec > self.minor_thresholds[1]: # Add labels between bases at log-spaced coefficients; # include base powers in case the locations include @@ -1063,9 +1183,25 @@ def set_locs(self, locs=None): c = np.geomspace(1, b, int(b)//2 + 1) self._sublabels = set(np.round(c)) # For base 10, this yields (1, 2, 3, 4, 6, 10). + if self._symlog: + # For the linear part of the scale we use an analog selection. + c = np.linspace(0, b, int(b)//2 + 1) + self._firstsublabels = set(np.round(c)) + # For base 10, this yields (0, 2, 4, 6, 8, 10). else: # Label all integer multiples of base**n. self._sublabels = set(np.arange(1, b + 1)) + if self._symlog: + self._firstsublabels = set(np.arange(0, b + 1)) + + if self._symlog: + _, firstpow = self._symlogutil.firstdec() + if self._firstsublabels == {0} and -firstpow < vmin < vmax < firstpow: + # No minor ticks are being labeled right now and the only major tick is + # at 0. This means the axis scaling cannot be read from the labels. + numsteps = int(np.ceil(firstpow / max(-vmin, vmax))) + step = int(b / numsteps) + self._firstsublabels = set(range(0, int(b) + 1, step)) def _num_to_string(self, x, vmin, vmax): return self._pprint_val(x, vmax - vmin) if 1 <= x <= 10000 else f"{x:1.0e}" @@ -1084,10 +1220,21 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self.labelOnlyBase and not is_x_decade: - return '' - if self._sublabels is not None and coeff not in self._sublabels: - return '' + if self._symlog and not self._legacy_symlog_ticker: + _, firstpow = self._symlogutil.firstdec() + below_firstpow = x < firstpow + else: + below_firstpow = False + if below_firstpow: + if self.labelOnlyBase: + return '' + if self._firstsublabels is not None and coeff not in self._firstsublabels: + return '' + else: + if self.labelOnlyBase and not is_x_decade: + return '' + if self._sublabels is not None and coeff not in self._sublabels: + return '' vmin, vmax = self.axis.get_view_interval() vmin, vmax = mtransforms._nonsingular(vmin, vmax, expander=0.05) @@ -1164,10 +1311,21 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self.labelOnlyBase and not is_x_decade: - return '' - if self._sublabels is not None and coeff not in self._sublabels: - return '' + if self._symlog and not self._legacy_symlog_ticker: + _, firstpow = self._symlogutil.firstdec() + below_firstpow = x < firstpow + else: + below_firstpow = False + if below_firstpow: + if self.labelOnlyBase: + return '' + if self._firstsublabels is not None and coeff not in self._firstsublabels: + return '' + else: + if self.labelOnlyBase and not is_x_decade: + return '' + if self._sublabels is not None and coeff not in self._sublabels: + return '' if is_x_decade: fx = round(fx) @@ -2654,55 +2812,244 @@ class SymmetricalLogLocator(Locator): Place ticks spaced linearly near zero and spaced logarithmically beyond a threshold. """ - def __init__(self, transform=None, subs=None, linthresh=None, base=None): + def __init__(self, transform=None, subs=None, numticks=None, + linthresh=None, base=None, linscale=None, *, + legacy_symlog_ticker=None): """ Parameters ---------- transform : `~.scale.SymmetricalLogTransform`, optional - If set, defines the *base* and *linthresh* of the symlog transform. - base, linthresh : float, optional - The *base* and *linthresh* of the symlog transform, as documented - for `.SymmetricalLogScale`. These parameters are only used if - *transform* is not set. - subs : sequence of float, default: [1] - The multiples of integer powers of the base where ticks are placed, - i.e., ticks are placed at - ``[sub * base**i for i in ... for sub in subs]``. + If set, defines *base*, *lintresh* and *linscale* of the symlog transform. + base, linthresh, linscale : float, optional + The *base*, *linthresh* and *linscale* of the symlog transform, as + documented for `.SymmetricalLogScale`. These parameters are only used + if *transform* is not set. + subs : None, 'auto', 'all' or sequence of float, default: None + The multiples of integer powers of the base at which to place ticks. + The default of ``None`` is equivalent to ``(1.0, )``, i.e. it places + ticks only at integer powers of the base. Permitted string values are + ``'auto'`` and ``'all'``. Both of these use an algorithm based on the + axis view limits to determine whether and how to put ticks between + integer powers of the base. With ``'auto'``, ticks are placed only + between integer powers; with ``'all'``, the integer powers are included. + numticks : None or int, default: None + The maximum number of ticks to allow on a given axis. The default of + ``None`` will try to choose intelligently as long as this Locator has + already been assigned to an axis using `~.axis.Axis.get_tick_space`, but + otherwise falls back to 9. + + legacy_symlog_ticker : bool, default: :rc:`axes.locator.legacy_symlog_ticker` + Whether to use the legacy tick placement algorithm for symlog axes, + which is known to cause bad tick placement in some cases. Notes ----- - Either *transform*, or both *base* and *linthresh*, must be given. + Either *transform*, or all of *base*, *linthresh* and *linscale* must be given. """ - if transform is not None: - self._base = transform.base - self._linthresh = transform.linthresh - elif linthresh is not None and base is not None: - self._base = base - self._linthresh = linthresh - else: - raise ValueError("Either transform, or both linthresh " - "and base, must be provided.") - if subs is None: - self._subs = [1.0] - else: - self._subs = subs - self.numticks = 15 + self._symlogutil = _SymmetricalLogUtil(transform, base, linthresh, linscale) + self._set_subs(subs) + if numticks is None: + if mpl.rcParams['_internal.classic_mode']: + numticks = 15 + else: + numticks = 'auto' + self.numticks = numticks + self._legacy_symlog_ticker = mpl._val_or_rc( + legacy_symlog_ticker, 'axes.locator.legacy_symlog_ticker') - def set_params(self, subs=None, numticks=None): + def set_params(self, subs=None, numticks=None, + base=None, linthresh=None, linscale=None): """Set parameters within this locator.""" if numticks is not None: self.numticks = numticks if subs is not None: + self._set_subs(subs) + if base is not None: + self._symlogutil.base = float(base) + if linthresh is not None: + self._symlogutil.linthresh = float(linthresh) + if linscale is not None: + self._symlogutil.linscale = float(linscale) + + def _set_subs(self, subs): + """ + Set the minor ticks for the log scaling every ``base**i*subs[j]``. + """ + if subs is None: + self._subs = np.array([1.0]) + elif isinstance(subs, str): + _api.check_in_list(('all', 'auto'), subs=subs) self._subs = subs + else: + try: + self._subs = np.asarray(subs, dtype=float) + except ValueError as e: + raise ValueError("subs must be None, 'all', 'auto' or " + "a sequence of floats, not " + f"{subs}.") from e + if self._subs.ndim != 1: + raise ValueError("A sequence passed to subs must be " + "1-dimensional, not " + f"{self._subs.ndim}-dimensional.") def __call__(self): """Return the locations of the ticks.""" - # Note, these are untransformed coordinates vmin, vmax = self.axis.get_view_interval() return self.tick_values(vmin, vmax) def tick_values(self, vmin, vmax): - linthresh = self._linthresh + if self._legacy_symlog_ticker: + return self._tick_values_legacy(vmin, vmax) + + n_request = ( + self.numticks if self.numticks != 'auto' else + np.clip(self.axis.get_tick_space(), 2, 9) if self.axis is not None else + 9) + + if vmax < vmin: + vmin, vmax = vmax, vmin + + haszero = vmin <= 0 <= vmax + minrdec = self._symlogutil.dec(vmin) + maxrdec = self._symlogutil.dec(vmax) + mindec = math.ceil(minrdec) + maxdec = math.floor(maxrdec) + # Number of decade ticks available. + n_avail = maxdec - mindec + 1 + + # Calculate the subs immediately, as we may be able to return early. + if isinstance(self._subs, str): + # Either 'auto' or 'all'. + if n_avail > n_request: + # No minor ticks. + if self._subs == 'auto': + # No major ticks either. + return np.array([]) + else: + subs = np.array([1.0]) + else: + _first = 2.0 if self._subs == 'auto' else 1.0 + subs = np.arange(_first, self._symlogutil.base) + else: + subs = self._subs + + # Get decades between major ticks. + # We follow the same logic as LogLocator (see there for more + # extensive comments), except when 0 is in the axis range. + if mpl.rcParams['_internal.classic_mode']: + stride = max(math.ceil((n_avail - 1) / (n_request - 1)), 1) + decades = np.arange(mindec - stride, maxdec + stride + 1, stride) + else: + # Calculate the minimum possible stride. + stride = n_avail // (n_request + 1) + 1 + # If n_request is impossible, update it to the + # largest possible value. + nr = math.ceil(n_avail / stride) + if nr <= n_request: + n_request = nr + else: + assert nr == n_request + 1 + if n_request == 0: + # No ticks requested or available. + decades = [mindec - 1, maxdec + 1] + if haszero: + stride = np.max(np.abs(decades)) + decades = [-stride, 0, stride] + else: + stride = decades[1] - decades[0] + elif n_request == 1: + # A single tick. + if haszero: + mid = 0 + else: + mid = round((minrdec + maxrdec) / 2) + stride = max(mid - (mindec - 1), (maxdec + 1) - mid) + decades = [mid - stride, mid, mid + stride] + else: + # Calculate the largest possible stride + # resulting in n_request ticks while ticking 0. + stride = math.ceil(n_avail / (n_request - 1)) - 1 + if stride < n_avail / n_request: + stride = n_avail // n_request + # Determine the offset. + offset = (-mindec) % stride + olo = max(n_avail - stride * n_request, 0) + ohi = min(n_avail - stride * (n_request - 1), stride) + if not olo <= offset < ohi: + if haszero: + # We force the offset and instead check if we + # need to reduce stride to get n_request ticks. + # We need the largest stride that will cause an + # additional tick to appear on either side. + # First, calculate the current number of ticks + # on each side. We already know mindec < 0 < maxdec. + posnum = maxdec // stride + negnum = -mindec // stride + # Now calculate the necessary new stride. + posnewstride = maxdec // (posnum + 1) + negnewstride = -mindec // (negnum + 1) + newstride = max(posnewstride, negnewstride) + if n_request == maxdec // newstride - mindec // newstride + 1: + # The new value works out. + stride = newstride + offset = (-mindec) % newstride + else: + offset = olo + decades = np.arange(mindec + offset - stride, + maxdec + stride + 1, + stride) + + # Guess whether we're a minor locator, based on whether subs include + # anything other than 1. + is_minor = len(subs) > 1 or (len(subs) == 1 and subs[0] != 1.0) + if is_minor: + # Minor locator. + if stride == 1: + ticklocs = [] + for dec in decades: + if dec > 0: + ticklocs.append(subs * self._symlogutil.undec(dec)) + elif dec < 0: + ticklocs.append(np.flip(subs * self._symlogutil.undec(dec))) + else: + # We add the usual subs as well as the next lower decade. + zeropow = self._symlogutil.undec(1) / self._symlogutil.base + zeroticks = subs * zeropow + if subs[0] != 1.0: + # Add the otherwise missing minor tick. + zeroticks = np.concatenate(([zeropow], zeroticks)) + ticklocs.append(np.flip(-zeroticks)) + if subs[0] == 1.0: + # Only add a 0 tick if major ticks are not excluded. + ticklocs.append([0.0]) + ticklocs.append(zeroticks) + ticklocs = np.concatenate(ticklocs) + else: + ticklocs = np.array([]) + else: + # Major locator. + ticklocs = np.array([self._symlogutil.undec(dec) for dec in decades]) + + if is_minor and stride == 1: + numticks = ((vmin <= ticklocs) & (ticklocs <= vmax)).sum() + if subs[0] != 1.0: + # Major ticks are excluded from minor ticks. + numticks += n_avail + if numticks <= 1: + # If we're a minor locator (expecting at least two ticks per + # decade) and the major locator stride is 1 and there's no more + # than one major or minor tick, switch to AutoLocator. + return AutoLocator().tick_values(vmin, vmax) + + return self.raise_if_exceeds(ticklocs) + + def _tick_values_legacy(self, vmin, vmax): + if self.numticks == 'auto': + numticks = 15 + else: + numticks = self.numticks + base = self._symlogutil.base + linthresh = self._symlogutil.linthresh if vmax < vmin: vmin, vmax = vmax, vmin @@ -2715,7 +3062,7 @@ def tick_values(self, vmin, vmax): # # a) and c) will have ticks at integral log positions. The # number of ticks needs to be reduced if there are more - # than self.numticks of them. + # than numticks of them. # # b) has a tick at 0 and only 0 (we assume t is a small # number, and the linear segment is just an implementation @@ -2738,8 +3085,6 @@ def tick_values(self, vmin, vmax): # Check if linear range is present has_b = (has_a and vmax > -linthresh) or (has_c and vmin < linthresh) - base = self._base - def get_log_range(lo, hi): lo = np.floor(np.log(lo) / np.log(base)) hi = np.ceil(np.log(hi) / np.log(base)) @@ -2760,7 +3105,7 @@ def get_log_range(lo, hi): total_ticks = (a_hi - a_lo) + (c_hi - c_lo) if has_b: total_ticks += 1 - stride = max(total_ticks // (self.numticks - 1), 1) + stride = max(total_ticks // (numticks - 1), 1) decades = [] if has_a: @@ -2773,34 +3118,18 @@ def get_log_range(lo, hi): if has_c: decades.extend(base ** (np.arange(c_lo, c_hi, stride))) - subs = np.asarray(self._subs) - - if len(subs) > 1 or subs[0] != 1.0: - ticklocs = [] - for decade in decades: - if decade == 0: - ticklocs.append(decade) - else: - ticklocs.extend(subs * decade) - else: - ticklocs = decades + # The legacy locator did not use minor ticks, so we don't support them. + ticklocs = decades return self.raise_if_exceeds(np.array(ticklocs)) def view_limits(self, vmin, vmax): """Try to choose the view limits intelligently.""" - b = self._base - if vmax < vmin: - vmin, vmax = vmax, vmin - + vmin, vmax = self.nonsingular(vmin, vmax) if mpl.rcParams['axes.autolimit_mode'] == 'round_numbers': - vmin = _decade_less_equal(vmin, b) - vmax = _decade_greater_equal(vmax, b) - if vmin == vmax: - vmin = _decade_less(vmin, b) - vmax = _decade_greater(vmax, b) - - return mtransforms._nonsingular(vmin, vmax) + vmin = self._symlogutil.undec(np.floor(self._symlogutil.dec(vmin))) + vmax = self._symlogutil.undec(np.ceil(self._symlogutil.dec(vmax))) + return vmin, vmax class AsinhLocator(Locator): diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index 8625c3ebd3fd..ddb40ebc53e4 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -100,6 +100,20 @@ class ScalarFormatter(Formatter): def format_data_short(self, value: float | np.ma.MaskedArray) -> str: ... def format_data(self, value: float) -> str: ... +class _SymmetricalLogUtil: + def __init__( + self, + transform: Transform | None = ..., + base: float | None = ..., + linthresh: float | None = ..., + linscale: float | None = ..., + ) -> None: ... + def pos(self, val: float) -> float: ... + def unpos(self, val: float) -> float: ... + def firstdec(self) -> tuple[float, float]: ... + def dec(self, val: float) -> float: ... + def undec(self, val: float) -> float: ... + class LogFormatter(Formatter): minor_thresholds: tuple[float, float] def __init__( @@ -108,6 +122,9 @@ class LogFormatter(Formatter): labelOnlyBase: bool = ..., minor_thresholds: tuple[float, float] | None = ..., linthresh: float | None = ..., + linscale: float | None = ..., + *, + legacy_symlog_ticker: bool | None = ..., ) -> None: ... def set_base(self, base: float) -> None: ... labelOnlyBase: bool @@ -262,12 +279,20 @@ class SymmetricalLogLocator(Locator): def __init__( self, transform: Transform | None = ..., - subs: Sequence[float] | None = ..., + subs: Sequence[float] | Literal["auto", "all"] | None = ..., linthresh: float | None = ..., base: float | None = ..., + linscale: float | None = ..., + *, + legacy_symlog_ticker: bool | None = ..., ) -> None: ... def set_params( - self, subs: Sequence[float] | None = ..., numticks: int | None = ... + self, + subs: Sequence[float] | Literal["auto", "all"] | None = ..., + numticks: int | None = ..., + base: float | None = ..., + linthresh: float | None = ..., + linscale: float | None = ..., ) -> None: ... class AsinhLocator(Locator): diff --git a/lib/matplotlib/typing.py b/lib/matplotlib/typing.py index 76b5f2b642f3..71aeb84c00ab 100644 --- a/lib/matplotlib/typing.py +++ b/lib/matplotlib/typing.py @@ -200,6 +200,7 @@ "axes.axisbelow", "axes.edgecolor", "axes.facecolor", + "axes.locator.legacy_symlog_ticker", "axes.formatter.limits", "axes.formatter.min_exponent", "axes.formatter.offset_threshold", From 907a5eb64d72e7d9b3a8f0432b896451d4da9cf8 Mon Sep 17 00:00:00 2001 From: schtandard Date: Mon, 16 Mar 2026 14:02:25 +0100 Subject: [PATCH 04/49] Update symlog tests --- .../test_axes/symlog2_nolegacy.pdf | Bin 0 -> 10151 bytes .../test_axes/symlog_nolegacy.pdf | Bin 0 -> 7539 bytes lib/matplotlib/tests/test_axes.py | 36 ++++++++-- lib/matplotlib/tests/test_ticker.py | 67 ++++++++++++++++-- 4 files changed, 91 insertions(+), 12 deletions(-) create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/symlog2_nolegacy.pdf create mode 100644 lib/matplotlib/tests/baseline_images/test_axes/symlog_nolegacy.pdf diff --git a/lib/matplotlib/tests/baseline_images/test_axes/symlog2_nolegacy.pdf b/lib/matplotlib/tests/baseline_images/test_axes/symlog2_nolegacy.pdf new file mode 100644 index 0000000000000000000000000000000000000000..36fb9b1a144f7f83ea1102169a142da599cb5496 GIT binary patch literal 10151 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 O6~>~Jlnl*`Q2ztp_vgC+ literal 0 HcmV?d00001 diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index 7fedb1828cad..e4d3ed6bc89e 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -1377,11 +1377,9 @@ def test_fill_between_interpolate_nan(): interpolate=True, alpha=0.5) -# test_symlog and test_symlog2 used to have baseline images in all three -# formats, but the png and svg baselines got invalidated by the removal of -# minor tick overstriking. -@image_comparison(['symlog.pdf'], style='mpl20') +@image_comparison(['symlog_nolegacy.pdf'], style='mpl20') def test_symlog(): + mpl.rcParams['axes.locator.legacy_symlog_ticker'] = False x = np.array([0, 1, 2, 4, 6, 9, 12, 24]) y = np.array([1000000, 500000, 100000, 100, 5, 0, 0, 0]) @@ -1392,8 +1390,36 @@ def test_symlog(): ax.set_ylim(-1, 10000000) -@image_comparison(['symlog2.pdf'], remove_text=True, style='_classic_test') +@image_comparison(['symlog2_nolegacy.pdf'], remove_text=True, style='_classic_test') def test_symlog2(): + mpl.rcParams['axes.locator.legacy_symlog_ticker'] = False + # Numbers from -50 to 50, with 0.1 as step + x = np.arange(-50, 50, 0.001) + + fig, axs = plt.subplots(5, 1) + for ax, linthresh in zip(axs, [20., 2., 1., 0.1, 0.01]): + ax.plot(x, x) + ax.set_xscale('symlog', linthresh=linthresh) + ax.grid(True) + axs[-1].set_ylim(-0.1, 0.1) + + +@image_comparison(['symlog.pdf'], style='mpl20') +def test_legacy_symlog(): + mpl.rcParams['axes.locator.legacy_symlog_ticker'] = True + x = np.array([0, 1, 2, 4, 6, 9, 12, 24]) + y = np.array([1000000, 500000, 100000, 100, 5, 0, 0, 0]) + + fig, ax = plt.subplots() + ax.plot(x, y) + ax.set_yscale('symlog') + ax.set_xscale('linear') + ax.set_ylim(-1, 10000000) + + +@image_comparison(['symlog2.pdf'], remove_text=True, style='_classic_test') +def test_legacy_symlog2(): + mpl.rcParams['axes.locator.legacy_symlog_ticker'] = True # Numbers from -50 to 50, with 0.1 as step x = np.arange(-50, 50, 0.001) diff --git a/lib/matplotlib/tests/test_ticker.py b/lib/matplotlib/tests/test_ticker.py index d2bc7bc7a281..da061ba6bf25 100644 --- a/lib/matplotlib/tests/test_ticker.py +++ b/lib/matplotlib/tests/test_ticker.py @@ -624,12 +624,62 @@ def test_tick_values_not_exceeding_vmax(self): class TestSymmetricalLogLocator: def test_set_params(self): """ - Create symmetrical log locator with default subs =[1.0] numticks = 15, + Create symmetrical log locator with default subs=[1.0] numticks='auto', and change it to something else. See if change was successful. Should not exception. """ - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1) + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + legacy_symlog_ticker=False) + sym.set_params(subs=[2.0], numticks=8) + assert sym._subs == [2.0] + assert sym.numticks == 8 + + @pytest.mark.parametrize( + 'vmin, vmax, expected', + [ + (0, 1, [-1, 0, 1, 10]), + (-1, 1, [-10, -1, 0, 1, 10]), + ], + ) + def test_values(self, vmin, vmax, expected): + # https://github.com/matplotlib/matplotlib/issues/25945 + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + legacy_symlog_ticker=False) + ticks = sym.tick_values(vmin=vmin, vmax=vmax) + assert_array_equal(ticks, expected) + + def test_subs(self): + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + subs=[2.0, 4.0], legacy_symlog_ticker=False) + sym.create_dummy_axis() + sym.axis.set_view_interval(-10, 10) + assert_array_equal(sym(), [-400, -200, -40, -20, -4, -2, -0.4, -0.2, -0.1, + 0.1, 0.2, 0.4, 2, 4, 20, 40, 200, 400]) + + def test_extending(self): + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + legacy_symlog_ticker=False) + sym.create_dummy_axis() + sym.axis.set_view_interval(8, 9) + assert_array_equal(sym(), [1, 10]) + sym.axis.set_view_interval(8, 12) + assert_array_equal(sym(), [1, 10, 100]) + assert sym.view_limits(10, 10) == (1, 100) + assert sym.view_limits(-10, -10) == (-100, -1) + assert sym.view_limits(0, 0) == (-1, 1) + + +class TestLegacySymmetricalLogLocator: + def test_set_params(self): + """ + Create symmetrical log locator with default subs=[1.0] numticks='auto', + and change it to something else. + See if change was successful. + Should not exception. + """ + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + legacy_symlog_ticker=True) sym.set_params(subs=[2.0], numticks=8) assert sym._subs == [2.0] assert sym.numticks == 8 @@ -643,18 +693,21 @@ def test_set_params(self): ) def test_values(self, vmin, vmax, expected): # https://github.com/matplotlib/matplotlib/issues/25945 - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1) + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + legacy_symlog_ticker=True) ticks = sym.tick_values(vmin=vmin, vmax=vmax) assert_array_equal(ticks, expected) def test_subs(self): - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, subs=[2.0, 4.0]) + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + subs=[2.0, 4.0], legacy_symlog_ticker=True) sym.create_dummy_axis() sym.axis.set_view_interval(-10, 10) - assert_array_equal(sym(), [-20, -40, -2, -4, 0, 2, 4, 20, 40]) + assert_array_equal(sym(), [-10, -1, 0, 1, 10]) def test_extending(self): - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1) + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, + legacy_symlog_ticker=True) sym.create_dummy_axis() sym.axis.set_view_interval(8, 9) assert (sym() == [1.0]).all() @@ -662,7 +715,7 @@ def test_extending(self): assert (sym() == [1.0, 10.0]).all() assert sym.view_limits(10, 10) == (1, 100) assert sym.view_limits(-10, -10) == (-100, -1) - assert sym.view_limits(0, 0) == (-0.001, 0.001) + assert sym.view_limits(0, 0) == (-1, 1) class TestAsinhLocator: From 2df2b64a3e6d50e32bec99c840db22cb7ddb139d Mon Sep 17 00:00:00 2001 From: schtandard Date: Mon, 16 Mar 2026 14:42:59 +0100 Subject: [PATCH 05/49] Rename new rcParam --- lib/matplotlib/mpl-data/matplotlibrc | 6 +++--- lib/matplotlib/rcsetup.py | 16 ++++++++-------- lib/matplotlib/tests/test_axes.py | 8 ++++---- lib/matplotlib/ticker.py | 8 ++++---- lib/matplotlib/typing.py | 2 +- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/lib/matplotlib/mpl-data/matplotlibrc b/lib/matplotlib/mpl-data/matplotlibrc index de0af0c03674..5a73227403d9 100644 --- a/lib/matplotlib/mpl-data/matplotlibrc +++ b/lib/matplotlib/mpl-data/matplotlibrc @@ -407,9 +407,6 @@ # - above patches but below lines ('line') # - above all (False) -#axes.locator.legacy_symlog_ticker: True # Use legacy tick placement algorithm - # for symlog axes. May cause bad tick - # placement in some cases. #axes.formatter.limits: -5, 6 # use scientific notation if log10 # of the axis range is smaller than the # first or larger than the second @@ -429,6 +426,9 @@ # will be used when it can remove # at least this number of significant # digits from tick labels. +#axes.formatter.legacy_symlog_ticker: True # Use legacy tick placement algorithm + # for symlog axes. May cause bad tick + # placement in some cases. #axes.spines.left: True # display axis spines #axes.spines.bottom: True diff --git a/lib/matplotlib/rcsetup.py b/lib/matplotlib/rcsetup.py index 3a39c80b28cd..2657e000828a 100644 --- a/lib/matplotlib/rcsetup.py +++ b/lib/matplotlib/rcsetup.py @@ -1187,7 +1187,6 @@ def _convert_validator_spec(key, conv): "axes.labelpad": validate_float, # space between label and axis "axes.labelweight": validate_fontweight, # fontsize of x & y labels "axes.labelcolor": validate_color, # color of axis label - "axes.locator.legacy_symlog_ticker": validate_bool, # use scientific notation if log10 of the axis range is smaller than the # first or larger than the second "axes.formatter.limits": validate_intlist, @@ -1198,6 +1197,7 @@ def _convert_validator_spec(key, conv): "axes.formatter.min_exponent": validate_int, "axes.formatter.useoffset": validate_bool, "axes.formatter.offset_threshold": validate_int, + "axes.formatter.legacy_symlog_ticker": validate_bool, "axes.unicode_minus": validate_bool, # This entry can be either a cycler object or a string repr of a # cycler-object, which is parsed safely via AST. @@ -2082,13 +2082,6 @@ class _Subsection: "- above patches but below lines ('line') " "- above all (False)" ), - _Param( - "axes.locator.legacy_symlog_ticker", - default=True, - validator=validate_bool, - description="When True, ticks in symlog axes are placed using legacy rules. " - "This is known to cause badly labeled axes in some cases." - ), _Param( "axes.formatter.limits", default=[-5, 6], @@ -2131,6 +2124,13 @@ class _Subsection: "remove at least this number of significant digits from tick " "labels." ), + _Param( + "axes.formatter.legacy_symlog_ticker", + default=True, + validator=validate_bool, + description="When True, ticks in symlog axes are placed using legacy rules. " + "This is known to cause badly labeled axes in some cases." + ), _Param( "axes.spines.left", default=True, diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index e4d3ed6bc89e..5a8f744c63c2 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -1379,7 +1379,7 @@ def test_fill_between_interpolate_nan(): @image_comparison(['symlog_nolegacy.pdf'], style='mpl20') def test_symlog(): - mpl.rcParams['axes.locator.legacy_symlog_ticker'] = False + mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = False x = np.array([0, 1, 2, 4, 6, 9, 12, 24]) y = np.array([1000000, 500000, 100000, 100, 5, 0, 0, 0]) @@ -1392,7 +1392,7 @@ def test_symlog(): @image_comparison(['symlog2_nolegacy.pdf'], remove_text=True, style='_classic_test') def test_symlog2(): - mpl.rcParams['axes.locator.legacy_symlog_ticker'] = False + mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = False # Numbers from -50 to 50, with 0.1 as step x = np.arange(-50, 50, 0.001) @@ -1406,7 +1406,7 @@ def test_symlog2(): @image_comparison(['symlog.pdf'], style='mpl20') def test_legacy_symlog(): - mpl.rcParams['axes.locator.legacy_symlog_ticker'] = True + mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = True x = np.array([0, 1, 2, 4, 6, 9, 12, 24]) y = np.array([1000000, 500000, 100000, 100, 5, 0, 0, 0]) @@ -1419,7 +1419,7 @@ def test_legacy_symlog(): @image_comparison(['symlog2.pdf'], remove_text=True, style='_classic_test') def test_legacy_symlog2(): - mpl.rcParams['axes.locator.legacy_symlog_ticker'] = True + mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = True # Numbers from -50 to 50, with 0.1 as step x = np.arange(-50, 50, 0.001) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 66ff9df46d10..72d28731c3de 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1037,7 +1037,7 @@ class LogFormatter(Formatter): If a symmetric log scale is in use, its ``linthresh`` and ``linscale`` parameters must be supplied here. - legacy_symlog_ticker : bool, default: :rc:`axes.locator.legacy_symlog_ticker` + legacy_symlog_ticker : bool, default: :rc:`axes.formatter.legacy_symlog_ticker` Whether to use the legacy tick placement algorithm for symlog axes, which is known to cause bad tick placement in some cases. @@ -1083,7 +1083,7 @@ def __init__(self, base=10.0, labelOnlyBase=False, self._symlogutil = None self._firstsublabels = None self._legacy_symlog_ticker = mpl._val_or_rc( - legacy_symlog_ticker, 'axes.locator.legacy_symlog_ticker') + legacy_symlog_ticker, 'axes.formatter.legacy_symlog_ticker') def set_base(self, base): """ @@ -2838,7 +2838,7 @@ def __init__(self, transform=None, subs=None, numticks=None, already been assigned to an axis using `~.axis.Axis.get_tick_space`, but otherwise falls back to 9. - legacy_symlog_ticker : bool, default: :rc:`axes.locator.legacy_symlog_ticker` + legacy_symlog_ticker : bool, default: :rc:`axes.formatter.legacy_symlog_ticker` Whether to use the legacy tick placement algorithm for symlog axes, which is known to cause bad tick placement in some cases. @@ -2855,7 +2855,7 @@ def __init__(self, transform=None, subs=None, numticks=None, numticks = 'auto' self.numticks = numticks self._legacy_symlog_ticker = mpl._val_or_rc( - legacy_symlog_ticker, 'axes.locator.legacy_symlog_ticker') + legacy_symlog_ticker, 'axes.formatter.legacy_symlog_ticker') def set_params(self, subs=None, numticks=None, base=None, linthresh=None, linscale=None): diff --git a/lib/matplotlib/typing.py b/lib/matplotlib/typing.py index 71aeb84c00ab..079c2cec25eb 100644 --- a/lib/matplotlib/typing.py +++ b/lib/matplotlib/typing.py @@ -200,13 +200,13 @@ "axes.axisbelow", "axes.edgecolor", "axes.facecolor", - "axes.locator.legacy_symlog_ticker", "axes.formatter.limits", "axes.formatter.min_exponent", "axes.formatter.offset_threshold", "axes.formatter.use_locale", "axes.formatter.use_mathtext", "axes.formatter.useoffset", + "axes.formatter.legacy_symlog_ticker", "axes.grid", "axes.grid.axis", "axes.grid.which", From 97063d52d4198390409b7a15b4775401f2ae1fbd Mon Sep 17 00:00:00 2001 From: schtandard Date: Mon, 16 Mar 2026 15:04:27 +0100 Subject: [PATCH 06/49] Streamline subtick determination - For SymLogLocator, do not use a hard-coded limit preventing minor ticks. Instead, always use the same behavior. - For LogLocator, revert to the old behavior with the hard-coded limit of 10 available major ticks. --- lib/matplotlib/ticker.py | 46 +++++++++++++++++++++++++--------------- 1 file changed, 29 insertions(+), 17 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 72d28731c3de..26137ece5065 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -2675,7 +2675,7 @@ def tick_values(self, vmin, vmax): n_avail = emax - emin + 1 # Total number of decade ticks available. if isinstance(self._subs, str): - if n_avail > n_request or b < 3: + if n_avail >= 10 or b < 3: if self._subs == 'auto': return np.array([]) # no minor or major ticks else: @@ -2917,22 +2917,6 @@ def tick_values(self, vmin, vmax): # Number of decade ticks available. n_avail = maxdec - mindec + 1 - # Calculate the subs immediately, as we may be able to return early. - if isinstance(self._subs, str): - # Either 'auto' or 'all'. - if n_avail > n_request: - # No minor ticks. - if self._subs == 'auto': - # No major ticks either. - return np.array([]) - else: - subs = np.array([1.0]) - else: - _first = 2.0 if self._subs == 'auto' else 1.0 - subs = np.arange(_first, self._symlogutil.base) - else: - subs = self._subs - # Get decades between major ticks. # We follow the same logic as LogLocator (see there for more # extensive comments), except when 0 is in the axis range. @@ -2999,6 +2983,13 @@ def tick_values(self, vmin, vmax): maxdec + stride + 1, stride) + if isinstance(self._subs, str): + # Either 'auto' or 'all'. + _first = 2.0 if self._subs == 'auto' else 1.0 + subs = np.arange(_first, self._symlogutil.base) + else: + subs = self._subs + # Guess whether we're a minor locator, based on whether subs include # anything other than 1. is_minor = len(subs) > 1 or (len(subs) == 1 and subs[0] != 1.0) @@ -3118,6 +3109,27 @@ def get_log_range(lo, hi): if has_c: decades.extend(base ** (np.arange(c_lo, c_hi, stride))) + # The legacy symlog ticker did not use minor ticks by default, + # but they could be obtained explicitly, so we still want to + # support them. However, string values were not supported then + # but are the default now, so we need to test for it. + if isinstance(self._subs, str): + # Either 'auto' or 'all'. + _first = 2.0 if self._subs == 'auto' else 1.0 + subs = np.arange(_first, self._symlogutil.base) + else: + subs = np.asarray(self._subs) + + if len(subs) > 1 or subs[0] != 1.0: + ticklocs = [] + for decade in decades: + if decade == 0: + ticklocs.append(decade) + else: + ticklocs.extend(subs * decade) + else: + ticklocs = decades + # The legacy locator did not use minor ticks, so we don't support them. ticklocs = decades From e9be32dee52cb71a0a1e5723ee9cb09663535772 Mon Sep 17 00:00:00 2001 From: schtandard Date: Mon, 16 Mar 2026 15:55:13 +0100 Subject: [PATCH 07/49] Fix missing stub parameter --- lib/matplotlib/ticker.pyi | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index ddb40ebc53e4..01c13b7455de 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -280,6 +280,7 @@ class SymmetricalLogLocator(Locator): self, transform: Transform | None = ..., subs: Sequence[float] | Literal["auto", "all"] | None = ..., + numticks: int | None = ..., linthresh: float | None = ..., base: float | None = ..., linscale: float | None = ..., From 42772e56bca3b30f549d98fcaa70b0714051a94c Mon Sep 17 00:00:00 2001 From: schtandard Date: Wed, 24 Jun 2026 12:46:49 +0200 Subject: [PATCH 08/49] Remove legacy behavior --- lib/matplotlib/mpl-data/matplotlibrc | 3 - lib/matplotlib/rcsetup.py | 8 - .../baseline_images/test_axes/symlog.pdf | Bin 5349 -> 4694 bytes .../baseline_images/test_axes/symlog2.pdf | Bin 6640 -> 10151 bytes .../test_axes/symlog2_nolegacy.pdf | Bin 10151 -> 0 bytes .../test_axes/symlog_nolegacy.pdf | Bin 7539 -> 0 bytes lib/matplotlib/tests/test_axes.py | 33 +--- lib/matplotlib/tests/test_ticker.py | 59 +------ lib/matplotlib/ticker.py | 160 +----------------- lib/matplotlib/ticker.pyi | 4 - lib/matplotlib/typing.py | 1 - 11 files changed, 14 insertions(+), 254 deletions(-) delete mode 100644 lib/matplotlib/tests/baseline_images/test_axes/symlog2_nolegacy.pdf delete mode 100644 lib/matplotlib/tests/baseline_images/test_axes/symlog_nolegacy.pdf diff --git a/lib/matplotlib/mpl-data/matplotlibrc b/lib/matplotlib/mpl-data/matplotlibrc index 5a73227403d9..3b8d222bb3a0 100644 --- a/lib/matplotlib/mpl-data/matplotlibrc +++ b/lib/matplotlib/mpl-data/matplotlibrc @@ -426,9 +426,6 @@ # will be used when it can remove # at least this number of significant # digits from tick labels. -#axes.formatter.legacy_symlog_ticker: True # Use legacy tick placement algorithm - # for symlog axes. May cause bad tick - # placement in some cases. #axes.spines.left: True # display axis spines #axes.spines.bottom: True diff --git a/lib/matplotlib/rcsetup.py b/lib/matplotlib/rcsetup.py index 2657e000828a..f88f07c0e82d 100644 --- a/lib/matplotlib/rcsetup.py +++ b/lib/matplotlib/rcsetup.py @@ -1197,7 +1197,6 @@ def _convert_validator_spec(key, conv): "axes.formatter.min_exponent": validate_int, "axes.formatter.useoffset": validate_bool, "axes.formatter.offset_threshold": validate_int, - "axes.formatter.legacy_symlog_ticker": validate_bool, "axes.unicode_minus": validate_bool, # This entry can be either a cycler object or a string repr of a # cycler-object, which is parsed safely via AST. @@ -2124,13 +2123,6 @@ class _Subsection: "remove at least this number of significant digits from tick " "labels." ), - _Param( - "axes.formatter.legacy_symlog_ticker", - default=True, - validator=validate_bool, - description="When True, ticks in symlog axes are placed using legacy rules. " - "This is known to cause badly labeled axes in some cases." - ), _Param( "axes.spines.left", default=True, diff --git a/lib/matplotlib/tests/baseline_images/test_axes/symlog.pdf b/lib/matplotlib/tests/baseline_images/test_axes/symlog.pdf index a7f9fe438ffcb9d61b5421375d0f2bad5a317f25..55321d3889eb4116afe4fab9163936fc8d6cec91 100644 GIT binary patch delta 2850 zcmZWqc|4Ts7dIN)7~7aA#49tl$gFl{$)J&CRMr;85HeG?vSe(bh0IJ55lSv4SuO@Q zgi$FHAxl!WNR;eL{YLk9KcDV({&+vnIq!MSd7tn1d!Bbptp`zZ1w<#>%A&=e&i;V! zOEt?1?ISA?6&P#~Bdj3oj`5Won7R6idh)FDXMb&YF3g9uFglx_{q)+msiv`61?e>J z&*Yy!1|R14aAM8qf)Z@wTS3s)z(+8?*wJnWXy>^V&j(hHJ(w?lV#=&>8Pi=<@JbBqDv%$$S7-Dy;%nL>ab`$DW#_N`K&WzTtwq06d zpZ%lQT^9~zLg1MnmnxfhPKC9aN8MA;wh&(u5}@;m27cdjkrAdYnUF&CiRqXaE|*tir+q4J=yN>zCi5~9`5>vGvD+aF=r&K}39eww zMItCv11&*;MO&Z z3pkMrBGX+lp>}O+an>4gr%WxnI`1L@244@#CmINg_mt@X zw>X6KlY12XOsOEEpv$r$dnbm-pI#e`p%6Gxd&v9O(y$x*99c!EH&RJi_ zdQBQg?Q?Zco>H&>o`}N;pVQwy^GsBvGd-)jk~ER*G^^P$>)j{%t_PUXeg)4b3X3Kuzu`KA)Ce5f0i*0x+Hx*bYuLzf~rAZZS%WgX0W6k=(AQ(`AdzL(Hcs^DXDUM&4kG) ze~;67C%ruQJ)HqGP=jH2@}x?_)>u*k%DhC$mdk>V%`r8P&D~Q=*W9)DeT_%ja`1{PV{fF}N9s3>m3ed3Uq^R$&zLx08oN*= zqhu`O+IhsrQjTT0+;q&hCc-DNBKd-*+06OHi%0BX9?=BB$Vr*hmYI_KnzQ!?K3G8g zUu~y9WZo^Rag-U<{c^cGH&nBX|0^}0&udctsQal>lW#c|$rl!PT>pBeD-Z#9v5vdU zt~#%}52|M*ReM@?ULO8QIA|eO?iP%3Kpd;$EFJ$NNo<$o)HROV+&2AZ=7i|rlVfFl z1!jM8$WcY-hxG_IJnyLNQgZ zvQpmLSgqJWdmoj0-ic+q%EFb(Uy$>d4kMZ;_pWw%1q=hK8T^_u=SK<=elbg+LP4tV z>;%59XLfZ(KutNSnN`Te7_&JZN_3=s?OE=8d^X}Ei2rSr6A?~Y9X`~>Y&vzG0CduG87RFNA3+}V`<>L9@-I zENRaTl4=k~b4;SPi#{!1)mcCM>N%pn*fgHW*M=rEg4^fUKOq7>x_)aF$=V|BcPQ%Fw1(vjk9>1BbrO82i)=`lo|13*I9th*HfR>j} z2nE37S*JxQ|GerIt%9IXfHqbe&_Bdz z`iM$7Xp+C2_p|y((|L{sPo%=aZ098FL#o;{1lRGpePpnI5roagTgFMKke%&gFc^8~ z$T7q7EmngxVsmwQe`zJ(4*~}nFJg18HEFqlC#oKN@yS~u8-?D;gw^gfTIOpyfsIl$ z&dm?8jit+bfp2prZ0z4Pf3Ysx-?BC?(V8i}mX_zhUN-UAF&$U*xI?1DS3f5A$j_z zL5#b`Q16#4+xtOu9^Uy#4un#ER6-0SkKuhO^!Rc+;i$m%C2651V0C%6$lz>f6v>bfGxN61&S|l1Ri2FzSrFbi<7gx!f a)R8t>3k-4(2>Qht4voe`kVtb|0_1-qV7O-h delta 3441 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 RMh9aF7$jInhhl31{tttOtVjR= diff --git a/lib/matplotlib/tests/baseline_images/test_axes/symlog2.pdf b/lib/matplotlib/tests/baseline_images/test_axes/symlog2.pdf index d5b93ce3bfbef2114250d6e587b7f9c6c6ab0772..36fb9b1a144f7f83ea1102169a142da599cb5496 100644 GIT binary patch literal 10151 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 J-_%y2{6EuH8O;Cy diff --git a/lib/matplotlib/tests/baseline_images/test_axes/symlog2_nolegacy.pdf b/lib/matplotlib/tests/baseline_images/test_axes/symlog2_nolegacy.pdf deleted file mode 100644 index 36fb9b1a144f7f83ea1102169a142da599cb5496..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10151 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 O6~>~Jlnl*`Q2ztp_vgC+ diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index 5a8f744c63c2..cc4f3c6453f4 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -1377,36 +1377,8 @@ def test_fill_between_interpolate_nan(): interpolate=True, alpha=0.5) -@image_comparison(['symlog_nolegacy.pdf'], style='mpl20') -def test_symlog(): - mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = False - x = np.array([0, 1, 2, 4, 6, 9, 12, 24]) - y = np.array([1000000, 500000, 100000, 100, 5, 0, 0, 0]) - - fig, ax = plt.subplots() - ax.plot(x, y) - ax.set_yscale('symlog') - ax.set_xscale('linear') - ax.set_ylim(-1, 10000000) - - -@image_comparison(['symlog2_nolegacy.pdf'], remove_text=True, style='_classic_test') -def test_symlog2(): - mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = False - # Numbers from -50 to 50, with 0.1 as step - x = np.arange(-50, 50, 0.001) - - fig, axs = plt.subplots(5, 1) - for ax, linthresh in zip(axs, [20., 2., 1., 0.1, 0.01]): - ax.plot(x, x) - ax.set_xscale('symlog', linthresh=linthresh) - ax.grid(True) - axs[-1].set_ylim(-0.1, 0.1) - - @image_comparison(['symlog.pdf'], style='mpl20') -def test_legacy_symlog(): - mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = True +def test_symlog(): x = np.array([0, 1, 2, 4, 6, 9, 12, 24]) y = np.array([1000000, 500000, 100000, 100, 5, 0, 0, 0]) @@ -1418,8 +1390,7 @@ def test_legacy_symlog(): @image_comparison(['symlog2.pdf'], remove_text=True, style='_classic_test') -def test_legacy_symlog2(): - mpl.rcParams['axes.formatter.legacy_symlog_ticker'] = True +def test_symlog2(): # Numbers from -50 to 50, with 0.1 as step x = np.arange(-50, 50, 0.001) diff --git a/lib/matplotlib/tests/test_ticker.py b/lib/matplotlib/tests/test_ticker.py index da061ba6bf25..e73e007b4776 100644 --- a/lib/matplotlib/tests/test_ticker.py +++ b/lib/matplotlib/tests/test_ticker.py @@ -629,8 +629,7 @@ def test_set_params(self): See if change was successful. Should not exception. """ - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - legacy_symlog_ticker=False) + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1) sym.set_params(subs=[2.0], numticks=8) assert sym._subs == [2.0] assert sym.numticks == 8 @@ -644,22 +643,20 @@ def test_set_params(self): ) def test_values(self, vmin, vmax, expected): # https://github.com/matplotlib/matplotlib/issues/25945 - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - legacy_symlog_ticker=False) + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1) ticks = sym.tick_values(vmin=vmin, vmax=vmax) assert_array_equal(ticks, expected) def test_subs(self): sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - subs=[2.0, 4.0], legacy_symlog_ticker=False) + subs=[2.0, 4.0]) sym.create_dummy_axis() sym.axis.set_view_interval(-10, 10) assert_array_equal(sym(), [-400, -200, -40, -20, -4, -2, -0.4, -0.2, -0.1, 0.1, 0.2, 0.4, 2, 4, 20, 40, 200, 400]) def test_extending(self): - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - legacy_symlog_ticker=False) + sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1) sym.create_dummy_axis() sym.axis.set_view_interval(8, 9) assert_array_equal(sym(), [1, 10]) @@ -670,54 +667,6 @@ def test_extending(self): assert sym.view_limits(0, 0) == (-1, 1) -class TestLegacySymmetricalLogLocator: - def test_set_params(self): - """ - Create symmetrical log locator with default subs=[1.0] numticks='auto', - and change it to something else. - See if change was successful. - Should not exception. - """ - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - legacy_symlog_ticker=True) - sym.set_params(subs=[2.0], numticks=8) - assert sym._subs == [2.0] - assert sym.numticks == 8 - - @pytest.mark.parametrize( - 'vmin, vmax, expected', - [ - (0, 1, [0, 1]), - (-1, 1, [-1, 0, 1]), - ], - ) - def test_values(self, vmin, vmax, expected): - # https://github.com/matplotlib/matplotlib/issues/25945 - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - legacy_symlog_ticker=True) - ticks = sym.tick_values(vmin=vmin, vmax=vmax) - assert_array_equal(ticks, expected) - - def test_subs(self): - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - subs=[2.0, 4.0], legacy_symlog_ticker=True) - sym.create_dummy_axis() - sym.axis.set_view_interval(-10, 10) - assert_array_equal(sym(), [-10, -1, 0, 1, 10]) - - def test_extending(self): - sym = mticker.SymmetricalLogLocator(base=10, linthresh=1, linscale=1, - legacy_symlog_ticker=True) - sym.create_dummy_axis() - sym.axis.set_view_interval(8, 9) - assert (sym() == [1.0]).all() - sym.axis.set_view_interval(8, 12) - assert (sym() == [1.0, 10.0]).all() - assert sym.view_limits(10, 10) == (1, 100) - assert sym.view_limits(-10, -10) == (-100, -1) - assert sym.view_limits(0, 0) == (-1, 1) - - class TestAsinhLocator: def test_init(self): lctr = mticker.AsinhLocator(linear_width=2.718, numticks=19) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 26137ece5065..c631b8285183 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1037,10 +1037,6 @@ class LogFormatter(Formatter): If a symmetric log scale is in use, its ``linthresh`` and ``linscale`` parameters must be supplied here. - legacy_symlog_ticker : bool, default: :rc:`axes.formatter.legacy_symlog_ticker` - Whether to use the legacy tick placement algorithm for symlog axes, - which is known to cause bad tick placement in some cases. - Notes ----- The `set_locs` method must be called to enable the subsetting @@ -1066,8 +1062,7 @@ class LogFormatter(Formatter): def __init__(self, base=10.0, labelOnlyBase=False, minor_thresholds=None, - linthresh=None, linscale=None, *, - legacy_symlog_ticker=None): + linthresh=None, linscale=None): self.set_base(base) self.set_label_minor(labelOnlyBase) @@ -1082,8 +1077,6 @@ def __init__(self, base=10.0, labelOnlyBase=False, self._linscale = linscale self._symlogutil = None self._firstsublabels = None - self._legacy_symlog_ticker = mpl._val_or_rc( - legacy_symlog_ticker, 'axes.formatter.legacy_symlog_ticker') def set_base(self, base): """ @@ -1145,26 +1138,10 @@ def set_locs(self, locs=None): b = self._base if self._symlog: - if self._legacy_symlog_ticker: - # Only count ticks and decades in the logarithmic part of the axis. - numdec = numticks = 0 - if vmin < -self._symlogutil.linthresh: - rhs = min(vmax, -self._symlogutil.linthresh) - numticks += ( - math.floor(math.log(abs(rhs), b)) - - math.floor(math.nextafter(math.log(abs(vmin), b), -math.inf))) - numdec += math.log(vmin / rhs, b) - if vmax > self._symlogutil.linthresh: - lhs = max(vmin, self._symlogutil.linthresh) - numticks += ( - math.floor(math.log(vmax, b)) - - math.floor(math.nextafter(math.log(lhs, b), -math.inf))) - numdec += math.log(vmax / lhs, b) - else: - minrdec = self._symlogutil.dec(vmin) - maxrdec = self._symlogutil.dec(vmax) - numdec = maxrdec - minrdec - numticks = np.floor(maxrdec) - np.ceil(minrdec) + 1 + minrdec = self._symlogutil.dec(vmin) + maxrdec = self._symlogutil.dec(vmax) + numdec = maxrdec - minrdec + numticks = np.floor(maxrdec) - np.ceil(minrdec) + 1 else: lmin = math.log(vmin, b) lmax = math.log(vmax, b) @@ -1220,12 +1197,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._symlog and not self._legacy_symlog_ticker: - _, firstpow = self._symlogutil.firstdec() - below_firstpow = x < firstpow - else: - below_firstpow = False - if below_firstpow: + if self._symlog and x < self._symlogutil.firstdec()[1]: if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -1311,12 +1283,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._symlog and not self._legacy_symlog_ticker: - _, firstpow = self._symlogutil.firstdec() - below_firstpow = x < firstpow - else: - below_firstpow = False - if below_firstpow: + if self._symlog and x < self._symlogutil.firstdec()[1]: if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -2813,8 +2780,7 @@ class SymmetricalLogLocator(Locator): """ def __init__(self, transform=None, subs=None, numticks=None, - linthresh=None, base=None, linscale=None, *, - legacy_symlog_ticker=None): + linthresh=None, base=None, linscale=None): """ Parameters ---------- @@ -2838,10 +2804,6 @@ def __init__(self, transform=None, subs=None, numticks=None, already been assigned to an axis using `~.axis.Axis.get_tick_space`, but otherwise falls back to 9. - legacy_symlog_ticker : bool, default: :rc:`axes.formatter.legacy_symlog_ticker` - Whether to use the legacy tick placement algorithm for symlog axes, - which is known to cause bad tick placement in some cases. - Notes ----- Either *transform*, or all of *base*, *linthresh* and *linscale* must be given. @@ -2854,8 +2816,6 @@ def __init__(self, transform=None, subs=None, numticks=None, else: numticks = 'auto' self.numticks = numticks - self._legacy_symlog_ticker = mpl._val_or_rc( - legacy_symlog_ticker, 'axes.formatter.legacy_symlog_ticker') def set_params(self, subs=None, numticks=None, base=None, linthresh=None, linscale=None): @@ -2898,9 +2858,6 @@ def __call__(self): return self.tick_values(vmin, vmax) def tick_values(self, vmin, vmax): - if self._legacy_symlog_ticker: - return self._tick_values_legacy(vmin, vmax) - n_request = ( self.numticks if self.numticks != 'auto' else np.clip(self.axis.get_tick_space(), 2, 9) if self.axis is not None else @@ -3034,107 +2991,6 @@ def tick_values(self, vmin, vmax): return self.raise_if_exceeds(ticklocs) - def _tick_values_legacy(self, vmin, vmax): - if self.numticks == 'auto': - numticks = 15 - else: - numticks = self.numticks - base = self._symlogutil.base - linthresh = self._symlogutil.linthresh - - if vmax < vmin: - vmin, vmax = vmax, vmin - - # The domain is divided into three sections, only some of - # which may actually be present. - # - # <======== -t ==0== t ========> - # aaaaaaaaa bbbbb ccccccccc - # - # a) and c) will have ticks at integral log positions. The - # number of ticks needs to be reduced if there are more - # than numticks of them. - # - # b) has a tick at 0 and only 0 (we assume t is a small - # number, and the linear segment is just an implementation - # detail and not interesting.) - # - # We could also add ticks at t, but that seems to usually be - # uninteresting. - # - # "simple" mode is when the range falls entirely within [-t, t] - # -- it should just display (vmin, 0, vmax) - if -linthresh <= vmin < vmax <= linthresh: - # only the linear range is present - return sorted({vmin, 0, vmax}) - - # Lower log range is present - has_a = (vmin < -linthresh) - # Upper log range is present - has_c = (vmax > linthresh) - - # Check if linear range is present - has_b = (has_a and vmax > -linthresh) or (has_c and vmin < linthresh) - - def get_log_range(lo, hi): - lo = np.floor(np.log(lo) / np.log(base)) - hi = np.ceil(np.log(hi) / np.log(base)) - return lo, hi - - # Calculate all the ranges, so we can determine striding - a_lo, a_hi = (0, 0) - if has_a: - a_upper_lim = min(-linthresh, vmax) - a_lo, a_hi = get_log_range(abs(a_upper_lim), abs(vmin) + 1) - - c_lo, c_hi = (0, 0) - if has_c: - c_lower_lim = max(linthresh, vmin) - c_lo, c_hi = get_log_range(c_lower_lim, vmax + 1) - - # Calculate the total number of integer exponents in a and c ranges - total_ticks = (a_hi - a_lo) + (c_hi - c_lo) - if has_b: - total_ticks += 1 - stride = max(total_ticks // (numticks - 1), 1) - - decades = [] - if has_a: - decades.extend(-1 * (base ** (np.arange(a_lo, a_hi, - stride)[::-1]))) - - if has_b: - decades.append(0.0) - - if has_c: - decades.extend(base ** (np.arange(c_lo, c_hi, stride))) - - # The legacy symlog ticker did not use minor ticks by default, - # but they could be obtained explicitly, so we still want to - # support them. However, string values were not supported then - # but are the default now, so we need to test for it. - if isinstance(self._subs, str): - # Either 'auto' or 'all'. - _first = 2.0 if self._subs == 'auto' else 1.0 - subs = np.arange(_first, self._symlogutil.base) - else: - subs = np.asarray(self._subs) - - if len(subs) > 1 or subs[0] != 1.0: - ticklocs = [] - for decade in decades: - if decade == 0: - ticklocs.append(decade) - else: - ticklocs.extend(subs * decade) - else: - ticklocs = decades - - # The legacy locator did not use minor ticks, so we don't support them. - ticklocs = decades - - return self.raise_if_exceeds(np.array(ticklocs)) - def view_limits(self, vmin, vmax): """Try to choose the view limits intelligently.""" vmin, vmax = self.nonsingular(vmin, vmax) diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index 01c13b7455de..7b3269d65669 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -123,8 +123,6 @@ class LogFormatter(Formatter): minor_thresholds: tuple[float, float] | None = ..., linthresh: float | None = ..., linscale: float | None = ..., - *, - legacy_symlog_ticker: bool | None = ..., ) -> None: ... def set_base(self, base: float) -> None: ... labelOnlyBase: bool @@ -284,8 +282,6 @@ class SymmetricalLogLocator(Locator): linthresh: float | None = ..., base: float | None = ..., linscale: float | None = ..., - *, - legacy_symlog_ticker: bool | None = ..., ) -> None: ... def set_params( self, diff --git a/lib/matplotlib/typing.py b/lib/matplotlib/typing.py index 079c2cec25eb..76b5f2b642f3 100644 --- a/lib/matplotlib/typing.py +++ b/lib/matplotlib/typing.py @@ -206,7 +206,6 @@ "axes.formatter.use_locale", "axes.formatter.use_mathtext", "axes.formatter.useoffset", - "axes.formatter.legacy_symlog_ticker", "axes.grid", "axes.grid.axis", "axes.grid.which", From 12a2b2683ee8e83d73373a43b8baabccb20c64e1 Mon Sep 17 00:00:00 2001 From: schtandard Date: Wed, 24 Jun 2026 13:16:35 +0200 Subject: [PATCH 09/49] Add new parameters backward-compatibly --- lib/matplotlib/ticker.py | 5 +++-- lib/matplotlib/ticker.pyi | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index c631b8285183..d6fce5335a16 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -2779,8 +2779,9 @@ class SymmetricalLogLocator(Locator): Place ticks spaced linearly near zero and spaced logarithmically beyond a threshold. """ - def __init__(self, transform=None, subs=None, numticks=None, - linthresh=None, base=None, linscale=None): + def __init__(self, transform=None, subs=None, + linthresh=None, base=None, linscale=None, + *, numticks=None): """ Parameters ---------- diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index 7b3269d65669..d05d68748898 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -278,10 +278,11 @@ class SymmetricalLogLocator(Locator): self, transform: Transform | None = ..., subs: Sequence[float] | Literal["auto", "all"] | None = ..., - numticks: int | None = ..., linthresh: float | None = ..., base: float | None = ..., linscale: float | None = ..., + *, + numticks: int | None = ..., ) -> None: ... def set_params( self, From aa4e895178aa46946b5f8c2f5f7a178d86ef5bfb Mon Sep 17 00:00:00 2001 From: schtandard Date: Wed, 24 Jun 2026 13:52:44 +0200 Subject: [PATCH 10/49] Note API changes --- doc/api/next_api_changes/behavior/27310-BW.rst | 6 ++++++ doc/release/next_whats_new/improved_symlog_ticks.rst | 7 +++++++ 2 files changed, 13 insertions(+) create mode 100644 doc/api/next_api_changes/behavior/27310-BW.rst create mode 100644 doc/release/next_whats_new/improved_symlog_ticks.rst diff --git a/doc/api/next_api_changes/behavior/27310-BW.rst b/doc/api/next_api_changes/behavior/27310-BW.rst new file mode 100644 index 000000000000..3a7ebde8fad6 --- /dev/null +++ b/doc/api/next_api_changes/behavior/27310-BW.rst @@ -0,0 +1,6 @@ +Improved ``symlog`` tick placement +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The tick placement for ``symlog`` axes has been improved. It now also supports +minor ticks and `SymmetricalLogScale` uses ``subs='auto'`` (minor ticks if +appropriate) by default rather than ``subs=None`` (no minor ticks). diff --git a/doc/release/next_whats_new/improved_symlog_ticks.rst b/doc/release/next_whats_new/improved_symlog_ticks.rst new file mode 100644 index 000000000000..9fd0350ef357 --- /dev/null +++ b/doc/release/next_whats_new/improved_symlog_ticks.rst @@ -0,0 +1,7 @@ +Improved tick placement for ``symlog`` axes +------------------------------------------- + +The placement of ticks for ``symlog`` axes has been improved. Ticks are now +placed identically to ``log`` axes in the logarithmic part with a reasonable +extension of this behavior to the linear part of the axis. Axes with too few +ticks or spurious ticks should now be avoided. From d959af30b0784bab4d53f307fd5ce48263004510 Mon Sep 17 00:00:00 2001 From: Benedikt Wilde Date: Thu, 25 Jun 2026 12:19:01 +0200 Subject: [PATCH 11/49] Fix rst syntax Co-authored-by: Tim Hoffmann <2836374+timhoffm@users.noreply.github.com> --- doc/api/next_api_changes/behavior/27310-BW.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/api/next_api_changes/behavior/27310-BW.rst b/doc/api/next_api_changes/behavior/27310-BW.rst index 3a7ebde8fad6..3f205e18c987 100644 --- a/doc/api/next_api_changes/behavior/27310-BW.rst +++ b/doc/api/next_api_changes/behavior/27310-BW.rst @@ -2,5 +2,5 @@ Improved ``symlog`` tick placement ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The tick placement for ``symlog`` axes has been improved. It now also supports -minor ticks and `SymmetricalLogScale` uses ``subs='auto'`` (minor ticks if +minor ticks and `.SymmetricalLogScale` uses ``subs='auto'`` (minor ticks if appropriate) by default rather than ``subs=None`` (no minor ticks). From b39a71c738e4afd8690f9741a042645b829dd677 Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 12:43:11 +0200 Subject: [PATCH 12/49] Rename _symlog to _is_symlog --- lib/matplotlib/ticker.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index d6fce5335a16..b96b7e767df8 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1099,7 +1099,7 @@ def set_label_minor(self, labelOnlyBase): self.labelOnlyBase = labelOnlyBase @property - def _symlog(self): + def _is_symlog(self): if self._symlogutil is not None: return True if self._linthresh is not None and self._linscale is not None: @@ -1128,7 +1128,7 @@ def set_locs(self, locs=None): if vmin > vmax: vmin, vmax = vmax, vmin - if not self._symlog and vmin <= 0: + if not self._is_symlog and vmin <= 0: # It's probably a colorbar with # a format kwarg setting a LogFormatter in the manner # that worked with 1.5.x, but that doesn't work now. @@ -1137,7 +1137,7 @@ def set_locs(self, locs=None): b = self._base - if self._symlog: + if self._is_symlog: minrdec = self._symlogutil.dec(vmin) maxrdec = self._symlogutil.dec(vmax) numdec = maxrdec - minrdec @@ -1151,7 +1151,7 @@ def set_locs(self, locs=None): if numticks > self.minor_thresholds[0]: # Label only bases self._sublabels = {1} - if self._symlog: + if self._is_symlog: self._firstsublabels = {0} elif numdec > self.minor_thresholds[1]: # Add labels between bases at log-spaced coefficients; @@ -1160,7 +1160,7 @@ def set_locs(self, locs=None): c = np.geomspace(1, b, int(b)//2 + 1) self._sublabels = set(np.round(c)) # For base 10, this yields (1, 2, 3, 4, 6, 10). - if self._symlog: + if self._is_symlog: # For the linear part of the scale we use an analog selection. c = np.linspace(0, b, int(b)//2 + 1) self._firstsublabels = set(np.round(c)) @@ -1168,10 +1168,10 @@ def set_locs(self, locs=None): else: # Label all integer multiples of base**n. self._sublabels = set(np.arange(1, b + 1)) - if self._symlog: + if self._is_symlog: self._firstsublabels = set(np.arange(0, b + 1)) - if self._symlog: + if self._is_symlog: _, firstpow = self._symlogutil.firstdec() if self._firstsublabels == {0} and -firstpow < vmin < vmax < firstpow: # No minor ticks are being labeled right now and the only major tick is @@ -1197,7 +1197,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._symlog and x < self._symlogutil.firstdec()[1]: + if self._is_symlog and x < self._symlogutil.firstdec()[1]: if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -1283,7 +1283,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._symlog and x < self._symlogutil.firstdec()[1]: + if self._is_symlog and x < self._symlogutil.firstdec()[1]: if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: From 67c5ef7d60d466f264ee29c0b910e077a59ab72b Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 12:53:45 +0200 Subject: [PATCH 13/49] Instantiate _symlogutil in init() --- lib/matplotlib/ticker.py | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index b96b7e767df8..a743607185bb 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1075,8 +1075,22 @@ def __init__(self, base=10.0, labelOnlyBase=False, self._sublabels = None self._linthresh = linthresh self._linscale = linscale - self._symlogutil = None + # For symlog axes: self._firstsublabels = None + self._symlogutil = None + if self._linthresh is not None and self._linscale is not None: + self._symlogutil = _SymmetricalLogUtil(base=self._base, + linthresh=self._linthresh, + linscale=self._linscale) + else: + try: + self._symlogutil = _SymmetricalLogUtil(self.axis.get_transform()) + except AttributeError: + pass + + @property + def _is_symlog(self): + return self._symlogutil is not None def set_base(self, base): """ @@ -1098,22 +1112,6 @@ def set_label_minor(self, labelOnlyBase): """ self.labelOnlyBase = labelOnlyBase - @property - def _is_symlog(self): - if self._symlogutil is not None: - return True - if self._linthresh is not None and self._linscale is not None: - self._symlogutil = _SymmetricalLogUtil(base=self._base, - linthresh=self._linthresh, - linscale=self._linscale) - return True - try: - self._symlogutil = _SymmetricalLogUtil(self.axis.get_transform()) - return True - except AttributeError: - pass - return False - def set_locs(self, locs=None): """ Use axis view limits to control which ticks are labeled. From 5bb8291c9c89b0f8f446fe56d2b19fce5f2924c9 Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 12:56:00 +0200 Subject: [PATCH 14/49] Relay changed base value to _symlogutil --- lib/matplotlib/ticker.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index a743607185bb..9d85c95b1430 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1100,6 +1100,8 @@ def set_base(self, base): Should always match the base used for :class:`LogLocator` """ self._base = float(base) + if self._is_symlog: + self._symlogutil.base = self._base def set_label_minor(self, labelOnlyBase): """ From 1b7b6ee66e2af1f3a2fc2decb58809364aaa0b2e Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 13:04:10 +0200 Subject: [PATCH 15/49] Add versioning directives --- lib/matplotlib/scale.py | 3 +++ lib/matplotlib/ticker.py | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/lib/matplotlib/scale.py b/lib/matplotlib/scale.py index 7eed96d25106..90d899906cf2 100644 --- a/lib/matplotlib/scale.py +++ b/lib/matplotlib/scale.py @@ -599,6 +599,9 @@ class SymmetricalLogScale(ScaleBase): For example, in a log10 scale: ``[2, 3, 4, 5, 6, 7, 8, 9]`` will place 8 logarithmically spaced minor ticks between each major tick. + .. versionchanged:: 3.12 + The default value is now ``'auto'``. + linscale : float, optional This allows the linear range ``(-linthresh, linthresh)`` to be stretched relative to the logarithmic range. Its value is the number of diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 9d85c95b1430..b06e8f7b947c 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1037,6 +1037,9 @@ class LogFormatter(Formatter): If a symmetric log scale is in use, its ``linthresh`` and ``linscale`` parameters must be supplied here. + .. versionadded:: 3.12 + The *linscale* parameter. + Notes ----- The `set_locs` method must be called to enable the subsetting @@ -2791,6 +2794,9 @@ def __init__(self, transform=None, subs=None, The *base*, *linthresh* and *linscale* of the symlog transform, as documented for `.SymmetricalLogScale`. These parameters are only used if *transform* is not set. + + .. versionadded:: 3.12 + The *linscale* parameter. subs : None, 'auto', 'all' or sequence of float, default: None The multiples of integer powers of the base at which to place ticks. The default of ``None`` is equivalent to ``(1.0, )``, i.e. it places @@ -2805,6 +2811,8 @@ def __init__(self, transform=None, subs=None, already been assigned to an axis using `~.axis.Axis.get_tick_space`, but otherwise falls back to 9. + .. versionadded:: 3.12 + Notes ----- Either *transform*, or all of *base*, *linthresh* and *linscale* must be given. From 1a8bd23e8f7600440413ecfb7c8f446330f9b150 Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 13:11:41 +0200 Subject: [PATCH 16/49] Create _symlogutil before using set_base() --- lib/matplotlib/ticker.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index b06e8f7b947c..cb457575a933 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1066,7 +1066,8 @@ class LogFormatter(Formatter): def __init__(self, base=10.0, labelOnlyBase=False, minor_thresholds=None, linthresh=None, linscale=None): - + # Create _symlogutil first, since its existence is assumed in set_base(). + self._symlogutil = None self.set_base(base) self.set_label_minor(labelOnlyBase) if minor_thresholds is None: @@ -1080,7 +1081,6 @@ def __init__(self, base=10.0, labelOnlyBase=False, self._linscale = linscale # For symlog axes: self._firstsublabels = None - self._symlogutil = None if self._linthresh is not None and self._linscale is not None: self._symlogutil = _SymmetricalLogUtil(base=self._base, linthresh=self._linthresh, From 605765b927e6f169aa6c428a2cf52d3c1766b90c Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 14:08:42 +0200 Subject: [PATCH 17/49] Delay _symlogutil instantiation We rely on the axis transformation when no explicit symlog parameters are given, but that is not known at initialisation. --- lib/matplotlib/ticker.py | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index cb457575a933..ea6618deb73c 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1081,19 +1081,22 @@ def __init__(self, base=10.0, labelOnlyBase=False, self._linscale = linscale # For symlog axes: self._firstsublabels = None + + @property + def _is_symlog(self): + if self._symlogutil is not None: + return True if self._linthresh is not None and self._linscale is not None: self._symlogutil = _SymmetricalLogUtil(base=self._base, linthresh=self._linthresh, linscale=self._linscale) - else: - try: - self._symlogutil = _SymmetricalLogUtil(self.axis.get_transform()) - except AttributeError: - pass - - @property - def _is_symlog(self): - return self._symlogutil is not None + return True + try: + self._symlogutil = _SymmetricalLogUtil(self.axis.get_transform()) + return True + except AttributeError: + pass + return False def set_base(self, base): """ @@ -1103,7 +1106,7 @@ def set_base(self, base): Should always match the base used for :class:`LogLocator` """ self._base = float(base) - if self._is_symlog: + if self._symlogutil is not None: self._symlogutil.base = self._base def set_label_minor(self, labelOnlyBase): From 6fdc786a7c27df9ed4dadf3fe3a2c3e976de68ac Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 14:44:36 +0200 Subject: [PATCH 18/49] Use minor ticks in symlog test --- .../baseline_images/test_axes/symlog.pdf | Bin 4694 -> 8014 bytes lib/matplotlib/tests/test_axes.py | 18 ++++++++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/matplotlib/tests/baseline_images/test_axes/symlog.pdf b/lib/matplotlib/tests/baseline_images/test_axes/symlog.pdf index 55321d3889eb4116afe4fab9163936fc8d6cec91..b40d0639d683c1b347087ff2305f994c42146dd8 100644 GIT binary patch delta 4139 zcmZWpc_5T+_eMx#8M4%+c4eZ@+p~@5ebXb48JLvN0S;jqnoy>BQeXJqJt~GOV=Cim7uskl|NZ`n; z6E|Bo=0lcf$ldktGsshQTY;M`Nf}3HKF&BRhinR;@_kXc9iQX;qOSgR*N|Cr;abLE zkIv#y?Tl~dPvzgKiC=d7YPS4CC`(~lKRJWJ;K8-3H2Nw!3!FSN@{MWab7Xp(^0cm2 zna+iNYR!m4J4;R3^3zu@r86$9+B`5TyeM>dYg)nSRclj3eRyL7VbiJERC~_COr9QH z9I}8o?>Qcc&LJ8i)-RUwkM-7cK{_e|+?IErXIgk>Wk# zUE!8#sCH!y-_9m0e%7{FZ(B?1*E3*>PnXFf`9ppz3!G9WtBIm>h~gYs!yR^{)CoF! zu$7!qXv@oxi6*GZZ@$b+n)uVDcyz<*0@+_@ygr-JQuLws8aJUw9M8VNJ=ja6hNG?E zob*!boem5~9oW_apgtLT`3 ze_HVz#@N)>^SU)LDJXQ~*64{^o+&y{(@~Q1;s;q{2bfHgLk?-10%ikS0iI;70y+n( z4_UT5HDSrrk67|{Cj5yNAi_-0uGntATAE}g!_lSS?OY!5$?|;JsBOAMGRVA&(lD@7 zzU@t&t5sT<4&kP}8#Frn1*kr;;Y`a6>tW78KbyOjF{Dnm?fFRjRE&h3WJ`~==%YH_ z5{bBTxEI-|_+69oz9;BTZVe)s^yo+%hgclk`ynRy+z_>}WWJj4yOO4#$cY}z9ujWh z3A-1TjcZTJSa`wfx8pyty4)er3*?n&Rb0GZ61-bo!Zc-@)}B!QZmJlQ*fUvsG2NsB zxWq4)ZA3Cd(OdevjB{5%X=03Xx}wkyPpQUGA7JT3(y9L zISV;vT8>Si<>=+`3nFPFYpKam3Uel(j8`v?zcD>zGBdsrt{jl&UVDF4^tcXgtrhHP z5rui@wH{MLIdu(=>@vqm_LQ`zWZw_v1^`C_?p1i5H;lTj#(xZz;ePWpkdI8l%B(c| zxnj*btug6Wi^_^(?iB?*t(U>C9iKHsZRpv;x)!iOiynJSLe{Y~B!yJrI~S%QFw)Z>^aO*#WOgB(ymFi2sH7odb46OI7!pWA*=LZ~4XAHo8 zweBP5TT>w$?&K#Hhn0yGwdje0M*1ZR~Q%YmshD z(v#k2CT~Wy3`Ir%xH}E=cFYzW*2W2R(yZeca1uhj$Joo6+}uNq3R0zrdNw(EJxr1! z0lVk?i+_CeO=VN$?|o%wqPCoX;`q=E_|X4D&w=B^@dY(j=+0gQde_(ux5#2FNXi;cD$u^W>BojFfjUULki2>Z?YVo-BDC z@IDs8&1OGW6ec*QOA)l-pXGOIPZmu87JS`#Q&e>h8EJC8MI(J(G18={ob8o~s07Cc zYgNIbqS97|MDZqM`N~8>6)-O?zA}3n`<&AS9bK3?o#G>9XrOLqv!+Bo9z$s5bo(iw zfBUMSXkg!sK#;k?^TM--FNT5)mu=1)g!$iAk}~wpK39<*K+ZoDwc{ZAVB@jrior31w-^AB;zm`Z5|vjL*`9yn5wd`8 zyqfoJ85upt4!=7qF5_0pof103obRI^_$yIq^I~*bR zJ`?s5B&8Dn!(y#>)H6b$MF|i$#|Oz9ziMw|4fR^|3GawRyAMs zI#hu9KE#sam>-a~xWH;4O3uU;`2XCTUH-`<7ajs8*CYJGxzojrb01N2{Km!8y014f zMI=7DKh-1WqN_7}?2TLR<@rqm>8y`29e$lP4wTWT)yFf9C=FuSw~)thca6Rz&&_R& zSYBjHOX;cf^Z6&Xlz8~vQ?(NwPDXpsurD;W*a;)7HEXHizkq6v)mcO0F2e#op&Lxk-h)aN!^^9Wjjp;iQ(b_UkwM&sU5}73I|m62!hjrpL-I zWKn>cT-q6zNLQvXl*<#3e!D86m~vOYENPhXD!Jl>Lf#0L6^5*gcXKq_#mKDc__cFO zRtlsMEIJAS97dM+2&1OlKc88)V5}McHyGXf-r@J-!?PguO`bz?%Ab>kf zQWkEeaBm6ms?A5Ys`mS>MLEPbI*DUdRe6K7UK#Pz^xa}5RaaJEq`1kNL>fJ@&}{Vg zr~DKJjwccr7tX}|=JcX)K(nX*gKj>xmwh7mOL}5T)#P(VCQ)jvbJw;Y+3D;(u9VTm zoC4}8t>&>SjbA;!j-D2%9v<8d1MhIB@(U(4gm7H-V2^XmU78&JBGPRCK7hH79$n_n zUH!}cd#p5%>C&&MGM?*_EF)0b>+R02%ClDDi+6?(AgRJxZgc8z}q}+F+wYy7}T2hp_lg^~KQ6jn;aRq=FhibMCo@u@+pvV*#&WTnK$d(OyVx z%&@jTVf%4^^UU0v^?>P6g{{Se*&EACK~*$|@fm5Wr%T)48n)!Bl&MOrqO4FgRY-*y zYb8Jsst$sHd|kZ&T3R5mIiBd@?+JnXV@|6~ zKvf|JVB{K?D0P?gTQz*iY$>QRP`R)pfyrQ;mz(*mFfUEx>?L7w=2yBVH$S~RyW-&3Lx^Z4O2u1#3Qad=sOhI5ng1bAOgeT(gWRSz2 z$3+4$fDCd1>F5B!b_6$nPcjIq`j_?@Uks6e^L4|6plW{*1_w`c+nW@W`V}BZC2$F{ z|J4IEmMa0P22p|&QV2Or{n&JZyU|aO=W!{vRXsfXYDNR=YGA!anv;xj-<@L4Lmm6we(7c z^~2=6M2F!`vmW*ep2N_P0yIcG%~fdj)V5v%@ddS}%1X{qw$~0H(HGa>FhB4v3)bqz zNeJ=cm%Q}ld|WYlWsB+E9O))?j^`vh*a!+@^b6#jV}U`ayS$<-Fcqp85bTbG!eAiC z-U1OpfIk5Q3E4ZJ|HY6h`!E$GWIv|9p9iHr18T6sphyUH0eGAOgQ_xK$iMaBaOl1| z;4l@&+5VfSs;;^ZgTs-G+xu@G9I+pRLDl!_r7)QPZ5D>uZvsOiq5mrgQ&-tH6jc~( zpRpVZOJ%7eRs3P`tj8K8?n;s)~KM%Qg#rM{K8$m!I`-~a1f8_d;umm4G zN$1ah$(9g`2Ql2hXkTA{5W{uv^_vjgeL*nBkQg6~mq+%;lKg{7cy|C2rUD1Z$e^r@ G0RI6$^aA(* delta 1171 zcmX?ScTHu3EF-J2iK(91WF^M*`mNKv{iO{Bj=%pWVmHlsZspBnd2jiNI~XTct*Bb$ z(7iy&RV#jf@_V({xn?2@g)%39ee!US529`s?KX|L&|^cI{}hbA9sp zt?WQzvHSjQ&u=wueK$vi{Si7l5gnmozR(Q0zbjYm6@rLQdBy*>X! z{=q*QEh3UTGDL;g51u(B_4nvp>w7z{s(<0AE57Qs@8`39KgZIZ zsit1mUD{$YGy2R7>jme&u}tvgN*8*#tVZyHQ(J_}hFR{j8mew5D&+l|qiFi{bHj`I zl0quQ+S9()rTc64bf zHy)ecP@kn{W?r2rXc-XXbnn<(o$kp_Tg9I^I$L_ZQp#3Zb9hesF)=Gvzm#_G)6S>Q zotV;egvY=^nkj#G_VsH1JJ(9iY3=fkNVnu!XOY!0x#WQ-`?~*}=ei%Lm^m&uRmpuX zlCMelxZ~oL?^>^)t%zZ{f30<5m6mY(1n#0{ezuv3={4Pj z$5?o}OiG7^wf(ufD>e7$H@C;~&gajr3;yw1DdF$)^7h?-cQWq0Y8Cy%fE zW&APslG$WOVPS3~1p|frq%1BobBoRUc(!m&E|C_SJXQJylaa~fdKqaZBh$%qWc1Ta z42+Ex3_w63Pk{@}Ffg_-w!{=OH^dOLG&jH$v&2wmVldfI){4c@(7=3hzN|{Up@D@t zhCX96OtTD4P0-aDnOk6p8JidaeT(J?Q%o^KLnDyA^(dY-G{LmQ(98fM01VAdP0=ke zGBn4q*vP~ZL$8T}B~lUPLXd*KXI@&qf)UVbK#rXqS8+*V WQAtHnY8sb`p`j_4s;aBM8y5foLc5Lt diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py index cc4f3c6453f4..ac7a80fa64db 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py @@ -1379,14 +1379,20 @@ def test_fill_between_interpolate_nan(): @image_comparison(['symlog.pdf'], style='mpl20') def test_symlog(): + fig, axs = plt.subplots(2, figsize=[6.4, 9.6]) + x = np.array([0, 1, 2, 4, 6, 9, 12, 24]) y = np.array([1000000, 500000, 100000, 100, 5, 0, 0, 0]) - - fig, ax = plt.subplots() - ax.plot(x, y) - ax.set_yscale('symlog') - ax.set_xscale('linear') - ax.set_ylim(-1, 10000000) + axs[0].plot(x, y) + axs[0].set_yscale('symlog') + axs[0].set_xscale('linear') + axs[0].set_ylim(-1, 10000000) + + x = np.linspace(-25, 25, 101) + y = np.linspace(0, 2500, 101) + axs[1].plot(x, y) + axs[1].set_xscale('symlog') + axs[1].set_yscale('symlog', linthresh=1, linscale=2) @image_comparison(['symlog2.pdf'], remove_text=True, style='_classic_test') From f51ea206ac56bac4daf5b069428da8b16b260e65 Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 25 Jun 2026 14:53:55 +0200 Subject: [PATCH 19/49] Update test output --- .../test_axes3d/scale3d_all_scales.png | Bin 78943 -> 116044 bytes .../test_axes3d/scale3d_symlog_params.png | Bin 48187 -> 77445 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_all_scales.png b/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_all_scales.png index f17a08f8abb8687a697e6373807cc042ff10520b..3f054dbc0f4d40fcfc132946db307f2277251795 100644 GIT binary patch literal 116044 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 literal 78943 zcmeEtNh!QI_mf(00YJM85BZS9x+54QHh zJY6$YPj&b0bM8I&_MKQY6+X2vm7FDGdk+=o1JCC_Mxy@Gn6DU);fio~N{) zr>2Xwr;nMt6@;>xr>mojr=y)Yxwne2uyb;JW+u1w^mO$QU}JOoKku`;xZALOBv5gK=RkCo)AxXYKsWpMfvgZM zw}XJ>td*A%*YaIIUxq}5fI#Raf5})T3<}4Y1h4IK>fa+)5CQ@w=Knwb-?srV&`aze zB*{-c&b(ndB;4R3LLmQNdzjA{>)=H7v7_vKY~k2vP!^H1ZZgyfFKXw6bJ@-FWI;}N zQg9;ke*XTT{~PPN>o2q%#2y;hDAXaY@ZbSU3;_L)O5~f65D+0S7$EQ$F(?Ed@IVe3 z0cHtAGDJTKc=*3x>p`aQG+KEGjK4yL5HUjN^A|;dE+GBuf(hzv#y?<3aoSk+Vu?^w z;8s4!rP_xKD8aW_@fyyos*1ocaIiqZMDL7oh2Lf!KIv*(=26y6FU62h_}XrGbi3ugpS7!da^!Ycuo2O+c%`g*Q-W=5T<|T1qHn zQF%q$;o_086eQZRY%z#T@uwqQW81my4? zvvrz6qn($FzMaOgb;q1?VyQx2aW@+>rcLYf1Mx>y0$tIC-)|N;f5r&bWK2WaR4fI0nX3P|`%_*2tr)q@ ze>_w^YOe^V1!6l z40zb9QjN;`w*`ykFreP>Yz6XFcPV+d7NaX$8i;(B6fNH2>uG5QM2DOPfc1&p^bI}u z5t>fw+7cr0H$XNUSmR?kqX_BAU31#TSG8j7KQ#>bJR|Z_BlWcN@&4e_c_p*#`)M#k zq0}GKfoi;$n5L;7)`w?`H0pc0SO9*P&-T~y|2-QIx5n;32~h6KvBhJpE$z(!+56wx zw(V~sAWZW%0@nvVd+ocdSS}xmr{jEol_(`g9^9n6jGouS!wi#jf9QQDYhP3LzehPP zQKH3FSBz;2KS|bGnmHX;$UYuNptmpqc;IDF{dW!?rcm2W^H*(B_c5Ywa(b_LJ&%!X za>#NGq`gi#5D&CdM)pAb&f5nij|?!gud0kLFitj-e)i7dKF}SMu^~aDRrjIa59AFs6Z)$2+A$%z@ z6hYa&Uq%o58_wZ+aPBH$SXhJapYp)3?15KKMtiOQbQ=Y~|9o#ZL+U@2p_8CnsU={P z<2|e#Ab!1F+n0yx*c&J~SU#s1Q=i76Pzv=he^BQ}1$)Zcx11|wF7STDFOcSCqUzW7Td7F%MnnM*LMU6$+|FfDNS3e>3V?YiZ&-z+miAE6gI9K%|GojBNXORGYK+6-?9^@8ve zg1zENr#SH1Oxk_oB$_O1w~2~RdMr#r$37Hs;@PI-{U0QIH^nRj>DLJzG$q^VNp9 zuwCr^1YRyU`WUu<%+alO%kf@hiWEjtC3th=By|B7A>XtQU>aZb`YYu<9>n1nEJwLsW&#C-+&-TQAB2V`R1a5cF|xQUsHocqJGk1^ zKy5x`>_)1~O7AQFI~p%W68zlAp$ZZpe4@pfBkh4vZbB@#gJ{H2Z(fSn>cR;?iD*}Z zh+gBKQK|%oIo};5*yGxWE;%a?HaVO(G1%vF(wFkJN+HX{PYs9zk>-RxnoTlzctq3x%z4r<1$o zlgtM7KJl1kAAlILdGGMvoa8YmUN%4svfCm4V7p&wf#)S0M6&UVKWPnc>m7IXP>km; z800)9I$(&19BmM3@S*^`2qJ@i%t3GRe)A#lmz6}5t)N}vQ027D-t}|++7vX7-`nXe z^WXvc;@b`Oj2)gs=S72`sJoKayUSBb_}|K9DlTf>~+}3avyfiWOAFzN~}w!54=0*>(VE9%89< zh=uuvC!fEIpw=C@OQ!B#(|VBth#Dtl9`dlS{B6eAd%yg1bw=s#-g6}dbMI!2YJwYB zryS#UQXHAz4~?t>GF<)ZAhzrhT6qEW(T_2PzG@gI9n4@hvwmrxM)<;v1LIMe9Ra^z zfWcz2&u}K>ysuK-o5x4zPfCj0-|gXQvhgMiFq}17Rl3Yp%FFN_m>9m|B_f*1Wc864 zW)Q$~&n^9j{AvAzHR<4~MS?vt+=+ywkgTSdypfjQ?yfdmP@74u!-VyMeVLmqfaV~d zZ8{O1VFYl{VU>Udl`1az=3(wxLNJEl%$c8zeNBeXzjo5&$pP%3ZSt2e05&*HxX%lR zDC$t^Mv!VOSRZ&%(Km zbZfe>_Lf;T5&W4ONA|{%r`Dd*9tgcRQS~qO>pTe=!WI5scupuCSQI*0#;EaXAR_eQCS- zXKCA+wINz1R>`f+b+b^@7U1@<;}AtF>8A1yDoL%$#C||87;8!naI&vRkXO8=^OFBI zoCv17{xL+a6?O0KilhBeWerv+4Fb^?)~|42*HoCGA?dUv8aJ?KB3b-+n0<|}Y2Z-V zCnhLA(D8imdE}o9E%J9-Eq;7|kuuSI#3_>G2yn%MC(bON%|@A)-1TNVAa}fK4-;-*)q z(&{X3pLd-n3wFCbhzu>FP7bK&+J_?Q{zn(L)ZMjo{N0*Ow&>^?o%QiamB zwILcv1YS(e)y^0av%1O#Jyt(v;u&VJ7>V*(Rp&>w4Zz~`$HYN6Xf7v)_-Nv>YSb?l zAn#6ZV*(#Qo!Ws6QZ7a@B5sz%cH|Q_`%yZ%HMWoFtX(h3iglQU0>n{npYXJv$wCw; zFP~HYgD|J>EvVpV)pv7|Uts%DU_&yPwS8Vvv6RcNF>_tQK51JYR5KtaB4WH~js)5T zTHJ1z9qdj|!T~PX#C<&c5`&3x5d5)*k3Ij~(yby~waR#bRgx#oxC~N-kuf~c)LH~x zT#Gwy?w9LtU%x!YpdD;2gbLo~!un8s+hacLWPyJOn#rPFOBG5(A4r(GxAUG)rZ z6OJq?66~w#H8T9_t7ok;L$I0Grb(S6@PR>WOnkOLtnA3=3!MW8Wo|J@M#V}5e-*uO z7pI$`d+N5}>#eSlMR8@;$X-CSU^8IQp*r=0BynQu%p1rJ;Ec6_0%`i2tIctUY;YS1 z0m-|$)WJaE(Bx}CXvu;2G-6ew&vCyVZs@>J9)4&VkpT1vmD_RtSfl&CbktI`3swlP zgRbde{TqE<3m(Iw`NB4Yx`S5kxtlgzjeBb4%8pHruGute z+|+cI0bDwp*XT`4>N@KM^uTUP!$c)|!#^ZmxvAjeD(&Fz)a&LRm#H4cl8Yexi?F-K z0zP2f889q1z$ZexiFgo~V^LcQwh=8jTR`syer(nrUGkv3ZIQD z?_WM6sIC*>Y0O$aXQkY#7j<)7t(3zn+Lg`5c!aM>s0vs)d6H!Rvh(QyG%ttwuT~F0 zAqrEr;N=!AH?C_9eZ)^&8pr=99=HGSYJ`kJ zsfZ<4nwMlU77m}wh<}nCKKt$YH!sdD{`4s3j1G{(&S_74tRrL2>mZVyE=)xbl#906 z$J?2I!H<1drOvVJVt%mbR(&d)laTW(4U^xa>P-NwtvWoda_&p+F%-?&JB9L+Dm}@D z_7xNdV`2q`(003jJ$Bd2$!FKGba8?+jq1Y-QX4SK1lBh~#|FjhCacRk5vmCtSQ=Mq zcqTTo(6;O3dak4)!@!QN#{RsL9*-9TbN_vP>jjz8LuJ4Y=k$DpQ7tbzXh`pI&K86l z#HFirE<5e0wC2D41)PD#X-=}LY_!-U)kGpV>nL<&zl_%U=+QoqEcb8&fT{%Pdm<%L z-O!*f-!9i)ZC#c=QWN|))WDLf3{1I;{a(tNY3iSow(a=ul6)|zaqZVm@07mA-};1e z#k!|;rFf$xZJ|JD5M`STg6Ibh7%2GDL1Rs1+dD(;Y_4pH&HY%et>-rpS%z`*> zGYwrg#0xucC_!O=e(4B!2sbGUru3tbc9^qMWnlm}Vqa{ZB<9|T{row7f3-2eJv6Q& zEp>#6PXZT4e_3u#dnytQo*}o24*Hjpzq_f0`r8G!Cg7-LG{83?KcrMMgm&6$oj3Y= zQ_pO+;|o6Fqxh8UfHgT!AnvCA%~~svvnVA`&ztADH?JBvVx02!+e;OCQ&8D4+f=XY zWKty<21=wb)WGIJ$JU{fOyWD`o0> z*=DX^r)v&s7)JqMa*9_#5xeafB*9t#Hr13=f=S_TAK2C`RoUl{mIDNhk<&9 zDpw9A6WF`hX+F`zzs<_R1snWf9`btDcSX;<&9nGJGhL(y-_Ac_Tt>%LLNC`-Ug?(o zW5zhoMSR?7^=fo6_xSyUYN#QCpWd zKF*IEGGTRz035hnr$Yy+hS__*o)f(dc%qlASHZgItES^k4Z7$h5l+X;14{ceQiFBf zi}RwMq#9nYt!X$+!(lV@oHl$8-qCBdNI~;#QHxX}Ct%oXqB1F#rcl>q9m;08m*76^ zT-QkW&AH4h{k018{)nT31_)YHdLlyqM< zScfOj_}NW7<-GcgnC+23dJWJZ-1`PhXe@8XST0=>pW0aMi>83lhp12i zp0D_=GHY18IkHAf0ABs??UROeYJJZBS11(Qdjv*GR9E`2sTgd5)#UF@VAoibM~rV^ zt`L#9s~gpkvy|GztgS`0oe+_w$7KoZ_ZrHin72p|2SVqUs%|*Oo=EKsxHa#c*EdP~ z;*|Kg=I_0_Moesoz&P2wtAa{SrTC)|>toWnf6x8i9__zY080)PE+GA%F$H$32@53F z>Cq#kAKr7;S?^{l@xx6^#T#|ptp08BKxR%Stj(8d@3w zOgwre9&Q8hKR?JgZae1?vH@!e>*s52@Iv#LE*kV46OligBfZPiv&8%IvBF^&k))5^ zIldrd!~@S*VSF}@uS*-PV1DML1HNDU56vyAe_g8R z?P@Whf^F3BR?g%!geBsL@=fQM(9pdjH6|Tzx|tmQsl7W*&$}BmuLC`2LNhRswbbD6{gU^=_2(V$xblAbr$%&&#uiyGA%-IppO#QIAtB(VFwz z${kYg7J;==l*|_6ll3pxRdqCrH+OZG!IU@GFxV>xFl0Jh+n1COQjXwE_#hHtO(J!AwWza+|3;xb{fZnjd{tnl5f2ma9Mir z7;UzQcngO``fo}P_?lN@S?Sq_F!@IXj~hrkxcMA z8!(qPxv$9au^Lu+mWZx92Ir@St7~uGkbwGMjF5@nFNU3Y-{#nGHdj`wf3;uyNog>y z22R%}4dM;5{i_+6!&=RUhEnh#JMX(Us@6A{H2TSDrgwBkt})8ulhC!#bmN`3g{Ou) zqd#;rMmOUqrd(65?UPp(3p6%18w3ea^U=YZ0&fyM_R9%uIyPidnZB9ixQ98?kxf;J zCw&)l&8?Ju4@sr4PTQBY@9e7=xraEdnZXT zPGh<5c;_oo`O9`eJ*%)_S`oIc zl@f*RGg0jj4SKv7MWtPfW*-JyUh?D+5Ioy89n+HWelvOv!k*=Ggdtct|E@c#k8^{Al${w+9 zdJYK3wqxMoFIVs20XV}u#M?_A7*a8IWcI*0Kl(ZRt9-#S!RSyEVPEVd?d`V&C!;7 z>Q#<9>hratsyPx1^Coed^8DcX#UGhHhsI1HBIG6(P_yc% z*`bkOgI8V_Kj+H9T!0_n^L?aAttJK8*X(OjoChMHpkvHYtChzs8gM#|y~#P-Al@Y= zsdVO5<;Igf4}!izF&*AzbXNyc03u<9z$~?So{MtF6hTy)?sJ=f92Wh40WKv#?zrj} zUxa+cU7$wGTOOP6iVun!tru;iYo_1&0tGbDtoSwT#IT#D@!C^mQC#4cS!r%S&uN3$ z9G8W+Hzg6fhYOr_qGch~#qT`HFVj3R4U)yha)mC#aPQol2YWN!Pg5@4mw}f+2BTuq zwX(M~cmq9NvQY1pi)$!9_u7uA7xe&Je5p^!LQarA%}#XR1P7Img&x0E*b9@n@^ZPG z($Va$+2@{m4ho!QtmEyA-c_mw9&r}5Gl1nExCnELe?;ps&Uu|+M~(#7)KuCed+7~Rer$fxI6_|lD? zwLE8Do8AWRWl;t6SyzJhveQT>j6>fzOM$hSU4P**QqP|g4#5@AOdl3>@nZ}~kNahG zTKzF?>GPk&femebNkH{FZO-}qstk*&)TRm9+lg$?bz1#qDmeGEsc==4WLEsexc^d zvS4H%&v*?Agy7ER>Qc?J^)jub)4ENW@Egqr;X&7;Sb$&J?9DvW&E$DhR^%FdiFH@@ zFKy$^VnBnBTGUUu`bHXdhDj9jWa2#ttWjE&uGJ3q%ODQ9%w}!xsLGO@)ZqnMF>&(4 z4Bz2Z#Nj)6qF}5}n-@pMg!@ZfAFc)h&m>_T$K(eT*=gxnuR_#(_jX^ z&(w4jQ`hVYV9oRT!hl%i2uPbxJ`e_-yfoJ4umUSPB+ANTALFvX3wg*5vCI zC(R?xuE^tSnQ+&=&52o69=mZjb2<{YmJD|JROrS#&9z$d*-bd0A#E5wTzF!WvWd&m zy2kl?-|j-u19mIR^E>|Auh@kWN7-Hk#J7P`t@Q=p0%^P_YF${`S9@YsN19a!T<6pzpLHZAYwMMD#Uj_>jHtk($t?p z&!3$?tF&5fGxo;glP#*g!IFS>1la|XP^N)d-Yu@=68UsA5bjV zHNzhRw3?R~H_QguKr?-nCgvOh;K|@iY(m#AJNe+T=CfdOI`b8dPZ3^VydV$fB0n?P z!kc^)0_uC-nFj-F1v{TS%kQo>CLcyA(NhBH~vH@ zGKWB3Rpe@Lb>IG)PzmyLTo z9WP%LPCgZDxQg0;kZrKVs*)JbS`%{fX0AoC{oPAHqLnN>^hp9jJJC|}3m=`0^}T!o zU3m;E_dXUR2$IO^6U?S|%RH0;Q(aSp?i_*N$fUs+8gpCSVnU;E^7lLKg0S_zv)Y## zM^4k_pMfh>kD=TX^BIpvygg%iM%&je)#t2S=bW2_U1JZ*I0C^VWq7|4R-Y_R^*yMQv8H8pZ#2> zF&GaQt?O>~`1Lc=YwH?^=_*Swxk$k0@}2I#yW3t)@Y4c*f6sBZ9MCU$E$*8h7Nl`c zVGI-Aoe;3*jx zP$*8zX^qYru_E>Um#RVqm>qG0m$ju6q4$gp>uyL5yhYY}T;cL!#09~z3c(f!Ejh?d zWQOJnNNiakyU^#xITJoch*n>&tUr?hr8L6?Gr2Ap!SxfYtD;&gkR$B_76?YY(?92g zg8aIuoU=AkL(=_11yP{^yd-XHbF%$UX>wRwfZn|OhRaKafC}Q{D7&ki4L-zp7DK$o zB(oERK=EMH-Y=K+?e}{$vM9Mre!Vq`&<-D+YJLFf*z3{nR1fP8^+Yb6n2O77E<0l1 zTJ{E_o3*;n>VR0iB=vhf;O-d;$*9rKK#$|;+AnRa5>|v+Wk%4;Bt>)KC=@zwXH5uI zaGAEzXhm^+?a4E)6zsM-baKwS#zC+4D~Sll+Nn|jOs8_X%-WQjiMFCWC2wrzkNeNw zt{0y-FLu2GNmi@Tdi?vflcprLJ}tJvy0THr_1mrMr#eK6hBh=Y%s8qx{mKbz6vzAx z4f?Y_gGo7q{>D*;^_Qv|$5X&t-IP8*XlQCoLr|HGuYvnOfir;`3=JE8_yU3T_C7e| z5q=)>{O++#j*wO-^E8-Y42$SN+Jwdfr@}zPo2QKVjmx0hB;K8m+sdBt;x@_y{-7k` z`;(<=y!3c8Z0@L%&==u{&E~`OFZNbC`DhsyEvwBrYkuICpzXkiEv3H|$se9^;tSIu zX88V;dR%_VqpY;&9nAf+u(avVY{fC0oV|+<(=Fx|HuI&EQvtnspN44RHZMx3mKr~d z2Xtfc*Jmp2)GzS`qc|8J_If5yK32mpg9FVrJ9!~Nzn>87NA9{^9_%ti{ssv2=L-*q z)m1@&B4On4ze9Q8zro^Q^iE}Dq9(YhHvIAkVevh28#|6skPXBLO-X__mUC*<*3a5% z_Y@k=i&P-yRkSLF*d1vZ4Q(lAbi&GX zlB`xWVk^l?319_v}Yra*7`yOE)iapxqYLQnkv@fa6@^%F*Q1j5N@YDqGcXwNyJWs1smb^8GUnRSb~_25{Vz# zW}ki<7AfEH?`NEb1JOuy@xtyppXlMh(%5s9I!^4Hn zLdVQv7jPN0VzCa{Rd%^yvHtVTTI6N-9 zjkWcU)-5_dlY^4epdIb*s*2YLvSB8ib;>Kz@pBb)1SKtWH-Yas^oS@dlBXiT+e)~> zg`ikA7Y)IY$iI2V%`ieZgtSUd@pXe$1NYGki1BTPaTJNqVetVCFAa9}BGOR~C+uK<3 z44^F}8D>lf-_A;^Q|No+J)OlCGHK%#ZKDv!UK(Ub&-%)}5=}Ft<^0*=fhqbKc55;E zi%uZ@gYf`~_psjKS0&Vg@1kK*XA9#iO6hG?RejLIu6eRw^*iTXtLlT@ig2eCz>|Q& z_S`oRJst`={}5HnKtJ?lig)KVoa`0i(EGCM;r(y4XvwZ;DwfX5%Vm!!!(-~t!p}@u zLY5dD9>vzQV24&hN(p=GmAm(y&Fv38Li)4dw^L3;QJCtlMe~q_*@1^2KcnpS-Funh z1IJtBnHSOiemEC`IEMUz~twB{8MS$UGp@%0xVH{S{c>k4#L0>egS^Jyx zVub=v*@7auDR%hm*PvZka;oJ01ohk5NgCg^Bq9;jP{F|q(}!}C4}XRSQEw9RPjq^j z>}C=vQRBB~E0-gp?~Os0L;Z*B+v*hEThi$EY@Z$|e;bq{*jw4ibo(Irg~ujCEW}r6 zY(xn;uR(bs$;F}8-5RlzL|`j5R8C6;;5NPQ06dSBmOexK1d!8Yso znwAs~FXFyck@X({=UcFCf7%uPITsJKXc=Tl*dFmiESq7p<<-iGZo!N-fnuU0nk79@ z82*Vh=8ua=Z>0w0VTRmv@)LKo??|U}!Wg%y^rm=ElH!shI42(0YPA<4-?mjUgDm%VW6o@YuN8%{Tn}nZ4_6mLF-;tydEM>H6D4g9cA&I2N-~ zE?=X3sGx2<)!lZNzf0Se_vA?h2D~zmOuPKRIMp!jRIMr>^Y03FRR&rhq!OpB8aXpc zyccZqmvM>1MBS3F%q2q$6l0YF*zH^)+AANEcv^14RTi4?prVfidJ#8KPON^#(@11z zsxL2VP(I6=Z0~`6L}a&tf0hFMmFU#e)C64~5!`^79kCrEcZ-@mA8(h~l%po&Ghc5> zlk);}rheG8gdbe?e7t++qLj2fzYU;^#?xBP%1kLC?HbFKNFibM7RtzZ{8ZDMq@Myx zF#SASImFWHQN9R^>oT5~;rgENI5a(0C5dH|S6STz&+=-^<2n+uM8pME=-BWl8sku* zx63^@I&SB%rZ0PZy;>=QpKyS4zk9qPiwReq*Ag>FQ5N=s?Khc3`F<9WEB!SRbCjU2<4+aK zuhlT#7{VcBR)FaUiBIQ2qTuuGspMS>Wp7vCmh|wanf{;jKit?}r2=6j>a1|mQrzdz z=p;VhN*6L7^X|{JGHcOB#+!r_CDqIPofutCX&O&eSk?++>BRa_e(Z{c_CZa%&6r1a zOO04rV{a*-Cxq5u+!%@<47$)`pK^#6B)As{?CG`r+@1 zwk|Fx0>Mri_pZCn=jp?enyIc^m>4d}rf{`PLb#YEG*QVtF-Bd)%#=zu6w-x9YBlc( zhl)BuzT+pbFq6a`B9abAYd#`fui@N6o}_`{UmF)i*8^^*+{EpE3&bVU*Y_^6(y5#A zjP!k<$ecgfA96*|_d&_kWOO20^ZJZM0sK5KuPz3$c7w2{wH+?%%^MrOx=+Blwke)8$D%|{$c`tHswOLjp^TFq z$ys0#?aO!u`F80!k>(Yg(q&Srg*lVVT3m$%Bbt-x{H#%O_n!j{rYLS-2w56zKynHs zWCowLtdRPHTzsa!Rv(r2d>q8pw{Q$wOZ+hXncNhoyx@#O-@0{7t`$@*r2DQ=s@`rv7LrT0Pp%PwqkA- z-!CbK@N-Pjzxd-)78b06f={T!nBSCpm>~)on zs$PrmyrnxVlY4dnaq~$#G}8*jf81c-`2GL&Pnym zc%^h3?>l#y&$Q`Y2)6ldX&d;W@2`UFW5lb)_oJbl9M-E1Ib^{M+lafL99_eO*`t(EzC|Iy53-KTpaon+>Nn5&=)!#mRrnRN0q8nsl-TXbC9~4#a%I9MPbBg!vR+ zH-31*3YGBYZf#@fMv-(}MREcoeHWiH(CB#7I@8Kf-c%lK+w+Sa zqM}Y$GRe~n8@-Tb1&RQ+He2G4n%=F<@KZxV2G+jTOiYO7Kd_)|z(3)tQ8h<>}MZ7;l8x zgvYO)pivUis86L={=@rqQ@w(xHka_DoiE`vH;JR4STPk+a};;*byiC`u0`^5zjT&1 zUr!_a1q^5p#KW7`ahFlfHV=89-AnNe2_WRn%Q3~SS@z2!$H_`_RWwq|EMa$wG01J zudykVrIzhRn&d29T9sljKGP4Zn3RMQG__c-XrUW^?PFN zh<%oz3oou!DZ0NRYT}B(bFka0F4Dtg8f(bFzULG_ieh1PhvEB!`{)P%eu6dTMa2JG zPv5^#-sCRlz@Fq?=)8Y0ZCP>fopDI>YA>5j3@i|fUzR)x8%Y6VyaBB5<)`&E^A>#2 zlKp7x+F_9u7}2R&WhBxtI(o+#wZbE`)RLnWXlBiT)$jhqDQviyZ_t_EQ3#*;vix2L zN3VI0nq*=K_J1o`-iK7JR{6n*@_u~(%($S`@ksS(V_ zg(8r%@P*dsvD~EeB-u$Wdd_*t|I#jSGtG#0EglXhy%xDPp7&V->#6J(8d_CUp^kkw zR4^gC6bwgwxq$M_K<&LRIHOEKvRdJpsMb&b3`Glky7$PVr6m4uP(_e^s!Gxy=vk#= zr7&%cH*F{4s3)HDy$f{sb_s5}g|v*HWb-~V%B_`M<7~|ep8zD_Wjsu>!bS&3{^G;2 zj?2Z!wytxr$?dAZl5glc8&z#X;LMYZ@*S%y$Up{;R>%QceRl%KnEq{=BSAo~;nWe^MBU_rM0m4fQl>a0z^!pyM+Ev*Ic zhckxH`D(&NXTMv0+U!P9@^0SC3)l?a_i`?eC(Q-!S1m^339vtb@g>oJ79S#|UmnJ| zcoq-akM{EiH7Q(6=z*-{_IHh8xRwsqj6zQU%zAXnZ`Y-fz`bcQbBYpB;RtV%{x{7| z2GFQLNrJPl&gLUxM*%vt5+aUe}55^ACmbqYwV zCZO#KOVjBL!IB-Vmxw|Za?iaoO`4Zj%ZmDEhWib2l*~@FRa==Z(H%auidR_^KBg zT`Cfco#ag^B=g<|VTsci2_^p@YA5@!@PDov`xvQh6TH@79Y<&y0u)rv@eI+h>Y0g_ z^9yV-T>|*;l@Vo*v1;rWdD9_48k)s8Ccd2lc9iL5C{QA}?($QvP^hyFWe^~He0;f5 zv1UE<&M3tFX0dJPF?4S%Lwn?l&ot!tMzF#{7V0_On&>CS3spWBKLg81=Ka^@!$16X zHhK3VU-22a;Om<~nrFp5@6TrxdND}q3?8KRc8zE1A=3m!rNrXIAKOL+^< zMQ0K%JMTv5iI|Hq6Sdo^rt<4uRb;D#Ks;_r4SF31c! z0XabxNx;(lUaa03hIOW^yL>(-T#kyIfA_#ewHf|7&KJ`N%NTp1Sj|+0ov|e`WTMUI z-P4ej*0VbNp3Kjobcwkuc8}*4(UZ0d<@d??+z0u&rKg^x>4>B)0xxN%6pSzo2cRNZ z#nf>~ZMG;{&<6cxdP{W9sRdqMLrTo+2xm#VI0Lei=Gk+o;7#dih<}F~lk!pvC1?&! zXDwnvlpEg%hYkn#P!)dJ#0#{g`u_JM&ULG)p0C21zy$_);4`wNlIed*XM*a8{>sj* zP%QB;nG&IdwN}raS8tX;B*9e0iWw|8th5|Bf$do_^vMlPIuRircxDs5=m-fqRs|&E zUU?7C%VpQ}9k3ERsd(cIxgvd;AXAha5bFq;XgL<#>|<--Yl{Q_U5Q|I-?gl)v{=)z z&vtGvYdkgJI*CnQ?rkWUA7*T{`X;6w-n*XQX@y2&xr|lpYgj419Ttcc>AP41#wU&8 zE$Mdw4*~JLyQ6^^yaAcLAaNIZHMmE{#x$e3HIeebP9xmxKsawA;@&O#FdY%~ABO6L z;&sV?B^J|I_IV`a=hd&M>6gEKTmN#GgQ!6#5!KVFLfW-kA>RB5&~3Y8sM3uOCRN5q z*bD|=eX<|@k12F0VNvia}x(1=iX^@rw>Dbh+{!K{VYP0>;`o`D2-g}4W6zg%QDgsl|B_6)fHKJMKl5^{YB6+{8ynEE-+ZFHnj{4>UDdNh3&U^p8x zEV3^gUN%xo#y6gX5KRoHiYYa%7%Nvd^A5#jeHdbykswC&Whc0^DZ&oFq?|U24A8ue z2`*ZTJ8(dT%efDnt!anvmRMvCr4({~-TmgK3cYM*Q%=oT5ACONd~h(+qbz;`UtrvB zc_^FE1T8kFdG7UJW#0{iAjds8*Z_;yS%wyE-Xth3#!RC&D3SB z2H6UDq0dO>YUJ?qx|T02r<t)CrDpJlH}lBP+gW;Wxu`k}{IT+u=(TYU>VuE%Xv)>AfD1X@!F7(c6sIt~&H7cHm6kBayHdjpnC0cPr=v8UHvu@0~@WNAzXVqMkC)C#eDxU z*@oU^!QBvOgEr^D8Q}***FM;Hg6K{*(C2!^9eubrZrEHDX_Yk;aVUIiDbW$vu(XMsl|5E!?t`G1OB6y>2 zt&=7FO0#4`s{ej2-7KN zb5LAW0TP*MRU=q&AFoAd+4jjWH#5k= zFBLN;>F-xFY}-Aiu(9QX!!iD05n7x7i=}h$kNf$$cx>BfY}-a-G`795ZJUj4C*9aa z!^Tb;Hn#d~zrW`{*w^gLXYM`sea`$@k|Q?aP;S^~}XKPZ&Qy{}wAd=2*e8E3etS}TNmQRHW z{Y3LhZbufZZ5H|=BIP;DnepR`?DeU=uuIG_dInk`A#Hp_;Wjw60_`V__>uA!9mnle zy1Mz}b0g3F&!%e3t41lVDcj4xeqD%EX#EF2>Df1pfV|YMK#Nb1%O0|^I09Ad({^1M~c-0wXog@p+$>6Ju4XnznJ=(jKA^8^C z*sqc})Z>~7nw;<(`!^srJP!TN7qk^7ecDdSo$P~IVUD!|i=7`ZVd=s-)4PeSq_(vF z@9WkSjg@7L(UO3H8y1tGjv)I{N%uWCBwHhg0J}=fgo71A?yD-+qSCY;|MU`Ef|U-7 zg^`fdc$*g{!qyP4*w<1@dOY+}+D*or?ggTz#Jwg?PB}B1!Qd`Z&aoC*Z_#d^0KCB# zM~>#Ei0I6^GOLq<`+VM#@Z)7;LTb=FwFLI(CE#2i`jRFwKM^wDo@o!=bbepfUQ;eY z1AYL4np8lZiaLjwi_-T`+X~1%5Bo8$2{5`LDoGQ(8OD^H$^{I<%MiP3Ol2^gW>n(K z@}n-7n>2+UnQzc6qMlm4Q{+!;S)4Bv@Jg|ZJ{P67#NJQ`TV+?PfJ}~?T5VuYYT>#z zeVUca+a@(I^D}!twv8ZFrws{B&8{1U9^pLxeo(L^0Rk6?Gkt_!&K8~OxILISYtlz- zyD2l6R^c9zZfK_gYr%(V2}HV5<4jmo|a+PJ3PzOBoZ`Pn3;wY*ywLqu-&YHUk? z&x}_|0Vgx4`%3U?1i8=EE;HW}zTWp-Z88g5lhWQRxYV+{PkO{R>d+IlIo3Be5J4d)nAy)6Mnzzf`Ctp-V|-|gQ5HR zxe~W;3=+;yTb@4=Hlty>KOQ&a#`=Ee*m->!P1e5$g+zSLI0Z<&2DBiLgJ_NPXgpSO zKl3l(vyGUmB=L{m5M*DhcTds8#)7w(@=${y^~^1p7qh&|;#$qLR5mAHD($fK(gg5* z4{W}B9W6t}j2U2Ijsv$FZG!7`4^e9}%t*NfGa{1FXt>K~6s>Fk_O32RXydJ@g?)o+ z5!#Mj0LJm??Mj|4gxj&ZOK+T@fcI;@z7r$FmxJJ*^8_MJ#9b7`L*ka5C6^t06Y%+q zL*0^YJK+#$1zdf$*CyoxVW#`<+T;pKxz|l%`Q@fdijXd4x-=fy76W-1LMX2kifv7~| zs#`5~mhb=4PIre}_Y43HUoKims+2L8P(pTU&NcjS_O?cDr6m$sy>GfpWJtWB3~Omi z+%7k>1wREYfsiwgATTae25p(f93h#@4fGije!m|2mo=iPWq{4~^}n@VXf+eb;y58_ zGS|(+iu*!pW*-M``U@iMIaT4(uMs7OO(u+=gq>(x8>_J@HGpJ_2KJ8O__E{C3Ib@? zTcWDULabc;*4WvkJ*!O+0UMhk8UrR`6?+MZS8A_hm~;KkDrkkoG>Y_R-i;xHr`77R zS*l?_EIv}S~ zz*M#dCQ~^r)w1F>**9rn`6c?GCx8!0IKd&rNL7VG@{kurpK1=A7u)2BUspp{1XrB= zXiI0p66$doG@X07G_bvCD-gEalQJtvoz{5ynmawnLwLvBiUw<&QA^nGS@W&#`CM*T z+5Fae1_43+qUUK_Rlbox&!G)_gyEiWS2E2&<$^Okk|FwFdb9fAfF889;rofh!j7T@ zIxODQgoIAMP4uz(u?CAnvPwz6N6)yGUpk1KWTx=sT$Sx?KqcpgvT10uD*!vMzk++F z0nxqkwj)Pk?A{|%7s>R~RL4o(S z)a(EDFQi3=)SvS>`ReWA9Ja1&a1Au!{wEQZ_G4rcBm>AWm+n1%s*90X7+ zo04`RJsSGs%e%ET&UZpKebz8qcDY#&6ppM}Ys2*(2SUqM8j(Y8A=uE;GEBi-r04oM ztie$;Fi$eGo~2zf7v{|9MKHXg`jc|Zd~{1gHimdq77WK!rdPSOAa=eWfz|O2J!EE+ z{^34yQoC1%nqA>8i~ZQhhdR5BK!VFhqx%LvkL%WCSz!BroyuqJad9sAT&RImzOr z5A7YCEd+s< zKj;_2f8(1SvF@)xc+sM=j06UU#Gm7Fa+-Xv{Rx_aTGA$zAe&sq=%FY(5zuEswGnv8 z()aFS`_tkf+SvOhVmLKH8|E43Cr3lWZ= z`6fZhi-&alBU4+ll~U_aD_;s4Q;(KTNP~lD;-*>M1kzJfjc#|gT_S;BMwe(QXr5d= z(fN0nOqhZ1Agj1NNZ*f4YL<)sA_rp({0*egJ28E*KvdOkAF&2e}4`Cj8gQR^*+7)UR$P$t8=;C^wpacTkfc(;;|!v9n4iZ1OA^BJ7R66d>AgDua?W-+8sf z;bb%(*!O%pU55q(W&}x5(WvdLaJdQn+-;U12md>OEIY8$-PLM_83`r zZAM(aUB}KVHa)00&Tgv^{9S-iVV^H`i`gJ%$pAd_u)dKQphRBniW5AZP+d+ zu**d+}a5_RF=%*RQFhPY-ps^bKKOWu$1XDDEcnj(=0h+n%EB4#FK%kz^| zm2n)PMVr9X>;o02lTf=ToUljM10u-tI60YsrUS_leoH30Vg}>@s)2$0g2M7;6KXfk zcAB`m(4LbdKs7$}B_}qUtv}?Z&7N+7mvO5B{W8m}eKk=Nr>+{Opu8cZoP&$pcYflg z5`B=MhqsGjzJeR@L`dq>>G235ZY{q|O0FH=grKide(d)4hn>wH2eS(wdjYiik9jQ{ zFbPi@UdHKE_UB5fXLy0o@L>`2-3nSoANsO>RPBKS1r~O5>ID5;KVjQ!AU!X0e0fm% z#pQ6C8>wO>DymX*@{MlxK#f1D8PZ1d$KTHT3^^9?&8G|Tpf`9neK&R8;Zi6^Ni ziH`sqgBoquhyH70j_Dx6Rz@mhCV2myVxW_jl|-n`b38{ANnsyzY@w4X?+Lh-26=Ug z4TiYX73`&2a1oN}bnPvory}ax8pgaxC8DCOxS6p$0dd>Gx1E-A4Qun~sq?rE+-<>| zGXKuyTaw*?iI3QC{?k%Z^uxvX7i%2i&AT>9{0chVR#5FWi@(#5T(Z^GUYFUOq%-!>HL$C>=!9*@M0zD|IU!s6We`dLg=9L6>bGJ}!YFh0A>CieskJtMOTSs^4V0PKDR`W94<0(|x6}oJ z@~UvnLCCKz!wZF0O>(0@he93jxOL6t3HsF!ba;g>fn7L#&GygtE6N0IyQ_Py${?*X zNtolAp|a<0{G|?dy0hlddszKYKRZ9Xt^hk+5IrA-HzF{deu>?57*5-$SUiUWSOSHY zA^zitCdLHp8ja%*|Lx|y@%d)4)D1}1gTZL|xf?T~m^j4bdH_1X@>Tc{o^)72Mih-I z3?7Z>@F6Tcf4#x@RoRA{@4m1`L_N}Ebn9`rZl^&vbUz5!ZNWkOCSf<1O;f$>zEi?8 zBbyHa^DOXx6nn8-RS;BlUnrH+bL!!eDxvcj_zp|z$2!TppLjqAW|lRt{pH?ILlZRo zp~u9d9}WX6E&Vh~jTj5c7 z@}=28^1&&kO{N@#%K!v309Xjy8YRPgC*2m~TNeYd0~wLYqBFegmAx9{xkatR(cmdH zT_$`iF5jVXx48d5L0BMXAhs}nAQ36D#Y&5+9Tup7Tg6Gt*}Uiz1-)#iB&|K);7Jc zIhrR5=^{1~NHQ=Q9(DVE8zX)0fOR@o1lfB{+aSJk>LAMR_2bn59y+t8T#xAnnTc{aCP#5;sAs?6vj1-lr+vuWn_m6%s zu)J$MWJ;!y1QDMFdsz}?BCdiSGsB8Row??#ICUqz>+`OHj@@3XtGupv5dD$#D*s{{ zf8vT`@0>$+Q+bn_U!?qO2!}(Poko}Sy*Tta^(42+Y^)g_DNsBOqpGhQf{$Q$LZ5kE zas=#B_dUwdiqrC_-<^7`B)Qcq6>Z(J6OG{e#6Hr9ST=wOXToM(CeX2-$wQ3R4@$b4 zpTL*`!gCFrp>JGbjG9}j=-Yi<(|23AjR@b-Ac1<%ptqnt<_+Mz092Y4`Al;H+%6ay*R~F?q z!%_{y0<@*qlnmfzQg(~4Rs_@kRjZ@VH$9fL-*EHV5a*Di>Xd-&u()7mfrD%STC9ME zqD=^fME;ky6A#%nI%#JREM(;OcF?QL1P#O_r>M+(0*s3ybf60$3_Juq#?q@*!hz!p zLT9zFn#NuQJas|sC51v|MOQ0=gmQ}z>=nvVKofF$9|HV-gKUVL>?+=+EHCLxw865z z8!asn<1C@_hla@n)VV;a^#Ohp!e)F*Fd2*_w`jToS<*6_U`h%hI78GBuOw1n%S^Q8 z-GXc*&>uUnNv-Fj;>_}?>u=RS;xzDac3t94LF7+6G{R;g5$E}4S3%o3!^`445C_h2E z?s$0D@Ngtbad0YT^mLd(wz8^{*)dwHNbj51n$CkI$j!c~Z;8jk#4dEKuGG`yR`nCs{U)Ia&!(%}pE+I#&(ToU#f zCA{JMev7EMY~SM7YgeyyS(>{r~Fn*|LnOUw)RMW`@UXj*5^@R&Wy)H)F_ zm=WPo@nemEGP6#gHKdI-6hi($md^BZ!%^N5+17moNk3aPSW~dTdXQKpRWUN0BVuT(KYeI#1{Lj!d?sDnkE;t- z5p0Sx7KSb48VjNy0lnZjFgH$KmzBa*K}BqrHVuu>&}cA$F?D|GFqch#dR?M!?QFEE zCvBgNaIWSpgrvttX20(GZq?LKGX+$fA7;LZv|$-_X%3X=GmUAIj{_mfK-YBi{^B&y zp?xi4f)np%K*{(do+a08u>Arks9ZSk8h*yu~(Lf?!jX#yw>m&(<6$L{ zh>yLR)#N*yn8rw$_}@n9cnN@o{7oz)JM!y#t%dv_RuQvEjv~lx;?@~nD_JVKG%!3N zF>)BnuKIsJ&$>?B6da%qyQ#Aw5~0+7SEM+|4v2C3nek@gc~cK zbZ{VMNQh$`z1nW^00vd>J7^jgQ^QbA4^oC6COSuP>P`-K?4|rUz%eARyqpEo(^)(B zBOfF4&F+T7FW8iFv$w$N#m(NqKh7@Mg9KDo6ZbTRJu!Bi6J&}rD@@^fi`~+xw!&uU z-!r<}6PwNvLw*ON1W06!v&l|5aO?z0z>G5ovk}8Ak!%OTl*y6!SRVP`Ww7`igg$Kt z8jVwNeJMbn5>6b_AQZfjHkc5ELi9Shfj^ZQ#qQsVYQh)t;T*_ub4oLiwV}$Q`O}BX zeH4QMeX08;XDqXSAj^=#U>lA=?m3?eBhe7K*27$K1+V+Zq4r!!0p#$R0dv_ZcWQ9?MNd*$yh zP4qKVTpsn2<{R? zZIDX1{$o*0TfVmG4#$Fwn)Z9d%!Yt7Mv#IjC>`gvwX&)d{SRpQi1slR7o^<1mrWj{60 zZ-OxQJSC>nDDkxW@l@D7k-5!)G&dDaJ`JyrdJD4YN$Q3R@KE_BT$4)a$tmFO`*7P3 zQ6mVpE;jaVR&4_@_%+J6;GPr-i$NVQ1Nf8T`VT1+XFp8#Jx0u5^`aWmNL|Q}a@lCn zb72&Aaq$S$&2!b;{~~S0cN9aq$`re*Pu5hP@aebCR`!jnhRpS&U23Uu2$@oP?n|;@ ze@(^tB}jz%_jml0FtN_lYa1%d>C@7J7}u1smB^9ET4mpf)?)Qe+_rMBZOhdBadea) zRVHKl0-5-CZ$D{@bYt-Crg0{H0>P~cWl}XAFAv{~CfL*JTNV#^GP~oiLRl!o(jlwG zaf2U&Xv!P3AByo3XQ@L(e?iI6|JvfijFL%AA4uzQT8p}=g`TwH-5_`T@Z*t5#W{LR zv2V~Mmr|kHzY^-3yqz?)wf7Nj3P?3aH*aeEeNqTl9OMXrZxZ8aX9ySd8d~gCH3Yz# zmGWGOV5E);Uq@NN9`ns&5Jkt|=t*2vnN#4iw7W*?_sZwb9FtZt!CLauTePw*NEo%c zHc|}&PcogJ7SpFn?}y{RQ9&dM@gyL=S_O3N`(r?CE;{E*Uq_P{_hP z&=c~;O0V}5Pdvv-l7U5>K4TK3`c~>|B09;AI-DQP8j-4;(NXs>a%qHRQ5x} zV?W3(-K9vIIXzb%@!Ucl=Fu6E914->FDSs+9t6{lFiGA}D`HdiV8>QML!-}e*K(;E znsjT%&ZjgQNayXrRaj|9Q}w$2K9ijj6ghSl=)fJ(+`}DBkzBbJ)hWA6Lneh9oIx1q zR-dc+H2+r4-J+29!57qpjIfx>&nl=)WA8n#7Ka9Gp4d+(-TSuFGu6k&@6|ICq~n^= z^A`jOZuo{S5=V|qF54~mCm3Sr%B?LiaVWF-5Q=Y9#|l>Q|NE-K3!Lulu}KqE$VduQ zo;^i<Rp+0@BAuAvfb$WrDiU;=*Dtd0i{^1ZJB}a=y=r z#)i_0_+WUzM$OyYw_He3wg=(6h%)f~t^uWC?>onm#UvMcd=5Ussr7v(;|5*z;qf20 zk_YB>)q)c$)3k8YN-;<45wwzXrSH4jI)osamS=wp22I)`SS1IfRTaYCg$>n{%Nh#db6l8NN#@VIT@&G#%up+Y2dY-#v6SEk*UuhtN%EWd3>;<7$oaWiES#V z4=M-)^Nc^>+|+76$!`V~p}!zROW+HGxUVZ=_i1Jm_eYs>dWoaUicIn|0Hq?xTESha z-jZ41Q!4s&=LsBjBZl0j&S(!iVGWuWaoer9L`XA*Ql*&NK7q(5?;x6ovoeniU;oOz zp?7TiCgw@l=XN5ZV}tkmfGa99E-s^l*7*{>02=9OmBeQVI%PGM^QXYD9+<|5QmW2m@5Jbjfl&xyd6Hk-3>mIIli#GWpBjS=yobrP}yQK z*P1zH5yj(HVEg+rpHX`*2wiFeFT>t00irU#gi(ZdB(l$IHjPo~Q~S6GaP-Ex{Oeyg zf-hdzd%pfj$Heg+yutL4hxpt2&0r9B5je;ZQd(9VBoOf(_;`>gLUM)bU3qf&&wFgg zW)jI!&HZmD$~o@VuNio-IebsjCfXz58O$WHBhO9DXFu4bvH~0(#$~`qpU#$ z_?=x)z%CIBxOsr8EMJP*!AgQ!IW3wDwMmrW7x0smrSJ80dJ|BHKufl5#^`?m|3mMq z4Mu$+uf-9_1WdJ^cesS9ET}qo!k{QfccGiNRIncsDjJB5r{c)4orAp3=y+C9_S7=R zN^tCewoRMefV}zffIO%v@8?vvAJj#im#GSZ#YBU;d^X{;IxN&6FEK1cTwhJKdAXQz z(HKw7e}iq7OyU^B<3$|tOr6G1H82LfQB&Dxg8a_Y3Pe&0THk|Lx8rbDSiTu~VenQ& zW+$H)vs@S$qt*#jU?_J)#K?OCthnozq$+N*8S9}a@wj+79ZQjlkK*^kST}X?gM8no zv$TzC!a@n<$|82ju=u6=1cm>m?`#VnObg`qJ`Nm{X5ZarQ=Fk(>TL7|&fG|p7kHi5 zwnJLw^V)t!+V!f4XY~_-wcmCOsEsBPTJcrez{@AGyx)UnV_Dx=s}7pi9lQP%MsR*H z!OJ+#^CT(aWgSAoV+G4Yb68j~HcbSRuQVXh8wAS1P9-g5+6uVAkeQ^xd9CSE4hS35fs5%FArvL5@ zQ!vl(l=HN_XSL!n9cmOSWPB84dUSRRUHvd+O$O$Ys=%-qejO~NLHX~3`Fd!2AtCBo z>R#oRz$#2}Jbpzu6G{}q76M13kI!2-HM$*!hDKrpI-)bBfl^{VW0sYiP_YTJZxFRUPn&R$O8i`pFMdF*;CUFPI?}M4A}1K@UG}~? z?yG^8^IBpoff&=swBwome+M_36!>N{Yact#sf5{%cNnJ)r=M6BqOCG~as>55B6ndG zh3P0)39FuoEryIBfW2xTN^LB2+8r7g%QT-m?*fAR(4>iJa>B5HB@S;>r<%Sz{q$9p znqU2I*Km!*Vm-Y2PREe*L4~;ta!!0;9>&g`nBmhk#-u;!|Ay@hOByqGJ>01EfJ@Bs zb&hzkMP=m%BSQMU^ZuKMrofMVAkB~T1!`mBCQ;-Q=vVsG|4|EDoTl$KFQp<8p~AyD z2)d^VuDY&zYms+3gilLTXZenaGLTgygh94h?D5~AA&ka1?&^+H?!3xoH=9zhr}h!0 zsZFd3iE=Qha*USgKtcK_y6j6#x~Uj$S>D}KC|Cfhd_H`pWJdQ~vIACz#5C+(=jm+V z-2qFT%rW8nxv%H!k(m0?Fi9 zJ0Fb}&)0jBsWRBq&tjFDW0urs38!F5Np#b;k2!Yr9q+eO|9=5Jg9>!l-&kd0vK!pS zUtkI~t}C%9S=tbhCN=INY;o>>)3HPB-jx85D<*v2R{83NzM#N|`#f{(^OZ~oGLu_K z@^o5bq?o%d=;nH049){_A?97Mzwf3T6&Jluq=9AevqU~XRCyAy-#r((Lu@LO2=)Ex zUqjq}F4XYiPh^<^!MY2Zh|=!bJ}e(S=$vJ8KlG!-ZbkmyiKy_WfXP1|gS2bBvt+tC z;-IB$t{dG=uf;{d;eXG7ya=mA8jp^vQPt<+dE#wGD^PtYh+75`N|6Fr-L7TnD&$RL z6X}lT4dt5I=(opW6YVXbQ>O^Q;8(RQMUE~dXtj~TDNV?tCYX%=p3~57T3`ScPk+*N zimvino>uFe%Zqd|U?*UnJ6sffv6!Z#;%`C>`UOe?Y_mXs1M5OW3}}m|q|Ys0dJHPf z@*c!h4u(CZrX^ZRkW(1NP9z50Qy}?kIDnMmGfY7Tr5MxD-_vr?spVpge1@#>@Zwpm zL94uE3@@E?K>!>XY#!K+gRvdte#nuzjib9H)F(IMj|AMbi-hnYI#JKb3NU5?bEZ zyLZY-@L=YQvlYW)AuoaM&Hk$ZaeIZg0e6~rSfD2fA1ZC1^-E-Xx?)QU17D&G%ONeh z#XAmg^aukAF>As3V3cco$P48C6b&Z&d0yO2n#Avnr;Ot(5w9uA4M)ditWO@S!czU3rWb%q+tJS{H37W%y=W68L9^f5du{ zsi!7Eaay$=_%xmwf*=qj6uK_i%DA+8v*H&-kx0a963$JH&ezxmN=j;!%@@mlqs$|Q z;9*1OgLaj32O4gT#q4389lyJ9Tthqytc*M@ediIIio9PvzMcxw<_IqhSiaQMG%m3| z(!1eUKcFdy7J~{9M=&&t{^=#dFqiT_Oo2^88mz{`6v|l1+S|`k(6`m@t$A|U<16!1 z)(-2T=Sw$n(W@|4UNBDW7lsnEmFTe3nD9#TQ|m!QE$n4QypHHrnbFn<(y2a7YKbaJM1FFi zUudL~w(uWYMvtGyG>@CE$|3_0{U3xo&(iPD8BBVnKQSV2IKeNIa!mTYdUsnunoqgs z)wU|m-YEEGG>gtRV)rH0ZWAO-5lqcE(6p}puAe{bg?1xU2}nA)JicmX-$)vM*697q z!K7o#mcuAj<*l9McRQd}9>&i&GA_m2q58U9GIt|o^vx3VyL5TXiQm3EDG z3PqAMy1?2=X)`dy`4f^!>TJ3eynt>1g86QoDV0VUCV7llDXWr1$fvYKzxSce$pDlw z@`@aMY7Yf+Gnxc79XgpFk$LOl9n9tl$e5^oK8sQlCsO};w*=mr69ab87{1EfFb`z~ zlc%-WbV|=yx#L8eF}@_qWHv7?anGT0kKhC#ON6iY=LyBc!)<AK3E61^_9Nv*rydi?!Cbcd3{z}H?0~v%_GcI=**w{z!K?raYXVtljLNKj(<8} zT2#gpQun{7p+G)2Jvyqna>ehkBwk?qIiQpiX?E`iio|pa361doJ}Zx#$QY2_7K5um z=FFgixl>Ubd(lwz<7aZLle>ACSKDn-`+lzL;$!2avUTyxsYjseN|0|T#lqu>nSR;M zLjP8wI#|wPqtCoav9@t}4(=X)4Z`LJ<>V|e;9JC|uIwEiD-wx~Rc=bH$74vU%(QUr zRU8Nx6}G*;`1WC$@A5Qlc?a~+Fh<&8<*BSXWtgWKFJAD&>qC`F(8hK* zL54C{l8;Fc_lDsZCm(AopBYC0u;2i(5V=GwVvn=>5e&_M!3@v?IIvF( zu31VmBA4WBr2T=j>aW?>atwj4G?8*1_ zVQcTS42?Zg)I~lo5S>S1FEI)y(ot&OAq+|R-DtU;R~t=$KT0B?1VU~HsLyzYrwbuV zK}zH)BrJ6=WfLq(UFAB6;8~^ti8+$YarOe*i@ysdbo1ej*ssU& z(~7-ovT)MqaBZ)RnI5rt0<5V*IY|7`VRr(WWs!feKyM=RL(ldrzPL)OYKnWAYN*f? z0)EJ);bS~x9Pauu>KI#G_|RoHAsm0wGo8ELSYhiE#88W)Xh!AUF5Q z3fHK&0;^=KMOxCkJZweE`Noc6E@_!d4gp7Cp6QbLi9LU9oc6<~j10XzSM+ReY8e1D ztT03(qzScPY(#QLSo-VxMgW9I=$Q!OB_~JF6KZ(%3mP2)7mbh)p)SxM*7^Y^$37v4m~VOrc@ z)$}wGRY(GL@dXHPlQ=iDAxx8iy7~5-q+@4zwu_NEo31QiO3*Y9Q@pXzRnR~K`#Q&P zNM=Stus@G{a?u3HUS|$DM^QT&M;Soj%85ybQ)!SQBUH?lBDhhSi%%J^KJ@dgUemG$ z5m*xb-oMrNx5``i2%f0mZvCzQUTD9+XX;gB33taaR}slEvhK8vP!2`p9T1)5jDU)@ zI~%p&#N2V1@~uvn3Z)A~`u^DVImi5@xZv4u-&LfB9=|n?WoqBmtv37D1Jt#zBY0Z< zf3XLBDIZd=d1KE8VZY?|f*4_@1tq;vyzvW+V2GNEK4N@;`zRYj-i73eZ8Q}40fm^qb!bRf>U>w3 z6#+W(#Phr=oJ9Wj^H7hw?TPf7P{0ke41C4EQ6z1syCovvgke~9nj(xjq5@i+|y0fL7~63iePmJ{*Uebz<$hT~z& zEw!EGP7pYxd1eZw*5}~9``?cz8BJQyd{G#Em)UJy_kbc2&NmO;*o^f{sP7yKGK8ln zcCTD+X3%$-sXzddjO_^8_gjTjQ{)Ys3)bg@Td_w@MwF>RGlV|?*O78T0)G6)tkB&! zV^k5q6DXx)(Kim<;%-K)c-pCB(Z??N9yIr~sd@&jY%#z6x}A6q%&g_oh=dQue9h!` z3D$)NLZ(ABAIEd8hN@=3SCJE42E)2OUAa0yGr@zpwPDxX$)yB@RB*j6lG}) zrfyEGFTrZmf~`I8_%GE~lyiOtIBaU$4o`fjy0JXIVQitKOT7KcZS~Wvw1J$7_N@@2 zs=otfNZ~dumWi47YCfpdx=(OayZ7)5o@Vq=hA8&fx+^1n-fDSpdplnHx81uO`Y)k? zr0bp$of|{pbU_eEykaUmm(5emwUi}{x1bcFWFxlx@Sg~3 ztz~zv&%XZDwzXrlE%F^Nb)P*9uD&D;W}tcoVHGb|Cm0Rgxx&u z{S*cx9`BXOd|=tWZn|84x*iyUTRVu>8l5%z+{+oQwVz?-a0$*K06O)3JnHbk;76)` zO@PA}*WnD*IH?2dtsrh9l01o5D~wY@7M4o%b9m3F%IOvjQB1y!A1Vx;U^pMgBr>tH zKkP$JdF>Rg$U}xTm#5LK30`L=W(RelZ_3q_Cinz-!O!m3vT#enL~;=WV9P`2G0PKr z@IDc_Tt#+BNNyk#<+_tl}0H_M|PwtLn#|4{&QaKV|Epf!~cSTR8Kfd;X8 z*VH=)xrz}yKIxGHbE&w5M8YgF$nBmpna%AkUz?r&O6<0O&lf!E*7v0;gH;WfYrcFh za@>Fmyi;-0xM*831kDVoLvr6~ObzG}fIB|tb&bDdjpH(?M>?po^{~Hi1FVF~CAAR} zgy3^N*(*<(#72?m5sxT*Bb1sXbdadBe@T_yo~k0=N9=@?Pm+@YtdzK5ck{K67kg?a z4$>b^!eE3bN>>mg<9eT0Z6qTWE*I2s}04#s=5wIE-FXI$BmVS&* zAiK!1b^1-iZZ5lMhz}sSz;4@pb+R|g@R0=Vrv3v>;56&p$PGtj2R|q zVrUYmhO>l zgbSkmfTrj8ds)D{Spm$W0^zK0`~; zPE^em+)(Gb8ZflvJCEXT*ta0JM~6mqM;%1CgObw_w!end5*4m$@`$YDmC5-Xp+oILaos% z2TD1uQCnS^#o9owmN+l6XueIhfv4PvEKTrkjOE}$c%qpjSC^(sU}M$!rQ5h)G0y@i zcuBB%YKp+nXI)O+Lm8c7j6%2DH{UXh!}PcDPoYlT>(2{bw@0?nGuj$AKw=IXrj_v- z00$zCFc~SqgzlXqLa<9L4M)0Bcvs;%#-JBuO1c^Z1B|XukZHq#Uw(lBphkDa(i?&Z zIG=38GG&PVnxi0DT(b-&VVb<+WHH3<1I1sgZWb49=bLO??3%jidk%ozZ)AWK*^yhs zUy5JO?d5mK6MybJ;LLf?%<|m*@Yo?)Bufeg66@-@sCl;$vR7O#Ybvg5lm{I`q#HH1 z4;O3HLJ}r;Kb{mT{&PF0@55fok4NP^zM1t4$)h?wC-K(pW$_4V?>l?e^J@#rs`!@w zu>{v%uNK{{&;N}8dr2R5xbKg9)hu02YhwChVDwyoaw-7XxvxZVeD^fo%LR(J=<;~y z5Y#W5nLjISUqgA~t6I^|-UaN-U$RgjBhGMesrmAWs8f6hJz~^U^%IATNShe`)s+{& zm)2+-G;211M{>eZI%h{vt~0EIQ2C{+WRqu1=@|iOhb$rE`?XiavsQWV72_0C$57FT&#nR$OW&L!JmF=)d)RCVg?!UfA=LqD)m#tii&2WV zwfw*^m9^&|gIr67atR>#zB31S?nXy?GohJw{VX~pk6a~|ojvK#V|qG#PGY#we1)X) z2D2-SyBnb0myH{*msU7aG~?DhdQOOx67Y!+iev~)u!fXKbFV5d^!C%$#WjG((MFX_ zr<80`cMZG7TWA^23m?l{_?jo+DGVAan&efOYK)9l6yK~8vPD(IL7>yOLw?Cy4K-RL zrEo-yQV(tu$r&*^h`#%(DNw;WKR5ah&bM{!Cnk((`6c}O=6L4?)wY11WzX^NdH1n5 zC&qA;_%05?h_9OJ6n$Hw2q-(A9usH=ocFcv3&S)ARlENi_@@uDHx1CDLwsp*p@#VV zzE%T9pisr(r=PvzY%s?iFw#cADb;y4o)#3|!6p6&GFX7dDa>}&0{qfVyyvJFoJ#ld z`;*^6?V`DvwVw1(FUZ}1Zm-SApAH)p5s8p?8Ow-yZOs^odJGIV=;pr<3vA|&hbhz> zysJ1DB@qZnsSMKj#3|x$W8%Ly29Xbcz5n-yw$n~8=xrP@li-=$JWiVhNK`>lZ0Bkg z_p9xX2tr37NS_B8ZP z%=dQ$cg6h$qf6}rqtoMCkSTc6>*@bE@)X9Iq??E+KBkfqp7T|+$rTw-qf-aKN~SaI ziw-B;@n+a3RU&|tJxw}p(0QDL8F1!r)3_}V6zDi1Q$Wn&{OnOYudjha~(n{PjZrN8>asZJtf2DZ|bk&|Kr!O0WD&-G%MqaDt|O#+{y;V= z&`c+X5TFI4EwTM_-2(ErY#sd$g!Ducto#QyXoPaB9Ug3_+A8mb=bj}=p!_dRTPIkc z8X0*ugk&R?E?T`k;=}pwggB9|7~e+MvjibUl^R|Kf_n&v#)|bLRi9RWDWv)*wlcgO zJcVenOPGo1cOe;i)}!nY>@dRMWMe!G6v!xZ2Mm3LOrh&{P#Pa8oAK`n3EKkysqfqJ zU%~bVH^>6hkw*(_5KY35U4lB)G_k|Ksd?SIU+GoRxM>`cX=e#~-@1c#Ey$k+2z@Op z4xGba%X$3(Iv-Rr0w+rKpdmbG@TGzecVpbCAIT!l2ey%S4@n%V-07k8V40CF9ydUc zQgLM)!2Ja}bvR97Y?O${j|8vhAxMYfeES)Md7|XK<}68TK7Sq}UaddW;X9oP4agO3 z_(bsjkeFggV#4sj)hsn;x$HR3k0cGyw!ND_9_)#bPyCOYNxu#J`xHphyQgpjCM1_T zS%}mw(Fb5szEI>>z$7wisM$95(Avo&MrOf9z$MG9CAFrh!&ql2vX!IsS=i7--dx;- zbFRmh#>yh=_DlJE+)DhsnY{J1(fbu42MDppDqS-c^!xeAYcR(*G*Lg3w)!@T!8!|m z37Qf|X}#Pe1}X?nFKZboGEyUk4uc!NvYCyJ`_{KDDhV`klU-8Tl89$@MMjUzfx(pi z9%NLA)Vck#7Zs%>IP-OG{utU9@@-ZEo-8SJ}LnxeA;4d z8SgA|l%`%x|6dyg2T)#NP`pOAqK7?6^aB5NGTKUP$NcbZu?7wc)2DiS)LOejBq5cQ z-xcry^=Rx&*Mgv?p)cE_WsjzK4<*(dOHbBNEXfWfjv(j^7p%Twj z8$yXT!lJK~Rq;S*5t@wCjCCj$1v_%h$JcXPi|qB9zpl{v#57#eOx~Ztmdun5hlBU1 zjb0n;_x^De*axa#&VTBFCGjDYXC`h^=%;RqgKuIYOd9jGmP~LpjnPfRMHKw?(xqCu z`b;Bn%L{Y}$^nH_32HwHI_zHV)ZKnfe@(&US`q$x%b@1ge@-yZ4ENcl`F|{(Ra9I{ zw}o+cx8Uv?+})kv?ykXuySoH;Cj<#WfF_o z*2~Aau9=RX;M>S#p%~*g^m_mY0=#4CMe>%+QySG89#nMHVF?kM#~=RTv8sAT4I`N^aOhppt*m2 ze*kV3(p9H3=s`U6&Ui$YC|%XvY0|@l%`748U02?*XXiUWClN~z>EiMMw&70TVT!4n zNowr6y>9rMA2sIh`WhaQpz|bGE0V?^#yWSif`V1hT3kzL?Jo9oFih-1O-xrq`V+V| zj&K?CzjYM~uadzm2AMEi0t)F#+u7zbdOeTrU{|9rWcPU%mUZtk6A$?rd%|HY#yY*k zl}to{lVshe8k4q}LjH9!c|Ir45DLVh4*CU?Y)YhFq_L;pO#OtfLo&}~m)-(D(|FqY zS~8jfbZQ*b1ndQ!Y6Wp=FZVq`pug4SHd{~J6z7A1_MDkip&%v{Ex%3qN-8w1uibrc zkSM_#i?00I)oV&95cO3^1)G2c=!C`*+N}_^V{=;c?`xaW`l&1)W3ao#rf<+e#;5mv zI#I|@D%TzimiZcOrtgNpmVA_%k4ZkI%NI~}{*|K-b=%qD8wqSid^)Lx0Vk+5iJ&hQ z&b2WQOVlDc=SFm@Erw(IdBC9QkEQ3aA9Fb9MyP{L&rhktVIUr<`$<29Ukx{ZP*U8ja|-`z zvqtF6IcFOzNFJ=BBa9#>YotJ0i3N3q>Vg#ydG`(L!JK^jGE%mZi(O*MH0tYZ(a>n% z-}IAu|K;D!E&Oio%%N2t40P3hI=fXoJ4K6m<4WB#otT^8NB5LcpP3Jd#?vCXNXlu zH+HCs{{4=U&=-PRxh|m@Lp3_1a)4K__S6F(zgkKO;T~RG64rSlf3dc$DmWUCb_Hb?tz*1eI%14G{ChaGchdONv#c>+ z(a{}Xooc<{MTH4+Oq0ijS&OL>NXn zq#)~q`j`|8dRAYdCj4YK^1A7N8F&I`_9@pw;PW}3>vnGyVKl_U6#|}P+l_M!={#r2 z7c&IH9pA{dyUM#Fr&pE0$h^s_J=Y`u5W&4JW5z{g+;&NPk9%RRhjRh#RJ9<%KR>m} z{_X*R8-QP%mh1td-Mf0DcD<#VEvxuEMLR33FKNk~-Gw>ng)QhwadeDKPyVlUZ&O6Uc;0af3a)0h{q9N zXqT}2`scZ4xRB_KxDs8$eP-D-9)fxG;xe8!{jx>e*&6G#1K8hE zSo*3`rQ%x~UI`Zi2F?dy=K0kZ75*J(2|{<-u3gH^;dHYENfb9Fs1@Lt#i5|C^A!#`cbM!tg>;0ADu!}6_ zB;7`HH5*=qrBrj4vFy?$m=?m{w5<0H|6}3lCT$lmhB zoZ8=@?=^Cu%hD7(^7k%myPa%JO&C+$e(C2e_N(K={C>zsL7;$07Ctf-KF%>h0{zKP zOWwT?79XSa_g73R8Plv%W$Axs-cY+~Eh05ajratu0R}5gY*X4NMGUCSfu3-&pWDS* zF0ZUKZgf>KsQ9Lte3vx1+IFrueIDvW@sQAN3X!Z)*98L$LsJ!88%)7$>RfUjG3^K8 zSs!>9Id(&dezp#KCA%VrvJo5ET9OcY=iJ?dbe|>?a>}X+k{5iiR4B=;!9g&Gm~4(z z5*!*B*yTwd3PR5H91o4HBzIHR6*R07I#yyaBQWLjz-GoU`j_%i0Pw0<4BDuPap#$~ zJoq65cAQ{cr!Nq)dL@>u<7KEc=h-FzKF58ouG>f|^$Z$pbb5RVb_-AB&&cou^mzrC7PO=cz``I&N=LFhYVpKO zQ1w~G&NH#qwo-z>tIc7CJ}^h<8y{ONY;udw`tbP0^im-B<)V3$+i+u>QBBZ0SFTp0 zX<&Dt+1<%?+5_|Q*MdxjxxrYV-N@5#S`CCgs8Y1?hy65FceuCI2;LA5l$yIX;;q}X zD&J_!{q=rQ{9A!*nmFCAjk=bclh2@Nlk75-_`2SFj!Wj;5IKA0C4y&A9baC^dkmBC zCi^*mCAp8b-y~9d&)?CbvO?NmL9)u8@Aggyh->6KI%-Uk%R_AcC<~>( zDm7eqqW;I`^Ma=88*r0mZ0oCY2O=%uuCLgwmb&!(9JD&_zm==Kl!L`KTE=Rxx*;<9 z*-K`EOYzN_ZXsOY=Ba+`+)T4P8M|%piZPxCcl=ZV3pT5SV66H$1A~Hn>X_~dta(_8DXYc*oqr?%l+9iD97m?4KH^lF+=F@b> z#k!_pV3H;>Asyw~UAA@wdXu>kCc{52JTMgsgeMWpPxuE|5Zrn~ zYi6#I0G!ONv4y@Hh>42~2NMQXv6NL1bYod7ol4fKZ(Az_1GW43G(|9VbQ^gCID zn% z-Ab|Iw{e^))u1^erRi{D(!~};2ygS(HPjqv89IWVBb>dIT>XF4>+ESG)M60v=13d#1Te-KCm*JszU-hr>Xk~T+yj@2A6o#%PWWqil(Y%I^VTKL)&6*bSa)0ilg04J_ z{mHUk*A#G-!p`BJX)eC1Z7^YeedkIp8Hi5!FElK&oHt-yWf^S@pBy1te9xa;`F_^ZT~g_{L%Dg4=%n(!8NDN>=l2U#o+4tQV}-t zhP2tnXGYlgGa5z*L|<#KCMp}pH@oeIYeko!F597~!oX{7s?5**LhRH;WfnHJC+-oO zVnWu$e4!VJ@!3cE%n&HC-hswg{8VP85Xdx`_R9@Mw4tzSF91d3H?-9xT<6u4ARzE3 zXv_i3Z$xZbIU{x`&_7(?ZF=b;1<-z;!_~#*nkSZ4K!s{B@9gv8`|d4&nQ*A|kQ(^% z8Y4D#oe>kYnY5O}IahweQGcg!(5!>$TG(_a+}jb}Jg)dnu{T``!H{zOY{k-kb ztMQpu7jeCbTPV=|fTQ|9sNo&b?*BJR&|QX5Bgpnm(wSbfncS!liEz$aTN` zX51QM;e~gsj_jL@T_vS#!rZ(5quUvGdbL#i2d^P655QIq-Y#}~uq(eMRxAq7-k zKSMk71sC@>q>fX#s)l=tCrWKbwJv*fmCG46?NIg%b9vqOVkiV^nz0%(^j`PT?b0xQheuk`@CYVv6-aMmAO>TwOXjGq-e;D6 z&{h7CR?WG;F4@{dtrNm^I^}G%$O`Jl^5W+-C`F#=A0hiRJ!VvdFP@t{%D=w^We=hlr zjz9Q%$Q2ScXLjTFezGt%$x17TB0y(iJU~h<%I!t9qWP>8r`AR6`0>>hu$XCSQvR(5 zf-t)M?(LHwBQoGVvXPQ{T=l`50K_>NLik8*vA>;LZ>+-DJm_{9?OZ|xIbuozbWGCm zWi8LJJVRG|3H5KUko-GOjbA>pYt^RrN@lH9v$I zvqKxTfls? z&dnW#k^<6=ty2y3Tb=;@^&mJP+{D8A7ou(@BjbIBPwNN1xFmpA{7Ze#nDC<*%^n1m zSh+EpGR3vIV4zH0(4gTwMxjJE`fUJt#)_2*cfrLN| zrphKX4Xn`8qV=W3#cl5M{Z@J>BZP}Ww*w&@BkP>|IQK=k0($jcx_82D;0RV~npowGoUXegG#gf8 zcED&|TIQIf;ETwxZ3S`ZZ`O&y@*nHYf;vPg6tu2UZRd5(Q{PJ+u7uPbGxDRVRuSI2 z{1$Q0wV*b$@r43^p;SgUMabtGQxt{sP$G0{UA?K8UW}D^e4cea9 zr>ryL$PZ?=_4Ph|6qJ77h59wI9lZ8aWJ4?6=shpiGGHmTsomw)+nlN$YsgeZ-|hhH zlng4OZqVKFtom){znA^!oK6FwtD8O%=hFnS@yvjjj(FPa^Qsmm3BB zh)WQkn6N81ZA$D|PZ>5uYwX%kc<`0Npc_y;V?=ZmX&=z_sR}s+z&vE$d7b%A^g6Us zwZ|U_fu3c|c#va#*$xa9f`JPi>nPb?VvPddwH!>IJJr4;Y?(VlazkTszQLgEaLbVl zV`o8C%~`}GAPWx{$wE+G{lFO#Bvz9F1)zn(4inrZdT)4TSv%}>nlI}rzGbZii-6nr zw&@ac6CgnIFaFGrIXus(GJ*LF@9D&X!5AiCj3k+%C6sw7cRPbTUpA_=)$?IEkMUMV z_7Z0(l!TW~6SsTSenjj78 z@r&JnFU5*_T$V%6Dq%1}66euMLLkt0^>mnMwXxfg?s@3@%&-G2{cQ%OzJ368C`)f{ zORQ+p7Viz@upX$c0OZu)t{D$n7l50+op3k|4z+)3cA;ujPKc_oGI?{$B9Xo9zO<)~ zVR|a4>uQk8jWfd+YH}M2!BFMVt5h9#kvv&kUO~V9HGEdC*{XWFF2%iH`J%0A8FdTD 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

$=0}sd3vYw{+K6 zOl6vP{2T!RA`e({36u~K;Onzd|G)M1q-jN%_Ssp$yLfUFK{BL6UdKT|`2TPJkM;rL YN+)P!P;c!EFro+wGVdWZQpQ351H8q#YXATM diff --git a/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_symlog_params.png b/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_symlog_params.png index 61f7a6cbc993998befc108acf04c9e00079b6361..2d1c7503929e22ab7832ac66284fc6a399d2da5d 100644 GIT binary patch literal 77445 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 q#do@b+ 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 NE2$(=BW4`@e*hHD5;gz; From f4f210899e10c51ac87b49cc8dd62bba890517aa Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 26 Jun 2026 13:56:29 +0200 Subject: [PATCH 20/49] Simplify _SymmetricalLogUtil.init() --- lib/matplotlib/ticker.py | 38 +++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index ea6618deb73c..3b2354b6ab00 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -922,18 +922,14 @@ class _SymmetricalLogUtil: if *transform* is not set. """ - def __init__(self, transform=None, base=None, linthresh=None, linscale=None): - if transform is not None: - self.base = transform.base - self.linthresh = transform.linthresh - self.linscale = transform.linscale - elif base is not None and linthresh is not None and linscale is not None: - self.base = base - self.linthresh = linthresh - self.linscale = linscale - else: - raise ValueError("Either transform, or all of base, linthresh and " - "linscale must be provided.") + def __init__(self, base, linthresh, linscale): + self.base = base + self.linthresh = linthresh + self.linscale = linscale + + @classmethod + def from_transform(cls, transform): + return cls(transform.base, transform.linthresh, transform.linscale) def _log_b(self, x): # Use specialized logs if possible, as they can be more accurate; e.g. @@ -1087,12 +1083,13 @@ def _is_symlog(self): if self._symlogutil is not None: return True if self._linthresh is not None and self._linscale is not None: - self._symlogutil = _SymmetricalLogUtil(base=self._base, - linthresh=self._linthresh, - linscale=self._linscale) + self._symlogutil = _SymmetricalLogUtil(self._base, + self._linthresh, + self._linscale) return True try: - self._symlogutil = _SymmetricalLogUtil(self.axis.get_transform()) + self._symlogutil = _SymmetricalLogUtil.from_transform( + self.axis.get_transform()) return True except AttributeError: pass @@ -2820,7 +2817,14 @@ def __init__(self, transform=None, subs=None, ----- Either *transform*, or all of *base*, *linthresh* and *linscale* must be given. """ - self._symlogutil = _SymmetricalLogUtil(transform, base, linthresh, linscale) + if transform is not None: + if any(p is not None for p in (base, linthresh, linscale)): + raise ValueError("You must not provide base, linthresh or linscale " + "explicitly when transform is given.") + base = transform.base + linthresh = transform.linthresh + linscale = transform.linscale + self._symlogutil = _SymmetricalLogUtil(base, linthresh, linscale) self._set_subs(subs) if numticks is None: if mpl.rcParams['_internal.classic_mode']: From ccaf6edd21718329fb65b52c632fe9a1cf9d7e1b Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 26 Jun 2026 14:16:21 +0200 Subject: [PATCH 21/49] Make _symlogutil instantiation more explicit --- lib/matplotlib/ticker.py | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 3b2354b6ab00..4702b5a42218 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -927,10 +927,6 @@ def __init__(self, base, linthresh, linscale): self.linthresh = linthresh self.linscale = linscale - @classmethod - def from_transform(cls, transform): - return cls(transform.base, transform.linthresh, transform.linscale) - def _log_b(self, x): # Use specialized logs if possible, as they can be more accurate; e.g. # log(.001) / log(10) = -2.999... (whether math.log or np.log) due to @@ -1073,27 +1069,30 @@ def __init__(self, base=10.0, labelOnlyBase=False, minor_thresholds = (1, 0.4) self.minor_thresholds = minor_thresholds self._sublabels = None + # For symlog axes: self._linthresh = linthresh self._linscale = linscale - # For symlog axes: self._firstsublabels = None + # Instantiate _symlogutil if possible. + # If not, we will try again in set_axis(). + if all(p is not None for p in (base, linthresh, linscale)): + self._symlogutil = _SymmetricalLogUtil(base, linthresh, linscale) @property def _is_symlog(self): - if self._symlogutil is not None: - return True - if self._linthresh is not None and self._linscale is not None: - self._symlogutil = _SymmetricalLogUtil(self._base, - self._linthresh, - self._linscale) - return True - try: - self._symlogutil = _SymmetricalLogUtil.from_transform( - self.axis.get_transform()) - return True - except AttributeError: - pass - return False + return self._symlogutil is not None + + def set_axis(self, axis): + super().set_axis(axis) + if self._symlogutil is None: + transform = self.axis.get_transform() + try: + base = transform.base + linthresh = transform.linthresh + linscale = transform.linscale + except AttributeError: + return + self._symlogutil = _SymmetricalLogUtil(base, linthresh, linscale) def set_base(self, base): """ From ebb6a304dda24105b40a68ee1aad7db038c2c284 Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 26 Jun 2026 14:29:33 +0200 Subject: [PATCH 22/49] Simplify calculation syntax --- lib/matplotlib/ticker.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 4702b5a42218..69e4f9656f03 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -941,21 +941,21 @@ def pos(self, val): It is normalized such that the distance between two logarithmic decades is 1 and the position of linthresh is linscale. """ - sign, val = np.sign(val), np.abs(val) / self.linthresh - if val > 1: - val = self.linscale + self._log_b(val) - else: - val *= self.linscale + sign, val = np.sign(val), np.abs(val) + if val > self.linthresh: # log regime + val = self._log_b(val / self.linthresh) + self.linscale + else: # linear regime + val = val / self.linthresh * self.linscale return sign * val def unpos(self, val): """The inverse of pos.""" sign, val = np.sign(val), np.abs(val) - if val > self.linscale: - val = np.power(self.base, val - self.linscale) - else: - val /= self.linscale - return sign * val * self.linthresh + if val > self.linscale: # log regime + val = np.power(self.base, val - self.linscale) * self.linthresh + else: # linear regime + val = val / self.linscale * self.linthresh + return sign * val def firstdec(self): """ From 7cb1be81cde39816818bb0523e119d92f15151cd Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 26 Jun 2026 14:32:27 +0200 Subject: [PATCH 23/49] Remove docstring remnants --- lib/matplotlib/ticker.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 69e4f9656f03..b342821942b4 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -914,12 +914,9 @@ class _SymmetricalLogUtil: Parameters ---------- - transform : `~.scale.SymmetricalLogTransform`, optional - If set, defines *base*, *linthresh* and *linscale* of the symlog transform. - base, linthresh, linscale : float, optional + base, linthresh, linscale : float The *base*, *linthresh* and *linscale* of the symlog transform, as - documented for `.SymmetricalLogScale`. These parameters are only used - if *transform* is not set. + documented for `.SymmetricalLogScale`. """ def __init__(self, base, linthresh, linscale): From b2b2dd90c4c55d537943e686ee0e909d99db2388 Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 26 Jun 2026 23:55:49 +0200 Subject: [PATCH 24/49] Explain normalized position and decade number --- lib/matplotlib/ticker.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index b342821942b4..9ceb65418a42 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -912,6 +912,38 @@ class _SymmetricalLogUtil: """ Helper class for working with symmetrical log scales. + For log axes, all coordinates with integer logarithm to *base*, termed *decades*, + are possible major tick positions. When determining tick positions, the number of + decades in the axis range is analyzed and from there tick positions are chosen. For + symlog axes, we want to emulate this behavior in the logarithmic part and reasonably + extend it to the linear part (as well as mirroring it to the negative part). The + logarithmic approach cannot work in the linear part, as there are infinitely many + powers of *base* near 0, only some of which we want to label. Thus, we need to pick + some power to be the first (i.e. the smallest positive) acceptable major tick + position. We assign it the *decade number* 1 and number larger powers of *base* + consecutively, with logarithmic interpolation for intermediate values. The + coordinate 0 receives the decade number 0, with linear interpolation for coordinates + with decade numbers between 0 and 1. Negative decade numbers receive negative decade + numbers in an analogous way. Thus, each coordinate has a corresponding decade number + and these can serve the same function for symlog axes as the logarithm for log axes, + i.e. coordinates with integer decade numbers are possible major tick positions. + + We choose a power of *base* to be an acceptable tick position if its distance from 0 + on the axis is at least half the size of one decade in the logarithmic regime. In + order to evaluate this condition, we introduce the *normalized position* of a + coordinate on the axis. It is its distance from 0 normalized to the size of one + decade in the logarithmic regime. Thus, coordinates in the linear regime have a + normalized position between *-linscale* and *linscale*, while those in the + logarithmic regime lie outside that range. Thus, a power of *base* is an acceptable + tick position as defined above if it has a normalized position greater than 0.5. + + Note that, for coordinates in the logarithmic regime, the normalized position is + identical to the logarithm of the coordinate, except for a constant offset. The same + is true for the decade number for coordinates greater than the first decade + (i.e. with decade numbers greater than 1). When linthresh is a power of *base* and + linscale is 1, the decade number is identical to the normalized position and both + are equal to the logarithm in the logarithmic regime. + Parameters ---------- base, linthresh, linscale : float From ce3151f8777929a83a3245ab481445c8e8c9499e Mon Sep 17 00:00:00 2001 From: schtandard Date: Sat, 27 Jun 2026 00:05:38 +0200 Subject: [PATCH 25/49] Streamline firstdec usage This also makes the implementation of dec() and undec() completely analogous to that of pos() and unpos(). --- lib/matplotlib/ticker.py | 54 +++++++++++++++++++--------------------- 1 file changed, 26 insertions(+), 28 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 9ceb65418a42..3b7abf26bac3 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -966,9 +966,9 @@ def _log_b(self, x): def pos(self, val): """ - Calculate the normalized position of the value on the axis. - It is normalized such that the distance between two logarithmic decades - is 1 and the position of linthresh is linscale. + Calculate the normalized position of the value on the axis. It is normalized + such that the distance between two logarithmic decades is 1 and the position of + linthresh is linscale. """ sign, val = np.sign(val), np.abs(val) if val > self.linthresh: # log regime @@ -986,40 +986,38 @@ def unpos(self, val): val = val / self.linscale * self.linthresh return sign * val + def firstdec_exp(self): + """Calculate the exponent of the first decade.""" + return np.ceil(self._log_b(self.unpos(0.5))) + def firstdec(self): - """ - Get the first decade (i.e. first positive major tick candidate). - It shall be at least half the width of a logarithmic decade from the - origin (i.e. its pos shall be at least 0.5). - """ - firstexp = np.ceil(self._log_b(self.unpos(0.5))) - firstpow = np.power(self.base, firstexp) - return firstexp, firstpow + """Calculate the first decade.""" + return np.power(self.base, self.firstdec_exp()) def dec(self, val): """ - Calculate the decade number of the value. The first decade to have a - position (given by pos) of at least 0.5 is given the number 1, the - value 0 is given the decade number 0. + Calculate the decade number of the value. The first decade to have a normalized + position of at least 0.5 is given the number 1, the value 0 is given the decade + number 0. """ - firstexp, firstpow = self.firstdec() + firstdec = self.firstdec() sign, val = np.sign(val), np.abs(val) - if val > firstpow: - val = self._log_b(val) - firstexp + 1 + if val > firstdec: + val = self._log_b(val / firstdec) + 1 else: - # We scale linearly in order to get a monotonous mapping between - # 0 and 1, though the linear nature is arbitrary. - val /= firstpow + # We scale linearly in order to get a strictly monotonous mapping + # between 0 and 1, though the linear nature is arbitrary. + val /= firstdec return sign * val def undec(self, val): """The inverse of dec.""" - firstexp, firstpow = self.firstdec() + firstdec = self.firstdec() sign, val = np.sign(val), np.abs(val) if val > 1: - val = np.power(self.base, firstexp + val - 1) + val = np.power(self.base, val - 1) * firstdec else: - val *= firstpow + val *= firstdec return sign * val @@ -1203,11 +1201,11 @@ def set_locs(self, locs=None): self._firstsublabels = set(np.arange(0, b + 1)) if self._is_symlog: - _, firstpow = self._symlogutil.firstdec() - if self._firstsublabels == {0} and -firstpow < vmin < vmax < firstpow: + firstdec = self._symlogutil.firstdec() + if self._firstsublabels == {0} and -firstdec < vmin < vmax < firstdec: # No minor ticks are being labeled right now and the only major tick is # at 0. This means the axis scaling cannot be read from the labels. - numsteps = int(np.ceil(firstpow / max(-vmin, vmax))) + numsteps = int(np.ceil(firstdec / max(-vmin, vmax))) step = int(b / numsteps) self._firstsublabels = set(range(0, int(b) + 1, step)) @@ -1228,7 +1226,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self._symlogutil.firstdec()[1]: + if self._is_symlog and x < self._symlogutil.firstdec(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -1314,7 +1312,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self._symlogutil.firstdec()[1]: + if self._is_symlog and x < self._symlogutil.firstdec(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: From 18896bd4922ff1d420850f2cbb48c2ad31c29c2a Mon Sep 17 00:00:00 2001 From: schtandard Date: Sat, 27 Jun 2026 08:10:44 +0200 Subject: [PATCH 26/49] Rename variables consistently --- lib/matplotlib/ticker.py | 78 ++++++++++++++++++++-------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 3b7abf26bac3..7a0d09f7495a 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1167,15 +1167,15 @@ def set_locs(self, locs=None): b = self._base if self._is_symlog: - minrdec = self._symlogutil.dec(vmin) - maxrdec = self._symlogutil.dec(vmax) - numdec = maxrdec - minrdec - numticks = np.floor(maxrdec) - np.ceil(minrdec) + 1 + mindec = self._symlogutil.dec(vmin) + maxdec = self._symlogutil.dec(vmax) + numdec = maxdec - mindec + numticks = np.floor(maxdec) - np.ceil(mindec) + 1 else: - lmin = math.log(vmin, b) - lmax = math.log(vmax, b) - numdec = lmax - lmin - numticks = math.floor(lmax) - math.ceil(lmin) + 1 + minlog = math.log(vmin, b) + maxlog = math.log(vmax, b) + numdec = maxlog - minlog + numticks = math.floor(maxlog) - math.ceil(minlog) + 1 if numticks > self.minor_thresholds[0]: # Label only bases @@ -2664,11 +2664,11 @@ def tick_values(self, vmin, vmax): if vmax < vmin: vmin, vmax = vmax, vmin # Min and max exponents, float and int versions; e.g., if vmin=10^0.3, - # vmax=10^6.9, then efmin=0.3, emin=1, emax=6, efmax=6.9, n_avail=6. - efmin, efmax = self._log_b([vmin, vmax]) - emin = math.ceil(efmin) - emax = math.floor(efmax) - n_avail = emax - emin + 1 # Total number of decade ticks available. + # vmax=10^6.9, then minlog=0.3, iminlog=1, imaxlog=6, maxlog=6.9, n_avail=6. + minlog, maxlog = self._log_b([vmin, vmax]) + iminlog = math.ceil(minlog) + imaxlog = math.floor(maxlog) + n_avail = imaxlog - iminlog + 1 # Total number of decade ticks available. if isinstance(self._subs, str): if n_avail >= 10 or b < 3: @@ -2686,7 +2686,7 @@ def tick_values(self, vmin, vmax): # lower and the upper limit: QuadContourSet._autolev relies on this. if mpl.rcParams["_internal.classic_mode"]: # keep historic formulas stride = max(math.ceil((n_avail - 1) / (n_request - 1)), 1) - decades = np.arange(emin - stride, emax + stride + 1, stride) + decades = np.arange(iminlog - stride, imaxlog + stride + 1, stride) else: # *Determine the actual number of ticks*: Find the largest number # of ticks, no more than the requested number, that can actually @@ -2704,11 +2704,11 @@ def tick_values(self, vmin, vmax): else: assert nr == n_request + 1 if n_request == 0: # No tick in bounds; two ticks just outside. - decades = [emin - 1, emax + 1] + decades = [iminlog - 1, imaxlog + 1] stride = decades[1] - decades[0] elif n_request == 1: # A single tick close to center. - mid = round((efmin + efmax) / 2) - stride = max(mid - (emin - 1), (emax + 1) - mid) + mid = round((minlog + maxlog) / 2) + stride = max(mid - (iminlog - 1), (imaxlog + 1) - mid) decades = [mid - stride, mid, mid + stride] else: # *Determine the stride*: Pick the largest stride that yields @@ -2737,10 +2737,10 @@ def tick_values(self, vmin, vmax): # Try to see if we can pick an offset so that ticks are at # integer multiples of the stride while satisfying the bounds # above; if not, fallback to the smallest acceptable offset. - offset = (-emin) % stride + offset = (-iminlog) % stride if not olo <= offset < ohi: offset = olo - decades = range(emin + offset - stride, emax + stride + 1, stride) + decades = range(iminlog + offset - stride, imaxlog + stride + 1, stride) # Guess whether we're a minor locator, based on whether subs include # anything other than 1. @@ -2749,7 +2749,7 @@ def tick_values(self, vmin, vmax): if stride == 1 or n_avail <= 1: # Minor ticks start in the decade preceding the first major tick. ticklocs = np.concatenate([ - subs * b**decade for decade in range(emin - 1, emax + 1)]) + subs * b**decade for decade in range(iminlog - 1, imaxlog + 1)]) else: ticklocs = np.array([]) else: @@ -2909,19 +2909,19 @@ def tick_values(self, vmin, vmax): vmin, vmax = vmax, vmin haszero = vmin <= 0 <= vmax - minrdec = self._symlogutil.dec(vmin) - maxrdec = self._symlogutil.dec(vmax) - mindec = math.ceil(minrdec) - maxdec = math.floor(maxrdec) + mindec = self._symlogutil.dec(vmin) + maxdec = self._symlogutil.dec(vmax) + imindec = math.ceil(mindec) + imaxdec = math.floor(maxdec) # Number of decade ticks available. - n_avail = maxdec - mindec + 1 + n_avail = imaxdec - imindec + 1 # Get decades between major ticks. # We follow the same logic as LogLocator (see there for more # extensive comments), except when 0 is in the axis range. if mpl.rcParams['_internal.classic_mode']: stride = max(math.ceil((n_avail - 1) / (n_request - 1)), 1) - decades = np.arange(mindec - stride, maxdec + stride + 1, stride) + decades = np.arange(imindec - stride, imaxdec + stride + 1, stride) else: # Calculate the minimum possible stride. stride = n_avail // (n_request + 1) + 1 @@ -2934,7 +2934,7 @@ def tick_values(self, vmin, vmax): assert nr == n_request + 1 if n_request == 0: # No ticks requested or available. - decades = [mindec - 1, maxdec + 1] + decades = [imindec - 1, imaxdec + 1] if haszero: stride = np.max(np.abs(decades)) decades = [-stride, 0, stride] @@ -2945,8 +2945,8 @@ def tick_values(self, vmin, vmax): if haszero: mid = 0 else: - mid = round((minrdec + maxrdec) / 2) - stride = max(mid - (mindec - 1), (maxdec + 1) - mid) + mid = round((mindec + maxdec) / 2) + stride = max(mid - (imindec - 1), (imaxdec + 1) - mid) decades = [mid - stride, mid, mid + stride] else: # Calculate the largest possible stride @@ -2955,7 +2955,7 @@ def tick_values(self, vmin, vmax): if stride < n_avail / n_request: stride = n_avail // n_request # Determine the offset. - offset = (-mindec) % stride + offset = (-imindec) % stride olo = max(n_avail - stride * n_request, 0) ohi = min(n_avail - stride * (n_request - 1), stride) if not olo <= offset < ohi: @@ -2965,21 +2965,21 @@ def tick_values(self, vmin, vmax): # We need the largest stride that will cause an # additional tick to appear on either side. # First, calculate the current number of ticks - # on each side. We already know mindec < 0 < maxdec. - posnum = maxdec // stride - negnum = -mindec // stride + # on each side. We already know imindec < 0 < imaxdec. + posnum = imaxdec // stride + negnum = -imindec // stride # Now calculate the necessary new stride. - posnewstride = maxdec // (posnum + 1) - negnewstride = -mindec // (negnum + 1) + posnewstride = imaxdec // (posnum + 1) + negnewstride = -imindec // (negnum + 1) newstride = max(posnewstride, negnewstride) - if n_request == maxdec // newstride - mindec // newstride + 1: + if n_request == imaxdec // newstride - imindec // newstride + 1: # The new value works out. stride = newstride - offset = (-mindec) % newstride + offset = (-imindec) % newstride else: offset = olo - decades = np.arange(mindec + offset - stride, - maxdec + stride + 1, + decades = np.arange(imindec + offset - stride, + imaxdec + stride + 1, stride) if isinstance(self._subs, str): From a8957ee4656e39c68952ae155838a9cd2e405ebb Mon Sep 17 00:00:00 2001 From: schtandard Date: Sat, 27 Jun 2026 08:54:29 +0200 Subject: [PATCH 27/49] Update stub patterns --- lib/matplotlib/ticker.pyi | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index d05d68748898..55bc4d90094f 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -103,14 +103,14 @@ class ScalarFormatter(Formatter): class _SymmetricalLogUtil: def __init__( self, - transform: Transform | None = ..., - base: float | None = ..., - linthresh: float | None = ..., - linscale: float | None = ..., + base: float = ..., + linthresh: float = ..., + linscale: float = ..., ) -> None: ... def pos(self, val: float) -> float: ... def unpos(self, val: float) -> float: ... - def firstdec(self) -> tuple[float, float]: ... + def firstdec_exp(self) -> float: ... + def firstdec(self) -> float: ... def dec(self, val: float) -> float: ... def undec(self, val: float) -> float: ... From 8353830c2ad4733f9c379e97df800938c9d38810 Mon Sep 17 00:00:00 2001 From: schtandard Date: Sat, 27 Jun 2026 08:59:42 +0200 Subject: [PATCH 28/49] Remove spurious stub default values --- lib/matplotlib/ticker.pyi | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index 55bc4d90094f..cac5d9924275 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -103,9 +103,9 @@ class ScalarFormatter(Formatter): class _SymmetricalLogUtil: def __init__( self, - base: float = ..., - linthresh: float = ..., - linscale: float = ..., + base: float, + linthresh: float, + linscale: float, ) -> None: ... def pos(self, val: float) -> float: ... def unpos(self, val: float) -> float: ... From 2a13651da154657c3c4e26e2450cc304e84d8662 Mon Sep 17 00:00:00 2001 From: schtandard Date: Tue, 30 Jun 2026 14:36:38 +0200 Subject: [PATCH 29/49] Choose clearer method names Also revise the docstring a bit. --- lib/matplotlib/ticker.py | 136 ++++++++++++++++++++------------------ lib/matplotlib/ticker.pyi | 11 ++- 2 files changed, 75 insertions(+), 72 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 7a0d09f7495a..b7ca2b8db7c2 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -912,37 +912,41 @@ class _SymmetricalLogUtil: """ Helper class for working with symmetrical log scales. - For log axes, all coordinates with integer logarithm to *base*, termed *decades*, - are possible major tick positions. When determining tick positions, the number of - decades in the axis range is analyzed and from there tick positions are chosen. For - symlog axes, we want to emulate this behavior in the logarithmic part and reasonably - extend it to the linear part (as well as mirroring it to the negative part). The - logarithmic approach cannot work in the linear part, as there are infinitely many - powers of *base* near 0, only some of which we want to label. Thus, we need to pick - some power to be the first (i.e. the smallest positive) acceptable major tick + For log axes, all coordinates with integer logarithm to *base* are possible major + tick positions, with the range between two such coordinates (or more generally + between two values separated by a factor of *base*) being termed a *decade*. When + determining tick positions, the number of decades in the axis range is analyzed and + from there tick positions are chosen. For symlog axes, we want to emulate this + behavior in the logarithmic part and extend it across the linear part and into + the negative part. For simplicity, we only describe our approach for positive half + axis here; everything works the same (i.e. mirrored) on the negative side. + + The logarithmic approach cannot work in the linear part, as there are infinitely + many powers of *base* near 0, only some of which we want to label. Thus, we need to + pick some power to be the first (i.e. the smallest positive) acceptable major tick position. We assign it the *decade number* 1 and number larger powers of *base* consecutively, with logarithmic interpolation for intermediate values. The coordinate 0 receives the decade number 0, with linear interpolation for coordinates - with decade numbers between 0 and 1. Negative decade numbers receive negative decade - numbers in an analogous way. Thus, each coordinate has a corresponding decade number - and these can serve the same function for symlog axes as the logarithm for log axes, - i.e. coordinates with integer decade numbers are possible major tick positions. + with decade numbers between 0 and 1. Thus, each coordinate has a corresponding + decade number and these can serve the same function for symlog axes as the logarithm + does for log axes, i.e. coordinates with integer decade numbers are possible major + tick positions. We choose a power of *base* to be an acceptable tick position if its distance from 0 on the axis is at least half the size of one decade in the logarithmic regime. In - order to evaluate this condition, we introduce the *normalized position* of a - coordinate on the axis. It is its distance from 0 normalized to the size of one - decade in the logarithmic regime. Thus, coordinates in the linear regime have a - normalized position between *-linscale* and *linscale*, while those in the - logarithmic regime lie outside that range. Thus, a power of *base* is an acceptable - tick position as defined above if it has a normalized position greater than 0.5. - - Note that, for coordinates in the logarithmic regime, the normalized position is - identical to the logarithm of the coordinate, except for a constant offset. The same - is true for the decade number for coordinates greater than the first decade - (i.e. with decade numbers greater than 1). When linthresh is a power of *base* and - linscale is 1, the decade number is identical to the normalized position and both - are equal to the logarithm in the logarithmic regime. + order to evaluate this condition, we introduce the *axis position* of a coordinate. + It is its position on the axis measured from 0, expressed in units of the size of + one decade in the logarithmic regime. Thus, coordinates in the linear regime have an + axis position below *linscale*, while those in the logarithmic regime lie above that + value. Using this metric, a power of *base* is an acceptable tick position as + defined above if it has an axis position greater than 0.5. + + Note that, for coordinates in the logarithmic regime, the axis position is identical + to the logarithm of the coordinate, except for a constant offset. The same is true + for the decade number for coordinates greater than the first acceptable major tick + position (i.e. with a decade number greater than 1). When *linthresh* is a power of + *base* and *linscale* is 1, the decade number is identical to the axis position and + in the logarithmic regime both are equal to the logarithm. Parameters ---------- @@ -964,11 +968,11 @@ def _log_b(self, x): np.log2(x) if self.base == 2 else np.log(x) / np.log(self.base)) - def pos(self, val): + def val2axpos(self, val): """ - Calculate the normalized position of the value on the axis. It is normalized - such that the distance between two logarithmic decades is 1 and the position of - linthresh is linscale. + Calculate the axis position of the value on the axis. It is scaled such that + the distance between two logarithmic decades is 1 and the position of linthresh + is linscale. """ sign, val = np.sign(val), np.abs(val) if val > self.linthresh: # log regime @@ -977,8 +981,8 @@ def pos(self, val): val = val / self.linthresh * self.linscale return sign * val - def unpos(self, val): - """The inverse of pos.""" + def axpos2val(self, val): + """The inverse of `.val2axpos`.""" sign, val = np.sign(val), np.abs(val) if val > self.linscale: # log regime val = np.power(self.base, val - self.linscale) * self.linthresh @@ -986,38 +990,35 @@ def unpos(self, val): val = val / self.linscale * self.linthresh return sign * val - def firstdec_exp(self): - """Calculate the exponent of the first decade.""" - return np.ceil(self._log_b(self.unpos(0.5))) + def firsttickval(self): + """Calculate the value of the first acceptable (positive) tick position.""" + exp = np.ceil(self._log_b(self.axpos2val(0.5))) + return np.power(self.base, exp) - def firstdec(self): - """Calculate the first decade.""" - return np.power(self.base, self.firstdec_exp()) - - def dec(self, val): + def val2decnum(self, val): """ - Calculate the decade number of the value. The first decade to have a normalized - position of at least 0.5 is given the number 1, the value 0 is given the decade - number 0. + Calculate the decade number of the value. The first integer power of *base* to + have an axis position of at least 0.5 is given the number 1, the value 0 is + given the number 0. """ - firstdec = self.firstdec() + first = self.firsttickval() sign, val = np.sign(val), np.abs(val) - if val > firstdec: - val = self._log_b(val / firstdec) + 1 + if val > first: + val = self._log_b(val / first) + 1 else: # We scale linearly in order to get a strictly monotonous mapping # between 0 and 1, though the linear nature is arbitrary. - val /= firstdec + val /= first return sign * val - def undec(self, val): - """The inverse of dec.""" - firstdec = self.firstdec() + def decnum2val(self, val): + """The inverse of `.val2decnum`.""" + first = self.firsttickval() sign, val = np.sign(val), np.abs(val) if val > 1: - val = np.power(self.base, val - 1) * firstdec + val = np.power(self.base, val - 1) * first else: - val *= firstdec + val *= first return sign * val @@ -1167,8 +1168,8 @@ def set_locs(self, locs=None): b = self._base if self._is_symlog: - mindec = self._symlogutil.dec(vmin) - maxdec = self._symlogutil.dec(vmax) + mindec = self._symlogutil.val2decnum(vmin) + maxdec = self._symlogutil.val2decnum(vmax) numdec = maxdec - mindec numticks = np.floor(maxdec) - np.ceil(mindec) + 1 else: @@ -1201,11 +1202,11 @@ def set_locs(self, locs=None): self._firstsublabels = set(np.arange(0, b + 1)) if self._is_symlog: - firstdec = self._symlogutil.firstdec() - if self._firstsublabels == {0} and -firstdec < vmin < vmax < firstdec: + first = self._symlogutil.firsttickval() + if self._firstsublabels == {0} and -first < vmin < vmax < first: # No minor ticks are being labeled right now and the only major tick is # at 0. This means the axis scaling cannot be read from the labels. - numsteps = int(np.ceil(firstdec / max(-vmin, vmax))) + numsteps = int(np.ceil(first / max(-vmin, vmax))) step = int(b / numsteps) self._firstsublabels = set(range(0, int(b) + 1, step)) @@ -1226,7 +1227,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self._symlogutil.firstdec(): + if self._is_symlog and x < self._symlogutil.firsttickval(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -1312,7 +1313,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self._symlogutil.firstdec(): + if self._is_symlog and x < self._symlogutil.firsttickval(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -2909,8 +2910,8 @@ def tick_values(self, vmin, vmax): vmin, vmax = vmax, vmin haszero = vmin <= 0 <= vmax - mindec = self._symlogutil.dec(vmin) - maxdec = self._symlogutil.dec(vmax) + mindec = self._symlogutil.val2decnum(vmin) + maxdec = self._symlogutil.val2decnum(vmax) imindec = math.ceil(mindec) imaxdec = math.floor(maxdec) # Number of decade ticks available. @@ -2998,12 +2999,13 @@ def tick_values(self, vmin, vmax): ticklocs = [] for dec in decades: if dec > 0: - ticklocs.append(subs * self._symlogutil.undec(dec)) + ticklocs.append(subs * self._symlogutil.decnum2val(dec)) elif dec < 0: - ticklocs.append(np.flip(subs * self._symlogutil.undec(dec))) + ticklocs.append( + np.flip(subs * self._symlogutil.decnum2val(dec))) else: # We add the usual subs as well as the next lower decade. - zeropow = self._symlogutil.undec(1) / self._symlogutil.base + zeropow = self._symlogutil.decnum2val(1) / self._symlogutil.base zeroticks = subs * zeropow if subs[0] != 1.0: # Add the otherwise missing minor tick. @@ -3018,7 +3020,7 @@ def tick_values(self, vmin, vmax): ticklocs = np.array([]) else: # Major locator. - ticklocs = np.array([self._symlogutil.undec(dec) for dec in decades]) + ticklocs = np.array([self._symlogutil.decnum2val(dec) for dec in decades]) if is_minor and stride == 1: numticks = ((vmin <= ticklocs) & (ticklocs <= vmax)).sum() @@ -3037,8 +3039,10 @@ def view_limits(self, vmin, vmax): """Try to choose the view limits intelligently.""" vmin, vmax = self.nonsingular(vmin, vmax) if mpl.rcParams['axes.autolimit_mode'] == 'round_numbers': - vmin = self._symlogutil.undec(np.floor(self._symlogutil.dec(vmin))) - vmax = self._symlogutil.undec(np.ceil(self._symlogutil.dec(vmax))) + vmin = self._symlogutil.decnum2val( + np.floor(self._symlogutil.val2decnum(vmin))) + vmax = self._symlogutil.decnum2val( + np.ceil(self._symlogutil.val2decnum(vmax))) return vmin, vmax diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index cac5d9924275..21c0772bc144 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -107,12 +107,11 @@ class _SymmetricalLogUtil: linthresh: float, linscale: float, ) -> None: ... - def pos(self, val: float) -> float: ... - def unpos(self, val: float) -> float: ... - def firstdec_exp(self) -> float: ... - def firstdec(self) -> float: ... - def dec(self, val: float) -> float: ... - def undec(self, val: float) -> float: ... + def val2axpos(self, val: float) -> float: ... + def axpos2val(self, val: float) -> float: ... + def firsttickval(self) -> float: ... + def val2decnum(self, val: float) -> float: ... + def decnum2val(self, val: float) -> float: ... class LogFormatter(Formatter): minor_thresholds: tuple[float, float] From 35621af30c143c9462f7776b25a38f979e2de99c Mon Sep 17 00:00:00 2001 From: schtandard Date: Tue, 30 Jun 2026 14:51:02 +0200 Subject: [PATCH 30/49] Motivate threshold for acceptable tick positions --- lib/matplotlib/ticker.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index b7ca2b8db7c2..8ce5d476f1a2 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -991,7 +991,13 @@ def axpos2val(self, val): return sign * val def firsttickval(self): - """Calculate the value of the first acceptable (positive) tick position.""" + """ + Calculate the value of the first acceptable (positive) tick position. We define + this to the first power of *base* with an axis position of at least 0.5. This + ensures that the size of a minor tick in the linear regime is at least the size + of the smallest minor tick in the logarithmic regime when *base* is 10: + 0.5 / 10 > 0.045 ~= -log10(0.9) + """ exp = np.ceil(self._log_b(self.axpos2val(0.5))) return np.power(self.base, exp) From 420e057a7a9f2c1b9a9b2938349b7f204c6f19da Mon Sep 17 00:00:00 2001 From: schtandard Date: Tue, 30 Jun 2026 20:41:58 +0200 Subject: [PATCH 31/49] Describe function of helper coordinates first --- lib/matplotlib/ticker.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 8ce5d476f1a2..9c76fd3fe8b0 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -912,6 +912,16 @@ class _SymmetricalLogUtil: """ Helper class for working with symmetrical log scales. + We define two helper coordinate systems, which will be motivated and defined below: + - *decade number* serves to easily identify the powers of *base* that may serve as + major tick positions. Such powers are located at integer decade numbers, and the + smallest needed power is located at decade number 1. + - *axis position* helps to gauge the visual distance between values on the axis. + Equal distances in axis position correspond to equal visual distances. It is + connected to the axis coordinate by a shift and scale such that the value 0 has + the axis position 0 and consecutive logarithmic decades differ by 1 in axis + position. + For log axes, all coordinates with integer logarithm to *base* are possible major tick positions, with the range between two such coordinates (or more generally between two values separated by a factor of *base*) being termed a *decade*. When From 03fcaa20da8a85baf941abd6c7b49445962e18d5 Mon Sep 17 00:00:00 2001 From: schtandard Date: Wed, 1 Jul 2026 10:03:29 +0200 Subject: [PATCH 32/49] Include ASCII drawing relating coordinate systems --- lib/matplotlib/ticker.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 9c76fd3fe8b0..5547f9dde290 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -912,7 +912,7 @@ class _SymmetricalLogUtil: """ Helper class for working with symmetrical log scales. - We define two helper coordinate systems, which will be motivated and defined below: + We define two helper coordinate systems: - *decade number* serves to easily identify the powers of *base* that may serve as major tick positions. Such powers are located at integer decade numbers, and the smallest needed power is located at decade number 1. @@ -922,6 +922,24 @@ class _SymmetricalLogUtil: the axis position 0 and consecutive logarithmic decades differ by 1 in axis position. + |--------log--------|---------linear----------|--------log--------| + coordinate: |-----+-------+-------+----------+----------+-------+-------+-----| + 10^-5 10^-4 10^-3 0 10^3 10^4 10^5 + + decade number: |-----+-------+-------+----------+----------+-------+-------+-----| + -3 -2 -1 0 1 2 3 + + axis position: |---+-------+-------+------------+------------+-------+-------+---| + (ls+2) -(ls+1) ls 0 ls ls+1 ls+2 + + axis coordinate: |--------------------------------+--------------------------------| + 0 0.5 1 + |--------log--------|---------linear----------|--------log--------| + + Note that, in general, the first tick (decade number 1) may also lie outside the + linear regime. Now, let us motivate and define the new coordinate systems more + precisely. + For log axes, all coordinates with integer logarithm to *base* are possible major tick positions, with the range between two such coordinates (or more generally between two values separated by a factor of *base*) being termed a *decade*. When From 56155003fd5fe7a6c19c4743175ca4c386cd5e3a Mon Sep 17 00:00:00 2001 From: schtandard Date: Wed, 1 Jul 2026 10:34:30 +0200 Subject: [PATCH 33/49] Instantiate symlog formatter with all parameters --- lib/matplotlib/scale.py | 8 ++++++-- lib/matplotlib/ticker.py | 12 ------------ 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/lib/matplotlib/scale.py b/lib/matplotlib/scale.py index 90d899906cf2..2ddf29073314 100644 --- a/lib/matplotlib/scale.py +++ b/lib/matplotlib/scale.py @@ -624,11 +624,15 @@ def __init__(self, axis=None, *, base=10, linthresh=2, subs='auto', linscale=1): def set_default_locators_and_formatters(self, axis): # docstring inherited axis.set_major_locator(SymmetricalLogLocator(self.get_transform())) - axis.set_major_formatter(LogFormatterSciNotation(self.base)) + axis.set_major_formatter(LogFormatterSciNotation(base=self.base, + linthresh=self.linthresh, + linscale=self.linscale)) axis.set_minor_locator(SymmetricalLogLocator(self.get_transform(), self.subs)) axis.set_minor_formatter( - LogFormatterSciNotation(self.base, + LogFormatterSciNotation(base=self.base, + linthresh=self.linthresh, + linscale=self.linscale, labelOnlyBase=(self.subs != 'auto'))) def get_transform(self): diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 5547f9dde290..36fc7a2e55b8 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1144,18 +1144,6 @@ def __init__(self, base=10.0, labelOnlyBase=False, def _is_symlog(self): return self._symlogutil is not None - def set_axis(self, axis): - super().set_axis(axis) - if self._symlogutil is None: - transform = self.axis.get_transform() - try: - base = transform.base - linthresh = transform.linthresh - linscale = transform.linscale - except AttributeError: - return - self._symlogutil = _SymmetricalLogUtil(base, linthresh, linscale) - def set_base(self, base): """ Change the *base* for labeling. From 89985c3f94113335ba1b705c8105acb1cb93c86c Mon Sep 17 00:00:00 2001 From: schtandard Date: Wed, 1 Jul 2026 11:22:58 +0200 Subject: [PATCH 34/49] Convert _SymmetricalLogUtil to a mixin --- lib/matplotlib/ticker.py | 94 ++++++++++++++++----------------------- lib/matplotlib/ticker.pyi | 12 ++--- 2 files changed, 42 insertions(+), 64 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 36fc7a2e55b8..20fc0df9c251 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -908,9 +908,9 @@ def _set_format(self): self._format = r'$\mathdefault{%s}$' % self._format -class _SymmetricalLogUtil: +class _SymmetricalLogMixin: """ - Helper class for working with symmetrical log scales. + Common methods for working with symmetrical log scales. We define two helper coordinate systems: - *decade number* serves to easily identify the powers of *base* that may serve as @@ -975,26 +975,15 @@ class _SymmetricalLogUtil: position (i.e. with a decade number greater than 1). When *linthresh* is a power of *base* and *linscale* is 1, the decade number is identical to the axis position and in the logarithmic regime both are equal to the logarithm. - - Parameters - ---------- - base, linthresh, linscale : float - The *base*, *linthresh* and *linscale* of the symlog transform, as - documented for `.SymmetricalLogScale`. """ - def __init__(self, base, linthresh, linscale): - self.base = base - self.linthresh = linthresh - self.linscale = linscale - def _log_b(self, x): # Use specialized logs if possible, as they can be more accurate; e.g. # log(.001) / log(10) = -2.999... (whether math.log or np.log) due to # floating point error. - return (np.log10(x) if self.base == 10 else - np.log2(x) if self.base == 2 else - np.log(x) / np.log(self.base)) + return (np.log10(x) if self._base == 10 else + np.log2(x) if self._base == 2 else + np.log(x) / np.log(self._base)) def val2axpos(self, val): """ @@ -1003,19 +992,19 @@ def val2axpos(self, val): is linscale. """ sign, val = np.sign(val), np.abs(val) - if val > self.linthresh: # log regime - val = self._log_b(val / self.linthresh) + self.linscale + if val > self._linthresh: # log regime + val = self._log_b(val / self._linthresh) + self._linscale else: # linear regime - val = val / self.linthresh * self.linscale + val = val / self._linthresh * self._linscale return sign * val def axpos2val(self, val): """The inverse of `.val2axpos`.""" sign, val = np.sign(val), np.abs(val) - if val > self.linscale: # log regime - val = np.power(self.base, val - self.linscale) * self.linthresh + if val > self._linscale: # log regime + val = np.power(self.base, val - self._linscale) * self._linthresh else: # linear regime - val = val / self.linscale * self.linthresh + val = val / self._linscale * self._linthresh return sign * val def firsttickval(self): @@ -1027,7 +1016,7 @@ def firsttickval(self): 0.5 / 10 > 0.045 ~= -log10(0.9) """ exp = np.ceil(self._log_b(self.axpos2val(0.5))) - return np.power(self.base, exp) + return np.power(self._base, exp) def val2decnum(self, val): """ @@ -1050,13 +1039,13 @@ def decnum2val(self, val): first = self.firsttickval() sign, val = np.sign(val), np.abs(val) if val > 1: - val = np.power(self.base, val - 1) * first + val = np.power(self._base, val - 1) * first else: val *= first return sign * val -class LogFormatter(Formatter): +class LogFormatter(_SymmetricalLogMixin, Formatter): """ Base class for formatting ticks on a log or symlog scale. @@ -1120,8 +1109,6 @@ class LogFormatter(Formatter): def __init__(self, base=10.0, labelOnlyBase=False, minor_thresholds=None, linthresh=None, linscale=None): - # Create _symlogutil first, since its existence is assumed in set_base(). - self._symlogutil = None self.set_base(base) self.set_label_minor(labelOnlyBase) if minor_thresholds is None: @@ -1135,14 +1122,10 @@ def __init__(self, base=10.0, labelOnlyBase=False, self._linthresh = linthresh self._linscale = linscale self._firstsublabels = None - # Instantiate _symlogutil if possible. - # If not, we will try again in set_axis(). - if all(p is not None for p in (base, linthresh, linscale)): - self._symlogutil = _SymmetricalLogUtil(base, linthresh, linscale) @property def _is_symlog(self): - return self._symlogutil is not None + return all(p is not None for p in (self._base, self._linthresh, self._linscale)) def set_base(self, base): """ @@ -1152,8 +1135,6 @@ def set_base(self, base): Should always match the base used for :class:`LogLocator` """ self._base = float(base) - if self._symlogutil is not None: - self._symlogutil.base = self._base def set_label_minor(self, labelOnlyBase): """ @@ -1190,8 +1171,8 @@ def set_locs(self, locs=None): b = self._base if self._is_symlog: - mindec = self._symlogutil.val2decnum(vmin) - maxdec = self._symlogutil.val2decnum(vmax) + mindec = self.val2decnum(vmin) + maxdec = self.val2decnum(vmax) numdec = maxdec - mindec numticks = np.floor(maxdec) - np.ceil(mindec) + 1 else: @@ -1224,7 +1205,7 @@ def set_locs(self, locs=None): self._firstsublabels = set(np.arange(0, b + 1)) if self._is_symlog: - first = self._symlogutil.firsttickval() + first = self.firsttickval() if self._firstsublabels == {0} and -first < vmin < vmax < first: # No minor ticks are being labeled right now and the only major tick is # at 0. This means the axis scaling cannot be read from the labels. @@ -1249,7 +1230,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self._symlogutil.firsttickval(): + if self._is_symlog and x < self.firsttickval(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -1335,7 +1316,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self._symlogutil.firsttickval(): + if self._is_symlog and x < self.firsttickval(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -2826,7 +2807,7 @@ def nonsingular(self, vmin, vmax): return vmin, vmax -class SymmetricalLogLocator(Locator): +class SymmetricalLogLocator(_SymmetricalLogMixin, Locator): """ Place ticks spaced linearly near zero and spaced logarithmically beyond a threshold. """ @@ -2873,7 +2854,12 @@ def __init__(self, transform=None, subs=None, base = transform.base linthresh = transform.linthresh linscale = transform.linscale - self._symlogutil = _SymmetricalLogUtil(base, linthresh, linscale) + elif any(p is None for p in (base, linthresh, linscale)): + raise ValueError("Either transform, or all of base, linthresh and " + "linscale must be provided.") + self._base = base + self._linthresh = linthresh + self._linscale = linscale self._set_subs(subs) if numticks is None: if mpl.rcParams['_internal.classic_mode']: @@ -2890,11 +2876,11 @@ def set_params(self, subs=None, numticks=None, if subs is not None: self._set_subs(subs) if base is not None: - self._symlogutil.base = float(base) + self._base = base if linthresh is not None: - self._symlogutil.linthresh = float(linthresh) + self._linthresh = linthresh if linscale is not None: - self._symlogutil.linscale = float(linscale) + self._linscale = linscale def _set_subs(self, subs): """ @@ -2932,8 +2918,8 @@ def tick_values(self, vmin, vmax): vmin, vmax = vmax, vmin haszero = vmin <= 0 <= vmax - mindec = self._symlogutil.val2decnum(vmin) - maxdec = self._symlogutil.val2decnum(vmax) + mindec = self.val2decnum(vmin) + maxdec = self.val2decnum(vmax) imindec = math.ceil(mindec) imaxdec = math.floor(maxdec) # Number of decade ticks available. @@ -3008,7 +2994,7 @@ def tick_values(self, vmin, vmax): if isinstance(self._subs, str): # Either 'auto' or 'all'. _first = 2.0 if self._subs == 'auto' else 1.0 - subs = np.arange(_first, self._symlogutil.base) + subs = np.arange(_first, self._base) else: subs = self._subs @@ -3021,13 +3007,13 @@ def tick_values(self, vmin, vmax): ticklocs = [] for dec in decades: if dec > 0: - ticklocs.append(subs * self._symlogutil.decnum2val(dec)) + ticklocs.append(subs * self.decnum2val(dec)) elif dec < 0: ticklocs.append( - np.flip(subs * self._symlogutil.decnum2val(dec))) + np.flip(subs * self.decnum2val(dec))) else: # We add the usual subs as well as the next lower decade. - zeropow = self._symlogutil.decnum2val(1) / self._symlogutil.base + zeropow = self.decnum2val(1) / self._base zeroticks = subs * zeropow if subs[0] != 1.0: # Add the otherwise missing minor tick. @@ -3042,7 +3028,7 @@ def tick_values(self, vmin, vmax): ticklocs = np.array([]) else: # Major locator. - ticklocs = np.array([self._symlogutil.decnum2val(dec) for dec in decades]) + ticklocs = np.array([self.decnum2val(dec) for dec in decades]) if is_minor and stride == 1: numticks = ((vmin <= ticklocs) & (ticklocs <= vmax)).sum() @@ -3061,10 +3047,8 @@ def view_limits(self, vmin, vmax): """Try to choose the view limits intelligently.""" vmin, vmax = self.nonsingular(vmin, vmax) if mpl.rcParams['axes.autolimit_mode'] == 'round_numbers': - vmin = self._symlogutil.decnum2val( - np.floor(self._symlogutil.val2decnum(vmin))) - vmax = self._symlogutil.decnum2val( - np.ceil(self._symlogutil.val2decnum(vmax))) + vmin = self.decnum2val(np.floor(self.val2decnum(vmin))) + vmax = self.decnum2val(np.ceil(self.val2decnum(vmax))) return vmin, vmax diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index 21c0772bc144..6e114ae74cb1 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -100,20 +100,14 @@ class ScalarFormatter(Formatter): def format_data_short(self, value: float | np.ma.MaskedArray) -> str: ... def format_data(self, value: float) -> str: ... -class _SymmetricalLogUtil: - def __init__( - self, - base: float, - linthresh: float, - linscale: float, - ) -> None: ... +class _SymmetricalLogMixin: def val2axpos(self, val: float) -> float: ... def axpos2val(self, val: float) -> float: ... def firsttickval(self) -> float: ... def val2decnum(self, val: float) -> float: ... def decnum2val(self, val: float) -> float: ... -class LogFormatter(Formatter): +class LogFormatter(_SymmetricalLogMixin, Formatter): minor_thresholds: tuple[float, float] def __init__( self, @@ -271,7 +265,7 @@ class LogLocator(Locator): numticks: int | None = ..., ) -> None: ... -class SymmetricalLogLocator(Locator): +class SymmetricalLogLocator(_SymmetricalLogMixin, Locator): numticks: int def __init__( self, From 1b3825364eb6cd982f0de76fef6be8cadf6c4419 Mon Sep 17 00:00:00 2001 From: schtandard Date: Wed, 1 Jul 2026 11:34:06 +0200 Subject: [PATCH 35/49] Make mixin methods private --- lib/matplotlib/ticker.py | 46 +++++++++++++++++++-------------------- lib/matplotlib/ticker.pyi | 10 ++++----- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 20fc0df9c251..0784adc49231 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -985,7 +985,7 @@ def _log_b(self, x): np.log2(x) if self._base == 2 else np.log(x) / np.log(self._base)) - def val2axpos(self, val): + def _val2axpos(self, val): """ Calculate the axis position of the value on the axis. It is scaled such that the distance between two logarithmic decades is 1 and the position of linthresh @@ -998,8 +998,8 @@ def val2axpos(self, val): val = val / self._linthresh * self._linscale return sign * val - def axpos2val(self, val): - """The inverse of `.val2axpos`.""" + def _axpos2val(self, val): + """The inverse of `._val2axpos`.""" sign, val = np.sign(val), np.abs(val) if val > self._linscale: # log regime val = np.power(self.base, val - self._linscale) * self._linthresh @@ -1007,7 +1007,7 @@ def axpos2val(self, val): val = val / self._linscale * self._linthresh return sign * val - def firsttickval(self): + def _firsttickval(self): """ Calculate the value of the first acceptable (positive) tick position. We define this to the first power of *base* with an axis position of at least 0.5. This @@ -1015,16 +1015,16 @@ def firsttickval(self): of the smallest minor tick in the logarithmic regime when *base* is 10: 0.5 / 10 > 0.045 ~= -log10(0.9) """ - exp = np.ceil(self._log_b(self.axpos2val(0.5))) + exp = np.ceil(self._log_b(self._axpos2val(0.5))) return np.power(self._base, exp) - def val2decnum(self, val): + def _val2decnum(self, val): """ Calculate the decade number of the value. The first integer power of *base* to have an axis position of at least 0.5 is given the number 1, the value 0 is given the number 0. """ - first = self.firsttickval() + first = self._firsttickval() sign, val = np.sign(val), np.abs(val) if val > first: val = self._log_b(val / first) + 1 @@ -1034,9 +1034,9 @@ def val2decnum(self, val): val /= first return sign * val - def decnum2val(self, val): - """The inverse of `.val2decnum`.""" - first = self.firsttickval() + def _decnum2val(self, val): + """The inverse of `._val2decnum`.""" + first = self._firsttickval() sign, val = np.sign(val), np.abs(val) if val > 1: val = np.power(self._base, val - 1) * first @@ -1171,8 +1171,8 @@ def set_locs(self, locs=None): b = self._base if self._is_symlog: - mindec = self.val2decnum(vmin) - maxdec = self.val2decnum(vmax) + mindec = self._val2decnum(vmin) + maxdec = self._val2decnum(vmax) numdec = maxdec - mindec numticks = np.floor(maxdec) - np.ceil(mindec) + 1 else: @@ -1205,7 +1205,7 @@ def set_locs(self, locs=None): self._firstsublabels = set(np.arange(0, b + 1)) if self._is_symlog: - first = self.firsttickval() + first = self._firsttickval() if self._firstsublabels == {0} and -first < vmin < vmax < first: # No minor ticks are being labeled right now and the only major tick is # at 0. This means the axis scaling cannot be read from the labels. @@ -1230,7 +1230,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self.firsttickval(): + if self._is_symlog and x < self._firsttickval(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -1316,7 +1316,7 @@ def __call__(self, x, pos=None): exponent = round(fx) if is_x_decade else np.floor(fx) coeff = round(b ** (fx - exponent)) - if self._is_symlog and x < self.firsttickval(): + if self._is_symlog and x < self._firsttickval(): if self.labelOnlyBase: return '' if self._firstsublabels is not None and coeff not in self._firstsublabels: @@ -2918,8 +2918,8 @@ def tick_values(self, vmin, vmax): vmin, vmax = vmax, vmin haszero = vmin <= 0 <= vmax - mindec = self.val2decnum(vmin) - maxdec = self.val2decnum(vmax) + mindec = self._val2decnum(vmin) + maxdec = self._val2decnum(vmax) imindec = math.ceil(mindec) imaxdec = math.floor(maxdec) # Number of decade ticks available. @@ -3007,13 +3007,13 @@ def tick_values(self, vmin, vmax): ticklocs = [] for dec in decades: if dec > 0: - ticklocs.append(subs * self.decnum2val(dec)) + ticklocs.append(subs * self._decnum2val(dec)) elif dec < 0: ticklocs.append( - np.flip(subs * self.decnum2val(dec))) + np.flip(subs * self._decnum2val(dec))) else: # We add the usual subs as well as the next lower decade. - zeropow = self.decnum2val(1) / self._base + zeropow = self._decnum2val(1) / self._base zeroticks = subs * zeropow if subs[0] != 1.0: # Add the otherwise missing minor tick. @@ -3028,7 +3028,7 @@ def tick_values(self, vmin, vmax): ticklocs = np.array([]) else: # Major locator. - ticklocs = np.array([self.decnum2val(dec) for dec in decades]) + ticklocs = np.array([self._decnum2val(dec) for dec in decades]) if is_minor and stride == 1: numticks = ((vmin <= ticklocs) & (ticklocs <= vmax)).sum() @@ -3047,8 +3047,8 @@ def view_limits(self, vmin, vmax): """Try to choose the view limits intelligently.""" vmin, vmax = self.nonsingular(vmin, vmax) if mpl.rcParams['axes.autolimit_mode'] == 'round_numbers': - vmin = self.decnum2val(np.floor(self.val2decnum(vmin))) - vmax = self.decnum2val(np.ceil(self.val2decnum(vmax))) + vmin = self._decnum2val(np.floor(self._val2decnum(vmin))) + vmax = self._decnum2val(np.ceil(self._val2decnum(vmax))) return vmin, vmax diff --git a/lib/matplotlib/ticker.pyi b/lib/matplotlib/ticker.pyi index 6e114ae74cb1..87baee15c1bf 100644 --- a/lib/matplotlib/ticker.pyi +++ b/lib/matplotlib/ticker.pyi @@ -101,11 +101,11 @@ class ScalarFormatter(Formatter): def format_data(self, value: float) -> str: ... class _SymmetricalLogMixin: - def val2axpos(self, val: float) -> float: ... - def axpos2val(self, val: float) -> float: ... - def firsttickval(self) -> float: ... - def val2decnum(self, val: float) -> float: ... - def decnum2val(self, val: float) -> float: ... + def _val2axpos(self, val: float) -> float: ... + def _axpos2val(self, val: float) -> float: ... + def _firsttickval(self) -> float: ... + def _val2decnum(self, val: float) -> float: ... + def _decnum2val(self, val: float) -> float: ... class LogFormatter(_SymmetricalLogMixin, Formatter): minor_thresholds: tuple[float, float] From 9962282cbe85a03c477aec080edd6275b4169895 Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 2 Jul 2026 08:26:23 +0200 Subject: [PATCH 36/49] Document where mixin is used --- lib/matplotlib/ticker.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 0784adc49231..04175bbb1bce 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -912,6 +912,9 @@ class _SymmetricalLogMixin: """ Common methods for working with symmetrical log scales. + The mixin is used in `.LogFormatter` and `.SymmetricalLogLocator`. It relies + on the private attributes ``_base``, ``_linthresh`` and ``_linscale``. + We define two helper coordinate systems: - *decade number* serves to easily identify the powers of *base* that may serve as major tick positions. Such powers are located at integer decade numbers, and the From b4547c8f7254b2c0a235c55242022bda49f652a6 Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 2 Jul 2026 08:27:34 +0200 Subject: [PATCH 37/49] Avoid spurious check --- lib/matplotlib/ticker.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 04175bbb1bce..fd9a0d701209 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1128,7 +1128,8 @@ def __init__(self, base=10.0, labelOnlyBase=False, @property def _is_symlog(self): - return all(p is not None for p in (self._base, self._linthresh, self._linscale)) + # self._base cannot be None, so we don't need to check it. + return all(p is not None for p in (self._linthresh, self._linscale)) def set_base(self, base): """ From 9ad864b7613aeb4f4286de9b28a764e308a41758 Mon Sep 17 00:00:00 2001 From: schtandard Date: Thu, 2 Jul 2026 08:33:40 +0200 Subject: [PATCH 38/49] Use individual parameters rather than transform --- lib/matplotlib/scale.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/matplotlib/scale.py b/lib/matplotlib/scale.py index 2ddf29073314..fca37270fdb2 100644 --- a/lib/matplotlib/scale.py +++ b/lib/matplotlib/scale.py @@ -623,12 +623,16 @@ def __init__(self, axis=None, *, base=10, linthresh=2, subs='auto', linscale=1): def set_default_locators_and_formatters(self, axis): # docstring inherited - axis.set_major_locator(SymmetricalLogLocator(self.get_transform())) + axis.set_major_locator(SymmetricalLogLocator(base=self.base, + linthresh=self.linthresh, + linscale=self.linscale)) axis.set_major_formatter(LogFormatterSciNotation(base=self.base, linthresh=self.linthresh, linscale=self.linscale)) - axis.set_minor_locator(SymmetricalLogLocator(self.get_transform(), - self.subs)) + axis.set_minor_locator(SymmetricalLogLocator(base=self.base, + linthresh=self.linthresh, + linscale=self.linscale, + subs=self.subs)) axis.set_minor_formatter( LogFormatterSciNotation(base=self.base, linthresh=self.linthresh, From c2f1de204e0b9e5bb28153939f2f479ff1f89f4c Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 3 Jul 2026 10:44:54 +0200 Subject: [PATCH 39/49] Simplify _is_symlog test --- lib/matplotlib/ticker.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index fd9a0d701209..5c23a8a5a138 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1128,8 +1128,7 @@ def __init__(self, base=10.0, labelOnlyBase=False, @property def _is_symlog(self): - # self._base cannot be None, so we don't need to check it. - return all(p is not None for p in (self._linthresh, self._linscale)) + return self._linthresh is not None and self._linscale is not None def set_base(self, base): """ From 69a28b8c012cd90797f014dbfc5bce29b5f8a849 Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 3 Jul 2026 10:59:54 +0200 Subject: [PATCH 40/49] Fix changed attribute name --- lib/matplotlib/ticker.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 5c23a8a5a138..208709b7ff49 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -1005,7 +1005,7 @@ def _axpos2val(self, val): """The inverse of `._val2axpos`.""" sign, val = np.sign(val), np.abs(val) if val > self._linscale: # log regime - val = np.power(self.base, val - self._linscale) * self._linthresh + val = np.power(self._base, val - self._linscale) * self._linthresh else: # linear regime val = val / self._linscale * self._linthresh return sign * val From f1572f8919ceb3c9727a7246f416a6d77625915b Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 3 Jul 2026 11:01:03 +0200 Subject: [PATCH 41/49] Register missing _SymmetricalLogMixin warning --- doc/missing-references.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/doc/missing-references.json b/doc/missing-references.json index 7799e5b313da..770d140808e4 100644 --- a/doc/missing-references.json +++ b/doc/missing-references.json @@ -74,6 +74,10 @@ "lib/matplotlib/offsetbox.py:docstring of matplotlib.offsetbox.AnnotationBbox:1", "lib/matplotlib/text.py:docstring of matplotlib.text.Annotation:1" ], + "matplotlib.ticker._SymmetricalLogMixin": [ + "lib/matplotlib/ticker.py:docstring of matplotlib.ticker.LogFormatter:1", + "lib/matplotlib/ticker.py:docstring of matplotlib.ticker.SymmetricalLogLocator:1" + ], "matplotlib.transforms._BlendedMixin": [ "lib/matplotlib/transforms.py:docstring of matplotlib.transforms.BlendedAffine2D:1", "lib/matplotlib/transforms.py:docstring of matplotlib.transforms.BlendedGenericTransform:1" From ec3228008b728ce1db68314a95b3e278b34d511d Mon Sep 17 00:00:00 2001 From: schtandard Date: Sun, 5 Jul 2026 11:15:31 +0200 Subject: [PATCH 42/49] Add tests for the mixin methods --- lib/matplotlib/tests/test_ticker.py | 34 +++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/lib/matplotlib/tests/test_ticker.py b/lib/matplotlib/tests/test_ticker.py index e73e007b4776..3f898495c8d6 100644 --- a/lib/matplotlib/tests/test_ticker.py +++ b/lib/matplotlib/tests/test_ticker.py @@ -634,6 +634,40 @@ def test_set_params(self): assert sym._subs == [2.0] assert sym.numticks == 8 + def test_mixin(self): + sym = mticker.SymmetricalLogLocator(base=10, linthresh=20, linscale=3) + + assert_almost_equal(sym._val2axpos(20), 3) + assert_almost_equal(sym._val2axpos(-200), -4) + assert_almost_equal(sym._val2axpos(20000000), 9) + assert_almost_equal(sym._val2axpos(0), 0) + assert_almost_equal(sym._val2axpos(1), 0.15) + assert_almost_equal(sym._val2axpos(-4), -0.6) + + assert_almost_equal(sym._axpos2val(5), 2000) + assert_almost_equal(sym._axpos2val(-3.5), -63.2455532033676) + assert_almost_equal(sym._axpos2val(0.5), 3.3333333333333) + + assert_almost_equal(sym._firsttickval(), 10) + + assert_almost_equal(sym._val2decnum(0), 0) + assert_almost_equal(sym._val2decnum(-100), -2) + assert_almost_equal(sym._val2decnum(316.227766016838), 2.5) + assert_almost_equal(sym._val2decnum(5), 0.5) + assert_almost_equal(sym._val2decnum(20), 1.30102999566398) + + assert_almost_equal(sym._decnum2val(-1), -10) + assert_almost_equal(sym._decnum2val(2), 100) + assert_almost_equal(sym._decnum2val(0.1), 1) + assert_almost_equal(sym._decnum2val(0), 0) + assert_almost_equal(sym._decnum2val(1.5), 31.6227766016838) + + sym = mticker.SymmetricalLogLocator(base=10, linthresh=20, linscale=15) + assert_almost_equal(sym._firsttickval(), 1) + + sym = mticker.SymmetricalLogLocator(base=10, linthresh=20, linscale=0.8) + assert_almost_equal(sym._firsttickval(), 100) + @pytest.mark.parametrize( 'vmin, vmax, expected', [ From 0e89165664ca04fa7395ae7d39294720575bf81d Mon Sep 17 00:00:00 2001 From: Benedikt Wilde Date: Fri, 10 Jul 2026 08:50:35 +0200 Subject: [PATCH 43/49] Fix rst markup and typos Co-authored-by: Elliott Sales de Andrade --- lib/matplotlib/ticker.py | 45 +++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index 208709b7ff49..bcdaa7894b72 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -916,28 +916,31 @@ class _SymmetricalLogMixin: on the private attributes ``_base``, ``_linthresh`` and ``_linscale``. We define two helper coordinate systems: + - *decade number* serves to easily identify the powers of *base* that may serve as - major tick positions. Such powers are located at integer decade numbers, and the - smallest needed power is located at decade number 1. + major tick positions. Such powers are located at integer decade numbers, and the + smallest needed power is located at decade number 1. - *axis position* helps to gauge the visual distance between values on the axis. - Equal distances in axis position correspond to equal visual distances. It is - connected to the axis coordinate by a shift and scale such that the value 0 has - the axis position 0 and consecutive logarithmic decades differ by 1 in axis - position. + Equal distances in axis position correspond to equal visual distances. It is + connected to the axis coordinate by a shift and scale such that the value 0 has + the axis position 0 and consecutive logarithmic decades differ by 1 in axis + position. + + :: - |--------log--------|---------linear----------|--------log--------| - coordinate: |-----+-------+-------+----------+----------+-------+-------+-----| - 10^-5 10^-4 10^-3 0 10^3 10^4 10^5 + |--------log--------|--------linear---------|--------log--------| + coordinate: |-----+-------+-------+---------+---------+-------+-------+-----| + 10^-5 10^-4 10^-3 0 10^3 10^4 10^5 - decade number: |-----+-------+-------+----------+----------+-------+-------+-----| - -3 -2 -1 0 1 2 3 + decade number: |-----+-------+-------+---------+---------+-------+-------+-----| + -3 -2 -1 0 1 2 3 - axis position: |---+-------+-------+------------+------------+-------+-------+---| - (ls+2) -(ls+1) ls 0 ls ls+1 ls+2 + axis position: |---+-------+-------+-----------+-----------+-------+-------+---| + (ls+2) -(ls+1) ls 0 ls ls+1 ls+2 - axis coordinate: |--------------------------------+--------------------------------| - 0 0.5 1 - |--------log--------|---------linear----------|--------log--------| + axis coordinate: |-------------------------------+-------------------------------| + 0 0.5 1 + |--------log--------|--------linear---------|--------log--------| Note that, in general, the first tick (decade number 1) may also lie outside the linear regime. Now, let us motivate and define the new coordinate systems more @@ -1013,7 +1016,7 @@ def _axpos2val(self, val): def _firsttickval(self): """ Calculate the value of the first acceptable (positive) tick position. We define - this to the first power of *base* with an axis position of at least 0.5. This + this to be the first power of *base* with an axis position of at least 0.5. This ensures that the size of a minor tick in the linear regime is at least the size of the smallest minor tick in the logarithmic regime when *base* is 10: 0.5 / 10 > 0.045 ~= -log10(0.9) @@ -2822,7 +2825,7 @@ def __init__(self, transform=None, subs=None, Parameters ---------- transform : `~.scale.SymmetricalLogTransform`, optional - If set, defines *base*, *lintresh* and *linscale* of the symlog transform. + If set, defines *base*, *linthresh* and *linscale* of the symlog transform. base, linthresh, linscale : float, optional The *base*, *linthresh* and *linscale* of the symlog transform, as documented for `.SymmetricalLogScale`. These parameters are only used @@ -2840,9 +2843,9 @@ def __init__(self, transform=None, subs=None, between integer powers; with ``'all'``, the integer powers are included. numticks : None or int, default: None The maximum number of ticks to allow on a given axis. The default of - ``None`` will try to choose intelligently as long as this Locator has - already been assigned to an axis using `~.axis.Axis.get_tick_space`, but - otherwise falls back to 9. + ``None`` will try to choose intelligently using + `~.axis.Axis.get_tick_space`, as long as this Locator has already been + assigned to an axis but otherwise falls back to 9. .. versionadded:: 3.12 From 97488ea8b868d02176ae570372e242ed644c7c98 Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 10 Jul 2026 08:54:49 +0200 Subject: [PATCH 44/49] Improve docstring phrasing --- lib/matplotlib/ticker.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/matplotlib/ticker.py b/lib/matplotlib/ticker.py index bcdaa7894b72..94ad2df0abff 100644 --- a/lib/matplotlib/ticker.py +++ b/lib/matplotlib/ticker.py @@ -2844,8 +2844,8 @@ def __init__(self, transform=None, subs=None, numticks : None or int, default: None The maximum number of ticks to allow on a given axis. The default of ``None`` will try to choose intelligently using - `~.axis.Axis.get_tick_space`, as long as this Locator has already been - assigned to an axis but otherwise falls back to 9. + `~.axis.Axis.get_tick_space` in case this Locator has already been assigned + to an axis, but otherwise falls back to 9. .. versionadded:: 3.12 From d243c3f74a01afa50c20e2279c22c6b5b5a9cb14 Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 10 Jul 2026 09:05:29 +0200 Subject: [PATCH 45/49] Document all possible values of subs --- lib/matplotlib/scale.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/matplotlib/scale.py b/lib/matplotlib/scale.py index fca37270fdb2..a1f54b2f3424 100644 --- a/lib/matplotlib/scale.py +++ b/lib/matplotlib/scale.py @@ -594,10 +594,14 @@ class SymmetricalLogScale(ScaleBase): Defines the range ``(-x, x)``, within which the plot is linear. This avoids having the plot go to infinity around zero. - subs : sequence of int + subs : None, 'auto', 'all' or sequence of int, default: 'auto' Where to place the subticks between each major tick. For example, in a log10 scale: ``[2, 3, 4, 5, 6, 7, 8, 9]`` will place - 8 logarithmically spaced minor ticks between each major tick. + 8 logarithmically spaced minor ticks between each major tick. Both ``'auto'`` + and ``'all'`` use an algorithm based on the axis view limits to determine + whether and how to put ticks between integer powers of the base. With + ``'auto'``, minor ticks are placed only between integer powers; with ``'all'``, + the integer powers are included. With ``None``, minor ticks are suppressed. .. versionchanged:: 3.12 The default value is now ``'auto'``. From 6459a7e4243c149589208a55d3d47f8fad8b12a6 Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 10 Jul 2026 09:45:02 +0200 Subject: [PATCH 46/49] Use mpl20 style in modified test --- .../baseline_images/test_axes/symlog2.pdf | Bin 10151 -> 6538 bytes lib/matplotlib/tests/test_axes.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/matplotlib/tests/baseline_images/test_axes/symlog2.pdf b/lib/matplotlib/tests/baseline_images/test_axes/symlog2.pdf index 36fb9b1a144f7f83ea1102169a142da599cb5496..e86fd098655b1a50369a4dd42402878777bf954d 100644 GIT binary patch delta 5739 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 literal 10151 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 Date: Fri, 10 Jul 2026 09:50:46 +0200 Subject: [PATCH 47/49] Optimize modified png images using oxipng --- .../test_axes3d/scale3d_all_scales.png | Bin 116044 -> 94483 bytes .../test_axes3d/scale3d_symlog_params.png | Bin 77445 -> 63095 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_all_scales.png b/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_all_scales.png index 3f054dbc0f4d40fcfc132946db307f2277251795..288cbe9976d2929a4f1e160b8fc690e28838463b 100644 GIT binary patch literal 94483 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 literal 116044 zcmeFYg;!hA@&<|%9Ev-^rMN?I0+izJG&r<)aBFcZRw&To?$F{8N(;p)TBK;v1b3Id zaDVUJwch`5*9r?3$;ml;_RKfmd^0;vM@y9emj)LF1%=>+nz9}W3OWJ>1`^o!P>(n6&^OLDOuqJB-p=lB!hC{4d;)xS_P)Xb!aR;* z4tBQU5@HbX=S)sesE4-{KfmjLui^DMwFOG+rsW%D=5#;FywL-4k83h#u z<%P0>fq%|^E_N21VfLf8HiN^UWW**N1}a#vxSDD%XS%Lqw`04ZE}_Qxp>sQDc1G0E z5}&Ea4uh<&OX5$Nyh`JSz)CiH1OFZEbBKP^d^^Vq#>w zH@si_iHT&n{Auz%Sm4au9?iD>V@K7W`0j~$L{Tv^CgV<6Kb~fK4AA>U=K3yhaVwl{ z|4P79PsQm(QWL>HUvX@{IsE$MF=y!qZjXGfZvWxwjcMv9u0qBw&tp^r$g~a(xDWgD z)jqZ0?4h=Gg@&(vGtFZj5|iEVM14MBCH510%f3tedEf1|HGG|0)TJ>`(3@2!pdgNK zi(Y_`?*VQQpMw)9z|3x21()C zvve>Z{OO)@gRcoC8GnA~S?9fB;qOeGyyYc|6GtxHmK%ah0F88<@{twA7?$3@M87c6 z;f|tW(-GrH$KwMJQlNkiGS)|jKR$Do8?y6+J)z4!bA1=%lJFb?(0=4FJaYN}ZjqF( z%wqjX#kv%D;%ou~?Q=^RtIRilLoUSbJ8~fo?P$=Q(oB^o3^0a#*~wd_iXVo?mgHgo zF6zVR$=Q0A|6E=!y00=>cuZ@GzaI(5#AAN38gjL4TXARbs4p&WiT&dO)t`LT7sVyu&?zCYn^s-B*Dx0=_L%e$3H4L=zYaD-~_JfYT#b&#%=e%hocQy6QXCyt+Z%e zXJgU>37Jv2RU>mhx6G3l8oh>1)A)s@is}u}>LLasNctXLmLrw8zGC5%Txg?x4>h1ke_v1zV zq;$w{UDYUkZ5h#Lj-bCm`(IR9d)vRVg3-QeB}3n?qXsyvncQo~b^@BbhDS~(rW-DQ z_a+U{AGiM!Tl~o;xANpmCNM(&?iQAPS+@P}{|US0c!YXyUlb&&O&hc7*(E4uITE=A z;!lRax)L)sgvLHc`-dn_PEs~H7&mdeJ7`T_Bvz?waU}LNoZw|aa4}7!_)u_vC;gaI zp1To$+}NEie>JRB4p?>%yIYKF@J;mv5#F4<9TSwX(we7k#k)fmn$XVH8|Y=h9B`i| zc~dmnrEXkH`oInufQ@udE{IOfv~^DMN$XlNl7gAgx$iYWTr`t@J3YUYU2cvSSs6N^ z1XG&r7RIHN5%qi$H|+Ua7?i|GaaVUD9uSllGj^MD2}-movFuvJc|V@a@m0G*c33+Q zR2Px7_MaG7-f@-v074k{v-Tu;(wX+PpJn^|%l<(2!Zy)23VNk(I%6xXojIN+QZ#h38fNv{7V%ZfNU>UB(`z&!} zbZxLH^zI-WJ4A;_+OEskyp@lJ3BQ->|4hPE-+tOYL~rcwecGXG!?X?vjFspb|1zt; z|Na6X%pne9+kOB9@}Hm8k#>xI-AIz|_t9-q{)Xd@?aU{&XN2>ba>v0O&`m~Jhx#)6 z-P^rP8i39v${g7S*51kn!<7ewu~#4wm8GL9#d|0=)Q(1pC)H|nM%mr!O$N;!yU+C!iDilD7p5SrRBTBFxclG*3*?QAmQOG2Ni>ScX_c zVn4;@!t45qw!e^VzgP)|)1Z~JJY7>=gf#gAu;xwieRBtf4E@V`PeMFS%Jx$>cN}FJ zHp1|{XTItDQO)I6r%mc0_$PSR-o38f@pfjw`Ly5{BG3&uAp9v)^lK=)h}3=HHjFf2 zSGbO|>bTkd+`AUTC_DMFkuWPC=cX(ahf6n6pG0r;p+q9X2ap{XX$gii9SoLQh)J@p z2$V5QhhYgNnwFtdBF5^&9`+FA{V(77Wv`wH{pI2iPu6jN?Ef$p$jOm1Eu@$Cxa>=Q z1wo4nuR!@I_3(R(jdF(qqDrE1wz5?@dBKTWp01j26Ks&Bt#tecdoBI{o-i3<6G}!+ zM>g7stFIagIc6>CdSMdCotgD-2il|e8;G&~$rqseV{+)bz?P%>{5ycO6y{4)b8%AN z-mGAxSE>vEQE^X{oq-%QUP&Bl4ZVa3ieyA6@%VdxWukMGD0b)x1yzT1)Pl&v>ozWT z_06Lp=MA+HMWMTuttB=29j7aPNH#?P+cba;d{;0~JY>rhDqcEY_FL_82Za6~%p_(T z0kkkWak7-+VvGKAjWB(!aDsscr6UFS6B_gvG12m8`H_#fL%7V7`%-;=lI^@xas48j zG^AHxA?9hjNihLYF&-{n2qeGirm9LxG3ca5@*@nUg3b988Q{S=nxk}-*%b={<=yfO z@m0rQ7n?th@_bOh%S|@NAjLnx!-vzA>gc~p6KD6T$dwC}*(w_!LR@W1?DGwr9Ie>F zFH?2x2kniicZt=vy*Aljn*Nv+p;y0n`N^hg%YhmaQ{!#z)x$UChRhHLy-126g&Xy? z7*JTF14!ylmfX%lplU7tqVpOA3c~612vMVmtFQx8dwwSrjGRp-6kO?j?{G7Xp}RW! zSaR?uUEeeYT5cGgpm^L|i%YTgUK>YR1+|Xf@P^ANrm*iRK_kqRjdiaZ@nJsi*3!8T z-XtqDGfLJcDD?kq-@;UlGx;#e^d2{ThCh1@0iNfF9rsWPvPZPsHt-;wF3|y5KO`ny ziE$XvKU1BT3K=1J8~Kl9s?Jx~Oa5CwI-fX<<&mqE_)kkr?YQ#= z?{S%p#}_;s+?026&&2<~%{MEHcFv zE6G_sjLzF_n(lH)h|Zh-^p?$eQpe86RLbDbV;TDI z4XcE2A4tlLubv^j1wn*NF$fbj3)4;Da%BwNJJnFhJhQFsp$}RTqI=GFbYKiiT%Bxe znTHzEb*rXFC?*^ywZHg%Dl3tDWH4p3BTv<{=Tq-vFpr3T${zIAwaD(Y5Qm;_R#I5E z@J7-{4Lt2Qm4h;6h2CUm6?SfT`5^zcklt6jrr(~6Kkdl*dAVuKN(nffrarlS)fJg7 zO7Y(j9h473no{bCEyTYgj(`FO8~8R#qtb_zl5~{XiU;LKnbtXl+Bqx>9l-Irhm%fI z4w`!zkPc3&UVytnP|I(9!gf{EVigp;?>u!3`(3y*Loaph7ngefL()YQ7GyQgtTS%9 z;!!i()1sPqx2Ir(7UaKEMfKS-cbia4sVw=A0yA~`vI@ezcEke9ejBnA#TjS#_hubD zxgS?#BsnlN1`y_p2xN+vX_hWh(xy4hiL62@Hr_M<~D^x&WP^ z{iVAi?vrT2#iyo&z6nkyv2!HpW?VOL(SPuyt;$O}|EgoItH@F0s)R>GOAW`TzD3+e z1|eDIO@5`IbCFYZuFPL`X=PNA(wJfCz)}R9MxrS@Nvq?9y>wQ%)=9^&momESC6WW- zvcV8!Z;OfPRu;bQwi}X_{q7Zv#SURN^gN1Tho@aB^H*QyZ8sD*RO;mFF(88Y`CsZX zS}7iuHf@0q^?I}n1N+~maj>aLmOf>bMp|aoLDuc;;$+#tf`?5ki_3(4=916tiN5x( zR~bb*RSmIPmx*W z;2tuZ{$RAV7#%IJLhFwDx>rQ?w)@BGx{fO7A){Ed<%HH9AM-v!$K}kS$8FT$iI=f* z%WtwN^)PJ`v!;_%^yH98z;peq$m9p;yfw(0aB&O}LG>x}I!3>1-BKkE&=q2zF)468 z8wxz#v=JB_nDNmD)8n661a7fZ*+|djT3j|Q1X)!i0r0t8n>g1Wok9#hQbH*IICd!! zO0vq*o;FZ&1q;!&BT;lTX=PheWq#-B2_ z-4h#KNq34wIv~ZA5LLh3nOWBk8pp&x1V~h(5+Y{u2MuBOC&V%RP|`XSF!IFUfxJoa z1W+2fl5iS0#SkBL9(~iLGOo=tFXc5O4&jbV9< zGFMB}NcggiJ{NPZR-<(`!>03)Pxtl_cusT+WkUGyOvAmqJK|H=RiOsDsZ*6ydjdF} zQh82D3V%A+PGPu!L8C(X6oyKdpRAEgA~jK|>G%_iGLChoe=VfluihQJ3}fRH;*2s zZ9lV;kv!O?hYB?Oh;5&-)vlfLItf@>tF}f8(Ow*kYdDk6^CR(v8a(EoLvkz(7k_S;fF8eOldZkWvsQJXyG4VQNk@{|y&5}Sep9)q4 z_Y)Gw;u4ocx%|0m8<1JQ0%+BArtpOhD8&&+?VrkF?232aXda}3*Ht}(0w_NE z0cbbPadXDFo4)&> zbix&_zAb?hiwxE?%%zpV(Xh*i^8~&TPf}mojwe227G0H;=QC^iWnC(zm9AP$9Y62o zAbH^^F?CIQFt!2*s}67DZjo_pkotmm_?WxD5y_IddzTNZFS9ZD?zz5iIt%uoJ4GSO z(kE}0H;hEE_+JDrKk_v+O7-UIXDm%o+pI7nbrv>fq^|!)Y&2p|I=tKb_aqKs$QUmC z9^=27(203F+_U5z0M|W+YRLXECV}|v(e)x6+|N3Ihw6Sdd=khqxcD74ngn9WG)6K&oCI<_zeEPJ$;Ub?W6S{;Hs9Fj1g+q|DI|H=<5K!zbwcsI))=^``@} z0zj#Tpq*1SWPY?`T8|`9g6hORsa&c(GZ^4uO@5*dGBJE?Dtxjuz9Uy^k|RG}FGY?c zUW#Bq=ksgl8Ly9_QO9Ly`lYeIxqj-GzD+qDnr_ffPYKP~8i76ECql=&YN#} zR+tZH8AIx(S)Eq1F(Fc1VbOw?iVF(eE89K*sS87Zv*TxrPy!lu>!^Z8cV@p779rf> zV{@`nQF;*K13?`vRsaRHw8+&}Re%sZPM~4Wm^WL`nDDRFL4(a4oKC@PL>~Jas%c_o zrQr3b$hXY<$8Xk6$qEaZJ3*O|?^y6p1d2`MwLYbt32jx?#7nOsHapQzmw^VuFP=*c zSp6%%<3mSF^0rU)l*dT3aZn~FIJ(`Bz>MYC_Z>R(6t~Qn_j+-uLDtJ zl1pET^-ljcb{8jhSNy3V_|JEbR3qN;gaXg^>H6=BF#qJ>Vme6qPuu~2agwKy?(9Optwqz?K(n@wr0x(=R;N+6HV6m8;td>lg#iP(3QznL+Nfw^SAwpY zW#sP2rl@w-6{>Tv{$xam5RUXwQq}jpTpQhvkH|Xb55H6&Qg>`jhu{M=XZ=G_!x>M1 zvDR96vwMD1t(1o-Onf0+@otG>`VwO9>RLsN1dcq7el0a-Bkw^|5N= zN`(>cDg~NhiA09_#vjE+L0rA6pF$_<*ZEnktSBD)d58iWrJI*|62jHInFP%Wm(D^< z*3Q)fh#{FaC64KSBN_e##a75Ap2ZIOOx`Q~q_hI7jf5O}=f{PoNq#a2=TC#|CrF|c zx9m2lVHw9wG2h0F3y(?I7V%bWmvif4Hqtx)BCR_>>guG20pmd{yiwemjy8Pxho_RF zZlxrgfpP};Cf#t!eIz|7c#2EZ?>}nf=zWwkzltB9VOL3?8B5qh0Y#B@*ru%)< zk_j!cl=Hb>?cYu3RK?Mj)A{nX^V6~7XLHe?2;!5go~WgV_=p7 z!h75SJYEw($z6gv9lvx8Ku2r~qx7 z(6f)$0inWka<#f!j@LyFi@UQTL@5IliWT z#nfwQda1S&l`1O%i10PPs2$3iGmUXXL$j#l5ck@22>p4NFC^>X|p zv!~B(wXuROpOlr4?2BopG*%*4KwE`_m-0zUUvsvJww)CKaiP|TkH3; z1;CpqGnV-i115ha2LERyQYlmqMAQ!SfETi;Zbrjh%kXfFsNn*^8w z5KITfbt(E}prq{R>GH+hti+gc5e!-W{bD*_WRs^%8VNMs_Md5jMa5qw_RkO9{Ss1R zxMTVo%p_D2IcaG(q4t){u;1!8g^0VPX{q+L#sE|FMiE&Rh`IXpTnmmuz50B>?4;p2 zQnUn)e#`C?aFHkFEHoo_d)|%9w)DEbiy0LjhC%S5#%rE+ev6(}gG$euY)m$h*zdwN z218H_AB$|@#oQ34>#ia1X+e2~Szicu>IX^1TJZdgpOrFkX<<#lF9UdiUth$EyBt;B z>0a&exd>(M9&ZGRy7}%8yb&yv&GObthril&uXHiaxFm4O{ z(v1HL2~G9uN}BYODkf+*u+u?uY4;t)kr^?ZK=PitkFlo>@TVTo`#-2p)xOdgNq-Xy ziz7iHD(X9BdBSUY=C?iCE97Xj{PgkNfS2l{-Zrc}E}wyiZ&PghJvUQTRlHc-i!fg6 znn-ivI?r*;z4Pullc?c7?8N|nihRNS+YHmy;9ZOH;hF{u!Zl!f1Q&s_Rm3x=ziA4F zqeSIHyQX`hp6@Q#Igtl^8MNi+0hQPmfj;nzJT~$6i^j$zV(foLP_+0U16WESKA8Gl zN~$lheA;i@`{Q1s!TmpQ7e_yYer9kF}EVq8z=+jr@2r1N1tjoGWnkSyNvlX3&6hCam zx8+IRzk+tlfaO$O{#R}MZ$3~mOttJLzCA@V9Y0$wJwLHHTS=?0vsEvofWWiozS(D` zar6qX(^gKcRJYzRVOd{lRtT<)AWIVAP_Yw}**M&Yw-Z|!#XDVxKK0k33KNSz1-2)b z0C5@y=|(Q+88IP3cw+>lA0TRj=5=LQR@?U5hXz(9%`X=e4R6E@BXhr0s)PP|iz$1I zQkaYgBw}cUYlQkQHcTjD09rThl!#HH5lJ8Wp$FxKE3UqdV~GhtDS*UYB^> z1=yp=ot9)oJh#5(dpRqj^zI{DvqvQvR@V%?=!{mTjc@R|x9&>zjjenX|< ztuLx8HU``D11Vzo=tlzY`<;KZFCnViaYBH((;Y@+wbgl#OW!{mt@2k{rqP&xe(P7u z6WPiLK`PkRj0Ez?-fvJjG)E=qDTiyIh6fkd5Pu~k25|BK^vQhEy=P^fxH>iwaFiKO z67OHRGHhSCuV9$i)?&YD_knas`7+lL^*!tuz<)D5bc?OBRxy z@fG|ojsKi(a{)QBXO&lAq05&GPCJFd3`}s|;r`x$^LQyFuT(9^D`okb*9X@k4;*wd?pP~@h zpk0dHg-q~2iq!9vY;T|D0%pzCzbHPn+mpbaD8MEzg#p`9Wi=~Fpb@7K=OMrx1_j`z z-~86+^D>SqAhKCD#-mdM@Om)Ofmg1Zh%NYg2#KM@UV{=hud0GAMZUqn1SJgN7<|aF z2u?CbMQbnE7Wl@K6Mgr9;Kf{f3%T3e1>L#A)pUL98=8fr^|4#Wya0#by!gOf?xx&3 zRxqWlp)R=tKy2^KqTH5K=$VH`o_pR-IcSUPr0XxW>{hz|`kk0zB~kzWTii6E?sHt{ zaos43a>>=Z{YLGa-suo=UWA?n;eLZti$?>LNn2nqr&AQ6)>Z z7=6tNZ-I|R3v9cv2olcs-_l@NV;C}WVMSVRKzXJ}&u|bmz_}s{yY5wXlEPd=0hf&- zi6N%|sxp2QlS&?2jJx}3*{Q&&Pd(-%i)N| z9^}YaJ&~u_D!G!14%GDyNs`*Fh#TJ7eOVX3K>P<1kh`dos+S2L0McayRd{q7Q0vHq zD%s6BN|abtfmRin5`KE!ca9@jtFxk6*}yQt3D42|hkeI2 zUiW~P5)bFoz2e_a-XB*PcX5B?u)bTEbII?9G*M4koqsz|<493(;TMn-))wZUTUM1z zr}hzCe>OFilQsKdD0x||Lzxp5-gVHj*pKPKpOQKVIed>hHiTGI8T6gguU}Bq?Sxra z8N3kB;=`b?xJ(iBMk*hpW&$@wIZ6dXs$h9Eb|{J4af0=|O?X3o&|$maCWXLF^;?sA z9bd9Xn3~0IfX0v)xnh|>P^6|V(oEyvZel-K-A_!CoS2;G0iT<53a-%SMA=k1qnN)? ziAy9mt-EHP&D|N+8oMBl^Nn1-O?cO1f_5tLhP*_>ThAJU;Bn4)XJ55d2NI}jjB_iwD zi3AIMeRMRnTSB4QnveZVu0yASB|;J1f+$K!w-<)mEZ-Jb)hzies?H_A$DGU22>Nr9 zLw#iGVYzTFONxDqJE$#BwZE8A}(+>M{%U!wPK#i zSWG2=jbDp3YdFc3=yo;H z*nU`Vm#bWWPL%a>-ZnYT!Ye(qyT*#{o9`cglNJ|HVoa()nB8-be{$)X568abT3>j< zOHY0pJts4o+kA?!oet~}A;qPUTNz3PEB9C_ytdnq(!HJC z$DchGhnpcoOD6(oBsBCm9M)c{^A|ZIy&n#nUkA?xZ2J?Lv}rr$c&gmf*57yEk8~?5 zJsaPn{B|65{1zL;MDw|fMMpwV0%hxvRv(Z0eca~X#|cr}2|w$vYVu`kqK^Mm8AG6K z;BU3eo>a{O+@wFkb=%|NepDDC9R)S6d9nV7s7AM0cCn!Ez32B@e&KoO%gnWcN=^Cr zyD;fN)KYjQcF-JX59U}GC)D_=^35ns!JAhgftaf>2R7G}N?Iu{25EHD2aO%C$OUAOJ@_6Lb++4tGAAq?K28PzKOWNAws+oy~ ze8sR^90m-_t2311H~h7P=Xr$YaNu4D2rPR|OoNuV@5b`qH`cYuEVVm;-gFMF3phSB zO2g|qdk(4xdRs#SeC8oDhJO0rp&IxB%9%O>Pj$2vEDV)FRJ%fzidepsixI9pv&Jaa#t4Of&4e!mF$U z&f+~5*u-PDs#SUwq~FjTHV$k<9+%c_E8;t45W;xui2j7I7Z& z(9J5dx}u3ln3ajJpMu0K0{yV;Z6!MzD|%0z0ePa`c@Czf@%6}Y35N_9AAj%~UU?vA zBTWEMqFHO|UqrZLMu_~Z0Jre?5wh>yd?koDt8HQ^5{Z@gAo!KL>e;!}*X6eMbUKvR0WFwR-nut+IMAgj2spf^Y>t^73g$Qi)-Db?UW|0i9bG!+8g8ECwrF zab9qM)D+%$aDOqRry@Z(Op1pE)Z+qlZrl~wC`4@U`u&Ko;y^2M`3L_Ra@4W4{(Ymv z7y5kE{0KScN=sC&GSIuW_?*k&yIM2T8{#7tOnB&ZFJpgESdA+A6{(g4#L1a52OW|@ zgio_Ym-Y9(LCq)5r+LcXJgxst61$`DL;Kkn0bj)<5?mc8W$i$+@Rz^i~ zh;(R5$0n=}yK4+2W=Y_pX%{<%pOVpzpE_D2&Cz84_dqIs)BIDOs$E81JwTcytVY<0 zGPByPohR)~wAdE15#_z%d;c)fy~6N#x6~b-N!Mz=<~vx^BpWaIfSgquMGTR%WoR49 z4v^vravYg;E18|>Y)Gndl^@f7pdXgP6&n7Qo*^<0Q=7j!%gKDm-!3a|P#8T~S1Q3i zk=?Z22%hH;$B5D_;S&|wWPpZPH;tD`A~aL*24Qe621h`MnS41XFQmgCkN6OTZr>M< zB{?TX_B?8v(90F;q`=rxt`^3(6jsmMo5=@bw+NVyZ`LbZQ7o+in9rs1D0anT?pS;& zqP)0pTa2iK+kaJDs$OX<3Q-zfeXI!SjS2O&Z#%BChg=~1=Y5Nb^TPI%)~q^RXZ0mF zq!famOsNtvSj_lS;-TrtVqCyFqgc7s*OFwrG#h_66$AOJ=^m)>|Le6C={P07 z^y=CUwtL8)`GyTtx}=Mfo0b3AhhsfXAReRS{)Wr@ z+qAqsckrB*ibc?bBU12wPmLKcqHAbKyvAZGs zG$}1cZ&@XOIXOY3&O@f7)?AYp#FwD(-3G4%r?&G z-rW*BnkWRJM4I7ceLIz@g08mc-^XJ`A_qi(ueZg!sRu68GGVNb<35njF`!N0Nr>ZN zh1XH~Y_IV8ec#Y~#BN5NU@Y7Wvh^lmEp{V?b`itSdm@#D&V21WP;S9#T8vf(*%+}? z)191xt-R#scO+GC|I}|_XFv&o)AyzLIGWJaS+qM@HZAq)^5o^L;7I_l0_9k0|=+2vNu;aTCixG?%s&~!~*lBOLQ zKnkwLQDF3q4GJFU@9!1o|Hc=*x4zd~%VQMdDsD>k_}FmJ+k3Stm6-S(kePIKIZPQP zuIN%O6+_FyBFd#_pJ+fueO*O-j>iuZXo*9AGJel%WZfcxO>+?8r-7-;MikiPoknC> zSd>pyaJ3S26lW8yc{X27g=+xJYtMitoQLS1&otn4cu&Mwd+=pu*7TmegH#|T0Y2La z8lJAVd~Dcgb63T3okGEfaN`)!;@^pFETi<)M4z8$k-C{n(in~9l1_h_O?n^mo?;Ad zTqdx*Cxkh(ji|AZ@B5o@B%3cLW8xyg=axwrt0NWP2Hu=v} z-W3(Oayo2Ud0J)|O*ErP4O<(d=8A;LuO%;ppnSJd}KdVX71fY z!*9$L$^cso>b|P9eU@ahy7cgOn(lU%3DC!Uyv#|2YO{G<47YfrUc}C=I29zb3%R8(vA8q0rYuleamXqs_ z=Ajp}YC4qgt7X7zt*0isTJTi3-q5V>v3%X%`)EFjrw#I-ZrE7&@qQu8eh4;SwtR$# zJ#qxYrB~y^@p|xe-MR}W zfj^lJ&E|nU+K)X95`|QG&$l{?TErm0N9H5n-L1OQY#yA4st%69|$ zf9Y^g9f8&wH+#-ntwkLEM*h+4!eL#%bQCXpAM6x{)*oN>!7c1_zU!pZa0GIh3o&S@ zq_!a&zR1<%tlrFA2r7F__w6Z?Ics~5oX)I`P+E~Dtvb^GIA|Uh3b!hCksW^s`*#&~ zWf6lM^dN>F>gL^zwSCvnOLEjxHqN~&!EN7u0GDOVa61=23pOQ`@=CDvc8edYY7EKU zxcU$?=+TcR;(oy#XF0BLB-O?-sD6%DCrCo;{6i97We{1?b7R6CK4Z)D4RyE6Ccb|k zQ=0HtM&#P$;nrrmwb1aV>~pk!{+FZ3yb3azi#BcZj^>Oa<-3XGu=|ZQSN9d$TmpEZzK1JgT0v^ruOi18_WODV9 zg|Uuf0voMSQ%uRK@7yPkzF&I)S9&6;akOzS@>2AT`POe2wF3CWGhU}d9PY=tr|&

4mCZjwT)1Mv&X4}ML9I!ua*ej1a`y~DtxW|>u%xzr;I^pzKO_@@c4 zdtq!h%*DF`@ng;J>yr61Us}wG)Dp-jW4R3lk~{J8NX*%b94Jo^iSt{N_6OZ#34B|7 zW1~BaoN?8{04-UBLCs+E{teje{m@r$Ey6Av^9i&=cJ(*>VA51+m7d{`Iq29}cmp!X z#@D(ZHiQ4G`LKTv#Ve7h<4+Us{Y`a|Bdh+S&g5wn#vd{mOFuFEAm(Bhm<2mSmeaE~ zGHfhsdV=%e1y{_wH%DBj%$}UCoYTRIuXH`As%L4H<&}mj?~~ZbH!$upRe8atvC;z$ zQ!zP(_r;r=nEUZ92T|u&FaQA@565oJgih`v^fyi;gIIdtTgBmrG!MId=f}VWWT<>0 zN+_U=8q4G|uY|A}wv?O`2Hs1lE7KSK=pa7H>O`iu?XjChPtGP`_c1jSAta(TYqxo7 zO^`p6o!OyjQZEjd2A=zCqt;FfaFcYnY0z(q!vC!Op;2z8GfL_9xp_udN91o$A`n1^Pg-D=eQ>CgvV<2K@VMLdVG4@w8K zbs5ia9dJ&9U!wfp2mhPJzu(`N>*e<}&I_zV7Kc5C2u6Ax65vtjz9uxGKELR{q;MH7 zYzWR-FQWU+w>b`@9x-j)4I6)Zwt_5eqyHnsDG&wfSim2zy2GwV9cA^aV|Sd(b17C? zI?@3gIUb6je@_QcKyb$6qe8mxEOhS=Do8yj`2ee2})&8QIF{6 z=Fo7xq7<=@8l}3JvLM?!*P6j=9qnMely9xyVS$Yl)7&gdSL`5x>%JS z2C`O@^WgcF(EHqw~-~MHxFN(HNhRgK_>h*6|vkAR!=5AzsU66ozuQ9bOaX&3q zxL+O3d)Jv3ODTSf#R2*6p;J1hWJGU;&>oNeJ@RuiQ=w#NO=I~po}}5lLI%XoVrZd< zV7bi0j&^b$f#S2uVuhE@$-$c}`j2&^m$7_a-u6Ff&bu<`)K)|6ViZ*bhtFTytKr-h zq|mL&z)gS3bJ+UL94xXUT$JMRe^C88<6}{jatGd-PBA+oP~L=XXFIOca#jfDEO3I# zE3d?B4I{4n=CKa>NT8eJ(qT|ji5oxh{%&|u;?FVWmlUIMUe1q8KJYFFDCo_X$@^nu z{@m--?)OEWn)*pm09us0olIW8Lp80x&BGn^+b&mnj7;=C>FID#?p zim+IAwNz9v@dr{1)!@NYlMLZ}9@(Vyv7|vD+eR?vRh0(;M%D$B4%yVZ^fSK<;>+|3 z<6jEnGUM{?%K+AXoOTw~W~ap}Tyopqzi+*?fD%!5S9*!3M}M$48PM1x6m->sva!4J zPYs(rh;VuFX6K9OJebjy=gYa3>(rceWUW4R=f%WUa|F=1{4pd7w6sr1k#LcHRiYz; z3a>ajFkEhRL%gC-zBAj7J4rpR!aiWox_!*=5gjqoi{MC%Ol^SA(nf^^{5?b-F126X zfHOe3^UvhQS*@^Ov+{E#yah`+A(wwnjy96zLYXsjn@9tcuMem5AE6eMr4+WPuCs}i z?-4x`qr$5tAENRkf91o>OB_m7=0lw#3V5EqS0h+)PWE-f+>1^3@niRzS@r?zS5K4c!}T3dJXg}?r> zG;hCI-&%`r&Sy$|x$L`fT>aWDd5^y9&S8yh;DDlKwJETKg5(2&CXu{nOplUkJwDM8 zCN0ztm#+`mpk1Z%Ve0vtEquIfE5S}Mg0=B9W?p8gCjC>h-Eq@G=tNkd(ggpbPbA7u z)Oz#}k+?gYB~omgVDOq3TJl7l9*A#Q>urUgTOtdKDTGJFuuDE5R>Iae)}O{D`|`tq>a+4G zWMeTg?kYYCt~!Z9Wh6jDLO3G*Ay9P+4y9s%_IoTax)U<~yBThHbCBQ5oCVgMN-N}Fn-Y*ww{a}`PZ<$PF`T*IpLSep@PFz)e8>~_ zV~uWJg$4WgZ$%uEJf3~o!;MbMGo(~z7vX(2;Iq8|XDVesqG1j`cx|0v6_j`p$j^8? z5!2u8yn2HK%Erko2Wce!X(?HGZ(WjfjM*t4X2V_tFq*I{zz6|8?4hx+^n|KN7$;PQ zAfR4vi@uN_kM*NX%?I$FdS!LdgaFAp_&Zu{UaMqaz=R|=K6RpI*WU~tQ{{;f5aKp; zepqFtHz$a{2YJ$GLrZBmCW8?K0NU>3He)!;nUWEYaa>T41>`L1L@t~bz|{sms*wI& zv-wwbIC3}CIoLJXPS_jq*t@z)w&K081-Y?AYCC;<@jpU#dS3TNT>cS)tzCEjLN&a~ z44PQ1N`E~Hi{&F(=O&-OQ#k5Fj-xTcof1bP{EM)7rMM*%ASl!$cObyRaRCqVn62iI z%A%|KU64`J3bZa+D1$0`t*rtpK9NJh&Hx=Oguyb>@SX#?H~JYe(O<@gcE639W~TWs zA5>#8Z?|K2;c)T|oF%hh6w`fo0ylAYlfR1vo`3x9RJPs@jTZcbobo_G*(?+rveQXQ zI0-by{NEcMWAaq@%w@A?{RTF0QU)Nz5r&(ZxB>jy?MaIXgJ(m2{v)W6INT78gde5< zu0|BJy8!;rcRa0(1@)3x)d}Z_i}LE`5(+jRwxp_gExU=YAe@5Ev2^`ZTNgat0+xGK#dh*Qqcm62Ws;9Pz1^%KD<|x98&6(SQ zth`VXEgD5FjwT?7oR;9wT`(*P%cZ!B((0hBc zNp=|O2AswCpzFk6%ZBpXP2-dyJFU!sfaOyimx48t6E^JEHAD8^Q%3$0|3vB5;q8<7 z_Zg=RP5(eIpSehN#M?KD+HT>t$ueS6jVq6rtpiqwx4y5D0wb~ypiy&`H2`7<9eO4w ztav6mP+@<&?&FXCPXqJHJ$Qrmgn>TfeDZz2EmBdXkA!Uv>)Pl=$Cl368j4`Qt2*`p zpsZe;N|BMAG7|+pcEw8PrzHH|%ME328>HNHPsb%oykCk}Tr#|9RV!2!sGKp*rUc3j zSdjcU8xvJZA>rdH72=u&mXq0bB_%054qN6i{W~2r zGrp0u?%hjY-8&WK-HYJ+_rPcG=3^- zPmICh>RV3Dtr2LYfE@Y8=;C{>PlPuWPEyc!P1n}6LT)Ml4@+km6;<1XVMV&TJ0t|@ zbO7mYkOnCckgge8xyVF2lrZe}QHL8Lnd>F)Rr@A`i8gS9xEnf=`Ry06FAXE$1K z^)buGP~?8X*s}8a1Jwu~+NVZ=OxOOAntN8}tV0a{Wveol)$faC`o`Qy(@;Aa;;l;V z!0Vx;pwkEUrEUKLkHT;^>qgLy2M%Pqb%`YV@eUE;-Eo?A?86_SS$EcP+3uWwO#X6P zJ|fqTpZ#s^_mc@3RjqiIHil?bM*GbmTXJq@TC`BR*&Y-50krF3@qcXZ$cc%4@S;Xo zF9i^wdtHVW69!nw=OU^EQPgM-v(UD;S)fBUN`rjCA7@~>CI2vylCZcN8zyYx8`;-w zZH3yp_ysz7)*E{Lr-^R#&&`BQTxSr;;g=(!tt{45l=b+*$yQV?>H33*w5PR2KVv&<;Q2G z317VG-)Dc=vqS!)8sCs+FC(obkOieduaK9NeN=YH{i8;dBw?iAC)H+te7+pEY~rg> z{zt+aSA0Z2g8y|Z%fc@74tGzblg zfx8y}+xg|CT-KX1v-8rUClKT~{U=UIs^_Z#s$Q4K*5ALXrCu7gMcSV}6YYlw9fgxC zC%si%^L!r+MZspSC5x7x83Ll#jr1}wb^kPT6e5KBijh#4cp^KH^gOFKS(9Y0)2I7Y zpa#*$fW>+>%C*YuF*{zKiXqV*vGv8bJlcxP712ZOFeZ?m-gJ!gAWN5$ux68`y#X7R zer7aGJXUV$L-`+$4_^`T?@GQ)sN&twBbz3@{MT^ZzGnL6Wav$z1Jl52@o*Y=k<{%>dVFnwxhx`hfXU=(|;z0 zaeQH)osb_Id2L}(uZ4JWnX~*_Jn?W!-&88geE6ZjnjQ6Fq*y~jFPDGWa2hYAKh0=9n$Ibi4$MqZ=a801;rI(j2i$f5Z? zGA4h~IJ%jy^w>n{uBVSpW0cuyv_0Y*X|7aI5$1qytZ2J1+c>A)A$Tdugo4=Oa60<~ zhxoQwRjs3_`BxlLbgceWNRL6PuR^8iPqs|AYtvOc;c|4UksPW96Fy0k!1*1Q^{ld4 ztr@4}uvHwqMR%y1lh{QItq0NBEX{AdEkO;fB1P&xo2_f;!G z#vh^^o}j-R0nxVcY$EO6j)XfFqpNc6@8-FLTSH5LYJQxTBGzc(KW9ESvO?AZ!IwKL z8p4&4IdwWJQlVre1`Z1S@aJy?hRDV&W(D}4{;Ciblk%(3GYdfli_d;CO#tmLs)%l_ zL5sQxktx3b8mWr0WtcGmax2l%11TgSGBuWai71gg%q9AYegOxfy!~BW5)6OQu`3l8 z83pzdf`t-q?=P1nIY4#+ke#Ff_wh-X7m$CsoPF5nY5zD6<#7i|v-yL)Hm_Mq-_ni? zPzP{m5?2{>Hb;c0&D9KG#2Ew+TTv9c}R&rPZV{7~f@+=o;51Tp)? zb+cTh5{nLWSY>g&Q&atMNwLY%TAiE<&jP`+zRG(!C;F-0Lu-${wIEl_sgv3xiC^C} zCu>^|y^^fdr$fn9`Y-Pz@j00@rP-1LU1oB0ncFA19o@waj#BW-HH~3>4Lx^&(bU`A zzj=B*hQBrKl2kY7<-LEAO{DnLW9{=DXT3&lH}4ib<0SC1et9UH-Z^?-OvtMfTJeq0 zksQjIo?!z0eSG{;c1c8~(f);Fogse<8n6Z$B%xOe0$Nf_p@KPw)oz4BaW2UbpQH3F z=5?dWjhp$nhQE=1+$CAdCXJf(A;+P|P`$c)_f7z)XBM$B-k(HUMsBAln4?x=tUj5u>3n%w~r?wMW#)paPp z2mOIFZ;OH-3b2D~Eg?WHa4{Usf7~A%dR1^5dU77M zcQ<8{igV44@klQu@rK6pk69rf+R!^HkKYn}iiHliZTM;(PyP^H7ya=?bIqgcstYDs zvL!$F`s;OCvri%=YI58^`EmCR0=waTzT8CZ-g`}1tjhxZfXhwc3iL<+19Lb;e~D7a zh({O%&Z&Trs%-V2mCBtWdQ9By^WV;Bh!d#83tpULdv&Tg`pk*Ky1wv~4Y`fJg85-K>yQPN@&09D=1id|UEY z;AWLoSGU0u3jAD^W!vT-1`yqPFp9=c_z3!yW8gVB}?8xNj0~MCWchtdtRr5SlBeSd?j8^09iS3+tuASd~u;4|T9yeG}G})QIw% zm_4|MscxXi3CgU({*T2(8=4*7;;?rY9t;Qj5S-K^xs>n*`In-T!hG-xV_o0M9<@yN z6H1vEL=v-u*px%_^MSIu_6zwr`wII=-y2`aTn}PBQ+*MTV$7bZo=6+A$hz*EMo^Ag zA0?!CUejy>QRwLWTy&BA8#>pfM8TlK)Gp}b_dEI?2|Que9Ov!@(HhDF)ZJs%_}I|> z#wA8-mo6cq-}rpUtIfz_9hh&n5P1y||3qlyMcjEmD*EaLt7j3$TFIJNm>eiH0q3)! zXR%rYFxRK8MdUmh~85~-#3R_r&fWz*2N>t*cO!SC!Uy> zJ+aZ`x>gm;iEn!IHpgeDglN@U^+7cne1ZNLtXNI6Ea=FhRdl7Q3}xsJUE_WC(lHiG zu6eIrdU0~xC#XKtpD_{R63&5TQH*(^B0*)PLQ=)o%b^F}Xy3Zh#ZZ8#MClMnjgj;P zOjlRBrMx>i&=&Cvpq0D+#K&2jWvmQF^ZyW$hx}`%tAjTv554qJESx8s)zmg@B-Iqb z5%zbmp{(rv4oyDat(-m=mi|&3<6dnq)aAFi6CPDX78M*Q8#Z#9Q+*r7Tisq1YBd%J zZPOd(2NPcRXm;QKX&!v5wPAr+{FIL9=fBUx^Jk;Y`Ir}Y6%iOITSx}3lsGTZkYi$T zNB$@A^orT)>TQ=GU#4Ft?8buZPewPh5C5#hx>7LB(%({ea3;0_U3zb*o?TXRaUAuT z$ARqDTc@T`0GaKPRaT$cw~YqWEO5`c*L6786Uh8&xd=CoD*b#PBu>OV#E_hdDxtt{ zbRd(5F9H|a9X2rYvFWPHJ9JvY!<1^pLR#MY{}@X0nxMi!F1m~?1F~PvyGol{);l~F zpB(>-C?cjFqRnuOFNs}3gJwlfYgLe>lu@85wFrdc$?Z^rTHWX7#O4UD z*$pLzf-Q#G_)NaC3*BV@%0zOZ#^S@C-OQYD^zheq4*cEWV~TjWZ6xAX<)2#buJS70 zA(Ks459<*}1w*;4xTrUln1dX)7ee|P zyFU(%cdq-&!c^A-DKgP!$8v)d=^GPEh;=GnNzP-trVeWz_@+?O!jE#jvvSGeoDEJ2 z|B2X&NpZhoPX9|ZbH?f&n$lQhQl#@mtl=9e)B!$orD)(ko#om=D-c%BF&;)e5jbmELAtA1UGB_y%+Y*<1j@WQp|(EbRQM9Wz002 z-;xD&((d5}cei)LmNi!DDzK+8BJ^|i8Z;3gpL%zul+OtB(A2`>b`_rm3-k-Kyi>@7 z7|cAJ0Q;m5}gH6btS{`R{ z38m9r%=>{jJCAodZvXtO3U=pwi;4*qGC(67xwb0LReVnr{O}a7$s@0#taq%72abo( z5-(l#35P%7-^KVQh(6y>NXTRl82LE zk9y*0tAVyp=3bdlQt+bBVY(tj3-yh$+f&c1k=jCj5P!n;9h=aelT;c;F69*WW+>lIMRD$+h1r3%v3@q~gXZ`R{R%HoF;HDl;G(*~sY4Gf!MP|)H_Uu*DY>u{?Xa(n`QIOmx?xBj=={^RBg z;&rBkoVFfl8@QtC(14z^9LpjJP5U>BO|Z}R!71wqI9_QialN}v6BP4%NjsK`y`yvf zgbyI^kbK((d1pZEpLhIo#ed8287 z0U27tln<*>8h)1G*&(xr&qWepH#+=iQMsoN{PNjU`Lur|xU*UfZuHEnFbid+zVdXH zZrhn+??`Ddm5F#Ix6piHQX3#g1T7SW87(?!rR3_<%&Rir4G3yS3 zal{Um+D%Yp-EiAcAu}ObIwjgci9^eV9^P+-SFeAFfteXQ1KSf*`u_i!(vNN^uAuEAT%T*iD+U@I&qu&tpcJp_C*MTdR z`Vl9M28a*D^tIXxgbG@%TLk=thVL}#{xStVMXPQCre-JoFN_jwBbS@a&!Ruj-u4N1 z5J&*)p#I&Xb-G6p!uZ?e$A^@$klS1Dz)No`zkbh+duHWG2sc{K)~@-Z5BMZGhq^rh z#NF0kl<78DPQ=ppA@nS`B6ZBn5h3g z(X04piQozn7)7W%#e`Zi( zvry`K%XxrH_T^=)G66dld(RuyV)4JuCzm%EQ(wXBtFm^oQm}Pg3dQMHL@g#{q-;NZSGL**iKCF;MEiIB7SDp5rsLM5Q9NQb#Sxo0yjlf(_wiCw4(Y%D!Nwi zIQMcM?@&Ms`)xQuSm>)j(`lpCZ-7^(Y&t&7{dFhH-El)w^)U>x`eU;U{sl#8_vci8 z&Ga6Sy_U$myrIB|zJTBLEFc>OuDqZl-$9!ALgqmjwZ6!Kgt_qa?226^S1~jqt-y!A z%TzIa$L+iZvic7a!Z@z_tT;<32ZlQ97*?u?oq$7zie}9#4BP2jHVOeYkGLJcCxFhU zaBhRjWhO`!(^Jpx;C2l=<+=|388kqjBr`ImcX;}Ve!C?0>KBV}KT;thB6=mAUx+r) z_jGxmuDfM%(yF9!8;jl+L zsK0f<;Y*`t86Sp9&F2k*KJ`$fX;M5|BzjZs%UrC`k0(@lXL~Y;Y^*K5F+qenEps0^ z`!gMz&5@WrwvE`2IDOxJ{C)Mf=!7PM9T)hanoSp=vREBhtDOZ%JV)(N?!jpzJgL?t zpxyiaYuhU)GlHdy5Xs)?{a5-U819G)Oz#Q`98j$a*+|?5P1TLe#Vp5O&6Ipf`)Tya zziB|;W7^mM(oE|hi%}aHWSq-sau2*x;7mG5s+@=7eV)sLPWH)HgS7dNOY~JQn|Q zHnwd^UKtk>&bw7`QkdG7je{)i@1$QzgCl1<cG~i2b{VhAsYhD)~s{`O%uFS9RWn`6*>p!NixQ_&gjM ze5p!=8cMZ^p4cDNPa;QK#TT07$&hW}HAGw_1+(;JVEKj4{*{WDGg5$IMKvCR?w4ML z4y=79VeeH-+0?)TC+BXpIfNf1lyKfpz^zy(bkG)vVD2^*BP7{(fl2!J;YW(@ zL;|6x(qV^9xL|K>lsqM{DG|>BUw&{~huxUrLpDbh)^yBnL=tkreVblto;vf}`9VF& z-ZyxS)_2MYD~J4Jpr3VMT+IL0%T0G%Bo?Q=?(j7pLQ+mM{K{4gXAlF0YwD}kG^UJ`x7(KgF!)0Q4u$jLgLfxZ63336S=ez^c zTuS0qtsCLw(;HE(9>vl;k3y123o~$IVIy0LMlPOrDyl$|^aNSiNxG4ouQ$KFR*XS> z+|#f4PFC5rS*Zv^gx6GmVD7n-;Hc+6Ns!pgt=@l$1<%|Am6D&JGHg5Q4ipqC0`>2P^k)Y0pp6Qz?Q0 zM!t}1)w3WQ9d+w0&4G!lEEO$l-D=@Ow}DJ+SFL59+I)c?uMqt@L?TTEQh6%IoGdk7 zCjU(hO|@5K@;VK{&gJyuA~_n_I^KyNTH|0)<0H^^{rDO~@_HS(eZvnl+`7G1z3im| z|J~|HI@-L}P)&N>TuEyJ{6jij6|H;G%!zk5!@vCKQu+XuX}_qiifbYAp}Q zyb2wVc3otekg;Rm#2v>Rm3>b?c{VwI2@Q6!Te_LG%@NnyE>bT}oU7vf%wTc~8sNhd z>wig1FcHcc?!SF$whe66`ho=fG6qlxERf^oyz5OJ8(v5Ij9MOPnl&kISck$dPqc~U zkT&)gjvf%#%X7|DgHyS;NvYbs?$LdLOXm8aB;F%9Du_|UYFZO6*479HKriByDfA!8 zkJba~UFP%R3nNzlOP-dR0HPNo$NhA4Bxz`pSKX_{`SH9SSA9wo$L?N*JhzO^})+2U9%L(c$zSKN8jm8 zmBB}yVB8x3Q$f|DA5JC5I+^2mKh8T7BH^hRlaV)+o62@ZNfUv<7mtsGzx?;kv?nmz z$8h*nL@;+I5$sA4y|eXT)S%+t=5m?K4>3I*VdGta6LC*5@X9yeGw;tT(( zU=>8|YNlU;G=E~;CM|iJ=Y;O@n694M$b*~#rm|r|BaaU0#~FJ_BZ+l`O>{|vpUy?3~a)OJBAXiRGi!$&>+8domNe~mZ%YF%8tk!xOG zIlbwnfwbLNh<6Rg%(p}VSTcIV%L0SmZGfw^$B;E3{Hqm z&QP9OSU$&j8UCvyRT%tzg_^z@U*fAqc_U+z-0G1YX3HO`EFPHIz85{QU29fDP_IOU>AgZ8N3Z59QH;(Av}y}H=66Ud4O$`|43%_`2>o^d|b>V zlgL;=36V`0%x6F1GCxilbO`Q$WBKTQfH5XPd*YGv#BkCr2Yy~IrhWuiaZ!$**r>q+ zwUpf1AifZL0_)s;7F!-4OX_aLh?;_O{Do@JcIh+{yGGo+8f*itJ={-$oRju-w!SB- z5@4@rFZrDJ5o9W_FLMO>OTW&!Vk>!Tm>Du&m|kG)iPKnVKooE_Pn93xw{)X<(L7LE zb3CKGA4DUBJ0?=v;v}T%5|?vUz$({Ie#2<7S(N2vbOxGEIZkwGJ7Yf!q>$=Q3gLvk zkBrssVQt=3a~uDypcL4;@kPbbLz^RnBumT~0GR|(3)Fl2@r#L`-7L-OJ=2j(`s73eme-ZuChbg-iR0LkDWQVTwYqi_ z-Om>`zdxC%m@O!QoJ*r~y~9NVza#%ks(r#OiJN@e}JMemj3 zjK^vl4_|{2r@1&`U%x!OTO~CjC&%{!wHe&c-IZV8+t{>?y*dw(q zdBYK(xsv(!UJwSuihZYdML))n$7H(sMe>AxFUH6Y;TW@^qCJE9(+g{jCeg8N*x1qO z$!rY0$Mb2F`bu}%!M4Z|C-BOlaaL}@rN7hw{PiMhcjK_-aCOH4Km`ECDje?pI>9In zvsjT@jG927)ARE~HkJRaC;4iVNch7s-6LHs8tO*rG}i6B{Ha6@4^M+?wBrly);DKR~I?B3*aNR2znhwsRyBqPUX`6j%p zJdiWSEyzdTj%;Gdb00n9hRmKzhyK1pd`*|G=V-FErX-1|ZjVh%cDMC>V{&3nm1xSW zL~o`dc)u51Z|euANr>!l71;|Fp7kY0v)gjp_=WD>o|7JN^jMZ%yy) zxc?CYgF)P(-C#3N`?;fSe;<4yDXDs%bdf1?r*H{5#Djd*H&aa4AJOq*i_Jqz+uW5L z2MG*oUA{l~+>m7lfMJx+ZID@lm5|nA(9$prvn^hJlwP6#N7x|e`0a+^Oo}8I>l_!iJ8W5UUvvIrfhVwVRh8|%hQY1#-bH?XKrMkcFCuf>y zWksti4)n};)Dd3-QxD42aeat3mR2&+%K+=E%{*jP&-gwUT%Gt=tDxWyPK0yWcjMm% z&GLVc-fIO|EXCBDziAW_-MZ&2fKM9XjfV}N$nrf@Js$M(AQLDotdJgE8 zdleDb!S$)`y%V_S^L(fRb(7~+A9od=1JKHAYaR&ZWn6$ibqR52Iw%NeQ4`fXvAyNG zx@BMc`k0q+b%W|2A8yHF$hXvcraS(lXnER;&v=BbTp%ox5VIqNHqaHIJTHM6NytnyUNbz$3f;Siv~Vgu-Hv zI(dElzUyPR$b`ScE#vdd3k;|95DB*E$m#)>X%w5c8-!M>#_iL)2l=W>B}BNAnLA5s)`kmO$$m0BJUa8e6nIx;luYN_aQqDg#Cy~cUCokB?CA7bozr5SodiZy>7xU}e zxXnx5cr<7M%^vZ%_*81bbGjvl>fN)(@cK^^@Xowum83RpkK2ehrJ6SjZ$%l zUMbmn5SG#j9y%R#Pr$YTg$zrn;nX`)L5gA`e8h5b(gvts!3EgtJ4+9kI30gbWIZD0 zp$NYhh>^@B9x+;2SfC*(ZJQkW8>dd@Ptz7|OW!^r5&QTKThS7|1|-kCH_+GHp z$x5a=9JwD-+j!z<l{DN(a*oMmz3JBH^vZ4_J5P|@?zReMDfBT z^a&o|5(%{~;8;wMH?i@jRP;;xz7G4P`uQn6>Oe?H zZGH>oAOw!JEQ?_ocviHz2nOaNvV6nhfT8xSpXjj(N8QASfL#Fg2(%64Vb*mome68_ z$fY0+T6`I#&E+cN5bwkcFiF&vw1mL1t`NgEbuuJ}2RQP@W`&HBsmUyqJzIQ{wopZm z(4|T!gYK@Yo`(WWSaX{t5)0OfMDJHAVIi_T7y}fbZ8=24@4L=_k){edvtNVHs-H5B zuuhA}h(yHOrOAvoM-!iag}<2+;7Ep%7P-5J^7H?V5WUI2hHr|5ZY!( z;w{~)Rav-lmTsUk2H8;>lbNI756(Gd5J+3TITsjn|84mFy=K!!6mu-!Wpxpe#*Mf# zl~r-ZE!y`55j2Wd^gEC|VRnt?q8Eh`#m|vh<~Q@ADV+~0!td5<^n0F9t1s=8ka|HX zJvr{Q#wSgh+RU%4F;TK0 zesE;b9CUvZ5$OGzBk1?gC?hF363(UFJ8j`N}-Zd z^7|z(x7jDQS+~rxQNrLuc3Snf=vEKC=FWHsGgpW2!nW#7k4wgV!7e#(4y$%K>Z+W} z8hkuJKlH>sIxAp~`eu@wVk#uVb+}B!QUg6>K&AWlGx%ME*=L2E!}NlCRpF;EtRU#X zMy|ArU0&8#gR(i_dE|E0?tftdXzj)6txzQTOnhvTEX%w5n}Q-T<4(l~B)wJ<;`fTU z)6%kW{_1)Tb$qMl->~|@HXqYI4Qx+xQ+GHeTnQ2DnkKaQ2AyC{jhRiKU8b6o1bA*8 z!tcUjV5L(Iuo;m^nQqg;T@i-N@euqM z0#;k%y_&@WeDxdFv>GzS^Cx_xUIp^^zmPAxFz_`HpsmXT)>k)nH;Pz!Fp-DNs3b@Xf$aea&Bh3+QK$1fwM>}6ivKq zHnmD(ne9^^(>E)BE3}_K9pIrB=(=ujHFM~U*ZA6;TAl&hp&!0e^ZO_@!wD~gJDX~2 zEQ9QC>{t|uJ6+r1yBA4L6|C_0o##Fk$@2H_y93vVa>&(1H@|L=1pHGmr~D;^S}ul6 zv(6IULA=w|)dAF|pYkT&KX_vwbTWau?{AT?=iF$@+^3VOECLIGvBtwG3p(~h#pmxy zEEn%2-eOdPvOO+Jk z3x-~XB&i_ZvAfyLfCbY&pb!j@otFfK3k+Ce%@$5qtA}hYB7|F&bbJN(fupw$S6xJS z=-%a&IGtBRwd8*T?jDR4+{_dXhQCsuRjzC#YsCAHAGT*_zGyMjT%<|+)y|^rB?MI3 zKO)z2$SD5Mn>lSzrLnc_Rj&^dZr|q)xb~@47K$v?>`cBb6RPpvDq@K;HR^gf* z6NhtNKVBD%NHLz2wz7}=w#DV0H)AsAOCy7F`2yuFDr!LL=REx-DbZ;-anK2C8FAM}cED-IGWMa* zbgMK~E+w~Yd1P)5crEI8(_2t$BL9b;RPh_(CU zkQc5nJ98>s8WJnh&*{rLfnEm{DE$$(HFprA{^!MI!Zj|FTh;L)6lK7lDkU^RrkAS0 zET=O8>HtTf26OdwBzRXzfpz=oC-Yv*F}P{}ukm^-T9j6$_c^%Sxw-$F{w>HY~Eia z7jd1(!0hH;R^*UnAJYqiD+d|JTL{;(QZHE^))4n3vQq;}Fu=HE0` zm>dHWW8c8{F_HDyR=tQSpSIG$Ax9vl2Dwrlc!P#>_zAyNQQ{;>fMsOErlNaP>D5*80RyeNY+y^ahCp5JKYmRpa5JoScdW6 zG74XMOB8eT{u0P#Ww}t7q_#qy7@hwNdEePr48wws7wCXE%(aqJIs;jpwU7^&-U_{} zO8UVEvX(*U@e8Mq31-xg@RH#GIIK>^g*L}f;wM(V9B)gf;@4XswDO!=eKD)^C(crc zENVA(NnonUe{*h|rAYf$+{Vx%RasuLh2lSvD>*P1g5Y-ek9N z^T(U%e&TZRiy5ZT>9z>+EuN1+BgH&hFPz_ZJnjSDcpHR>$jgknQa#dl*87H*g(i%2 z2%;>D_L-QjFP2{3)vDZJmp;_S%*nr0qc(s{O6P&9cT;;P(9qmNLMt*QAD6epNKm-q zz43+?8|J-AI|Vs`rV+*C6G1{kT>8$TU4S|;5&zQfzElxTcxvK8Y;uuCnnCsT?ypqm z>A)%NW?B*}`DUeZ;Vg8$p#+(onl^9LAK^?qVYYf?!!~5~I8@=?YY9qStYiGtdJI$S z!Ej*B#1FGuY+xwIUAM?_9D<*K>3F?r@KL(zH^Gp~_H2|&*Qv~I4rK8h^Yn&V2(UyV zebvx;zweCa>@%6MCiqzOcvH1apbusYy|&@@HN5(#5!fQN&F{&8zFP=Z*8u^eKGtRX zp}$r9GJyg$0Rj|@$2n|eqQWt1Rh@CL0$J^F-3JS?`TgCc-I8CIN*d&iA8M5w)Zt!# zI~$PhQ+3J%*&>DpeBUhtLo>pggh!-o_hdavMpcs=jM}#*JUW!#`0+^oppi%vz2E9f zi+`=(-MP&@1oPEsWxTs+d1IAuYIRrx0RstWgw7*a=V{@Fzw!E0<3H#TbR7>TgVRW# zCDS)j3JioFxi4I_)=*;Pr8YvIz1u_bP(G#m%-h!||nO5TRu6^0$0;9q4H%j}WR;?A<1 zQ7|U?{tAOO*n^|f-eWZDCS`D7Y8iDm4Cjx(>Y;goloy9DgiL_UAjnaWeF~^1&H@9< z8{E4msdsLVfpWC+^wrQV^C_!fjnR-4yqA%q-8{L@_FYC}}Cro`hR(^C8`~HufhgN4ZAO!N>Y;~8sr9gWEoi;JnyNm}s^ST%g zJ+k&$-}Gd;*5VsZ4Go!--D9K5(MX&$yOOi3{X1@rtt32KHuts#AEyQo0d!o9yv4!E z7*IvJJ7{?W_oZzNyxM~V;vnv?8-P9xGsq=}3qEwvX*}a`EVh<4Bt0N@!!Sz4$f0dG z6ZWkJ=@9KyjR>ws)_rVby`>|2GP+S$ z!4Pu9Wrcl;mp{}`stwS(DUF_sWd{@A+{1aN@B>rl($$&2@V9{f(b{Um(zMfd@Cc!+BesX#@NLg8^dCNu?hy zDS1X~QRVmzTVSbeJ9npUR8m3UkrG7Z#O+i;{-XpMc69h`D%6jRv*!Pm-#m zqZbVrRX#`Ju;`RB*x_q2N$LjobI?RUsF6HwySZ$SVqWkO^nKyIE6F1NEHaG?EqQ8m zS9^b1R{p2^mZ0tT#IS9pRuODUIc5ADXE2;fXnR(Irn|mUd363H_q6i8-)35VLy$H< zs+2LUhrO`o*o%Blm8@d{8X42zv6}B_QL$2eu3Yo-I&jxHQ5kl%?HBfXtn2h{MU{=7 zVw<_%IGru&xFGLCdVUEBQs1nQYxlB6Eb-G%3Ee39>@m<1>s$sOEJK42)^tLNLzCid zG-*#%lE`2-D`*wtzkM{QisaS11;>N;5}V=~TtIA+E-9-7+?phkNt`XfZJG?o53=^r z*@LTdSKi{&^QwtskiXDWy=LaT%XA-Yo)_ce+0a{>toC?mi{1iyZ!kIJHsyZ!Ihurh z*>r#U#QxyAxfUy3WuBMqo zxsT`7-z~?Wqn2M?UEpSCwh;S&?}{Rg=ciWP69iH52Sley*JpRGRp9A@fZc^nJNg&* zYABXM@%?z`gio}X<6i?jlqhN^QVJ*88At@VWX@po=q~wJ;A&X!A@Q&+dI|Cf^m8x6)G# z_UE8v$H7F4kyT|o*j3WlDoDd_<9BYDV{0hzAqUiy=_*_OWr{TZSjo$;IeXF@e#v2d zl!-L-nzc!lW_r{4FB`9wDrhcH-Ij-&;QZx^fXdk6sI2^mP_uQgQ{9q1*S)#i#DtLj zoml}k@AWT6CGu?IwI9($$*j>tL@yZIGxbBC=ckHNy`kto+U;Xp$Gv4|Zyn$wQH~3xA7jvc=Vplbm<>}R>S+K zBCNbj@Ec5la@<`*iiO9ysl~$`#A0ayvf41UZgCn%8XDqdaJevuu7|k(sC~yJxWHz= z`m{aQwb$*zgDX(hem^XVQ*H(Y{^vD%E)*Mz7jP5;e_FYA*u5Dhd8%jUM|^fAM2d{C zNKCX-OgI8E6VYMRKMaxS{b&sI;jxb%j*DD?r6Utv`3a%p|aq z&Mmqar*G&sVz|ubaK{8;K^cE4YLcYD(Npp_X@GiQp8oJyHy;Z*OY?k^yIu6|X6Fs8 zFJ>z&V!zW9ypT5^*7&fZVX?nGBa42Uu7&P{&Pr`iMdPfO?~;^c+V|e`g<^i=IDD?n zi;r64{Qe^rnHkvPYcc@CD&LtCL_E8{eUdN7KFi|z9`G~d_w_pmb}h6Uob6i>Yu32o zOCeAOxJd^^^s+-=ZthJAqZIgEeLHakh?-;Zoh%I&yRu-m?MvDEm4W&Cl+DtjDIw8L z5OxP=kLgA_2KiEueNr$SO+_NKIeP39)QFbEblYm!@ZSy44MGSPGAr zexkB7fMRYk$R3lHPWTvoQinlGrE!}B+L#ihqeoImTqnQB+%$d5v%CGS^Wb6yUN#gC zZGBgTqatiXQrY2Xb2U}(4r9Wd;a%|jH?sQUjec0QJ!d(MDa}?wY}oByosfzDX3k64 zBO&a5gy^45hvHvF-!=#$}qam^y zYJdm*G#q+q`PKIcV?9k1eTa~}TUC6Be{<0Ex!;nQNtkgug_qnMQn}&kln&+l2o~+L z8W1I5)|)W&$@>Q~v+>m){T||Zf5KR(r^zy5SF5B-3+XX|XTt73m*-Oz2Y2yM=n5;d*+aDB(zz;f0?`6_%+v^W|oZh!vRC+^R)yi zl((cF%P)VLe)=er#@d&`li9HVAwM7ui(b+@s!8zYeD|Y|{~<8~ zRN&GY2oP6shku`{Gf~GAr4{Tvf26{R4RaUVxfaMyuIPY^&D3s>eu<3>s^bi{=Wf6J zI;h)MAlnIC97460-LSMV%V-&@TUlbC{5Qc`MdBpj$ZX>rX$QzjtkRV8UyTtbVMl*Z zG;U@ujkiTL?0GXg_16sW$V*;LzJk+LcJdF$lxXi}6KwpR54*uWe>2wom(Em9L&7SW z9Fx>1oRBxpS_n{he2f)9m<-}5zfX6_Mr6JEL_JX|B#?MkE3xfKoZV*WsP#Mk&u+yS z=noBWnr&vYYzJ+g=tf%0ysyb#t7mQFI>#)K1+l~j7>2r^{(h}rK%h}yF^L6JmJ}VD-F4RO?0>GA&(0QfyV(m=C7xKyD=L+@IZSz(;uD?aF$;ahm)6(KC6|l#8JfIvZ<-?QBBQ9WPWeA?q)@ZM2*-u-$5{gDqX?MRKIiERX0iolv zfe06V*IGKQY=b6+Y#m>VmCZ)PU08)!1Tq;+;3a1#KQ~NyH#1sC@otybP_*|o1JO*a zoVxitPWe~Tlk80wLL*2ijN2N@{;#QP9YXms;4$G}-6Yuh!jq@HpXPZI$%5(lLXeo& zXu_o!1x7bqoB0 zLa-?nHG`6=uVi(}Y6P0eedWx@IIDAG+59eG87;T_s{a;2%c@rCAa5Z4F9`_L@R_32 zV4M(6k{vDcSih${N5sLw^OdIaLrQ(kVJk%Llb{p`oF8%)YnS+dAg`tsBY1rEF87Yo z5WlogTT)p@1s?irozTMsxFNN7Ji-}=} ztn1zu#Uqb>mXmbl-ZjymKWKapo}GgIRh^33ViN_K{jP6V786npfiNVjzZV8Ih$TdC z|6s`~uRf-SCXhQueH4M^hxV|Wo<&E&x`Tctjy0190U)<1PZ-zIyAnt3+B}QU*_t0u z+YF+<6qq#O{5@nec%K$u#IkQ3O}tUydLbDt4%rphfDXN@4m9VqcDFW4?QBosT9u)t zO=~ROJTY!#rHB0mds1oTEc`FyYh4-Wb}6?#8kEVH+6fW zfMMOO3rJCsbu1J6Ff@EuHuG%CR2>%ilcQC4nltN9#dw6cX?q=IxJ5$$ZDq;@OKg2* z@MEiUy5c!eJdbLYIX+Y6Q{0_g=0W#P@z7*%;M*Q>JkN(`U1X-r3Z_RVzPA&w=5*Q> z98=k}vC2`6t*#x24+eJ~eTx977W*%^X?JsWfkb{GH69 zn7(G|DPT&t=K6fUAqfKP0trqNw5y1DTrVn_@sv!>|R^H+k}YVsC)31}#&4Baf1cfw$SSBfCll?a)mtGVS73w)juy3eL8$yB1o5dHxWGO2Hr# zpPCkEth2ZUsl>VzHH`yRni&W-(FGqQ?>*-KbpHR3Jc1Bzy$N_zsm@Wv%d5HGx9>K1<3Uf7l2Ze zd#uR`f$#0t{O~yMw`TVM!@X+MISz7W1z)2FZ35_By?10`2-V5ZYI>Cdfmlp@24J&VnYbuc_I|BWpD3h8;5Af$oKRZ|xCl2zuPSVKs5Ie_wBc92 zye0sCszoC|}8^FrC^g zR-lo&YL`r}dnmlUy%__v=_Ecs&2Qd`>4hWm1CYQ=_04|x>Raf)%C4C3KMD#@r1L&N z>LUywq6MrFUN-p0)3FPgeg-;7F>NWU)mA=;fq4k(@;h5y`(&Q$@8J8(k-%f{rfLVTac zIG$i7*%zl0Lq@skVI8Sid@e}T4yisvXyFMJ>J_Z^3jal7E76756~6(6hXKNh!5-x@ zE|Kr@78mkPi;Z~1q%~B1qMTg%sK)x|<09VcA=OH4tQYwnAm8E49g)w+HXqX9o~wMs zzV320I$99h5Y)n7cjZ1EY8n8V--?}xPDbHjGTXx8S*OCI#n$0!^nD0 zoFER(<9wFu@7yAbvyirWmE%ROc0uEZ#noOhnjbDpwyWPan+6?8x!Qx&$c-A6m;Cva1Ssgc(Sl#+Tj=e^Z8PYr=qkp5Kz7G;YvfDmGWCt)_yug20KE3e#f zpq`kmk0X_N*$_#M4D(9@t`RFPaZKucRfz|&joXO~EOa{zW|sj+X||szuNp?6b2j(( z3;=nA#{NlgQiGdYpG;;Ah(lFpR)nJ+f~O8iwQ?t5y8MhzgXIDR%?>51-_Rb#OHBwQ ze4gehd8kh+jE*r~ZUJ^7VnTQG2iP>yh+kBk9#*>Gy(62zN)WOBdD?S-EIMsk&6?$H zZb#8}_IhRlbPA9-C6m35g-l(s+lyIsQQMiF6zR5+L`Bbo15Qj)a+TOGkAXwtay5bH z%%F}xBWi?WJA`LJ+DJiN5s?a@lSc~AQf9z&Q|wmwlD{K^{XRI!ukippl__;Lux-&h zvrwDoy8L8-PGhNxujo4+qvXZ5L^6Xrz2mRMxiHbV<%M}tSgJT ztWKRV(oyCvrhrSVDb?i5(dhdY&Sz7e-Y|P81R)_2Nntj$7Qd>|FTWIjRaThT z_#4^BAX>BC43gc*i9Jv;nd2*ebJ!r(%XBf&vo;M#UDly>(}iuDGZf!|8MUi6_`zZ| z5@48}PKl>S_^(;D6!}$*0g%d2Vc(t!&b*ZVG7_?IQriveay=A?E86mJ=!+f*m$Kw0AF zHYKJ~TzAZQm904Yggj+Rmo3qIkzQsG0!Vg+=|U8g+`{wI%Itxnw+@6Mi z)L@oEFUw9hCWYVlEx%G;-L@}^zUK*sD&Xe04ZNz~-9wBkf$u>Yd0zuGm{E=cwKD2i z1V?(X#O|C;x8@Sl689}klGb)1^Ui7D`i(kV3LKD`A}bsx9fsgk^==WsRWolubr% zU*$J25SEVT;00YzVGTw({2S&WzPA#esc~#Ji;dG|@U9z)CS=77xY6gDy@b*RF61Kiv0ZfPyuv`&1SdXzFxcqx8eG(pE z%2Am)^X9!1ANpNwO{aL(D=MrDz64=Z75%DLSf8O5zQO_fYF4IqJUsJs$GXAmBgS!0 z-xfS7FuzajOa~4{He9}@S4dKxQy4a45JWvs^esYPH1RR9rDtablr0Jukt_^*4|vjy z*2&7a+^nWWsn+a@V!BF|_?|tjr?mL%y8WS=D8v@$1;IlEVMS(OKT+xbh(8kJH|eui zpy!<+yH^9?S`Md{g?9xi_iKc2e@Ps$eHF!B%soUubz~6|bh`calowC8q5tZoZdgWG z4CW4xTgqTrjy=iHs}kDr+5c9KgW2)wFk$waud!3|;VUNq5O2|!2^hY$%G0~hbg(-% zEhm>zh;nmWbJyyD(jgK0&Ons{Dym|-5cfpj5P!>u$F+=h9UEuEtG8@QdvpLLNvkkB9}P##bYe>UZ|;<`zFFeG2q9Z0PbU8 zf(Xf+mgipVa(@;XV*(zI)ud6few6!C+r>+M>-yVIM)Ki6pvy&=HH>J06K5_c)^0!*V*DW&_7q^Fh*;HXxG zf~P78?*u42S^lN?cySRE@^mY^>%W6u-P~=@QTJ zUa>!G3;mi*^W2c$QFWCw{}*X~>zAgCuuaO-iPLWW1!P)TuK(|WU!pt1O`YtTZwt=@ zy?&H)uhhWBTUh-nQyBm6P*b7zY7GLMJpc5OaCm z{2MIYx*0!j0eYhqKo=(7vd;3a$*W29B|jrt2ez6G(H)vP@})F^<*#R9=V&P|;Ykh5 zLZq`lv#7*-bXzHMYHnvO zc{tlMmTy^rr29(kXU-88A_^AzMSB6M18GeIQKIQ^GE?$rb!D&RPT}SiBLdt!y|0tv z`|=PM-SWYA8Spkv+1ea8VwPi^#o(MgD7W9V?FXfM9uTY}abNWUT44V5O`(obw-kXr zn>Dj+<~uCde_z}DGA_m}QB-2a-yQ|8PKE|;030JSvko;NPvnBV_`6fR%}m%u9Xv+2 z8d2oE>bTWzZvIP2zWa6fDgQAD&U-{Asf6n{e>FN3@cMfAC$d&#z*%NwuSaf7bf21n zMHYgu9dEUi_Nh%{tcXR7n0PA#FNCW=kvzG_)#E!ep4+}5Ch=0R=3@2xJb#JQ z-k~e`WvgjFpkLP>c$ev7c0sDFvm^``a*_;9)@t%|U9M-sIta!RDHR1hd#D>E zt@6lRUVPESNLOjYTd}PK*hAm?L0$gG4fabut6fd6N25Hbd-C=q+^HQ0JN`iCczNc| ztaVub^@{pphWBjh8ep83`;eXsj`6szJKW`t)`>X&sb+q?J1F^d_ELqVWAcnroAN79 z?=liP#i6ioh@@*87G`4T%WaEt$k1c|{+10w=W0D@KE0+fAyJ93M`j-OutmZu_IH`#kd`V_Rfx=tDshACVMOPBaS8|Vf2*6@BH za`aZTQkjkQ`2?cn^ro2pwcFCRW`r=7YxKyuZ4 zV?ggMT+0hZ>CF5AN^xET=i{3zFEMJ8@o(<}QBsGa$%nzi=$#vryX$)S!=?!)|9G;z zU%~=2o_g+3(}NB!^ZK(TDA4_~*sIlP$B3Np6Q!dh6kcODK=)&#e4rRvdKSRdmx%^8 z{ff`f5Ia=T9KTVE{};gM``9>+;f$ei930byvSYy`wi=SZx6Kx^b^1*=@s{Qoy0&kC zN82#XI$&9+kSG{@>- z=ph^EAgRXn*t16stF0WV<7v@Nm}~%v_kEeE*0gY9Wbd|!zB(DvJL&<5UvZ4gn$}DP z{vjzUpNSo^4aC`#W@p6YwfJtnUX?8o`3|B*|BmY!;r zs#^%SoZK*Tt5490h32tmN86PHVnGT~9I7=WWSc1%8`1>IkI`ryG*SCY=S+!MirlWm z1qe*=be+^aKWKfHL=HDU5h4Fw{X^|egRWJQeyoZ%LgV4Mj`1epAWIcb^aOd@Qm()} zRXzf{NY{w!l70!q?Mbxx`_F4q-}9`U0KCwAjV9x)cugNXQcqS&G}uQd`$OEBq)Uw9 zm8jVdM_mr3EIkLn{0XRg=3CU%<)%FuVX^h&cPt&yg)zmBFBg?Knkey&?2uCV7}9=` zL=ROj_t>ZZZPPCz?KdDE1DROfl$Cz#-puynUf-jQs4JZu6z12s3l3P=20h5eTMWC_$zqN zddJxiqcaZQCyuw{8_NW_2alu7#3-oDDXevp3GdGH1swHJwVZ4w-9Sf5$Z2&f{E`ODv%k#`<6iVS_(;+<0Yv|G8`Qba@~6)sQ&qA_Pd;;xO6SF!uT>Os zSsLm6sTx1{?WNUX=)6+FshiUoc-FLe*!BF*px)brW*L>iqxUG=m@$?zS49%|s8?H=4^E~`8(3xD17g_NMfUDv&5 z{7f^M_AOYG4(1EVzgAKKYji4qud)<1LjjCG+lDInFo~kuGLW={yoH(tsRJ1Xv2M zxUNRmpCV4b+oLsD@MVWXj4iR)ryZ}BQT7#Clouy*D|#9c=waR}NEKnNa6@Khn3L{E zb;$6gvG&j*#l{WbEoB(ed0oha43Z3Myig{XZMa_sG7uX9E=6GIRGyu3Fej18Mw>n*|1nuQO-UnG)P{5Y zBL#5s9x!i+z;@XBmW-vP_!pKIic81Dopq%7o@Gj>c<7lbh)E?jyIUQaaD{T;K?@Eu9&_&4P0ImlbMy>AxB{;x@;o8XR1#42Jti!%uIN=-)u(e^R40jRLZGMpm4@R!fjv1;I=dsoMH-et>5=du@Zf>@O1%fLyr?t~+g5TBTyIL)Z1_X=kJp zk;K)_?;a;BtlqV@iymhqF2D|^9rYJ~E1sk3J+XKDi$V0X?Yx^l<_Mv#+i~9LZ@x^N zghJVveZk9K%>z^Un%5vW2*+)*7maS8WraAMfjAqZUR9b+8%#|96>iKqS0N>r&5OT< zf$?j5s7H>jU!i~7J$d}PYVd5HR4v*W*e$_PX%!nNx9BK!3Z&h7D0;~?^JyRC?}yh&DMj$ESCZXR>XFJF90#SuTqo4csYE9)WdmKU>@9)yZ~$zI4(rMIJ@? zW9;kOjN70YOOH15DvBVzNbTbI1qdVZLykd|m zQd3Sz{!&_qNuMh>@V44wccuPUO7Ri6YG6RN)ma{Wk&_0iW&N(SEN0X9dGy??A+^n} z;&{=M7Qnu^o)Aun!v-gONy6Js0K0R&!Z^YaH;s8-aU`OZ5XiOoJdT9Xx*0*S6_%qH z&!O!IjB!A6b?Rja(Pd{nMXrB_rR+y0Lj!^0{DCr%s^#n)bkML1Y(EKtcnnOOok658 zwa-oU>4Iao>F9H))SDk;YZ zTje9uEC6xq6{Bt&b*=S0_~?#MmC*MEJ|TKu>S9NYm$=aB1HC(y$lKk-3IP^iAYI(?!oJ)E#rlUa+jfgQCQ zAG8w`)EFDC?%%H3r<)YzsKkU@s;W9vG&(&%FhpR50%({PWa|Qqvc{n{@+3@i+xK1z5n#JU7H0JaJZh#jcYQ`uNAq3R`D9JY)2QCh0dW zq;a>?JAR8lw~JxP?DRHt$Ho-sc+q&)3ChYUn#U$5Xz`K3!Hkm_!0&SIrZ+CVm~lGC z{?L|(7RZ#J&NtXpTt@y;40U8Uz0`0Le}C9tOVO=@qQ=N8aQrPFghzse-LfX13z=F9 zMRFtk%5)O&Kx(nV<6Hu)TKBRXdH{as^Xa%t5I+cDt>OR>HMo)Z%cIw}?5RPzsO8da zfH8BlUi3;UOppyYUM1vSFfURfQ*BG>;aNI1q6O|1aQTXVS{%2eXlg3jwm81iS2@{k zrr^f@>C&e4U=(gNU3qR<;6%}N-%Wj4j@mxcbM@EZf5BCDCGq_>W-2LFt=QdpDP?Kk z8~HKu@D@m&#?4ZuemEkw3lL#}2tA0<^!aN? zuk#^Ek*LTmC>x3lm4$Zg1aJGMZ_S-R5f+^mwKQ#)_n&5Hk#a!`7Z7_i;qvlz)ZLlE3-YnL>HDA`j_3w8 z8@AJeZXse}wp1P3H<9=M2qoMH@~lEg`0S1;8>VH!N3!s*pW*DJ(H6Q2man>Q)!ZXt zWy=avwuWvR*t`Hz2#@J~^*8Ihp~Gf|(RN&*>YIyJ{v|`!?rjoLLmw9Uso{mc){@_c zY>Fc?o8XPgF!XO%U5wbIA*yceg@rEia=BLTmm+z$3$*W>Oq~{sjfXsNwX96;B(13C z1m)kf)n%I+?Y@oo^R4W#p?CkyNC$4%F(yt-4Emfs0vsBae{)Tlh5hB!Ky0R`O9>;M0^k zR?ib6O#KAe^M6JFlNc&j~lC@r(Wu79->RS6p*;=Bczn=e)EIO`f2QZdBRKt z8t8W?uC%%h7N4H`C(Y#FO#q&bD}6;O)A$YmP~b2_pf%=Ptxwmwn~$Yt1Wy5@CYybV z|46Qv{EANdv1%|DIgCgEjg&HYK}#&W*L%HjhSwK&detDhuqcr~S;S^q%WJ|#RL5=K zWPJC~^QHR@!gnYT?eO78XD1O5A|ooK%vA%v5hL{8;A-%G=FgN>*HWchvY*_d4>2uH z1eW$@_^&W4<}<&{YPw!^*|@)p@>Q9OiSCwG5NS^RTj=fJi`$0IH7Ju`hHs*^*;YY~ zmMXrxQc-70;J2Hv4=9taNTs{Wq-w-0){K!s-^oFz=>LU%k1mlGT^-rY`P3+%+!i6{ zUsv{8WHHu3MGk55+mI+`MEvqMnc<*QyD^$vni_`;qx5Eh?GNfjFH;9q12Lcxpp)p= zf1n3`Oow5u`cX<#XRq`TzfWeVCMMYIHv3U<_yX9XVf7-+>@ab}E??-31NzT~I|eiI zdX)U>Ht$)a({?8x8T2#>9^mgm%xF$eBP9d!w<)d?2``zXuIurz+q@2ocDC&gq-#I@ zvy!0aV@l^#LvI&{g_``}DuR754+#wqYQq+xlBX2zx3oo~(xWet?WX#+%cu zL#U2G4aX#?8jL%vtLu0jOqfa*H`;+B-+l;J`4@+wAF~Ty6pgJ$ zop`y5(a;gm{qL3@(5@V;NitJBY!Y2aWJOr#h+nxy9Y+qKO#js$CG9-1zSZ#;&~|sp zAA{VXT*OlC?2$kOZ6~Aa`SB#-WQH!1k`U($zT5TVOnRrMWyk+G(Lh_q&r#e;6*m?B zJ1oD_jv2PN;KT=lJ+3DRVCU7~l2@)h`f_XbSN?GY9&&;O7F*TLH?$o5?UBdn#Wp0k;V zu=a{?BH^S6imZq%u`7d_akNau!zBaE9`ZICw}1B_>}UBEIq4i!Ty>>g8HxGot3%_Ewg8AI*U~StU zwjT?e$k&BTT1XgTdRv0LWLs|zR(nfg_9G*YBlRsSdqABH7xo9QrX(sFtG1Rk=P)o) z?HNHvV;H&>mwGr+wOi7Q&>08u`Rrd`P7n0EL>JnC{QNpTHQ+IiOwo`KLF_!g_H|Sw zZ36{BZ2`UFUx!5-w6L&7gm(8#?0Wp{tld4X^KQO&06s=e2|%Ai2|XdYN?Z{-^i7E- zYSVL}5K?Rgx0JCsh~q&#pH)JRffLy*vy5G)nv`fAG4z-IDTOKUQCR$|1V5(b5ivazB0OK z3Yt^sDGPDZd0~LZ5gH(npeiV1sigO?-)uA0OoKOG83a)#Mi#M~QOaPS>hag_%Wv0> zkdlOKr+A=MXeLMvEe7B0%b6%W>p4)zMN?Mc;)0eP=t86=thDr=c=nN@p@nEuZSI%U=9=|J4nQ+w& zfgGcq2o5lv_owljqB-X2e_4EfcnP`4*_T89^6QHB1knn}Bvq)&jA#&L>G%aw>+-T* zoK~cvit7PVoadi_djha-@R-ZD5_?! zc&CJ0+^dlRZ-$jO59bGBf=Vgd6PzXj+-p9Q<>dppqNuK<7XReFl~5_qsIw25bhwy& z)|=wi)wf}KvCZUHjM>Ziq2Y}vGmrJ>J^nllM3S@DG4y*E@KGz^Vw&@yla{L~^3_0n zWY=D!O9PdCL;3;Tet5Wv_}Wyd61trmB1KxjF-YbnqFS74j_HzRDd^qT= zFwq0gJ;7JYAfQIojq@yjYd$~DFgLNXJ#gxk80m*0TI$bXWSa}Is0lP(ZX2|~oGQtc zSgVHjFh7T_F*YaA1PfG#E)`DTp)ue7F3iNjj-zUp#F9@}*UM{d4(svuos0pmxAv0b znG!h-1y)g!LvKYB!=@OS8PRdaHq^DY!yD%R8*ta*8Ey(*sTN!8lAoQkbyQUr8bWO! zv9)yv-kkq_cQ%6IHw%))#?gt>C@|etX`#D{kf$w9xPP4R>EwT^y*&pORCYR+ra=4( z4@6xQh$l)d`ju<4Qf6hgtg8Gnzw|Bcxh;M#w}(&H(;mR*Bj3vDuc_CAw?Gg_nBGhRfewXVnErI=y^$t>0Pg30Z->9oYeewc z@5@LtFOy_n?tZErS~SSrCGl1HW=lDoLg07g0Nw4k_*b%3(E-;KvP2=(+qmtIj-P(K zY*)oBA9;El)gSD7#h88`JL-(X{dnNgyPxM}cXKUCP0;!LlcJYVh$BIKg2wlc;B@c0 z{HZZJBVGrZ37R-sZiMX);6ccMDTS<+zwQvu1dwmkTk%{`$6uXq{t)~t^rC7J3g?j9cL@rylv z5SLqUCqp^qLgw$A6SLcGeAfj!(U5xg4jW>vEAMcY3$aym^TbG<^{c`F&qtgYdhXb` z?UMDYVUBe^V0?{3{Iu3exbP}-Z-NR75zKMD{4ZNWjuH0yaOHfsBl{Dc=)M*sHc2p! z{XXc}Bkx|dSP`G9*T3WveImw39TjVJNE;Zr6XD$fZK@mC*%QLT4SD=$J9zlqjTgjo zoxa!c0_<$ZeetaY%2*N#`tu*&*O*^xGB!SUMR-HEqI|gQTJ(t0C0rM+MOmPGQmag=Ft+qE8^*0C(3n|-Y zOEypNRwYyw^KGZ%Q0U`rbH6n}H-NiqIA?f4_T#6d)^PF|fD4IPAvtLw zGC&9z`H?aUHJPZaR_}@g{@oxf1P`AMS+W+1`hMX3N*}U58Z(XeFCi);P^m3FP2lQN zI)Nvvctb0n_g6XfX6f3%;=bGf3aM@gQ;JR+Pz_D@_>ECes!4)`;lM{75KFzrJ|wo7 zd-av=&y!R%PsJ%kcq1)A6}O9ssY}ql|1RP8TiAI&1V4L&m$^G9n&MPaZxc{=enNbI(D4h?~oL65;f!yFx!R+2J z;4`=dkxx>q3YGqc2qA(IeB}+iqE!(XhzOX?=3I^Zb}pK?HhM$TEA;jQ__OAh(E;P; zKz-RY#?aYq*gC79RNibbiqEUX^-i`bLoq!Alz4W(zc}pl(s{>;^(|$yn0#pBD3P)& zBTj6eU}GpD6O>ynz zc}M;M>|Z+6PRVN7PrlgD)B+tPMc{t8W79V&2Q+7r2d<$bd!IvFuBKVCG<2cCBC_*x zCL({6n&%}pWlqe>ah-%*Ce(aL@Xc#>{$iPe8-OSiB7G^M=-$rr0v|FaK6x>!n}J${ zIe4_otB>owA``wJc2@qmRVHt>1}d6HeQEqhaz7)t*QKU|p}8@t_cewEAPw5gR6HW~ zUUl!?XB8ID`vNi}XxG$Xh-40@%Gyy3SnxEl!{g;&31mFeV&my&jmH@wIsyoK? zvT$iI=UWPN5!^G|3ICRb!4V+G#_YTu~2ZAw7Dekcxzi(3eo@W}aJ z*0ejRWbYvc2=Gs06)UVSG7H^G-uWH1o2LCdT>3N|!js;PDIf8S--Da&&7azVBkR6y zFE9G;(;IcMB zS!kmVxT5h?vN&NF_q%k5zCY{R@&+WW-k9#Y4k)<|5f8OLv>x9>>D_C0NXjZyDM#r) ztiB|V6B5ik8ZmBxL1C6uCfWb!06Ybg&5_fMnF4-K)Euc&F?n~7L2D#9 zp5Njji0HA#h7A4AJDUTWCTJ#jGqUR^FQOISJAkzxfp+vmSJ<=EtAD^xngH9_?3mf~ zznbjmZ7Fj3g|^QfsmszAOK8Bd!^q6y0i+n4yRWkDCBLO)ud@H0zSy3#oKS8sq~wp^ z58~kabKpVNWo(N&SYA4Me!AQcz)&8J=BJmAGr1?&9xiB-{$PyQ=(LOhQ#2B5hpSTk@*HWYFFbAzSxjl1|78 z1CG6|Od;*Jm2ck<-%4xwQw-pA?|tr})Llxrpk@B%fN5bBkmxXkJ3#av|MZvAv^30I z=?nORB1Cz9fWTnQOt+@wCI@=R62+oGKaYRiIM@>X`MZ;rb@`rf*fTqx>S3v#Q~YRq z4#SRVaU7~u4{fwTItcb0lv1M*u2$b zL)|Z6>yYy+Q=^r8H!0Wtnf20XFP~x-uMKj+;TDBA14jR1D$=z@P13AsjpsN6Z;D$AFapE zM@Tk2yKMXh7X*0Qse$q+v7k^`{<4mk z=O9V#0FE)Q!jVJJ+^Vu`Gf9(su?iEj*2Ex@rH4xo5s?`fIdwWr8>wrfY-V~loH%Z_ zW?}DSUSu@#lJabph|6WuPClmC5V{EM#5`+>($$lr5sSvxhdE%?edUXZJGLgUuT)>WId0wtJzK5VQHeb?=S6lUI)C3clN;| z#I~e8m)f!~?D36HJb#PIG_X@&3To~=>bX&p>T2${C$;~&fKZ4s#pLTB1)D1DiD^DDJZ?K+2QLO0Lt1Vc(Ivrj#?HZLOZt2+jNmDp`%Hrvo05dbIuF z!!P@#AZ3l_lm(KB9z!ha)AWobWkRA-nGwP~zJz=4nHwVm3oiLYO2T)}7wmmCE_Af^ zm$Cxt2V|*ZKzki*Kaj&$c-z=~OzxBUW)ybU=R)JPkSAGCg=w+z^}|qaxA+KieAa!F zc((1eIuk&PJ4yW1L)dR{H+!D%sLnZ07~z=?VV&>;V38Ox4yMbzwNEs@ z9yPquIL{ zRoGJbK8ShwJ;z)Gj`Z_I-t&X=DvXG+>uY{#^h*_*XDgO3zeshXT~x5Wj%cY_vUU=; zGntxRSjs$!yon9);D9E29TOa$iygXGw>py(3cGY_u!qQ|MupL4y+D2e!CYV@Hi4W9 zs8ZoEO@4{)b%Ri*BwBS2W{r7+MOx!4vaYVkSb| z8G_h_57`dK=qESRc|CcHkp#|d*3#h3`k!HuG1xcf`u6`{v>x~UbOR5ig68e*ULaK40s$bI6ID@5SWPU-cfgln9{(^*0!9>ChI zx52xaij*LZGe&fg-idED8oiT#y6t*g?dmThA-dcQy{{gE7=N4tFb$U#_xazVhwMIS z0^cbb-_cBVJ`D7;oiH4pQ!`8^It^8rvW%FJS#V>9FK+O2qCK|TR5JCfcu38-v|3&L zdaLv?2CX9=q!!l)Q&YLsW^ZZuO4W?)w3A=7U9iY&d+Dz+;}fGql_TL4{*S^3QG3DE zd^4kL)V9wek|-4vO3X*F8wPT+PuZ)HO+CGoX|0oB`&Y+C8xaN%E?nS~4+Am&j?Iih zPdvn()-Ut_FyULk&R#SDH^l{W}s3u7Nt`c@BNol(Jp#U{Y0Q#?fE~V%mMM00yen z^BT7=|1Aw&zkvu-7u}GijP4xA)t4U|b5=DxP7s=&&5NsxMCbTyQq|dZwG&wa=T<9S z@VL-t8s`oNH3QIR=YOoDKETgwV-dr6(W~{-NkV|JOqs@Wptq@;;@8h8Iz|l<*e(va zLQ-qH_{1nNHN;~gZvQJh+&0al;A&ZH{Ve_z7`}>9ettNsFH`$a-$DuI%lv^Tl1H6@ z@o2G&uP?Da*y73&+>hvY66Q@4sS6j(xW#o#t00fCO=A8H;J0BlPfbrB%&#&FU}?b6CWH z$3=a~{z86pfjz17*5m_|kVQQ%;99Eu9*VnVS!(_G{vP z7?qt-DlSw5|7~hw1twk!Q#G z9m?BDsF{lCB&-!;3lKgq{R=P|?e~7Oy&5NAOI&A|V8=vQTuyyV{ z*2COv#6c0G2OqgRt<--b5FWRa;~y+7C4eX3FEM(3Fc*+h5FD+f7qGTnxT} zVX*dz=o@yNS@oFwq?oepVqLutIy`FYUe}x&f|IosYeN0-&;C|#_Om&%gpz&&;HIQH z$K93F`IwqGln&s{N^j@rI}&_AzO(*<JxK1+eauGf_h!FpOxrQ zCMz42W=-{H%t)DGDWpHm+3K)SC9jmY9o87A!Bhy;30%)CVtF&rVM}edf?8Nj z@78hMEu7>LkW8vI2k~Hwf&RS#yoBfGR#16oHp57tDBn&FAN@sS&6`G?6Vqc8jdVe* zaW!vX-{NdcjcCgotQ`gWyO4OVIcf=mBjc>}6U|IyMK?DFdf6|Fds`3{D2gn{EF9`f zQ>h^3E+lsqT5aCf6;>F27z1pOBhk0K?&h9Ph<-Jd5P94*2CqsXKf>6A|Bv$S8}uZ6nrnGW#~x$V;>bE)5$?aC6P{KqpDi1E#zD+ixi?Z ziH=FbNJ+&nEjSKPEMtG(W+YZtU2VH$SS)`ZRv>+}gI@mfw%xc=(0wW`bm&cjTk!KM zN%(*4tO~g3#KjolW)_Ezy;n9{wiFAt7OKT0Jk%hp~q~ z(jf^rGU4C}`1%#u>Y138#eJi`P;uscWZ_s40q&Z9)c`tMs?c#lPoFRzh}kinG=4ND z-_3-WG0}hQmIC=dto9#h$S zi)kd*?~ML@Uw?7@N`c{+Vb#s065M+L=Bx0Vx)1-e-&Ki^H;EfPWc^B6Nx6F}a{u9f z5+nqse$ay3@7`h|AVE6H^W~mhtm{~cnwGq&?y_PghdH&?`au4d_a-G(Et}H%*>l6R zH}t>?YG|4UOlA#}zpj&%HzuaVtN8@we>(DVAwFu3IAm(#uHpKo%4{*G&@kLQUILcllIo4a^xftL4~guGLX zArR!>7{A}$k@>wk`Q;C|L&<~t$u}-bgu)}m|5@-JRMuR)2zkmF1TiIhyy!+$@2R`E z8DIzyiqK6SOC4DUOx_K|1Uu>l5CkU{Km(EuhfweQV~MGU@A4?RsEYWiOhw(ucbR6h zA=)kra&tnfhF{w&SoXZaNw`WZ`(NI_C?AR$Cb?4NW+N-h@J+l`!J72TR$Tm#*WFFbp1J;X3E?smA80Z0Em+lw zGqlOY4rMDuf+}=)x#9~<=PC0p(gsN;N%qH197lQQ25`2j1)T}?VsYf-0$HjI_xpHn zP4sN3v_(wpV|bh7EH+n$RI0B;Txu4R6sbS7Iv+&Uei~nQo(-R7NJ?>KgKhP{FhP8h zDIVke;z8EZzkGQSA_E_(G0~M*zEH~ra=$1Y$|OGWA^4mr6Y@|z^2&-Ap#+`+f0V7-%~Ix;<7A4V96o5d? zd)?A4_L}fxC|XC9tsi+Jr1u;Ml1P$LGd^Nc?E^gDfH}3PjW-?@U)t3*z&%8QH}PdD zrgX<5Q`|{^VL1x-umx>9RRqj zr@lJ+l^bP~8$*~d;|@Tl5(~?1>J`I zJK_)JZ7yMl9$Zzu9jS{gi|vU)M?cdeZ#M5;h&lr{n|O-@hmqW;6noC+i!9c2l1|}~ z&Mn!X_(vK9#h$*rR3c_t0x?zkRs5273pKqVo2}zcta^saeGG+RQV7#ONk+5elr|9~ zO5fCDe)#QGehSeDFP)jaSb9#te&9$9bR$tlEl703(=30;Bc47f$P6_$#sRG@+_;iF zX9BAb{S_0)_!efo!9O8v)k9wya3f%g_n%Z59~L~)p-R){`W-cKvGnHu(R7w;aW-wU zP67|^?oM!bcP9|sAuteJ2iIW1-3jhGxNC4990I{*aCiMC?>g27zz>@4zWb`GvqG&| zIn8-d0b!f+rhOL$hK{(2)XGUawxpO>oiW5c5@+mqWoAOTSL=m&qwJqd<+f5ij3D_1 z-!Y_6aMZUo0}Yp?2QT<}m*k9166CAXKuqU?NPupK3Yu+NvBLzPFpnG;y{gD@o>kA8 z&Wo%<548JL+i~kH33BPc8TUx_uRQPdh8-1Ny_wkm-w7)`{DpDv>a6QwkS$j04~G@z z>m^h`=f=zEKc>8h-b8);m#}$w{}-CNfLep7u-K#3ps0d(Y!#8)`2!w~70L)k1jOGO zjB)=C)kMHL{4NO)b^Wd4XJL6&AL!JFRE%~%Po>yB8k!J1;$a8l6`Pe8B8=zFu)C>g zTd6?wwF&(>ovyDIW`H@yTM4(AhJ5RP#Au&$B)GVnrau0`%o5vflQ_oos;w3M zwrYXAnD)5m3H1X{<$RfL1n6Y4Q-K?5d4~|DVr1%%fVA0^M1VZsaPZ$cQZUi8mJ&vj zGr%xJg0U1CEVO$0OP)ve!<3H9Ero7$;0{K0FUOx;1pgei61Q>Td%5#&uZOW~G<19u zKOfyLcVUv&{-Go++2vGtzj(h35?rtKD3{Zl38#S8H*1NWm-dl^X?HZi-B##+W$bNG zb$R8Fdxj3&>--G#J0qbUH=*_0|1m_WiI$=u@6h@-iIZFhZmAV_>|l#CiP_h9_{LG8 z2g9yNr9HiG)o$`AUAFq06E&x60?G`h3)7L=6(l*R_MR%-L&q(0RPAc%6dO&?EUr#;p+XM66>TYn_mvzJn*e5B_h39EBP$Azve z|LS(rzDI&%GEMX+#`d4zApUg@iUUoeJE?M7iny>kIS!aEp?{PP&7!@C`C{{V9YTUG zM_;%6fp*Oa9@)0NUS+Su&%1BVs6~b)kNe`d<1&5Mk$dG~>27TBSl@_6@QP9-$YNI+UnA+Y-cdQqfwGD+j zsq#PWCc%rAsG+P&MTZDW$=LISa&K3Tb~!3W&-r~F%<_tStT}`J+=u}&*+appMxy?L zZBDc5-kO}_fko8__3wG0ez|TUkU41q+&0oNr5lf04pV4N+;Z$-Lg;@1l_9e$W&8il zq)3`pzjI_C3CNw}{15Q+F!CUc_VhOagIAxQ4KMf@9{Z*ozP{XgZ0_IGpXOlMZ$0$0a{ zSnHF1Hs2#7YC3w3kYm%V+jq8mu2A%0NPPZ!ha8a_uTw^a&3Y_lrKL&3(pzZgbcQ(= zFP~V|eCP!{o$Itaquu4dbuEPw32T_6jb7*V#83q+O#_69E8wQQL&nFYSS6=;ubQ_f zRaaXtJNi!BzB5XOS%w0C^j?!Vp?EDl#`p|*(bpIcQ6$(Hp{Ke=M;DF|*SM9-#B1|G zmaBgGELlP$H)rluxnd?qj=6VLI^6+1uS+agI!!B`GkzCjTy)wB!HU$~P~EJgZR1G3 zuhb^OHR2oJWgfcXR7OKv+(@$Ep`A?VzGsgYtERG6`-l2sdUZ?PZ_JF%q0l;)1khw& z=zjO*xNUy~ok_bx2edt)j;jXge#LF>;x`>B!M_@ThXD=rSO)EYRtF;@@D?;vYaH;B zW4ij~iI_ooy0izLv~vs9F?{OR|14Bc@T%bno@50CD$lJ%xQ#f|-74l^xN_#pliG_d ztihGB*Uqp)Z`ORz={*)5Qyf2dO4A@YcC3ohi(SV2z!UOMvIKnQ@SIv{^hI92cIXPK z5iQBCogU@Gon_zel)44hGcplOMD%DhObZzvdg$@ubY zNMyUR>)#NH`h>36&!8I=hZ2;MOtBYKnb|J9%aE_ok35%Z;YAwO$mk z`vhG`-R07iR!VtYbjix@6Rnk2iRedEYFLPZXKFOMAwCMe9d-XFSPYjq_T41FRSN>o z^Fu!>Q=ckZ7Z;SPhY|bNZNuqd5xLL4Wu0>?2GR*NmQTs8-!^*iFNNIxEGB7A`RB-~ z!1H4=$b~Rf_tw1K{Z-x1fNF2RKK8zbBp><8-Mms`ZcJCeQ!pf?txA!<1OZ^Mbr}3X zKu$XOh=Lv8jYHZmp5%_Zr~^&F68g(cU5D7$%*g--#b$dvYP0gSrudmk&&^U(dv+th zrQ=5D=W7-Z85h>`hvg^RfZtlrn2KE+d2E+ zmSn7tDl7b}D4~YTn~VmFwEhM6b}S{GY7j2}$5QmGx^TIQ5aP#kVu4kXv@HANW=?dk zqt~e(osqmD*xE6vpFW|3_+HcF^1h(2qfz5L1GRw^Ivo5{q3?BlQdFa9KM^ERD2EwS z`@L!%J2_-_4RUju-Ck>Rbe{ci~OyJWjv z&P}R0n73NcO=#_t^HB!r+kCv_PY#$`6XB~!ge|?i7S`uv_!lT6jsImMSL)%=jXv)< zxrEKo>C3+yd`OF^O)l!xFK4R&B(Qdq$1R#_)Uxxdmatj~S5G%IguWj4wX&ycpH!W_ z)g8lKgsa_Mco;gAu&LusN}2idX~c`P-Vkq)hY*%@?-v5cx(7qzm?{zt4!ySyG<^DxoTzmJ0G@eq-&f zbk+fUXvMMaZhC3{BZfoM85ZUF!cfdc+fQp^z9F#NK>u$+0@3hK-|P%EaM~=8TTsP> z-qGs@rh)_rjE4GFE)y=2lpK&ugdNp9hd4TLe`=M`B-*BW?`Waso(q@^{l48>rpjV| zyv??QRy#wrI6V_<2Ai${A&{l)Pdu-j*3`dIQ~)`Z%{j%kp%ckp|E(W==qIU11LFd# zrsrYSLr>uu;D+5hdpd_b)8S9czQS9RqMQZV6ol7~r%worSmg_Z9#MCMzf^G2LCi&} z{h^Alqh7a-k)nabeE%uaQZ*O->=_Ri?p$%?GldExz#B>CcU9DLgN0BeIzroEfML=%raIN&gCcy^Jmn-JNe&I%Z$LAu7s$Hq?k6 z_9sj$fRoTbaQ~WzKV3?$kx{SbxxE9=o1IhTa?m9o|7-cLw(ekSdi? z(W7Dd5g?z>+Xcy-a`n_zI~lJ_a~>-Gi!Dil@3JW~O^{3x%Z3g(H3;CdMj(rtexM+ja#W`ATQ&~gSf!P$X#lA zng{KAHF+Goy?pLeeEuzTS2HWRiuhzVD#6!|4t*ZDp|?Y0>HGAV2ppli@`Q^UP!Zh& z!P2XXl0JUCF~}#S&xyVR!BgH%ZDUz@xHCNcx{FZ;$m+Q{kB79aBi$So-i8F$8kJdU z_u}A3U>Jg9aH2;Fk-Xv?P#<3ErcBs11>_G$<*b(`ch-`v8&2sgZ0%8&5p5$=Qq>2_ zEUd`H3WPQ4`*ec~B!OK|%Z%s(blVIwsg@%4KH80{AcK`5R8<~X^eK2O)WD>Vl=eGA z?#Q4Xj_9z}{^bL~Ju7oq^kMn*s8Ya8LG6Zr$FR?U`ytO)j@B$`#)=<}h;RFb2&d+L z@_wYMz8OI?w~S}Oo}5pZUQ=lvsj9PLvjzU0AMzNonL)OO%R5km#Ppb4W-sZf51|FkX$~ij;xCm5kQz zACqoXP?98`8XWGY$>jw}7U;6Ik6~{3y6O=i0{b3DsF$Q*B>f!Je#O&SA#{vgS4SYoCx?XJJO*^;UvaCjPt{{ z`|ZFku;6jk!yEVL^S?mI(#5}c$p6}^-o-8g(W8gBrsj7pDf>}oc~GWPzb~EO^547f?4~l~e_OH! z#{45E@}U$3*B{&_!zlDkZ*|t7*!ccJxfg%mBsB>x;#dAv{ECL7D#rNWaks)$0v zK?B?6gWISQ!4Ji-Ik%N~{!C1GX;}WS!bO#31SG@5>R=vqj@INXF5_rQ<;~rMv@hF8 z<TnspFm*$;cJ&C5 zpXUW!L}WtTR23L{Ym=ItHRP$meaPo^IuCnk0r=45%vi0>E7vILn(yVy#RR||iF${L z>Nli)>x-$-2;UA(ABBBWYBLnaNRkV*M2Ut!C)(+?Dy;Rd1`8$nZ0qq&o-eg~ub1}q zvsaPaF#gv#wy2=NL$OQX#D7*^nnTn-LHU)*S@8|x`mvq}h9nAU(m6+3!ZdkP(9CsH&q^KfHEwBxQ03{3_VT<;qH2lS z-+Od&YtGUH*VuDotuIvxFQi56`@7RN;xn{&0AM;Ad?s)H{vj*$G|7~zH=KXkHCZA8lrn+3#w zy0ZI|vk{dn*()G^#m^^vWznW=vE^$Kx>kX3%8hThu%f03je}{kaF>cUQyE*M@eQkU zhmDAA@+HfKyR4VQTubQ{VKpWz`I|JKpl^jfJL33zzs@?HEmZcc)M22lI!JhK-T_Si z@T7&-#qh;s0h=(B*xptM`*dbA8^&C9x`^@(uO2^$^Z z3z$R)_aB>k=d};pQJD?hTR)upKOp`+j$Y_TkjZh&AYkjU|qrnD6oSv6*e7+O3)a`rGr7%#w5vD|5OK z9qVDMcayUcV(U$$D_YJWnX3^zv}A|%oA;EzEL|XbjEo|hAiXy~@SK0Qi@qoB{Zf6$ zexM&A|M!uhoU?kd2LetGgmH1OF;Aat1+7jZ(Cn|LKBbPpDC?8*3^*7BI3{uyo?_ER zFln|cpeybhQ2T~)67Ptp%OGBX6g91Le&z3{^G8*S%~Orv#CZ7&l3WUj)Tze8ik6qb zv$7QI0|!<6V4Z}lee&wIr)HcByxMwb z*xJIV|MNb4N1_vV7R=9)CEoc+6DPn17iRhy_1ID*bO(U&EkHllgW>k5R_yLK&sf*7 zRt$5J8jZ@BnHIWt&uvBGgR7V)xXomkJiyoR=!YfZ?s-~H10#jYK2-db;6}Ot5zR&A z;h%=}T$Wr-xu}lYV7iV58@oL>R(L|c_9qS}q6mb&bmHA6CatS6MpJlK6u*3)_SkjG zYZk9SFHW$2Ef{fO?y#KvuqeOKCcOA>v|J@BwAB81#&B$Y787I5>-^s{R z)|DnanK_b@mh-b!Ng?H{IE9oqhPrjiJ!7QC3STqxMyH(##VuN`qvSb8CI(Nq>KTWs z$S(_#DUF~RHab#?$)|XF9KLYUPb5xAGfr0Xzw(`zy0l{Uaw)S0%0ps%GhM$ zNHQ>#xp~B++$+eyM^d1M>m>WDv+N)D;BP(R`Ixljd z%HWRd3!Fq+f#x2e#hSki^>cz}SB-s>p2iyd`VNkv?U{@i21Bsghams$2s$)wxI#VL z`x2RL7nd0I$(N{?ukGp!b=;K8Nn3%c5k^`rXzZ~rUpxaS>lk^*3`_JW6PaYHB|4Bs z_4n1xr34p+Ia%VUH0HJS@&y>{c4WX3DR)xtM4gI0M@CDpDqY8&=!#9&>Q3N${yof2GzJ;~%d@PAI7+zGUII}g!Iw7Wb z>k0~HJtX~9p@nw2NHF-96FxH~ltJaFo^{;XI@|*70oZK)c574KWx+Rx;0`= z^+k+lK0yCRmdSos0BWn{x$l4O0M{t?yk+^(lZA1aG>?UEgLSs}?_lawuV0}cXHdso z+)SXGMj;#=!lH%p5j7j&2je+VP)Oelpp$`s6!LZKhKoS{6Hqi;3@!?=b_l9O;pnm^G^rvfRKHvhXTMBnV zhcnUO(-vqun3XP+(kseYHwA6A*!HYhhYGAi@08^K>+JXk2)}^N_&qiO#FOzQ<~$$4 zLb5t|@=%EBNk=@C$C0x)xOo&0j1HMtE25*Md$Lb!fuq%r5Wps^u=?y(e0@+c3JVD( zOK9P(M%vxNGjPOSf13N%XPs6>y}q+GbrE4=OqA1bPu|DTQ607N^niVjO3r_M(f=o& zqt+Lccr934xFWhRLok#=2)244xdCr*A)VwBVbhxyRNSpL-Ci{uTx1{02RIQCmHKC* zo(j|aa`Ei3ucqCHz#NymR2S05UnL*NDJRdf$h{)zNy<0BxyUA*r^!wEQ%2K=**Cfq z!pgkP$jGXhdxuu1<(GMqJ~K1nmHHjEZ3&Y5oYY+=*#|gXYHg8L&$0>UFTN^*Tf;Y$3geF{cyw6%{HYa>|R5$ zm_K|XB@|?XxDBC<+Jw|HGCJn zId-rtHtoSb_Ce=6frclPjnaAUcOJDh`AL>{{bOLf`$FzF2keWoTxg~TCeET600m!^ z2pmLWQBxgtmP$sY6E$eZ_eHPKyCXPS-}W z>D**9LWf2IcTdX(oVn_qr3QXL4eBDEu(M`TH@)R`B~?_jcFkG=PFaRn|l5pBE+YBa!w zYDyPDeX+?!REc$JGZf`wirk5HU#0T{=@T9pq+up!v&Mvr6ARRdxII)LS+DQDOJ^%* z4O7=s{r-2NOKzg)mbqOU_g?Fkx?uf#H}s{+rk~Pvt&zKNe9(4nmAS=L%o^Lzcwx@J z-S+5y=HE?H-M@;7B<@EmD@3t!v&39Dp2=tOSkn029|e@8u{_Fq{~l8%#?Gu%Z>p&v zrO`L37zTN$@lq{YmVh!G_geWS7M2BcH%=? zNlD{KW5UhB4sg!oEF%doV@=merQ)v6y;jo~qP0MTHjJ?foRI#)U_s$xB=e-ewA;2x zBvC-Q$vkcT`GT;xh%1)BAQB{1CcsMw{LyYD(<4)+1z#>N0!Vu0Sm$?O7#*L%J~z;V z7*~u0mt{|*2~uLeDmt^xc|2=DN-uT)+wVhY(%^oIt8d!Nvzewn8U>CwtX2LNE5o^U zu$k__4F(uf97owNP`P4kzKl7LR{b(3<=EK9na=FgHIs7Y(+Z7L3 zWP8SmT)*tbtbk-{QA482kko)vDYhR3EF~aW6xtXh-Pnl(mkCd7fKP>S*TZ>^iyK{Q z?zV1HDW=7E7MxYdpVvXA#Xb>%vhx}C3qT#UZR;oGo;l(mzFNe+e0^d$8tM|Hh5YFXXb8_~W#Jpx)kGtYxi(8NzAhAU}Id4TJlE6Bg z3dOH+ZLQfm=044|$6;=T2Ha5~o#MXZ_nlCOY~B74&W#G$=t*iqSzkROKob)B zNm7!C>s&`>VtiB|E>OLRQaIj6UXpDH$z1AIbKU~`3-j?9pprYkiU*$|9y?zR)+h>d z7+vA_HKH|4yjwU9L+yv{A)dbYO~bucx_0mz`)9LJaq6vX?bF4h*!tnNp|9oPptpk< zJWUW2Ly8(nT6-;ON6hq)A8Z&Orz7;uaJErndd_J zZ1qQ_!TWTqsg2^o-ert(w&QC;{Gxt7n;lu%(AWrw)VTx(zXP7DA|J)X4~}8C{`BCy zN>I+d(iZ>W2lPWFBgxi?I5iB}5Gut0{{A#^2&v3X0HWXyx_DfE7@%w5f zc0m`A!RFoFHyc$nsU4uG)6P~WVpYlfiL>#+ut&ziKxXNff}0PM>Y(b}jb4u%4m!jF zQ2azqB9RUr4N)L7gL#Y|JKN*MRNf{SiMNgpx?M66dpE!Q$~L9)F)-9noO}MQh-Q^) zX)nkiW!t!T+nBMb;Q=OjMM3Xp*@Z{MPVMxyI=W4_0mC0@5_S@HX8!LZBmrssddlx- zTArm-y}FS>(ESsxDY35QGkm+LuMi%NpKwsoJr^w?bAs+OHfDXV;s5K*Z}*a$GwPW) z5w*ah$F7{)Z)$>@lM_HjT@rnlM&(8z(#}U9RcsnQGgc=x{f8~V&M$}FwF;befqCC* zw=?8J)#IYSIo*qxpX}Z>%(L4;F=fa#gt?SBlCUyU4$8JCMjXB*H0DQHHqJnspOy<0 z6$QJ6GrSS_#rw;n%)ByMins6_oJvm%Q63nYFzvA}Gn}0!n&kkRkY(^`1#_MxrfHd1 zSfpLsDGwBt_VtD`NSCs;X|#_CG7Klyp!LX9tRe~OR>{D(Q&qTIK$jl(A)az#~RSAG3}K|<@%HuUd>jd}y!ibX2c zH)=&HMJZsVP``duzKQ!(aD_Vtn17?+lEbFZTlhI8SXKowoad)Y1Fu88t2{^UPKQ_A zfk2N`EnyfxB0v0kuriP}TBlp5&zTYaBN0ShW8a6Ov5v<;Gck>wbmomdXV{Vua&!-} z@}>K!-obM)d8czGrPy}H)A6lf%?&Orb>BWh)V(2Bdw4dE`%wk@S6IPx)5wTh%$7~i z6$J|qK#cF|(_$>J=W(6Uh94R7)uyyqKJ&Z-9nATfR>?pExO{8BM7{2AuU}4o4}UN9 z^M4q=DO_8cI-TuZv<1blKh5sVoxW#h1 zq$p&?-wUway6LR+%UG7`H3PVEnq3|_$N8KQ1B-up?dW8oF0jJ{@tdHs;x6z(a`6#$xGOI zBVs}aaZ<*acOeTqB2Ln)LWoVF3pUWT^F(zI^F#>{R9Da}AV@w$@EmFXx7FX54-%oq zXyG|TKuhdfBd>@PwbO9>67DJ}S96zov^ zcQj0;Ae&>n(gu|xDfBU$IlBTY)4#O!9zcGIb>p7A0{D}_=}Y068Jxb94%7u6t;iIS zI=xK@Oc;!*1N_y8QpY^`P4;`W0Vn%DR)+%b8;}W7h4)s=c?N!Ed7;4TD8?Io9o>M6 ztik?9S|Y^B@=9^B!eeX&nyK^`=p^L{36J@+hnHZ+h=pOYxyT!-drc?-ht zreAwLIB6W{E4*Fkq{up=193YUm8ulL7_t?6>6GsUSq+S^r=)(m$2P01`)o!U0jxS_ zo*S+VxsrCFF4x)3@{{zA*i4um0p=a}Xc6-Xgs_WJLLyzRm6`mq0ja^^JA>j7AIiB- z@WZ~~q2S16ukL`}MPgc~dCsEUU*t2BDmP2Jt2JQ*>GQ(K&Lb(M{5Jo43AzHu;=ljl zTPURV0(;y08U_Uy#%7k{Zf^V&UbKfP`wHbPI?SA01UcbrK^#kE6EdXCjc3Z-W|%%L zQr}XZsvk}CU?jK}Sh(~6wfwkPuzU7k zwyPFl(R9|3ea*~m1eQdL=V8#tf1eLL2g(-&90crCE3^zt@06+pThfFwCB%fZ)zP@0 zZSXJ=kjxPP`Ggg)8)K<9RC`+GXX=?@t>RT2U-`)qc%$%kiLPXcC|0k9-XS9DXL=9e zLs)xzj&^Yxfqteq;qnrSx+ntVcc=oU1tqw@)IrnEoozYvumCCm{VA`MqN%P}Zic zu8HVA#z(#c_FnEM%8t@fk77|-^n@njUJ4I{(e|6NgrW2703fnYe*R~DE+ae)AX;AS z}rodo{aK zTpu-y-PiUC{uUe~(OKvaX#{`lv0)8+eQ z1)p8|Jg#%5(riD5%U=Z)Ajf|Qhlh>ICE&9|F5eQO)-$_=_|SC2Z|z=FU2*K81&hNf zGpyUunR3V^Q%l4&tzgsAVkSl=eB^jJrj9CA&AMGuqf&_KZlgX7>UpDEyU7ikvp&~j znoQ?yQvWR?3vV_cw^X=BZv+ZPD4!yU@zGOR>twV%|3F<10(zrsNr6YxQ zUL%=6>2&Q=ZsFB`=HC#m&?(z*W|bfjAf{(&70js&pP{$Ck;wA9c8^nx8~L*}Tle3x z8GABA;rhB)(alQ6VYshn7UUcjy1Dl7zBz3{mQ8B+82d0ewoOLSd;EDuG4ZCsZP=D5 zKzpW7$eOd)*Tm!s!$#S&UFfPxbETs3#&vzvhcQeqEG!+nRuL;ls$PnMuHy@{rjWIC zvP=O%)>J(^*{7S-O3S)g(`@2nr2C(VZ7Le=1_DtQmKQ|dg=%GIZs`S=7;*inq^DEX zER_A{EoHes|A!-h|IrbL#}X@q{u=`J;r=^jHkK<(nR0ETxvfqoEmCL7C#Su0%okLt z;PX&vE^9_y{Hs1H8FND_BWcwLPK--Dh5e_^uf6Q11_-f76MtkG>rV`ZknQ_#a?}g| zkVnxn zZ@kL4KRDh;H`Q9>l9nCmu~OI5EKc^mhHxiheo}}P@mQdBuj%;kVIWgMT0--)s;shr zwgL1?5Nkg}XG360@Gj0CpV7Fp(ot$kzfv_2AY^5%zFRDa=G$Kd4VHS&~Zd34ZBc zAo{rzW|`5}GRI2jRs(&xt#|4j@c}=;;#nFqCC94m^H{i!nwGhh;%tz7)=V6D3ErtU z>T@6CX(GSP~%anEI{Fp^0BHRB`c7YYuCS3T*zDM;tHA}hYHYsq28IpxfYQf z-T_>uk|i8fl}~vsO4BLcBcEzkj@|QLw{*j;k7K;E!wETURH;afFmZKq!`P=jI{QDQ z*=n_=phm$&#D%l_sT?6bQjgIx3Om@Q{hr6A;6oEGd<9#m)%2SG^Y?W>9q)^CzS4~~ zp(6}S2O@LxWC2u{b^G@_cZwLi$t8WAIz$$HJ$@xG^ppe zyC6C%jo}PK3h!IA+pXFDbuoou2dq(f7<0)<&72G!mJ@<5E=OEQ_N!FI2iWM)FnOk7 zwkA6~Njy^qlLm@}AphG19m_r@%MVdBs|tt)yZWEF;~7z;BOD~|w1_7@#Zgk45`|+S z7mm19-BTk`e5@^NC+&&4Z)L+Ejm?nBI$(nooD-cVOXI0eMI8rua}JT}TCL1CE=$hM zO2tj8%ndO<<&;&D5ZdQ2qMA)M7r@ZgrPfhWVx61KCY}73o9Iefez5m+`Jtu5-;(Nz70R9ewYORw+nxLX4W;VgmuKOUP3?a9+q&U|(+$L>p1 z6b|EB#NrqAy$&Bqu#Z?aqCBmIzO4iNww~P83ucfBh}EoA+>wF2wjb^i7Ta}WxlxkU zfX2et(L$eaXPg(nybiBFY^U)_{h8nLW@nscfR<0)_waAVeIA2nB^ zkQp;uDc`LXkqy1dd|GEtoEo6-!|JM4FZ*ur*=q`)v-dpSI2ws6lX)Z_Alfe~&yW^Q z3@bYTXExA`!B`MTfUGvCzpFo_tN?mElLr-kBQXy>S0Ce{Q4DgHUVJp}Mjn>KDJ?9? z2F8>x&Jc?pBugJ6JN+%<8kUC%ax&<$3%xn5e9N!}bA&@w;qTO~;WWC>{&9;@+Vjhy6Q%puuAbk8lgae_%&V9UX&|U1(2mw?T1`lj z9ndZ&@a}<*V%(@Sq=6s6Oy{N_4)sixx!m_AwuQWMcedKpO>Q`wvX86lM)@s$6|G_~ z$yO&BuvD~R6Z{r-uJxv}q1P@y`rW85$RIiB*bUmGQH;#mNk+Eb6Y079#>T*+jLW1J6|w& z-5xB}3LD_#0z=0E{L(Y1q{Pk#+-P?ezCn)06^Nqc)&b>K<6OZ1*ZqqpqzWU)V_`9E z=GMQ_`52!0Tl*$-*i2v**)hV0j7Fvz9zJUUFejDfXqNpMvreal93<&lh%eR7s18E; z@!;{MT9nw+Fg-I&B>5?P9q7-@Z8r{!{uqdH5g@}X5YQY(BPE?2#M& zi^=US!CHlC^wEjA=fNKh%^Uz^UH?{Pz?-p zK5K)Nyxwn!nc&BE7y-hM-TM&f%;~UJcRJ}MV2_hER7RKLXLCHdj*S2_;<2|AT;Qs| z_fX7&F4M>AQKTVMKyDk6J=)N?v~|Mblqi3!!@%YTFqbV77*IJyAABIidK%3crC@8= za@y?*c9z!&8uDF4P1W`EUh$17EdfIHGGUf^ic@nB`*!c+50WXK<*rs{9fHMuEkF=I z|DRN5!Tq83JZ8B>>=NdDBG(nMZ=&C0H1UHZnxV_>^tr5YJpJ!Qh2srw!sb;HLd|E~ z&pV8t$P8BKi(4`XNWS%jWZhTr8_P~xpbW|j4t(er-!>rF`7vr(UE*1ujRQg4>ZKmP z!?4dnq>`(MqCJ{2tHN=`2}fCxDNwm%fizNlC#Q#j&_^C?;qcoOD3 z_#6#f-+9*bA#b2{l2<4$^euDLb+gqP%Js1Ue@IG2(xefCmx zzK6vPoO|XTBb%mS|F|3kj(9L>srLmC7)8F+8J)~cMZLP5y~OxcCJp?nL^}!DdDZE8 zS~w&<_mo?)F3n~mlkSbFOdV@k@gnQnh+CQHV=Rbr&al@1# z)9Znp*w{IcMc%Zg?{3x6F-Y`V87R}4u9R)6p#G*p!^+6i_;k^_951(Peo$5pNT&u& z!BwECsj#!uEgLhN6(%Mf!Md??t8OKmSeu~a_y3jB_}BZq@Nj_1@k`o%0P|Fnnh#B6nszo5 zkdzl@>a(bUjx?R}i6YkAo6O>BTg_V08(`xbUlUYe=1jN@2MGmr|2s3F0u|CHVrAp9 zR2V$O&UH_@TLDa`FE$DBI+!=hIsd7z#<_pfsyKZy|2SaP@3f!Zq$_DdiE#u#<@lP- zpCp_llH*tWfW@-QXkrsTXGO?RC05*q68Z?f=y+~f5Nh(dYf9ucm}O9 zdmhD^6tejw zLtpJ!inMLLn}mM0u|*U6yPS`fY`!!4SZRZo=s9bmk%sV>(l-D-ce=-<8V~_KKYT!V zc;?FK1z~L1DFIuS7+B_H)VSFhaB}4(P}T|}TJlX>X*CT|!ch$&-R>17JU7Ql-u-nv z?q=4#MWA@epJNmoyklN<_1@BTYA=wIb-iMdX2jX{{g&=WDWW(e-b7^-X^`F_$dMAc&>OKj_9pGdotw{immXP{^4R`m2%m)Va@Zv)>Xmf~o~5lbbjQlPsyNtU@*jj&>o>(eQ`jiaca^-P zY!u4NRo!c33&VXNvqSOr52KgTrKJ9_Lqs*{&wgPh#Pwk&u&U1SPA{@A!F%YOlOlzx zI^08x#fy+O4m0Gt+SRi57r0+XSrNQ0s>|fk%46pwxdpowGW)tsU-ZN_#`1eFfnPF< zX%sU8rf*}{KB==Nbbn9qn-W9X(<}~e`PDp<-uG>&T+*C`8!Nz88>}O{PZ);*Xb!%R z3NM^CRL)M@m(cnm_!CzaeL$}rag6FKPLbUXUg3F`kQfJJN+`zQ34!Vljv8fb5F1+# zn?M&o+)(pKi_JZ4IIU$Ul?DmjeJHp=mFkZj_$|H1lLrPZ{QKrh23z-KjAQgGYANh9 zZ6un6BYbJLyMF8uu!rJ0{-vTUZbmenJVS?2Y)^Qu=E-?_+#8o`LXh^cqImC*#nb}V zpzcy9cw?NCBnLUivAY8|uo|Wyuk=PIoejF`Ua9!^>A;<=)kB!Kg(ydrxT(w}>TM!Y zO+-VNovy=K;`1-W)lWTDpGKaZDuo4l;JiSBY0KqOkctyAyJ828yW=3v)1DJWDjzDO zre>HE+@TLZrxse`$(2^EL*W~y_A`X1AQ)(Zqh{J{*z9Bai?p#)5ZN3&F{Z26B}Y34 zj;<4h_bb(b1u@U9%rJs>2cs86Z@LNLf)CSm1b-lPCowE-G;{F3e$|9;#r|@GZUvVF z=e~Gmg(GkSvXb_Z-0IZBZJ=r3%YrG&xu=M$6UiKiOaA>^ zlyc2b3`DoewNH^RxW7CUQ#Zc6%}=08!UP)yDEOIGS9KtGe%%#$bnRPk13D0d>O1_} zInG(SMZCahUoil_+2nEnl*t}H>ePZM4MP3uSD1&D;V#iGwv?a=$U=xm#=bero3|&i z5Z2JTZG%px$uVynFl7{0L)D#jyepa6bKER6t#iVOsHkd%^09r%0oi(JP8O`o6wDs*`>!t&xuABX}!?d$9dFA|XSPMBu)wB@>;U#^|C@dA}A z8$k(N$YIQX?D$=Dxx!|KzJMLX)VK6tjDowr{X5&4xS@FzrA5aLOf-xti*k_~9p7JP|1oGHFxpKqg>pU+A@x}?V zhbn6hxSvBPOr%;`%7@swn zaAKwU%!QN?8uuBDC}Cuz>~QH)1jo*guL|Bs#h z;8IvYOf5{X*H?rx@4^LUc)-8FA{JkiY?g9GK;-=Pm3Iw(ye5Zzy8|madAfZDNyY@o z*IVTA;2?~1$Q}8g{S}@p&noXX?_~KM4`n?6ptJBNn83&E!z2anzo88?CQExW^HR=P z4-8Fs^SN<4W<9P+F!nC50+urJ?HNo1I0GyI?Bl(nz@JS><`$TS5gCz41ly^WT`vDS zJGxxhFin5%ql{IgL#b2tmS(iSLpFx2R+~6Z{C)<19bf6k(30H-rX?DUf-OxRpNvVPDWyso#KlCdcq8= zvgJoNG=lm$BZq?dYCzVg%XZ7o?Vk=%hEBW3fd@L66uMzRN18G%RALK_UKJ4z>eZRi z2)sV2y#s%~T1hYgNv&y0O6IL_+ObFGZC2`9eG@p}Ryuhr*#TvrdjbXdc*tnYZ|05o z%+(6TRC_VKWs7iHy}>{Nb7Mlb7w<ffKfdGk}E`|jfY8*<7 z6dS(&mvt|Fv>b)QFhSwi$rH7-F(KL!mi;oG@+PNiAi%~SB$tHOBO0+Nw`o+I5%VQk za}4xB#( z4uurzR6kk!9=(byNl6W|Th}#NMqfbJjyZkROC4@h>rT_MKota`Ei3XWPn__iYA4h` z25Nrb1gTCHYSZT-2V?{(8}4MSimeD$1aZ@!o1&;5fc45>TD$B8HAgy3R7yI4v4odH z99W6thB!7E^&KmRzsS9nUygJRW|t1)=XtfSu~baC*gGeOiF$*bmR-`!K2iE=+6|Ld z_&0|-WsQ5`CCqbHN<-pz4nlDk_St(ZcdNgo%#*80iaezzvS8=fy-Dwt@7O90Emzyx zq-SZTYd+_23dXlc5yWz5z3Bk?-klU^C|5}DQ11O!oyZtU7+A#kxG>xm# zoASs}{4eDHk6Cf^ehGz1&};`pJ+dE!CWFFQLM(6J@Ej;}&p0|LH{2i53$qw8e?85) zIbwm&&&X=xu@sL%4$SkkFQ#4$fFAZjhIO;#Hf2nb_KGIXMUSrC6LZ}qP9CI zFh9y;bQQ+cqu~t2xQ_7~zBcFM5;7|Dk5=QVXH+OQzBGwoK&ll?i+*Td^#oe{kZ1c6 z23HBiv&K8eO+m0NoNpCf1FHTfT?Lf?V5QJk4We6SMxHi!=WKG0c0 z2`%+d*SPSqd!t4H*kyI@RV^)YSt%9JB&lw*@q*8O?H=&~AcoLLg6PU6X7k?7N zekJaCjvi7x2CR;*1|Ldzk$j-|xr?u(@Uhea5b%>V%_Na|0x$k88mM_~z7R z`{Hs4G3#@%+kf`vrKXW{Mj&wP6piHOEIHV zZB0HcHczhta~A1^iEX5qnPW~8ME?8fC+ahR`&5m--bhbY8EIO1ws~x0|1s%ET)?<1)nAD-5viKB!zpaST-8C0tyti@S9eV34mF_7``^4% zGVtJ-H*M^39;6Fpl8Q7?pXhUk+3MZ$it171ICg=|PvCP7t;ZASI%-;mPw>Gqt|Q@s zBHCN{dqL0l>+1vT{B2(wWS3sT)bnfN@65iSsvNv;{;y+$fjf6u8&}PV&vI|GzX zBBm9ozv>HYu3wYyoj9!?foE9da1<0i`?y#wZU54@(#CJGz>O(Gek(j?H?!`G#`A!C zhe~I-e*ycx_ne!ch5#lByQcA2VBS<_K61bgJ|dIoTQn6ls+gD9s~pxVpEjiAO?F(l z@%i(W0zRKx`FZORLK*rm(9{d5&(?fD#;?YZ4tN>AqRQL(Hpz(`Fq;^~eHsKYnM3Ey zROdB^tO^W}7KD6737OnfLP(TlW9=IT+E74EhgUiOdoR2AdIo3z>|} zayzEU-Cw?;Igu5PG*bK{LXM7IT}!*p+Dk`1WWe@1fn-hR#I=dYmRK2zfi_g&YtTKgx1z86PZv153j*%$Mcn`T|dZSouh=pU^+Aud@%P*&4^_?mK&`a zk=NVF*f#D_A;7sTlqv5S48a>_M!X~ao-%2|6&l;^Dhc>iRgJ7d7*x%8E1>~doqiFW z;15G*4!a+v3EqO9q>#wuZl!-D|Jh1JiTJ(s8{TT+&|mjrkZUVdjW!^{Nb{8YxN*S@ zn26S@*qglo|K_|l$!D3xSCi6H*0&gi2tQ8*86)K=RXtMp!{*73`)Pdekspiyh2r_% zsnc{r2Fyqc40U|g@|XNMFcz?ZX`wWV+BImrVizikXWp|_=UHX)H0P#s*SY?e(ldV$ z-*=@{VCaFlQjRKZ@GtsBUyDVmQRiDz4?eNoF|3B%LJ!5-Wd1|NJG)m=gkV*|m(-V^ z@JPl^L>CwlTK5G+=22w4$Mq;Ljv8cXSww{o|DAr^H4zf+uXmIF$@|xXWqE1o&DmSNGh>Y{;kjn^`NFZP~CArGveai3L`u#0)oesP^hMSq^ITfA)lYPTF+8$gRj^-_i@nE z$dbhbd6+#63R|*B%vZgak<;`(&1O1_e>qoG{|PFKCZ=#;=ujju;dew+piNCJf8YTr zG4(PQ`*R%!p^BFiQP4JWN=TM!Tg$i2kS~UV`hR3}4o~l$r>&JMxk z1Z)cki=kf|YEc8tWz;mB-Lrwx5EWc0rKVAZOiCFE4MG;}Js-LhUrOmuVz1M|i|Y8i zQf$GZNa-ZKTXT+e$gv+4t)3S#>#bodUC3alSJ)laT6S$m`@OP1p zN8!Nd^jUA}uG}5TDKx8iA;3E1pI!%SbUedI$S`$gl#ILvzRn<;Ogy*?{=2w8R)5YB zVlI+TRkN=?YiKyrNzLMA{S;G}MXzEEg<@gv?g1)heJXl7H@i-=Aqk%&Yh5Y_23E=EpNQ@o^p#nLS_!#v* zmS>9vrDOt(FY)Uk8}#uideBKNL%)KyE6y7CtdD=Qq3@;Z;^zoU?SY5$e??CL$Vk!S zh>1h z2lIw~ky%4f;@B^{%TDXGb5)Z=axi^Er&{;HoC9}%hj9VybU$B@He#Yd;m>d4GDx?+ zx=HEbOaxl~@W7!tu#mYFJpbUR*=SbQZwIi%H(3@zVnaSp$ezu>$#YSG*Z*Ty-%B=- zm1(PR+HT1WC{y;gkMye_i45X|qvrOy5SBJamDiyx3n2OQWponG7?GIQ7}6}k>x?`d zrPr+EW(gPiU1uq`0Weudm_y;F9V&&VVy4NNcYNTsXLVpsz zoS8pcu8IwPX9tTUxL^;kr$`jHr!`(iYjPT`v#&mWOM8;czBzb?j&#e%cLiQ32u^1W zJum!>%~kp2R8lNi4jodGiZO7P+r3jv{4{UNHIQZB51mqCFu9DS7-Nwf;`OAp9;L^xZJ?&6fJT#q(jrqd>K&^juam=tbFcL$bFjDtk^S z?(0ER+aA${7KARxxptqP7s?Cldt@YeGOb|p_J6oURf{ftc<0t^cJ>^gKt87>GKW4N z6+0lSVP|y&r}I9!DAYTZVRtpM*A+IqSqGIdQ7O6Rn=EzeOdzxrd6y%Xn%nd_xrkM;V z<_$;1_5{>+f6DwS$bY!45ZL1n+=j&}z^Sib40(PP9`aRQm|7(hT_f8}sEB`sl#6Xv z+<<>jDL(E?Tu`H^xm!4Z-TE9(2eo`&$R+?G0 zaHxbkEA`XO>D#kmn;={0L4G^Avh>6G``=jQKU+@%w2Z7y<>8FC#FIKP)&Ia6>&o`H zfTh+n{zQ5tvMVgZa_gYlPyRlYUlfE`LPaw;;xG8KU<2*CILjp9-){AhWJc@vcmgG$fP~S=3-` z=`sTAZ%AW3Z};_FP2ikeD-NHmwaE_*WSLXV!N^9qXdT>R8U4iux0P8kpB>vJynMte z@N;Lyd$j7@DXRp5x{W{&gwoxEk4Ui}eMZW<-=IKD@kEF1WdmFgLE-IhF`wmrF(6Vx z{|LXjn5+ca#_r@MuXRt=Pb*9uNWav(N}NC0Ep$%p?SBaGVL{9GC`-_^%+^dXBpWcv z2*T9*H7;bn3b^u!7UQaXF9T|&K%gDW8LyqCKCI-r4pMG0DcC@G|H&p$3$jM!Nk|6k z?%r_e5^Tm|(InVGoXHLM6{FIdwX0bj)6f}S@d=^epb_Ds=_>hwP*Ox`rW|pFA$(BX z(dqbhgX{6l5kJ5SLh_=9A$Lipkt|dqRdV*ZV#P#Coh4OQku@EacBVhv4$)!fkK;;p z`Lkvl=|1BL+XP#kQc_Z)UIk%5GT% zLr)bjRGKFmXq0zb8gvqwe&E-y@jr<>4hV6(8#lu|$H+wWYSEwEPF5~*bOJ@n2i4y` zM0r^K*_)ZxxHe&{YH`2x&r!utP?)}8G^Mu0(FMjAKouRDqf7C>SbG~|5!!VyIx70Wck1|j{Um6{6ylX;s$Rs@)(q(9X9_A zx}?@|;%KXVM(U@tlFr^Rz`|s;=Z%Rzlf2xM!^J1y!l4Vpa%GPcWx?*l-1>Sll&7^M zmc&uksl_3p&>l5kc1-;jxW69RmFBVT&=>P;|5>lC5$k*YC4Z5rT$joh^%xU~C%CiV zT3F$rAjGet?Q+qoLQCZ-+iN`y|8~6LVq?oThYFmUyHNF3#PL3a^-Sn?+CvcOucH=9 zS6HVP%9d&!IoreI4X}ET?i-jYbaW)jAsSe85VNg#5|9zq6WB^X_%{2RVa}&D2qJ!5 zHN5%5xSfi0!hthex;LPJA{<^>`gq_B zQg6N8uV}!T`z8o?ecJc2WfL+9F_-8I)w@4t%O|wi!%7p3^Lt-Rw}5U=Ib7FC2$wHa=(<_QY!06RzUVtm zR!&kr+T~syn`3&|TGh0~`H9OYK>gzoWJ>(s)(jmXuKU&hYctgK=XL{3>;N+7W3D+w z>WK@ElqB-_gQS6VUw04}5%YaiS})So666#?4Ig<4cRWW#^LVKnAv*&y0PXrDR_7QS(@f4v`>}$Z221Wio;*c(%&+hW$y(V+LWvUm_i4$F z;F1s_qR$ZF1b-SL8XOC*9O{$L+osp|(k0!JZ3da*pxTCc&WhqRseq{mI-ISY1?kM< z4;f;)@5H@r;D;AIAn;6#zMqrSP@43G=8`33TRJ(_7(#VNc2+yQ!LnZt?&Bb4zAgMQ z0FJ>&hUmd!*;A%3w^~o>5U(*Y?)z-4Oaw4KCQWz(X0>iR|{@9kbj=m1f7^l&;2WNGP zuCz^Dx=ZqBI|0rjMcH2y9v`=A<);;cp5iWcD_af!cpeWUfl6(inG%rzU*Gv?4ONQO z8yT@1YmxD!Cj6WAO~K+qohBoWRj(6CJmy<|(@&f3T54=o97?OEL!ZjqMO3_a?U(rN zSk{IBVT(iVUO=@L47V42!Ual(kh2O>#_|z;pU1i4%JoP4Icd{XY+tQkM@^D=Taa^R zd-=lr)u$F+A;js5Ij01aH%C0ui;IyVC*a~u3*8DY{3|jSS~BiE+J=&;nRDmml9VFI z?Mv-Q{q&pRGxMt5qU~TTda!(bB6qM*FvU>W#i3_G@tAzMuC-r^l85%ak@XMgf6S2^ zN?Zz43kURu614ZrLub}xa@IVVVwNg*Q^)q!^4DUamr$QqA>oh2v{{g^i627=;X= z5i4J$$&=NQFz-YMrahmqgqS^Lf2At<(!Y_u!gwP$ANlsL54p4wooy9&h~+-RHk!cD zeQl7amP>-ET=5Nl7t;9M6?+}oLefjd2qAKm=r0d~8=MkWIE!t{)(U5D5spMWoJ(?R zt8I!B%AGNCnAl$pc@fDHjp!#QJ#sK{zx#DbG-4g3C9AKM5wsF$E%vu^d8QJmF$+cL zz15i>Cx8?>oA_xg?N=|)B-*O@p5^PzJjRWG04rEL#D>p^7~0xpid%a=y{T@jW*y2u ze=R7J;4iO0dX!oYJo%%^s7*Za?VgDFk4ns7M!|XNQa3K;F#kgQ7{(xBSn~Pc=YGj} zaHt=bN5CL~R$$rmAa1z8=tLmMPXyvCRY5M3<;Z;e7sT>%NVnTf{#|AQxJNS4Gjvq1B^AO(6QG5~XNTtU>@yD}$WeTPd2c?bi~b3d zczuo3w_JpabTA$v2~toIPq>y4hF@%6b2|YMSbkZY5m|#V#xG&N+wy||JISs}i*ia% zCFN-c@48SY@UrIO`dK15HCu|y@%gNz2oG7e<^LdY-a#4=K(}KZ_r#U`)I2meUob$C znJU$}W7o)rSdoTv!+SaTrLj%V%wzQ~8cjqp2<}%u1xgT#FZQQ;ETUARX3^V&-7P+R z`~ju+-U#-A{@2-W*4wIPwO}zt$JZ9h{0~tpx&DWrC17GPlvUX2hZ6M`h9;=Fe?v$A z`3ptfh(OX>=(hlopw<=-?{$rhc#kq+Xc5om~n6Ao2TU6g0a%oYCnMbEs%-G3H&9!+$l*SHtG&9z^_uFUmPjMAaD zq|L6qF`MbO`|0H8-Y|#3 z1XvxL;b*qZjcKaaE0RI0zQ5tPyB)w{?=?%_EAKU}7U(nAlIfhP)cgUefN+aftkI-v zW$jlpHLr-tG_5BE$rVF3)C zFlnc;ha>1radIzI{W`&Hzh#8I&qpyzw<6gyD#0_~VZ39|q=*0A+NfhnRQ_Rsr#yU+ zdc7U~X%CE8OQ)c(YgVxTRZ{qVy}{RaCWd-F4%vY42RW5Esm4iM$QXTI3bmc0d^~8D z!eT$yxUSKuE1TxFjN(W^3e=Z*yoDKljICOH|E$Q)<&>YpJMlVOuH`v0MctwktKj*6 z!?zOMJ2km{#;(Hr3R66iN+ppKSq1(t3}R}Ugzl7pa-qZx2i`0!=F)W`{;3BJ@`eILKK}B3oLW1LT8Hw{IpA#;+^sBPw4O}xGZk^3e zCoT%QB~#&0HA+yf$z4%6WAz2zNnM-Jx>1mqr4APjPu3_x$nJIAoJ(c6gm)9&w z$y3#}Ss+C^@d5c#j52!Ky9sNF7c6!7gA}+|Uz@l2xxeUl_i7}F$@c`nMPppbH&~)2 zcm4Lze>MImi?~^?x}=lyqf!!p^1_O;rHvxw6>fzfz%WP*{8j4o%9rxs|3vr}xqF1CG(;w$CUqbN^uYMbJ_{O58A(pGm zR8|R>BUJnfB|fdi2+P&0Gkd(4crf!jN?FDx>Djl0^1o*L-xz%sg~CdNs_nrrZKwaf zLA~&sjTjC_KV@PB480!ESoqE$wukJ3E9TN=d$# zRtaTq3?MvC+Gt3l6vrB(KhK=X^O>|Um8o^Dk3DfXE4lX4jODhr$f%v=Q%nL@6)rE) zl0f3~aAoUWq_o-xFG&fnj~k9EDw-9PIyy_wmK>cnJ0-=&bjELwysmi8KjAQ~#b{_q zKL^-b8t8*zHI(>^;Qf& zin7sgj$KR#b(q)>wpZU$EIhLXY|Kg*b1)Zd zo7}yYn+6`A9Cldw{uUGivk!i>-RqJ=_zG4*WWQ|52+CY3cYlXb>)P+jO|x!Du)Bg{ zZRVvKR{t&L74FZ%#SXOM{>>Nu zH~gYBFS&mdR@Tub_(CYO=jFGVff4L~DW^BS714qHMTtMQo4wft@Duu*@z1HD=yE^F zt;kP~-hs)jIR+}6jEI&>m8y*dZq?5$JMXM4Z+xa0|;1&9rUGkiU*kHIw3e2i{d0b+&aC)ueKwR z#7=k}ZXI<$20X_VVMdr350ayOvb{o@1vmcXk-7h4E`T89*fow&v1|VfvBvWy4dqH% zG7b(X!xY^CtwvjQ-_U|YhUVsyi&WO2;te(!rDzCNXd3%%IV+wb7sIHdj=_GexBE*DD? zQk;5;h_;Do808~O;MJLFeN)TEU8sxk5n}XwntNUNX|-On&H3u$Vx@#9qsjO8%uFJ4 zL5_R%(?-p5}E96jgkaYUXX{ zi};n3wN|@UU-uI8)*>OUu<=kCI;F4Bpqk<-e+%lqES+BC&gb#Ct4qywWZXQ|NjO5H zp>szAk)G}^8b)74?j8G!K#8F#_q2j9z8o9tcD7$pqMw+5R1|wO!eHV9*>CE(1%IHz{)vp+3Nde!X7NXAL{-?b-L;qODyjyr#yuMT!a`!y znRhE$r`7hzIY;vQE0B@?InwjeU$*QtIhLlqH5U>~Jp_~zfQ`xnh8@pEg6C9Wui6_} z;Kd0S4QxD#u*V+X^Gop)bXWX0?O7M?)s*ewtv?(rfogL1g@@7FY1){_%`{q-x}6s8 z{nPj`eb1=*A_ z@8?f9%{$ns)K+~DSEGZ~eYwgT)aGYLi3h?aL4|}LcCOhmB1%Y^$YVVyW#o2d!!fps z4OOUFaNJ;M>izW;Cjvv&My_*4G3jUZT8}sS@G z#;xQYKTX(h0jn_=kf>sU9#pWnO3_uUD2s!W*|kl9$x-FJrrbCV|BFCTwx22*77C}V z0267sa&@`lWxrOx6v(gH>hgFT?c|30I& zCNX<39vqWIRfWuwz(p%O`R^?WFz*Wbm0~lbglg;CNB6+Gzn~V>JCda6O1d#ZY$b_Y z%er}M{-rY8h{$vC+_bv(={%v{=&bi^KJ?QgUT@C{D|pClT?*+h!F77s$-}eU!cs0&LGD@9HwzG*~?vw9oIqU_=~ z7ac&AW}B^X_hIE2J*MQ^;fGrhs!SmX>Z@rkkK^>0J)KdHo6P){M5MRe1@q(k^Zbz) zW@Xbbz$AY;9CFYv%>9LFBzv|2>8)4D_v|Qq`Q>!5%f0&sR!($~_F(I_H*I5jIqR?UH@zW36etk?O*)a(`C} zIBGBFjY|sRq{NU0p%Ve12psi16w8h4@7UiC0eJgYG)<9Zhx*!GA2yDoFRd>T0*!ww zRkwEB%b9AbVQx#55NJiZ#L)t9e|M)OmZ zmNZFx>TU8W|5}tgu`On)p}9r<%}a8ueXWeVjE%oys<`SF*%R6m15e8DS;{M@{^L2T zTAIXiC`r}v{_8;#YKCihD067gQejl^xo1VB&in2th(aZTAj zK%{Qf!>f72tvQmAI;(sS6Xujw7tbs(B8I)2RCcZQe6_|3A)%f=BikWn1!ou`-8hQAY*d;-0?yZgRf=&6|VJinu{URi* z{HZ748dA018F?Cu=@V;@G(J`2_nL6Qe@1;YCt0>gJ#a5k-}LNh{5dk}0XM=kw*2%P z%Kx6gSRSzw8_#erv0qw%Y?Hevk|6kRh)O{mIsRavFkxU##50xpf+0BMY#d9ekDrwz z6j$CWU|~q%POQzs zp_&RTUmSGRj5&>%=mvT*(F?sPDcm9dmJ0oC*Vr&RlRBE)eKXNq(pT+k^D&tq@u^>k zAtf8@HfJI?3Atj#p!Qz}fqurm8%XU?Jw*U_)%6(b^h}Os9_AGAg+V;oD&d}< zU7NrQrrt3B!QFaToTF-pa;;rPuiMJY&q!Yy(%eV0lj} z&&mtv3yICUuJYt7z02c6-X^atVDO5a8rN#4E>8zk=UOWI@U2b{Epi9{b}l|ARK~I> zB?BUiWMGu402cwmpv#I+MLf+b0u_y0{kOj-0#nzSQ(TxX2ZZ+JCtbUgk(hSk`&qRe z;n4@%ucc`}GiRYm_7aQLOhW{S-5DkD@5b3B`J{WLxcKN880-q?V?VadlV7x+7#;YN7*ujStx#l zKe~6y>I3HlKqEd)38s4@AIrJjnE}8Vl)^#9c@wTl>uasj|8?LwJZLpV%4ggr*>7-m zYSsgmvi|9Znu=eC%PgOPTgJ}xJlm&Sx-6i0^9R($?*PRZUJ0J;`{#L;IH?QiGmey7 zC8m_jH^fm1!6aX2-$QT{h5-T4vb_X$1>&;Z`X-%c7vPK0-FnCufjis_eKe_^@OYEfyY)ItbC^e zR%?yO%W+EOWl52u>+Y^b7mHP`;wSLa=$ox41?x=<*;#j6IExden+4x7<%tK9+pfd@ z2%T3mh~tOikFrVMj&K{5%Ornp!1qKn)uS+yfhnW*nAPMsI6}z58eLqX6wjs4tqf2!s{o$X?**_v>Jh0CPY<_q;=I#j1lMs5IhL?KR*3&Uqygw z$6uk(#(85xAHw^P#SXff?4?2smg5TTTX zV|})Xw}Jv_qMOuQe?ob)6|oS;`fHicw%rrkC6Xyj zKBJ+C6v4!sB7LXSglsaJ-YH$Sdz+6 zFb#gu76TPQZE^OsIhXLTo7x9!8aMxk+yR5eTip;ZUCtvK)p}pAYKq3qhuHfWCzbX( zqI^xdLHvdAS*@qRdpFUKja(H>h!xc=P$(1PXuh-}JgJskK2&LS-T!FybR-PUluPd2tX)k-PYuvBH7I~>U~J~}1{ zoIuYZ%F>z!WMXZ1{05KRbs|NR+lchb=-I2zt0nt)X~KXl%zrETMNW`IwkbW?utBce zHdIc-;I$Cb(S@=#areX7uXFRpr@I5|zVN7T=&|dJhH`(R@`)1k1Nia<>@M@?Z3uD5 z2dyq;%RjK0(qaDmaeCcOuWlT$we(g%WM`hgRq-Cl+xWv)8cxqsRTZ5im#FC;ZlRbn zS8Qf!&(e=kU}D)%M`bZZ%x2dOKKoB9-vx>ixXP*JZ%7CJNG3R4pxjX7aKu0)`Z{jb z41(zVJnI+tJL{fkLd=>z=&ZKkrYkh=O}XY>^VKQGzy%L$zO`Ml+p!JFI`~jzzoMxL zJKM%B*EUCr6SGgY?`nCo3}VC1M%BKiPggsj<&S1bU%v`fT$Ww=HSc`-z<}xyF$3v7 zb->NcYQF36{o{tGESUPeFTnfp;8U(A5=K~Qv#O(PRglCIn}~X=BNmnARWJ(^3=W$%+z#Cs&hm8p7uOT><*NjgCRes_bG&4ukq z@5F9((_AK3F@ZyeO6KDtGmkv{HL(Haj{x?$3b(svoo1Wlt@d5 zj?+OOf%pAUOEklxByS5N8a|T)8`s`FrlzVCc2?wMDaUo!PS(;7V}^y#{$~~o$xyeO z5g+Iiv@S^sx~y?O&OK2Pw4V4tErA%ZExF9e&@=H3e81Jt<@5pBYBg^Aoo(0$qODos zb=y^=hNJPk9&(wG`^1|47$L5h@*6DnT)GS6U+xsGx<0gom)+~o`c#rFG=41i_K!oN zT2oAGpk5Zv*o2qLacj?j)|8(<84AdB^zhmz6Wi?$wo5ROOl8NnlR{^#z=if2>N;@k z3W*<6@HkMB=9NF%e(|5g$HvJr;tte!d9IBC_w$~uaU2}P3(?B zo$f(uZ+?)UJ~W{=o>+9+p<7sVcM9*BarNFTZCNo)(x%E$!?_gX;O6sYB)*7GhZKf)!eF@tj-w%Kg2SG_cz zk^RSMYd3=;aO!9@Ch|GUfP4 zWpqOc-UJtBCz<`SHbkao6q1H+Jp=9mkB0<(3Ncyxv0n|o;RFAhI-x*{D3Uy-cdqvc znkD0v-J4hy6m;e_d>4KpgXH8$pq<Fx^d?=ZwKA~ z)(x7Rq;yXG7QRy8J(#EnJ6P0nj4OOFn=ek2oGXIR>5Mg+>aO}`L=Qg!Kw4UzDF8FW z6SFQhMRXVw4YLd^vfSuK&*N-=0CrmI43$>k+U~cRy~D$NF~NNg2SV_nR)el3+gW2| z`C((ICKC!hKN$PIo`1>W$_y_TwmotVI53_;cFY6+;E5Hip=CF2?pM^nC_jx4mNOw_ zD20!{IBth+W^DNIdhg;t<%19 za8>KY1Rwsrx^Ii3qSc;5HONSGNZFIV4Y+EtJrHCi->da)Y zu00B#mpAX9X6mVolmvO5-&p`UkyY!$d_slsZvCr#!ja)bLjP%j zrs0CK<7eV%5Kl({kCucSQgMVch==h7LS44QX{k;k6+@dlkms!X?Ty6UP1Z$ELH$e; zMQ(zXn!P$2?B=l>2_m&gA=8HU4a6xS=^1eoAB?;Gzq(Hz=w&0$3#(54R((PQ?kruG z)*Y=h9M`8Qe+n8>oz5e*GGwsa7?^d8n%L`HELY=LjNKo;%(=pT$!$MY(ZA=dp`gV4 zN31gf{FT4x{!{eQz}qu}EehiTAwS-xk28LRnu8Pye7=~L(LTB#+N&G00JU)O;&jw% zY8Xd8R;=Bh-|7l#8JYO5h;s?Wm4)5XNEkt&09+Ljv9=}kgLhh>(X_HAuIw+yzNx}C+2wnQd3VQUI!s zo$~AR&_#u=iOAzT8;U_e>4bHqAl%~wuu!YU9bNqa4HG@M(5ve_d#|5FV@zl_^o1;Y zwH9`ck3%FU`%DAc!Gi@mNBZIa&zzy$rGQ5}U`TN1aod5_^!U22xY{?NwZ4rANM1UQ zR_Kp<9yA#yZGkU0;$}XP=p+HUom7KlLthel!U$v;FV*Z?$0Kj~Db}-K4}IBtwZFkL z0x>Wp@ydGbrO(-9GqV^tTfNo~LfMZ);xpzrY{>%P%)(a){ z&v58Nko+peH-5&SdZRQP+Y>7L-D3 zrEb7*g$?Hw5g^jdA&C57f(&ooQw4LO)<*5)T=9^*%NhvcRuvij_Zd0O@CykRb8yCX zl&@twI<@YkJ{S)A>hky(h~3tGrB;B3k!}G?!*kMTIHU7G7j+t0cydKPT_5Z6uBql0 zxa<^-q@eZ4Wt*_8uOl90E6laW1}=a{ui{xoO`+0HH?AV1u~9gKA`=SY@k!~`%tf-x zQ2-O{oX^?_Mn=)XcK%c{k63)$agQQ^KJOy@+d}cdi9b6Ju}bx}THs0egoQf7d&nkYqc`nT$>-aTCqY4N8zDIGTk34jbm<={6@UL(u^iivnlj=QO+0^F z2Kc>>?fqBGx%gB518vd^45>nuPUswyW46cq$m2AlH21qgy?VlgR}qtB7P!;UURgQQ zBV|67NC}xYMwB8dk{~~1DGF6Z*9Y5qqWi}ijXeq^!dX#Hf;U9?J?`LndDqZ3O<$t^ z%n$$e_xki+cPBH~${_Y#f+2XiKFyT-@ut&$q8X3qs{YBv`fl&!Df`&ZLJvt03K4&D~P8$BcBM^F&K-+L2TwoKf}(dOrct;r7lE$;bXH~&O>>IbWG4KSMxG{Jx z4?Giqwh#bTM-{$g9ds&a;YUhnH6XVz%2$6nw`xT8dQ|4t%KdzEm(XWiZO|r(yOiJ4 zEyB9DB;8{!20(L8c|g6_Dc5ypIjM+XK1T+)7v*%AWD0=(G|V#1wBJ?JKVLyF_UdaU z>={CeMUxCk7!POjY8u8mU{2L|l!leOqIenln85%K+NR;G28SOSqC-|ZO!rYyM$K>B zsy&;s2^}mo+1t6Jf7InbO3tL44(E-XvymQxn!;?aHJ{Q9JQETJtK?1Ti|+(NEW21` z0#=Zy|J|v3{thkbNecdSj+d3E)ifOX8qP3mTE4oGzcU+ZIVjA`ukY zFCyr41O4^nqH}kI_pEl%u>rL0MAS%JnQ;_jV3QbjpHG$94kZO9E%$QMAaU;;ARABP z?u9%2*;s^!%C7J0FXuLqBaeN0w=mQ4!_rD=DL<#BE!_!~cIUs{CpD-o#VhpWstH@A z#rQ<1JMHFX9g9~Re%YX--Iqa*}eeaHn@Qv_JD*-_Jh%!%CxS@$Za9UG<$gcY03T{684 zw+KHMR$6NIy!4)te$Iw=9_H@tFIyJ@nRTXBRC$s;*Ec9_W6~rF3P5lw2Ak*?oClO1 zhN?Vb%(Qho`?dwTY1t=Bn}pWT&=%oe9}h&rSq0bvaN$xaSA$%SzWK9Ng5->d6#^8_ zPPuN~O~yJpd4nPfL2eVDos`!32V_K%zwe3Py7)z1XaQ7=lh&o@rO&uSLsN8~AcF4` z5h2nK^Y3c?qA%+!mAsB!!)zB0x&yi9FmTQKwMkLW)LPW8Fvl_Xo2eHeYMN=Ifw$S$ zhW?CzolU>%(72+2puYzfi03gi+tJy#pu2_!SbZwY@pGz~yFytCx}3?Op4h zGLDAE%)3=!h-lmdrSkgn<<4HKMn=$|EeR2+IwB zvNua!sNRoQ83}<(BB|FYqXcG)_aw|`s*F1a0zhy{wZt8--Hpe(tiTkA^Xavy+nP}q z&QP%o<|ORcpfLyXE|fSHgWZhw$!36~v?MGkYz@=Rk@`99vmwd#w+Z}BgF8W`|7piC z4k7km`&=g`hJl%bD}PF8 zpFxnIOf377cZ}{Fh?WYGe0#3c!m>f)j?1L_RCc^9qUThD;sXRjR}%_`azdHhCSMf= zKP5)*^KYNUJ-lrOgY`tl&(T-?w4>0q9(@1WH&hEGFObnoljpg6Ao?SIpPaI`l z<(@`FxJzw2->XlRKnnp@`DZbIx6e|ZZa^uIfxTo#w@D-J1#JfA~ zz7;X^Tkg}iJt!4>`G8W4&qQ^sCC`s|?X*bms_2dXLL}T8EcYcD-SJxUNYp9Go8k`p zuRWR!!J`xb#%Xqx0a7{p^);FWK3-fi!)BXGr1+H&$mu|C2Gd z?Q_O~0ojdQ!4qOTnAJt_RGV6oVXHZ|{yzWs3M(EPqC0j!bOS#+FX zFGEutJI>l7;@$O8(tTR`9EaI(t^CQ~Uk$sy_$5g--F-4d24h3Zs^UR+Wo2mEwd4wY z8qIFdR!dSEr(nP!QRykdAhykamf1rAX~^X%-Hvt1QT!ugFR&Yx<%3%EJLh?dM=L~qq=75+eQbA!uYiEyoiCQ91 zj|FSGSf3nrc?dv)2gz~Cw|z%y(z-&{{9Ui@UKM4?xwkf~(T)$QVj&4r!wiQJyN->2 z?{3ywcSa%*pPWWB<#eWLYnxiRi|&D!^mJxa5(Nc?#~$&lx|w#`^wa_A7dn18Bl;5rQ5# zwf2=qT`T%Iw(KE@j0?OW7(2X{bd}Bg%f3(b9h%yFAHSxd;i=u?m!^lylcw!{S@q?7 z%<=d;5*6fx?o3H%<;OY6zPmp%`qT{6e>I=+EmgVZ)fRnTZ19n>u!cpUpLdlUP|q!D z%kI+ff*hW|n&|x9S(k%gy$YrD9s{DyZlYYhajPuo!uaxjin;gOn3sV57FEe1N-5)~ z`7`2b#2S|FaBShPWS7Mh$0O36jQ6s#^hBt;Loz3@zv@(_)fvU;xgNC8MaTZBdGfd% z-I^*2lZ*yCSbaS!LOoqyjvwWge($b?-3Q`njPu`{fLDrolEAQ$vKNf*GUKRk1E3j6 zwUB}(Q7rScl!~y+WpM_;sJJdR8~1*S5RWUcWI(})cKt8lrJ$Zarn&v_@GjdpysFAk zA$iLbNlT5U{_kJ3;O|6-+Q87A^eGnkZkFZSpQ952)@n*=@nCLSQPG;w-b4j43|m8_rmv8 z7t<WoSJ{{N!eM zu&gfYZ2l+XdJa4`{K+T&=TRr9Zzvu<8?|EJZo>LqvV4s3hSLmnxxRq@{L{Eeo4XLX zpDIY-Fc5pa)D^JX<1G` zA<)D1x7@gshn$rXn*f7zSS2IaS8Dr52!Puj*Bs$%dc!%JG>XV!4D>Tv^xNEV9dXv7 zOPG$|07WVCBT5Z(t_wFO1Gp?Q624RA%5kV+1&$$<+pg2j603|~SJZTbj;MU10MzI< z@#XX1qYcBp366RKQJhUpy38-vf?N3+kp=Rzd-)oGlqY3~hhH|%Rp{^m{>OKP)PIA%AQ$dRl@^?hT|^+s@x znROpCZt_eLLvEn{k?{@+eXU4(;zPCutSn9W);EydF2-RNJJbisL;M z)mENO4?n+W)G>$~6&m+F%-U0*s@4ywk(#Xn6Kc3S%S?-AE5Ym+SSPrbOE*4LWBQS? z$o><_yBclDrE=Xp1PViaIo-HlmUW?b!6+#PPsc40VO<{tB6zoK-TO?H>wmXjg8TY$ zIcWj6Kt>_G%r~V1C0*1{9-Y8gPS^LmUdy)yxlwwX2Y%fNGAFpoVw;-MOW;R@*9|PX z&e|8m&xOj-67b=I{uW*n$ps*-r-C9{dFR3lO63wL&Vg%i%(w-6=XqBBNtdI;`J%L; z<}V>KJ`72yS+CRYKnOx#WHefKROMp`wLb<$*k;@Bv^ZAqwaobfNsp?MFEzojEXnG6 zDBBJUBpyF%`@Z}S;{LRgb%hmx^;_LQZ+l(|)48unQl^u8|8snMW&{{VV2Cgug3uUu zw%+{8XGxn+j%5*)5ZYQMIr3MS^RT_@Lw%Y@hd$MyA3_a(Ll%mwJZ_ODK&*(pqh`HQ zbAgLr=MtAK6ZaRA?kysb2;n*U%-GW3P#f>=KdSD`RS~EysozQsSyaWYG-JW21j`k{ zIH9)7EPMJlC{C&J{d`u$7`vtZJ+D!a?*k&XbRRT1L_5%dtWT_!cj;+Aezg81mhF-Z zRB{}MSDmP~+&23oV0Si%kr|zgv|XZGX5HOOgE>0}rKmJrZDpga(AIx{P$8E!>epiE zwr+f{cS^=D86$m`-gbvsso_a^)Q^cRpsXTp&rdV&c8$9~KXINeKHaB1kNMwDT>57H zhXaxwB0(=Iq7|G>#wkbO4gK=g+6R1%Om8mXC?0>!23AuEbmDu-CMzf0#{AE3+<%g+ zHuv9zTD@`hq9LaNG?Wrc#gHjiR66W9GJ6s$qEotJfi>-PQ8YJ2u3-o~$vRbna&{=w zHiNH(t0p&EtM3R>@!^uO*AkV*{<^2GH8K;K!}5(48p((B7{`z9Sf!sw>XK-K#AnHn z(>E!Y^*Z_H`#KJtri5YaJ=b!imXbksIWji`ygC~+k><1Qz#Ljlm{&R3hbU;1<{=3l zTyPCefBa1y9LBO!h(?+nXYN`TpW0{ohJ%JpHdM~+6N9uy2H@Y%9ia7=T3^vYX{X9G zc+`;~V+oyHdsZ@PI(j8@FmQ;dY(=9FgcYb|Gh4)3)Y^dtnjTGk`|Bt7J8HvYc>)3c(d>D9sr{9GZ ziQ%nr(SRuKQw6cHWUI>YFE+hdic7g0?{s3Y^K@oVq4*=cdWCAq5GR2uQNX(PvOSv? zLJ#lvo#jV<_>*|=tcLEqvL4tNdnLT#L{DT=_buZs0zj%XJ-VnF-Y|@cYa1$e9!D_-6~|9 ztvW2a&h)iZ@BdE@JQjCS|K<6nHl}0>dcLHSBI}|4vX*pj!_=XbiO-1I7?{OsTix*8 z?5dKA&HMmYx@ioc1$SBTw%$6B8O&5=gsm-5ezVr=w3q7EyUm`-TgUwUj?!*rF2pgh zH6KTF0bOr_UxEK{6Q{NdmDU_c8Ra>47dgY`Udb?}Y-lHkJMI<2=eGAEPf)goV{LS^+FXx9*x z6?PBM)>*Z$as=EX!QN26T7JgYGX`o&#cm1eQL%k~yUVfckji@8OJ2)Pk5g6*F6Clt z#=s)u6w~kivA8p&^jt)k)p$gd0Ce&rnJs^uzX;$s%q?gOqDZh`O*2=}W2xl`dZDr^ zSZU8Lk>Wh_BY|0DOZ{UnBvJOA;h`1ThLh;QKL*y3K;yo4!{s(8Xhv%VAQIU7AJvLk z=Bpc?qoH)eZv=(cLuzv@fSoYtlztua4W~i@kWEqbC{dTsTa)?&47RR9S{V!L>>ugw z4TuPv637;W+gQXy)O;D2LYnYr1vTTSmn51D#C{;YT&bZJ;@sxz#e8AD9-kU7E!s0V z`p>f=x=xbK+&aJKmq@cJcD2ad&$;NR@qI_V$6JXir3)K%KAlB)XiY9^aNQ%tyWn## zgcV#{)j`3+hyvY+%rA6LdauxVd5Iy=K+d-Wl$883RmoVKl5snu2x*Snf1g@+h%aBi z0+(pL8V^0Ob43G#4lz^DmpK`J)`MKS#y@$KzS6o}tiHySR&{S@xv6r?-N3c+Nr=&E z<~G=m4L{va6?5}fuc^d{p`XBm(!fM$g@l3`(`QEp>p@%jF1n#QJ9EC3N8*$gMJD7` zb75(^+$WV`$ZcQg#v{$kzQ9CwlbwHweM`fi0|-F4O%Tylu1G%RZ(0jUtRA66-x$U% z49&s~ZzTr^Tq4xjEl_Y_yL>5M^~T)(%;1_)469+jH<)=4ikp7hOL$T!yINig((8cJm z#=Uym*T7alWh;NOZF>5g@iHc4^fm({m?9w|(py)(df6;cU2>E17caq-(?+ZAcp%&v zDYW`T0~z<`!n=mdB_Rt7`YK;O6lY+*R7|#bvm%!PO|_Z;U*J2>y=(Pff`lQFE&m}E2_k&&e_Bcz_HQzZJ71z(n%byj~RJ4-8zuSjwLl|rEJ$|zCtZyU9elbAHD`Kn+g7kb%1mV{yF6sfY zz4`UsWw*Re22P|7q(d}Ys6K( zbFx!%L;VL~m?eULS@5;CrwNoXnbCX%LdzZOYmSBHR_<~*U!Ny3Qo=L6P?*#VSXFx2 zn*Jx5)i2bPn;|?KiG6zz)o*Wvb@fGz=M4C8xyroDC-yhn(oAuRg4@k7`u*PC!Qk9> z{5a|cwn>_M!kioQais2zG%1vkto_htlS9The~RcSIa3?9pe<<$Mkphxd(l3y#;ieG zxnP-4nCDRL&k*2jGfHB!f3ojg{fqpZqo(}zoXG~wW-yq5+R1R|e3;}nqrUIgS)Vge zuCTN)U8eh~yt|j(Iwd$4x--H^LF~u$Dh_Wu{(Dw4xZag|1#ynzBSF3-nh0;0 zTXv6GM6VOQCe#d=?rKno3ZzcqRO!npR(Y&t(Q@nAF zD;1678z2$SOpVz;c}l$&cfK)s$CXlW5W+I<=qZLClJriLVB$m{Tm7beydG;HK~KrY zb1Q?|E;7a!nK1!(`}{fT{PpUOC)7y|E=dy`th3uE%&EyDsmG#$hrVIkdBHa8Xcn$f z3FHbzA_3cI6@wjv2qr|PUiLj*cq;%^KopE3AN!WKnR&T7l$}r)~x1Sn}2u{&*m#wFKZ^(8cNk|>->$dJY zbkg{XL+$C)*)1Hbm8{^E1GreEc<}S`hBM$T=(1l%bhXa}CG4O6_?F<%N!3fFtm@yX zfa&ulMoZwmiQUh-OyUCZ^88j3mp@Dij0t90oK~v!R~A`M8QCO*b^2(ZMAg3ks>i`@ z+{Bu2{wH2jM2Jz>?m`#jgdnS>8zAxO7^%Jyz!%k;W1{X2@4*8)6^ zIw$mmrV%6ND=F=GY1ks;SR2tkNy>iIx(DH|X$|)lX z!&TUEQVF9z^4>0j7fWTSUR3Lr%`kmT^E4sVka63hmHIz9f&azX=NJaAz$CXa`Lv9& z=#MMsob$p0s^L`MicIt3%IQ*x0a5e2BF|palGp#3`p!yGx`jrZ4>~B!=F8D2#>a06 z$YTd9c3Qjqmw^PhDo>uxP~f3O#@wz8^Q*_X`Ew3k)3i&U^DjNutO#q?{8%1;@@Zhj z(~^0>!f|l=D{)oF0SP#6kl+dEtiCaHW5?=&l)OZ4X7K&E@CXP={Q1xGV)z=i!sexJ^q9uHfP#?DC zcjCyRQ+LBgG2R5r&c%RxBz{|omA^)}K)$6SQL90ualLVmN%Q~E7hqz&gQZV*yz5wJ zP^P1bnZT8?cL@0RP$5CYj^rW@$ae$oGp3C7BvP~7k_|D0l8KGjMv|2w995&9p*p;e z$8Ga9MT#@3xkiBij}Vhx#B}3byEZF$^t@2FzSu66@M&H8uwK0)0Pnklj}4vb99#LM72cJUX3}fcvA&5h0BEzRCXIsf;fHeMxm9tEn!gdigv(u{KUM z4o{03Q)}%-+SZOuei*ri z>bz)d+tP|p8m(3p;qA-NNX1X)gk1j2fRP+61oDiHqe{=SG4;;ZHWAA zWP*#-!6$XuNDte82_6}uLAtu_@q*&zJNkVVNOjYw7so=4QDtWT3MNB6E@!I;UmJP` z&0GLC@q3c`fW_}G_mr31WkY#wek#cco&D{y{m>ABkPFPpF5?+UYjfGqSm=!R6M->j zHKf69EZCP3&Jk7Ure!V@?_QG{aZ=)8zeUufde#9)8zN1yB@vi0JoeWxKyb zp7vhzjBA1E965^ISDTY$Q-OR_X6ad0s_e9mC1%%?{|3ygp3N|D(#}-5FaPN)wq;-w zMVzu-|9VXoqxe497l9oMJhq{SwYl|j>k@@q7QgQ+`$4OTLl3iTi^mgR8?of$5F*EV zHK+tXMs)&*oHM0eaAxVqXBqhR-(1`pf@ipzl{@--;_%Pv7VTw<#7TE!RfNAXTBuc7C+YnH()^4(BO;u8S%Dp>dc7A_Q0EbB(M;kXb>5E~{VNZ@- zC5sUoOj&XWQ?V_>{r0SQFto8TcQ&c<43&HhMGsh)LEj}A8#$p99#BJ1% z^h>)!d6;xgH|Cn4(?T&tw0^k^THWbG{#7WW60y)Kkj6g|8C?}TB8gt7*=px1_wnG9 z_%eG6pqIRWzR!Y;N@fBFgWREM#aAC*2F}*BHK@98oH_Dy&k+^9sIW9*fOVVqdE^R< zB%afu0!qJ^=icZ?UW)8!^^W%!TOgycVFPB}>r{4tv>U0u5qP6h#<0z7Bb|W3((~ zBMqGblo$is0hUKX1A%a63#fYfP7J;L&5ssz@b5tdM78DTU+r^?^n5el3@MM?iVWYCK`MQ_-nkw?@ZpxpTLtgx>LvU z?N@@(Ip8=Nf$tXe%K=M8HKCilu7JBn<3ZWOBi$o2Ws@-6Q^1|cHHggLz56a=o?&pSm}ahsG?CBJ$r^u|)V#-+SGsNF zK*YtnCwY#N2;ri&qxm%ZGIwMSKnd+6isu%%fhHtWYjiOdQVyG%#K7hMVv{*+O4 zxMg)QtTtTUM3@aNHK6I8M3kAQmNsxICnuu51#NWQ-yS;aJZF!UQiQUqx4VH~JTwyS1ms{nLd@>En?8$UD7Q~{O=v>5?TFP$nm$`L$dCK|AJ~6yQ%7`KfcCq z%P%?UGUnfQ8|gh(LdDKBr|*$0JwCq)(GZUc)f-2Jap&*}ozrt^RJx+)?M7beO|slT zhfEH~bmAC3?ZoN5MIVyb4vMa8@UJgw)NqlZ=F^ic3|x#siQ}q@67)(IuaFo&L!iC$ z!m!gf4NSEhFb3tvXqt6!=lSdi(5UCt>d1LPkB^MD)p9!0I;u>lENE0H#Lq`9g0SZU z$&@7ZgDxi0zh@1cT9o`@isEb5GoPIouD3@08DbV5FpE+ypfJrDM2}H3-`+&xzZksC zgT82s^=R8EX2`&&MScT9Oj<4qlK^0?QfoFVnq?^2AIdrjVScXLk?_%ko%VzzE`#;! z#GA5sVPloiW0O6w<_Dv+uK3?#WHsyc)KrD+;^g(ZvYq*NWC=h5U!c?SnJ1h@|Cztd zacb$R;L^!aSg61po$t!wA;&V*$QE)egl!gg=FKo1;MP_GW%xsm6s)11d7i$^Ay?vq zlt8}!eK)zLaF`+cYlt3l{>OrN#o2?j7RNAbQL=g7J}U$@&lbj5@Ot;$F_G!!Q=K## zb+7x$@fUm&_LP4PM>fvAx|LJaR@-KM=7=_YC)mhmcO5jCHw zwKItju#EmjNNU~d3KWKb>DB&$=vI-DSim=H@{#Y^L+zN_iA&C7$r27MxXkr}k^;r? zi)X7>9{U9^lvTp!vj!^+mMU1cgmT`v`d`y88NmG!I3%%k{1(y&_L?e7;TMBdniI~e zd?ywnP?QzoaSm-3DCqI(lFkR|_stBED=@uq5jbPDv;*Qs@g%js53AuR*bV3qxXWQ$5yft!YULi8wlV^l9r9lE7Ph%Kk)#&^^ANb2mT zGB^)Bi5;}U%v@?=kI5}%O|=hDx=lM^dx=j7&{jFH@yt-0+}{hpog+MD=(?ZE8X-~u znw@B&W;adR)B~x}jm<@k{-nj0uyVxp)AM@PZ_goDah`frv%05c`Q;ox7JCjVG%o;e zm3n_1`u#D^#tT*%utc8!O5q7{JyxZyAJArGuZQ8Q;7-rFH+^Jd@rDip83%lgi&~#3 zI9?2i;p?Y=&7bwye>L%jphlQOCO)0JQ>!szSCQY*i^gepEpaWzR<{V~4Em|vC&80? zxyaURadcG2mfUyGCJE)=!+u=-?xpa}l_lVZ4GusmiN85R+14QO8(yiyo|6v@i|Kaet~TnZoCYx!#CWot zcj(Yc55$YC0ZE84e>7+;?#&y0wPouZg=@}nxqK;$`$X{-iOc5VoB~^dCo<+T<1%c8 zKgbsfVkq*pGor#T(N1^HD|{nGi;^f|<%;rk4a=W3z7^#t##=M_JzPX3c&T9?{Qh1uqEgFnO<%&$eLXPFoax z9KH~1>A+LI`H9s}xMf~Ubw|bf*;fZRUx;s$Iq@p4A@_ByPAJ!RZx%Z4vp}Rqg6_G$(t<_~2ywDVA~{z3LnJWlURrO`2&=PfQTtf%5?CWix!W9Y zJAgdNsI~wqYkcyDs;AvGVOQQLHRg^O5L%+I66k52xcYErH%O$b3CCM>T5Bk17G-A0 z+q(y{p8?DR?$ig#Hmsq^{=vfQ$x)ReUfhH`j@9d?#h4$%PN0{Qw*|TbsZyX!98<4n zuRf(=%^X~t&Pj#Q(>fwenpwgAkJirtG086%&4QliiNX})SP-gAmB3iJzq>@Et4MLZ zI{>3V&f%d%t4}^n3~==4dt)Qi4b*r~ahD)c2-zrYKvjZ&o9FEkI&it|xa+DQ;(b`k zDuoUEy+ov?Znd0sjE44xH#lYgQ5)Pd7M$I3E;+`_vGeDeiyVc4>`D^_5@l5w{46QX zYxH^!DfaPwiEIzpF{X(myaoj?@qAY*TnN}dwKWMpt>KG*u1#^1t%gIA_Yq=mpxkBu zQmyf~FOkOOBjNao(RV3L03|KwbN=r(CZ1BG2oFXMDVS-S@g3ty3C{SmKj+bwTche>a}?B}g+VGTP;%^T%u1}dZ+h6IbR;wJh` ziuOOA{>~KI5Q=`(P42J!Y)%kKSIJL(lkAV=8)q})k+C1;&KV6G<#32k1{z(K1^SF~ zLe-#x6*A75Z=9ZuzpFpH4OiGJK~&fBaZCNjg|VUTRl@HE_%(p_Pc=KO2|I8%RWOm_ zi~12OclMR#Nfy2e-j1K5GGX938NM+DMi#I~taloJ~mMPX3}{;KH!qExfG zA7euWeUxTJ*EH2Rv&N_ z>yghN`=bGu$v}P72j^H9f{A#=#x0iJ@29=gg|iI4R%Cv9e z7w}L|zQL@YD)J-ddV|2A8FbQE1sBwmp3hWpcMy0{vAeMe`Hss<_T=%t zs)0&XABg_hkmsiQ`}cOChAR7e)5WjLdqA~wX6{umy$$~wp-cm7#(~#bA{)Wa?Ueuk zFNYgJOSP`U3)LPWM#Fld2}dnRgBpwEOv9cuO^5|u-?YRF2DE9RDG}SpbIIOpn*ZWTI z^M~*BD8XEfXq~vqRPKDy$IeWwt}=56Pc1LVH!XBtzS&dnp6Z#2PYWtr^}orgsV`a z{3LPOm#zrrZf&@-8=${Wr|5rDyOnEicf36_4~Zs^Qa$)FTq=uXn9JMKsshXRoR=(< z%#pDbWu%RUPuEmj@~zy}ao8Ayq1ym)7?!=KL4gRN!)vAI^BD2p3|88Z)V^Rtzc!t! zP9a26lTs4!!9HA)=-X#o-|iak=;vJY45}IJH z2XL)&B#a!mQN2UWeH>4j`Peipn16@t1DtoZ4VnMqnAZt8B0u1KHWOcLB9-k^fN(F@ zs?cJp?+m*gAa9Zx^-dr>X>P3~`(I_Qgd!)J?Z6B<1-#Cg49S z+(LHLNy?%r?9`J#Yt8;(4lX6v?O&UGC1oYQJEsxHl|Pnmagpoz3k1(Cy+#GvN+U@z zrQ=8Ak`qQ>ea-1UW}t2qQnH$DD3~Oc9Qf%V-NaRt<4XV$SpRg$rPTb;g5zv653J#| z0T~0=WXn!*HlQsfD-&rv-~{9ZdNZ|bh&ne?UQIp(pGCR@oq`yf0Vd7<%Zh~m0=YH~ zs=ix5jx5_Zjn?rT)rZ8ATXI=Pdo^*;5~Zn5MEkKMZqn4B2I&=hXzd0svkl>UK^f&bSlq!#@h%0ReGmQE3F%jkc$yoc+Zx;E$Kdfe-m*pkV+w}8kl<}JA7}0u`;Ir2M-=|A6yG8c*xS2%Z4fN>$=>i^3ie7UeEo8fWd zCdK`%3k&k-EW}j;X~a30xOe6^hO)p0Hqc8rg;Ensfx}M>gPhqfUKyVYe-2?R#I3~qQAB+|z2&GfJ#dX&gIK59A|L4BX*A~Z*)i#Fx_u>yNBBp8?NXDJ~tW;kjoGa_Lu z?c<_NVURA8zIPw!5JX7Z2^n1r%+HW`O!kr*i7zqsAYOE!j-ZBc@T_N@InW(eDqr@O zXH7X3*BpMn_b}Lstry${s0Y2S7Ykn-b=$H!MqR&PU#uE%GzHwx?3DlMUHT<_+lhng7Drqgs z=jj^z$t3<)=Q=M@+&he>jsu;+tHUr zQ1Id>J!c)t0#qgCdSvcVtMbY+#r8uhlz_uAPotFL7J5u!M(1=Rh8Hdz%R3S$T99)? zZVn-nWGeoAEeP5gjCp8pu4|#qAwZH>CSf|6yv+~myT)U|d9Wyk=Y8s`G~F(IxT;>s z(r-(2u%H1=dLmJ97Z?flZi|>O%L9erPLG*b(P#Ct=hOQ2nq2<9h03-R6XTz-n#*Og z)7lMdjAs@TJ(oN^^_%qc513SGVrcQ7knZcHRc8za($GLOyZBnB1<5B^XsgUFz4S5d z{W4FDk}NJ>wJO$ZAjq%@AYSRK8kXy!IEttd=wlRJ0kpO-1*^If&@^)NUIqDhmhSYe z^@u^|E<4b&3$-6I^6o~cl`Pbd7lG8rh=GTr`PCilJ%gRU&uG3^qODF9PuZ2fE7*bB z|HEXS%IpvUD;b153sQ*aU&q?AVEsO-FOfJSs^Y0u;b+Q8XQ%dTOCIm1SjF(-nBw+wyt}@fGj;xa5RXw+t>5g+OMrMHyC~rv^3rBP%QNJPkv{C>~nmhz9?&se-Z3V$Ad=l%NV+F(sH`({{l@zqM*OYgO8R- zYu_J*@7pu&{ryGQTPmIz>%$mdS)g(}Y}_SW^GX8!oSTNz)Hy6g`Q;}v70XYPUzfcA z^#*G%xlf^JjLf~cmf;${X{bhG@%Mok^s2hLb?dW7!SA$wS1q@{4qb=HNJ8LIp~g{w zsne*E-T|jd6)O*o@&4!kl?2<7i$0&4H%&Hpcti;8IF%~f0@VE~RR&smDk@aE(%V9! z%?7wF+u&?po>H4qlhTtrr02QS&T7zF*YCxDi0k>`Qw~z_U&z@9IvE8?AffM+QRzSA zU3^iuF$i#8cG2mGr1BYo(zySBj43|f0O`#k%0iV%H)7X-Wh=)?f;vX%`1?PoGHEUE zpj24S(3zc;jVJ3^XtIOlrcv^k5!kDS#)|xzZuUn}E7q#YcNXH4i(GWB9CSXwD~V#y zNm2CR5-yTE`aryq`(KO@4IuGRuMg@dY{rQ@;|5%`?-f1VUIW<4JfEWt$9m zpDj2RD%3H%xp@|x1wa{b8Q`Ro@9h&BdHgS(p6(jL9u>`JV2Drj)(qlCBxrUSqGAGi z!dc23IFqkOy9~$YG&x!@(ba9Cu*PfyO*lB8CWqvg*O25~y&>|^+{R`1eVEvm;Cmro zU5EPzd-37pNbfVE0ctd292mqQE~K*bH3)k%nJRIf8z@f)>E`z%dP2YdQ`mYfKh%aP z%aY;PYRG%`c};ZU07sap1^buC?CYu}a?yTSj5Qsp^-#dxI{w3(7L4GvcM_JihhotI zB1y|*QbN6+$F8f%lUNLe=Wta2`Fna>i)1f#OJ*f-vK8EO@TJ|`+AaEZ5ZoV=5U+Q{m*f>ki>L=Wf9-hS=)}$UbY|=B;csw7?UwO z7$DriNjpqdIj@=8=$D@-O+ybALLeIqDxx4?Z3*!I_lxzg@IcS5zds=!J+Ow}e`r{L zXz5X#-H|6$EHYx~x4d5bk2|TczqW|>KI0qA%)8bkm9`n6S~_AFJnMw{9|+Z1UC1Ui zMi{z69Fxq$(O}U2Lh+0e-PGUd&#=Rdf0{Ut?Qz#(5Tc#82j!R}kf@E}tM{oGWFxKb zmP9N!=%eD?<(~V(gpfgC%Ow`Hg8+$8lF~a19E5!G+B|2>I=YS7Muac)tbl0@9*X4h zyet)wS&Jq|zHYqQE=WQtfuQ)kf_LH(!p*5pT0AnQ*0`;T(=5RGEQf@9mU2sI7OPG8 zOqz$OQRjN%N979_!$`y25RX;b_Lk{q(6|Ro7(?h$Ppi(~FG*BBvWs88Ho^469_XF1 zOyPn0IAP*T)T-@36d)L51CNcVppEp+uF=cJrzFwDz}Sm(`}HH!wukX3@oUz7zTt*H zUsN-qg)Z5e4D`=v;lg^=8aVcA#ZHNrpl>s=Mumo?PICIQ`D$Nton#m67g@hQ z|NfOERsIRtOeKLdY<3Fq5THk{~8=JiSB=BLwr=&ftgNtv2k}(Pues8#M z{yT!4$Nkf$!J11MoDVEkKDj0F?ISM>Dmo_+J;vo17AK&S!FR9e4CpcUP&kxZioVVCvq4QMp-yFFAV@D3bfY9G^jVD0?Iq)s8{O~ces}C0ex9Z1ugK_u= zn0e>z%`>|tKS}$lOOPa}ct~L34$^1do32*o*{R{KgH5p1joDR7`Q?*OQ&+4$k8X&! z$sl!V@=SB94l_J=aMtBGpvU<@&^W)|H1+aAj~>_2rz>yp(FWqy@0GCOz}O{Nw#AE# z(XBZ*Y1$(=M+7D9nmtJlO!C zjxojsdNop!_Re>QO_;B;z`jQBRX45HAJ6i7(C94!^jtk?ns^46m3N6QMnO*Tu+jhDWphA)TG`RF(ADH9}r>B+5TcnUB<7*Q)F7HI4V-fpX|@NCxPoTd)kro zEJ49#uB zl^2xm+yU6ZIHY!bc=Zx8Nd^Sc!hRdREq!@k-k%EwzQ9^zeQ~ri!oD8##1sF#1|`eT z5?J#(?Qn8b0fR3JjI34lMadRa)1se{R%=fl;ow!%A+P0b_C+ql2}0=c97F^uV;*-A z+rjLl7ozQ*xamZ+JnsKdx6P=z zHvf9H*Iu_5GvRy(#BN465S6dCR&AwJ2W9%gd%VcL%3fuI1@mst0 z>qhFD)77y=^*|Fo$s|3$!O1r2tnteVK!;}>mnFXF`FCCZ+?&2v(VsuNPfnVQURi~6 zv6gQ)nbjVf>cto`G4;Cz9!FStl)Mbcp9FoFS*K)+{D|;7N}0A(5ZnTKN6T9aF1pH@ zq}UCId!Cbti{Q?S+h-Y9qSr$uI4K?PQ1?s6*Y94T6s0#1g8~E8Ly{=SgH35w9J<+- z47Ri;_<_rM8~iqNpeHcyx0J3vgbfa5&aJR5*`P&&u)%WvJEOJJ+6BCdpN1b&Br?`Y zP9_=KtU|e%(d+gM>mL(YW5rHgrE|2fvHbUvnYWqgv3}vqs#;YZnniKzIuIIN(e4>` zzsk=9XIal^R}q=wOSmg=>HhO-a&7D;*O3ug@*ZG#hZwrTzy=0T%v<9&4Uw3SiGn97Kms)xEU|oG?^qcT3}q;{2U@K%8W!?(&H2)9zba*$s)AP(mw@|U~qy7U_dbkWPui}CxQ zq{H?5L;@@V8a=KcAGvF7yoxduA`gU;Hhr^@d&;%={odz!a(U9)f;yhO63rt+?HH#> z1(LT2zN$eEqZOG$RH~=>?sFPf0Gnq z9}xun;pIL|_Ujc~!~wJCkOnpd!qgW&`h6+!U34vRbe27(01*l&g$d@$R%eZ{6m|Uk z`o=Fy6y{%N$dwwdc>UZW0We=&$F*RukA5P2U!QNNYQe=klH&1{brKXm5QVVkB5{EH z4($QzJ64-LrLZn$!*32U4!Cm(?Rz5ieY+*a{0m>AeS;>Z;;M4r)TWCoa^*EYn zJ>Tu?I^!F0tT?s7*n9H+Wrx()!a`pyiQq;>wP0&QDwtxVnsL~Cftd{Q3BLG}{kJ}Y zAej@^Gx(bfC0UYjbuTtoPM&c)l|u8fztdRu^nJ6wRo{=%{faO%HCt%x>pto)a`S&m&#S`Kl zmw@|lCN(EJg1BXqWSObonX!-8%5K>zXh=Z4jLdhpMc4)DX@<&)COlTK*w5vI#kXq(xf6gR(`rZjPUwP%&s(H^fHo+`!lR#wY)`UL!b|2{4CLbHltfibPiyA%7d zSsQ5%^HZh6t)x((A;5RQAAJY{QxjV#=VG~C(2)O9)AVUU#n_$!$9;#nxJr?6;%qQBE?LLE65 z=2cvtPiSoXR3;wF>nR&|CXxFEfDe}zi>+;Lks2yl+hrxWQqy$;_WvGu+0kF@O;V*2 zU1)Bjdz$~Ry)S=<>iy$Jglr>Xvd)mLvTuX3PIj_~?38TT%M!*CgUJ#K8H8*hdr@{- z%93ql-}mHW57BdI->;={zx0OxoFw~;)uaIq zL^8}RCj~85^fDS^(-nOjH!L%R&2lxIRwiLJr7Hg18?Qy*o4P59voFy=}05=!o+UqUS5+TX6ts4o$p$f@nC)5O~>GqdrdJz z-CF*1Z)gaTq^~e~gtL5;qpuZ-Wl|M%vO({pHjA`AI}Uq#Y4BMAQ)OJzQ(2cp-!6eH zrA6{K;sq?3>E@WJt68C_K^~Je;a+F`BPN$O-4%2rY)Q|biALrs?uTqr>>Iu5+iiG4 zM}PJ_;|{>t?d9?JAK7AHf-Q5y8uj<5X}B(tU5LB*(5 z;L@?~ILq@)x8HQ=o9fo_Z=~|7lPU`-G)R4`(7RpAim#;~y%wRiN7-0$r}J0p5@2~x zdzjZ#H-_6R@CwOumul{^_+Fy#j>@PKQl!}MlE-5tjYtB`-|x%yrLaGq6m=Q3u}9rI z32C;~mf*Nc{EVYMCc~qZ(q8uo3F$lkUKcM_=8Xi6<3+$w9q{etXFyX%bRjMg*{Pr} ze15={t}Ruq@3rV;Cs=*GIDvu5@Ww}!Ev&aS@Cm`pajC1;pbj}`V6pOfUQ5D)s^-%= z{A%%0oRb$^!u8ztef{{-uf^ld)fd-WvfIX*E5aT+_g(J9k|^aX@d@Bco%@V$bGoe8 zaS*8~zBQ7f-1Wp8k$1{K>;)MfR^{#nbG=ZCONUsN-xMAEmv5pnxKeXJ%vgM+U}MMW za6Q7KTdCXN)TVTL%#LnhB@DKCUr8MBvqZF$^$8Q-jq|=BOBW(CRC-dg5VpQDXI9xv z#iZW+LG5Wh=D(mqGgO(|t=6 z12ca>4m~PD{f0Zy9-XO=fj2*gUbBK*(CJ#&GSZVuXy(XTo2*NTz zYetdbyJW)dQ;9*2rWqQ|x5fM-pgc(Y%fW8-YLd1BqZLV9eW=mh%*V?@)vQbog{S#l zvX;Vr9cC}TeYB-1rWz~tQg;dBR{nCDS6e64IUzhd+kuSP#k-PcoFrR|Due(&t0t9L za&(Led*{W`$o=)V)~C+nzN41jYvXB-nNBPJK+#56m51puR7lJCb zOSXfaW2QLZ29Br8kx`%9JkFLxW9iRz^#s?EoVWR<`gvc%%eXD_*yv~ zCuVd8&)>U{JM3y~*srC3_^4YZQmV!=gFKF?%nkR!al&w7Ci)oG2cNFOt+Y*ts`Ocba zGtH~1#d4!P>S8H)9BFG|D^$t`nqX!P?B>cGb+`k@OLSJyq_jQ~3Z_HIEU){9SG$ks zG%0*?FrJua5i}9KN|a2AK5XtKx5+u5c#MO}RFz@bXzina>v?dua4#~ZXO+^DiO%YB z4yT|{-LsfV_H>oZDJtPkq8Za-;c}lHjT!H__8xp8`f1EzuHs$o6nCamUY&$tck~d( z`O}!S@#Y7Ef2!TPBu}oS_cy9bx~F{MFofrdhwkl|lsX~^8FDjJGQvaSTHEY>_$GRG zHEkO1xUCaFNPgALUpma>6JF2`spzpqBR=my=*~0NI9}&(_dXd;Xi}1gDd>Kb;3d(M z?d*04v!YqPm63)XLH@WgT;ndj4rb9dk>f^06|AaUaTWR5FXH{A*VpT?bGFYK zhLNjqZj8FG>n3kyNte`OjV6Zoz&Xk_>1tg06o|AG4rFA`=XgE2^xY~VZ7W7{zm!QW zE=?WPZV}ViJGdumj;-Fs8!vt$?cm+CLRn|9SXkfKN_fO}1>F}t&bk}Etsd_k;YTaG zn*IAdz|7q*xdmYWljOnfceM5rUeq768^3eG{8V4~**7!FckcO_>Q^~7`X8~{#9Xb+79L7g!)t9{VqI?Na|?x&Mjri5itGuH zi{Na-`GxEgb{M&4(9QlS5n+ySz6DiQx8#pbB8UGRtzMB(+M?~jmk=jE(0@|5Y8Cja({nzJU+=Bg}g$gJc;7IM-M9bm;B(=# zH`)!^bFZ2$Tt#x2s{Tu;YRf~bxLfW~hh?U0xqwIFg@zyn)y>Ct==b{Q_);38Jze3zNIVpZB&}dQA z-F9Fy=pnf@)GkVte7=7LdtaqQ)NaH?yVcVeG}Y0IVxbH5Y|N^0Sm_C)%eP}XuIX@| z!??k64J8`s8Q(-L+8b2_RTZimJ7fkWghlOK>!TI?!9bsv_Osz|+HCCQqX#&u=sMqX zIXY;*Xk`(h!X@tKD!p~oZaIutCZ&0W{i56ZKomMR2!L8(>8GH#Wj48kQjULFa{@Vf z2 zHeuflyhh^G*UMXc?eRRyLbl&7CU_Ibe<~c1J8dVcDWwMz@Bc#Y%p5izE@4`iU%6+F zdJz=L@ZBGfASoCrYNRNnv3=62NJ*{Njt*ck;$|O9y-f?Xt z_}+S1B*2%WXY5Gp@19&tYgVwFu__bm!H8Sha)*l5b zf!_I1n1>`|Y8RWX+G)--zT zPzwH5z*DgvQ#!MSF4?5qI!!iTJr`nnYx6hH1*38s;+l_cJ(JdrQ0-J-WAEoWe6^qU zKyK_($>C(vLu4sKhWLXW1W~6S$#8cPWoN)W_}?jv9kzZol&MQLLeqg=IW9(a-xMv1 zXsrNEB`u6&XS#7_O-TEyuJ6FgRl13cgPXzTAny?S({|tMqC5>oagKk`wSZqM{@XI~ z4?nE45#kR-x=nm3q$qtXLhT`D(`C=L6JjufMR7lBCsDAPML~9ujw+EG*nFb>3?4n* zg6UU*=m6nFmz-b+O2qQ}iH9HWh0%!wV;d2fLjoV(!S#kW27hi%Z3Q2G4}^b)$Zkvv zcCIp-w!_JO^ESF7h~xi9MBV_Q*-F*yiHWmyCjVfS$CR(V;r-w=h$7rsN5NZgY!K_(3x z3`fjl)^$CyltLmeO}%P(zQ{ci7JJQAyOknoV?c8 zl+|}89TRayc4m;Pb}={p^Yr&)Hg@=Pl0RFj5mDv@~zFg7J=>f8g2Yf>$>=x6>MK_)6*fXDTP z%Zq-d%SD%tqJP3wd{?S z_~%6@!9&#e`C*ZcibiU(N9d}=z887~k%OXHP1AH+^gGvpgO~Fzovc&rS?HSnNB>xIvhq%-PaZq=YdGxHBZ}PT2g!`5% zseuyh-5(M}uWhCgBjbg1rqU0_IwsXj7@AZF$em=iY`4~%_Cii{)vyqC>i?;Fk;lv;0_g5W2wWD17pO+#zfZW>cE0GY@UIH!qYiY)H8< zY_QvtvWAzW$r66BE&y11n+UJPD=rH7v?Db)*ZB1ev>Ngr_CveXx;{oHmQ!FP??HI6 z{1RL&Vb4IHV@F3&GR#fW#Gj9v5aQ5CQZP%jGl!aCXitzFyWH_FNdy z4d_D?O@jq#B}j2TnsGEO`5e3tNL757!je%pM1B1U^uOK zo-@rlgU{?@sUnPcr#HwEZ$D$fndy@0R3_)baC~ibz{A4VEzJ=}2Zb4_B8ZgBtx?ElZ|-P=<+e4Zk>VKx-D>rIA;vpXG&>%1T12TuJS(#ByCX zyw{anTn`JZRXb(gu@2i}Xi*#BP{DkDC84e^ml(8O9Nma;4*xKXP|^rxV>X_h)SqyF zneC0&dwa{x3Ngj5L!3cX!Bpk?bcojDn_{bRA8g~A@nhX}IbC8_1y%OusOxwwMi$(v1wAVk#gP!U>?Z#~r$C)kj{uEp?EJ5}J_N0{9h8L4~evz*)L z95Y6cYzkF%h<@SVYJF+5LqzD-oVv=&pNqBO*jfYs6;nOy&es^^c{4{PlTGW(8i^QK zdj=?Hbei(T^v%QrqBa}xs#=4M_$>SO=mwN!# z+i3RmTahh95tMye-{0DO64m`sGHNzsfZn}&r;7?`B=fNg+ zXRz^^(F1ihUDag~LYk7C-NY@kIA6$`ZN{uA)!Q?U%da*&%s`fF<2$JZRdmxl)^@YQ zN&CQrbd;hcl$M_;~0W}NoY^KD1#K9G1VRhp>c0R7L3z)`#3`UmVGExTXu(Z&2Yp-q|GuQLm zh0)62G(xX@Q8u#bprSorM((>m73QLPL_*KcB{N(6w(N`V3cS8L*!ya^E!_9~F1$6R z=M|c8q>y&8$7R(MR#C=a#z!>^DI#t#?B4X2xx%Rb>3gq(63G}0W!{BtHYha>rjSWAjSLo04o2v|u)b)NKnYlzhan{OQ_l#~M!xnfBxw#>9TrQYk*}u7?Z1 z7g$u+WnJV0=)Fwza>AHsiNmY{3RtOl|IToGMUe>$m66)|?xZV-_Tj;8nJ(Fy<$??^ zO(}UqCd}(iekXWyd;Axoi1$GvL2lGaW$!5Ns&f2GcDwEsbvJVK)RAt4Gh)wgG+MX3 z`SIPiHyas_X=|6Pd>E>@<`z9dMso#2vR4zMFA0r-3m)(P6{vTBin%N4N zfd>E(G|*hHbQI@I@LV)_@kahfPj1_l4K_M64U}El#8;`5DT*h$4vHTRt+tt!LevPMO}M^ zMKXGK5lw7($$Yzz|*M<|n+J;&x z7R&Y7W9u5p1H%Y8ze`-Q{Bnb#d9}@tgujMcLiL1OU4le7uY_Ju?G#_H_-PT{Ji=$` z=7e>I(HE=;bVQJ@B7WrARGIE_l+MEFa>&Id2B)9$%MU!sS)wQ&ui8tiGq;AI`Kdu5aLv@Qi-NmY*N44TE$d;TZ?(a(2H{8^ZK437thQKhhZ+#{ zGb#b)df^5s>-bYbK>!f-&dvEm1Vg+BDkVH`E0c^B zX+ECmy3GuzapFU~8lp94Ej*7wp`VH*mArekwT{X^pA=ikkLAz7S1)h)%3ra&{qgpm zxrc5%ANrfdAzyeldp2d&dhy$QNbS0Aim$mSwu^oK-Dxx6+ssX-krq($m=fJ3>J+7Y zGCXDfn5pdnGql%%yD1mB495)hzdCjqo}D?UeZNGORxeIXd5chF9aU&=iXb5;=G(`2 z$&xr;Jf9Q9LgG364p|Qz3tleCx{oKJjQ;wxI_UiOm%Vi zV}`m=-tq6<{{CaOVfmz#r}>(>^3%^0>qa3N=AntPPCpe=_C#5NekGaudv}v@^xkhE z0qgh3VYVx!T!8jbwPu(6D!E=QU+e~u+he^O4hx+E9>0~lXCv=|eXSciP0K;$2p&0r z#O84ViS{}Zw%2gnGRuAvCRqX$krec>NeAamiq8iRtNlbZUQUU2F&gF z#e1%e5+`(q#!UX=TUtzZQkrV*Wd+YCf33gv~Q~s-|~dCDaIg7FjWOHYHHN`TXp5FGtOpg?J7F>L%7ikx+EVEP{o_iGw@- z7RulU)El~lx$1^3R0y7ID!QJ*&(Gg}VNy4(_(bDeK{d9~^o>mqxBZic;lj z9tyP+1GGhVHCIE^h2-qS3Z~aH{_nCd*$W~F)}M<>xBC=ma+!Tz?ApO2D=^{JyRpKJ zewoJ}I5vZ+we2842U$w@HK2w(Q8RwV?Fc!2&#M~pqE?O{%^H@&4Xcqm_8&JB$VH_jlNBCpEICkP%RTs(q*?W(O_3oP}gu>Zf z8b8nCf}82VMgd1V(Bl!REe}*^zuHN`mG&gnC|}m^bH|~$Le6`geHIQDrD~%`=4Y~R z%h)rb{a5eB5>uV`iA~WpUOQb|M=(R zyB|arHgwTuu)f5NfDq zDP3V-h)RA;?@pa<{pWa8MpIWyL|sN8Ft203is@k`Nn1>{(iakbQP2rR0y+UEC^Ka| zTD9uYNCj)h{-||URZ(7lYk($!QBZm-_=naaT;(q|&R zP7Or@IATP=CTl4F`5KRE3-My53v%@A<_q5*(#&zTfht=IF>OTulVx!;dc3UH`nmvL zZo^o>M(Ilhm2S9;faL6+7CEZjsXJPga;u87_BF?h$iJ7R&Ltq8dMZ7XaRePBdjYs% z^x|a^k_Vpn>{6EfU68?E{ysyWxKIP&d&@5h^BP%Iry$@fm?!={Br!{2 zVC@4B3mv)V|E?YX`G{j_4hs7B8{W&ozuGwO(`z!8I9Y;~*H)Vv^`Fa#b|Y$B#toGQ z{~Ww;dUl8e(FWYDnaeX$6!H70KSURl9Nhv&KTa>XxPtR=R2%`TuYJ0ZQF)Nf(;9&D zXqkgqZDRcAb1fka(33rWO1r@u!nPqZZ#f+Cm}OV1^7YW zuetfkPTL&1jdQJ+?pP$=4ThenLqzFo5%gy3BrlZ~(t?pu4QNF9K)u@Whj`WfUQGoM z@C-qE`FmR-e*znW%4vdfX>vJD@2A}x1ZXVz{tXC|m4~k|dzvQhm~S5^!~1>=Hz8Ov zY|tpskr(L##R{NRcqz}0N1O6>q^Bf$)5Q6jn5_Kf_8^OtDIg@`)PcKvB+kvvy(an2 zU#A|xO}(vGA*pSrte^u8Q1xs69t;tC_jX=3Jz?u_Pu2Dth_y<#9#BFr{vz+FbUu0OY?DbYSXiaM^Gw`Pdt82N^Sr2H26Q84{ zmyTg)!v*q^P458*HvbMVS2+?NE`#JzoKE*g4?jzt4}(n4{3ij@?4h7SU@IlxqH7$a zD&_`ncU29mH3+nrcfPD{0O8XnrESG>jdap#r!XpN`9pJ)@6L1>OC>n&Ll-)`_}} zS0ABgzA&e;7-#1aJ?b;L>o&3{$G^=WLvEO_ts(cLT!kZv0?E?h@RWNsQuGScGqwBu zI>dns6Fo&lAU3_q6hbzRna1#kfJjvYci#_kSG6V*+YMv>gt)n3*3Y74%}0Yb_vK11 zbjSh-kF;+L`cV(61a%!SU*uev-75E_32*xWP`XZ+2c(&0tXv+jz^FD*4~kFJp*RL-$kU~TWpi`!!E~~2 z20l8wK3|Ymzu+N-y9g#EV5|kOJOEpbN;-ptH~#3dN>$U$pLB8rx&{DM0@3@@mpdFH zz}}advby^9jH86Jy2_;A!ZYu2CO@z#!RIpXQ1|2Iq(^C?9;d2+F-(;>5DwmsT?3uo z{S2>*tbK9ghbraR8~L+`;FNp-uDURQ*+Fq%5%K=$PxGvG+?AYt?pztIli##X)g)FiqDz zq_Zj4TRE&QxGCrc9;)thFEr7HTUp1$1(o(`=KHB5w^YCXbwLCcwb!p6CKue`0fcvJExFBV!!zo9p8Zbr z>Y9Zed_XEJW2hpZbiVG>pYhQ~shdy$5n})36ik*q3qNK0{dFIn7SNJKikd-d*}2w~ zJ636c6`tWbOEH{oxDhqm2eb_KEVerPDX^$%TY(QryjZm~e(3$$QeVg`ngJ+f`&J9# zfPvV-iRpt{e?o;j05+R7u%5>pn z#G-*b&jqCjlF&?(O?7C2%*{f?#tt8TH=yx-+^!YvL$W@i9~4zcg}x!MQ4cn)-h@=B zZ^@U;KZHxRLF$kjztoZFk|@T<0mCc|U%SKNnjz8tZFxq}dS#*EsIX(}^>APkz4cqJ zw9K?XlU&Tsv)WT!28@?gHlcYDT>2cu&M8w;V_O2nXSHK6$TGl4tl5^oo=cn`LY}T3fwE<~;T%{BaecF3+84oL zW_~YA*WJEG5_B)10G-?ipuudn%-wXm$ zn`6IEfDHJ{kd>`jF#L5PanC^r8ell}4%qnm0LIR*V`#L3!wpK?QRnJF5Vo{;`57}u zavzpn-1WM028>eF1AkPg1tU|TJBWfHFbrfjeI^WSeH2L%7#{doIs=HaL77nobNeuH2C z4OIewxE477l_DO%(r))_ZekuB$A|o0xXuW|$G_KZXbt+e{e2g!_0K^heiPpUiGX^dQ9x#{KFYH+~P7*;vhr>{xojsqRW(R!u}6_$f%M4 diff --git a/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_symlog_params.png b/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scale3d_symlog_params.png index 2d1c7503929e22ab7832ac66284fc6a399d2da5d..1e7c6034dead4bc24ed676cfd049f5511eff982f 100644 GIT binary patch literal 63095 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 QJ^*~lNGOWeiW&$1AL`>H_y7O^ literal 77445 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 q#do@b+ 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 Date: Fri, 10 Jul 2026 10:48:34 +0200 Subject: [PATCH 48/49] Clarify release note --- doc/release/next_whats_new/improved_symlog_ticks.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/release/next_whats_new/improved_symlog_ticks.rst b/doc/release/next_whats_new/improved_symlog_ticks.rst index 9fd0350ef357..1a0894b0949c 100644 --- a/doc/release/next_whats_new/improved_symlog_ticks.rst +++ b/doc/release/next_whats_new/improved_symlog_ticks.rst @@ -4,4 +4,4 @@ Improved tick placement for ``symlog`` axes The placement of ticks for ``symlog`` axes has been improved. Ticks are now placed identically to ``log`` axes in the logarithmic part with a reasonable extension of this behavior to the linear part of the axis. Axes with too few -ticks or spurious ticks should now be avoided. +ticks or spurious ticks are avoided by the new implementation. From 81749a87009d4305a7158f029d3bac10ea866d52 Mon Sep 17 00:00:00 2001 From: schtandard Date: Fri, 10 Jul 2026 10:48:54 +0200 Subject: [PATCH 49/49] Add example plot --- .../next_whats_new/improved_symlog_ticks.rst | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/doc/release/next_whats_new/improved_symlog_ticks.rst b/doc/release/next_whats_new/improved_symlog_ticks.rst index 1a0894b0949c..7b55fe7a0b29 100644 --- a/doc/release/next_whats_new/improved_symlog_ticks.rst +++ b/doc/release/next_whats_new/improved_symlog_ticks.rst @@ -5,3 +5,17 @@ The placement of ticks for ``symlog`` axes has been improved. Ticks are now placed identically to ``log`` axes in the logarithmic part with a reasonable extension of this behavior to the linear part of the axis. Axes with too few ticks or spurious ticks are avoided by the new implementation. + +.. plot:: + :include-source: true + + fig, axs = plt.subplots(1, 2) + x = np.arange(201) + + for ax, (ymin, ymax) in zip(axs, [(-30, 200), (0.6, 6)]): + y = np.linspace(ymin, ymax, x.size) + ax.set_yscale('symlog') + ax.grid(which='major') + ax.plot(x, y, '.') + + fig.tight_layout()