From a77f30ac6bf45de9d0dbb1fc98c37816a3fbd4f8 Mon Sep 17 00:00:00 2001 From: Carter Francis Date: Sat, 11 Apr 2026 21:14:35 -0500 Subject: [PATCH 1/5] Add InsetAxes for floating overlay sub-plots and enhance layout handling --- anyplotlib/__init__.py | 4 +- anyplotlib/figure.py | 76 ++- anyplotlib/figure_esm.js | 523 +++++++++++++----- anyplotlib/figure_plots.py | 123 +++- docs/api/figure_plots.rst | 7 + tests/baselines/bar_basic.png | Bin 8975 -> 8972 bytes tests/baselines/imshow_checkerboard.png | Bin 6291 -> 8587 bytes tests/baselines/imshow_gradient.png | Bin 5613 -> 4843 bytes tests/baselines/imshow_viridis.png | Bin 13135 -> 14685 bytes tests/baselines/inset_1d.png | Bin 0 -> 35324 bytes tests/baselines/inset_maximized.png | Bin 0 -> 37789 bytes tests/baselines/inset_minimized.png | Bin 0 -> 32793 bytes tests/baselines/inset_normal_2d.png | Bin 0 -> 37475 bytes tests/baselines/inset_stacked.png | Bin 0 -> 43230 bytes .../baselines/inset_stacked_one_minimized.png | Bin 0 -> 38617 bytes tests/baselines/pcolormesh_uniform.png | Bin 12490 -> 12490 bytes tests/baselines/plot1d_all_linestyles.png | Bin 22221 -> 22219 bytes tests/baselines/plot1d_alpha.png | Bin 13905 -> 13894 bytes tests/baselines/plot1d_dashed.png | Bin 10448 -> 10436 bytes tests/baselines/plot1d_markers.png | Bin 12834 -> 12831 bytes tests/baselines/plot1d_multi.png | Bin 14519 -> 14510 bytes tests/baselines/plot1d_sine.png | Bin 10866 -> 10855 bytes tests/baselines/plot3d_surface.png | Bin 50850 -> 50852 bytes tests/baselines/subplots_2x1.png | Bin 13852 -> 14552 bytes tests/test_inset.py | 249 +++++++++ tests/test_inset_visual.py | 138 +++++ tests/test_interaction.py | 23 +- 27 files changed, 982 insertions(+), 161 deletions(-) create mode 100644 tests/baselines/inset_1d.png create mode 100644 tests/baselines/inset_maximized.png create mode 100644 tests/baselines/inset_minimized.png create mode 100644 tests/baselines/inset_normal_2d.png create mode 100644 tests/baselines/inset_stacked.png create mode 100644 tests/baselines/inset_stacked_one_minimized.png create mode 100644 tests/test_inset.py create mode 100644 tests/test_inset_visual.py diff --git a/anyplotlib/__init__.py b/anyplotlib/__init__.py index b5f0f74..220ea59 100644 --- a/anyplotlib/__init__.py +++ b/anyplotlib/__init__.py @@ -1,5 +1,5 @@ from anyplotlib.figure import Figure, GridSpec, SubplotSpec, subplots -from anyplotlib.figure_plots import Axes, Plot1D, Plot2D, PlotMesh, Plot3D, PlotBar +from anyplotlib.figure_plots import Axes, InsetAxes, Plot1D, Plot2D, PlotMesh, Plot3D, PlotBar from anyplotlib.callbacks import CallbackRegistry, Event from anyplotlib.widgets import ( Widget, RectangleWidget, CircleWidget, AnnularWidget, @@ -14,7 +14,7 @@ __all__ = [ "Figure", "GridSpec", "SubplotSpec", "subplots", - "Axes", "Plot1D", "Plot2D", "PlotMesh", "Plot3D", "PlotBar", + "Axes", "InsetAxes", "Plot1D", "Plot2D", "PlotMesh", "Plot3D", "PlotBar", "CallbackRegistry", "Event", "Widget", "RectangleWidget", "CircleWidget", "AnnularWidget", "CrosshairWidget", "PolygonWidget", "LabelWidget", diff --git a/anyplotlib/figure.py b/anyplotlib/figure.py index 1e94563..b044d3b 100644 --- a/anyplotlib/figure.py +++ b/anyplotlib/figure.py @@ -25,7 +25,8 @@ from __future__ import annotations import json, pathlib import anywidget, numpy as np, traitlets -from anyplotlib.figure_plots import GridSpec, SubplotSpec, Axes, Plot2D, PlotMesh, Plot3D, PlotBar +from anyplotlib.figure_plots import (GridSpec, SubplotSpec, Axes, Plot2D, PlotMesh, + Plot3D, PlotBar, InsetAxes, _plot_kind) from anyplotlib.callbacks import Event __all__ = ["Figure", "GridSpec", "SubplotSpec", "subplots"] @@ -124,6 +125,7 @@ def __init__(self, nrows=1, ncols=1, figsize=(640, 480), self._sharey = sharey self._axes_map: dict = {} self._plots_map: dict = {} + self._insets_map: dict = {} with self.hold_trait_notifications(): self.fig_width = figsize[0] self.fig_height = figsize[1] @@ -263,10 +265,7 @@ def _mg(flag, key): plot = self._plots_map.get(pid) panel_specs.append({ "id": pid, - "kind": ("3d" if isinstance(plot, Plot3D) - else "2d" if isinstance(plot, (Plot2D, PlotMesh)) - else "bar" if isinstance(plot, PlotBar) - else "1d"), + "kind": _plot_kind(plot) if plot else "1d", "row_start": s.row_start, "row_stop": s.row_stop, "col_start": s.col_start, @@ -275,6 +274,23 @@ def _mg(flag, key): "panel_height": ph, }) + inset_specs = [] + for pid, inset_ax in self._insets_map.items(): + plot = self._plots_map.get(pid) + pw = max(64, round(self.fig_width * inset_ax.w_frac)) + ph = max(64, round(self.fig_height * inset_ax.h_frac)) + inset_specs.append({ + "id": pid, + "kind": _plot_kind(plot) if plot else "1d", + "w_frac": inset_ax.w_frac, + "h_frac": inset_ax.h_frac, + "corner": inset_ax.corner, + "title": inset_ax.title, + "panel_width": pw, + "panel_height": ph, + "inset_state": inset_ax._inset_state, + }) + self.layout_json = json.dumps({ "nrows": self._nrows, "ncols": self._ncols, @@ -284,8 +300,48 @@ def _mg(flag, key): "fig_height": self.fig_height, "panel_specs": panel_specs, "share_groups": share_groups, + "inset_specs": inset_specs, }) + # ── inset creation ──────────────────────────────────────────────────────── + def add_inset(self, w_frac: float, h_frac: float, *, + corner: str = "top-right", title: str = "") -> "InsetAxes": + """Create and return a floating inset axes. + + The inset overlays the figure at the specified corner. Call + plot-factory methods on the returned :class:`InsetAxes` to attach + data:: + + inset = fig.add_inset(0.3, 0.25, corner="top-right", title="Zoom") + inset.imshow(data) # returns Plot2D + inset.plot(profile) # returns Plot1D + + Parameters + ---------- + w_frac, h_frac : float + Width and height as fractions of the figure size (0–1). + corner : str, optional + Positioning corner: ``"top-right"`` (default), ``"top-left"``, + ``"bottom-right"``, or ``"bottom-left"``. + title : str, optional + Text displayed in the inset title bar. + + Returns + ------- + InsetAxes + """ + return InsetAxes(self, w_frac, h_frac, corner=corner, title=title) + + def _register_inset(self, inset_ax: "InsetAxes", plot) -> None: + """Register an inset plot, allocating its trait and updating layout.""" + pid = plot._id + if not self.has_trait(f"panel_{pid}_json"): + self.add_traits(**{f"panel_{pid}_json": traitlets.Unicode("{}").tag(sync=True)}) + self._plots_map[pid] = plot + self._insets_map[pid] = inset_ax + self._push(pid) + self._push_layout() + @traitlets.observe("fig_width", "fig_height") def _on_resize(self, change) -> None: self._push_layout() @@ -313,6 +369,16 @@ def _on_event(self, change) -> None: data = {k: v for k, v in msg.items() if k not in ("source", "panel_id", "event_type", "widget_id")} + # Inset state changes are handled before regular plot dispatch + if event_type == "on_inset_state_change": + inset_ax = self._insets_map.get(panel_id) + if inset_ax is not None: + new_state = data.get("new_state", "normal") + if new_state in ("normal", "minimized", "maximized"): + inset_ax._inset_state = new_state + self._push_layout() + return + plot = self._plots_map.get(panel_id) if plot is None: return diff --git a/anyplotlib/figure_esm.js b/anyplotlib/figure_esm.js index 2ce1ca5..5ecc384 100644 --- a/anyplotlib/figure_esm.js +++ b/anyplotlib/figure_esm.js @@ -175,6 +175,19 @@ function render({ model, el }) { gridDiv.style.cssText = `display:grid;gap:4px;background:${theme.bg};padding:8px;border-radius:4px;`; outerDiv.appendChild(gridDiv); + // ── Inset overlay container ─────────────────────────────────────────────── + // Covers the grid content area (inside gridDiv's 8 px padding). + // Individual insetDivs restore pointer-events:all so they capture mouse events. + const insetsContainer = document.createElement('div'); + insetsContainer.style.cssText = + 'position:absolute;top:8px;left:8px;pointer-events:none;z-index:20;overflow:visible;'; + outerDiv.appendChild(insetsContainer); + + // Inset layout constants + const INSET_TITLE_H = 22; // px — title bar height + const INSET_GAP = 8; // px — gap between stacked insets in same corner + const INSET_MARGIN = 10; // px — distance from figure edge to first inset + // Resize handle (figure-level) const resizeHandle = document.createElement('div'); resizeHandle.style.cssText = @@ -343,73 +356,70 @@ function render({ model, el }) { _resizePanelDOM(spec.id, spec.panel_width, spec.panel_height); } } + + // Handle inset panels + const insetSpecs = layout.inset_specs || []; + for (const spec of insetSpecs) { + seen.add(spec.id); + const existing = panels.get(spec.id); + if (!existing) { + _createInsetDOM(spec); + } else { + existing.insetSpec = spec; + } + } + for (const [id, p] of panels) { if (!seen.has(id)) { p.cell.remove(); panels.delete(id); } } - } - function _createPanelDOM(id, kind, pw, ph, spec) { - const cell = document.createElement('div'); - cell.style.cssText = 'position:relative;overflow:visible;line-height:0;display:flex;justify-content:center;align-items:flex-start;'; - cell.style.gridRow = `${spec.row_start+1} / ${spec.row_stop+1}`; - cell.style.gridColumn = `${spec.col_start+1} / ${spec.col_stop+1}`; - gridDiv.appendChild(cell); + // Update insetsContainer size and reposition all insets + insetsContainer.style.width = (layout.fig_width || 640) + 'px'; + insetsContainer.style.height = (layout.fig_height || 480) + 'px'; + if (insetSpecs.length) _applyAllInsetStates(layout); + } + // ── _buildCanvasStack ───────────────────────────────────────────────────── + // Creates the canvas/element stack for one panel kind and appends the + // top-level wrapper to `outerContainer`. Returns all canvas/element refs. + // Used by both _createPanelDOM (cell → gridDiv) and _createInsetDOM + // (contentDiv → insetDiv). + function _buildCanvasStack(kind, pw, ph, outerContainer) { let plotCanvas, overlayCanvas, markersCanvas, statusBar; let xAxisCanvas=null, yAxisCanvas=null, scaleBar=null; - let _p2d = null; // extra 2D DOM refs, null for 1D panels - let _wrapNode = null; // container to which statsDiv is appended + let cbCanvas=null, cbCtx=null, plotWrap=null, wrapNode=null; if (kind === '2d') { - // ── 2D branch ────────────────────────────────────────────────────────── - // The outer container is exactly pw×ph — same as the 1D canvas. - // Inside it everything is absolutely positioned to mirror 1D's _plotRect1d: - // image area : [PAD_L, PAD_T] → [pw-PAD_R, ph-PAD_B] - // y-axis : [0, PAD_T] → [PAD_L, ph-PAD_B] - // x-axis : [PAD_L, ph-PAD_B] → [pw-PAD_R, ph] - // This makes the bottom-left corner of the image/plot areas line up exactly. - - const plotWrap = document.createElement('div'); - plotWrap.style.cssText = `position:relative;display:inline-block;line-height:0;` + + plotWrap = document.createElement('div'); + plotWrap.style.cssText = `position:relative;display:inline-block;vertical-align:top;line-height:0;` + `width:${pw}px;height:${ph}px;overflow:visible;flex-shrink:0;`; - // Image canvas — positioned at the inner plot area plotCanvas = document.createElement('canvas'); - plotCanvas.style.cssText = `position:absolute;display:block;border-radius:2px;background:${theme.bgCanvas};`; - - // Overlay + marker canvases (same size as plotCanvas, stacked on top) + plotCanvas.style.cssText = + `position:absolute;display:block;border-radius:2px;background:${theme.bgCanvas};`; overlayCanvas = document.createElement('canvas'); - overlayCanvas.style.cssText = 'position:absolute;z-index:5;cursor:default;pointer-events:all;outline:none;'; + overlayCanvas.style.cssText = + 'position:absolute;z-index:5;cursor:default;pointer-events:all;outline:none;'; overlayCanvas.tabIndex = 0; markersCanvas = document.createElement('canvas'); markersCanvas.style.cssText = 'position:absolute;pointer-events:none;z-index:6;'; - - // Scale bar: single canvas drawn on demand scaleBar = document.createElement('canvas'); - scaleBar.style.cssText = - 'position:absolute;pointer-events:none;display:none;z-index:7;'; - const sbLine = null; // unused — drawing handled by canvas - const sbLabel = null; // unused — drawing handled by canvas - plotWrap.appendChild(scaleBar); - - // Status bar: absolute, bottom-left of image area + scaleBar.style.cssText = 'position:absolute;pointer-events:none;display:none;z-index:7;'; statusBar = document.createElement('div'); statusBar.style.cssText = - 'position:absolute;padding:2px 6px;' + - 'background:rgba(0,0,0,0.55);color:white;font-size:10px;font-family:monospace;' + - 'border-radius:4px;pointer-events:none;white-space:nowrap;display:none;z-index:9;'; - - // y-axis canvas: left gutter [0, PAD_T]..[PAD_L, ph-PAD_B] + 'position:absolute;padding:2px 6px;background:rgba(0,0,0,0.55);color:white;' + + 'font-size:10px;font-family:monospace;border-radius:4px;pointer-events:none;' + + 'white-space:nowrap;display:none;z-index:9;'; yAxisCanvas = document.createElement('canvas'); - yAxisCanvas.style.cssText = `position:absolute;display:none;background:${theme.axisBg};`; - - // x-axis canvas: bottom gutter [PAD_L, ph-PAD_B]..[pw-PAD_R, ph] + yAxisCanvas.style.cssText = + `position:absolute;display:none;background:${theme.axisBg};`; xAxisCanvas = document.createElement('canvas'); - xAxisCanvas.style.cssText = `position:absolute;display:none;background:${theme.axisBg};`; - - // Colorbar canvas: narrow strip (16 px) to the right of the image area - const cbCanvas = document.createElement('canvas'); - cbCanvas.style.cssText = 'position:absolute;display:none;pointer-events:none;border-radius:0 2px 2px 0;'; + xAxisCanvas.style.cssText = + `position:absolute;display:none;background:${theme.axisBg};`; + cbCanvas = document.createElement('canvas'); + cbCanvas.style.cssText = + 'position:absolute;display:none;pointer-events:none;border-radius:0 2px 2px 0;'; + cbCtx = cbCanvas.getContext('2d'); plotWrap.appendChild(plotCanvas); plotWrap.appendChild(overlayCanvas); @@ -417,114 +427,235 @@ function render({ model, el }) { plotWrap.appendChild(yAxisCanvas); plotWrap.appendChild(xAxisCanvas); plotWrap.appendChild(cbCanvas); + plotWrap.appendChild(scaleBar); plotWrap.appendChild(statusBar); - cell.appendChild(plotWrap); - - const cbCtx = cbCanvas.getContext('2d'); - _p2d = { cbCanvas, cbCtx, plotWrap }; - _wrapNode = plotWrap; + outerContainer.appendChild(plotWrap); + wrapNode = plotWrap; } else if (kind === '3d') { - // ── 3D branch: one full-panel plotCanvas + overlayCanvas on top ─────── plotCanvas = document.createElement('canvas'); - plotCanvas.style.cssText = `display:block;border-radius:2px;background:${theme.bgPlot};`; - + plotCanvas.style.cssText = + `display:block;border-radius:2px;background:${theme.bgPlot};`; const wrap3 = document.createElement('div'); wrap3.style.cssText = 'position:relative;display:inline-block;line-height:0;'; wrap3.appendChild(plotCanvas); - cell.appendChild(wrap3); - + outerContainer.appendChild(wrap3); overlayCanvas = document.createElement('canvas'); - overlayCanvas.style.cssText = 'position:absolute;top:0;left:0;z-index:5;pointer-events:all;outline:none;'; + overlayCanvas.style.cssText = + 'position:absolute;top:0;left:0;z-index:5;pointer-events:all;outline:none;'; wrap3.appendChild(overlayCanvas); - markersCanvas = document.createElement('canvas'); - markersCanvas.style.cssText = 'position:absolute;top:0;left:0;pointer-events:none;z-index:6;display:none;'; + markersCanvas.style.cssText = + 'position:absolute;top:0;left:0;pointer-events:none;z-index:6;display:none;'; wrap3.appendChild(markersCanvas); - statusBar = document.createElement('div'); statusBar.style.cssText = 'position:absolute;bottom:4px;right:4px;padding:2px 6px;display:none;'; wrap3.appendChild(statusBar); - _wrapNode = wrap3; + wrapNode = wrap3; } else { - // ── 1D / bar branch ─────────────────────────────────────────────────── + // 1D / bar plotCanvas = document.createElement('canvas'); plotCanvas.tabIndex = 1; - plotCanvas.style.cssText = 'outline:none;cursor:crosshair;display:block;border-radius:2px;'; - - // wrap gives us a positioned container for the absolute canvases + status bar + plotCanvas.style.cssText = + 'outline:none;cursor:crosshair;display:block;border-radius:2px;'; const wrap = document.createElement('div'); wrap.style.cssText = 'position:relative;display:inline-block;line-height:0;'; wrap.appendChild(plotCanvas); - cell.appendChild(wrap); - + outerContainer.appendChild(wrap); overlayCanvas = document.createElement('canvas'); - overlayCanvas.style.cssText = 'position:absolute;top:0;left:0;z-index:5;cursor:crosshair;pointer-events:all;'; + overlayCanvas.style.cssText = + 'position:absolute;top:0;left:0;z-index:5;cursor:crosshair;pointer-events:all;'; wrap.appendChild(overlayCanvas); markersCanvas = document.createElement('canvas'); - markersCanvas.style.cssText = 'position:absolute;top:0;left:0;pointer-events:none;z-index:6;'; + markersCanvas.style.cssText = + 'position:absolute;top:0;left:0;pointer-events:none;z-index:6;'; wrap.appendChild(markersCanvas); - - // Status bar overlays the 1D plot area statusBar = document.createElement('div'); statusBar.style.cssText = 'position:absolute;bottom:4px;right:4px;padding:2px 6px;' + 'background:rgba(0,0,0,0.55);color:white;font-size:10px;font-family:monospace;' + 'border-radius:4px;pointer-events:none;white-space:nowrap;display:none;z-index:9;'; wrap.appendChild(statusBar); - _wrapNode = wrap; + wrapNode = wrap; } - const plotCtx = plotCanvas.getContext('2d'); - const ovCtx = overlayCanvas.getContext('2d'); - const mkCtx = markersCanvas.getContext('2d'); - const xCtx = xAxisCanvas ? xAxisCanvas.getContext('2d') : null; - const yCtx = yAxisCanvas ? yAxisCanvas.getContext('2d') : null; + return { plotCanvas, overlayCanvas, markersCanvas, statusBar, + xAxisCanvas, yAxisCanvas, scaleBar, + cbCanvas, cbCtx, plotWrap, wrapNode }; + } - const blitCache = { bitmap:null, bytesKey:null, lutKey:null, w:0, h:0 }; + function _createPanelDOM(id, kind, pw, ph, spec) { + const cell = document.createElement('div'); + cell.style.cssText = + 'position:relative;overflow:visible;line-height:0;' + + 'display:flex;justify-content:center;align-items:flex-start;'; + cell.style.gridRow = `${spec.row_start+1} / ${spec.row_stop+1}`; + cell.style.gridColumn = `${spec.col_start+1} / ${spec.col_stop+1}`; + gridDiv.appendChild(cell); + + const stack = _buildCanvasStack(kind, pw, ph, cell); + + const plotCtx = stack.plotCanvas.getContext('2d'); + const ovCtx = stack.overlayCanvas.getContext('2d'); + const mkCtx = stack.markersCanvas.getContext('2d'); + const xCtx = stack.xAxisCanvas ? stack.xAxisCanvas.getContext('2d') : null; + const yCtx = stack.yAxisCanvas ? stack.yAxisCanvas.getContext('2d') : null; + + const blitCache = { bitmap:null, bytesKey:null, lutKey:null, w:0, h:0 }; - // ── stats overlay (top-left of panel) ──────────────────────────────── - // Positioned absolutely inside the panel's wrap container so it floats - // over the plot area. Visibility is toggled by the display_stats traitlet. const statsDiv = document.createElement('div'); statsDiv.style.cssText = 'position:absolute;top:4px;left:4px;padding:4px 7px;' + 'background:rgba(0,0,0,0.65);color:#e0e0e0;font-size:10px;' + 'font-family:monospace;border-radius:4px;pointer-events:none;' + 'white-space:pre;line-height:1.5;z-index:20;display:none;'; - if (_wrapNode) _wrapNode.appendChild(statsDiv); + if (stack.wrapNode) stack.wrapNode.appendChild(statsDiv); const p = { id, kind, cell, pw, ph, - plotCanvas, overlayCanvas, markersCanvas, + plotCanvas: stack.plotCanvas, + overlayCanvas: stack.overlayCanvas, + markersCanvas: stack.markersCanvas, plotCtx, ovCtx, mkCtx, - xAxisCanvas, yAxisCanvas, xCtx, yCtx, - scaleBar, statusBar, - statsDiv, // ← per-panel FPS overlay element - frameTimes: [], // ← rolling 60-entry timestamp buffer (performance.now()) + xAxisCanvas: stack.xAxisCanvas, + yAxisCanvas: stack.yAxisCanvas, + xCtx, yCtx, + scaleBar: stack.scaleBar, + statusBar: stack.statusBar, + statsDiv, + frameTimes: [], blitCache, - ovDrag: null, + ovDrag: null, ovDrag2d: null, + isPanning: false, panStart: {}, + state: null, + _hoverSi: -1, _hoverI: -1, + _hovBar: null, + lastWidgetId: null, + mouseX: 0, mouseY: 0, + cbCanvas: stack.cbCanvas, + cbCtx: stack.cbCtx, + sbLine: null, + sbLabel: null, + plotWrap: stack.plotWrap, + }; + panels.set(id, p); + + _resizePanelDOM(id, pw, ph); + _attachPanelEvents(p); + + model.on(`change:panel_${id}_json`, () => { + const p2 = panels.get(id); + if (!p2) return; + try { p2.state = JSON.parse(model.get(`panel_${id}_json`)); } + catch(_) { return; } + p2._hoverSi = -1; p2._hoverI = -1; + _redrawPanel(p2); + }); + + try { p.state = JSON.parse(model.get(`panel_${id}_json`)); } catch(_) {} + _redrawPanel(p); + } + + // ── _createInsetDOM ─────────────────────────────────────────────────────── + // Builds a floating inset panel: + // insetDiv (position:absolute inside insetsContainer) + // ├── titleBar — always visible; click to toggle min/normal + // │ ├── titleSpan + // │ └── maxBtn (⤢ / ⤡) + // └── contentDiv — canvas stack; display:none when minimized + // └── _buildCanvasStack(kind, pw, ph) + function _createInsetDOM(spec) { + const { id, kind, panel_width: pw, panel_height: ph, title, inset_state } = spec; + + const insetDiv = document.createElement('div'); + insetDiv.style.cssText = + 'position:absolute;pointer-events:all;border-radius:4px;overflow:hidden;' + + `box-shadow:0 2px 14px rgba(0,0,0,0.55);border:1px solid ${theme.border};z-index:25;background:${theme.bg};`; + insetsContainer.appendChild(insetDiv); + + // Title bar + const tbBg = theme.dark ? 'rgba(30,32,46,0.97)' : 'rgba(210,213,224,0.97)'; + const titleBar = document.createElement('div'); + titleBar.style.cssText = + `display:flex;align-items:center;height:${INSET_TITLE_H}px;` + + `cursor:pointer;padding:0 5px 0 8px;user-select:none;background:${tbBg};` + + `border-bottom:1px solid ${theme.border};box-sizing:border-box;flex-shrink:0;`; + insetDiv.appendChild(titleBar); + + const titleSpan = document.createElement('span'); + titleSpan.style.cssText = + `flex:1;font-size:11px;font-family:sans-serif;overflow:hidden;` + + `text-overflow:ellipsis;white-space:nowrap;color:${theme.tickText};`; + titleSpan.textContent = title || ''; + titleBar.appendChild(titleSpan); + + + // Content div — wraps the canvas stack + const contentDiv = document.createElement('div'); + contentDiv.style.cssText = + `overflow:hidden;display:${inset_state === 'minimized' ? 'none' : 'block'};`; + insetDiv.appendChild(contentDiv); + + // Canvas stack inside contentDiv + const stack = _buildCanvasStack(kind, pw, ph, contentDiv); + + const plotCtx = stack.plotCanvas.getContext('2d'); + const ovCtx = stack.overlayCanvas.getContext('2d'); + const mkCtx = stack.markersCanvas.getContext('2d'); + const xCtx = stack.xAxisCanvas ? stack.xAxisCanvas.getContext('2d') : null; + const yCtx = stack.yAxisCanvas ? stack.yAxisCanvas.getContext('2d') : null; + + const blitCache = { bitmap:null, bytesKey:null, lutKey:null, w:0, h:0 }; + + const statsDiv = document.createElement('div'); + statsDiv.style.cssText = + 'position:absolute;top:4px;left:4px;padding:4px 7px;' + + 'background:rgba(0,0,0,0.65);color:#e0e0e0;font-size:10px;' + + 'font-family:monospace;border-radius:4px;pointer-events:none;' + + 'white-space:pre;line-height:1.5;z-index:20;display:none;'; + if (stack.wrapNode) stack.wrapNode.appendChild(statsDiv); + + const p = { + id, kind, pw, ph, + cell: insetDiv, // stale-cleanup compatibility (p.cell.remove()) + isInset: true, insetDiv, contentDiv, titleBar, + insetSpec: spec, + plotCanvas: stack.plotCanvas, + overlayCanvas: stack.overlayCanvas, + markersCanvas: stack.markersCanvas, + plotCtx, ovCtx, mkCtx, + xAxisCanvas: stack.xAxisCanvas, + yAxisCanvas: stack.yAxisCanvas, + xCtx, yCtx, + scaleBar: stack.scaleBar, + statusBar: stack.statusBar, + statsDiv, + frameTimes: [], blitCache, + ovDrag: null, ovDrag2d: null, isPanning: false, panStart: {}, state: null, - _hoverSi: -1, _hoverI: -1, // index of hovered marker group / marker (-1 = none) - _hovBar: null, // {slot,group} of hovered bar, or null - lastWidgetId: null, // id of the last clicked/dragged widget (for on_key Delete etc.) - mouseX: 0, mouseY: 0, // last known canvas-relative cursor position - // 2D extras (null for non-2D panels) - cbCanvas: _p2d ? _p2d.cbCanvas : null, - cbCtx: _p2d ? _p2d.cbCtx : null, - sbLine: null, - sbLabel: null, - plotWrap: _p2d ? _p2d.plotWrap : null, + _hoverSi: -1, _hoverI: -1, + _hovBar: null, + lastWidgetId: null, mouseX: 0, mouseY: 0, + cbCanvas: stack.cbCanvas, + cbCtx: stack.cbCtx, + sbLine: null, sbLabel: null, + plotWrap: stack.plotWrap, }; panels.set(id, p); _resizePanelDOM(id, pw, ph); _attachPanelEvents(p); - // Listen for this panel's trait changes + // Title bar click: toggle normal ↔ minimized + titleBar.addEventListener('click', (e) => { + const cur = p.insetSpec ? p.insetSpec.inset_state : 'normal'; + _applyButtonState(p, cur === 'minimized' ? 'normal' : 'minimized'); + }); + + model.on(`change:panel_${id}_json`, () => { const p2 = panels.get(id); if (!p2) return; @@ -534,11 +665,88 @@ function render({ model, el }) { _redrawPanel(p2); }); - // Initial draw try { p.state = JSON.parse(model.get(`panel_${id}_json`)); } catch(_) {} _redrawPanel(p); } + // Optimistic local state update + Python notification. + function _applyButtonState(p, newState) { + try { + const layout = JSON.parse(model.get('layout_json')); + const spec = (layout.inset_specs || []).find(s => s.id === p.id); + if (spec) { + spec.inset_state = newState; + p.insetSpec = spec; + _applyAllInsetStates(layout); + } + } catch(_) {} + _emitEvent(p.id, 'on_inset_state_change', null, { new_state: newState }); + } + + // ── _applyAllInsetStates ────────────────────────────────────────────────── + // Positions every inset for the given layout snapshot. + // Groups insets by corner, stacks with INSET_GAP spacing. + // Minimized insets contribute only INSET_TITLE_H to the stack height. + // Maximized insets float centred at z-index:45, outside the stack. + function _applyAllInsetStates(layout) { + const insetSpecs = layout.inset_specs || []; + const fw = layout.fig_width || 640; + const fh = layout.fig_height || 480; + + insetsContainer.style.width = fw + 'px'; + insetsContainer.style.height = fh + 'px'; + + // Group by corner, preserving insertion order + const byCorner = {}; + for (const spec of insetSpecs) { + (byCorner[spec.corner] = byCorner[spec.corner] || []).push(spec); + } + + for (const [corner, group] of Object.entries(byCorner)) { + const isBottom = corner.startsWith('bottom'); + const isRight = corner.endsWith('right'); + // Bottom corners: first-added is closest to the corner (stack upward), + // so reverse for the position loop (offset grows from the corner outward). + const walk = isBottom ? [...group].reverse() : group; + let offset = INSET_MARGIN; + + for (const spec of walk) { + const p = panels.get(spec.id); + if (!p || !p.isInset) continue; + + const pw = spec.panel_width; + const ph = spec.panel_height; + const state = spec.inset_state; + + + // Normal or minimized: compute position from corner + const stackH = state === 'minimized' ? INSET_TITLE_H : INSET_TITLE_H + ph; + const left = isRight ? fw - pw - INSET_MARGIN : INSET_MARGIN; + const top = isBottom ? fh - offset - stackH : offset; + + p.insetDiv.style.left = left + 'px'; + p.insetDiv.style.top = top + 'px'; + p.insetDiv.style.width = pw + 'px'; + p.insetDiv.style.height = stackH + 'px'; + p.insetDiv.style.zIndex = '25'; + + if (state === 'minimized') { + p.contentDiv.style.display = 'none'; + } else { + p.contentDiv.style.display = 'block'; + p.contentDiv.style.height = ph + 'px'; + if (p.pw !== pw || p.ph !== ph) { + p.pw = pw; p.ph = ph; + _resizePanelDOM(spec.id, pw, ph); + _redrawPanel(p); + } + } + + offset += stackH + INSET_GAP; + } + } + } + function _resizePanelDOM(id, pw, ph) { const p = panels.get(id); if (!p) return; @@ -552,11 +760,19 @@ function render({ model, el }) { if (p.kind === '2d') { // ── 2D: all elements absolutely positioned within pw×ph container ── - // The image/plot area mirrors 1D's _plotRect1d: - // x: PAD_L → pw-PAD_R, y: PAD_T → ph-PAD_B - const imgX = PAD_L, imgY = PAD_T; - const imgW = Math.max(1, pw - PAD_L - PAD_R); - const imgH = Math.max(1, ph - PAD_T - PAD_B); + // When physical axes are present, reserve PAD gutters for tick labels. + // When there are no axes (plain imshow) use the full canvas area so + // no dead space appears on the left / bottom. + const st = p.state; + const hasPhysAxis = st && (st.is_mesh || st.has_axes) + && st.x_axis && st.x_axis.length >= 2 + && st.y_axis && st.y_axis.length >= 2; + const imgX = hasPhysAxis ? PAD_L : 0; + const imgY = hasPhysAxis ? PAD_T : 0; + const imgW = hasPhysAxis ? Math.max(1, pw - PAD_L - PAD_R) : pw; + const imgH = hasPhysAxis ? Math.max(1, ph - PAD_T - PAD_B) : ph; + // Store on panel so event handlers and draw functions don't recompute. + p.imgX = imgX; p.imgY = imgY; p.imgW = imgW; p.imgH = imgH; if (p.plotWrap) { p.plotWrap.style.width = pw + 'px'; @@ -576,27 +792,21 @@ function render({ model, el }) { p.markersCanvas.style.top = imgY + 'px'; _sz(p.markersCanvas, p.mkCtx, imgW, imgH); - // Status bar: bottom-left of image area + // Status bar: 4px above bottom of image area, 4px right of left edge if (p.statusBar) { p.statusBar.style.left = (imgX + 4) + 'px'; - p.statusBar.style.bottom = (PAD_B + 4) + 'px'; + p.statusBar.style.bottom = (ph - imgY - imgH + 4) + 'px'; p.statusBar.style.top = ''; } - // Scale bar: bottom-right of image area + // Scale bar: 12px above bottom-right of image area if (p.scaleBar) { - p.scaleBar.style.right = (PAD_R + 12) + 'px'; - p.scaleBar.style.bottom = (PAD_B + 12) + 'px'; + p.scaleBar.style.right = (pw - imgX - imgW + 12) + 'px'; + p.scaleBar.style.bottom = (ph - imgY - imgH + 12) + 'px'; p.scaleBar.style.left = ''; p.scaleBar.style.top = ''; } - const st = p.state; - // Show axis canvases only when the user explicitly provided coordinate - // arrays (has_axes), or for pcolormesh panels (is_mesh, always has edges). - const hasPhysAxis = st && (st.is_mesh || st.has_axes) - && st.x_axis && st.x_axis.length >= 2 - && st.y_axis && st.y_axis.length >= 2; // y-axis: left gutter [0, PAD_T]..[PAD_L, ph-PAD_B] if (p.yAxisCanvas && p.yCtx) { @@ -751,9 +961,10 @@ function render({ model, el }) { // Re-sync axis/histogram canvas visibility whenever state changes _resizePanelDOM(p.id, p.pw, p.ph); const {pw,ph,plotCtx:ctx,blitCache} = p; - // The image canvas occupies the inner plot area, mirroring 1D's _plotRect1d - const imgW = Math.max(1, pw - PAD_L - PAD_R); - const imgH = Math.max(1, ph - PAD_T - PAD_B); + // p.imgW/imgH are set by _resizePanelDOM above (full panel when no axes, + // padded inner area when physical axes are present). + const imgW = p.imgW || Math.max(1, pw - PAD_L - PAD_R); + const imgH = p.imgH || Math.max(1, ph - PAD_T - PAD_B); // Decode base64 image bytes const b64=st.image_b64||''; @@ -800,8 +1011,8 @@ function render({ model, el }) { const scaleX=st.scale_x||0; if(!scaleX||units==='px'){p.scaleBar.style.display='none';return;} - const imgW=Math.max(1,p.pw-PAD_L-PAD_R); - const imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,p.pw-PAD_L-PAD_R); + const imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); // Compute bar width in the fit-rect pixel space const zoom=st.zoom||1; @@ -875,7 +1086,7 @@ function render({ model, el }) { if(!vis) return; const cbW=16; - const imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); const ctx=p.cbCtx; ctx.clearRect(0,0,cbW,imgH); @@ -913,8 +1124,8 @@ function render({ model, el }) { function _drawAxes2d(p) { const st=p.state; if(!st) return; const {pw,ph} = p; - const imgW = Math.max(1, pw - PAD_L - PAD_R); - const imgH = Math.max(1, ph - PAD_T - PAD_B); + const imgW = p.imgW||Math.max(1, pw - PAD_L - PAD_R); + const imgH = p.imgH||Math.max(1, ph - PAD_T - PAD_B); const xArr=st.x_axis||[], yArr=st.y_axis||[]; const TICK=6; const zoom=st.zoom, cx=st.center_x, cy=st.center_y; @@ -1013,7 +1224,7 @@ function render({ model, el }) { function drawOverlay2d(p) { const st=p.state; if(!st) return; const {pw,ph,ovCtx} = p; - const imgW=Math.max(1,pw-PAD_L-PAD_R), imgH=Math.max(1,ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,ph-PAD_T-PAD_B); ovCtx.clearRect(0,0,imgW,imgH); const widgets=st.overlay_widgets||[]; const scale=_imgScale2d(st,imgW,imgH); @@ -1069,7 +1280,7 @@ function render({ model, el }) { function drawMarkers2d(p, hoverState) { const st=p.state; if(!st) return; const {pw,ph,mkCtx} = p; - const imgW=Math.max(1,pw-PAD_L-PAD_R), imgH=Math.max(1,ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,ph-PAD_T-PAD_B); mkCtx.clearRect(0,0,imgW,imgH); const sets=st.markers||[]; if(!sets.length) return; @@ -2140,7 +2351,7 @@ function render({ model, el }) { overlayCanvas.addEventListener('wheel',(e)=>{ e.preventDefault(); const st=p.state; if(!st) return; - const imgW=Math.max(1,p.pw-PAD_L-PAD_R), imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,p.pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); const {mx,my}=_clientPos(e,overlayCanvas,imgW,imgH); // Image point under cursor before zoom change const [anchorX,anchorY]=_canvasToImg2d(mx,my,st,imgW,imgH); @@ -2166,7 +2377,7 @@ function render({ model, el }) { if(e.button!==0) return; const st=p.state; if(!st) return; overlayCanvas.focus(); - const imgW=Math.max(1,p.pw-PAD_L-PAD_R), imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,p.pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); const {mx,my}=_clientPos(e,overlayCanvas,imgW,imgH); const hit=_ovHitTest2d(mx, my, p); if(hit){ @@ -2189,7 +2400,7 @@ function render({ model, el }) { } if(!p.isPanning) return; const st=p.state; if(!st) return; - const imgW=Math.max(1,p.pw-PAD_L-PAD_R), imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,p.pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); const fr=_imgFitRect(st.image_width,st.image_height,imgW,imgH); const z=st.zoom; const {mx:cmx,my:cmy}=_clientPos(e,overlayCanvas,imgW,imgH); @@ -2214,7 +2425,7 @@ function render({ model, el }) { if(!p.isPanning) return; p.isPanning=false; overlayCanvas.style.cursor='default'; const st=p.state; if(!st) return; - const imgW=Math.max(1,p.pw-PAD_L-PAD_R), imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,p.pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); const fr=_imgFitRect(st.image_width,st.image_height,imgW,imgH); const {mx:cmx,my:cmy}=_clientPos(e,overlayCanvas,imgW,imgH); st.center_x=Math.max(0,Math.min(1,panStart.cx-(cmx-panStart.mx)/fr.w/st.zoom)); @@ -2226,7 +2437,7 @@ function render({ model, el }) { // Status bar + tooltip + widget hover cursor overlayCanvas.addEventListener('mousemove',(e)=>{ - const imgW=Math.max(1,p.pw-PAD_L-PAD_R), imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,p.pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); const {mx,my}=_clientPos(e,overlayCanvas,imgW,imgH); p.mouseX=mx; p.mouseY=my; if(p.ovDrag2d) return; // handled by document mousemove @@ -2284,7 +2495,7 @@ function render({ model, el }) { const st=p.state; if(!st) return; const regKeys=st.registered_keys||[]; if(regKeys.includes(e.key)||regKeys.includes('*')){ - const imgW=Math.max(1,p.pw-PAD_L-PAD_R), imgH=Math.max(1,p.ph-PAD_T-PAD_B); + const imgW=p.imgW||Math.max(1,p.pw-PAD_L-PAD_R), imgH=p.imgH||Math.max(1,p.ph-PAD_T-PAD_B); const [imgX,imgY]=_canvasToImg2d(p.mouseX,p.mouseY,st,imgW,imgH); const xArr=st.x_axis||[], yArr=st.y_axis||[]; const iw=st.image_width||1, ih=st.image_height||1; @@ -2497,8 +2708,8 @@ function render({ model, el }) { // 'vertex_N' – polygon vertex N function _ovHitTest2d(mx, my, p) { const st = p.state; if (!st) return null; - const imgW = Math.max(1, p.pw - PAD_L - PAD_R); - const imgH = Math.max(1, p.ph - PAD_T - PAD_B); + const imgW = p.imgW||Math.max(1, p.pw - PAD_L - PAD_R); + const imgH = p.imgH||Math.max(1, p.ph - PAD_T - PAD_B); const widgets = st.overlay_widgets || []; const scale = _imgScale2d(st, imgW, imgH); const HR = 9; // handle grab radius (px) @@ -2579,8 +2790,8 @@ function render({ model, el }) { function _doDrag2d(e, p) { const st = p.state; if (!st) return; - const imgW = Math.max(1, p.pw - PAD_L - PAD_R); - const imgH = Math.max(1, p.ph - PAD_T - PAD_B); + const imgW = p.imgW||Math.max(1, p.pw - PAD_L - PAD_R); + const imgH = p.imgH||Math.max(1, p.ph - PAD_T - PAD_B); const {mx, my} = _clientPos(e, p.overlayCanvas, imgW, imgH); const d = p.ovDrag2d; const s = d.snapW; @@ -2837,6 +3048,25 @@ function render({ model, el }) { gridDiv.style.gridTemplateRows = rowPx.map(px=>px+'px').join(' '); gridDiv.style.width = ''; gridDiv.style.height = ''; + + // CSS-only reposition of insets (no canvas redraw during live drag) + insetsContainer.style.width = nfw + 'px'; + insetsContainer.style.height = nfh + 'px'; + const insetSpecs = layout.inset_specs || []; + for (const spec of insetSpecs) { + const pi = panels.get(spec.id); + if (!pi || !pi.isInset) continue; + const pw = Math.max(64, Math.round(nfw * spec.w_frac)); + const ph = Math.max(64, Math.round(nfh * spec.h_frac)); + pi.pw = pw; pi.ph = ph; + // Reuse _applyAllInsetStates logic inline (CSS only) by temporarily + // patching spec dimensions and calling the function with a fake layout. + spec.panel_width = pw; + spec.panel_height = ph; + } + if (insetSpecs.length) { + _applyAllInsetStates({ ...layout, fig_width: nfw, fig_height: nfh }); + } } // CSS-only resize: move/size elements without clearing canvas buffers. @@ -2852,9 +3082,16 @@ function render({ model, el }) { } if (p.kind === '2d') { - const imgX = PAD_L, imgY = PAD_T; - const imgW = Math.max(1, pw - PAD_L - PAD_R); - const imgH = Math.max(1, ph - PAD_T - PAD_B); + const st = p.state; + const hasPhysAxis = st && (st.is_mesh || st.has_axes) + && st.x_axis && st.x_axis.length >= 2 + && st.y_axis && st.y_axis.length >= 2; + const imgX = hasPhysAxis ? PAD_L : 0; + const imgY = hasPhysAxis ? PAD_T : 0; + const imgW = hasPhysAxis ? Math.max(1, pw - PAD_L - PAD_R) : pw; + const imgH = hasPhysAxis ? Math.max(1, ph - PAD_T - PAD_B) : ph; + // Update stored dims so event handlers stay consistent during CSS resize + p.imgX = imgX; p.imgY = imgY; p.imgW = imgW; p.imgH = imgH; if (p.plotWrap) { p.plotWrap.style.width=pw+'px'; p.plotWrap.style.height=ph+'px'; } @@ -2866,8 +3103,8 @@ function render({ model, el }) { p.overlayCanvas.style.left = imgX+'px'; p.overlayCanvas.style.top = imgY+'px'; p.markersCanvas.style.left = imgX+'px'; p.markersCanvas.style.top = imgY+'px'; - if (p.statusBar) { p.statusBar.style.left=(imgX+4)+'px'; p.statusBar.style.bottom=(PAD_B+4)+'px'; } - if (p.scaleBar) { p.scaleBar.style.right=(PAD_R+12)+'px'; p.scaleBar.style.bottom=(PAD_B+12)+'px'; } + if (p.statusBar) { p.statusBar.style.left=(imgX+4)+'px'; p.statusBar.style.bottom=(ph-imgY-imgH+4)+'px'; } + if (p.scaleBar) { p.scaleBar.style.right=(pw-imgX-imgW+12)+'px'; p.scaleBar.style.bottom=(ph-imgY-imgH+12)+'px'; } // Axis canvases: just reposition, size handled on full redraw if (p.yAxisCanvas && p.yAxisCanvas.style.display !== 'none') { @@ -2941,6 +3178,10 @@ function render({ model, el }) { const p = panels.get(spec.id); if (p) { spec.panel_width = p.pw; spec.panel_height = p.ph; } } + for (const spec of (layout.inset_specs || [])) { + const pi = panels.get(spec.id); + if (pi) { spec.panel_width = pi.pw; spec.panel_height = pi.ph; } + } model.set('layout_json', JSON.stringify(layout)); } catch(_) {} diff --git a/anyplotlib/figure_plots.py b/anyplotlib/figure_plots.py index 3581828..54609d2 100644 --- a/anyplotlib/figure_plots.py +++ b/anyplotlib/figure_plots.py @@ -34,8 +34,8 @@ PointWidget as _PointWidget, ) -__all__ = ["GridSpec", "SubplotSpec", "Axes", "Line1D", "Plot1D", "Plot2D", "PlotMesh", - "Plot3D", "PlotBar", "_resample_mesh", "_norm_linestyle"] +__all__ = ["GridSpec", "SubplotSpec", "Axes", "InsetAxes", "Line1D", "Plot1D", "Plot2D", + "PlotMesh", "Plot3D", "PlotBar", "_plot_kind", "_resample_mesh", "_norm_linestyle"] # --------------------------------------------------------------------------- @@ -3426,6 +3426,125 @@ def __repr__(self) -> str: return f"PlotBar(n={n}, orient={orient!r})" +# --------------------------------------------------------------------------- +# _plot_kind — shared kind string for both layout serialisation and InsetAxes +# --------------------------------------------------------------------------- + +def _plot_kind(plot) -> str: + """Return the JS panel-kind string for a plot object. + + Used in ``Figure._push_layout()`` and ``InsetAxes.__repr__``. + """ + if isinstance(plot, Plot3D): + return "3d" + if isinstance(plot, (Plot2D, PlotMesh)): + return "2d" + if isinstance(plot, PlotBar): + return "bar" + return "1d" + + +# --------------------------------------------------------------------------- +# InsetAxes — floating overlay sub-plot +# --------------------------------------------------------------------------- + +_VALID_CORNERS = ("top-right", "top-left", "bottom-right", "bottom-left") + + +class InsetAxes(Axes): + """A floating inset sub-plot that overlays the main Figure grid. + + Created via :meth:`Figure.add_inset`. Supports the same plot-factory + methods as :class:`Axes` (``imshow``, ``plot``, ``pcolormesh``, etc.). + + The inset is positioned at a corner of the figure and can be minimized + (title bar only), maximized (expanded to fill ~72% of the figure), or + restored to its normal size. + + Parameters + ---------- + fig : Figure + w_frac, h_frac : float + Width and height as fractions of the figure dimensions (0–1). + corner : str, optional + One of ``"top-right"``, ``"top-left"``, ``"bottom-right"``, + ``"bottom-left"``. Default ``"top-right"``. + title : str, optional + Text shown in the inset title bar. Default ``""``. + + Examples + -------- + >>> fig, ax = apl.subplots(1, 1, figsize=(640, 480)) + >>> ax.imshow(data) + >>> inset = fig.add_inset(0.3, 0.25, corner="top-right", title="Zoom") + >>> inset.imshow(data[64:128, 64:128]) + """ + + def __init__(self, fig, w_frac: float, h_frac: float, *, + corner: str = "top-right", title: str = ""): + if corner not in _VALID_CORNERS: + raise ValueError( + f"corner must be one of {_VALID_CORNERS!r}, got {corner!r}" + ) + # Pass a dummy SubplotSpec so Axes.__init__ doesn't fail — InsetAxes + # never occupies a grid cell, only overlays the figure. + super().__init__(fig, SubplotSpec(None, 0, 1, 0, 1)) + self.w_frac = w_frac + self.h_frac = h_frac + self.corner = corner + self.title = title + self._inset_state: str = "normal" + + # ── state API ───────────────────────────────────────────────────────── + + @property + def inset_state(self) -> str: + """Current state: ``"normal"``, ``"minimized"``, or ``"maximized"``.""" + return self._inset_state + + def minimize(self) -> None: + """Collapse the inset to its title bar only (idempotent).""" + if self._inset_state == "minimized": + return + self._inset_state = "minimized" + self._fig._push_layout() + + def maximize(self) -> None: + """Expand the inset to ~72 % of the figure, centred (idempotent).""" + if self._inset_state == "maximized": + return + self._inset_state = "maximized" + self._fig._push_layout() + + def restore(self) -> None: + """Return the inset to its normal corner position (idempotent).""" + if self._inset_state == "normal": + return + self._inset_state = "normal" + self._fig._push_layout() + + # ── internal ────────────────────────────────────────────────────────── + + def _attach(self, plot) -> None: + """Register the plot on this inset via Figure._register_inset.""" + if self._plot is not None: + panel_id = self._plot._id + else: + panel_id = str(_uuid.uuid4())[:8] + plot._id = panel_id + plot._fig = self._fig + self._plot = plot + self._fig._register_inset(self, plot) + + def __repr__(self) -> str: + kind = _plot_kind(self._plot) if self._plot else "empty" + return ( + f"InsetAxes(corner={self.corner!r}, " + f"size=({self.w_frac:.2f}, {self.h_frac:.2f}), " + f"state={self._inset_state!r}, kind={kind!r})" + ) + + diff --git a/docs/api/figure_plots.rst b/docs/api/figure_plots.rst index c298626..2e76ec6 100644 --- a/docs/api/figure_plots.rst +++ b/docs/api/figure_plots.rst @@ -14,6 +14,7 @@ Figure Plots :nosignatures: Axes + InsetAxes .. rubric:: Plot Classes @@ -42,6 +43,12 @@ Figure Plots :member-order: bysource :no-index: +.. autoclass:: anyplotlib.figure_plots.InsetAxes + :members: + :show-inheritance: + :member-order: bysource + :no-index: + .. autoclass:: anyplotlib.figure_plots.Plot1D :members: :show-inheritance: diff --git a/tests/baselines/bar_basic.png b/tests/baselines/bar_basic.png index fb77ddfb44594eca0e42fe23d096e8af1e086317..091c75314a4c9dc87a0e37ea904b2a0edd6f5248 100644 GIT binary patch delta 6374 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 diff --git a/tests/baselines/imshow_checkerboard.png b/tests/baselines/imshow_checkerboard.png index 8682d061c379da0b4e6c7d225ccec64d9bba5c61..73403c29973221316685c61e25542877f7732cb1 100644 GIT binary patch literal 8587 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 OvvI@b_2nV71OErRDuB@d literal 6291 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 IHoi&!0uONp-2eap diff --git a/tests/baselines/imshow_gradient.png b/tests/baselines/imshow_gradient.png index 5ef71c9106c12fa96e07b7015ea3e433eda1b770..aa9f6c303a9b3aefc6b4215348710d21cb1ef8cc 100644 GIT binary patch literal 4843 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 diff --git a/tests/baselines/imshow_viridis.png b/tests/baselines/imshow_viridis.png index fb8fa1252fa21e3c63bd1353478d942f8dba8641..c6f7923f84f595b2d813caf378774ea9f58b9d2e 100644 GIT binary patch literal 14685 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 DB_O4V literal 0 HcmV?d00001 diff --git a/tests/baselines/inset_maximized.png b/tests/baselines/inset_maximized.png new file mode 100644 index 0000000000000000000000000000000000000000..74b117aa72fd0bd26636a67da6047cc09b4a5bfe GIT binary patch literal 37789 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

&NIKQa=Odf$%IBHi6oMI=Jr$9yz?&EUbbF=f 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 WUB#%}`C>BgpUMq{Qo%J7zyASZiDU`@ literal 0 HcmV?d00001 diff --git a/tests/baselines/inset_minimized.png b/tests/baselines/inset_minimized.png new file mode 100644 index 0000000000000000000000000000000000000000..e1d24bb61b778976b43f84496c37eba8564dfa34 GIT binary patch literal 32793 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 z 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 BH5mW^ literal 0 HcmV?d00001 diff --git a/tests/baselines/inset_normal_2d.png b/tests/baselines/inset_normal_2d.png new file mode 100644 index 0000000000000000000000000000000000000000..b7e0c8232010bb64c1fb526fb340eaf990e6624f GIT binary patch literal 37475 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

Fw1-CbGd(mpKT7mF6tE_$IR}qiU%6RUXLz)Q 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 literal 0 HcmV?d00001 diff --git a/tests/baselines/inset_stacked.png b/tests/baselines/inset_stacked.png new file mode 100644 index 0000000000000000000000000000000000000000..717d33e1d5eb2d55ea5a19ee8409ab4256e4585b GIT binary patch literal 43230 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 ebB8N$T_-(bn2Yo7exE|2zwjENZ} zMKY7IWl%KwUiVN>&*%Gn{a&x%UqyE}u5+Dp-pe`SE*k1F&~el4+qaKF|D2A=zJ2@e z@7qVQLbD%yCg;toj(z(cKhf7YZ5BvDXr)fOWsC^z(!7_wPM(%2LpFiVY_kaCHtmz4s3tPh29x{V-2%$%P92^{!X! zvenno-|z0d`uRaBBYIA3!%odXrh=J!kMe+b+o8slMT+VC^@Qfd(m&;+s(Xy^qmv$UJ?t3ufYd6 zE{(n&Al5OFOfNA_JajS1OHY?Rq85+8mdB93BSjQPi@*rxS$?I%jOmW7TMTFln55jI zH1Q~FFw3Ohf-IkSodkLn<|bdm?uu#csjD6qhofmV-x7<}m!4dgE1HkKD_0?;NR2)W z3s8_cs>p_RgsmxDknuf)4!o21U4gQh!se_yEn)TE7z%y|Q>h;hprG@#`9(=#j%h{~=z>;OKZ@~04UxINh+t(X_#0Y0wp zbpPxd1YQ6hSLK?Wr1He z<;vEKzFKUeP76IzcO0z=^OBR2@?}a6+-P+0`l#;8CyIDbQgmY2FS4CIUsB^`ZP=SO zIFT`~zcihn&0br5-4bS{P}A3d2v9|vzoOBIgL8WSucwOh6sWa__)rVfWgpP+gu3N?_5adtg2F~W_}N@k*syQ zNMNht?D}ac<*v&sTgE@riFYt=a@JlRw&a5`FLt#}a`yr!diWj>meZql-!=ua?JrI! zTD=#oLaeS+Y_t)LeWNsGZ}a-Lk9J76h>*`$xFVaSYOXh%rO!F@dJiK9*Xq+O7MYL5 z-jf}kiu%iRlFLnpb5|W`{ zr{mKNjbHGhYhW?*Q)0fHtlO9gKVP~!weSTq(T0s;M57j32u3{D-4~7PI$B@9U$Yrr z(VLf?=gfL`?hKrj4kZ%kdNZLm9k=Rfd`pDYiV9nq868)-ey`uol+len=;39vv8LIt zK8$&)U#dzcqb^-DsW|=XaXSs_7vAF9QEV7Q^vOx(JE1{nG|NJ(M!#}`cxxT=OO z#oD*DjdbYxNSbhCUwQT}c+p!AdD?PpkvfCGoo`V9KRusuqpy{V!0g!tZ(eKuK8pJ67PfT$D3}zO3U18{8ZC z*C*Y=>7q>ewH|oI+!76>3tJw}H^Y^m#d37`<$d?@Yt2hKMM+Ub*I8n2FNIK|HDEk) zN|>V-N<_HSMrFf-EIxH-d_Je(x`k+lL_)u|Y^zYuW4ocQj9P>W16l#rZlACB^z0la z?OmjfKrc4_?!BDP8?1Ti=|vp*NtJ4hsh$rmZjU`o&6QKqb~a}q!AlA*;%-U!zS58w z*IVhiIjEV+zIA)92BEY@lWaNM&drKAAdu3iuqa(8Vw$(T^c)=0Cn>g;54jrzD&-CC zIN@TU%yP{8iW@=r%&Xdf_RFfwbff4I2>mh9|0v zAWNZGrE$$cu`2x?D>HTK3OB0VI!W)$RRR6u_})J<5GKww^i|V;=1hY=jo2%Ke+O%A z4F>9)UkX$9U{K?58GOcR**eVyA*ALuI}cNkFFhmMoQA#gkN*@a{Oe_*pfom3T?GmJ z2~uCwO4c&b^~ZZL_%_YdTb=ni-8oPAt);UAS3B!km<-j8hS)h97I2@x3ecf$?GToo zF{nuO+D^B-IY#9hu)tJ2OCEK)HM`nfeZH^f#fD4$9jj(KDWh?8m0|QDx%dSbG4Xnm zN3*B8XhTjNLXSg!SmcrM4@A+ADA(NRum2ttowfFKq2D_iYn$uje94uqW)6fR)4L#f zpeohqT!FEm962_9oLCx9%H~tZh!@~yPKzT#1~Qi2D2mgd{rRvl{MH?(fnm+`X_kyg+DIWH z(Jt$Pvxq3l2Qxg>V+o6wE4{w?Xz4qGg7gsnW9i-79{AVKJW=O^c-2m8XSwL*O*Gpe zq$PY=S%cjt{e0~d7oJY|xkqenZnAzQ9d!R}E+zIL^|`p|7GsoimQ|S!U!8Qtn{Yro!KK=}`UI@Kzc6 zYHg!-X7#ShvlAyewC>%#WDEjaKn^hITB3T`=$()f2v;npfwHCdEY<(^QQ@8VL+^&) zsb;5ADLeLE(Y-Afr3k?ZY2RtS0I1|XC09dC@3V2Hjr087gA@c=RnNp620KQMGg$Qz z9eNlyxCbzc56qx?c1=1%7zKpAV1mDUgVR5PoiYr(rLN|8olLAdybO?t&!M*v5~(CQ zmzMO@)Di3F%5J@&XVr9;k&tmLXuQ)`7?LEB*A3lN#{$(0xVLg zX=*5KIoPXal8B1u*d}%o@Gzl`(=Vb$OA5Z36-h-II-0nh!qs|Dc~uoe!&dcRZ{(zo z7FzRH3>~y^-jUYH6yQiL2z%thD0Hu;eP+E4&Za1U(k zm*{;Bo%`FpH-SG8r(UW;H6kOOuOCyHnH-zL3G=h0J$ z#66*oXg{GS!n*YQ&W^9BU&|ML_;c!GTj^<`M~O~FUbG=`cqXCS`uJkzro_?)Q7xHq zx{V8uIkpZbtG!OF^y_{70f#SCfZ7}GCbF+I&&ddy!UhTrc+j(Hv_{L1 z0x1*<$ap^GPl`}tKQWKs{;zKf0y9u%KC#bw50ZG`XZ7$ne40J~%|8vS{potn8|+=n z4fu939n9SU=_s@g+Dn)iEUGrDEP=n3N*pdL`NxlSbgn(R`sE1vrh5KEDfcU`hlR4{ za;z15mABl$uUpa;mS)%?|D|A%R5Bm$*YnNv7lirIaj6Y;o@5#IqV4cy%S(I zQXo7&{|vzqkIxJ`@609I6k}mFqWx1*sA=#{jxl=*D4JJd2jj0%-)~s>V&7!p%u*yk zv)F&c=2j{0T5NO_uKV&|rB9%Ubm!xGBS@mg2tad^p)ipS&93)TDL>2%m1Q7szu>Bx zXK86mT@7OCTo918UOw-_mjbAeb|UEY1^Pi2oLDaF7-KmR`s%PGC^vYppwmSh#AcrC z0wDbWRzbaMY3gRcmlRNJZNM?AH@$&J78u*uT-Lp91Hy6WAGCUxt`Eeo3SVclFka%q zQYj1c=o%JV#QH=fN;%lhR#)~_d#i$Gl*S)$z9l@j7bFtuSgRzjomfS;;NxK)ES4L( z4!d8zl@{GD2{O$Zd}{GgpcGHKLN`jV5T)LwTn&N?THFfyxrePvMqxnoZs7g@S^M@( zI!k)#%1rBNIb`J_0_;q?RGkQ`Calb`f zycBC`QA2VNzaT1Ft$Ny=ryN#^!nMB|OKx2F;IP%gq{V{gVC^b2*qZ27zx6{{wB}H- z&{m$zpUk|cRwtuS{os8W{*ZfAK=PPzLC}rf1qTK)ir{$-iqO_(o*z%X7wK_Xd;~-8}yu`u_pH|Iqk&%@#w8 zXukB$I|@pE-L{~|s)ihW={7h`1C8R?7`x=2u&CXLE2$+LC>>1YfBO{KJpO=oC|x(~ zC^{SVqJKXFqWVY*wzX*5Ahx%Yk!E0k7&ROZC*tmuWZieUm3JY1M_N$|y$EZTvs

XG1!Ta{j?O? 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 Cd23Ms literal 0 HcmV?d00001 diff --git a/tests/baselines/pcolormesh_uniform.png b/tests/baselines/pcolormesh_uniform.png index b6dc2187811d744c94ab4163172a8041464d4bb3..ac0b4217dc66f93ae8721df682fe6edf407a29fb 100644 GIT binary patch delta 206 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 H8T$VK?h4iS literal 13905 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 diff --git a/tests/baselines/plot1d_dashed.png b/tests/baselines/plot1d_dashed.png index ec45fcc39a20179d0e5d43702616eba5b333e0bd..a47431d6254f132b76903129f1ca42c0967c6ab0 100644 GIT binary patch literal 10436 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 Ts6z;LCqf=6YbjMKJPG|jNE}n4 literal 10448 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 Y2N$-q;Hq)$07*qoM6N<$g1t*fa{vGU delta 174 zcmV;f08#&+WTIq{BmwEMB?2%%QTUdN51@lM68zSZHj1?82 z0#qQ50)X2s`FuW35cEq0r~nnvQvty3mX(#2LZPs@xHvaAr)Mk~D=I(*s6coHfHD9L cSOeVtKP>OG*}dGotpET307*qoM6N<$f`h3_hyVZp diff --git a/tests/baselines/plot1d_multi.png b/tests/baselines/plot1d_multi.png index 9ed52761cde09a62cafff59e8285ac2f43289aca..16ac31dc91f4d1522796a43e8d7aeee162b8ef3f 100644 GIT binary patch literal 14510 zcmdVBWmJ^k7dAXI#L(Rg-O`{ibcdpJH_{;tB3+}Dij;JRBHbzF&sfN!Tmq(_aef=!qU>xa5!8(mR+8V88_SQe*`^7vRgBQ zQ9HPK!)PL`1Wa`Z`|EfO5F(IuRV8mb@%}ql50?b}R7FYr{DB=f(thu^C^csQk0T#o*8I&34kHy)2{J{T7V2`PmmzT2Xrk8 z_wrakFq^BVnAdUv@r05=;9>oTufl*fPAeu3!lp`LK<-|;2Vh86iPJx9piSZfNYZ5) zmJ|vIj?#xlcwC;O7d30j)L?8ko6l0?D*v{&#?}{; zEXCYO(8q@a%;6wv4|PUmpawA27ZfTT9DfROii zM_K^F)ERTRh|!$+xmF<03Hta0V;-Yf6Fw12aCK#YhYVi*`4oUM0GymW7O z98BTI!orG(h)_{cxvrE|zM}vSYtP>hu%j+`Uex)LqK^^##0Woebvwf5uU_juMKEdU zs!I~a*qrRm;VcQSlkc)?n#nJlOlgVMo@1$bA+irjGBFbWgnEZ1+P)SLVL_!U^pEVT zgNX=fhteNyK3G_tze&bHFlS;-!8gVgcYil0^BOJuykW8*^%xKR(G{xcW-fg>=!@a& zBJ_gio2!e9;=$0N|MD%mB_kms`IFa^=Tvu=h(Q^uvtcPRk} z@jckxU0^S@vm5^t@hCMJLw8w}o=o#4@4(E>zz>UoTf%`*t4yjfsZf2ND&10zr1Roj zxuV#G!oAKD&LoTqau16*uL2n}s=zzd=YcCd9e>}E@BE+_4MZ4Sa)vsk8wc|qEU#^x z`)yhoEkn(?E`vk!c2o!?h)uYGKY z-yA)k$TZ0gpSlfx6w<~&BPM1qcaV>}79h96khAuVx#73Fhgvlz{EBkb;-?UpXow_+ z^cfkU*IHe9LP5y`yq5O?7sdSZ5&d!~n^S%+E=NGs(bR%{jf^={Sol;wbLFhs`FMB~ zFyVfFn89y5;ti2{g$8E%ZdStcMYE0O&dpyI5<0uV&<8R`!`S(I23+r@5@XninjMVa z@1Bp(472MhWvKgKwI6^zBwt~|l`gJeG(@QUjo`0tEgS`p7g|0i>%IjSLCF=*r!52V z%O0c4mFj($ny}yky`7e8#~m9)43gb3;tgGd197rblb54&6n|0-IW{9XBi28AyOrjp z*a#Hy`J8u#?;qnLx>Pn<6=uLuma~6Si(1{BB9*YS8;ZdKga*3;44_!oAwNZl21h!t zKv~^ONek}8Vzt;tj$B^b_Qth|gFqACnQ|}hP&=3I9nZF{wE;hsIQ0)?=yHy|5et9t z)LHzq`h(Gbf{WZvNX}T0BTBv>sTUD=n|HXIn?5J}X`{8V z%Rr~iq4B0@Vt4io)j9?&uNqQxkP%ZD^%K12WhP^CB_$=V!BrfDA{gpv`*moT*aXWh z*l5FjkUiAqOn6@GjCHHIGfcUGi8j2wTO@ysIB~?Nnqa#{(7NXdvW}urOS}-n+=$oJ z(8;{jkcSP!=d(PLoDeQ>f*+Mss8yT6EoW0iSNksPgh@lM?v`naqh)!Ff%^^|#rlCg zS#Yaw`f(ai1^(PY@VQJibE>Ev|)rd3I<&nwt%fi$k6SZw-x(tR8NpwD)D;Re}pOqZE zG+o#>Cqr+m|JZ`-f_7~ZYXfArn!jdDaiaVQ;QyFqOGDa_{1qMkI!UTTvAk)c(0QT; zIxRmee7NOLHe#C4BNwvnKL2_$Z1C_C$&h(`Mufq-Np~lNuZfo&2eE)bwE320^NY9% z(-oT2USw7VbnbG|#UYj*+A;W$hZYp|(iTH5a%6gMf>dMA)>K>{y{2HCUR;Q~(zpuSCPC;4aMJ>pKlz z!9h?ZZ_QSqKt(<{`winkF_{b!BLhtN_AI~=MEHQ!0azEaHYk=@T}6y^_&?j07vC3R=@SUuu2c^ z*o8(;ghkX^clKdBzEaW^!62HMO`-E#sj?{{RY!^@e#l*t1rtdB?LcVLz$XY9njHk&r0Tb6JCSOt`GxnnQ8PtmM_c0phL0njNnG*FUf9?Rnhix)eDRrVO?Or` z28m~6Sz-iLc=T<`Lb6PTE@^l9(dP-A4Qn|mZ$VsyXzh`8BBW=OxJO^cwA;VPq%H{D zj?xur6M#vTQt!A-f|h=9Dn@=rf>3L$&h?__^nc+n!AA$yWJPsuj$RO!=^WTnYh@Uu z4egVFi8#7U%BJJ*6jca{d=7wBxf#|MjkZC|XFOHKw+qh}NYQp+7`AJb)w{b2KC0O) zk%6GCmtqY}0;v4Y{Gar=rD81^G@kX7qH9Znbw&ap@T?}>mf(wy;-{uXO2|Yk#QA4r zi8!q0=joCyHFe`k!+c$(baZPz25jI>trCP+FW2zDL&krA>=wY{78{>UuEC|o;zB(J z!`&0uS5Xt`l71{MZUW=(au41R@= zP7uU=AK98A@}^#DN2s*1bzt_J*NqvqE=nQnLbbAX*Df^l8-7H}dV-&{tjO|D>krcD z>k_26@HFqRwS(zExf|vasDQD=6!*$#ki{Q zU)o>iQrcoTJQo&hmiEO##BCK^bA9Q9pN;scA@Ru&#&=j(E3|I@dsk^ZYT0#hrTN$} z)6RJthxGYo+pR!0&of2HT>ac8Z#qONCJceui~==1vZvj7bI~b0c8T13CPWYIei9~g z`iOlS*{v2iHl%cpjvsxQ6`Xz!O9b^}5*4ob5Z_$7Wf%@(Hd}*?7P?cEryD4K&-eZ0 zck^SbIOG#x1Hpsrre}L(1!m=bbSg66F0!J8)0Ld_TeQ(g7+3&=vT2v4YUt2gvuoOz zcbOdNzgRdme+Y`I6{yg(F8?FFiB=W}Bs-L*0&8A4L-kByiey=AC@fGjhrt0>>Pl>! z(yhO^9(CaC87l_-nnv1)>S`+4FR0Jq8g2SvM|{Kw<+(yybUICy#zl&Y2*GeyW25(( zApYu7l`H7*!F9;3URDGdHfg1qZsh4wKcDz_nSIoR5MIok(zf*TZyp19*a&qH_KdjR zltIn9kSwh>`0g$(26bL+P_J!5F3hL?M-$t9xo!HirZm#|5(WT}-Ymp7rZj_y7L`q)mmpuEs)|`S-2GtPrtkYqxt8B(};HYABNEbEF zXa7p7WkOuS?3=nSYA9Q(Noox}it#pz&$v3Txw*Nt^hr!!=z!+i%jV4k2qH)-_yk#2 zA|A|88JNtV9BzwxW_}Ecdh=3aH`5}!%a)akILwg^ofpsh_rYE8kW!80Q&UycYqtke z@O=GaCz-)i!NoTJqpk@2CinUGh#Ng0#c@nx*SS9pt|Qq}P}R3D*Iu{{ZJy4u6_CMP zT(lQ1R(k#xI^Z@oHWs)H?G7--1~|LBPp*3f?{KsGA9Tjwrns?KSXk`r?9{Fe=!E?F z^GE21?OnnhqF*{}Z=69whr~eLLA0*N7jGl9Lb~c(Ze5pbk zGd3=63rqTFfR9= z{@O^&uoW^>nt&awf9=AN7*{^H;i19w@s!dabMeb4&#UECt4AWOk;OwNPbpsrDo+^} z7lqJ96@v&n;)fqg`04M0?9Qu^R+Qm+-;xs(>--Lu{g3`;OL#^0kILC|DL=D1!NG*N z85ca-_3&&J=xI4r!%jZS)s?-B`uJ45mDC2Mzz%mH(M=AT_|6A`jT1k?F$hMFmOfZ-hic00T#8iQp34v+&P z%BA>qdZ-Ik_BZhU^Qx7JTO*_@=xF*2+6@H5L~0SndzB^4(mP!%jK~*eMqrFAlp{Y3(GgYLx7i9?Yh;M`{3Q9SikDuLeVbKaCDx7 zc4O=pKK9lAPnhsdWMHAl?J~!DAD_y^$w*+@AA_tc17z3@B&Z^CRpqgcx}*-a`33G5 zhoTNDR&FhF7SuaTm|T6c`>(Uk5<@j>tk8`_CE{H*Z?3S$^3rdt-hC>UOEa50%+d*1 zun%Mc!MZce+&KA?AzWZh8Z_dP3A;#&J}ie|bMN`p{x@^kG7z*^@JY6=k5_WtWUbp1^Qa*q+Axf52(456nw6Vhd2=aqCR~H6H`MD;vwKEG^&BJmG~Xs z;=lNfAzfPsL%i)9j^k4tckIQGN|I$B969YYTbh^>+A$PpqL5*VlAWB!Sj8nSls#5+ zvN(D5`QNP^y+D@}zx=%#!E_g~shL2{6k`)eWoVYk@?aJ2VHB4nGK@o@_*dMly$%uA z1vBa^6ed1(RF+gkDu+Gir+D$t-~L1{+eu~Lvknu6hmf?_xG*=e#+djAs@%u=qPPSE z_o+yws-3UfTArs*of$ERs?eOcTHD9lFP6!N84=&dpyFi3pYkrJMnQ9{2T2VJeVNN! z)2S4=2m$cf<9WElq7Zal$j4+7NE#!YUG4z|xqR1YqAuA3&4rPuIU9*+Txidp#j zWBe~FQXZ3gwGb07j%*ztq)KA+z;`=Otl1p{M^#zFx#{{lgwpGS7SgTMwZCr{v;u0PM1 zKK;TV(paFnaadM0p*ik-7>5b(M|Q_zy~4AT9l>pQ0fL9`S{An5NTm}#Eem)+g1ClF z2nH=WlDVU7S|R@$MVYt|Wyxf!#Nc6CboDI7tFR%dn&h8r8I5X?Hzk6jRqDrNP7T*xhW{t<}*N9n&0wZ<@@ z;Y*r*hc$Pebl6o$;}-Mu{QMbr4|3&{Z-fcP$jFHrVns2$ux+g!e)4snKgQ?_QmO5Y z|4+{FInn;-;3&n^S9LA3Q`=TkQsv0#xCeu`UDTRn=->Y$2fv@95g}fhCIn{GzqMJ{ z3n|gnUvRVG+lcsSTqtayW!YhQL-)?`G@KHM3xrOZt?=KGq8&)lcpe;xq?UU8#oyNU zSa9Xu0Z#6k9y9!QkhxJ19++vJtmls3EPfXy?OSy2L};Qe-MvDq@(r`?`M1Gzs%qc zOh!=*bi7;#-|o+**NziH7>r<|y)KAq5JEmXV5bY(JhoUJBD38g^Kv|F%vRtHaz*vI z8HW(rmHL6mT`ny`ePv70Ikndx+MJ@}5JKynVe)pS7l#(zVoE!2U1tP@?W4d!IJ)yr z47FN(i1&BF6(3OXXdGV?A?986(FhN4pHB)1ieL z(_=x@o~WfD&g*e2oZ&CiPlLS>_S6XVmqS7J29<6OL+#iw@zi~98v*zuf=PJIBH2?K#1cc!cQl zF7e{m!=z|nk8*NyYC(t#N?d~g0to`}u5(NK#s=TRO|Jz*)yOaeqXZO({;MU85oB|Ur!)gbe zoBQh3sz<~ayla4xxfr7S!QWw0H$sb!Hw@;u;z;c?&5{FP0naxNq{b#OdLlpwo@kFJ z-H${qSWz3KERWFgV#%&quUxW=!QsWzkay#4!cuKoZ? z2AMUT)zQ(>(^H=~vMJ8lUs92kmy@%9goJNzZ$tiNrq#Ep7nU(J)_t6ntyXU>E5rYm zL`Ay#ZDMjVCFMtHrEtSU>%KZ6Jc&zOoVv~fvF{XJv}8sLIvd)Ec7BOFRfv!3{j>Xt zJaw*BHS*&nHk`u8OU8DtUAA*A1%`OccVu~-X&jiSQu7JgOg}F?-q5%tbuviQ+}0)? zByYV)a(FZ}&?hI7b~39(y6g9LK*QUGn7(+SgU*jOn7*Lkvl2O;+jYAc|9N2PxRSoU z@Po_L_DM>Hc9sX*Q?{yItEw_0_%!Lzj z#P`z+fks@WMHnWPf+cDxldN>wY01p=fDIc?Gbqo$lKIi3yNO&t3ayR(bQfhp;b4eC z6s@v9%XnN1&jm+C4jEzD9DL&D5=0Zdcy2KFC%)#h4kXLRAYNs5#E%yfIcOXSL{&~Q zhAR1Bnu_b6)9lJB`%DOV`pKKhQc6|$V=z=BrPw_1uO{HF++y@ic{{QrRWKo0#bP-I zk^<}Kb1C6)6XDc~c)Z~YVt7)rV07zmE(hVf&qyBMjN*G$qox{w|B^MDis=#dnWNHM2Q)xWJqNhvtrJ&A}v9XOo})!MY^=V>~qj5 z05?yw*RA7}(Ylm~>i%SffHf&?<8$1=QEeW^#e5fGBGdHh!fzljIjX}bD)3~@XN)=d zxZ2gTfk^RfBd3QTsF~w=BdFEUrIY_W`2Yx6f$of8WM(6>Su*}PCKjOi?iW7QzGjoB z&k8Z-av+nzN)3N}NI~W=)Z|=5hdP{9-U zBz=zd%RyU>x<+k5YV@W+UFj>Qd|3!G@MwU0_PuzWntNx}hbA0^D4mNoHQ*Y}*)~vU zvK-uyOn?AmeT^S;xw(xsy#XILfOdmp6KTZ*z)Tnyr_Q^}lSH zGCR83;enu<$&Hp=G$|adZG3w|*lpm8m5POk5EP2`s5JKj`~GE_P4+J5pP8B}5^VWT z!y9X~@^95qELQ-sD~MhdSbV~Yfd(8#DlPtISZ>-&J$D|E?{luQ=1nqjEbXLth&x}2 zv=L)>fa>)_ASo9wGuz}s+ZY)WZLGJkC(_0vt&NS!*A6n7^BoeE>zd(xv5(x^vNJgC zH9I|YCE@*yyxL?m`xn-t1f-HM;TS_=IGfInMap}Y_K3kS=EtC@k1t%TE3o=ir1Rz72)k4PvKysk@~A=F!Gv}R0&{_S*EhNcAO;3CfxZ%MSaLhoG0?KI zwpX=acWd(tGn4HwdZO}PEbQh$abv8dE9Xf8bEMMFb-Q$A#&1ao46Ip3e0ptcY9KUX zsh?V7hXH%vnQFLHHN=XA(R>hoIC@k-#UF`-DAL1U9QH1pBKmKEE(Hg@2XZf_FmX?x z;J}ke=;^CbrJ)W?o#m^YAR;NMU%_EBmZSoF$Sr!KYG;1)D) zO?!^J0gmWa(a9dnofh-}I07LHbWK%ifK zml{*-Uho|ko)n(@^VL`JquUA)sOgl_kY~BWGYWzbqIx4(Zu?ARTWOCU%F`pcwS?}+}iUc!*iT@<v|vH@PvlCY zC6&csbwn%(h&ozK+^jmqyrm?D*jIShpmXy!V%qaQBgfIDTF5Oon^#JderP-FxznT{ z@qMIYojj>fK-5(4L7Huy6xkn|9wh6l_paiWEPZiCu+9lC!qw8Q>+J6sqB~RrT@K7vOO;KNR9=xll5@*g@M|N8V z;7H>KrqH@R(L~uu$+UPp;sL%z-=7M5eX>AO>jG#>Qmxo%w-pr?ilr&an=`R+skj?^d#3%L>ZjccJgpS-BO|ek?Tqxh!wmOs{L+7&Wd8`)+k**66}30ntB_6 z4==A$J=<}qi81wLQV~OS>f(HeQ~Yxptqe>zGet!&{7t})u<9f>rr1!Y3k%+H?AyIV zi(x^-XDHfPg1m%azX-7U>T>2Nxwwvm+`3|qXoa$Wx!2mkXS#luZ(Ri3#_Ls0l9GpxSbE3m!Se5M_;| zKyY`rTyA*j_hJxrg{!j|f6F33cE77n3m9zOXgf;z`0+C`Q_9!fccAkVl!Vx%+FHTW z)6>8pnNHz;%-eIB{}&uoPP6dv5TrA%=17y)4ab)7U#gCF14?8*-C9V~oU?Vmdq*wU ze;52{LHr?Pf-E`rhZi(mD9)WSIWPOw<<(VxU*C4mvA}TV)br}|$t^Kz0KB|xE9pTj z`FHh-I>*V^8B}^I7OJ3A|8J<2gbD(s(zQ zbUJHdL!oA-rdhHakFRSRZC*)EF3@cL`$zJzFk#jp&+O%mtD9wrW&Qcytue{fHW-13ix3w_VA%~`2fa=)(ox= zxxNfgCt%@8>&MpMvbr6j78k{Un1O4%DYcp{v6_%rNVieAD20~z+fSn6XuoF zA_wGE1G2x1eQr`RIfU8|1#w8&c7HLc1pt)q-*K!SLFj25I35x9n<~C_-N>bQE5J;R zgWinVrmL%Gql9FEMR5^6`u(0+W#4MQe#W5RmZqUa^>QT}@vcbN_w|#Ry?cJ=_|%*+ ztKRzLcly~i6!tW#E3J?%kVUjED?|mb0fk%PQB#W*0QA}d+ya1$okX#YZH+p~xtPhu z{$1RG!o=#s+PsF&%}(jbVIP!#`zigA9=He2)Tx8cnYt?{j*@+E(?*}#CV`+|pJ$TN zG>!ay4=t~F{Z>deq8Z{Xi{Y-f8Luba?eE1y3RtVZf0lZ)qn?$Ygq$*M)dS%Ng^ve$ zCR}i@Mws?&acV|F1TMhqw9bVVcvZ6qiq;#L!wm!Mu~(6ViL^mzM9eq7R9R(WMEn#0 zHEE^xiDbR%FIsT78dB`&Vmu*45O(Xu|6G0=mDR#c14y~9_@Xu>+-y!j#wA6Y9URqL zc31p%3C8*AssDJ8sc~wit!4~$x z9O(IGfyqW}#c)w1!@P{g5i-;GQ=PFh`~stSO+1a|kbuFg3BnBYo7>b(8R=D}fSG={ zXl`u1Oe(;GCmla;8kMYq`c6xBYFX+c;OP&Cp{RrII<5NFniB^#&3kW!LFRx{Gc@(E zb8Nf1vooijTA2pH?L2DHNXaxQT%;lMtD-z@@V1jJ@rVv_ofZ*8*f<%|N=|UUMolkF znTTC_Nlzw0Z8G5(??#~SG1~`UA_5^;ra6?gyi$LdoKL2Y?&5XKW?}*q_T&#`u4LWDH|}%e4crE_uD>({CY#yyPk8&-CwjKV znp6DVPkAbSO}K72GR(B>kxhuS9aNyY`KzrnnmM&n&BT>|1VM1~3`A@FIM3Tw0uBWx zoN4^$0~_(ub{mXWR{j=e$kR)o>)zy3~5`kxDrTHF8_*Im8tpPPS2HLY$E z{`XFbSAn2qKLf3{;o9=`>yngNq518TS?Ons$J4040Y0cMwL5K9=mf!a+Vd>88+Z-! z>R8MS7G{rhDGA=czlLRt(-Vydj;s6bhMA&V9%M^%TA16SmYf3IKC6MF#twq>l6U%2 z-+My9{rnLy*Q2VvKFT-1yop4FZu5Hsj?=%ZTPF_fhuvcdKvBzi+Cb%lb(PJ7Yre{z z%4b>hoEa*4+^FD`%~pnx_=yYS-2nyQ^nM+KdE{oew2DXM3S;9=Mdv!INldYYhUf&rJ5lz$LdRpSPCWDE9=yj9v*1MXa zDmyL)hSHzfF3buWrPG4!4kiKo)R2$@jMd3watf0(#H%|zEeNFK)j$R75B`gcX|h}! zQEj<@>j@tn$PBF5v%-fN5)D0W<)pYI&U2oXQEOuCI`9kz-7aS5XoR-KR4{aAOfR8T z%PPT96K($DwDTbw`&VU(rpfm^@BDzJcg+^XB6VK*{=}1JS?13=vkH}{Jp`$db(>;O zzcn98pt=4t2?_CHv+fD4>#PBfSjsSIl zV?`}uynWTf-4bN8a`3~V%sBGf1w8ZTJY&XXp#S#QL*pH5P&ESFy!ra^DwR}?I}v8Q zO?&bEd)sb^$@Clqx7$Q>Mt+cC!pfD~f?3A^#cBx?2RCs;P-8h8&!!h{F1H+!A08}9 zDQkj#WxWvuAL15|>~l*ZevO;m?@TEHng0iH6oDnbLuS@w$MUNugWqaxev_!N30!oa zuZ_WHEWZbO!bBEVSC4c>)R0OGLVUgBX2`_I0O$YwNgUZ83dDChB1TMw>e-F)sZPg- z{7|_)8`?0Q)5^(yE1j|B=JxBxbW*#~2EU>+!$?2I7m!^WxA%f;Hys?!#H^gU9Dqf8 zs?YYznis`lTm2^b^@GSVA$gHQKQ+gAlRkkz47?^OLPlw|ntU(>H^Y}5uR+@p^Wz_M zQ4A;>W4uB4@01RUZ<4vM z7A~2=f`yvRc-qhCm19JhNMx!0i|dZo+_4et4XLeVI@vp>K=?5bk*)Qy$(28T)gxUK z>xu(6_Ub;gMN@_bXA+J_PdVWHXF`Kw{t^KDjPSC0Jelr7Pq$|V z1`uXuFc|D9XRq@mLH5B)7YEvJ(pvwcM<5DKn$t%ImQZC4#QRc_xoz zvpxQ=3gs`d%4ffTVsV7b5FSGM%vhjbIBH?C#VG0br-3l3*ue<3C$Y8t2{<3dSQKdB zHS0mxSs5iCciH2^7pQLeza^mTTaRd4^ca4`ZIM-3GAgnDYrSxDH0Rei%^|@cvWC1X z2aEge&g~|JMTI?OQbZ0~#)KC!gAmeMY0TYRIIlXaD{$hwzKu}xLgkDGLUnibY45uE zvwpo-5QvL|c0LMH6-sv%#j zXQ8J@{+?;!`t0;{;ajMc+ig^(CC!zm7yMSyjl}NiRzhGcYhz zR8&+lQJ(-M(znZhJF`!em<;3Ej5`DDsO}b;MOrEyR(oy~ZckHEQig{$btG`vv-|o~ zZvyWf|D*6|M-f?FUEM=7z&8(Nw2Z3FL^_foDj)^t=FR za8^dkWY|noRu)ix{+G|PjmFXG&Nu*t1MohSG3;TJAN&7FOYCa22px#{oi|e=s5oGtvYkZ7kvlDkh zSp1z1@o>zzvYe6(T*i_0ci7c#>z;e$OfnGO7#Kt}VT!xYHTxYrzvm2CwFjIWt_|i3 zbQNl(R$6^y++?M3NnkWPRVn~A*VfineY>R#?cS2TIUdUmy_IOYP~)P*59!JbT@AXs zy|D^DF({6%1`0UX)MCS1aEzI-`wA&LWrvT2*&uLrWvfP#2YTYd0yFHyRKu7-33z9`5?2w5A7BItgxRC}6 zxRTNC=XCkCcHIiD)jYfw>s+5HrnSCB0LG#}dm)ghZD3 zr)9JvFW$~XBg22(dwJB~0;bM(zdIO+TYJFfr2)+!rd z^#sN8vPw(SHIDL`)MAEY2}FuHoR{AVvacYAaj$hs#54w|y=V4-I>hgoCFJkWaBKC6 zVxTn6Hd%qv>txo=I$$qEei(HtqR(r33N4k6SzJc#_KVB>7X!BVZ$Cj$6;|JFQ>{We zsr_@5SWGE^#B>s-%IY$jjz?**9!!LvvrD+x_0x^z;{m);b0bTBrJrLI39n^Z#yhfEh{Kae` zwP*$6*hEbxD<(Cjg3y6=5`MH0wDc5>R?|FYk#!VY+4>FYU$J#3l1prBe_UyFzSC1p zSCp`ywFM~uqYkI68tP#Ip3_cQ=OY4ZQdZ^vqjaa<^&+NcSf>^HeJlNOwhMTS$3I6i zm6W&-w z{v*#<>RcHtH~Pi&{ceA$`@7iPgMulN;J5j(H+bPWXs%VDmMyJ)i5w0bms~B`3(Rf< zzwrN~?8rP9QW?axstr0!3lFG(Tb`Nj2$pKW#aTajFCV1dMQbO-UGP`$e(kEKGhuJq z4hML@3k8svlX^NZw-j`4EUv@81gYk76ei@4kX*1PQ8PP+$(umg&qOwW&@nq22yypsGM|A<)-^$9$wg4mH zeBc?v!2~T?a!$pW>K~0NjvGWTEq2vQj7B-_Jy}yT>lz^_s>={gKY23rdGgc!@M0Zq zw@_lnVynvWHv1A49Z=Q-{KI>87dyBDFaf5{@%LP^K(r3E0B@_};rDwwnDP^V0;X=j zMHvYU`wQTP6(wU|08Fjd>W=}MS;^+-uKUSN0oGUjZ{~Y87zq#1W;MvxrvZkQ=LKw+ zA>HadwAOsnH?}#`rf)W|NmRWe$W1X^=ZcaGJrj# zBLmIl&@eH@soE4%{O=L4et@{AqQl9_sj8+1g+d$7{k5x34D;2HZ{697x2Iv3) literal 14519 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 diff --git a/tests/baselines/plot3d_surface.png b/tests/baselines/plot3d_surface.png index c0f9f0cfe231483432d16064afcccee61cbd5623..5f8959f9668a01e721265121dd75a20a823bb13e 100644 GIT binary patch literal 50852 zcmd>lRaabHur2N`!9Bo-yIX=MxH~iu+}+(Bf_rdxcZcBaZjD3Z4ySX+9p_J+hkofX zcGX(Dbk?jLp(rnfibRM60Re&fLt0!J0s>O;-wy!_{Eum5T`UB|u+o~0TM~*%TVCjh7?#If1^=~IcRe;gMC#!rYzY)527iV5 zz#fUwa{gQlk#HC}65KaoKLmE%0<(1BEv&5eZ=Ypp66H(gYyHxo(x61Lp!~TZ(9)pK z5#mN(ce}|SLRev0VTB7IdSfA8a-U(=L+JeJKm&9TwNxS-sr}s;#Sq242K4@rpQ&>I zG62$>I})Jx)7>P}he|e}M->A4gQciXxEJT?8mHI)^Lh;DRWc3AudLSqYI|d2V{HwI z#BD`H7E(6Awh#h<4En&m_Cpku^x~m6W~@kq+CzfqG(hcqde$UVfl&G5MduH>-8F_h z&Q$y@3@q;|-g{*<4Qf*c66NVqO<&WN4VJ$U0?s?^U_gEt=U5+n6t|k2e#a=f846g| z9f7Z8uI$C%9+e@WySd^2oY#YKk zjt5I5`He0>@PF;-pNThn*Sr&*=?k8pjWfnN-6!uq-{@D;)1dT9A>iIb@Q6e`UCUf_uK%I8Yrz2TBINC%+A1gcLT7QNb`^uFZU4 z5YYOv(eiSE+onCN(6!GzQp&bvPB~T)x?}~39zIxHPC}p8yuCTDeof{gUwcRAt7{H(vLxF8z4Yy&YUcty zthEfyO@_UnXA0j{T>W`h;!QWQ7VlIuZvkIlyT80(&dB#Pw_i+%vjTrK0jcP-tctUS zy{%<0d-MfA>xjS}e+IkNZ|21Qc`yO#Sh}Ke#bnXiGFSK;BxSf-|`w5t~BP}f^VsAk>OnGpYK zu(S9a+MAS{riJ0>X;=?DoHrgWTg4O4wL1TE^PO_xbS$?`X z4n|BDgGdiUCRHUOM$>$JK~9zt;U0avW#>fAnnT@DNayhXL@eVn=E~T07RYq`84|gM zbV-mg%Sjs&;E(I@qrX3gyVO#f{V3+p?xY%{1XA>guouvA1dkNE>UGx%ynp-W#TJIj z$hKTL^SjwfSQJb@6{jn)h!xER3VYXTM1^}o+$`x|FfaNgK^J=yx3T4_mu%$Q0?}&c z9gQI0@Jz#AHy1W;A&?nqhFDMjvZG~vxGU#(p$hokf??ize+LIH?YfejbxNr2`@gEE z*B3TFG8RxcrfiK}zteyt`IPc}>T$sT>U3`3>3FiF2{x=`Cf1^kxdt=qMbqMlG}$ay zm)c0*9zgg$!T;dFv~?XJXQo~-(V)O|G&~Kx1B*!5xM>>rH{{&-3D~|@{Xw|$-d+NZ zx9vY0ytwFjnIsTE(kxNFrcfu}fWM0z^5wU2r4eaiFpoU2r_XW=*iLODKvCG7Iyb7B zSVA5P3a=7hojXe3ySd^D#7>$uo+tJdrjF!)0*hP8Yw;vbvY_YxJ92S1Q&T*rGh1pQ z&0?MsEYu1Es%LGeyGbjE3uFL_D}mINu)x072qMimg+@>v-i~)B`^6WxA^%VApU1 zJ;?*~FrlK8R#vgT*Yq@-vGCPtjhSPr`kr!!;`?Z=cz{$3Qv$M9m~L7TAIZe7n}eqn zgT21xl@fL$%6jq0ba#}l%epK$H;(6Hqn}Hx6yUzLtDHTB{c+MyyjkboAvTwa!L68# zS(`xAmRvO+mC=ecLPvFvcE)x9dMHIPgs;tBgPi-&ZsD8}t zhJ$-+Ve~Zw_?f07xG3cxf>g))p7}ajl(9o%yRv892pi*5nnDpqiDJ@yPie*I4L0_dB0!2Z`U{ahI<+J`t2Lxz&_0MO^I+O z`zU968WA!1kT94s)0*1K{U+GgAo{-1?>eC}Zv)}Jfd2zdjzA~RXj*!+H%<#~Ld<}K zX{vqFsjJtRiL1Y8(Zd*fwEAr~!FJVndrg}p9ims`C9E&y{`8)Qxz^U#3+2hqz(3ln zTdrhDG1kuPTz52P9-}5}9$VdBbXh6CrS<{8ad;BXa5`r0S5aC-+7Uc+-bJ&yypG(u z6;h+q{&L;M5)=ra``E6rD*-s7)zvUA0=$-)nDF#P6i4Pk_ zuCk^L!u34&U&T)(-abHQPSkFgj?Ju>C3aED=p2XX1wOIZ%5v;qZhSS$A?S(3>(UzR z1mVvijp~tNk~Yh-2<5~fvMR)8%)7f%9%c}PtqK8G#4fsM=rNnO3w3?} zW*YVS;SG)XI%N|yWp!@wAt~6d8)xV-{vE>Ts{w)QhYb1vHf+l~OZTV^q)#fOSBt#W-UuW&#!3sEpEK~Sw`k$%BFkAw zKIseXD831)c?qmmBcBai0Tv0bWG3BrW?d2Jg+;LfA)$WQG`r!N9U;<1cU#N#^@KOP zf>JZ*v_?SG>^=AUsnrX~ZyYM8q|beAPryd*p7r1EURndv4FvcZPXT zkO*rR3jHwYHk?e%b;Rl8cGZOi=<_xc((%)UhyFmP?hg8Vo;(L0O#Vwak#ohD97jDh zD;$aH*OW^U=6KZj-xF%pw?Su) z-?Cke*gqFp;&+7b6Uq3Z9FIVc26dlkNaaLkkkB8m^n&JHLB3oLK#Ixm?cNPL6rqbG zz2dz9p~e-5y_mmB52_W5$>MJ6@lF-{G?<`xz)tk@gXDj=-W+;JQ@?RdWf1Ev9k!%t z+8g5NAx@)J65FOFzXdu;bW@tL8($%LP9@qgAl-hap{)U}19zpm1mNBt)#~$?I$S4i z2k;c#E&-Pt!ObfJ(gLRSTwH@0#x39ydQ#ssI+nC|u^`)sW0r%pGiO;H#*VI29f3wY zQ%1iM0X+T7F|)6qi%`nJBD>SSezg@_NS3Xf%bM=z>V2LkIWfrZM>c6bBud!A-Kra+gK5*6QLBFf+ z)FzOIV}sk8hu`t}2Pydmk}@i-~~sFDwU};TM1`vY01A_0SLa*j?Ted;4ZeVBfAvmcv9$O3Zpz zy6u+S;84|Se|(OM6Xn^%$`^O|B|GfDUP;fXk}diq^GVz#HwRnHM2X{e=E2pxr_bZr zHFT~+kN>*mICQASEwxL>qR@0!2O?hEilMMcM56W0CC=Ro^QmIF@A82n8fz4_N2^+Y zCXi8D=CT-PBZXoBTSg7gCOIejQwBC0%}Ys^0Y}W-1^8`Bj}y>4eZ1%g>B}PySFy&~ zq|?%>2L{Bet~QKjp9g|*F43th?UH4{KuYW3*B)9fxVN4Xo3Lux9*5YU_51O%v-)?g zIvG7CQEjA+14K}>PPg)Ad%1FQXeD^rausB^e67%kg%EXr`dPs;nmg$E?hiVbQ|#)OpYaUSa%3@}A!skm2gSOYN0+?UwnQNi z`JOR7={FuvV|ARVLm`z?_Pg31IIf?+R243WaK z6JYz?TA|4vmyxH6XE?E?)qzoH=v{CzbftZeI2xBfEaOkFkVr9*M*?_%eg9g*iYAM} z-s47pHt7B_ir9#77-~P+>@&u6GKM>tJdqkFAi+smX|eB5MaH*Er!l~MmLWUO;UAumE5M9FM)|iOgwv}8L~2}7`ns*!W`AEJ&q2is#7O*qCj+c zV^Y%TRe=!P8qo)JsdN@rEpeJ%zNA>!Jg##QWgw6W!0qETO{lol-hiYi#I#^%E`0&+Wa(gbQ^AjRiVDdX7u&RBk2)pt4nY5ZR|s@bucR z(bYYu38y=rmMk(Exoiqv9yDGv;*2{%-8zDd%j(#D;%xa(xt!mXV=~GX-qYSr=jTW& zHfXkLdfJpd(BsA}j%|}6D;=EedrE`;S4hbMj_C3Z`ca9sG}}{uj1=NrcRebxo3`>+ z#O8%Y24YXe{;YN2;W$(qw#GL16@cv#L5 znim-t${yu@VP|O-EDkT+xLdzlVlZx_Em3}yEkjqf*ep`M;y`~BWRNZxb8jQJCm?Bw z@O>7Q>ZWtG#rrpHfTeUh{vt}7OS%;6dZ!RD50??=px4T=ycKL_HgR|Vb-(k^a!kV< zM$BSc1?q`FXPJ(JwU}-N{)1wAST8BKrSX9*KnMpUgg6DdcG!{{hMq=Gg60UkK z6lC3YwAD=*KVM7Zo1~=yP05xjr2jURd6uSG;64iY0NsR$u=__8ykJS zVTne~{B*41Ka>U|?1by>E`*Z&;G;&&H^GJ7wpJTr5t%Qe2?VF|$bCvs4qWaf#8M-} z7ih=!gx5>F(i|wd&r#OA8Ngo*e$}xBe-|6n(+mFf=2K7=o@&@w~8ear3-`8rny;)MAd(zm2KCnw6SY3)-H&$Qx?){V1aG=<55d? z)?Z<`R6agJmR4$?{T|z%Hx}7;L`ufon$h`tBNMStFD{Nf1=2EG9G&ml_+Pv?NuV}K zY;;ij+;vc`c-FbsUay^P)*#XSl&heX%C%%F4GU5IVyGj97AJIYR-$TIHcl67`*JJH zmm6JzcE<1lIq&OV9}-4;1(|-P1BK!;|NM;2k&#znrl5CF37+7AVcaX3$lpm>Ca8i0 zW@f1`Rc=mj&f0}<-+t1r8w~(EKE8utp6BG}C<$Mi2d5rYdx_h)SHIHKP>ZvhU7ryL zkkG1KsLrG+g7={k6}aJIOIb*8mX*%ktypJ=w=w|v%NWZo(&>I}r`-fH8dn(Q$^)V^ z{+TLK^OZ)7BnOK#^Mv+SPHwrjSjOv|SdmFd{IldX?1VWNx35-AM7&4+XvRxSJCw{O zf7eCQJFW0*NS)zrZt~&wRs`gy9m59SGTy`JzBdd%94E3@ih%wfGje%>!e>u7j4rW6 zB7nmB<#0VsWA$^m(9lN5eVjT!gpQ^K54nA`J-EwRm6jI3xB6{7Fs3+WUP4GBGJI+A z-)&Z6Vp>NDXgazitb8t9d(uHMEO#JQr5sHeSd5rn@?_5KS$6BAv7lXThpMe!(NeAN z=9QVOe@(gBj%r(}k(<69i<)_r6}E3x9SHf!W$80-thH>{V#{Vd&$VZ}CGT*vqq*8- zoU!?D>zpv6GL=3YS_^^1##B2;l3-&4l$i;4@pM%c>oruDzH z%vKxKDlN7;QO_yAJ#_dgWGyQPTJK3N>OPC9K~x*W(B11vls#>2tNo<@QZWrf@q4?I z>xT6G-4br_HeoZPQPE8sS$jCW+vbQX9L)l^c-k$-q#M5b+D9!f;t#5{I4-lzu0H=c zMI*BsR5TRNX=MK{pL6s;xjJ`WV=nUijr3;=r*Jef8yS&CsY29_Yth5R7}W2H9;3ZZ zEea&zb`VsbyK^CIKIS2^rOPNlAMiq2kfpOo1*}?Fue`N*p0n=sB;R}agKI3j3y99zaw=z852?A61@Wv($N=!%LTrk+N3Vo7);YvR=a4a z?6v;s`%aWr)3Pn@x-qy_z252quVQ93Dq4`TIQ*Q5I@a7~JOKRsaqTwD2gV3_MjCoS zGR2^~N$}XSa%H`(_99E?9>w3goj^Xg{XfVaC{<|m`Us-Nt?MSnbjc6Yv-jh~bBT{m zPaEld`=e7eiaQVe{A`RBm11{@+XX(;tX3`6?Y0?41I+5FHy20L9}$@JzjAQd;|RDl z;`uvfJtbnUi@C3wtXmEhP*Q3^qQEojC5;o?9Rh1=JC0I=rYhxuq`KkC!Kp6ChWT}u zudZBQcHI^WZby7rcRm&K1>Vr#o#Y}cF8rlF4^Gejc)B~qFltWmmi9&|h6Mv6_#meB ztd?sxIYxRrl!?%{bi}zb0P^)U%ScAi&NU=Q+6`=-KfbSc!mGDXL|+Tnme?As|1O@x zFGag>l0zI*+qHysH?f^#1muwL#bFAjVzZ@QHkK>f39+K9w|e+gg~&%;MbfXwxDfFm zrEk|)SvD!PbsMM0c(s+AjEdi$U#GNPo3#glMC3`?b~?1QxbbjrT~HMN=Aoi<^?ear zz<;5+zYO-I(g63Sz!-TH70MyO@cb(Uz4KwkS|f%P|70f0rL*8V9NjfGgPxUC{xQ@v z_zD&3-#nppv;zGKV(()ZoV8}Kllxa$YH^wH6G2?T)1JG3=vU~htIZ^=*aJDuw~(K6 zD$4J9rO+AT)5QSR2ur0+GE;XqEIT9H8sl8m*{lxWE(yCmpace zA4FHGy%501mOqnk!;WsOLW#6>2IcWSE0g$?p^2Agqfe$tH&Dzmb{&7&a^|SXC%IH3 ziikd0nnZGC;vinr8n6_xUvqKl{EujW*C^R_>g&i_Q^J3s+9Fi9D!rfiEab|jUdqKt z(68)5=pXVXee#E%ap)6HSjqL18mxx?HZNH~Uet^p$)e{u?i#LSosbEq^W|jb8LPF{ zBJYuA;>{*vF_P-trSeIg6YWr!D7oZBH#D0j@XI%h~E|MqC^ zTvU^L?0KGA8Oi>~bI~HMhNSK)pLD{e=*nsO&4o4e>HQnA*d9!0n@(pLZkOUssJmE> zc<0E6)g$7?e%j`e4IOKD@=g4N-TD}c7n7T{jMV0n6htnULjRhyRKm`a*`7y zo)UyQd{GnQcp0j)_5Z2Xx(iL+G+W5x{e0T)!UeNs3|_l$d?V6HHYq8vs~fo`HngH7 zav(fSrAFOnq*y@oGw;~aj_FX`u2Ap`>XjAnzuVfX%+sw>?7kczqh*(vMMzL^x-*#(g?s6{hx=9FsV94Go~nc{%0x@yWO<7w z8*EFn@9hH;iOzAP@o~DT!d%T9E3-j`0lOKIRh>sbhQkGC<_29#`aY9BS^L^MQbETd zK6H0S^2+O*s45HTG=~QN%p{a{qp+-lRC-BTyyDI*lT9*wu2wajR<*g}tI zpz_;lrTTcI`)`N3{EG@D;1P|E*c;`8MBOi125=ia8t6KCI9TB6a1O@XZUyk?!5IEV z_+QZkGfd0*d2CUE6OFVi_r>o@iSXxnCprAHO|}y5Wv&PNn3pwN`7*vYxbUQNZ4LQ1 zn05eRzecryk9zG~>bK3GJ4aU8P2{yTb-L73-a&oEx=dZ#12#-gTqdEJ3>r2eyZ*T2 zaxgk>s&tttvOLhhC>l+i*oHAB_Uf!(Sv7$7UyaX0MNieUpdJrAFr}=0d65r3WS)^i z9m0Xtx)b+)nu?9E3F*U3il-9y({dGBKyQxVYL}~t=4yU;KjhO*PR?Q%0^kZb)I}i9 zs2atP{BnFW{`I!$b~n`t|mtwW^$ zK$y9!BW27j*AC_BsyqCHG6-X_0hoEq88Vz}7eMIzHxEwiux#9>jK(*n-FM>zZF2sC zZ~j8-XRNFov0kRM4w3ZMxAM(zo-Io(b`IuBcDjdTSp|&)&GzIJcJ=__y?a+j&FjJ$ zM>?p}i`&rWt}_Z4VTGmai#Fo4qgQ4IH|_6n$~CTfiiUJ3=OKojeP33Tby5CQRhx!b z+`_%H>jhPE5%FejbJW<()ea|>Su1g@M{TX7s?z0N>2Njn}YOC;XAm{TnkXH{cWlpHFw`y=kmlc zPxHmAB^ggAoG?VIwRK1TpkoR*Zsom>FGR!ot}Pay0agUZy|mI_$0#+b2yYMnyFDz{ z8NbjQueuvH}f{g^0H8FciVm1<3Zm3JOaL-ihqpt_qBN%)~E*6#QBB4uiLX}tdhq{OPn2W zU9~hWf_546W-(j?W#;u#qkFaO1d!jJO4RvzU;-cdA%!JQXHB|<2XFtog>}r?IZ$dg z%-o#jF<{6mEUCR`wzI}RA5A2mAz4OxOHH=HV@H>C(fL>q%{=KuNu%w^NM37my3QP5 zJ_c9JO1)nY6Uf|z!fI=?tw^3g)X1h7E7b|jF>cg`%AYtSTQT<5`1^OIHOBe|aZ%wz zQ?sFdD%>k01~p)U9?!xRNCI!(()G>ww&(b%ny>U^!Dq`EzBGPbEsM}uYy~OTFh^jq z&QuTIUSD{kNLQfVm$RGXb_XO=99FRFIeV~UbQq459=8&d$l|{JleYikB5jAVDBSJm zuE&hTBL|(#WDMD#O~R)HkAUq+jm#xZ?PKnJ?)gnrhCA+Sd#h7*TjLt;ave*UiTS3O zhGD|g3ax}?qQkNaKxrCJKyI#~I`1&EU!~QqV%U+7Ud~_MZE@mhyYNdw>Q4bTaLs?M z@7C*wU7MUn5PHj2zTD28QIq1tQxluiU7(TDlKoSKXq|JqGPS6(1S^IT=cq3{)Zyu& zx<7rnw}Lkrhod%|r&X=U)b6YcNJb%j^G+b9aQhVw<`^NnuKDN_w91tfMuJ5opvIT% zLR`+*0#i~yc8@%^7`7&s>9lI58}T0I)bLN22yB72Gw{GO4J6}NW!(8ahcArO6-G?A zCG)hWK=*E?f;#$Gfs}uX<+H96x9;gCIY7hO$(q;ivk1 zy@s}4f4~2Eg9gcMEcNi+Zhzu01>0m?(Ls@7Wm!DLWCooeclOmq)rOUJ8%>M=NOxFN zkV~`Wu-FWQ2CLk~|G1;;CZKdHGE`f~*Ba%PkWyV95?Lps4o>A1=J*?_l)wg*EK-yH@>1k(7MU$_B=TbJw+ho2fb#} z%{1=QXlce*;G^R-2?1keofwJ;GozL5-aBdc&Pv~9 zMbQQ+!G|~(ozx`Gmueh#1#NxHuD1T!wx!i}qbmJ-N~*pT5*MO-2HCr98}02{WwJE0 zYHmwSQ-lB^k5IL17zRL&&;W2&x`Lki)e|?9XMpKUvi%_1#hd={rm|){IY)j(HQY}{ z8XP;7|6)gm+Lb(Lz5Nju*%wxqWxoEb+oUNc!TC~UXI2PBPItc;@SqCcn^R9AjRajxZwD3u^w@?7 z(`vE+kNI&vm%JlxiHx_QT1&BxK5QGiA(bOtzSVeM0tVMB3^XDsZ%5!!^QY4VJwf1( zK(x`%agiSJu<62W?;m==fs8O?1|+YwydDzI%{*#!n+fQfGArogwQgAnsq0exERW-K zhRh$8OGpfJ(U3dig$P5+IT8a`Gt*^xcmWFud;4x5R z*p4}O=GMj{uGho*jW@1tgel;8Iuch&xPi367ijzIqOk zUiUzQgHVHGwnMV7#Z(=TtZkocs<{{liX2Kfl*vc_A|;qj_GGQUP%*k2cj%oZ?#GwEhLD>G>|?2dNlFwpi96?Ug@8jpqZKfR8kiLt(aEv*h$ zB36US`v8vz$$<$6NosBN$upFbif9=w)G`jnG$dCSq~>#i=2d9oTe$ZAt65aOj`Q7W z4=Q5)pL~ME$DS%{Hdppu%#Q+=Y!{73#a1lAklTEoc-=LNI@tyKV|JHW48E&syoabs zN>c|3^2y_(XShCPJ?@PhHyACU6t*s6x?59^eno^I>QJe1?t!?JFbk2GP?i!1yR(Hm zN2fou-h(8vqOj80yU}051jPd{QIMvx65piz6@t6|j*5_;_H7ie*Z!z+$g~Y9l9%bN z&nF=&kKws)v4saleE_<}2O0sF#H{3RcX@OCUg{o2hZ0q7a`h%sZxF5}k(f2Q%vs8R8F-`XAk(#!sk*U6&QT@SAWK1$P-u^KwJGtV zPT$MqAYJ5_4n46AM~pWUixD@W4Hl|qvlrfNnV~J|_c*dIyAl8P39sf8k^eF=ZiV%B zBe!3=3zC`?qaz8nS1D00m`lZnwYLm(f8e#au|Ki@xWWpKFTqeECsPk}Z!+!%I3F7i z5~caYKAFa%c~oKKhCD@pPoG!Vp$th0yrT3)SHqf#e1~p2z>5?&ukhl=9N}5-XISDk?=_o_cOs##bm(xsBfsVUh1$AHG8=ts5~<0%JcsK&M0uLgkmP zH(&Gsq|p|CoHV?gZh<8K-AY6S`*wdDA{O*c=p?a6dvMHJB=Q(BrS51aK)V{&UPf`A zB;13X5IK(V`WoUFiZLbQsV@n_^K7S%Z5aYi_{|Pnw*|3+=i5Kc&aG@M1g_Or!tDG4 zQndQcqGf!6gsdT*3|bGjeYaQxc)F`9Jj^;e3PCGc}mxduxhj)-v9EIxkRanKZ7FUezJ8v2$v zs4D&EFzyHsc^y_dgxcYLpbgkbd}IjOkd1Nmh{yQawp2l_zjdB6WBR`SO)TMXlOQPcSWk>R8F zTjckl^qn(Hm%Y*gUGoB6`~qDO>K@a2sl~Cs!v?{azW4bEpxukKFcGJ)7u-@>oF52O z-b$+5Xs;tdPz^vDv9tFAI*0#`&;dJgS36MF$?b6d#eIr&?d{Vlr?c z&?Q&%71rx;?{7npV;pIWDu9Wo z^8+2U;FoN7EeK%+5jr;y)mdWYbXV2qvC@p>1Q(fp!iBfL*c*9}WWETcR9Os1SXP{Y z6|^4TJ2p#t2S`g-j>h2e=*4j<-N6-&_|**IdbV}u^%k2fHlnR2$5W1Nx6rxQ;_ERb zR^*z;yWLJYDjMom-SM~=^5m$AXOK=T0?)?60urT|1&V@Ucm8)2yeO; zW`Q8GnG5M*1~>OTYCcie78P1hCU58x?<~JN78P132i?KvYe>iP{43j@hcc8O!SyOj zhyuRcj(vNzLnC(7`MN$5bobd^jTs_9UkK)Tq+t~U$bLVPR2WVy z0y80@CgP)#$ISP`CH*4yi9~oy5@2O?*m|1QZi{|Rv?!cdtxKO1p2i>xpH>R9px$V>`?F9EIc37hop2b8a?#rrG}z z#Uv_HWA<%%8J5;SU^%P8P>p?)5Im>NGI8}PSBk19~a_#I}4~zExNeD*gmVz!Ncs=(#n0W*DtFlRZtK<#v%9=_&2_UGtnEu2#0z_ zbKP_}sa*SR`yc4IS#+!8mxHW?-Lyh_&F}k(9D?MSr!IVgo1a|Qhq)tj5$)SKGEe#! z1oke9f8W~#?0&vQxZ=ESmyC$*6R-G8LL5hS@bnoR98AYV@I?nhfus^ZEs@R7W5tIu zvP3O5c1;UatF_r>H9C!R!8L}X>J9YSwjt~anHCOajW!pm@PKZmzV7d%zH`e$>hY#E+P!~zei8B#53_?f*j??58}79*!&z4cErl;HB$4lzSZ^)|&li7q zuNVvi`8W?QIR0JXheq&<1$tlhXk9ON>*Luz)fL0ns11RP*1)H1GGd=HH|d0;ku%gM zbVYgcAIg4Ym-GdcY7IbYNeKoytzpka9rEU7x=bqFnr4ewm!dg% zpg~Nt7v)is&}@kCe7F24gTRY%x2$}Jl=aHydc1Ur?<-ayXy0QA`U>OBR>ezp^p%l>mtdyijRI~9*6O)SIir$@NK!|K>;db z@s$FlcaO4}5hw4OJ7nRo;OyUM-TB?Oo!0mOKVQik%&%Z1U{lm?GESdp1UJAaA@e`f|lPnePWlBsQx5KADh{*7@k>=J-AxM!t{44GO-s_(7lvuZMJa zAGy0i&vbt}{M9fi1uhFnXz!{u1X)R9lQ+XZ5y5+e3%r$M<_u{o9XgWf`gE%kN47sb zc=Y(=5stDH3b(%;l}B8ZU#1qlUzL_@{YDn6lPd81rnfPL67!kZIE<1rsN{C9u!iUjN-$gJ{15rv`$048cfe&x&;}t~dk@j+8=&&S ziVy6yfLb$KvQ#hV&MQ$eNGR0%K@^ymgZBrSJ$dpc6`@XFiOzoChhC^x7H?}XYo}Q1 zcU`-&X6FBLqCr;+8`bIb>LNFpx>3{A)a3cP6`8kn1(fI%-?;I8U{XY5(Z*M)|JrWk z>weGKlkwda1H^-J^IztrLHQRgx+sR3=m3CzmaEdsbJ`4J$cn}l)tkn^02s0Bg2^@9 z*Nz6|VAAeX7V-PN#)6Z1Y0&Bq2Qy9;`AJ!!%J`IMm_)qHmMShAeM8-1n!8)TTMo|+L{ms@)< z{=^xV5I4vJ`^*d_dWs4n70qWW2Ze>ckX~j*7X%o&%mhwSTd4l<#wf{BDSc1un( z7_VXXeClbh{{&xgePxB~Gb10w8KkNYyWJF8{_N3RDft5i@^07ox)WQkTcahSw!GdS z>27kp-hcH>`KUiX58_;fE3~Ju!OI`<%-Lj#0{ox`F)KiceQBrivCaL8z>Og~?XaMF zq!%~sNt-A8;O+DgO?O&0=qH`9mGVO3EGs1UL#WZh{T2leyu=0}rjM8R#wHzN3vS|7 zY2ikCwl+ZiFApv8e7GPV&*9&};7#_tj`(<#uhu={IF|9kf7)r={LU#RyE;q)wZ`QX zf$3|eTv3clBA>RQ_fdKBuvEm6sw7Xhj0}s!=JdcTU)R7<(DZA^@&n$>vy>z05k^fI zmOgrz`&Ob$Tj*!Z zJ~2zqgxj4sppIS?i(>F7=zlCMP=Su!s?tHaYFSkMax8O++j}_Ty1c-k#tD9De z3q!1We1#QKmBGn<35`wZii7DTZe5@G8TOQugYDs}-mf%x1%u@dMUm%OU|SV9_P2P-=F5MZhGgm&9Az&hUesMvLBcd1a9HbV@N1%-2|CE?K5Q-kuMcn(SZX zqPyhBIeYN*)p^Fsv9ssVu+NZWy}A6*EXaZAes?9iN_0e1z)%R6V*ZH{ z`vdwm01tE9Io;o9u26cAM|6zET7S?iq~A3Xyv>F8<9ZUytics(WrkvTX-PP=#w3Zv zE9aL}b-aC5Y07iStcN!#_-lo4gB~3)-bo^~SotrmD`t~&7)-j?=CXrgMT67wp^zVT z6(w0x{mioRt(??|d#*|@?;o6>%N3ow3Og62-fQ|_9k)TP*c|hI5|k2+VnzyAwS_sN zJAJO>7&+g9-Y6TE9#>SJh4t zf{2{^p}y!%84w}L;1$8%eMPiXaV^cBTQ}Y=%AQxD#>|gF9?0wMFqn`r*r!K|?)IGf zNu+v#4SeX2^;Bg(>Y6_vxCWq9j?>tlDW_KHQ1VZ}7o8-%oAlIGWGbX1snp3>{|xUU zVtK(%_z$ZC!SN&U?o8OCl`Y}jNn%QY?RbbMD#;rLz-ywQ=*L4k`ypp&X$zc z02XGG5mFhE${|=?S$g>wqVHSl`~EV&=iie=AQh#XQ8v&1%49$$sC`}z3`+zD)49Ni;OYx6OrMnXZ7g1olP!`tL09qFv7IsI+#3BvlO@|fb8GXV0ljAnbE6yFQo z3V7i+)D5E9m%A4eZfWzD6fZ*Q)?_=s|2oGoDCG4Eu$5K%23uD|sC0M(iR(zJ=Ew`^ zF0U~wQ@5T{=(hk3VFlyO8xMkKk+ol#Dp@}PifO#Jk7|k2loVjPQ-})t?e%S;p&s1G zmqDgdjG-$ycUI-;{$($P zkMZE&So6^n-qf;qE0x-(SDy~ky92>p`rsHtznV&4U0D%j7{TQK;Ja%Xn1JCBW4 zb?%V@b5H3#uN#udaw&$x`V`k1hJ%FObPZ>sg)ZGropn7)SpBb{N0!sne|SmH@b8<` zRHSa6*f*h`3n;E$bJO?joTQ4MdRWB}7-Zyw&Q)slwzFj zajlIV+MO7jkIllF5+_mHsTki9$C#*D8wiK_xPQO)zKNx zNBf^|KiGDzl;H|&3fl`e2k!$n#Gd1K5kRfWF9e?{+86HO8X`9TUOfi4K}_oFrhMK-aE+d{M@BbjCLh@)!g%lz+1PQL7)#-677wUx z_}vFf(@HEP2>zg{aYavEMu3m?ZN=G86+PI@Uj|S6$u4LQZM=j;ZLQ0Ii%E`wO~ORu zTO9sx)wgUmUgu`nYv%hd~;+pU*>RNR1u%)5QK6`kj=H=CVzE#Vf_$ONM-`v(~8Q%e(8r$g*HT z@4)M>ekt{z-Iw>A!mtd1ng^;r_a@f|0W5o5ME~3%4za)oS>$aIeqc+V(#Wt>*A~#p z!u9S)$iX~^%5-UAc4pUY=UTOjAQR zPraSsN!K}XpulF7e=H6^?TM3SKm5jPj{f)B7>PIRU!s4ySicRk{NN4_ehMB9^^Cn9 z(!LV*X$9|UE*`vY4op>*5#wpng-tI<`|=M8NU^c|`M#Z@VvfvvXEAp=^1ob;CTZfl z-gN7;Mn1$uxBTtu5kq){gOB1F7dj{N)L?qf2)0iG=79!J%*NE zFuO>5xm-~C;bmqr_;Uzi_X1@HohaqY3J0C2Fw=LoE~Ov5YH&@u?z8tO0)TFb(T`b- zBO)O|{kv;-jWg)+ENfZPQe$qPhxYzJVl1+&i&Z26y2#9 zbC9clRHPLHIq6^#S0jQusJg#*L3LsTrdB>emKbl_Y55jpfm0mSZqG;a2BG%h0>fglC;W}V`?x|=VY@DaQwge#=L3A-r-!ycU^@bC>J)BHMGprN~Y|5DtbpKPMt)#%v}+ zM2$zGxsSd}L~*#hFrhutH<$(8|NQ)G2L8G-ZthSiqny)7qA?2V@aB74L&0|6ULpdU z#+uz{u@l8pNr^WCUR9TqD%CBQF|u00R#`|7As$GU>2iMR0nC|m&eDC|z$f#8M#M7o zbE>x2eoa;?G-8O05`!p@H%`P>kpE#d@`k8J0g6y|0I*>tymCGk$4XWOl~QtFTjR@L*HYOgx&X^eM3TW<%S7E1+`s&j+5O#+oC)FR}BQ`)yY2yXM zcaP+z{Mo)5wz+R{{EeAyM}S;kBYVvHPYQEn&>@3(RunBDIciR8*X~d(z++)*uPa#3 zjrQ@w@}21ElLukj7`&~l(8xsgs{^@uR7%cRzx95`{ zp1?d`vtvuI6D5Ndg6T;1}_(Sb58Op#P>WBbQYS~ zhezI=k#Jir1(u+N)utbgi@7Hgbh}r;9ks-3Jp-=HPQ9b(4=Y&xJ}wBQU9^2)vClXt z8w1!Ml}~L4{0I1diT_n?A5`q)2F3aHj7NcosJ>3#nK97`R;Pug`26vX1*(qCv#qlx zI^;}nuIz&Y=Ck_Xv!y>UpD*c=A&a}y(+64{A&R+xcs-LOo<)e~5YiFEAArA%1bHLG zM48~jy@L}Z{9raNRO6$NARnnPzh04U{UaS^!|mq8eeY%5h55sP??SP^@>bBu+>mg+ zW+(yXgoD+L@hMmk^9p8+$q?Qtgh88JiCR?oXuk?soXGi?5B4sY9|skC6#Em)4%lZ@ znjdXAqe8m#}Rpe{^ zfU}A_&rC=;@k>0cNDJ%L!8$fzkT^6X^7PE~g9BruB_hNE4H9z<;OZ*IY@i)!BujF21c&B<0VF$Va@2 z5g*uQBe=K217J|C(D}~@EANM|?1d|n4-{4Gvtoj0B6A7f)Q43s08_-ZwFB|Kw!wnW;!<3K9zbGg&$$eQ?yTW8)7_PdcoedQdef zLp?5S-mcyA_U@jSk*<-kOFd(k+MYDEJt?!(Q&e^*E2l?IPYBXXB1}lL>y_x#EBWM5 zUjQDgY`jbPa0hf~UHx#U`%~=C_P0iXhwX#GFxyYa{LLQTS79bB;tShzeZB7k{D{{T zM9BPJ8OVGfER3Is1jR^)0_w4duXi6m7!D922f#-X`$s#=h1>oVW;GjI9^=DvjsgGO z0S|AFsyceNY%;O7zlS*LqI6wuUrKGT8fY}Ei`w2Oo2w!yZMnX z#|OTh5qlHyzcnQAu&)m+q-Arm_?Y586#Kh9gYVDVd9KfAnEzch4V~Y<8woi)JAMDK zq&n6R^d-Sq z`Z$@8D2Z_RNdo3wC4%uiNa1}#@rZw@M5I^$Fe}-p9X|yDfzeX*mY`cLY43&b*o3xH6jhi)-oP&}_Bf!bLF^>fu!*ygr4$ zW&o~aQFP8AqKJ9%1nT^sk0xH66>@W4@&nb>`=es^uiojDAsmxS^m%!`Zxo9C{lSqp zRFWW`7kT(ANXQG_fLpTyfFIO$%Y+@Dmyyvs_EY8$DW;R8V#0bPgbs{Jod*r_@t-mu zz2JaL@10;?^69a2(ixNNQQ%?we55Nx^(gQqBU~>a9=}WD@BQQh(|%y`-!&NmMD-Vb z626Q6fMfvL#0WF?Q)N7lzjyM`t&k=Wbf|YI{5<(ehQk2UZs{4*SzPIe1ky6+R^Lk&|G&%IenU=5oA${qFr`?nDgu z?*e#ufehouo5l?Z)M0M);qIt4PQaHgkIC(U%aisfPzWgo_%)-dNBfAwUp>OBa6!yF zX<>xl&I;xH?~jcDs_)8$+}21rF6n=|cktDzaXT%q;p6j<;Ymkbh&SZ?A-soU9!yEN zIynYv@__xV5yG~*+o~Ud2ke2RjG<9SRd%OKM2cg7X!afycwjz6DlT?%T7tr!pdJb0 z*hg#qh5`>;dzpmGBVEcSxQLj4I>iG89^R0bDdBNW0+!$MzTVgS^#Ctup1jr9>uOI} zzEa41y5xsGg`zboIM}m!1m`%S> z57`h~sSv$B{El8caaxT zW5UkgQ%}9Gka(*v>6S{uxxu6YQ~Wyv&)=l}w4ep*>cNp7oSuAWLYj#A0~&h(b#Ws} z#-wWQiyF04#C*)$U!7&sQ0ARvQ(g~tyV=L(iM%^`q9cm^z2QP9PaoxaqqiqC$e)$= z&O!X1z~PzF(~2i6KbLo!Ljq} z8)%oVQBItNXH&pnbRF=G^#x37F+AT8xWa?}m1z7>hYLApaagyq7y(C`wEY`blM2^{ zS89jVPxWpb=0X#5@+kSRr*2Vr-WXqK#{%q86T&a)o;S|FaDG(z!syD$ekHR*^WInN zi=>E|%5fsvMTt8|;60_pt7Bq-d9ZWCgNb{7hX~&(u_$Bup0hB7epuA?*-=?W-WM0g z9#h(NL_YPmfw2JjUPKrzgQ3``Bf&@1()azG2-yFs-X3@q{@^}wY4i7y`UqWp^sK$k zvZ;RnpZelweC1HrS8^V(5PjAp9BYze(kokR*B*;dRWbhFrGQLMhWFP-X#2>Pk+%qyB33l%lZVxkdB%&>PM49(b zuCLcY;xOMLv0MFsD%CnOzAM4aV z-$>6fX(|q4Rqf}H?{Qg`|B+t-;GA34$UJhFZj;7Tb{Dl>ftO=XbFSMEkvGDvVrF2) z^5~j{A@$=t$irO4;iru8s8|u3_Y*qY?UaLHHx}nA?(pcaabMa3bK* z#BHg-yYtd6^np%nA@;j9_B*7M0``Yg;?MsQe05CRUg@YqBa?qs*%^%l$4i7KN=Kv( zi`_RR^f8nxL@zN0)@auy_9za5Iy?o-{MUY7%&7U%oQ*i}t(@jIfq-`TI<(jU@RTzbX_tP7wz}$Y;a~)4 zx9d6&|Nh6Qjmxg1yu;C6E~aL!VLY4E{9+jI)rjV-iJTm5R=%0|uK=A+hgbk&uUwPCNaiGyUqI`2OP0NQp`9mlxs>h;{_h*`V5FUIR1a8MGXgr>4sE&xQ z^bdnLzpH_VJOKtAdNwO(L-Wfq%s0zvS<6_@Mho5yZ+klutTlT?%j*&FE5Lj?xA5Aw z+8c({yJpPi-mG_t?Bb)G>N{L&F0YvZAboFD1NdI>^VHPT#9^`7Sp`i8uCNHH&Fk>I zIaV-$6rCc*oo`>eJ-A%mt7c;uZGC9dOt#8?merhI1rH~OZFy#49FgYge2@K;MS_R_o&voM_cQjfCvFX2m#Umxn3G6 z?bD~f{`)+?w!iv1ulxGmkl;BV%`%SD`8Cu)7)Xn_B% zJN@BUDmeC@v_G88yJA868da*JUO_0A2e8jg%C1Jp2NCiC!;Dkov(7t9FHV(S?8gKC z(OEr2_`@@gjTT@N`{Vto2Xj-1#|~`S_kuNlFQ#cxtijpsQY^9L_XJ)&E*zSZs>M&! z67U>~(uWl#>q&pn(kB=DnMg=;cLw$?-i$BWXFCgh)q~rQj#HkVskrFb`gM5o4f2Z%lBVkw%7@3>Uw+g6_JOLUu0z$1 z-4y<)FadbRkcO^C@S9;8qLRy%PoB43yRA5Wu66sD3Tb&8BfB-3@i>57yEIsPT_W~TOZ`*0U%TuOg7F%@W6^8kZ4;Q5E7 zyqwK>wSZG&M|?V;ecuY5(m&NszUz_&(sUT@>f=|aMy2S~U>;PMUlpvjv7ny$#o!GM;@U=h@TOY7G8zgT{RaVGpH-m;L*${9keX z9|s=0+|G`c)@Q7a+rxoyz*~8DitP3mP1mQYZhj`e#sl9ZXvTBKPpI2LTh~h+2>p9xf!<^^) zavP5px1OzPy|ASqc%mjhEiaOnX8k)%(S^EZF#d>1I$|$JCcG-E}y^Bh8_tnxzR%>oVT0 zB{#c=svNiUWFE#K1tIq&)wvPT)#(Az^#dZ`I3(AsU^cE~w*EN1M<@2HxX*_YdNQvb zLkRFwaZaQ_+rqmvM*2rj}2%8B*N*HNxI^m*k{bD z1llq4HO$W*NWR@KUcD<(*C+PtK4>fhR)J6 zDbk=-pmOw#{YZMI0XYqq2*88o>#)Rty#|wogDgbZT&9;k9~qF#WTeZegM4MvA5lw)_7}4 z^R+Q*@|Aa-WM}7f92(S7J+$@IeA$U5@`Iy$lKQxu~k6Hm=pQ_Z-|@odH{M6*gI= zlO!z2X6c_*W|vzM!^=IDl6jm%VjqQkRnV~l+htdfKUgHz;N{@6()2QW0S~88A;Y%K zXN)aQ(v@J?r_ZcX0}q4k#*}K^nDf@j5BhXx96awI5Bl@i``V{Z_y$R>KGF>j%@c*+14tPuSf==~knptyObPFmD_{Pgd5ExhDU0X$p> zM9a#Cv&wtZU=ELA568~igIe#-YrHjI{>|Xd+x;N;Z@oRQ<@nT($A*45I;7*sDEXOX zO(&Kp4vpwK+U@fp=5IYYzh&F}&RmDKqPeo|-Yu2Oz}xr4{(X^MOV!3EhKEAn-zeVN z%v`M^&-<9Mpr>_aEN;wO};Xq z^QYu@ctyMmpeiP!vW*>+!j$upn>NxKJxOwx5VhM^&55e_q&E!c)@E134{pC^eEgeb zw8j;Tw{ugU&Za>~4^#l^FC1ClIq;zaoVv#|^k%p{KI_ad4&<31$C1yC_YU!IbE zxj!4=zx>Jhqql(JnI}gJKsTZ%?WY`bi=Y@r58ZWxy|JePp4m|m& z2H_|Iih5~q*`R4f$E9Py7iiGKadffCwf zvh5pNDi-%7zoXbmR_?1LE$K{K*p}(nD2Zs{tnWp>ioHt4j%xQ=-Lb`6o)+Jb8rvMa zLFK=?r^8pq1~o!_HE(m*eE*Jx0j+^4vaM;&>q1paHmQBS(l5TjlK?ucn7|8^f45JK zlzXN(cx5y#h*3Ijc|SEsv4T)HhXmoh8hG^p+8ugxo zn;InO6$dr#So=q4^LiXyx*7evz33}9>6J;s%f__x5d2TgK4!zhm_KEoQ>^j1EgZJf zUaY~|@^p6JaqXh&a;<3B$!SSeADz5XB+UPHnyBn{rwZXD(8kE;?pG)V<`LN1bmUGpI%L#l^P=AllOh0r53 z*${E08!$M!j0l7ZQ9UppYnI8@;QN^fJoJT;dQyM=Y)5_GQtNDYql~2%xy~cmun_ZC zr}uYU|DOwZ>q(*XDSb&4qtWLPIhpeDrYiakCCq^T`b$Nv31+x&L4e#d-?39BEQbG z1s^GkQS!OoGI4kdZ=;%g2>9Fh-p!=2F5k5u{MK~_Y)}y68qyM)LpQ0(@7m%C4>oy6 zbU|B{1py!C`*+UsYx7Q!Z6!DPL@O7e^N=dvqg?C{x_nMpd_Jph(dK9d|^G~qXr+)1$ zKA}tP+4U91(D?NzLOL~=bI~#Typ!mdv!Hr3@6v3-X$LfA<>yvz#NX*!B>J&q6wPUu zB#sJOcalU(&Z07cwkTCs%o*L>^OrQwZ-U3V)U}%!6-dpgpt61f;3=C*)cl4^OJ&!VwcMK5 zc4sQw1z<5>e#^Q3`l6c4b8D+zI;#h(v4_F?!$XwEon)t0HXU_sJ2>vNr_Dno0a~nz~{dYTH8!WmM`n>h>Z0}eLvr?eNCh+oGc4YQ7rXUE%R#( zCCi;qU8i2w32xsps@XH6){FYYlk#TZ)`pSsZx*l~P3PP(gi5%dC{KTHO1|MLIt8-r zxYV!4aKCZMzHKMEX#_23Ul7olgmSx*xtbgEozWC7dGKDv@_$hm|JuO{(9Mg z`l2NUS+3@i<)) z4pdeTm7j2GzOX=cWqJMOB`+>4zk6_T&Gz9P)k8WD4*}XC$jA6c$v-)*;lv8rp{ezU zmdcB!W3C=MekOmXx4dkDGIwHAKW`ut2^W!mfx>Vn41t%{IMYV2X~ z-gm7sF`|*2*c7ux;kT+i+_xb%Q90WO173ZEfM2yNxFv`v3nRW;AMw^V4TRi!G7rG3 zz}wGCl&zvaUy*Tl8u{z#%xkvv+q#f&hH5$f+`b>mx;l;rQ*>~H7trc4;>8i{tIncZ z4x(FTw3`U@Y#`kllX+oW7R2^H!QO&%&|bU^VclJw{LnvP??g%QFcH+5i4dm5lv_4F zXS++mZs)?Cwt3}7nJ}w|yTH!zIiDx?p5+m_*C4_V6g^8ET?x#i*z1b2+{;t?fA;gh ze5}5dGNWpPNeO0NR)vXfg^%#D>QdjgrU{4if09jbP%9zVIPJoZcdpAwTIG*{JwuZ! z)nJN2qZXlw@K6+xPSvC`ai~}=Fdw1Cz<>|a;;hl(Zq*aSnsFmF*`8V~n8R@o6{jJ1u~Va)>HX38=dFG}U>*%SM2@?%4r zV398-s3A7E!9NNDdo}Rt0R;T2`F_p5NiTy550}NX&WM+J(B7w#VH~FP z1O?$xANs_JbA4FGU0ePgSK*zptUDS>y+%4GI`qZhho*~{2D83)%DxF5 z;H_z2+X>G0XJgEtn<%L?=Tst`J$S~WfP|A{s4yPK50XgdJQ}W7PCAs6pN!ony>Irtcw(uU47v~80Wb!ZphCSI#k~zIB##n@T_!xb0 zz>q>U@Gzhma`)=TUa%q5{OIRjnZ%zm?k*4jSHD{u8q1KX5W+TN+BcuD{}M+&_KA6x zCUrk3Sm8lhj{(_rEUk=OeHsZNWrILHjt6CYL_8aqr)YAcG$KF+k{CVqT|IQ|v6R&hvfOwnYcmr^Y`{h<&_hQ^!0%)jZ$!~B zeADYaDR1Ydys!;>xhUh#9L6I@))Vu1HR@{N7Z|)UNqRgx>n1+!E-cg;QtsPl-Ek4# z8AiW@#H-=|UMKaotMH=!=jd0>Klp!u|3W|d#VPzF)4A2|V(7tEfv^E`u$_7=Y|wo) zQPO%XabVNj* zY{syBj#DX2<1;3ec^Vg}fnSd=-fKX9rk8jMNjPVa^0heuJUn>&Z%q@g;n2xEScNv4 zJ|xkkz=}ha4tcK*8RC=*eF|(eNcE|E(H(eJ%BPwc$h3hCIg&03WbFWWFrg-!iZHTq zTu8t1)5}cM5y8G-xE6n@B`d%{9D>iDtH)htQaa02I?Oz0m}TzhDFTQhe+M>y-Ix4j zfX6=K_L}o;XXXR*uqFpPaP7w(WT(GqIyO^zu-oCocAetH{HDrf?RoCY7*SYaUU&AJd|1 zNHK3yw!R}pHc+A((xVz^(O`{?=(>#XXOys8vB59n65qxoH$*2lMyJT42(k!5Q#he1 zETuU(r7&`T2&<;#0p2}nhjD>%R+eoZSyxQb z$>xm6r%x_{)o;|yL`msY5aIh()W&$9q&t>y-OIS{rQA6ssj~_r?6-$as0tpn&2Mn2 zk9Gb7Jyd)58@;3(NCHUooHk3j^NIO0_+;p255Vs*LV<@QqB5fl2uWZKBHx&N2uBiX zl5%j=-DvA8Rt3V~BXj^B3|##tBsI>MDbipA^GTX4KEepl;lO=otqu=>Pt?txZope= zC|+ZewZwq6$hdHRp8|VJ$%y{>HUl#MuSNBLG2j9FuCC6uAM)FePEcps0r|=kjxbkm zIW`@_du-jV<=Aq0$!uV|qi}|NhY#xWe@cF5u5)v#pNz0v!3}QAjBF;YRV6O@NLbd> zI+K?)FeB<#Uy5*yLa4&2BBH{Jw zjF&UXZ@ysGxui4<`vvlw9f{B8a-L|$KhsWnI*j&sde$Q+_G8P07lz%^j==xR35%{Uv(zk$p*s^0O&H{Kap>NJ=b3xe5%4LH}=a?4HF)a)?;)19)rnh_42)g2+x*fNX zgo9Qok4)pMjFMkyCKup{*xd?JfT39>HVuKX)R;s?Qg(g<9^M5{1JZ0DmmYLA*^xK~ zWY;BYauQ8AIU1ZuZAPFr3#J%x+QM*yEXe;^WFVMpA@(#aU0@(|Gh;0?DRHsR9%NqB z&sva5t;T%GpZ3`KuHolNbx9(_eWne?8!_H`Ccx-+F`4ab%bpdl*2# z-*&=Pc5+$E5f>o8*t8kH)~g?9Nic z<1O*kZaGCJ++qzLX3)X`<=>oBWhdS1Qn1e+7VUXEoN}ecyd21)ot&>mz2|^xA`wjA z7G<1`VZYV&0M&<$s^ZhAq%~E*7})v&#Ze3PEwCsrHq20~YlG76!5%_AmvPB^EK|1W zBy2;AUyU_MfdNzvpd>vBMHC((eFY{=NGkxtOg z0_KBFVJ0tHsV`V&nzP(E4=!fB5r3?ebcUs5uyOYA0XbtGMStd~9;#fS08aMh;hqe) zoV^IeaCN!GFH@-C0DGPGeCE%`e^ubIccNQ!C|1 zrnVlMDEo3XOy;qW{uBALTefd%C|M;JPR7Vrmamj?y@7df?{I7b^0T5^Xg+H4Kcp;e z%YfbZ_%6?lot_(&{voo2l;+52<=PEu^1Ie=RBVlG*^mt7F;F4bwj@EeIbFU!Rq6Jb z{4Tek7Vq@h$%*O>_WA|PH_Mr|j)}5i;aI@mIwGoeIpS@y5&XO-3a&}olA{x}0pz-jj zf$6Xncgc6_O3J!LgHcL_L{@F>7c( zb4oFY(qhCc1Z^ zBU-1+4KWeHQo?j&AzXv8w7p zu&O6NF++Chi?@dsHdHR_%Kbc<2l7?LbDOvO$VxpF*+9O7yu!CR!&4p7qvSJuWP->R zx-Ull`{bo^R&Z;0=*M-Nz<~UAzo4cBLUT-la{We({LXb=O|b;|k|?ZNrqe07eNJT4 zCTg=cMKLqD>r=qrIVkK2kgbANXG8| z!h?>52b}V*E+T*LouH15ft*7lC6!~uK)9NA^`K&qSTZ)3t}V(OmQS0Q7pcun9U^5r zmIxr7&TU)fq>>C9X{wG8?gDAr!mO#~grR7J4_PjWi?@eLE<=RxQ}AY;>tP^GXuvq5 zop|I^s|mHAKVt+H@1L268h9~6%rPYI((HEf(BHZcA!C6(Q!}FsVI<-}Gn<}{XH?)A zMLHl>n;xr42jKad0)K5*x89Cc<{TZWw`FFGjxbg)D^Q2$VJKN;oWI;OccDq%$i8_) zEh_q$r1QT7cc+h^wPhn_W#QR zkNq*;ceJ%!7B^RUH16+$Y@$J>L;UmWmwxNB`q-t70e zQ@e7f0`Qp6hq0=3LGunjAir7c{I0-Pk@SVSDZG5T)_JMCH#bHSm2RJ#r9yd}$}OyABe~g+CSMW_Q+?IK==!x8 zy;A5w*R63(V*O&)>!pl3`}kTn!c#ZqvriFzFYIBe|Ii@m{$%EvY4qdnyuE#)nM@i~ zzhQ}JJ&%xlermjA?=T@20K;*Q759K${sHIwy|$t%oeXHP4$l9uQ$evscX$uL7a`m# zhXMvZ3uwnILn}+{SeiO0CqZ8d7N;wY(G^AMX2Ie-ZFD}zu82LpfHqVr_THZ6T;O4x zzuKh8bNn7})}zgfcCmBF-;7Iot(yd4{B`i;7O4;Qx|`=z=zdnI!lg=?>kTfz9HPU&wOkkd@$s_8pfq4+& z@zUjc8i>3Mv;3_18?@Mq^s`{IU`ZdThjGCei~PaX`GYOWw5o}yzASH+QqsNa z4w-h4W80iHsg`T^GJnI$;kcCkZi;k?GmO*KX9UkNrV z;}@yDJvKnePu~bWznSUZl(JGrjZv-HpvE2}U*+Z75|`YRkgV|WRRo1L1*P?>iU%2B%Q=0r}%^r!emGSk<(|QZkcmYhURD5)z~wPvmskP-bjdH-|HBsD3;Of zPLi*th%T6?{{s92IHxCzpaBzBKnn05GGd*ulb)F&dKwykb6zr3m7g3UI4}uPYf+UL zwSh#`9;ksIp9|qJ%!l(Q7t@AH();FQO)1NsRxWZa=Gx{`40*sm71Go-v(O0Np_DQ_ z7h-!1dt%?*@Nwu8o!Zuz6h}_mUTKi>MlTuc&PbXd<`PWo>0XB~yL30eyN#smHA^iu zN-EGGs)hF;u;<{?)f1CL2$^k=l7bL0;Nb|{a^fG?8Y48Bn{{~6ICi8Nm!-*1*XAYT z*lTrpTMhHq8)W+!s(;tZFj>2Wh%3*$`%NhZ=LyKQRJu>tt`QseZ)hDp_C zgdcPgG3+l-%s#n<1QGrYVe%E*46N_vMI@177=H$V_A+S4OEBnfy9@VuNn#h09*z)5 z#>^4~R4dWIK3=;!un*IM=FnMN^f+*l(FWWo6K)`mzD9=yz=s*+d0Gnr_{Bz|siygk zrX?;G+b7`#gDu3syp6dCF)P%u$y~T1?^huCZ~h2Y-CM8TfN=dk^q>BnfyX|wj+WZi zV{x5@sH<1o`(lT--JbQ8DETnAR~5~a6$Zj?Jh=CNMSeSdb7Nvu`-%;~c575}LoA_r z;}+FQub$Yqdxtdo6I<aEV*+Vfb;q|=q*F#fY&Evk9#de`gi<+J*7$7{)y$<-QT+zC+eMC*i%ml%6FtkV60Ml&p*W8KBS(20fV0Yf>(c z&ARL?zBq<=R)YvV8?I z**qHol#z3AXjI(Ggyv$YTTzluCWd{_BP7zM8fJ4w7jaw)ljanJOe+tbTH!sScqLxy zfzO5bS!hH<^M#;+j7H)WjpS3Ngcm+(bB0(+5EBULvxiOM{TX)SA;$)Sb}(7> zv44R7|M~<#-124Rmd0%!it>5w1@<6%2XQ_W#&#A>R_s{aP`SQI>e^JiT*mL-jsHdR z;a;HNY;6h->00Ui!DAEn`L@v5#u!42f0&y5E{{#EA#u%~$-uVCK18u7rEw#z<%`rd zyAU<@o%W$k9@IAuY4sNIwS5!b%wRoRzZj?)$m_5qF=VpzU(5tIE-@+PdV)*+^<17s@E+G z1)>p$2MVfP^D9SXL#7R+qZXM8ikLn6oDLV)P#z_sTFfgiXq3wbIf+(2!T2~_$zZr3P$sPPwORLG)#fz`d7M1 zB^G2h_b5d8A!RlEX;t9WIhq;J$68{Lu~!RifCc39G*BlG8x5(rbST=T>!97^z|!!H zY#k;`69Ri$m=+6LQ{13~CfI?&Rn6C;EwdJEGL!)GUl?buGnKfTl{%UgJDQaM@LG5w zVzCV|E!HxpY4^#2h5CkuhX1c`*dOuYj@mj5_=Zo7V*ZF<+530={XM+;9d~uTZ@64t zD~)=S8Cb(v*C6$7E)S4Z__S25Rg}+f&3BYluBs_n{UT>WeaaU-XY###etYuLW=^c! z%UA8&QSt*K8)8zLf})knH^AfYNK*u{bzTexd53+daz?CdJ+0Z3+Bzldy+@$C3zr*9S6K@J^s|@h^IXk}r@c<Iiv^Q-tH6u*f(vUwM>hGNxpJgbln&98uM5TdpM$Q ze?;o*dE95S7|#d9)LKT@I@0e?VBSZFYV2VEZXX`GKag?HMR?bacXJH=;z$v zUPlu4m=Vi#pmL6I5Fwo$PAM)Yz{EZ||Jb$(nZP_)F*J}g&R}V#Wg%3oeKj!8g$8m6 zL!IPLL?~PIDKLk}oP4M$AMQsm*I1!1SYsw#VU!Q62}|+Wi>(-rMmf_hs@$wfrr-;W zEOHT3F=DUip;r8g3yMoTNDvdjfp8uTSAqqH(=@Xs?{4{EZ?}PE-2t-XvE{Nv^PPd+AYM!Fp?~S z)Et>6k4S9|PmzZtGzCW1L?k^8PkOmL24Z{6z|~{cVHcu=MZS57Z`V_vt)u>6i*gQ5 z{;fqE7{vK#sBaPb+C2J&1LeVd#(8(jRb0~DLCiao1UH>T*Icr%Oc9+Q#Xo5d3NWN& z;3{=#M_k0aCriF`$*;EK!&cnaGYJ^&>f;_${%+@d;U^t9362j1VoGW&uG*TV9N zdAY`1fWOFyU+!AW&=aUphhA}6!}Ivl%EC<0i7{Bpn6fzM3M{E^tyK|wc-CX(Yi__$;GsuRZ zV}+4qg)!>n7vgjKn27Ku#bf(P?98NQ#(czTyMEtX{k~FN8<9aD_S#M5{{a6Bw}Zdg zhXQM}Z8uN0XKqw$RCiM5wPpDoD@)lb1ASM$3JD-mmjghK0*gh_di##Tu`k z`8J*FHZ?>N-mXe%*hrHtPHveP&^{5}jYBu&?1EeEwlt0pcr#)1%P-RI%uWApD(S(% z=qDo*pN&mgKht8>Y924)jQ@@_Uxo%ItF*N>? z8>d0F%vB`$MnBr=>7pZ3vW^X4RU@e<5Xu>Z*4rS3ev;_xxlk3CaB#BZfJ^>9TS=uB zY`k~7dVv4SA)@V$`Rc|Jm_8J=mk{ANMZ7%dsRxUyPxy zK86|Ok{l}o2IuZHqrk1IXM}PNpZFL_evTvjfFztWPrhS@PU%lr5Y@UJ`I@QN?1K;c z1xUISPus51-2g9bQ1&hxF#r#3uu_b9pobr=$z&kR6g&%VM!B`n%;7Os%~&A!{e_;!8)=}!;+mpae<;x+yEAH*j1os8w6QL82&ge#STO(0y~ z#PS02J7}vK88OOrXn7nI#;F2=nv)2!m^k?wFQ}ryGVN48fem44^2tH%a}!bhd5^Rf z`yiO8tJmjY(C!-jW(EDp0J%U$zX-zf+1wY?*w3xw>V6b^QY*c^9!0w6#=Ab0e$z#C za}4(yLO_e&(T+>qb{DE;>_o>0vQF5r&pGCtbjUtpo&g@dC;X?7^mCK5kJ^K#4O&AA z$4VXc-f>d!{QD+ItMr)w|4xMY<@lV^5!o2+y^e4%$gvXUPLC>x{$Cm^f zOM>;KYTzRb#HHrx*KA@=S;sv!{|WFAp`6o90N^pZjU*qiPW{#}zETHu^5EOmD-L^f zLA#1_3}Ng=sA6OC3D{G>QOmU`0KCwe7qG1^G5Q+4j~Elu%+O&`jTtbdkJrdZ!?B2< zimxk%>YYuxTy@%?hfc;kQ=Yd`0Wj}ro&z)ad3~g?@osGJ_O(#ov6D-x1gzY=}oTT>OJ}H-S`<9 zZ}73Np;4qe`x(GLocP-0v$`X+YIre~ad#y1Hj;YFgnE05@Rqaix;6C%LQrFWTa$F% zIr}i4b_(6N$~ZSdc-}Sls z(muD+guZjCG}lt7cJc*%#ieegnG^Gpw7FPeIYC#*buA6+o4dstbDfuwyiiG$NRkZ_GxDu+ux>GOV~3iq6|0(tWxU+{G?~b?ZJsJ zKNY}TH;%hvl?cla5Z;56Kca(1^=gBn_c9HF$RMpu52|85XAo@HfC@R($zxUx5xyQd zOfw1VW|?myPTu-;+^S=sMU62JM<&8ptDhF5FTj`wC-0-f2HInFvlkm?&%ul5nU>DQ z7tgm5EjAWRG~|x8+5su_gZkxLSXSy(rbxHP48QlQdt zYu#$*ORLXP?X{-yZ-%G6n9Y0U#(HWU2kNeG1{1%ZhBlV^?AyWZ8&PjNWZiNSUGJL# zG5_rWtc&(SC^Z4*&l+Sr35vhBAmt=9pU`KVheUeUoZ}<-M@Dg~hH$VHdeq57j;aB7 z?}XglZiVFzd3{hLr?pGXr%p1GV^mmiz=AAz;5* zhYe0Xz)ZLbUkJsyu6W4;^9rz;CVAtnXrnDEf%y@A3eC(*5z_*2?1)7PV#3w1$b#K? zt3j#%7kbhB1N<)lk3FPps(Zc1uW8@7)(ZP(iCcqsO)X<{L%=Fv9<=B|ofh*0=;VEeL5@7uB>mRu&l3930&k5PBzuvOjbC9bck+d;p-1dUdyilYyo8 zR`OunK0E%EAOAq|p09kepU6McgmKJKw9ScCVJFvWh9q0v82!jxu&hb96wRPh69euY4m(=9k{QAPQ>~ zsdNnw*gCsJZCrc5?N1Ybkff z#lA9$eQg>C5x&}LOyggg#6EY(_+d8d`aIS-^CWa)|H&Z8$Ly9q`35YW4Q5=0MBT0N zSC^2FPL&*S$vNVjchEt)XSBG&hF=I0F$fc^+>pP`Eni|MEp{)>wa@38p^0=D`A{bZ zz-Q~SDlOB#v`fA*ETU~(H|KylW=*!?FRUYFed3>6MP3~oU;krl|8h|5ce*h>nTPRR z{n%}mv0@|%()%&mv7Y023}sFN?&V~BAKYzHpY1eKbH)^Q9S zCI!!gCbr2&OrdU;?}ig7^YkA!=yE|h7nRx3llmI+*W)wh>+!qy-tqY}P4j{IsV2Fm zW+hPi4(YTeHaRwyEX1N1u`EY@yD8tG56_?v!+lQHzxgWs(LerIT69qN+OT~OnBvCm z5AE$BU-!144C-O!m#_Z%>2JBfe}Mn@pAt;%nr}$kE|323c)-Ue1AE$!cY*#5UyiCP zcX&l}Z6!`?iJUEq^?Vx}%#d6m=G^0QuYlYQ=w86FI%Ri4?hkLKGfxKYNXU7(-=iWa z`$3&~+?g4Y#OwzzO`{%}Mcki3KkrDtY)kvfB;_0Pv|D|tw+GQ+f9~!G#@*4ZTVv^8 z*-|gL@vGgqhexvyno$nwk|9$KTxE5)QP1`#oiJe>be2>(NOrsASB?>x~RZTk#RO7<0 z*+c>Gn0?zn`s%QFShs^9|FCJdjtz$WJ^iFzI)u|mLWv%sTrV9hw|1Bt9z~I+Uf6LYV1N?9Kl+fp> zlr6Q#{o8L3=?OfHJHH>$aCn^RQooPa26SE;P`_h>;?Tek=LViR7Lk7N%<&_!oc-0U z+b76Hc5<3?QBI{uTKyu%_v)N5kb;n;o#L>*dE!L5H7qr7M?EZbVO!aCqtd>e!TZ`Y z?Jo3&$;V*{vr-#+UP4l^<;G$h36|xn zP_epnHS>A+3^nlBK!Bvh8l-0R=w=Ja^O2f#40!CAj?g^~iIF-&Y#kAfo2@hbb6*Cg ze;+oae1Rb>$cx?_$F0wYwgWWhIG`p@6v8+N&1c;dgXC>9^!$%BR zIyTveerjy;uHX7q_(Pu8OPcOSEjkF@Awa7UNWsqo-XLPx_^FVltEB~;{I8$>mh1Wl z_}}s=eSS{!i@WcRE$DpEAH!aLd1TX((SUkSYdbaUMdeigef7JKa`=b7j5~1e;pycc z&kq9IbA&B9P}v|D_quF)*zV`st9as_JC)K2FNKT3_B?OMnEN(jZk^Bky4B0-maKZc z+W#x}z?*|Y?hFXK>zI6d9_5A;;cN5oYxt;JhVi%b5^m}wUbo|Z*+2aNj&MYuc-}t! zj%Vt5=hQQU!Y>SoxH>B0+PJMZCIw%e6MklL$V1nl+IhZhE4({adv~t(?pm|y!FS+}!Ny^VBi8#xYclIyUH>7Wia%XoqbiSnH_JZ^uQ}jYa41V6R7qzp?!6ubhO)<&@p*UJo=SM67f=Hz;X zTw7|L2QoXe%`4r_^5)rOPtxa@Ta*LvW{^v3R*YDbBj!0c2<9zI5fib78AY!T2QeT> z@=ksJGyhjczo#Pvhe?dOMgXXLLrSB_*W$Qub=*wtNsW0-|{K-eoo8%{cYzb z)@~o8I6a{2YX1-4^zR8gjN7jcFWjG#zgv=V;8f)PA8w!YQl1^7IydUxu~jjL%&FZ3+Mcr?ci8r{*6ayQ)TwXc7B!{J?c&UQ-@`iDGt~Cf zd-2naYnuXBz6%e0wl%Ij(z7dS<%du9G1>#{mB-qaFV;R;6d+%Y65h+2mv2_O`vc)^ zuKo`kLt30aJNd3@Tkekt!+^(*wWC6Bj*nK13vVB{_154xwTEx8iF;-hch)rNq+ZfC zB=$=@`Q}eEg}y;jAt_M3@%|+w-r&=rQ+L9i6GPrs%3p{ZkU!WY-KtN~r+k|#9ZRWRzkGB8kLRJlJH7wR|KamqT67;& z9T3L1-TO{<=qUWp$_I~XxFT@)phXR*ux|G@zwFmff6Mj$1N?9Klz!nkDwXohp|tv< z@lC~J8wZi+FZwkefJ{v zJpup!bpP`A`^P5iy}NbyQ~$m7Pj`Csq`j+ZY<=pCkJ;{EZ7jFfF^iPcSs!`54Y02d z`Ql^Z7qXC5&%)yB!vZnLdmf*y^TrYZ8<%f*G(Vty3F#JT`tbGW@~#=rjEz-`T`IwvIh-lXT7uLic#coQKu;6Sx%EK|G>KJf;tg ztJAOz1=vlfFr=t~hXFYJDjgDEKb4A*^AS+aMQI1yjxZr@7OUZdELy5QouLhonJTdPl-ugApJ>R{^bW-eO3^5SCGqs}G;coQjN2Kw_7 zo4%z+=3>MIw%^Nj`(%UGjb0zFh8YJjrWy80{qO5o_L8P+*tH+zs9{+Sq$xp*9{NuJ z^U!Ak9g~?54#33z-<d#~F+3s8pvW^k&g826Ixq%0kyX8s-1 ztxM>N0goMJH23Ebi#nMzdtxt(S)htt2Ef-x1wG#y`*zF97hY@MN3QG%{F4RidunXf zE%Sale=~&in5$QMc=rSzIPY=~d^R=cg=;8G=^uk!*O+iM^X+3J+Qx=Ajt;*!DB|FN z&}zfj?+~;?Mx9p!gWEVLgC#5BE8j7J!Gm+FV=)10fO(C}JE_ z4Ll5zHM@bwu$Lf=WTW);2mzxVJHq08&vx{yby#jDtd;mejQK@2(hXV9A;Mpja;yKy zJ*Z2EwK}sRQ<$_HX9Dm#eId;*2gce~93vaD``rKb5u52l!w7SpH`Z%AZ_q-Z|~X$?5skWnY~L!KUlj5$*!5NBh@EMn9(6K4&<+ zB|E&MIyA5yWMT(-!9?Y@QL0@dI(CnEzh?y83*hEufA# zvnFZD2W~g^&x2P2?O-1gR-;?-st4>Lynns|ZJW{4AO-lzV&B)x z0)Tnds*SyX$9%iW)$hBhTYqo}Y8)N%ZdCYp!=tZ{in}%}?tZ_Rm*$b6&vD-@{yGwK z0#CfB@e|-5gOnAT{15IOwTlRG8=i7SBlRm>>hVueJ;-tt>t$qWr|&^B_9JwP1|1qp zP)%6SWCFuJR~uSQpi(@TaW&Xmaf}Umj6n0uRIMxw_;`IjtlMEu-bX)crGeN5pFP7o zcb=7GwFzi!6-+ZJTDb1?#>%&A^WWe=>jGP!2lsBmK^NyOp$i2AG0E1kVrZJCy*R$Wtn%-6HYCe4)R91i2FZcsq^bhcVz=sIG0&;TM2k(MQ@!i+>_KXYA4h!|F z6N6;=w(|V3U3-UvGykw}L`&}E#!S1eZMI;lGFxSdZEN26W{G_R&!K@nxq)V1N1Jpj zWcvLO_on1oa_Y=B)^ru$ts~2|Gt2G05VbC$TYIL{UE}`EW?Pg4dH_Eb?6)e=m`sH|IBnPwB6wZHikbd)lj* zMeh=4D9N)GBRIkJR#_3;bpq8GjiUhq0_;j4fJ5B%m{TEFOrB_7W_H$Gpx{^cgG zmp&U_tXunH^_o|nYhHVHgn2`+n!- z`@qrn2S>ke?7hy6^7~RCZlR#ZlEx8AS z=N56_BJlt`*b^lAynfOJLjuqaQGFQ>4e8Z(6G=OTkn%K0B%LI&R{8-{LbIE87^G>^ z%McKyM41OgT8bf4qREKUOwU6&VOlh*1|KWP-(tW6;Gz9*3H5fPwGR5WqDYuL)Yi6r2zag?hnfZPc0^GLo7=WQxT$*X4sd8 z=%-AX#`zb2(m(j&rsJnE;Qw<9R{!>j{{jBrenh|Z3GY9AeAe{7RrNvf_Q@lW*E@zo z1H-OKIJvcGqOxif7Po_w$H-Szje5;>R^(4mW8YCY@omyH72EA&)^yC;(r3MlTB0P) z{79ewbE^wn(HXWv5wPl6NK8#oSeL(NXAe{PuEy-a^!2Z2c|ULpP|ft~obBKB$v(~v zRNKReTiR_yUX2NPH2Nny?b!C)cZ1OA9q@+Z%|5Z;*~B&ci2ZA;ST*n%_79Py4d7gxRE|$C)1@3m(x7z=9|wzb)GR!sL<5p)yO|g1Fo1Imcyy<@=Jn@I5ZY{Vqrs(+4!Wra=u z0#L9UG^=`b-fOriPfxg`Va9~?8%VQ5^rO=m`+n=+`2X{HA3k)vdec)+{{Qp${f?La z1N`s!(08b}km8!#llgZ6OI0B&K1Qx;2;Tx*aqs*#zF4^)nEx2K zuBSD4dMg)te_ZC*xn%Rpnf`UIL2AyiLD!ssN46pFCx(NyjSu<3Htgl7?)+H{_*?xW zdwTU(7SR{_#XYq_U45-p46Mv!sAI>cND36geuKo98zqV~h=m$Z{Ra6qG_~az(P7el z0L43lYn-tQ&825nAsKl{28KGgdX@$=N|QxESm9cXa5HFnlZj!UuE~$o&Qt^c|Ju6_ zxTub;e_~f#eXER%N$@a;%biIL7n?T^&Vz$LH%#&xgeaY|F_8F;rbA zPVxL-aFQecWf9>?D26_R+vMh?Hpfis-u*GDeuoTfy!ZSHOs)$5=#kAA*UZ1Zr#H7m zXMTmrqFRSv8eHeMdjHrFJfo8{ql+^GINudCqugR~wf#JT^Cd>VaW^jmws)AWh9zQ+ zu|DKGO_mp}UtOvBlJgzft4il+0o%#cx?scoANA_t`05uke8WurhA9RF;feS9DTddk z7+1Y8n?I-i3gHRz=PR0@f6xA@lKFMa1{i)H?Bwa}zZgzw6vuSTF$Z%vfI02N;4m3* z)PH%{GtfSif@|r3@I;EHcyO4$e_$R#5?(mfrSXHGgRsDGN{Amd$e9}CP7O7a4m4u~ zKp;IxIFytQP+Dw!ZHM$CHV)?eh}ewEw4P%V0y($>{73A0tBzgLPKBcD7TqFgA% z5`@Rqb<9ATda#&sEbP5YsDf`?u!M3TMbU?*$jZ*SJM;rD!Yv}g5BuP>G&ej;X0;|w zB{<))^W&DdsnvedYutWl^qqN+|)J;r~U1zM!ak%^A#U$x--S1>EkWe!S7Yo2AaXU?z>zle2! z2rr-kX)b?S5w@nt?%PuK^alTF?IGWFhyTF0>(&-DqtFThX3yeXy%Tw^+w2PCg-?E8 zT)BF2-jbE&D^^r4)hPXKb@5WoXDin|UAgYbQq97}8pXe9lrGaKSib7YJk9)RTIDnK zE9V(j%{Qo;t6wuqr*5`R!(5%ldD@Nhw4Th=%A2Nl_uqPTJ@a|#r=~?yO!Gf5dHBA` z{r64pPB6PZ4(xL`9g^8}nr?Mg()uFR`Z~qxfw*;^xNU(r1g^5rrr`VShoxOlQe8-@ z6PfMey(hW@&tX*$4zLHP_*B1@?)3)-XI=Up!jHA{@)Y+08=GLv(+G35k`MHz1d)Uf z5f5Th0tmtr?>6GT%jKL`(ZdL~6NLX+HijVlZ}K~)$wVkK1ICSy9jlaz6J8Z3ywtcj zOfd;l2*(MJ>*_)ND^gZmo!LA$p3N*RSDz#ojKD4*H&8;+EQn_&jOzFfl4)b~S zdW~WYt*#9k&o{2&P4EeK-Rgp$HdN18TRcu4WS+}8P_AwJbgpg0-fiJ^dNQ2*Lgg{pynHG(sGu}6#U1S`;j@Mx(|(S zerQoT-n{93OWu^HZjn#5C60f5AZeW?Z=WY_Pjdb~1;Wn1viEitbKEZn)^#qRoKKPb6DOe@E#+h;m~s;qN5D z(UA)@kO~FYS93=6O670}N(nLQRw{*Ss6=j*j#(hTb+%&c#|jCbEARPCX{VHY91tE7 zT`5&gH4u{rqdM4xOO{XxrH_pQs#BEw#1uGmB}a|*ae^Lr(dZ8mUO3~>+SFJO;MVN1 z0PJLe`QRAS?mM&DabAt-f(p}L%Z-04H~P8UVBRCml}~?NQU2@d;$K!3FV`&5TwA_= zP0hMhg7|iE?X+p4_ zd@r43eEkFS+6le1ub*I%t6)vAoqW%wTc4M4D5T)C{V|#&Y`l>>?L;OQJY=Yj`)E!{ znA28qFOH;FB;9Kp#Ul-Khm}02>%1j!w|sB9Pk;ot!~_zA=SV{A4S$mGknzX-w@7)f zqPxPZPI$TF@huq9OQgbp@I+c875j^F@MluqpU5Wz+aXO+Op#RB-oy5t6tJjc24V_v z4D}F-Y87x)r*R>msD(8+-R|= z!+LSI?JLG}&1TDr)~x1kTtV!&!QNYip#k{G)M;y0uUS>Hbk&oEE3eL3b!nPr-c+q; z-|CmmGOC(wP&Z4rWu7*7fp+@>osOPV0=}+a>vsO2m-m%%+hjA6>SU&MlIf!lOz-`l zRpUg9zbD!~dvVMw5FXBcB#wW4B4K-mX@8Y!cRH>Sf0&@qrq8Bwd4kp$bG-%$6jOlklU3sB zO35y6y+b-B}Z8-6l8s~3@}6H)$yQR%n(`Cl0xS{IR~ z8Fuy)y}!p9-%vM$bZer;ok>==Cs|#8-~5`o8KmoD%r2`LgDvf0irGnVyW`?Ery2HV zWF5}Ru`;Dt85G;oV)((&yD-z8Oh<5W&A`oRT*&b9;1Y9+;=WrPV(<9u$0N*p?ZLcA z+6T$O0nfch#}Kp+!hGDB{uW~HY%zb}xjux%77r#&<+bEF1kd&4!Zs>}!1Qh;69H#S ztdogdtR6W>F&_5Yza0}p%i}`Hk8g=-?(61=i-egZQ>30m2V9^rI%J&vd*5n zNc-_mdUfA!bc?=an^a)2&N3jl1s3D4@UgqM$_;%p~VGQ}-I*82d4 zCw~SWV+$hKBw>CDn6HnRpEbqLRNPln%zcY=0NBQp&T!7uP(5kk$ z8Bzf=dQ5A8?ei6qrzpk}g#S!w*F@PEX?gFSo%U29Je(dyQH!UKjSyD~fo(bPft6Hp z`g&#{m)jw*VJ(kN0MAy4S5=XiBCt;T?FbRRUx)-(p}DTUi0xgrc6IR@&8HfgPgkxf zUa_`(`P%B`nvKgfntxwYqp_j(*OmEmw2G&#srpvC_-pN0$MlT#fkm?n?c(npGEHb% zpw$jWb-$SC?5}D2L8on|q3-_b>tESH5ti;PQ!I7Us);px*+*vACz@8Nn~|K)SGT!F zvnJJYkhvpim%*@w)167SXV4r8wi98hE@7^RY3wvA-GaRBom+5RWyeHimP zhQx|QrEYmmbUcJ6)#rnrTZRF0<2IHCPCDx{?ML_AYUrd{3 zYL(B>I=R|!%Z|cJlh$4Ox4z-7(mgA-8E-EtoNQ4v$;@b1+1>Bl8YY=EO*UzqWL)qs z)7ulwYQ|YzQnS8~*?>Y0_S<+9d~#Web(UrioIfqaK99LTAWGmlks#VMq-@M-AH#W% zm~%AdoJ94Glk$z0^^K7A31j+j=-wgXo*c~05p!{n_VuR(lE+9u#$PPJP9m5%<{93d z#R3iG1Fa-EYovp;Wg>ou@bU@~no{`DG0Rk<7s+k=MImLLLfnsIBIhV<`$|3fBef)X zW#D-#oDv5{HTX(iIR%5=IHs$lY5;C#qYh8+Uhhrzy>j)@3v>nax2@oDu}AMwHboBZ z9aS{~>bSpd5aIhnNEqM4b7tA`oRSrryLy7pfy;W+GR^W0hOiY^v`n{X{`#lW*OdOa z=FzP6_h%c`{-l3xiHmK_-5`(5XHz%Ter9xkfv4Gyr(ibM{;9Fi?$V4o!KT}u61(f0 zc9lJyYzG_f#p8`1jW_;VdGjfz!BM)w331CT%=QdsdsY&h-dJautSkoWq?pYq%=#2& z`zL0ZEM=C6*`?q%v(9@YUG_2D_A^}npgHdsXCJ`W+cAeQ%sNQMEe3PniQz7;WI&7U zn6IydZ=85ABo5UN!cK>Z;k1ts4>qLv6Ksdm-Q6i6<`N-VwBRL@uD>YxukJbfl~B=X zGGpc{#sb?R{Vcy@zFg8&`CwJ$U`zpYa(f_2kBb4SOQ^>)#ziy6z?OTGI869*Y^s9$ zj|-v%xr`_OS=vj>cnRMv5cgZM_dYU+@O^+I58kuBp=NcLVF`9M#ID<88l32ElZ)Ast9Qse#2jcNP!`)MetuH^ z1l!4XHr3BXI?zJg&mJOMNOSb$Lktx{%@`bThBJ~0*}#l4kcroj3tu7^t|b!>$G^@~ z2?w4pkWc(kHTE0zxT(rb?{$H)q zul1gOqhI`$LD^Kj%ynTvY18DwEy+cB)19-|##<*oZuxjiH2V~MuA5esteblKJp+H6 zlLos=b<(Orm+#D$w8)jVzazuCFJ+%EXC-LY1MN+!>g%*&K5^8e*hGJ&11YH^-! z`T+Fs;6R|-a)|D7 zK+Ne6%n26oe_#$t()Qt)J%o|pO7n`5_KuPDj*|6?WO{|sJvibX0hkLLbFi0y)B~ThVdO8_R~TlaA11#%M94A%e}%a$yT(!@iRV z`a&}F%W<(^C?~s3}eA;4&IM3*+(%)(7h7@C$sTWVw}^( zoKoq|DUwcmF=sHIi($IQWA5bR`W_5++P!@-;Ji-^76@zjD6s%nc^@ANZYs~A1l!03 z+0r;ffGQV>P)KkZoHosGoqWJ-y5Bq|ocbEMN-Ab8Gj6fW)*qF7Lru?8Ncpc^%oMdq zh73ns0fJ2LkWk+yp&l)v9w#*>m^sex{Z9ioneV-I>%pLr9nuTxj+`uV^k{r>q{NW6 zJ!Fj`!Vejg!_-hi);ZACf!3F3f7{=6J(2TjBUlHIePecXveD^@23cct&X3W(I3AMD zmG|_|kJZjl)XtLKbY98yqKf5ZI2K09^0I>E6&b5bvKAL)EiXu$XHiYl872oXizArb zNlEreX{X~%_6dg535w$>%pn7FJd3e2G1guw`{S5Xnv_e5l=Dt8=QPYU9d~yl5*XEZ z!3mJjOt%!wBcA5xC*vK0d2WS6Bg6utuz*m^A57u{!~)zTye%N?EY)*^M9@ZQj*cwH zP$pzEGt`6@xKTbxQ!!*CEkZ*vVwpFi+)c% zlFo=#91}|$lSEU6iQQj%Y|x~ygDvb278R8W&X(rwV+@ly?8D(&RVS~v*Ao6Wi15N6 zgFYnaYH59H<6IgNMb>#(-D!5D&iYt=bqgN(6#my68yicDi|_8qJZBYq`ZxC@Us)ZS zv?XJl;c;c11C)(t#ErA5W@jm;SyZ!3x<#gxMHa&ll#IEi^rU1l*Bw;1L@KQ3*&z~aU(C)E zvvHuZ-7qg7(8*)I{+M?l<{bbLX&K%uSx}JaZ%B| z-Di$$jyk*~VBfdSJ15(uyl0-OV!B(_G>u_)P{KT&V*VFqaSVfb-YikfY&T|?irK-V z`yQI(9x10?4E7$H(>@A&znJquG4?jP!w$?Th2|N{^oV4-Mbh0O;iPBGD;|RrY5gF@ zVcvey?tWrkA>siZvi^?p{tl9U&f)=XlwcQXFk2$XULweX>ZdF3xm?O;p>)7vxrpE7 z!k5Z~En$W(R1Ti46gpcvVjeSgu6*2=YQf_bLg;b%C>nOTyl%#E>gk7Y#O*Cd3hS~YkY&e*680HZy?jAsK@sV`) zl5+N9I(sl(T&0}dXwD8|EK@pb3+8G=!7XRaBz=t;-i9)s1~NYS(*F9?KqHAD1F4Xe z3O=h9qJB~3%ux%Pt`sywE$sVoLEpb0{KH3qKYqzsJSS@7`uMH!nINZN0!R-Lz$2g; zMEDUfNP-a&ehc8~pt7>ExVSj)LEg0!mop-d9kSn*x;{4H=g^4ny@Ee>^_$?}AY)-6 zV`e93XD{zyui#*>?7&iYv{Pf-sykY$Ia;Z(Ochy13f5~OsW`1yciAxBMf(FUt$%xH zf9$0*#Yguu-;JO9>Ha5R-LxQ`g-Le$`=f(1E}XkvU0n^mgA9VX+5g#I5aC61=s^i2 zqLTH91>QceUVwL?D7;{$4RnQ9eSJNwAmCR6UghQGP=pVm0#RSop1MUD;bD>u5q_9} zeb;77d^nX!sqfkfx*j3$Dgub`ui_yZrG_&(u)))uD|~Y?(ZB;qF=PlJ!VejgL)8$R zOai+*rJ-AgszKBaLV!d75uSuXR5IP|9d$=ebW~M~iazWM{yq3VojH?@~z0) zi%VN>+=kSaSAgF;Uwpg1i^B;PBK&ZoJIJ{WGZ~$YQL0&iP)pJYQbr04?U2fWR zxHjv_%dK*^%m&-z^%h6#e6t%t2)^R5izNabaEpq;0k(46PI!l)7oU2@WX-XKWVeOtLvGoFQo3y&VO?Ka9)#?+k7G)ck|qLyTz}E z+mNqs>()6?3mKT+;pc#_IGo~$P}@~0d+SeRfIzi}j}jR|I2gx{ips7A{CAKqzFptN z;l4LS_~Ax)pzRY|aV8#O)w^g&*Jy_#%{NUs2yDy5h z@B^_gH!S^T+_AgK=L!x(&HdLRQm^>$xa5<5Gj^Ea6ln9EHMJ194uW3b$`>xT<<{L2 zU;NB@Sl$VVX`HSe!#^DZau?JTN&xcy>p;3xQ`wxxosHc~R}&x&Ek6yG#` z@^qxg{6;wu;ok_0fIb9eZ;^vXanB-9KwS>3n*;Y+iO6|j7Y5{|`x@c9%Nh!ytM*PV zOzC`tZ|e|I~3F}FGL zQd4om%SGv%D)xRx5*~DN+|JgPVjj{TTT2qmps?;9WV?SK#f!V}u~hvm5`m;Khg)!`HBPT5>@&~2q41$BiM%GqBm=RhN5K=X#;e1 zH7ym{`G??n9z<&9Hozng8E$7AkpJL~7?}2f|9nLe5q`9afe0_0kri39`F`PO;?}`( z9TH^vtqf1^84vamgeNQCF1fhpD!zABSbYyNd_}Sv$_xhri15RKYCmm?ve|q;qCbCr zrSK#W7!qXqtxQxP_T09 zl_X#CfmG96-bXdwulNWLPxU0>iHCgNBJYJLKja7?!Vfv5{WmD$X7l~uz#waogoj}pGvRq z;?RgYs#`&XAJxMvjGJrb*26U3Z_jnDRbX{jTK^bo!i1k!+3Q!++R+Rq_rQFj5k8e( z-^G4AMHLX?(f`0uBJjBCPHc{2(gka3P`p>#xUu@;$h?5)QDu7xRU+>S}Ij`up05u)0Nr=N(6s ze^&$!-Hau4_&1Al`fUr=@Fd~EI0x!y7jjMis*ApiN9=`7J6Pv~hA-&s74XS(%dFKq zSbpL03BKa6D*Pba7z8OG9N@^?;R|a8{;=RMR}sGhd|(?dTqdiDW(E;nG{Fv1QXn!n+(CVEp`15}GRqX>c2^V}}IpCF5m43gO zw|Mw|Gf|UN_`PiXALqKeVbaDUSm7}~p0_wdNqNxfN0s%RV5HlA-aqt%5TG0Q& zx4ezKOCEyH0&gJ^Uhc0Go-eFbLuNKfc!+rME?o=YT10pOfQ-86MWDX58n)$Nv#k$A z2*MLFGawQ!#LU=~o`1cxy`$^-mOtwtHYV$2J#Vp(riSDzUcz^`wn0n_zOYuHtAluz z&==_Kc;i?ON$*462qOHDLy8)FD+0&v>>yNn4XrhAs|17x&s;FVPrTpROwtT3&kQgS$R&v9B(N>ATm$TH)(| zo`6=v)a|=BiwOVj7@`&iia_`CE-=Lh+gS2~@}{orCtQf1_u8vlkTEkLI5gNhcUHf3 z-SL`uBlQDB_>nqtqd@Mq&gZaDhjlxIyM6t3_+n1wmNj!#klA1Xmw0 z4ImwU_=i0O?;d|*vZf`sP=r72C zMG$0OFXr6ZSAQz&^pzx{+Q0=EaWxU)N8FH&T7h@{9n`N5|HaLBL$oYNMYRujb$et0 zY;d`S$s7#zAeI&w|LwdI07gD=?aktIV35~$@kJM-^DiR&=p5IPcvpWHo(BIp*t+Xi zc+la4N)OVbs@uGTCj($ZcwBfKfOcR?KYlkQ?OHfVcxb=xV!yqQ=n9DNBYOCd@chbr zZbvI<>~iwcL0t#vfadSi{oSy<2j)ZZuiHuBmIw1cWWW^+^o^6PEO#&x4tqs0o4bf$%(6@de(aD{~_V;mR>q~ zXFCxXXHd7zOL!vi7GK~EzT%)7A90lt;YZw%A%O>n01%!~(Zj3`%LKTXH}FP9@xzNZ z55S6mjKfh^@$}Z;=|t-4#G`ROesDhbVp?-uuL@vr-HTXlM0gP!5G0O35Fi3?+`Muq z@wCJ7Qz5)@IL@AlOF6+#Kj8<7+tPIIY+_s{YtIR{_)HeTe}M=%T%91o4;QkiT|puM z9x_A_`$2VjDkEaYNkXTpkgA#0?n| zm>&U9%fkjcEY}BOrPtNLZELRMw%~Sn@H%}uf{*YiC!Aq2-*(Dj`zgn6cnUbnYHw?S zng>pJUCi#^3b3bD(S1XN7u~Tzk_`|6AUp)s0K)%yE3w~8fV8n^SV^ZGh?=hxzVz{} zPA=QGls(vL&Ci3a>zZ$S|Bw#n`*M3E3a za;JsH5!;2W{>)j!Qjy1=dhg%kc^`hxy|Z|OQit{7Ce^(SDN^Tv6A$geu~)vGaABD8 z`NJIlQ+)h?N~gM}6uP7fJaqr^LGdAb%YmtDWRLf=U7OnfDZ`BUAd_I7g2qBCWr@a1 zP0|~}+DpE89N^g3t0*KZSl7|ua<)T@DYtiP^!Z!N56`Eobgb%Wn#?U2R}isyUQ4Tk zbE)Ue#k23;)mOgF?JczMdpC#v7exmq1s0Ze2H@D>1~=d?>Xtqr^FliVXM=!%46w!1 zbXe+Zi-3R?km)4Pq{86jPylSCaPwtf5q5HT0b?L0?*m!gBNA`43k!v(Pu))|NPzh(Mj z>BOLDP$YQ3ZQToxq80|HgbkoJqnKfcyrMyqAh6qVu({pEor6b=(dEZMrM6efEN%u& z5y{DqImF~U`ve>~cqAAVtgqd>XZPUO3MG(XO@a)Yk~di1xOkEA%KG)|zopr0KbGR8UO$Q literal 50850 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℘=9@zs?Tx4_wX4SeD31Y`lx^}tQGtOl=_B1h$}oaed(*v^g|`U z(6)mJKeTwF*7`!=(v#yrc<_+#cLfgn@Vr5CIIYdqEw4QD!CjxX*jJas^xYd_t?>0f zPe7|->h_;EiwOVEF+?p46oKv+U0{k2wz1>|6-`}PPq`33?~PZtAY*1gaA>f1?yPy| zy5kM;M(PKM@FR8PMuFUIoiAXa4(oOZcl+k;@Wsq{vjXwSTLWOj3WBi4hj&6L2(CV0 z8bCVy@D=kDx1S5OzU$`rLiCRPdDo5qz0VQh{~m7Wsv$rC;@d);Odx#J`!!l7olh8^td~ z_)$E#BjDCt-yP(2K1}Le|huW5G@N*aos~+-5wbL z8(eN-G6zFFh@}O_f4i^vfsqefd#mIE807U`eA&h5{EG-bI>&V+-qqEjGvGf5TX+2m z4?28M=|Os2eTSFuWB_akj|-0j&<;%LC+{VvUJoM)5AF9|?6>z3T>%k(L=PVlo?n^I z?Pvv!U3NhlsOtb7(EOc#uoss1zH>>bSR2C~b+YSP6z@mV!IJzN2 zgdg4GJF4yuZ06s3KW|m$!=68U4*v7tUDFe0r;F24MO+RF{1Q$f6v5LDB5?2(-`d5f z`4AC))C}b)zY*}d1(hDG&-=YkSki+&4`y)E`w@MEFrP zoTK$-!1kU{;KOX(?>)j}Iq369W!@Wve*p@7-oP7t#eUl#(G?KkNA&Rh4+(#-Ecf`` zokU=qLESbl;fcUoe1SLkii2u=#8pOwA8|v51Rfj$KzKq$53@Qf6X0Urz#Ek%k1pLh z1S&tT{)6) z#_r_lVBRPWix_1uG%&mRyU#-C+9%f};jKusdUTY1Fg5#dMNkRgHj z5dgJ3Y_P*}eIQnPT^-!EW)8Onx5IPumeS-z0q5liQtK zd`l0ebXfC)3tb1dm+&{Q9O}1y5wCyb--L-+lObchBPuN*%Vxn^gBUq)46112znVW3PNW;leQG^M^V9 zr}+5)%vqJR$zl<(S*Tp~W5Ne!rw3lo)=fVC*HUz`&8)Ky8-VQ(4zCsGINTPj`JlGu zs-mp@GxMhWwe&J2Qa1rdwq2{1Xi1DP+J8(17TIQSS{Dh?+0 zRylES$O4%Q`5A>66csFh?HSf~(^s5|3MD{hs~w96LrcR0VADuk=GqGNmWB(0K<22y zLN8>_gh7;BqhqiCss(6n7uE2t60!&O!3>n-{WKAC4FJ=5C zqu3xIv6CYKxJg3A(uqOQAOaW%?A;Qp`UNBo0(;y24-PsnQf6W6W>ET*An5#6kV#pB zam~h!g)H6uF76x(ENndt6J)dV^W_U_Lj*yF9pqrRX?R2C&5IWdudZLe-v1!l5omw_ l(|ZSo6}&9$vzTxGm*?!7c=yvGqYMTh@O1TaS?83{1OTZ0&v*a; diff --git a/tests/baselines/subplots_2x1.png b/tests/baselines/subplots_2x1.png index 08f31828a49b9dd2116507470594d95876ab251d..6cf720c38148ebddb90b00db5c6921c7a8d40960 100644 GIT binary patch literal 14552 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 F{|7x1sQUl_ literal 13852 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 diff --git a/tests/test_inset.py b/tests/test_inset.py new file mode 100644 index 0000000..d0435fd --- /dev/null +++ b/tests/test_inset.py @@ -0,0 +1,249 @@ +""" +Tests for InsetAxes — floating overlay inset panels. + +Covers: + - Creation via fig.add_inset() + - layout_json inset_specs content + - All four corners + - Multi-inset stacking (same corner) + - State transitions (minimize / maximize / restore) + - Python-side property inset_state + - _on_event dispatch for on_inset_state_change + - pcolormesh and 1D insets + - Invalid corner raises ValueError + - Figure resize keeps inset fracs correct + - plot._id registered in _plots_map +""" +import json +import numpy as np +import pytest +import anyplotlib as apl +from anyplotlib.figure_plots import InsetAxes + + +# ── helpers ────────────────────────────────────────────────────────────────── + +def _make_fig(): + fig, ax = apl.subplots(1, 1, figsize=(640, 480)) + ax.imshow(np.zeros((64, 64))) + return fig + + +def _inset_spec(fig, plot_id): + layout = json.loads(fig.layout_json) + return next(s for s in layout["inset_specs"] if s["id"] == plot_id) + + +# ── creation ───────────────────────────────────────────────────────────────── + +def test_add_inset_returns_inset_axes(): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3, corner="top-right", title="T") + assert isinstance(inset, InsetAxes) + + +def test_inset_imshow_returns_plot2d(): + from anyplotlib import Plot2D + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + plot = inset.imshow(np.zeros((32, 32))) + assert isinstance(plot, Plot2D) + + +def test_inset_plot_returns_plot1d(): + from anyplotlib import Plot1D + fig = _make_fig() + inset = fig.add_inset(0.3, 0.2, corner="bottom-left") + plot = inset.plot(np.zeros(64)) + assert isinstance(plot, Plot1D) + + +def test_inset_pcolormesh_returns_plotmesh(): + from anyplotlib import PlotMesh + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3, corner="bottom-right") + plot = inset.pcolormesh(np.zeros((8, 8)), + np.linspace(0, 1, 9), np.linspace(0, 1, 9)) + assert isinstance(plot, PlotMesh) + + +# ── layout JSON ────────────────────────────────────────────────────────────── + +def test_inset_spec_in_layout_json(): + fig = _make_fig() + inset = fig.add_inset(0.25, 0.25, corner="top-left", title="Phase") + plot = inset.imshow(np.zeros((32, 32))) + + layout = json.loads(fig.layout_json) + assert "inset_specs" in layout + assert len(layout["inset_specs"]) == 1 + spec = layout["inset_specs"][0] + assert spec["id"] == plot._id + assert spec["kind"] == "2d" + assert spec["corner"] == "top-left" + assert spec["title"] == "Phase" + assert spec["w_frac"] == pytest.approx(0.25) + assert spec["h_frac"] == pytest.approx(0.25) + assert spec["inset_state"] == "normal" + + +def test_multiple_insets_in_layout(): + fig = _make_fig() + for corner in ("top-right", "top-left", "bottom-right", "bottom-left"): + inset = fig.add_inset(0.2, 0.2, corner=corner, title=corner) + inset.imshow(np.zeros((16, 16))) + + layout = json.loads(fig.layout_json) + assert len(layout["inset_specs"]) == 4 + corners = {s["corner"] for s in layout["inset_specs"]} + assert corners == {"top-right", "top-left", "bottom-right", "bottom-left"} + + +def test_inset_panel_width_height_computed_from_fracs(): + fig = _make_fig() # 640×480 + inset = fig.add_inset(0.25, 0.30, corner="top-right") + inset.imshow(np.zeros((32, 32))) + + spec = _inset_spec(fig, inset._plot._id) + assert spec["panel_width"] == max(64, round(640 * 0.25)) + assert spec["panel_height"] == max(64, round(480 * 0.30)) + + +def test_inset_registered_in_plots_map(): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + plot = inset.imshow(np.zeros((32, 32))) + assert plot._id in fig._plots_map + assert plot._id in fig._insets_map + + +# ── stacking (same corner) ─────────────────────────────────────────────────── + +def test_two_insets_same_corner(): + fig = _make_fig() + i1 = fig.add_inset(0.25, 0.25, corner="top-right", title="A") + i1.imshow(np.zeros((32, 32))) + i2 = fig.add_inset(0.25, 0.25, corner="top-right", title="B") + i2.imshow(np.zeros((32, 32))) + + layout = json.loads(fig.layout_json) + tr = [s for s in layout["inset_specs"] if s["corner"] == "top-right"] + assert len(tr) == 2 + + +# ── state transitions ──────────────────────────────────────────────────────── + +@pytest.mark.parametrize("method,expected", [ + ("minimize", "minimized"), + ("maximize", "maximized"), + ("restore", "normal"), +]) +def test_state_transition(method, expected): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + plot = inset.imshow(np.zeros((32, 32))) + + getattr(inset, method)() + assert inset.inset_state == expected + assert _inset_spec(fig, plot._id)["inset_state"] == expected + + +def test_state_idempotent(): + """Calling minimize() twice doesn't trigger an extra _push_layout.""" + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + inset.imshow(np.zeros((32, 32))) + + inset.minimize() + layout_before = fig.layout_json + inset.minimize() # already minimized — should be a no-op + assert fig.layout_json == layout_before + + +def test_restore_from_minimized(): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + inset.imshow(np.zeros((32, 32))) + inset.minimize() + inset.restore() + assert inset.inset_state == "normal" + + +def test_maximize_then_restore(): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + inset.imshow(np.zeros((32, 32))) + inset.maximize() + assert inset.inset_state == "maximized" + inset.restore() + assert inset.inset_state == "normal" + + +# ── on_inset_state_change event (JS→Python path) ───────────────────────────── + +def test_on_event_inset_state_change(): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + plot = inset.imshow(np.zeros((32, 32))) + + # Simulate a JS button click delivering on_inset_state_change + fig.event_json = json.dumps({ + "source": "js", + "panel_id": plot._id, + "event_type": "on_inset_state_change", + "new_state": "minimized", + }) + + assert inset.inset_state == "minimized" + assert _inset_spec(fig, plot._id)["inset_state"] == "minimized" + + +def test_on_event_inset_state_restore_via_event(): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + plot = inset.imshow(np.zeros((32, 32))) + inset.minimize() + + fig.event_json = json.dumps({ + "source": "js", + "panel_id": plot._id, + "event_type": "on_inset_state_change", + "new_state": "normal", + }) + assert inset.inset_state == "normal" + + +# ── figure resize updates inset dimensions ─────────────────────────────────── + +def test_resize_updates_inset_panel_size(): + fig = _make_fig() + inset = fig.add_inset(0.3, 0.3) + plot = inset.imshow(np.zeros((32, 32))) + + fig.fig_width = 800 + fig.fig_height = 600 + + spec = _inset_spec(fig, plot._id) + assert spec["panel_width"] == max(64, round(800 * 0.3)) + assert spec["panel_height"] == max(64, round(600 * 0.3)) + + +# ── corner validation ───────────────────────────────────────────────────────── + +def test_invalid_corner_raises(): + fig = _make_fig() + with pytest.raises(ValueError, match="corner"): + fig.add_inset(0.3, 0.3, corner="centre").imshow(np.zeros((4, 4))) + + +# ── repr ───────────────────────────────────────────────────────────────────── + +def test_repr(): + fig = _make_fig() + inset = fig.add_inset(0.28, 0.28, corner="top-right", title="T") + inset.imshow(np.zeros((32, 32))) + r = repr(inset) + assert "InsetAxes" in r + assert "top-right" in r + assert "normal" in r + diff --git a/tests/test_inset_visual.py b/tests/test_inset_visual.py new file mode 100644 index 0000000..599480a --- /dev/null +++ b/tests/test_inset_visual.py @@ -0,0 +1,138 @@ +""" +tests/test_inset_visual.py +========================== + +Pixel-level visual regression tests for InsetAxes. + +Each test: + 1. Builds a deterministic Figure with one or more insets. + 2. Renders it in headless Chromium via ``take_screenshot``. + 3. Compares against a golden PNG in ``tests/baselines/``. + +Generate / refresh baselines:: + + uv run pytest tests/test_inset_visual.py --update-baselines -v + +Normal CI run (fails on regression):: + + uv run pytest tests/test_inset_visual.py -v +""" +from __future__ import annotations + +import pathlib + +import numpy as np +import pytest + +import anyplotlib as apl + +BASELINES = pathlib.Path(__file__).parent / "baselines" + + +def _check(name: str, arr: np.ndarray, update: bool) -> None: + from tests._png_utils import decode_png, encode_png, compare_arrays + + path = BASELINES / f"{name}.png" + + if update: + BASELINES.mkdir(exist_ok=True) + path.write_bytes(encode_png(arr)) + pytest.skip(f"Baseline updated: {path.name}") + + if not path.exists(): + pytest.skip( + f"No baseline for {name!r} — run with --update-baselines to create it" + ) + + expected = decode_png(path.read_bytes()) + ok, msg = compare_arrays(arr, expected) + assert ok, f"Visual regression [{name}]: {msg}" + + +def _main_fig(): + """640×480 figure with a grayscale 64×64 imshow — the inset host.""" + rng = np.random.default_rng(0) + fig, ax = apl.subplots(1, 1, figsize=(640, 480)) + ax.imshow(rng.uniform(0.0, 1.0, (64, 64)).astype(np.float32)) + return fig + + +class TestInsetVisual: + """Visual regression tests for the floating inset panel system.""" + + # ── single inset, normal state ───────────────────────────────────────── + + def test_inset_normal_2d(self, take_screenshot, update_baselines): + """2-D inset in top-right corner, normal state.""" + rng = np.random.default_rng(1) + fig = _main_fig() + inset = fig.add_inset(0.30, 0.30, corner="top-right", title="Zoom") + inset.imshow(rng.uniform(0.0, 1.0, (32, 32)).astype(np.float32), + cmap="viridis") + arr = take_screenshot(fig) + _check("inset_normal_2d", arr, update_baselines) + + def test_inset_minimized(self, take_screenshot, update_baselines): + """Inset collapsed to title bar only after minimize().""" + rng = np.random.default_rng(2) + fig = _main_fig() + inset = fig.add_inset(0.30, 0.30, corner="top-right", title="Phase") + inset.imshow(rng.uniform(0.0, 1.0, (32, 32)).astype(np.float32)) + inset.minimize() + arr = take_screenshot(fig) + _check("inset_minimized", arr, update_baselines) + + def test_inset_maximized(self, take_screenshot, update_baselines): + """Inset expanded to ~72 % of figure after maximize().""" + rng = np.random.default_rng(3) + fig = _main_fig() + inset = fig.add_inset(0.30, 0.30, corner="top-right", title="Detail") + inset.imshow(rng.uniform(0.0, 1.0, (32, 32)).astype(np.float32), + cmap="inferno") + inset.maximize() + arr = take_screenshot(fig) + _check("inset_maximized", arr, update_baselines) + + # ── two insets stacked in the same corner ────────────────────────────── + + def test_inset_stacked(self, take_screenshot, update_baselines): + """Two insets sharing top-right corner stack with constant gap.""" + rng = np.random.default_rng(4) + fig = _main_fig() + i1 = fig.add_inset(0.28, 0.25, corner="top-right", title="A") + i1.imshow(rng.uniform(0.0, 1.0, (32, 32)).astype(np.float32)) + i2 = fig.add_inset(0.28, 0.25, corner="top-right", title="B") + i2.imshow(rng.uniform(0.0, 1.0, (32, 32)).astype(np.float32), + cmap="hot") + arr = take_screenshot(fig) + _check("inset_stacked", arr, update_baselines) + + # ── 1-D line inset ───────────────────────────────────────────────────── + + def test_inset_1d(self, take_screenshot, update_baselines): + """1-D line plot inset in bottom-right corner.""" + rng = np.random.default_rng(5) + fig = _main_fig() + inset = fig.add_inset(0.32, 0.22, corner="bottom-right", + title="Profile") + t = np.linspace(0.0, 2 * np.pi, 128) + inset.plot(np.sin(t) + rng.normal(0, 0.05, 128), + color="#4fc3f7", linewidth=1.5) + arr = take_screenshot(fig) + _check("inset_1d", arr, update_baselines) + + # ── stacked with one minimized (restack test) ────────────────────────── + + def test_inset_stacked_one_minimized(self, take_screenshot, update_baselines): + """Two insets in same corner; first minimized — second shifts up.""" + rng = np.random.default_rng(6) + fig = _main_fig() + i1 = fig.add_inset(0.28, 0.25, corner="bottom-left", title="Min") + i1.imshow(rng.uniform(0.0, 1.0, (32, 32)).astype(np.float32)) + i2 = fig.add_inset(0.28, 0.25, corner="bottom-left", title="Normal") + i2.imshow(rng.uniform(0.0, 1.0, (32, 32)).astype(np.float32), + cmap="viridis") + i1.minimize() + arr = take_screenshot(fig) + _check("inset_stacked_one_minimized", arr, update_baselines) + diff --git a/tests/test_interaction.py b/tests/test_interaction.py index 17e637c..33fcb1c 100644 --- a/tests/test_interaction.py +++ b/tests/test_interaction.py @@ -867,15 +867,15 @@ def test_point_drag_under_scale(self, interact_page): def _to_page_scaled_2d(ccx: float, ccy: float, scale: float) -> tuple[int, int]: """Canvas coords for a 2D overlayCanvas → page coords under CSS scale. - For 2D panels the overlayCanvas is offset (PAD_L, PAD_T) inside the panel - wrap, which is itself offset GRID_PAD from the page origin:: + For plain imshow panels (no physical axes) the overlayCanvas starts at + (0, 0) inside the panel wrap, so the only offset is GRID_PAD:: - page_x = (GRID_PAD + PAD_L + ccx) * scale - page_y = (GRID_PAD + PAD_T + ccy) * scale + page_x = (GRID_PAD + ccx) * scale + page_y = (GRID_PAD + ccy) * scale """ return ( - int(round((GRID_PAD + PAD_L + ccx) * scale)), - int(round((GRID_PAD + PAD_T + ccy) * scale)), + int(round((GRID_PAD + ccx) * scale)), + int(round((GRID_PAD + ccy) * scale)), ) @@ -967,11 +967,12 @@ def test_2d_crosshair_drag_under_scale(self, interact_page): page = interact_page(fig) s = _inject_scale(page, self._SCALE) - # At zoom=1, center=(0.5,0.5), image 128×128 in panel 400×240: - # imgW=330, imgH=186, fit=min(330/128,186/128)=1.453 - # fr = {x:72, y:0, w:186, h:186} - # canvas pos of (64,64): ccx = 72+(64/128)*186 = 165, ccy = 93 - ccx, ccy = 165.0, 93.0 + # At zoom=1, center=(0.5,0.5), image 128×128 in panel 400×240, + # no physical axes so imgW=400, imgH=240: + # fit = min(400/128, 240/128) = 1.875 + # fr = {x:80, y:0, w:240, h:240} + # canvas pos of (64,64): ccx = 80+(64/128)*240 = 200, ccy = 120 + ccx, ccy = 200.0, 120.0 px_s, py_s = _to_page_scaled_2d(ccx, ccy, s) # Drag 40 canvas pixels to the right and down. From 6e558f89f2c6745a6118f270b0e99e6ca53e53ab Mon Sep 17 00:00:00 2001 From: Carter Francis Date: Sun, 12 Apr 2026 11:22:52 -0500 Subject: [PATCH 2/5] Add changelog management with towncrier and document filing process --- CHANGELOG.rst | 19 +++++++++ pyproject.toml | 44 +++++++++++++++++++ upcoming_changes/README.rst | 84 +++++++++++++++++++++++++++++++++++++ 3 files changed, 147 insertions(+) create mode 100644 CHANGELOG.rst create mode 100644 upcoming_changes/README.rst diff --git a/CHANGELOG.rst b/CHANGELOG.rst new file mode 100644 index 0000000..6cdc35c --- /dev/null +++ b/CHANGELOG.rst @@ -0,0 +1,19 @@ +========= +Changelog +========= + +All notable changes to **anyplotlib** are documented here. + +Fragment files in ``upcoming_changes/`` are assembled into this file by +`towncrier `_ when a release is prepared +(see ``upcoming_changes/README.rst`` for contributor instructions). + +.. towncrier release notes start + +v0.1.0 (2026-04-12) +==================== + +Initial release. Includes ``Figure``, ``Axes``, ``GridSpec``, ``subplots``, +``Plot1D``, ``Plot2D``, ``PlotMesh``, ``Plot3D``, ``PlotBar``, a full marker +system, interactive overlay widgets, and a two-tier callback registry. + diff --git a/pyproject.toml b/pyproject.toml index 4cde065..4e9952d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,6 +39,50 @@ dev = [ "playwright>=1.58.0", "pytest>=9.0.2", "scipy>=1.15.3", + "towncrier>=24.0.0", ] +# --------------------------------------------------------------------------- +# Changelog management (towncrier) +# --------------------------------------------------------------------------- +[tool.towncrier] +package = "anyplotlib" +package_dir = "anyplotlib" +directory = "upcoming_changes" +filename = "CHANGELOG.rst" +start_string = ".. towncrier release notes start\n" +issue_format = "`#{issue} `_" +title_format = "{version} ({project_date})" +underlines = ["=", "-", "~"] + +[[tool.towncrier.type]] +directory = "new_feature" +name = "New Features" +showcontent = true + +[[tool.towncrier.type]] +directory = "bugfix" +name = "Bug Fixes" +showcontent = true + +[[tool.towncrier.type]] +directory = "deprecation" +name = "Deprecations" +showcontent = true + +[[tool.towncrier.type]] +directory = "removal" +name = "Removals" +showcontent = true + +[[tool.towncrier.type]] +directory = "doc" +name = "Documentation" +showcontent = true + +[[tool.towncrier.type]] +directory = "maintenance" +name = "Maintenance" +showcontent = true + diff --git a/upcoming_changes/README.rst b/upcoming_changes/README.rst new file mode 100644 index 0000000..118a12d --- /dev/null +++ b/upcoming_changes/README.rst @@ -0,0 +1,84 @@ +Filing Change Log Entries +========================= + +anyplotlib uses `towncrier `_ to manage its +changelog. When you open a pull request that should appear in the next release +notes, add a short news **fragment file** to this directory as part of that PR. + +Naming convention +----------------- + +Each fragment is a plain ``.rst`` file named:: + + {PR_number}.{type}.rst + +where ``{PR_number}`` is the GitHub pull-request number and ``{type}`` is one +of: + +================= ============================================================== +Type Use when … +================= ============================================================== +``new_feature`` A user-visible capability has been added. +``bugfix`` A bug has been fixed. +``deprecation`` Something is deprecated and will be removed in a future release. +``removal`` A previously deprecated API has been removed. +``doc`` Documentation improved without any code change. +``maintenance`` Internal / infrastructure change invisible to end users. +================= ============================================================== + +Content guidelines +------------------ + +* **One sentence per file**, written in the **past tense**, from a user's + perspective. +* Cross-reference the relevant class or function with a Sphinx role where + it adds value. +* Do **not** include the PR number in the sentence body — towncrier appends + the link automatically. + +Examples +-------- + +``123.new_feature.rst``:: + + Added :meth:`~anyplotlib.Axes.scatter` for rendering collections of circles + with per-point radii and colours. + +``124.bugfix.rst``:: + + Fixed :meth:`~anyplotlib.Figure.savefig` raising ``ValueError`` when the + ``dpi`` keyword was not supplied explicitly. + +``125.deprecation.rst``:: + + Deprecated the ``color`` keyword on :class:`~anyplotlib.Plot2D`; use + ``facecolor`` instead. ``color`` will be removed in a future release. + +``126.removal.rst``:: + + Removed ``Figure.tight_layout()``, which was deprecated since v0.1.0. + +``127.doc.rst``:: + + Expanded the getting-started guide with a pcolormesh walkthrough and + performance tips. + +``128.maintenance.rst``:: + + Migrated the CI pipeline to ``uv`` for faster, reproducible dependency + installation. + +Previewing the changelog locally +--------------------------------- + +See what the next release notes would look like **without** modifying any +files or consuming any fragments:: + + uvx towncrier build --draft --version 0.x.0 + +To actually build the changelog (done automatically by the +**Prepare Release** workflow — do not run this by hand unless you know what +you are doing):: + + uvx towncrier build --yes --version 0.x.0 + From 2dce4065c9139fbc4494766ff91ec0003c5b8992 Mon Sep 17 00:00:00 2001 From: Carter Francis Date: Sun, 12 Apr 2026 11:23:16 -0500 Subject: [PATCH 3/5] chore: add workflow for preparing releases with version bumping and changelog generation --- .github/workflows/prepare_release.yml | 218 ++++++++++++++++++++++++++ 1 file changed, 218 insertions(+) create mode 100644 .github/workflows/prepare_release.yml diff --git a/.github/workflows/prepare_release.yml b/.github/workflows/prepare_release.yml new file mode 100644 index 0000000..cbcabe0 --- /dev/null +++ b/.github/workflows/prepare_release.yml @@ -0,0 +1,218 @@ +name: Prepare Release + +# Run manually from the Actions tab. +# Creates a branch + PR that bumps the version, builds the changelog, +# and updates the docs switcher — ready to review before tagging. +on: + workflow_dispatch: + inputs: + bump: + description: "Version component to bump" + required: true + type: choice + options: + - minor + - bugfix + - major + - pre-release # increments the bN counter on the current base version + beta: + description: "Mark as beta pre-release (adds bN suffix; always true for pre-release)" + required: false + type: boolean + default: false + +permissions: + contents: write # push branch + pull-requests: write # open PR + +jobs: + prepare: + name: Prepare release PR + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Set up uv + uses: astral-sh/setup-uv@v5 + with: + python-version: "3.13" + enable-cache: true + + - name: Install dev dependencies + run: uv sync + + # ── Compute the new version ────────────────────────────────────────── + - name: Compute new version + id: version + env: + BUMP: ${{ inputs.bump }} + IS_BETA: ${{ inputs.beta }} + run: | + CURRENT=$(grep '^version = ' pyproject.toml | sed 's/version = "\(.*\)"/\1/') + export CURRENT_VERSION="$CURRENT" + + NEW_VERSION=$(python3 - <<'PYEOF' + import re, os + + current = os.environ["CURRENT_VERSION"] + bump = os.environ["BUMP"] + is_beta = os.environ["IS_BETA"].lower() == "true" + + m = re.match(r"^(\d+)\.(\d+)\.(\d+)(?:b(\d+))?", current) + major = int(m.group(1)) + minor = int(m.group(2)) + patch = int(m.group(3)) + beta_n = int(m.group(4)) if m.group(4) else None + + if bump == "major": + major, minor, patch = major + 1, 0, 0 + elif bump == "minor": + minor, patch = minor + 1, 0 + elif bump == "bugfix": + patch += 1 + elif bump == "pre-release": + # Keep the same base; just walk the beta counter forward. + is_beta = True + beta_n = (beta_n or 0) + 1 + + if is_beta: + if bump != "pre-release": + beta_n = 1 # fresh beta series for the new base + print(f"{major}.{minor}.{patch}b{beta_n}", end="") + else: + print(f"{major}.{minor}.{patch}", end="") + PYEOF + ) + + echo "new_version=$NEW_VERSION" >> "$GITHUB_OUTPUT" + echo "tag=v$NEW_VERSION" >> "$GITHUB_OUTPUT" + echo "branch=release/v$NEW_VERSION" >> "$GITHUB_OUTPUT" + echo "is_beta=${{ inputs.beta }}" >> "$GITHUB_OUTPUT" + echo "Bumping (${{ inputs.bump }}): $CURRENT → $NEW_VERSION" + + # ── Bump version strings ───────────────────────────────────────────── + - name: Bump version in pyproject.toml + run: | + sed -i 's/^version = ".*"/version = "${{ steps.version.outputs.new_version }}"/' pyproject.toml + + - name: Bump version in docs/conf.py + run: | + sed -i 's/^release = ".*"/release = "${{ steps.version.outputs.new_version }}"/' docs/conf.py + + # ── Build changelog ────────────────────────────────────────────────── + - name: Build changelog with towncrier + run: | + FRAGMENT_COUNT=$(find upcoming_changes -maxdepth 1 -name "*.rst" \ + ! -name "README.rst" | wc -l) + if [ "$FRAGMENT_COUNT" -eq 0 ]; then + echo "⚠ No news fragments found — skipping towncrier (CHANGELOG.rst unchanged)." + else + uvx towncrier build --yes --version "${{ steps.version.outputs.new_version }}" + fi + + # ── Update docs switcher.json ──────────────────────────────────────── + - name: Update docs/switcher.json + env: + VERSION_TAG: ${{ steps.version.outputs.tag }} + IS_BETA: ${{ inputs.beta }} + shell: python + run: | + import json, re, pathlib, os + + version = os.environ["VERSION_TAG"] + is_beta = os.environ["IS_BETA"].lower() == "true" + + path = pathlib.Path("docs/_root/switcher.json") + text = path.read_text() + # The file may contain a trailing comma; strip it before parsing. + text_clean = re.sub(r",(\s*[\]\}])", r"\1", text) + entries = json.loads(text_clean) + + # Remove any existing entry for this version (makes the step idempotent). + entries = [e for e in entries if e.get("version") != version] + + label = f"{version} (beta)" if is_beta else f"{version} (stable)" + url = f"https://cssfrancis.github.io/anyplotlib/{version}/" + # Insert right after the "dev" entry so newest stable floats to top. + entries.insert(1, {"name": label, "version": version, "url": url}) + + path.write_text(json.dumps(entries, indent=2) + "\n") + + # ── Update root redirect for stable releases ───────────────────────── + - name: Update root redirect (stable releases only) + if: ${{ inputs.beta == false && inputs.bump != 'pre-release' }} + env: + VERSION_TAG: ${{ steps.version.outputs.tag }} + shell: python + run: | + import re, pathlib, os + + version = os.environ["VERSION_TAG"] + path = pathlib.Path("docs/_root/index.html") + text = path.read_text() + + text = re.sub(r'(content="0; url=)[^"]+(")', rf"\g<1>{version}/\2", text) + text = re.sub(r'(rel="canonical" href=")[^"]+(")', rf"\g<1>{version}/\2", text) + text = re.sub(r'([^<]*)', rf"\g<1>{version}/\2", text) + text = re.sub(r'(Redirecting to )[^<]*()', + rf"\g<1>{version} documentation\2", text) + + path.write_text(text) + + # ── Commit and push ────────────────────────────────────────────────── + - name: Configure git + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + + - name: Commit release changes + run: | + git checkout -b "${{ steps.version.outputs.branch }}" + + # Stage version bumps, updated changelog, and consumed fragments. + git add pyproject.toml docs/conf.py CHANGELOG.rst + git add docs/_root/switcher.json docs/_root/index.html + git add -A upcoming_changes/ # stages deleted fragment files + + git commit -m "chore: prepare release ${{ steps.version.outputs.tag }}" + git push origin "${{ steps.version.outputs.branch }}" + + # ── Open pull request ──────────────────────────────────────────────── + - name: Open pull request + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + TAG: ${{ steps.version.outputs.tag }} + BRANCH: ${{ steps.version.outputs.branch }} + run: | + gh pr create \ + --title "Release ${TAG}" \ + --base main \ + --head "${BRANCH}" \ + --body "## Release ${TAG} + + > Auto-generated by the **Prepare Release** workflow. + + ### What changed + - Version bumped to \`${TAG}\` in \`pyproject.toml\` and \`docs/conf.py\` + - \`CHANGELOG.rst\` updated from towncrier fragments + - \`docs/_root/switcher.json\` updated with the new version entry + $([ '${{ inputs.beta }}' = 'false' ] && echo '- Root redirect updated to point to this release' || echo '') + + ### Review checklist + - [ ] \`CHANGELOG.rst\` reads well — edit the fragment text directly if needed + - [ ] Version strings are correct in \`pyproject.toml\` and \`docs/conf.py\` + - [ ] \`switcher.json\` has the right label and URL + - [ ] CI passes + + ### After merging + Create and push the tag to trigger the Release and Docs workflows: + \`\`\`bash + git fetch origin + git tag ${TAG} origin/main + git push origin ${TAG} + \`\`\`" + From 6fb00843c474a20448235cb8b5570ab3b5a2c379 Mon Sep 17 00:00:00 2001 From: Carter Francis Date: Sun, 12 Apr 2026 11:23:24 -0500 Subject: [PATCH 4/5] Add GitHub Actions workflow for automated release process --- .github/workflows/release.yml | 109 ++++++++++++++++++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..0ddf341 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,109 @@ +name: Release + +# Fires when a version tag is pushed (manually, after the Prepare Release PR +# is merged and reviewed). +# +# Jobs: +# build - build wheel + sdist with uv +# publish - upload to PyPI via OIDC trusted publishing (no API token needed) +# release - create a GitHub Release with the dist files and changelog notes + +on: + push: + tags: ["v*.*.*"] + +permissions: + contents: write # create GitHub Releases and upload assets + id-token: write # OIDC token for PyPI trusted publishing + +jobs: + # -------------------------------------------------------------------------- + build: + name: Build distribution + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up uv + uses: astral-sh/setup-uv@v5 + with: + python-version: "3.13" + enable-cache: true + + - name: Build wheel and sdist + run: uv build + + - name: Upload dist artifact + uses: actions/upload-artifact@v4 + with: + name: dist + path: dist/ + if-no-files-found: error + retention-days: 7 + + # -------------------------------------------------------------------------- + publish: + name: Publish to PyPI + needs: build + runs-on: ubuntu-latest + + environment: + name: pypi + url: https://pypi.org/p/anyplotlib + + steps: + - name: Download dist artifact + uses: actions/download-artifact@v4 + with: + name: dist + path: dist/ + + # Trusted publishing - no API token required. + # One-time setup on pypi.org: add a pending publisher for + # Owner: CSSFrancis Repo: anyplotlib Workflow: release.yml + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + + # -------------------------------------------------------------------------- + release: + name: Create GitHub Release + needs: build + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Download dist artifact + uses: actions/download-artifact@v4 + with: + name: dist + path: dist/ + + - name: Extract release notes from CHANGELOG.rst + env: + TAG: ${{ github.ref_name }} + shell: python + run: | + import re, pathlib, os + tag = os.environ["TAG"] + text = pathlib.Path("CHANGELOG.rst").read_text() + parts = re.split(r"(?m)(?=^\S[^\n]*\n=+\n)", text) + notes = next((p.strip() for p in parts if p.strip().startswith(tag)), None) + fallback = "Release " + tag + "\n" + "=" * (len(tag) + 8) + "\n\nSee CHANGELOG.rst." + pathlib.Path("release_notes.rst").write_text(notes if notes else fallback) + + - name: Create GitHub Release + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + TAG: ${{ github.ref_name }} + run: | + PRERELEASE_FLAG="" + if [[ "$TAG" == *b* ]]; then PRERELEASE_FLAG="--prerelease"; fi + gh release create "$TAG" \ + --title "$TAG" \ + --notes-file release_notes.rst \ + $PRERELEASE_FLAG \ + dist/* From 87578d969b7530f80d77210207b734e7b7890051 Mon Sep 17 00:00:00 2001 From: Carter Francis Date: Mon, 13 Apr 2026 09:34:17 -0500 Subject: [PATCH 5/5] Add InsetAxes class for floating overlay sub-plots with interactive controls --- upcoming_changes/6.new_feature.rst | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 upcoming_changes/6.new_feature.rst diff --git a/upcoming_changes/6.new_feature.rst b/upcoming_changes/6.new_feature.rst new file mode 100644 index 0000000..5e921b3 --- /dev/null +++ b/upcoming_changes/6.new_feature.rst @@ -0,0 +1,6 @@ +Added :class:`~anyplotlib.InsetAxes` — floating overlay sub-plots that sit +above the main figure grid, created via :meth:`~anyplotlib.Figure.add_inset` +and supporting all plot types (:meth:`~anyplotlib.Axes.imshow`, +:meth:`~anyplotlib.Axes.plot`, :meth:`~anyplotlib.Axes.pcolormesh`, etc.) +as well as interactive minimise, maximise, and restore states. +