From 4084c3cf56d3fc140017662f953f7acc25b3e8ff Mon Sep 17 00:00:00 2001 From: starship-s <45587122+starship-s@users.noreply.github.com> Date: Tue, 12 May 2026 11:06:25 -0600 Subject: [PATCH 01/19] perf(sessions): cache CLI session scans --- api/models.py | 298 +++++++++++++++-------- api/routes.py | 25 +- tests/test_claude_code_session_import.py | 83 +++++++ tests/test_session_cli_scan_fast_path.py | 109 +++++++++ tests/test_session_index.py | 47 ++++ 5 files changed, 457 insertions(+), 105 deletions(-) create mode 100644 tests/test_session_cli_scan_fast_path.py diff --git a/api/models.py b/api/models.py index b15d5531..589cc38a 100644 --- a/api/models.py +++ b/api/models.py @@ -1,5 +1,6 @@ """Hermes Web UI -- Session model and in-memory session store.""" import collections +import copy import datetime import hashlib import json @@ -22,6 +23,9 @@ from api.agent_sessions import read_importable_agent_session_rows, read_session_ logger = logging.getLogger(__name__) CLI_VISIBLE_SESSION_LIMIT = 20 +_CLI_SESSIONS_CACHE_TTL_SECONDS = 5.0 +_CLI_SESSIONS_CACHE_LOCK = threading.Lock() +_CLI_SESSIONS_CACHE = {} # --------------------------------------------------------------------------- # Stale temp-file cleanup @@ -383,6 +387,7 @@ class Session: self.raw_source = kwargs.get('raw_source') self.session_source = kwargs.get('session_source') self.source_label = kwargs.get('source_label') + self.read_only = bool(kwargs.get('read_only', False)) self.enabled_toolsets = enabled_toolsets # List[str] or None — per-session toolset override self.composer_draft = composer_draft if isinstance(composer_draft, dict) else {} self._metadata_message_count = None @@ -426,7 +431,7 @@ class Session: 'gateway_routing', 'gateway_routing_history', 'llm_title_generated', 'parent_session_id', 'worktree_path', 'worktree_branch', 'worktree_repo_root', 'worktree_created_at', - 'is_cli_session', 'source_tag', 'raw_source', 'session_source', 'source_label', + 'is_cli_session', 'source_tag', 'raw_source', 'session_source', 'source_label', 'read_only', 'enabled_toolsets', 'composer_draft', ] meta = {k: getattr(self, k, None) for k in METADATA_FIELDS} @@ -610,6 +615,7 @@ class Session: 'raw_source': self.raw_source, 'session_source': self.session_source, 'source_label': self.source_label, + 'read_only': self.read_only, 'enabled_toolsets': self.enabled_toolsets, 'composer_draft': self.composer_draft if isinstance(self.composer_draft, dict) else {}, 'is_streaming': _is_streaming_session( @@ -1016,9 +1022,11 @@ def all_sessions(diag=None): _diag_stage(diag, "all_sessions.read_index") index = json.loads(SESSION_INDEX_FILE.read_text(encoding='utf-8')) _diag_stage(diag, "all_sessions.prune_index") + with LOCK: + in_memory_ids = set(SESSIONS.keys()) index = [ s for s in index - if _index_entry_exists(s.get('session_id')) + if _index_entry_exists(s.get('session_id'), in_memory_ids=in_memory_ids) ] backfilled = [] for i, s in enumerate(index): @@ -1536,20 +1544,51 @@ def get_claude_code_session_messages(sid, projects_dir: Path | str | None = None return [] -def get_cli_sessions() -> list: - """Read CLI sessions from the agent's SQLite store and return them as - dicts in a format the WebUI sidebar can render alongside local sessions. +def clear_cli_sessions_cache() -> None: + with _CLI_SESSIONS_CACHE_LOCK: + _CLI_SESSIONS_CACHE.clear() - Returns empty list if the SQLite DB is missing or any error occurs -- the - bridge is purely additive and never crashes the WebUI. - """ - import os - cli_sessions = [] + +def _copy_cli_sessions(sessions: list) -> list: + return copy.deepcopy(sessions) + + +def _cli_sessions_cache_ttl_seconds() -> float: try: - cli_sessions.extend(get_claude_code_sessions()) - except Exception: - logger.debug("Claude Code session scan failed", exc_info=True) + return max(0.0, float(_CLI_SESSIONS_CACHE_TTL_SECONDS)) + except (TypeError, ValueError): + return 5.0 + +def _path_cache_key(path) -> str | None: + if path is None: + return None + try: + return str(Path(path).expanduser().resolve(strict=False)) + except Exception: + return str(path) + + +def _path_stat_cache_key(path): + if path is None: + return None + try: + st = Path(path).stat() + return (st.st_mtime_ns, st.st_size) + except OSError: + return None + + +def _sqlite_file_stat_cache_key(db_path: Path): + """Return a cheap invalidation key for a SQLite DB and WAL sidecars.""" + return ( + _path_stat_cache_key(db_path), + _path_stat_cache_key(Path(f"{db_path}-wal")), + _path_stat_cache_key(Path(f"{db_path}-shm")), + ) + + +def _resolve_cli_sessions_context(): # Use the active WebUI profile's HERMES_HOME to find state.db. # The active profile is determined by what the user has selected in the UI # (stored in the server's runtime config). This means: @@ -1564,17 +1603,35 @@ def get_cli_sessions() -> list: except Exception: hermes_home = Path(os.getenv('HERMES_HOME', str(HOME / '.hermes'))).expanduser().resolve() - db_path = hermes_home / 'state.db' - if not db_path.exists(): - return cli_sessions - - # Try to resolve the active CLI profile so imported sessions integrate - # with the WebUI profile filter (available since Sprint 22). try: from api.profiles import get_active_profile_name - _cli_profile = get_active_profile_name() - except ImportError: - _cli_profile = None # older agent -- fall back to no profile + cli_profile = get_active_profile_name() + except Exception: + cli_profile = None + + db_path = hermes_home / 'state.db' + projects_dir = _default_claude_code_projects_dir() + cache_key = ( + str(hermes_home), + str(cli_profile or ''), + str(db_path), + _sqlite_file_stat_cache_key(db_path), + _path_cache_key(projects_dir), + _path_stat_cache_key(projects_dir), + _path_stat_cache_key(SESSION_INDEX_FILE), + ) + return hermes_home, db_path, cli_profile, cache_key + + +def _load_cli_sessions_uncached(hermes_home: Path, db_path: Path, _cli_profile) -> list: + cli_sessions = [] + try: + cli_sessions.extend(get_claude_code_sessions()) + except Exception: + logger.debug("Claude Code session scan failed", exc_info=True) + + if not db_path.exists(): + return cli_sessions # Memoize the cron project ID for this scan so we don't pay a lock-acquire + # disk-read of projects.json per cron session in the loop below. @@ -1585,96 +1642,129 @@ def get_cli_sessions() -> list: _cron_pid_cache[0] = ensure_cron_project() return _cron_pid_cache[0] - try: - for row in read_importable_agent_session_rows( - db_path, - limit=CLI_VISIBLE_SESSION_LIMIT, - log=logger, - exclude_sources=None, - ): - sid = row['id'] - raw_ts = row['last_activity'] or row['started_at'] - # Prefer the CLI session's own profile from the DB; fall back to - # the active CLI profile so sidebar filtering works either way. - profile = _cli_profile # CLI DB has no profile column; use active profile + for row in read_importable_agent_session_rows( + db_path, + limit=CLI_VISIBLE_SESSION_LIMIT, + log=logger, + exclude_sources=None, + ): + sid = row['id'] + raw_ts = row['last_activity'] or row['started_at'] + # Prefer the CLI session's own profile from the DB; fall back to + # the active CLI profile so sidebar filtering works either way. + profile = _cli_profile # CLI DB has no profile column; use active profile - _source = row['source'] or 'cli' - _title = row['title'] - if not _title and _source == 'cron' and sid.startswith('cron_'): - # Extract job_id from session ID (cron_{job_id}_{timestamp}) - # and look up the human-friendly job name from jobs.json - parts = sid.split('_') - if len(parts) >= 3: - _job_id = parts[1] - try: - _jobs_path = hermes_home / 'cron' / 'jobs.json' - if _jobs_path.exists(): - import json as _json - _jobs_data = _json.loads(_jobs_path.read_text()) - for _j in _jobs_data.get('jobs', []): - if _j.get('id') == _job_id: - _title = _j.get('name') or _title - break - except Exception: - pass # degrade gracefully - # If a WebUI JSON file exists for this session (e.g. previously - # imported or renamed in the sidebar), prefer its title over the - # state.db title. This fixes rename-not-persisting for CLI sessions - # after compression chain extension (#1486). + _source = row['source'] or 'cli' + _title = row['title'] + if not _title and _source == 'cron' and sid.startswith('cron_'): + # Extract job_id from session ID (cron_{job_id}_{timestamp}) + # and look up the human-friendly job name from jobs.json + parts = sid.split('_') + if len(parts) >= 3: + _job_id = parts[1] + try: + _jobs_path = hermes_home / 'cron' / 'jobs.json' + if _jobs_path.exists(): + import json as _json + _jobs_data = _json.loads(_jobs_path.read_text()) + for _j in _jobs_data.get('jobs', []): + if _j.get('id') == _job_id: + _title = _j.get('name') or _title + break + except Exception: + pass # degrade gracefully + # If a WebUI JSON file exists for this session (e.g. previously + # imported or renamed in the sidebar), prefer its title over the + # state.db title. This fixes rename-not-persisting for CLI sessions + # after compression chain extension (#1486). + try: + _webui_meta = Session.load_metadata_only(sid) + if _webui_meta and getattr(_webui_meta, 'title', None): + _title = _webui_meta.title + except Exception: + pass + _display_title = _title or f'{_source.title()} Session' + cli_sessions.append({ + 'session_id': sid, + 'title': _display_title, + 'workspace': str(get_last_workspace()), + 'model': row['model'] or None, + 'message_count': row['message_count'] or row['actual_message_count'] or 0, + 'created_at': row['started_at'], + 'updated_at': raw_ts, + 'pinned': False, + 'archived': False, + 'project_id': _cron_pid() if is_cron_session(sid, _source) else None, + 'profile': profile, + 'source_tag': _source, + 'raw_source': row.get('raw_source'), + 'user_id': row.get('user_id'), + 'chat_id': row.get('chat_id') or row.get('origin_chat_id'), + 'chat_type': row.get('chat_type'), + 'thread_id': row.get('thread_id'), + 'session_key': row.get('session_key'), + 'platform': row.get('platform'), + 'session_source': row.get('session_source'), + 'source_label': row.get('source_label'), + 'parent_session_id': row.get('parent_session_id'), + 'parent_title': row.get('parent_title'), + 'parent_source': row.get('parent_source'), + 'relationship_type': row.get('relationship_type'), + '_parent_lineage_root_id': row.get('_parent_lineage_root_id'), + 'end_reason': row.get('end_reason'), + 'actual_message_count': row.get('actual_message_count'), + 'user_message_count': row.get('actual_user_message_count'), + '_lineage_root_id': row.get('_lineage_root_id'), + '_lineage_tip_id': row.get('_lineage_tip_id'), + '_compression_segment_count': row.get('_compression_segment_count'), + 'is_cli_session': True, + }) + + return cli_sessions + + +def get_cli_sessions() -> list: + """Read CLI sessions from the agent's SQLite store and return them as + dicts in a format the WebUI sidebar can render alongside local sessions. + + Returns empty list if the SQLite DB is missing or any error occurs -- the + bridge is purely additive and never crashes the WebUI. + """ + hermes_home, db_path, cli_profile, cache_key = _resolve_cli_sessions_context() + ttl = _cli_sessions_cache_ttl_seconds() + now = time.monotonic() + + if ttl > 0: + with _CLI_SESSIONS_CACHE_LOCK: + cached = _CLI_SESSIONS_CACHE.get(cache_key) + if cached: + expires_at, cached_sessions = cached + if expires_at > now: + return _copy_cli_sessions(cached_sessions) + _CLI_SESSIONS_CACHE.pop(cache_key, None) try: - _webui_meta = Session.load_metadata_only(sid) - if _webui_meta and getattr(_webui_meta, 'title', None): - _title = _webui_meta.title - except Exception: - pass - _display_title = _title or f'{_source.title()} Session' - cli_sessions.append({ - 'session_id': sid, - 'title': _display_title, - 'workspace': str(get_last_workspace()), - 'model': row['model'] or None, - 'message_count': row['message_count'] or row['actual_message_count'] or 0, - 'created_at': row['started_at'], - 'updated_at': raw_ts, - 'pinned': False, - 'archived': False, - 'project_id': _cron_pid() if is_cron_session(sid, _source) else None, - 'profile': profile, - 'source_tag': _source, - 'raw_source': row.get('raw_source'), - 'user_id': row.get('user_id'), - 'chat_id': row.get('chat_id') or row.get('origin_chat_id'), - 'chat_type': row.get('chat_type'), - 'thread_id': row.get('thread_id'), - 'session_key': row.get('session_key'), - 'platform': row.get('platform'), - 'session_source': row.get('session_source'), - 'source_label': row.get('source_label'), - 'parent_session_id': row.get('parent_session_id'), - 'parent_title': row.get('parent_title'), - 'parent_source': row.get('parent_source'), - 'relationship_type': row.get('relationship_type'), - '_parent_lineage_root_id': row.get('_parent_lineage_root_id'), - 'end_reason': row.get('end_reason'), - 'actual_message_count': row.get('actual_message_count'), - 'user_message_count': row.get('actual_user_message_count'), - '_lineage_root_id': row.get('_lineage_root_id'), - '_lineage_tip_id': row.get('_lineage_tip_id'), - '_compression_segment_count': row.get('_compression_segment_count'), - 'is_cli_session': True, - }) + sessions = _load_cli_sessions_uncached(hermes_home, db_path, cli_profile) + except Exception as _cli_err: + logger.warning( + "get_cli_sessions() failed — check state.db schema or path (%s): %s", + db_path, _cli_err, + ) + return [] + _CLI_SESSIONS_CACHE[cache_key] = ( + time.monotonic() + ttl, + _copy_cli_sessions(sessions), + ) + return _copy_cli_sessions(sessions) + + try: + return _load_cli_sessions_uncached(hermes_home, db_path, cli_profile) except Exception as _cli_err: - # DB schema changed, locked, or corrupted -- log warning so admins can diagnose. - # Still degrade gracefully (don't crash the WebUI). - import logging as _logging - _logging.getLogger(__name__).warning( + logger.warning( "get_cli_sessions() failed — check state.db schema or path (%s): %s", db_path, _cli_err, ) return [] - return cli_sessions - def _json_loads_if_string(value): if not isinstance(value, str): diff --git a/api/routes.py b/api/routes.py index 65f12285..1bc4b2fe 100644 --- a/api/routes.py +++ b/api/routes.py @@ -1559,6 +1559,29 @@ def _is_messaging_session_record(session) -> bool: return _is_known_messaging_source(raw) +def _session_requires_cli_metadata_lookup(session) -> bool: + if not session: + return False + + def _field(name): + return session.get(name) if isinstance(session, dict) else getattr(session, name, None) + + if _is_messaging_session_record(session): + return True + if bool(_field("is_cli_session")) or bool(_field("read_only")): + return True + session_source = _normalize_messaging_source(_safe_first(_field("session_source"))) + if session_source in {"messaging", "external_agent", "external-agent"}: + return True + return bool(_safe_first( + _field("source_tag"), + _field("raw_source"), + _field("source"), + _field("source_label"), + _field("platform"), + )) + + def _is_messaging_session_id(sid: str) -> bool: """Detect messaging-backed sessions from WebUI metadata or Agent rows.""" try: @@ -3125,7 +3148,7 @@ def handle_get(handler, parsed) -> bool: _t1 = _time.monotonic() s = get_session(sid, metadata_only=(not load_messages)) _clear_stale_stream_state(s) - cli_meta = _lookup_cli_session_metadata(sid) + cli_meta = _lookup_cli_session_metadata(sid) if _session_requires_cli_metadata_lookup(s) else {} is_messaging_session = _is_messaging_session_record(s) or _is_messaging_session_record(cli_meta) cli_messages = [] if is_messaging_session: diff --git a/tests/test_claude_code_session_import.py b/tests/test_claude_code_session_import.py index 54e0859f..fb36d799 100644 --- a/tests/test_claude_code_session_import.py +++ b/tests/test_claude_code_session_import.py @@ -86,6 +86,89 @@ def test_claude_code_scan_skips_symlinks_and_oversized_files(tmp_path): assert models.get_claude_code_sessions(projects_dir=root_link) == [] +def test_get_cli_sessions_reuses_short_ttl_cache(monkeypatch, tmp_path): + import api.models as models + import api.profiles as profiles + + hermes_home = tmp_path / "hermes" + hermes_home.mkdir() + monkeypatch.setattr(profiles, "get_active_hermes_home", lambda: str(hermes_home)) + monkeypatch.setattr(profiles, "get_active_profile_name", lambda: "default") + monkeypatch.setattr(models, "_CLI_SESSIONS_CACHE_TTL_SECONDS", 60.0, raising=False) + models.clear_cli_sessions_cache() + + calls = 0 + + def fake_claude_code_sessions(): + nonlocal calls + calls += 1 + return [ + { + "session_id": "claude_code_cached", + "title": "Cached Claude Code", + "updated_at": calls, + "message_count": 1, + "source_tag": "claude_code", + "is_cli_session": True, + } + ] + + monkeypatch.setattr(models, "get_claude_code_sessions", fake_claude_code_sessions) + + first = models.get_cli_sessions() + first[0]["title"] = "mutated by caller" + second = models.get_cli_sessions() + + assert calls == 1 + assert second[0]["title"] == "Cached Claude Code" + assert second[0]["updated_at"] == 1 + + +def test_get_cli_sessions_cache_invalidates_when_sqlite_wal_changes(monkeypatch, tmp_path): + import api.models as models + import api.profiles as profiles + + hermes_home = tmp_path / "hermes" + hermes_home.mkdir() + db_path = hermes_home / "state.db" + db_path.write_text("initial", encoding="utf-8") + monkeypatch.setattr(profiles, "get_active_hermes_home", lambda: str(hermes_home)) + monkeypatch.setattr(profiles, "get_active_profile_name", lambda: "default") + monkeypatch.setattr(models, "_CLI_SESSIONS_CACHE_TTL_SECONDS", 60.0, raising=False) + monkeypatch.setattr(models, "get_claude_code_sessions", lambda: []) + models.clear_cli_sessions_cache() + + calls = 0 + + def fake_rows(_db_path, **_kwargs): + nonlocal calls + calls += 1 + return [ + { + "id": "cli_cached_state_db", + "title": "State DB Session", + "model": "test-model", + "source": "cli", + "raw_source": "cli", + "message_count": calls, + "actual_message_count": calls, + "actual_user_message_count": 1, + "last_activity": float(calls), + "started_at": 1.0, + } + ] + + monkeypatch.setattr(models, "read_importable_agent_session_rows", fake_rows) + + first = models.get_cli_sessions() + Path(f"{db_path}-wal").write_text("new wal contents", encoding="utf-8") + second = models.get_cli_sessions() + + assert calls == 2 + assert first[0]["message_count"] == 1 + assert second[0]["message_count"] == 2 + + def test_session_import_cli_returns_read_only_claude_code_payload(monkeypatch, tmp_path): import api.routes as routes diff --git a/tests/test_session_cli_scan_fast_path.py b/tests/test_session_cli_scan_fast_path.py new file mode 100644 index 00000000..a28b0318 --- /dev/null +++ b/tests/test_session_cli_scan_fast_path.py @@ -0,0 +1,109 @@ +from urllib.parse import urlparse + + +def test_webui_session_metadata_load_skips_cli_metadata_scan(monkeypatch): + """Opening a normal WebUI session should not scan imported CLI sessions.""" + import api.routes as routes + from api.models import Session + + session = Session( + session_id="webui_normal", + title="Normal WebUI chat", + messages=[{"role": "user", "content": "hello"}], + ) + + monkeypatch.setattr(routes, "get_session", lambda sid, metadata_only=False: session) + monkeypatch.setattr(routes, "_clear_stale_stream_state", lambda _session: None) + monkeypatch.setattr(routes, "redact_session_data", lambda payload: payload) + monkeypatch.setattr(routes, "j", lambda _handler, payload, status=200, extra_headers=None: payload) + monkeypatch.setattr( + routes, + "_lookup_cli_session_metadata", + lambda _sid: (_ for _ in ()).throw(AssertionError("normal WebUI loads should not scan CLI sessions")), + ) + + response = routes.handle_get( + object(), + urlparse("/api/session?session_id=webui_normal&messages=0&resolve_model=0"), + ) + + assert response["session"]["session_id"] == "webui_normal" + assert response["session"]["messages"] == [] + + +def test_read_only_session_metadata_load_preserves_cli_metadata_lookup(monkeypatch): + """Read-only imported sidecars still need CLI metadata for source identity.""" + import api.routes as routes + from api.models import Session + + session = Session( + session_id="readonly_sidecar", + title="Imported chat", + messages=[{"role": "user", "content": "hello"}], + read_only=True, + ) + looked_up = [] + + monkeypatch.setattr(routes, "get_session", lambda sid, metadata_only=False: session) + monkeypatch.setattr(routes, "_clear_stale_stream_state", lambda _session: None) + monkeypatch.setattr(routes, "get_cli_session_messages", lambda _sid: []) + monkeypatch.setattr(routes, "redact_session_data", lambda payload: payload) + monkeypatch.setattr(routes, "j", lambda _handler, payload, status=200, extra_headers=None: payload) + + def fake_lookup(sid): + looked_up.append(sid) + return { + "session_id": sid, + "read_only": True, + "source_label": "External Agent", + } + + monkeypatch.setattr(routes, "_lookup_cli_session_metadata", fake_lookup) + + response = routes.handle_get( + object(), + urlparse("/api/session?session_id=readonly_sidecar&messages=0&resolve_model=0"), + ) + + assert looked_up == ["readonly_sidecar"] + assert response["session"]["read_only"] is True + + +def test_messaging_session_metadata_load_preserves_cli_metadata_lookup(monkeypatch): + """Messaging/imported sidecars still need CLI metadata for source identity.""" + import api.routes as routes + from api.models import Session + + session = Session( + session_id="messaging_sidecar", + title="Telegram chat", + messages=[{"role": "user", "content": "hello"}], + session_source="messaging", + raw_source="telegram", + ) + looked_up = [] + + monkeypatch.setattr(routes, "get_session", lambda sid, metadata_only=False: session) + monkeypatch.setattr(routes, "_clear_stale_stream_state", lambda _session: None) + monkeypatch.setattr(routes, "get_cli_session_messages", lambda _sid: []) + monkeypatch.setattr(routes, "redact_session_data", lambda payload: payload) + monkeypatch.setattr(routes, "j", lambda _handler, payload, status=200, extra_headers=None: payload) + + def fake_lookup(sid): + looked_up.append(sid) + return { + "session_id": sid, + "session_source": "messaging", + "raw_source": "telegram", + "source_label": "Telegram", + } + + monkeypatch.setattr(routes, "_lookup_cli_session_metadata", fake_lookup) + + response = routes.handle_get( + object(), + urlparse("/api/session?session_id=messaging_sidecar&messages=0&resolve_model=0"), + ) + + assert looked_up == ["messaging_sidecar"] + assert response["session"]["source_label"] == "Telegram" diff --git a/tests/test_session_index.py b/tests/test_session_index.py index eacda6d5..3f487f97 100644 --- a/tests/test_session_index.py +++ b/tests/test_session_index.py @@ -123,6 +123,53 @@ def test_all_sessions_backfills_last_message_at_for_legacy_index_rows(): assert persisted[0].get("last_message_at") == 100.0 +def test_all_sessions_prune_reuses_in_memory_id_snapshot(monkeypatch): + """Index pruning should not reacquire the session lock for every row.""" + index_file = models.SESSION_INDEX_FILE + entries = [ + { + "session_id": "sess_a", + "title": "Alpha", + "updated_at": 200.0, + "last_message_at": 200.0, + "workspace": "/tmp", + "model": "test", + "message_count": 1, + "created_at": 100.0, + "pinned": False, + "archived": False, + }, + { + "session_id": "sess_b", + "title": "Bravo", + "updated_at": 150.0, + "last_message_at": 150.0, + "workspace": "/tmp", + "model": "test", + "message_count": 1, + "created_at": 90.0, + "pinned": False, + "archived": False, + }, + ] + _write_index_file(index_file, entries) + + seen = [] + + def _assert_snapshot_used(session_id, in_memory_ids=None): + assert in_memory_ids is not None, "all_sessions should snapshot SESSIONS once before pruning" + seen.append(session_id) + return True + + monkeypatch.setattr(models, "_index_entry_exists", _assert_snapshot_used) + monkeypatch.setattr(models, "_enrich_sidebar_lineage_metadata", lambda _sessions: None) + + rows = models.all_sessions() + + assert [row["session_id"] for row in rows] == ["sess_a", "sess_b"] + assert seen == ["sess_a", "sess_b"] + + # ── 6. test_incremental_patch_correctness ───────────────────────────────── def test_incremental_patch_correctness(): From cd16ca756f8ee62fcb19ee933a33b846b4c6ef84 Mon Sep 17 00:00:00 2001 From: starship-s <45587122+starship-s@users.noreply.github.com> Date: Tue, 12 May 2026 18:39:19 -0600 Subject: [PATCH 02/19] docs(sessions): document CLI metadata lookup markers --- api/routes.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/api/routes.py b/api/routes.py index 1bc4b2fe..6b1a8421 100644 --- a/api/routes.py +++ b/api/routes.py @@ -1560,6 +1560,14 @@ def _is_messaging_session_record(session) -> bool: def _session_requires_cli_metadata_lookup(session) -> bool: + """Return True when a sidecar/session row still needs CLI metadata. + + Legacy imported sidecars may predate the ``read_only`` field and therefore + load with ``read_only=False``. They still persist ``is_cli_session`` and/or + source metadata from import time, so those markers intentionally keep them + on the CLI lookup path while ordinary WebUI-native sessions take the fast + path. + """ if not session: return False From 4b455822cb4196dff0bf28b621313342316a664b Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 14:57:28 -0700 Subject: [PATCH 03/19] Fix MCP tools list overflow --- CHANGELOG.md | 2 + static/i18n.js | 140 ++++++++++++++++++++++++++ static/index.html | 4 +- static/panels.js | 88 ++++++++++++++-- static/style.css | 11 ++ tests/test_mcp_tools_list_overflow.py | 90 +++++++++++++++++ 6 files changed, 325 insertions(+), 10 deletions(-) create mode 100644 tests/test_mcp_tools_list_overflow.py diff --git a/CHANGELOG.md b/CHANGELOG.md index 48e58a6e..38af17bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,6 +36,8 @@ ### Fixed +- MCP Tools in Settings → System now uses a bounded scroll region with 5-item default pages, a per-page selector up to 40 tools, and a visible result summary, so large MCP tool inventories no longer make the settings panel balloon indefinitely. + - **PR #2201** by @MrFant — Multi-turn conversations with thinking-mode providers (MiMo/Xiaomi, DeepSeek, Kimi/Moonshot) no longer 400 with `Param Incorrect: reasoning_content must be passed back`. WebUI's `_sanitize_messages_for_api()` strips fields not in `_API_SAFE_MSG_KEYS` before sending conversation history to the LLM; `reasoning_content` was missing from the whitelist, so when history was replayed on the second turn, the assistant message with `tool_calls` arrived without `reasoning_content` and providers enforcing thinking-mode echo-back rejected it. One-line fix: adds `'reasoning_content'` to `_API_SAFE_MSG_KEYS`. CLI was unaffected because `run_agent.py` has its own `_copy_reasoning_content_for_api()` that doesn't go through this filter. - **PR #2198** by @Michaelyklam — Fork-from-here keep-count was off-by-one (or larger) for truncated sessions where the visible-message index didn't match the absolute transcript index. JS now sends `_oldestIdx + msgIdx` (the absolute message index in the full transcript) as `keep_count` instead of the visible-window-relative index — captured *before* `_ensureAllMessagesLoaded()` resets `_oldestIdx`, so the index remains stable. Backend `source_messages[:keep_count]` then forks from the correct point even when the user has only loaded a tail window. When the full transcript is loaded (`_oldestIdx==0`), behavior is unchanged. 186-line regression suite in `tests/test_issue2184_fork_from_here_absolute_index.py` explicitly pins `keep_count: absoluteKeepCount` (and forbids the old `keep_count: msgIdx` form). diff --git a/static/i18n.js b/static/i18n.js index b0a28ade..4e9fe34d 100644 --- a/static/i18n.js +++ b/static/i18n.js @@ -92,6 +92,20 @@ const LOCALES = { mcp_tools_load_failed: 'Failed to load MCP tools.', mcp_tools_schema_empty: 'No schema parameters.', mcp_tools_runtime_note: 'Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', // PDF preview (#480) pdf_loading: 'Loading PDF {0}…', pdf_too_large: 'PDF too large for inline preview', @@ -1217,6 +1231,20 @@ const LOCALES = { mcp_tools_load_failed: 'Caricamento strumenti MCP fallito.', mcp_tools_schema_empty: 'Nessun parametro schema.', mcp_tools_runtime_note: "L'inventario strumenti usa solo dati runtime MCP già noti; la WebUI non avvia né interroga i server.", + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', // PDF preview (#480) pdf_loading: 'Caricamento PDF {0}…', pdf_too_large: "PDF troppo grande per l'anteprima inline", @@ -2334,6 +2362,20 @@ const LOCALES = { mcp_tools_load_failed: 'MCP ツールの読み込みに失敗しました。', mcp_tools_schema_empty: 'スキーマパラメータはありません。', mcp_tools_runtime_note: 'ツール一覧は既知の MCP ランタイム情報のみを使用します。WebUI はサーバーの起動や探索を行いません。', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', // PDF preview (#480) pdf_loading: 'PDF {0} を読み込み中…', pdf_too_large: 'PDF が大きすぎてインラインプレビューできません', @@ -3453,6 +3495,20 @@ const LOCALES = { mcp_tools_load_failed: 'Failed to load MCP tools.', mcp_tools_schema_empty: 'No schema parameters.', mcp_tools_runtime_note: 'Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', thinking: 'Думаю', expand_all: 'Развернуть всё', collapse_all: 'Свернуть всё', @@ -4504,6 +4560,20 @@ const LOCALES = { mcp_tools_load_failed: 'Failed to load MCP tools.', mcp_tools_schema_empty: 'No schema parameters.', mcp_tools_runtime_note: 'Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', thinking: 'Pensando', expand_all: 'Expandir todo', collapse_all: 'Contraer todo', @@ -5558,6 +5628,20 @@ const LOCALES = { mcp_tools_load_failed: 'Failed to load MCP tools.', mcp_tools_schema_empty: 'No schema parameters.', mcp_tools_runtime_note: 'Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', thinking: 'Nachdenken', expand_all: 'Alle ausklappen', collapse_all: 'Alle einklappen', @@ -6616,6 +6700,20 @@ const LOCALES = { mcp_tools_load_failed: '加载 MCP 工具失败。', mcp_tools_schema_empty: '无参数。', mcp_tools_runtime_note: '工具清单仅使用已知的活跃 MCP 运行时数据;WebUI 不会启动或探测服务器。', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', thinking: '思考过程', expand_all: '全部展开', collapse_all: '全部折叠', @@ -7662,6 +7760,20 @@ const LOCALES = { mcp_tools_load_failed: 'Failed to load MCP tools.', mcp_tools_schema_empty: 'No schema parameters.', mcp_tools_runtime_note: 'Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', thinking: '\u601d\u8003\u904e\u7a0b', expand_all: '\u5168\u90e8\u5c55\u958b', collapse_all: '\u5168\u90e8\u6298\u758a', @@ -9764,6 +9876,20 @@ const LOCALES = { mcp_tools_load_failed: 'Failed to load MCP tools.', mcp_tools_schema_empty: 'No schema parameters.', mcp_tools_runtime_note: 'Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', thinking: '생각 중', expand_all: '모두 펼치기', collapse_all: '모두 접기', @@ -10878,6 +11004,20 @@ const LOCALES = { mcp_tools_load_failed: 'Échec du chargement des outils MCP.', mcp_tools_schema_empty: 'Aucun paramètre de schéma.', mcp_tools_runtime_note: 'L\'inventaire des outils utilise uniquement les données d\'exécution MCP actives déjà connues ; le WebUI ne démarre pas et ne sonde pas les serveurs.', + mcp_tools_summary_no_matches: (query,total) => `No MCP tools matching “${query}” (${total} total MCP tools).`, + mcp_tools_summary_none: 'No MCP tools to show.', + mcp_tools_summary_matching: (query) => ` matching “${query}”`, + mcp_tools_summary_total_note: (total) => ` (${total} total MCP tools)`, + mcp_tools_summary_showing: (start,end,filtered,searchNote,totalNote,page,pages) => `Showing ${start}-${end} of ${filtered} MCP tools${searchNote}${totalNote}. Page ${page} of ${pages}.`, + mcp_tools_page_size_prefix: 'Show', + mcp_tools_page_size_suffix: 'per page', + mcp_tools_per_page_aria: 'MCP tools per page', + mcp_tools_inactive_configured_servers: (servers) => `Configured but inactive in this WebUI runtime: ${servers}.`, + mcp_tools_pagination_label: 'MCP tools pagination', + mcp_tools_previous_page: '‹ Prev', + mcp_tools_previous_page_aria: 'Previous MCP tools page', + mcp_tools_next_page: 'Next ›', + mcp_tools_next_page_aria: 'Next MCP tools page', pdf_loading: 'Chargement du PDF {0}…', pdf_too_large: 'PDF trop volumineux pour un aperçu en ligne', pdf_no_pages: 'Le PDF n\'a pas de pages', diff --git a/static/index.html b/static/index.html index 8a530d16..f7c3f07d 100644 --- a/static/index.html +++ b/static/index.html @@ -1138,7 +1138,9 @@
Search known tools across active MCP servers.
-
+
+
+
Tool inventory only uses already-known active MCP runtime data; the WebUI does not start or probe servers.
diff --git a/static/panels.js b/static/panels.js index d942fac0..c3c6bfe3 100644 --- a/static/panels.js +++ b/static/panels.js @@ -6285,6 +6285,10 @@ function loadMcpServers(){ }).catch(()=>{list.innerHTML=`
${esc(t('mcp_load_failed'))}
`}); } let _mcpToolsCache=[]; +let _mcpToolsMeta={}; +let _mcpToolsPage=1; +let _mcpToolsPageSize=5; +const MCP_TOOLS_PAGE_SIZE_OPTIONS=[5,10,20,40]; function _filterMcpToolsForSearch(tools, query){ const q=(query||'').trim().toLowerCase(); if(!q) return Array.isArray(tools)?tools:[]; @@ -6301,16 +6305,56 @@ function _mcpToolSchemaText(schemaSummary){ return `${p.name}${req}: ${p.type||'unknown'}${desc}`; }).join('\n'); } -function _renderMcpTools(tools, query){ - const list=$('mcpToolList'); - if(!list) return; - const filtered=_filterMcpToolsForSearch(tools, query); - if(!filtered.length){ - const key=query?'mcp_tools_no_matches':'mcp_tools_no_tools'; - list.innerHTML=`
${esc(t(key))}
`; +function _mcpToolsSummary(total, filtered, page, pages, query){ + const trimmedQuery=(query||'').trim(); + if(!filtered){ + if(trimmedQuery) return t('mcp_tools_summary_no_matches',trimmedQuery,total); + return total?t('mcp_tools_summary_none'):''; + } + const pageSize=_mcpToolsPageSize||5; + const start=(page-1)*pageSize+1; + const end=Math.min(filtered,page*pageSize); + const searchNote=trimmedQuery?t('mcp_tools_summary_matching',trimmedQuery):''; + const totalNote=filtered===total?'':t('mcp_tools_summary_total_note',total); + return t('mcp_tools_summary_showing',start,end,filtered,searchNote,totalNote,page,pages); +} +function _mcpToolPageSizeControl(){ + const options=MCP_TOOLS_PAGE_SIZE_OPTIONS.map(size=>``).join(''); + return ``; +} +function _mcpToolsEmptyMessage(query){ + const base=esc(t(query?'mcp_tools_no_matches':'mcp_tools_no_tools')); + const unavailable=Array.isArray(_mcpToolsMeta.unavailable_servers)?_mcpToolsMeta.unavailable_servers:[]; + if(query||!unavailable.length) return base; + return `${base}
${esc(t('mcp_tools_inactive_configured_servers',unavailable.join(', ')))}`; +} +function _renderMcpToolPager(filteredCount, page, pages){ + const pager=$('mcpToolPager'); + if(!pager) return; + if(pages<=1){ + pager.innerHTML=''; return; } - list.innerHTML=filtered.map(tool=>{ + pager.innerHTML=` + ${page} / ${pages} + `; +} +function _renderMcpTools(tools, query){ + const list=$('mcpToolList'); + const toolbar=$('mcpToolToolbar'); + if(!list) return; + const filtered=_filterMcpToolsForSearch(tools, query); + const total=Array.isArray(tools)?tools.length:0; + const pages=Math.max(1,Math.ceil(filtered.length/_mcpToolsPageSize)); + _mcpToolsPage=Math.min(Math.max(1,_mcpToolsPage||1),pages); + if(toolbar) toolbar.innerHTML=`${esc(_mcpToolsSummary(total,filtered.length,_mcpToolsPage,pages,query))}${_mcpToolPageSizeControl()}`; + _renderMcpToolPager(filtered.length,_mcpToolsPage,pages); + if(!filtered.length){ + list.innerHTML=`
${_mcpToolsEmptyMessage(query)}
`; + return; + } + const visible=filtered.slice((_mcpToolsPage-1)*_mcpToolsPageSize,_mcpToolsPage*_mcpToolsPageSize); + list.innerHTML=visible.map(tool=>{ const status=tool.status||'unknown'; const statusBadge=`${esc(_mcpStatusLabel(status))}`; const schemaText=_mcpToolSchemaText(tool.schema_summary); @@ -6325,16 +6369,42 @@ function _renderMcpTools(tools, query){ `; }).join(''); } -function filterMcpTools(){ +function setMcpToolsPage(page){ + _mcpToolsPage=page; const input=$('mcpToolSearch'); _renderMcpTools(_mcpToolsCache,input?input.value:''); + const list=$('mcpToolList'); + if(list) list.scrollTop=0; +} +function setMcpToolsPageSize(size){ + const next=Number(size); + if(!MCP_TOOLS_PAGE_SIZE_OPTIONS.includes(next)) return; + _mcpToolsPageSize=next; + _mcpToolsPage=1; + const input=$('mcpToolSearch'); + _renderMcpTools(_mcpToolsCache,input?input.value:''); + const list=$('mcpToolList'); + if(list) list.scrollTop=0; +} +function filterMcpTools(){ + _mcpToolsPage=1; + const input=$('mcpToolSearch'); + _renderMcpTools(_mcpToolsCache,input?input.value:''); + const list=$('mcpToolList'); + if(list) list.scrollTop=0; } function loadMcpTools(){ const list=$('mcpToolList'); + const toolbar=$('mcpToolToolbar'); + const pager=$('mcpToolPager'); if(!list) return; + if(toolbar) toolbar.textContent=''; + if(pager) pager.innerHTML=''; list.innerHTML=`
${esc(t('loading'))}
`; api('/api/mcp/tools').then(r=>{ _mcpToolsCache=(r&&Array.isArray(r.tools))?r.tools:[]; + _mcpToolsMeta=r||{}; + _mcpToolsPage=1; filterMcpTools(); }).catch(()=>{list.innerHTML=`
${esc(t('mcp_tools_load_failed'))}
`}); } diff --git a/static/style.css b/static/style.css index 67b9b6f5..4c10f894 100644 --- a/static/style.css +++ b/static/style.css @@ -2493,10 +2493,21 @@ main.main.showing-logs > #mainLogs{display:flex;} .mcp-readonly-note,.mcp-restart-hint{margin-top:8px;color:var(--muted);font-size:11px;line-height:1.45;background:var(--code-bg);border:1px solid var(--border2);border-radius:6px;padding:8px 10px;} .mcp-tool-search{width:100%;margin:0 0 8px 0;padding:8px 10px;background:var(--code-bg);color:var(--text);border:1px solid var(--border2);border-radius:8px;font-size:12px;outline:none;} .mcp-tool-search:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bg-soft);} +.mcp-tool-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;color:var(--muted);font-size:11px;line-height:1.35;flex-wrap:wrap;} +.mcp-tool-summary{min-width:0;} +.mcp-tool-page-size{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:var(--muted);font-size:11px;} +.mcp-tool-page-size select{appearance:none;border:1px solid var(--border2);background:var(--code-bg);color:var(--text);border-radius:7px;padding:4px 22px 4px 8px;font-size:11px;font-weight:600;line-height:1.2;cursor:pointer;} +.mcp-tool-empty-detail{display:inline-block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35;} +.mcp-tool-list{max-height:min(52vh,560px);overflow:auto;padding-right:3px;scrollbar-gutter:stable;} .mcp-tool-row{display:flex;flex-direction:column;gap:5px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;margin-bottom:6px;font-size:12px;background:var(--surface);} .mcp-tool-name{font-weight:600;color:var(--text);overflow-wrap:anywhere;} .mcp-tool-server{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--code-bg);border:1px solid var(--border2);border-radius:999px;padding:2px 6px;} .mcp-tool-schema{margin:2px 0 0 0;padding:7px 8px;white-space:pre-wrap;max-height:140px;overflow:auto;background:var(--code-bg);border:1px solid var(--border2);border-radius:6px;color:var(--muted);font-size:11px;line-height:1.45;} +.mcp-tool-pager{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px;} +.mcp-tool-page-label{color:var(--muted);font-size:11px;min-width:44px;text-align:center;} +.mcp-tool-page-btn{border:1px solid var(--border2);background:var(--code-bg);color:var(--text);border-radius:7px;padding:5px 9px;font-size:11px;font-weight:600;cursor:pointer;} +.mcp-tool-page-btn:hover:not(:disabled){border-color:var(--accent-bg-strong);color:var(--accent-text);} +.mcp-tool-page-btn:disabled{opacity:.45;cursor:not-allowed;} /* Picker grids (theme / skin / font-size): make the card chrome use tokens so all skins flip correctly. */ diff --git a/tests/test_mcp_tools_list_overflow.py b/tests/test_mcp_tools_list_overflow.py new file mode 100644 index 00000000..9e418cd9 --- /dev/null +++ b/tests/test_mcp_tools_list_overflow.py @@ -0,0 +1,90 @@ +"""Regression coverage for large MCP tool inventories in Settings → System.""" + +from pathlib import Path + + +ROOT = Path(__file__).resolve().parents[1] +INDEX_HTML = (ROOT / "static" / "index.html").read_text(encoding="utf-8") +PANELS_JS = (ROOT / "static" / "panels.js").read_text(encoding="utf-8") +STYLE_CSS = (ROOT / "static" / "style.css").read_text(encoding="utf-8") +CHANGELOG = (ROOT / "CHANGELOG.md").read_text(encoding="utf-8") +I18N_JS = (ROOT / "static" / "i18n.js").read_text(encoding="utf-8") + + +def test_mcp_tool_list_has_summary_list_and_pager_mounts(): + assert 'id="mcpToolToolbar"' in INDEX_HTML + assert 'aria-live="polite"' in INDEX_HTML + assert 'id="mcpToolList" class="mcp-tool-list"' in INDEX_HTML + assert 'id="mcpToolPager"' in INDEX_HTML + assert 'aria-label="MCP tools pagination"' in INDEX_HTML + assert 'data-i18n-aria-label="mcp_tools_pagination_label"' in INDEX_HTML + + +def test_mcp_tool_rendering_is_paginated_not_full_list_rendered(): + assert "let _mcpToolsPageSize=5" in PANELS_JS + assert "const MCP_TOOLS_PAGE_SIZE_OPTIONS=[5,10,20,40]" in PANELS_JS + assert "filtered.slice((_mcpToolsPage-1)*_mcpToolsPageSize,_mcpToolsPage*_mcpToolsPageSize)" in PANELS_JS + assert "list.innerHTML=visible.map(tool=>" in PANELS_JS + assert "list.innerHTML=filtered.map(tool=>" not in PANELS_JS + + +def test_mcp_tool_page_size_selector_resets_to_first_page(): + assert "function setMcpToolsPageSize(size){" in PANELS_JS + assert "if(!MCP_TOOLS_PAGE_SIZE_OPTIONS.includes(next)) return;" in PANELS_JS + assert "_mcpToolsPageSize=next;\n _mcpToolsPage=1;" in PANELS_JS + assert "mcp_tools_per_page_aria" in PANELS_JS + + +def test_mcp_tool_search_respects_selected_page_size(): + assert "const filtered=_filterMcpToolsForSearch(tools, query);" in PANELS_JS + assert "const pages=Math.max(1,Math.ceil(filtered.length/_mcpToolsPageSize));" in PANELS_JS + assert "mcp_tools_summary_showing" in PANELS_JS + assert "t('mcp_tools_summary_showing',start,end,filtered,searchNote,totalNote,page,pages)" in PANELS_JS + assert "mcp_tools_summary_no_matches" in PANELS_JS + + +def test_mcp_tool_search_resets_to_first_page_and_page_changes_scroll_top(): + assert "function setMcpToolsPage(page){" in PANELS_JS + assert "function filterMcpTools(){\n _mcpToolsPage=1;" in PANELS_JS + search_block = PANELS_JS.split("function filterMcpTools(){", 1)[1].split("function loadMcpTools(){", 1)[0] + assert "if(list) list.scrollTop=0;" in search_block + + +def test_mcp_tool_empty_state_mentions_inactive_configured_servers(): + assert "let _mcpToolsMeta={}" in PANELS_JS + assert "mcp_tools_inactive_configured_servers" in PANELS_JS + assert "_mcpToolsMeta=r||{};" in PANELS_JS + + +def test_mcp_tool_list_is_bounded_scroll_region_with_pager_chrome(): + assert ".mcp-tool-list{max-height:min(52vh,560px);overflow:auto" in STYLE_CSS + assert "scrollbar-gutter:stable" in STYLE_CSS + assert ".mcp-tool-pager{display:flex" in STYLE_CSS + assert ".mcp-tool-page-btn" in STYLE_CSS + assert ".mcp-tool-page-size" in STYLE_CSS + + +def test_mcp_tool_pagination_strings_are_i18n_backed(): + for key in [ + "mcp_tools_summary_no_matches", + "mcp_tools_summary_none", + "mcp_tools_summary_matching", + "mcp_tools_summary_total_note", + "mcp_tools_summary_showing", + "mcp_tools_page_size_prefix", + "mcp_tools_page_size_suffix", + "mcp_tools_per_page_aria", + "mcp_tools_inactive_configured_servers", + "mcp_tools_pagination_label", + "mcp_tools_previous_page", + "mcp_tools_previous_page_aria", + "mcp_tools_next_page", + "mcp_tools_next_page_aria", + ]: + assert f"{key}:" in I18N_JS + + +def test_changelog_mentions_large_mcp_tool_inventory_fix(): + assert "large MCP tool inventories" in CHANGELOG + assert "5-item default pages" in CHANGELOG + assert "per-page selector up to 40 tools" in CHANGELOG From eead48fc56afb357f9860e852181b881a3ce3849 Mon Sep 17 00:00:00 2001 From: dobby-d-elf Date: Wed, 13 May 2026 16:34:02 -0600 Subject: [PATCH 04/19] Tune version B Activity highlight sweep: widen band to ~20%, slow to 3.5s --- static/style.css | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/static/style.css b/static/style.css index 67b9b6f5..e3b854b0 100644 --- a/static/style.css +++ b/static/style.css @@ -1891,12 +1891,12 @@ body.resizing .sidebar{transition:none!important;} color:var(--muted); } @keyframes _tool-shimmer-sweep{ - 0%{-webkit-mask-position:100% 0;mask-position:100% 0;} - 100%{-webkit-mask-position:-200% 0;mask-position:-200% 0;} + 0%{-webkit-mask-position:150% 0;mask-position:150% 0;} + 100%{-webkit-mask-position:-150% 0;mask-position:-150% 0;} } .tool-call-group[data-live-tool-call-group="1"] .tool-call-group-label::after{ - --activity-sweep-highlight:linear-gradient(90deg,var(--accent) 0%,var(--accent) 45.2%,color-mix(in srgb,var(--accent) 90%,#000) 46.5%,color-mix(in srgb,var(--accent) 90%,#000) 53.5%,var(--accent) 55%,var(--accent) 100%); - --activity-sweep-mask:linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 38%,rgba(0,0,0,.18) 40.8%,rgba(0,0,0,.46) 43.6%,rgba(0,0,0,.72) 46.5%,rgba(0,0,0,.9) 53.5%,rgba(0,0,0,.52) 55.8%,rgba(0,0,0,.28) 58.2%,rgba(0,0,0,.1) 60.4%,rgba(0,0,0,0) 62%,rgba(0,0,0,0) 100%); + --activity-sweep-highlight:linear-gradient(90deg,var(--accent) 0%,var(--accent) 40.4%,color-mix(in srgb,var(--accent) 90%,#000) 43%,color-mix(in srgb,var(--accent) 90%,#000) 57%,var(--accent) 60%,var(--accent) 100%); + --activity-sweep-mask:linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,0) 26%,rgba(0,0,0,.18) 31.6%,rgba(0,0,0,.46) 37.2%,rgba(0,0,0,.72) 43%,rgba(0,0,0,.9) 57%,rgba(0,0,0,.52) 61.6%,rgba(0,0,0,.28) 66.4%,rgba(0,0,0,.1) 70.8%,rgba(0,0,0,0) 74%,rgba(0,0,0,0) 100%); content:attr(data-sweep-label); position:absolute;inset:0; color:var(--accent); @@ -1911,7 +1911,7 @@ body.resizing .sidebar{transition:none!important;} mask-size:250% 100%; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; - animation:_tool-shimmer-sweep 3s cubic-bezier(.45,0,.55,1) infinite; + animation:_tool-shimmer-sweep 3.5s cubic-bezier(.45,0,.55,1) infinite; } @media (prefers-reduced-motion: reduce){ .tool-call-group[data-live-tool-call-group="1"] .tool-call-group-label::after{ From 23cc22d04803e5ab360204cfef26b87ce604e7c4 Mon Sep 17 00:00:00 2001 From: dobby-d-elf Date: Wed, 13 May 2026 16:48:10 -0600 Subject: [PATCH 05/19] Tune Activity sweep duration --- static/style.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/static/style.css b/static/style.css index e3b854b0..e32029f8 100644 --- a/static/style.css +++ b/static/style.css @@ -1911,7 +1911,7 @@ body.resizing .sidebar{transition:none!important;} mask-size:250% 100%; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; - animation:_tool-shimmer-sweep 3.5s cubic-bezier(.45,0,.55,1) infinite; + animation:_tool-shimmer-sweep 3.0s cubic-bezier(.45,0,.55,1) infinite; } @media (prefers-reduced-motion: reduce){ .tool-call-group[data-live-tool-call-group="1"] .tool-call-group-label::after{ From 9b2c402253c3fa7aec88663247010e4c89f6ca8f Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 15:50:48 -0700 Subject: [PATCH 06/19] Add MCP tools overflow PR screenshots --- .../pr-media/2210/after-mcp-tools-paginated.png | Bin 0 -> 39511 bytes .../2210/before-mcp-tools-unbounded.png | Bin 0 -> 39657 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/pr-media/2210/after-mcp-tools-paginated.png create mode 100644 docs/pr-media/2210/before-mcp-tools-unbounded.png diff --git a/docs/pr-media/2210/after-mcp-tools-paginated.png b/docs/pr-media/2210/after-mcp-tools-paginated.png new file mode 100644 index 0000000000000000000000000000000000000000..e27935105a5d03b8b44fb9659ee279fb7dd17aae GIT binary patch literal 39511 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 literal 0 HcmV?d00001 diff --git a/docs/pr-media/2210/before-mcp-tools-unbounded.png b/docs/pr-media/2210/before-mcp-tools-unbounded.png new file mode 100644 index 0000000000000000000000000000000000000000..9123a563cff69e16822ac508370662db6a07e7ea GIT binary patch literal 39657 zcmeFZWpEtNm#$f2S&X)rnVFd_w3sDZ%*-r{nZaUk3oNpj$zqGyVrH_KrEUFYW+U!y z%*^h_-MDch{{5-CI=d>fDl^Z?_dF*fJ}F8gBj6zb0D$~aMnVMuASVC-q8}a-d}d08 z9{eTa=SK-qHIJ<0XJ0i{^A7G8f5?S*3#_Ojkm7mt2bLC{AL+9oi{HCW@b;FLbFv&E z?y2#~76-M=JThgU#k5C_l@JmuG76?%mU$36#;`TapxhwktdTnVv8eK-EHA3r=OxuC zXvpy?bcB48iS}gSr_dzn6#fg53>RZ3`P?>F?yA_+L3BfP;^(YC-@zqarVj&88jL1p zvkBR?U-F##`#Y$#Z53UkB?wInK0ic(P9ct*m*VF%F1QSQzBP*j3HTt~RWJ1r#CAbv zID<{oheeq;^vQkNUUwuglc}{y3!lwx$p;WIO+EGaxZwBq)0$7;!N{)y`LvC;7>K+n zjd|M{H)0!>G4;qfflmKDr^Tz6o6t);ND&a$Y)1nx_e}k5g_$+H$af~DG6v=0QX0}; z>qfUa*DKbHwA;>PIRT+{6_eh(N7SVUfo+`>G6m%vm-TW-9IPXl+$?4x0RX#AE##+~whY^0SUl7tLS;btrHIjV zr1T*+IU~EQYa@-Ow`~wcbt$Z(;i{&lFVd!DC3mYn*UqW|$^n~x?zmDWO}2Z%vF4-w zCB(#UbGkB(o!`v>gq*i-6luI}wQQk`rd=7m8}fc!PJ&uRCc#Et%D9?F<*(v~<6CQtTz3(ZNNLiY?dc}-v zvxq=ZLlR^EB(4!Q<(P(p{z}6a$n}O>J{V>!vyUTlU&?H24!)Ev9FD5W!e9kEL_?7V zPy8BCTqns{MX{cI$bf25F7C78xWTU=+H7#sc1e-^arz#AXrg=&1sDGW>HDYT0Ik?F zYaB9Jef@ex{nszvk9*CgFa5q=a1eQHff(@Q&-NXwXQ_g!we{t_UO#8QX=}90+WGi< z7YCVatIwC0x)9pgJ(ke$SKXczuJkB_JG|0OututSnk6CiEtk(Jta2#DZ@u|hnL)EU z`Y29Wa!pl{rIyD71Z?2bg$v9M>!LvI+E_DNy%fv`K0Qs;2o(IqR)p!46*yE}D4^g; z!P;f!Tj+_P;t)IM(r-f-6waF>HMKOFk%7j>#e*l#rMW6vH=Frc0P!>|ct}4&%8?T&yRU_HvbobZUqrgf{ct;sTtc01 zaEZu>O zEa8a6@*HXrSPaT|Ato?o>ONi6t<1%p(#ATD{C zLy%p$q+JCC&&RlO=4+8|+YFmsp#Dolw=)Rhv(On!g-+GS4?I)JZQZ9#{7}mMJ}vY0 zqGed_I(7^M`__V`C3I`Ar*gm6!~1w`al{i)2f<}B~93duqsNi@H> z`OL=sfZjFaKGH30)NyQmsf2#S85@D2V*b4V2HSWHJ4SQ9-I~ZzrZn;?EsW{6+T_?V zRbloS>w-hN%PiX%6sjGk=Sp0V~|JZJU=LXV!57yhp@Wnp=oX_ z2!Y<)PaiK5zDj*T15#A9R8=>wS)hRcjVdj}gt;XbE&KLSQ!?A_m0z~<~aWP}R?h$yqemdE$}nVg%OG$Ux{+Ssf;Y?Ye9W>)_|Pno8xomGW3 z;=PLmLCTm11mITlh?EVhs)(2}FpXjJRFIRVt)LGvFsV&-rEHfoBtJ5uypCWi>mdXb zOkdFFRH?yvwZP#35ng?}bfY3it?69gr@LbKM~8!Mc($VIo|lDGHb<6sv_fGo>>UuW zI%i-(}9hI+%f z2+X;sxIuA!;V9p@CuUsfu->NzJ9k!NJHg30uNrG#&l3njkwHrV*O7hF-s!nzb^Us~ z&RE1=V=KXhlkl%Lp&1ms*0=VfX^M)=1pKQ9;gBgBpR_gN6|j%X{ULw=q^FKAxqk3z zj$p&5bH}4|@}sr6p0{FVR;}2bGi$%~ydmzbm%%W1RE#d@^*9PDEAGf0MX3I7 zi1NdRR*(oFoUON*b1Hw*w$PWSR55&RE-k6o!44H3&Ig7Fc`9ab=@f4c^JA2l8!YFG~v zCIYOvf6}9^F};IBb3|z=ZMD|O(KR|oOrH@0=Uc)2rS1&}nn?N-+4qbX22JY`QUePX zAr-XP-xxSCBBEnk$kD%AzST?Tr%|;Qg_xA|N`j08m7HlQwg%)tf#feO2Dfvvj$k5i zkrsQsw*9C+qp0`q7D}>Gx=67Qe1wGYImy8{3KtYI6rsWTsmx9v7&NdI(u2-rCH2-0 zZ?XjVxB=rrGYv>-BO|iPrME_(@?&CRMnsegXhlB$yVvnwwBDTh_gWpO*R#MtSmIQ~ z7SeT+-D$wHkeuVBXUZw&I(hYdM*Z>$7b~WYzPct#MGWH{|J12Z$;i}-D|1Pap9I6% z?7VyI>Tw8Y8Uazga`m#|zCj^Bxur$n8{zfY%}NBa2Fm}% z(0?}Mx+Ep=J6GjP{QkAmynRV;8IY;0rBQUwPa8S*6t`pg2e);N?;NAc@r z<#%L&MEt?9y#OwL`_*S0G2ggVh-2+g>P}6=?;Il&w6>eMhkFJ_mV>%PO&ONzJV6?yPW9ZUU_%_gGiyhmukWXmLl%wX%8|QY7ea9_yjCl; zvIE(yhUSuGCp2el{N{J5xf2VRAbqmZ*LU@jetwr(Q&+^MlrIBH;e?|T8_P*j@EZ7e zu4cV`pUuh3ws#Qvpt?(cD=o%hdp1g%G5gl)(-nJ!d3VbM%pgZTZ<1joiFO)hAl4&1GBH zmb^Fbpp2JA)wLk&cYR6-9gG&fyFSrIp7Wf+3(Sz@`mylb_eM5L5Wj&o1UdSbNVI=* z7nI3{%T{ip58fg`4F=SIUKN2)v~WNtjnC`#XWt(7RSgJ$qPYblq{7iV z2@0AGcV0SRWTKaXiL#gw8Sbb8BCiQ60%I%eQU35p%Y`MUfxlHyMq~}-?$xU1xaeeP zc8ZP7KGlR;IW2mQ?Xut8M@u?uIr{7%>4$0_E5o3ed{s6J;lL6F|0~VVwzQ+v z1w2&uG4x*~pY3dG@LXLp*^0AqB^fHDuTdrsTVf~|Yv&Arb(P9m`_m)p!;6+{O5RlW zN4xUqXg6XjmR*6)Lb4gXs>bR&J2CKBM(k_PP-%w1Wz`mdCfPR?J8Hik?1AWUgAII6dJv-_JIW zc;}cA(*Ry2MT~iEyB13oo6tAKDqgZgd_8EZFxeT+o~g)FapF8+JNTU;NDmQ^`rV^e zwWNbI%{Ew5SwrF5XsB~PKWh<2+Y{pELtAhvJPnD67)tGm0+6L4{avCA?W)g|(!}S*LZ@niuY1?cm18x!Xt*%$@;Ye!1i6akCI=0Yq+U@d-uWgB|7p@1W! z<^diEhKJu)LD&VqLd#?k{gNS;9P&l;8c*_0_t1dgHWB*oSWS`(%?DSr@O{DXl&K>h z@X^KK1#wRO*3nAd2Bb{d?mUkskzR^$cVmb$l-Vdy6jkz78eaa+&wYbCpSB7;0!d|>3V9f zSYt;MeuyCpo`8xgoUOzotY1_4R>zSt&(AghK{re8_UPU?%M5&cS&8TH0Ylbzm@K|%DA-4T_f zPn)$fpn?e){50-O?M)nA_vR0b+HJ)CV+!|AjV*(r)<9q1yn+AJNdOz?yE_jtNU68Q z`@T?8d_0Sg(3tF~jT&BrgonVg7{;5y9{=mnCKH_ULFFd~4`g7T1esZ(8Mr)rwKN$z z45TQRl^LZ2i#$9@Y8JznLZ^RzA?4M^i|WIn;&{z(jIGF)5+te;JBJDsS-*u7%V$lc zdMiZglG&tZr-EU~@ZPaGLR@^Ub{0YI8Uw?X2lgLNMWr+t?5UK3YXJ5lV=Y_+2v8n< zUOqcCq~)$c9Cyf3;+SZi2!gK@e2RGYm+tLA>x0sIdOFUY154?f3V}+9LOmA4w>g9y zEP;V}-hKlvG9gaQnt&e@xz--a8Ao)yIFU<9j?5YEssO%=ma3v~V9G&1Fj{JLjz`8H#-; z7#K*_IO;r012ITD>PYb21bO-g1_~!-C@`Fw2^zI$2|Zdku`a^I&dZ5K|7i%G=7PS2fP?T;k{0-ugg42sAhOp;{A`4g1O zcZlH2dd17zJ@su+4DQHwt`VZZZB^2}ban4B%gSQ(w-@vM)0`$P8#25YAYh!E3N0Lh z(U82e#F)^Eju-@vj-)pobV4wni9f$;N=jRp#FyI-7 z)Wr~=I8FtNIri&0bZl_2gb(EVx5Ds!MwsWets(s2vG^uOHFi$#i-Y?U7CiLFk3NwF zP0PK((9za5-_p~=r3T)S8XJEJeHRlKw|4Z8kIIO{V<#&n_EnAUeZ>0^G2;yf9yE9< zGITxO;hf-LXrj1*Jyl3i71>A*w5ILrhpnb{Rz)O_2m*wFVF;#22v$CbNv&ugc!0O- zOFJ)k2>E|rPd79&GV*H4>e)a-jguhTHgMm|XJKV!<$C+TqOD(gvT0kXs7wupAEk!! z8Tp`?qkrIWKkpw`0GJ#Sf%lZXkXu7capZ`T3|5k#B z02dFB2p`ehLPu$#WP}J~04{PQRMcPW-|(c+T?XqO+6|o*2brBYcr^`IPj)N6<-yu!NqGVB>o6P~+NIcTt2w$!x3%N#)-f85j8#go~0NWIwcjA(V`ZKKu%OdgkFRRcr6({4q??z z0Uip`oj?I9cm}Y(J;For+g&>qs=2;r_^aJg&Gl7?z%o_R`A z*LF5Of8P5^;;#y}D5YbSJ*^oPNEPMF=d#}-uejQ0w+EN1Tjl#M{in422XPXy?f-Nd z99jE&d+U~zG`RUPrN?q|xWuVsToAg_tDmylpFU3~hCE*?Fl z0nMDO>KFa2x2-yJluMmGF)ReZ#@Y%mpS=Gt-`-$wWVzcu$i?D2?B&t8GL zS?25HMzB09Y*>X23B>2kZ`Ea4Tl3o9DA?f+j1Dq;=94KE%3?!q;r;xEL|pI2 z&t%BjH=FU4+otbda<(Y+V0Rl*$DvJvmgNdz3F#og?o)=DYw*;2L`MWI<(7r}VpN0r zu8q<^N&C8lhW?!tvloBGnt$=9R~=4U{!Hb^`A)~7*Mqafc8w!@Dauam{CE`KOW_A7 zg8+_@8X?2YdcW&_5OLeJ`;exTLI2}p`D6AZZIV3!`UiLjy)V&dUQN~KVI-jEz8vA# z%V`Y2qx=fB2;2!5?&JKSNK~G;Rt0lkK(6~$#SEd(uNP4RJ4vsWdy^rZ9?dHgY*+KD zYfn4tohSN5+5Vq`y^aS!rrJP||ARgA$-{ucXzm^9!NJ~-oD>tmb_yjVmb>!?h3g|O z&gU@1#5&<0I;1;L_q##uO3a?1;}6J3hKr96xj_KQm@MXahi=9v8WIXV-xXL*ji#dA z5CWL$+ncO|2NN_3S`OEf0VX*^r89the9qRdRE#{`z_4q1Zt@65QrYsG)OQ9t-HHOT z)L5>VGy4(cCEu8u*boSgKt9DoCR zB=_+`%MTGsGgyXPAER5@*^m&rp?XC&sN5{@-==3B7x%N~jCcqlqzc70T<6^)zvFgJ z={9-up$fwdVuwuoGhdb8YeDQMjJ) zXGoR7$6b}YHSUD0j3;PfpegS4v+@PcWoKvS6AUilgWYR!!%D8tv=gbFI4YxGAC^E?sX$Yc%17m0CZvgNGnMMeAaxPvx$Fwc}!!{ zqEj5!O;pq-{}MpqSfrzPeOX)63&dwNQY5`f+v5bha*x~G^-WtfTkXV!0ENY`cYU8t z=AYS>NUDrMyk*j5KLD^wRTqcejJNh zDC4$gh%fPA`7`OZD!P8?o0`^c2Ec9`ylN$b7V)|! zl*BYP&&pRBE!Z)#>omOUQKNG@e;iN8VSohSADFLOf7O=L#ZoSp^_78r=TAQ`!qSeG z2c(xmeE^obzR7m!hSy8&C34{(UK;R!Px2LXU(d~#=1!lDkUZ`|!oR(r&iCYUWxftl zd%LH+*k~RUsTxAcXb9Y@GIE+DCQFP!1vv0vzyjg&uuvW8PB%~0JGCU?xr@)a)D^`) zF7K0a5$^$j#P9eUvURTa%Yf2%h&v(v`TK9&0=kHR0Fk}Taf<+klMZZ_$e!Km`RV!m zT8VdumhZC#QpF6`k6s{{h5IER-xY_i<)kaA3`@Y_+NDmn>iM3?F++jLQS@Vu(PC+s z4WU;MriU2bS18+xy-@QGkn)dZo6`BIr<+ot+q%cPVUvdGg)-M~zpVA;HD!RW;!;sz z;5g8Xbu%C`oI)0PM~H$d5~-36(kMa;Td*L}4LOgff=Zmwr^X8il zJR^JKd@Ow%V-DtfLJ738q1Ao^Aro&h;IB8FJ~W^g zWFRb($iql3PV)guWP%e12`a#Pa1Rbmju?HMkY_Mm7?NcB($fb3h;mT@v>QwZ|Mu4q zh1Y7Mp}5qNngE%c=OLx~wx7a0xD0y4gkBG?e2Le8l7xLLb~Wi`*Oo0`ou&uYM%V@u zz>6a;F1MAijtJ*<}Ob&a49s0?}{AlK`NK8pH-IU)1I3d{-a4oH9eCOx^rmr3$VX{ z*vjBbWezVhc$jXz3q$oN3LyzGcwu$hsYU_~uanWhjmzYojeGZftsD3fYBO@ZMX=#u zQYmPFY2Q|V88W1*b}==2dj7$culeKOJg0rr*6sP&)GH9_lTXiAECt52IPJkmXBy@n| zVpf8W?I{MHSbHiu9Mb*o3j`3B#4*?2GON)pZOZVxLJe;Z5N0VHpH4f z*ewxVV|<%RnsmIH-7J;nQ*I|gHpgdjI?JJ{;zU5C;dvk}_op9U()*XbwS#DZ>u{Ul zq>Z_=cc0ogHji9Je?A#yL=2jX%kQXe5>tsf%slqRu*<(ApzXs&He8eZDkp_5hRQz& z88&cU}kt`}g|kK$rnqV?umVR-+{I+=xL~@`!_xGcqkH#$UVpRKGVYe6FQ?ID0Vqt^-EjAsK=-hG zEwGUWBOQESM66xZ`wrFxre_>z zSfKx5?MkQ6AOb8S4*w-PeqjQAr*q$SCZKl7X#0_LxcTS$; z$P<%n3gy((;F9fi;2gGbjLBgMH1e=3zr3DG=g)9QHBsrUK-BuKP6kJKFtN2YBpwBhkG6RAck#+e;rzC=;pj|*|` z5S*gVtMs)_Tt1?d z@qd2wl}<2Iu#?ozKWOUq^)18-SXy3nkf^JrGSsY1D1Eh^pUp*&D=l2p{(13xx=6Wk zqgUv!X37rszFJ%O+UnBk!|K5>YBO67L@P0tkpn8Pk1}Ks*9VJ`b=Sq>N}L_qI(n)y zXVI!JYz_f>nN`z}fQM!4hV1$}ZJiu8kbszq@?1UlGQ>$^w-wQjJ|2ZF$3dUE2ML{> zT3JaHb#_=cSx0YH7gDs^aqnXl%V=m!(f={SPhtGZ&vSQC*nsc$dG>lR!MVYHeC6*W zj?R*n0>GZGK&(cqmCKBuoaxk*n!y=7 z|FgD;1Q}`WxO=O)4;}OhyOZbPpFe+Wlu7|Ok`NuOGleJ!5BPN)II(?E(v+fs1Of-| z0Bx8cc@>P@;daAYDQ^~78lE#0cT^h*1Dgoro@O6thOY<6TS}IDX-rf_ST(- zX5tta%YMJEuszxg60)+QBSJHQKp?(s)E9@bXEH`cPP8VD+ZJU-56C-$b;fWOLPVu? zeq*qJa~jpPacKDxcA=`ew=?imSSvW}Wq$7i5lBMItL=4OaBEi=wws*AkewcW|D3if zd^N>GLB0GKk%Hs!716p02CV+2Jd!wwbXng=-5PKT@p*~n%j`Mu+#xi2({pl4lB};C zTTDZD!C-7T^F(2sjp82~SN{Pyjv>blfMr_oBR_b8+nL_p-oJk>yjld<*?Uep&`{P= z^07H2!P+F1T=tXX$irB}H-}%Jb4#%*xa#>PjN`PTwhna>tcqH!nSs*NB@u zCb`E`4cRvUb2bRzr{C+I{Nw9CPnQF%LH+KP7}+|1c!mfRiBIlLlj$uj9dfq)8Dlrz z+bhArrwIQJnu%53qB6S!tQM}IvN$Y%1q-EUO<3^Dy#yTyGkv5VOe zquBIAFS%d?WOel$m6v>fcJpY`>Rdj(WDi?TKQ7^qwY~#04{DE#yUU;ER~s`bNP&cw zrt%sI#^Qotw5pZG$+^h^3xm~H6{hpM0J#M8tutYpqsw?}^+*m$&#A!L{*8Tw90nlZ z_}ikboV-2pX^xI;fu6p)a$>fa=-`|ym{2kXhghGc#;$o)0>a&Ut&Tma>iyG4bm+l? zVV%QIOrDbDUms)%~qzm&9Bi`pZfJRWLBJc}zN$6wmz|nF^Y%)M`2P3s-5380f6)`nb-k|JF_;rToWEz zXW@|H7u>eA#)`A<-)D~XU{E?GNOvWf(ieqn>OpBKj2b55Cocq5&n~L9gaKt*)n@LJ zEoum3vEXQKCTf6&kg9e)o#q$}yw>894pQK9q&l8ti<7Q?wY7-#jpxC_b}y z*M}FKyAap%AYn<2SLXV~-b8hBV^ssQMC4 z#gq{y>l2Fb(L1*cdO#cre_D= zvL3UaiHD|m3-PU=BYt_F3Yue4h@^KLOv6I~qNwC*^b~q~t|?0uu$Q*@Z} z!ojRxLR$G!Arz2jN|vS~uWyJ11SFQt{OXQHDa!;zKK~KyVKwmX#FmXjP{m@IFhj*2 z^>%V;u`_Q+A=$5U>AcPV(y)W)5~=YH%JvxrHsHRkr_QRKN`GBO^#ZoF^%zM4_wvAC z9=1Yd*|NFXA+PHCd%+K%*H-3tLFDhv_pM6KapUYb5KOETwAJq)3btZGzro794HTHr z(Z;^SfWoT(oaIU)1%QBfPYn+VGVYlZd<);pl5Rmz9)ol0)THO3d8n6yn!agHZN+5w zcfHCr&P@th9aq`ntx$eG_Nm!F6E@lIDnVaMi>2T{B@s&v?O-!f@JJ8%a6RWYUWEbR zi6tWgp(?C-E-rq_jFV56Yw!DXsPbC5`ddH>5k@Yq4z}rZJ={ z0{|AMaTfw_G@-36p>2PHH71i#S%j0+5a#1y$D~ zKnbJPzqzRwIL(LQv_P0JvMEN1toL#3w^;Mq=HGEW^ga+k!^haUc`xglSL_`CQ7K>1 z=0nEjnxAo06Qd_A{$^7cWo#JnQg#mK=AQ`C(I}NbS-W#Zmr1A&EsT4N9X8DyS;jZI zl>ak`E_(tD5;vNme!{~Ds>tS2i~TWoMSf$Q7&s48G;L79((i9*1qc=3*5}xcmJa=CF654DXXvG>ZREeA(Zv*9|B2S#nOvl zC~%aMU>BKozle2{M4geC|NjhgVZO!L{snXW3+DP4%=Isr z>t8U}zhJI^!Ce1>x&8%n{R`&$-yP;U{|bh1pAn%3o-i;mr>A!aP|Q6%C@@HGTli5! zA|fKH-#)AXK<;?bkV;ZwqLh?gBi{_V9P~ORkk*sW6W{fvv~ga(*N6g^0@mbfP!JnD zDF@7d3v5YkYcasOK*}@|d?5?Vb>NW4%rauc=peEnx055MO#SfUR zEOk4IR5PF7&>z(Z)zCQg0Le>wWv*H|ZJ+$nFWS5pwk#JmK^g+nDTY#0ubUWdjPImzjNi_}^?!dLW0{D+2u zg^NAmTNY#(^l!F1QklBk)s-G01p;eI>V7aNRpfc1cdq!fT(?h~xhJa}x}7np{#k68 zzipx%KD?=#RDl|3AU<`AiaIjTt-7u|<68#lwfeWG9`Lq3ho^j-gFBxU;^jvPvjMdj?aXnHsMsJyIr?q`bC{_j`1Ue%Bkq?d2X(ddnO5e0ncu`ud z6rOQELELsT1P9k)AiJC2$4|LiL++SSI0PsHuxYJi!9;GiM+M6NpXfP56hVOl=g#Fi zWp7p8@9#n&#R{h9Z5>QQtgQ?N^Yw04b3~a_3gW*{VBJ*`fI%T`oazP=-Nt*$O)CpW z`3mOGc1Qc8`kJ5Abj%3AiC`LKCE=j<(S6div#NhcruO2h_S>{*JRSZ>4(vCWDRw&Y zhbdjoYf?icEf`)5^t!(MKVc^0rZl+F-~~#)lxkO#Lv0#4?qfgFOgO*Rp^|?Yb!6_i)UKMEJ)?G$UfdabvT09e99P~c2jC4`I=~W)` zV-qt}zcyqz@URhJ0=pQ_q<5V}SbFlrHm9R)RI%6 z3qQ1H&z*IumiSj>-0a}g`#|YIEm+sTn5kW4Vj~<(aK9D`ufxcw(i~k<8XRfb z>pgVq`ltDr{xEOr9B)~}&3>rJ$0WrFvap#$3+jV??J z%BiaQ#k=oH^A6N>tIYcm$!Hm>Mn{XX%<=G-DyA_b3O;F0TyNArvSCG3hWdHDO$_Ze;P1u2H#PQRj>Q%@ONObx%j|S>>5KIBj7Bvs`FCZ zW8wvb2uxk1eplU)!2x=|S@BYi{r-&sCE~Q2C@%!O+UMNQS`YW-X8Sw`RaK#4uyg&| ziiwdd@_+w-hn#$+EkQ+}C}By0o6kEi{|m?HxC+TVp$uzTG8QA6#&ETaX;BWn|!zDlMOq< zzFZ1yZzx+QJFG~X$x5dHJ@nnpM3L>|c=tA%jNd`r#mm;R(tl8F6^|=u{zEOoPaRJ~ z*yGP?kLQ!kI(ZaEL_je07K{WH6ttl{ulLKJiv?9?;pdstSApio-;+Mo@#9Itw~Ix4 zcZM%!XSp5QuiIv0WTd2DY`_E?s;@8c=?bTsay5fyHt4s0hXJjb8zFZKwZF_8J7&^I ze)EEo1h@Y1$i&ic)6ns&;(jU*bkdR#p4UD+sIJL0%}RRsV3b5Hc<%@U;KpDrp1eXHK@hDG8GKTzUV)srma_IzUntE*IjB zc3J|TJB*^}A@3+mV|bUPN;m&3Wp~Hgbjx!h5 zm_&iWUtY1taELr^s1H~tCL}^>c>;{S%o(e^NEW|N$NCX3qGPzaJ=T0#$hF3<7nzJ&(427dq$vpnWvU zmbT}DBR%gOGr72!BFAlS@)a)gu`&dz-%-QfKttz(a0hE^H$g{Z&}--XfcvxctK7C2(73V@W$^q)nOeVllhrhT&88*r00MV1odz-E$7m zCr93)IFB^UT=Xs6hpSgji1OtN2DEg$;d0Y=%0O}uPvOQ9q!a^Q4=Dxi3wO=Fi{61Ka)YF-&PvlY15O?qG8cQZ*5esv&x`s&3}{`$ja81ugBWab0% zdA(98gpZ*A11e%5wzHa2ht1owH5C$;0} zF{Ql<4>IJg+k?*6D&ba0i20UIL4Iwmr^eS?Vn4%cijhk#8w#;IpTiby>?+%?qM_71 zrbz^Fris-V%h*NO9hS?@)XoB!AKeg`x6a%e1gFN@`6l1A)gDgfmsOw+qgQ=Q#qXWo3Fc3Z%S3D=2(f%a}VB z&uu-t;CS!C5ybZM2PUmFV`3NWOXYPkejgEj+apOh>?B^eFEdYq06KWpbzc00mlsv( zE^=pH?$cN%ycZNy} zk>Iv77&=z$Jm{>`U9#{p_Df!C@bFGi@o?5yLbHa`#5)n@yk|kfjzU+PpCV^iA6qayTs3-&vmSpE>~a062>+h{$ktRYFJrCigda2+1oKO<3Vvl z@R3r8Xv`Yd>Ru` zTF7W4n3F(?FJ!x3=1Vc@@8Fes-vBCtNN4Vb$E@%^8KeT%aQSsQ5kFI+gB z+<+tQXjAmlMsOA^`>!rXRd7NXQQZ6)Dm?Vp?-U&pWQqz3Io3h8F5XmBR0WfcVlpHS z5nsfdkFUV_A^RNxfm`pv(bK>#kjOgKd&ak%K?{T@e8M-hCMp2lU4oFAb_tc}Ftds$TU#snfGw+$6;N9Q zr`s={1|j!1%T8wO-JaD#1VyzVpe0fNHI?er%cVV@Kr|Hr0@~98Sm{#q~TD1Vb9e;OXnC z8y=iI_8Hlx5PX)3!Ab1<3fRoE)YBptvjnE9`5AlT0uh1!)LVtsiMEjNc_l2*=9-t& z4I0X6EV_c#brVgPj312kA^A7`uBT;%R^}c_s zdY%HV&IK|vQn?iLPYyn*I17O*^FJr z5$Uqi&|)+n@UoBlakga$9YyC}-gM`OUPwSHyiaJMcVypvOaguWh0Lp|YHouX7&$@sY^F(6a7vwD7`YPjwG#;0xE66`@@XKd3D)LWB*2@USY@}o^xWKxI}bm_JYJzdikL!D zqDeih`LwSwdKZ~lYe!svE@Q7P_exp5d%01B8yYOD)K)#B#~5E%Gh?RbS+<6vqPgTUm{R7r$E$W`Z#T}0oCO2h^W zNZe=6?U%44FL`Grnp-ubbnX*a9V?WUFe#_U+1uAo-&;3S7^)r%EaSGFLq5P|O@1Xv z8QDMos0Kq<-J2q&EHZRK7n#>ux|Y&Rk%NH_SZ%A%nOe4k96D0 zW}F}-)$k-E!7DT(LI7aIY)&=;uXz9`a zU1G7CR55N3~KP#r@B)`*@ zZd! zrn?(P!Y6M_>U*d{m|ch}(V5Zv9S z$$!qwJ$KHzXY9_sGxbwN)vngHd#~=b`upDRd6OGDyhR&3x4FztY$ma{AxN+()BWfm zkYFD#9WQx2!QK^0b&JR3YNn!m%15c)KfIT$!p-lC!7QV5(|`088E2019TKq0xbr6* zI+Ni4RVEdH0IMVyjh_8pASz*yPE*1@Cg#@qPS|c24N9ISgqeWnVRvCNRGfLNvFWo{t!`MK(=V*)*1ad8SNRBH~K0 zA+QZMp7sq*QAV0zfk2|ec)x^Djl{LI#J@WXNJ?j^tgz>T-HRI3X&{RO>)!eL%dBPy z2o_MVprP z&gUMR;A^WNow4)YG86Cu{!5lTht~1USMF#FP+r7D@U=M61CB2HR=%jx;R%I`vQAbL zxBc*3ODX3#dbNx8BOmUSaH2M>>++f^kJ#-qY%FU>-9@}6X!b;xYGLxR7z(_nr|V)D zLg5>{aMYA%a4;L6{(Q3%=WrWSG2vO!5S}pXxmnN==WjhFmid1gg4H4Y=H0)QOf3#L z)&65(__wpKh;ly7qLL!nV@s~_Fu$}HXh3zn^}cc*I5b)C z`kUyOuuh=nA2z6}wg0gesDl8I0F#qR>h#-}cL)(Zh96S!Up5>&T(#%I>Q0uV1b|gc z+9$v)!MeI*I_Zma3c$#C0bL=q|3z;ws8^`dW0K|N9Z9?+Pt32JM4}5Y8YefP$7yuO z&=Y!LfGu${>RxmkR)|IhTPu%9uA(Es@@Hj5r@e3tx`?xwNU@M+e|`fV{TrtpYY6{} z#EO>)?%k+(L1Iw=!ulCNcn@6D3?LEJC8A19-|h471Hb;uZ(sH1W!PKiRVXJRcgyAo zX!!FMve7h-k#=QZ0qOCSv_l@&JaYa16|oFlOcyrYgR@U$;l{6Qx_i`stE?nIo^rjn z&m(Sk)$!W`DC-4^-xs_W3gjhqmI{Vq?%eK=y5Q)Nq?MASJW)7SGH!sl9=hi0k;*E9 z`hr|Te_sY|`Jx~N!mpsNOz#xYq7RsF_=R7Zz@Q`(^k#*!4 zpiPUwEz3!=U-7}BWS^t>?_fe*0|s+9=RF0>XlN>ZE0q87dms%4o6Kyq|9!L3ta~y0 z*~3U0;kR>V;YXVDWUqIW3b?61wfPF~L(N(tzrS@S=ZnreL!@7CCpO}bz8QWk!wjm- zMd49%%6O;3`050;X~un^h+#!LM?o?-G&FROf{-->pHfR30x6Y8)lDVYOsY7|UUv2J zFb}Pg#{uA^=Au}^ggSRd8LA{uv=rrMA<4jCqTSFG$TW4%# z!Lw2i!aAr{iVx@(C zoDJ%D01xKXb8$6(WY9;w{ENNrdHB7T?PWv4fpkdvVN~5W1fZibSYMOc z$E{U`>2mG>or>jBNm9_$@7~i*Py>?RplYlx5O zBmX{ReLflz+KD2D2GV}Jc5;C?>_|oPlRh6DWiRg-ZF`A%-v((}duvw$0wrkcM08Bo zH}^w9e~a3u5HvM6#7s??hzSk4oCe8je-Vi|?eux?qM~zKjbAQM^GQZj1Io$sxMU~W zymLg7gTwiaIqh^3!YGHW!2S=mO9=NV@1vebilsA0tfvZtAu@@$<|KQOd9Lfq6fOEkeWfRcMtA;@jXsWr4(c(f;}#YS z?_OsbHhqd3}|^dNESf z70fj(rUi(WMa=ll8kF*sDzUZ23q8Jyv^y`WR-SFk?y1VtK+>GQIhzb;CW8c}6r1K~ zlvm;gIXX(HOA3ZeJ3nq@;3**j05k_5T_LGgSm>l=VRJ|CL9!(jin%HXciMF;s6e~# zmje+A1;NX|cIFi?=XG=hhm{Qa3Iq%y^GISc@6-g;tk_^1YP`POf5&eyeSX6$`E^Xj zdX4{ak{T2)_C6BhYZ+JB^px_}=YkC5zG>Io{81+*E8_6N>sg>QWCG4{G1RT@I}1A` zEw@jeCSY(UkWPU2N=p9({MQkg4N&qPM&o1S!XB>wJHNvb7QYSt=8bkQ>jca(bVCFQw)~oXCGP7M zt0v*mv}Ge@O^YQllk0Zj9*vnz;8k36b-Ou2Du37ET^KB1{#kZz@}MOrQzEpW@z0&+ z#AYzwsjLINl_HOn{U zpp6zG=Owl!i+CBZ&D?o)-*pTi)2Jg71_;WNV^k@yzRU_{DdNMS14s$jt1!9n-oHYZ zl1=%g@bT}OxO93TM)LYi+VhxJ@3d?lajaU-O@JWj$vsTY7@pLdmyOUHWV9JMf#3*E zBrxm9$vK|049WLIjNm2=`a4r8Qtkj|DwBU_Dz@Tm+{CD1KKy>nTnmE$BgAzjAM-U! z>D3FUNaz~Y+a3GmLun+Hy|i?c6W3Q|V7Htw)UY=@VnnB#a6;q}5jVPCz$Slk62JCE zi*-6+MKRe&ts%SsMK91LB_!S%(`N=cBpKk5$ZWLe0___U7AHmj5G4>3=zywx^JqKt z0uvn*79~Z$_XY#{p0`{bYx>mAh^&7P5tnVzKdVlP8R1kHc{Af1+S#uD`dvb`JT-tf z;^!xh?tZ@xMtNx?GD=ut+}A#Uw}XWs!kk4*1&pW{i!A465$U z3(|_1aARX*-25FTB1Ai8p>z+GcL^WqRyfCfI`(A(^oJ}!uI?pF6aJsowYlBP71^6> z4sB36KyK9OU%s;-Kz;J2cZ~w#VH#65umG)!8mBN+D3v_E0^oVsJ^&#h1U`xPoKNfa zn46CIE61o|K@MuzeygkJxRjKL8_P<614GE#^c)z`VxYDif;R|VAau9wa3>V_EGB8m zT!&Vszm3E|x`hoCe4L7%d}bgi6wjLsWMOb>694MajVhMvE3NWNga z_oV0&>(qF1tJyz)L?CLD{KbGd8&)_FGtmHyD_GR!8+W#tz`vcSJUUjK<_oTPyF0YF zkPtaP)C;JbFW9gm;-+?~BLlb>fq7-a!ivQO8PK1QULs-qq6*r!hC)9Vrqilv4rJE+V|5h(`dYo5%?XLC5xPoYMfs znUtdV2-;_!kM8Zj9sd*(VB`zTNOyM~QNvhyc`+m6yp}S;I)GwFpxAVF7Ecf;ROmM@ z`uzDb1qE1(XfK=+`UKN|a7~_2V)fVLg4KJ&5125RFf8rup8ynH8Z;H`_9unKsHp0S zij%Q1=7MN1a>AI`C@8VfA*?LFsrO7N9O-djxS@V%$1ult%GDECz<@Bh2z{Z=6v!nY zf*Y;cz)d~e@o1O(Kvk3VcsUujwv}AzH5WZOi52=55KS!)%94U&cgQ=V@(bRtOpZqo z$|Au!lZQE}IrgA%5u%PokZwU=FFS)?fNizVy++tP41Rp<7voGwqVzQ&!{N$D8<~{{ z;J`KcJ8t``rasma;+%>kh$5;Nx`0Bcr z?X7U-I?DZwmCvD_ zogFgv)HHY$cA_FQ^hiNcsU^=gf52yZxS1r)M~#PVj%{Z0LbaLfN7169S^;^=)m`Ys za>vWgA?*Q1ji_#D$bZ!#Nf%AG(-=+&g4y)6Wwe7zbmqEUcAQzZKF8H_MEOY#OO1nA zwY7(re760S4UbmUlWi4;VU0`c>kTv0R(yxRfoNuq^vX>1$}nUpszl#7J)wP83C*Yc)qd$;Hc>NOLe z6YKWTE_D{fR}Nd^Qr;uK3Up#1%|D)gH83o(3d#VzW^@xp;5(Q_AWXW#<+ShEKoWOGJZlA@? zg5Tq)j=u*aiBf8CWa^&TOkkB(oC!@yX21YY@P&2#+T)evLGc3 zA%J%AL)zMmEwR|#%V5Ch)Mm|wj8a+sZ=u7vWim_D7}l#VxM`B#^LSZkL}Tp{G+4jp z%yaL|ywoH^pYiYBg!ZUy_+_8nxmur~|207Fj_5V$^lN%fkxX!Byg3^!77}!T#&Yb? zmcM@Jr;x5fT!GVuFYp2JL}sC_Utjb6M|`s9rvFoXvI5V4;gc1u;B#Y;e+cg}ZMJ_I zaP=wd(NniJ&;(?>PUqMV{1%FyJpl?nr_ncpn1iLqQuK$QEN{ulQU2415x&@d*RuPa zb}B!}`6GkeyY_BCoRL!QW4SwD=GTY$)Jf;(Iy??7_ft1l68gmF{L;-AA?#4ELBEKL z!R|A+Npvt&!i!jEYIO8p#X3*PZSkrNhuSnzxA6DR551vo{2Zvm4X8;4uxs}2cVfq2#+1`N)Svsha5 zOnu}%zq&Ot!U)ixZo`mDbFdGRdS;G>2azVwr$+fY7!djcEV9QvipBA9Jq?*-b?(vh7=p4)Rb9mJk} zf&ms49?{*=tlL^&SMassMbB}PKMWL5;+GSKPiMuYy~EEx&#?*P-_8_s#8>&4H9Ajx zt1wk1bNyb&v)cPD}=!avtoa$(je$(eD7DOkA<$+9f^ zsPzvWPiH(cNYI!C@1#4aYA2Q<3-;5)i;l;FPbFhC>p{B@-k&-6F;CCe^T=qh`<=t| zZ@*b@>y@)!(-pMLUO=s-!-@ItA*no}HH&DJBcKorY@3cnh(cp*c}_NIVbQethz_T% z{944*O%tWGa4#eeM%ZU#^;ziZGY0O_yKg& z9K;9>0)GM&CZE$&;>nUCp-BIvX{)W_pWQ-r{TA2%j7?=*wLZKc=*m>{k61$5!o^QABwTP2>n|Yb`H|(Cc zod|&O-pI&k#^=xez5Ovb=gSup$R54Q(b=WshpPShalTt&Znty07-*1S*Yb+N8A#i2 z1-55;d0MTWT@Syy8t4TW)oyPgdjlri@7d1#^`4UG`ZZKl<7AhQotgfx&ioZCr zdW8`wg^`7yYn#c}K51X| zGn-GgXs|IWxrM4oV43I8kf@OaQ`8!t^P$NE$9`8g_uE7EQwx<5SdERqBs&OU6i$by z+!LA#M{mC68sqIdYp*h3KKrCyI2`3OQG=N=0(0W7aa7g1;KZ9(_%m-ODLTYkQ~5L5 zPA_Lt;i&Xk2Kb7{AHKtZdM=*tON^HH#aT}@uz?qu*s?Z^Pzxg%gVq_exc4an?+e$; zH{*LZ0jO9kDjK{Fpvq$2|3LFhQO+fm{2mT;?B)x7HfI(4s`b{?`E>$iEZ(Wy@GXjMkAPPhCxAn%n637L7mW-* zw03&b$Yzz=x76z!nd~b9oDODrWNW`c2j39Yl97D7-5#nx1WU9`a_(K|xY1FLEEDJ1 zMuPSC!k}d|AhG~nmb7dD{8Q7kSb%Plk!d_1#$U~Hzn+i_PfA<>i(v-fqOv>P^iA#( zuXDO&R^gUv7Q^}jxg6H@i%(#3K5-i6dKkg{pUH-xo-G6*EM?&&c2)zCGDo=76eDEb zq#LA5QbeyaPs+^}R9V@3@2^-aE@ext#<NA1Yab^hUFuI)(JR38xa7 z7M^Yje^dFUT`sl~k5)&JjN*2F-IA7y<)l}9ybfX)!1iiApYWi|lz=($xjTN|9|beZ z-7SuAK5xxspHA3yYRHv&b2A|7Urapjk)+o||NlU*wJG}Je^$L#S=-v(fgD2?|2ZJu zIhV>BoPk?-K6x6K;qfU~v19P@-mT(YSydx>I&!m1znMqV_clA`cDuaNqwn{-D*Eue zN=3yekk8T!f(HdZdtUh^HAb~+SLIyvQ*{bw4EyoUUsQ~vkV02*o%a`#_+Wxo4Ob$z zZBny55K*7DBAIGp1t5kVXQan`yo7y0)&x?e0t%9A(ya1RsL8D2%F?)RsLAt4ZdbaaBYo=7DthrGHO*%&I

_zAib3JpznuTX)?CSfKRFP{9Ynk9ma6A!RPf@yz&Knk)xFgU zqYHFCo0J@V9nOXcl2KG>yuJa_MG`|IzL`VR##67uKwoT7yA~`&)KzH zCOb@nzY%Qz9S|oqkU)o(6yA~y$WhAN8V?C@_s&Q1^z9%6FmXU)6^YyImdD3dxM{o# z;F^wG0qA{d&!-0FmW5P%d%zV31Te0kpvt$Hmc6EK{``RrA8k6H7%XI~AtVSCGk>gm0+VR7Gg{cR$QHCN8S4`l( zgt?&MVzkhsW8k4vp##3FSO4W;(45#g1M#u{>nUC>0zZYf9?495NJ)lYFvpC4HtyCj zY`4jz>S&juylu4M2W7KJxi$T;7I6P**Rt+xYM@XsXusS8l7C6{SvI0^;O)?gT4k=Z zI(@Y9^z-WU;DpLn{9>uMkWR2Sf3I4_{)$u)H&rF&=azC3`g)BP&ph`X-tgeP-T);r zi9HRA;lpE?jSsP7nPhwcwH&woG#6oWej!&u4CSv!nb4f|+b5cnOtz@MVHNsqj zEXS_RYyVR7^QU3WwN0o`P8(NwV%H4SFD8mhbpM&PVBZ7098Jpq03;Pi#HRqrWR9S& z{7!y}rysGWh;h}kp^WH$2gH^7p*E@@$rQCJn>oP^gJudO(ie-RsE;Zu@rqSW*jx{o zAzyJJ`j+>tWz}g+Kap?v_J&v;`6uTr+5LTak8yHZ5AVD!;+`JaQ=Fsv{;>I^Pz%i5j zWZPiiE)w6UzRt{pMGM%(G}H@PTk$MgWJIAVWNn=DgW|Lq@Ld*$T&a}?UnX7O6_g8< z3Z<~h38^oyYl-cgew6F#ft8RzLb67^6}6*Fugotii;I&rX>h}PCtWMMxwwVhv%BVy zz$FVD(xAmF-NMz74*H0>fq`QrAi8Zx^8YykRZ`o3F9H=vEunGy&}~LU+ttWR%c`!^ zO&EBL3YkM0S_D(<9o?U(ZKImV>Q>l(o|4sZxL>{oEl`SBy(%W3^`x)8ljf( zXAWvEz<>h<5{vy*m8c)tr=@@rUuoN1xx+c8thX-)RB8>T88(Q!{ zAWF5OkRT!=RZb}Xwi9VO;-)KKx+E;@0&4y2VPe{}>&-vTOCz2{f@2oDzQ@9y)`RSS zu*xvu=3k;j=N@4eQ=T#nZSe)0D6VdEZ^K!(Cz`=1n)&q;jz(*Odi$S6Rc@c$^f2MX z=|_Oa&go^QyNhsmKvH^c0xqpyu^~R%TfXxvT%bQR?96&=(F5j(o@w_ZuBk1GYG2FE z-DU}QUbjRybnvR>wEgCO3)sFQd@~CXf9EK?)Dkew8H>NDgfzfnMnjZQ=xh3OMr2B5 z`{M#Wk@UdUoeqU;Las`oGq>&6GkviJe1f#Hb4K(W{kVPoO|iS1y_BMOIQ%G}Yryk6%%M)IjyguM723!EbpAlJy{v za|5@Q$OqiOSN>6HuY0O=&}6gV;O-!$Pshg%9)%m@;L=*GN;<0I3_Rk5`E7rp zW`q?Sx46X~RV#+!TY`BF64g5rD4X0Y$(1GeZ_29Z7XLR{Rat^V`k`x*+H^ATRsK9k*!n&jr`)q}=YL(fPY8hlLYCx6$=4d-FnuGbDUYhke_q4aL?wJXS#B2+yx^ zzi)>V?DgLwQE{wP%B+8I`G!0&eaL7!R7N$gDd$?oRL++TgYYrBFy<{^u={*kV{ys! z;fzCoyL1^v%@E#EUG`^yHPLCiz(|T7oA}sV({WNadoZbzz+zm$9w|+ zt(g#}o>#S^no`E{lzlE*D$h$E?B7>eS^rC3N&3ii72zu|YR-A$5{SGc^E&+hvkWQR zi?7XpK19zhStwKgu+VJVIfpEYsQ&f1k@wCWKLrTj%sKjT-EMJJ|9!<(D~K<7uYZcG z{wc2dr?~2$;;Mg&tNtmj`lq<+pW>>2imU!#5Lf-zZq!TD{DkE3=Ht1d&;kB~-E~th z1psIT=4|*#A&fc=fcxG$_}xf$+m_?R#Kgz+SLHK1r#FCQ^djGjgl|l!=U;55yA4nK z`T)2}bY22ip)v~#3oxG?S8#hL#QazOj`mBP9w#CWSi;7g86S_KM|t`RwL<-M8^nDa zSMR051qj*cH2r}AEZLTBMS?26PW?A3 zb+7pjbM5>VkjGI0KG@pYFSUe#oC+uyT=!zbzFvE2;(shC{Fmu+OmrJr-`vF=V4Rcw z)XJ$hlJ#7n!)o*Q9Gi7C`T(rwGwwWPrLa(b+nj-xa1dz{R*t_34G(!ni-fa2t z-L&&qoiojJtAN3LPwnlTlB_f!5SZSqd$7^(afGLp-+r}*)3sD5BT?uxPU}Ot-Sbt3 z9*O(Tr5ma>c&L?CZ-mEHtSX*Q$xYuW{@}f4tB14c+MXGspXiJKb!*GFXMbr6XN@JE zntVw{5U8w_`{c^bjXn|JD?CFJ*WXEfv+OC)CpDWWN3;GtrWRZDbjicC^Vz?IzRaia z$T5TUa`pYQPJO5Con<7OC>@gBofY~H(+=BuC|OmzF2B#& zIm#%izb!>MyJVCzvXTOzyb9M$pM+I$~tu`%!l^n~)Q zw?}xWeli9-vFx$;SK*qn6SN)$N%9*+@j!u9v{IXJ%-_^MBposD;Xg9$a?CB)&e^Ej z#A$jWjZ-Qx9@yq+-ULaAJ9lH+hc!ij`eRbYr<@XYP|?JDPCe}LsG7){1rSzAjIygg z&tLd-ksuE7wjSS~X6$^c2y>Vv1&@_x5XaIal{H~~rpRpwQEY|hSeWl?^IWdpC~7+> zAnvN^mVFm4J-SO%&Zf1r*wnfx0u=*)fA0x>{Q>VF^KKh%BoIUuoRbOFnq3E&wjFI# zY(2?wQ+?SV&9J9au&%|yHnebFoo9e5M$NL5(AmdZRRPT}Px^N8-t-re*-vwDco2z# z)YI+`=Esa*I}FR z_;~m28g>_ZU54S#J8FZI=jG_M75cmNPPty;mB&^ByLfvysh?rTj`nI%FzKrRJokvQ*!=g9*s0LAQCMfv$@|vLiqekY%R`|mrIDkez7W&n(HQCYy z)yAer^hvl0TxHA?G&y^8xY|2WFr5Dh-6Sslp+yx5ZHdImLtPdAzz! z>&uT(nEJ-LIavwU9R5&W`S<{ZzVr6`lu$1WpK$JkmYQuo?#(i|r9#67Vsa*Krf;>( zy)3U9yklaq9DG*IZ2z`=`Av~||1PwX$--@eh}({fFC|PiX5BH!tZII=cBXGlOYQl! z;M^6_L-MF4O90#CjE|H&$o!r_W*DB99!t>C^H*zc*7O1wF%~~O08k3&3Xj;`sQBupcfBj&g=%sJeAL>>DE<1x&udE4@-O>*IM!kDC{(4 zZ&sg3<8<06d9JNrN!3WREi}(gyq@-i+Nw1^y5eGJn``y9xFgvAvjwi;f@AiQO}`Xr z;0`s>8Ubk?B2;}seAtcst@rF)rqY<=Mm2q^jYG(`&!cOGyyRZTDWpckyWsdstl=PR zZ@YkHSJSNbM-N9`Epho9rq>etsX?zrBb9JhveHDYoxC!_TD_&drioqJPPc_AR{NB{ z5%moDF?V^Tpte_q=EwI|So<*|CB?GnoRKtJ=3E%pF4!=%II-~i;+pKUyI*#K7z{2L znO5F(v?33zeB7-Ek7ebvu$xijRXmhDI9)vV_=)udBGe!s;ykbLkn!Wsp8dVH2N%c3r7FfqSb zO~C7`d81+CgX4xhTqS80Tdk0|#t)53VDVe^ith}N=3im?8!TLeLtMW~X*ej0^~ZO& zslAo4=j~fv^`CNM(jL{l3e5(-?t53*8)Ak82Mu zqFTSeFZ{zYk$&npW#$H|K_llAm{$9QBBc$VizZi^=22#ksbVo zs8WsdzSP@I91TrnSiowFc++YvN(~-nWKK|}<533pEtVh& z5LVlxSR*oM4a(3cgtLO{E-GJ{R44@Daz7}3mRZ=%Yv~J93vSX$iZpfF5o$SbyNDBR znx5+~G&d90axyBd@+0$dHFKq7S=}YT<<6TuvJp5kxgCX#lpX1}KAifJ>`72B;-_Xt z4cph3ofHTkwxrtloG1tL86+5`t0_TXEj@+GQKz0g1Yu=kwK47a^>82axm$k9yP+Q! zgOvlWYG>9Xpvd!Tygo6x?CG1F+a15a^ewhMIg=Y(CU%Sg;Ysh zppKLJKgGsxErVd;WkabttMEYECfY-quSrFqdD$8@LSugs!=Jze8g8beR-vF~*a*A= z^_hoy5csHdt7m3n8sZB|DzNqFMv*?EoBwi}4$;@MSA_|Wx$V5)8>FuW;q`VXc}v59 z2pc(ZJgRz3P+mz|axqL&{4jgf1AY_pI$LthKkgMsR5qZnD_BrB+H?upWg|7Dz6iYb zgOV00M^F$nud85NGY&uEZ4UyW>jaKv3bE6!KVFKXRs9}v*0)p~qV1AbopBF$`6>g4 z3{wefLeDk5&OYyw=D?Oxb+4Y&sfu?BFM=(YftU4jNf^c-p9qDQt7;VT9WC|P>1P0e z&~y$q+4p<lNQ1eV>VpF+8x2cQ*Sf2OS#s9HZXOi2H4#!`pOp-^M>N_t$uYPdZlW zjxRk+23MQrYXlxHt%&@iK6qUaXx=*Mu$wwb+lGLhyie3iV;m`om3jmmkO-(#iHPRSlA=Wr?EJ<1bkZ^4WeXUZM$qFK&2FwU-(xV+d}!NH zO5So+Rw)Q+$fK19rLj%B1c5^2o`nI@m(8@_^~ar}kKW7d&ZqN)^gS?HJ_#;0 zxjT<5X&SX1HP`YB%V$U6%nQ~j264+bdfLY=l*RcnJE$zwUZB$M?+Z~syC#b3?$<4w z=ui;m54x7Z3q7+MgKLIw?M4i?FB1>pb#Radm6nL=n0vnT4ZaU+YTs~_b`7T<5cGjgzWPYgoX4hF&CCXY1Ki~_LKg&3l>dtu#UIrxl`y-nuUd!Z% zbO){-Rx`JmrP3h2p1F8i?vVFXnsvg#v`WVB@Fv;{INOHuLFzv97$3{-WR6rH z4BUxHBD)<$wCT$n7A&&yc6{qhd^OY6MEDKn_P3%ya3l8xHe}?~S`Z#-?85h$F?a9n zG{~{gl|Y|Auqka8m#jqrX+y-p!vUu-R@Dks30w-0e^TElHsq>t2x~0gmI>KVedKd> zu|3tRVAw+*#Rf%L%4*F|PhV3gzqa|hKU0nl7^Bu9f1&r=pvgnH5|bSrZ!kzGsLb{OIjfd zPK3mvrBHNqWWr@RaRzR&GSVli2x+6UH#YuG2$!JsXQ5bCj4ct#jG^X|bMDgz|8$+B z5o}!41EcIx$S zJu_Ah7A;3^bQ;I0TkTMLQo_#fc>3IBk{{@IjHC7JiXY>6Q&|a%$NYS5+|T1hdCU1)uet@Vil-ay+k4L*gGd0!!p%1C$lh!b@T#|1-y4Bx;kNgF9iea9sW zg&Kbj8(Abk0D;&noQ?1PJk_oos6jt2)xq1&FP~-jl_Tnt@%omfs)0lYm0)7@! z^Akpy%?M2*nr+C%Z!w``8PHd^);u=*MAW}qdo>M;0&g6a`I$*bD16S$s%P(`qglMa ze<}#g+gTCrYs+?Dy;DIvv=eY^3m_5cswa=VC|toQ2FRYQW}5Q?{A^58PL-9*pES$g zc5*kCbm)&NR~=v2dHYwW*1Oh{QbvUs)pdY=tds5)=Na_7~0uU|P_ z^7a*+{fKjV)Ws<1_;bNu@8oa`opl5ntY>{+sM0R4azCxWdm^>AEY^GtQ&ZOT(DryA zUtTjR=X;hYvFVp7in}t!-txo;--VVw=Tjeo z?4n2Y@ovj>HBIZgfqsxwT-SAQ=jjGh>%*DVVWm~-#z!CeD@uP?wJhs0y09YfvYna3 zNg3`9k0Yn5-m;1qzHke zzV=AS$Rq;3O(8^em851=MHKI4>K!f3!$Tk<2IN4W~?Okkea9va6Pt zc%QhkS%dhp`X+!h%a#&2Cc^qR3S`v3htK?2x%zUN|8fx|FrTt4TmL>14EK-L76t|$ zN=a!#^~BN?pNOi3zU&a5`bHGn@ZqPv!w1oSy_ytQD)sd@z#@gEmJHsA=)c>U1?G-z z^jfxW^cLajy!m@lUDL?OqChISYVp_vQPJ|IKLann)~nOXIY^a=%1##VI1*@et&>ZX zEZDW_k0!?7m1lzH;-A{DLPDN{rjFO*OyUjbnW|O){)|n^c&2LfS1W_hz74B4dnHs= zRR&eJ?2eg1e_LROkV9m8ZdFzFd^@Ekm*Q77Y+haVLSHrVK3R_j0&Qr&PGDsCE_s;b|t;YJ6tH*Q8f7brCa<`QrMzMj2`}sQ@A)N_?(Fh cE^R+UwW!mhQ<8p{1p$AbMP)_6Li&OK3qU7m4gdfE literal 0 HcmV?d00001 From cfc0f68d23e07064d339afd3648c9982f9e40d6c Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Tue, 12 May 2026 22:45:45 -0700 Subject: [PATCH 07/19] fix: show update whats-new links for webui and agent --- api/routes.py | 4 + api/updates.py | 12 ++ docs/images/update-banner-whats-new-after.png | Bin 0 -> 32865 bytes .../images/update-banner-whats-new-before.png | Bin 0 -> 32321 bytes static/index.html | 2 +- static/panels.js | 1 + static/ui.js | 97 ++++++++++---- tests/test_issue1579_whats_new_link_404.py | 44 +++---- tests/test_update_banner_fixes.py | 122 ++++++++++++++++++ 9 files changed, 235 insertions(+), 47 deletions(-) create mode 100644 docs/images/update-banner-whats-new-after.png create mode 100644 docs/images/update-banner-whats-new-before.png diff --git a/api/routes.py b/api/routes.py index 765857ca..70a25fcc 100644 --- a/api/routes.py +++ b/api/routes.py @@ -3718,6 +3718,8 @@ def handle_get(handler, parsed) -> bool: "current_sha": "abc1234", "latest_sha": "def5678", "branch": "master", + "repo_url": "https://github.com/nesquena/hermes-webui", + "compare_url": "https://github.com/nesquena/hermes-webui/compare/abc1234...def5678", }, "agent": { "name": "agent", @@ -3725,6 +3727,8 @@ def handle_get(handler, parsed) -> bool: "current_sha": "aaa0001", "latest_sha": "bbb0002", "branch": "master", + "repo_url": "https://github.com/NousResearch/hermes-agent", + "compare_url": "https://github.com/NousResearch/hermes-agent/compare/aaa0001...bbb0002", }, "checked_at": 0, }, diff --git a/api/updates.py b/api/updates.py index e3e025c2..c6b619cb 100644 --- a/api/updates.py +++ b/api/updates.py @@ -12,6 +12,7 @@ import subprocess import threading import time from pathlib import Path +from urllib.parse import urlparse from api.config import REPO_ROOT, STREAMS, STREAMS_LOCK @@ -169,6 +170,16 @@ def _normalize_remote_url(remote_url): return remote_url.rstrip('/') +def _build_compare_url(repo_url, current_sha, latest_sha): + """Return a safe browser compare URL, or None when any piece is missing.""" + if not (repo_url and current_sha and latest_sha): + return None + parsed = urlparse(repo_url) + if parsed.scheme not in ('http', 'https') or not parsed.netloc: + return None + return f"{repo_url}/compare/{current_sha}...{latest_sha}" + + def _split_remote_ref(ref): """Split 'origin/branch-name' into ('origin', 'branch-name'). @@ -262,6 +273,7 @@ def _check_repo(path, name): 'latest_sha': latest, 'branch': compare_ref, 'repo_url': remote_url, + 'compare_url': _build_compare_url(remote_url, current, latest), } diff --git a/docs/images/update-banner-whats-new-after.png b/docs/images/update-banner-whats-new-after.png new file mode 100644 index 0000000000000000000000000000000000000000..7b0469f9129bd0c19f926512cab851abf3826ad4 GIT binary patch literal 32865 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 Q01zT8sr0E*{Bz*{19(VSj{pDw literal 0 HcmV?d00001 diff --git a/docs/images/update-banner-whats-new-before.png b/docs/images/update-banner-whats-new-before.png new file mode 100644 index 0000000000000000000000000000000000000000..1940cfce9ac420ea82d87e75608200c5854ed899 GIT binary patch literal 32321 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 literal 0 HcmV?d00001 diff --git a/static/index.html b/static/index.html index 8a530d16..6f8b22a6 100644 --- a/static/index.html +++ b/static/index.html @@ -342,7 +342,7 @@

diff --git a/static/panels.js b/static/panels.js index d942fac0..62b91aab 100644 --- a/static/panels.js +++ b/static/panels.js @@ -5996,6 +5996,7 @@ async function checkUpdatesNow(){ if(typeof _showUpdateBanner==='function') _showUpdateBanner(data); } else { if(status){status.textContent=t('settings_up_to_date');status.style.color='var(--success)';} + if(typeof _showUpdateBanner==='function') _showUpdateBanner(data); } } } catch(e){ diff --git a/static/ui.js b/static/ui.js index d0f27aa8..076ec07b 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3878,38 +3878,91 @@ function _formatUpdateTargetStatus(label,info){ const branch=info.branch?` (${info.branch})`:''; return `${label}${branch}: ${info.behind} update${info.behind>1?'s':''}`; } +function _isSafeUpdateCompareUrl(url){ + if(!url||!/^https?:\/\//i.test(url)) return false; + try{ + const parsed=new URL(url); + return parsed.protocol==='https:'||parsed.protocol==='http:'; + }catch(e){ + return false; + } +} +function _updateCompareUrl(info){ + if(!info) return null; + const compareUrl=info.compare_url||null; + if(compareUrl) return _isSafeUpdateCompareUrl(compareUrl)?compareUrl:null; + const repo_url=info.repo_url; + const currentSha=info.current_sha; + const latestSha=info.latest_sha; + if(!(repo_url&¤tSha&&latestSha)) return null; + const fallbackUrl=repo_url+'/compare/'+currentSha+'...'+latestSha; + return _isSafeUpdateCompareUrl(fallbackUrl)?fallbackUrl:null; +} +function _updateWhatsNewTargets(data){ + const targets=[ + {key:'webui',label:'WebUI',info:data&&data.webui}, + {key:'agent',label:'Agent',info:data&&data.agent}, + ]; + return targets.map((target)=>({ + key:target.key, + label:target.label, + info:target.info, + url:_updateCompareUrl(target.info), + })).filter((target)=>target.info&&target.info.behind>0&&target.url); +} +function _renderUpdateWhatsNewLinks(data){ + const container=$('updateWhatsNewLinks'); + if(!container) return; + container.replaceChildren(); + const targets=_updateWhatsNewTargets(data); + if(!targets.length){ + container.style.display='none'; + return; + } + container.style.display='block'; + if(targets.length===1){ + const target=targets[0]; + const link=document.createElement('a'); + link.href=target.url; + link.target='_blank'; + link.rel='noopener'; + link.style.color='var(--accent)'; + link.style.textDecoration='underline'; + link.textContent="What's new in "+target.label+'?'; + container.appendChild(link); + return; + } + container.appendChild(document.createTextNode("What's new: ")); + targets.forEach((target,idx)=>{ + if(idx>0) container.appendChild(document.createTextNode(' \u00b7 ')); + const link=document.createElement('a'); + link.href=target.url; + link.target='_blank'; + link.rel='noopener'; + link.style.color='var(--accent)'; + link.style.textDecoration='underline'; + link.textContent=target.label; + container.appendChild(link); + }); +} function _showUpdateBanner(data){ const parts=[]; const webuiPart=_formatUpdateTargetStatus('WebUI',data.webui); const agentPart=_formatUpdateTargetStatus('Agent',data.agent); if(webuiPart) parts.push(webuiPart); if(agentPart) parts.push(agentPart); - if(!parts.length)return; + window._updateData=data; + if(!parts.length){ + _renderUpdateWhatsNewLinks(data); + const staleBanner=$('updateBanner'); + if(staleBanner) staleBanner.classList.remove('visible'); + return; + } const msg=$('updateMsg'); if(msg) msg.textContent='\u2B06 '+parts.join(', ')+' available'; const banner=$('updateBanner'); if(banner) banner.classList.add('visible'); - window._updateData=data; - // Wire up "What's new?" link. - // - // Reset display:none + clear the href on every render — otherwise a stale - // link from a prior update banner can stay visible after we've moved past - // a state where the new payload no longer carries usable SHAs (#1579 case - // when the local HEAD diverges from upstream and the compare URL would 404). - const link=$('updateWhatsNew'); - if(link){ - link.style.display='none'; - link.removeAttribute('href'); - if(data.webui){ - const repoUrl=data.webui.repo_url; - const curSha=data.webui.current_sha; - const newSha=data.webui.latest_sha; - if(repoUrl && curSha && newSha){ - link.href=repoUrl+'/compare/'+curSha+'...'+newSha; - link.style.display='inline'; - } - } - } + _renderUpdateWhatsNewLinks(data); } function dismissUpdate(){ const b=$('updateBanner');if(b)b.classList.remove('visible'); diff --git a/tests/test_issue1579_whats_new_link_404.py b/tests/test_issue1579_whats_new_link_404.py index 6f8bb7db..9b851ac2 100644 --- a/tests/test_issue1579_whats_new_link_404.py +++ b/tests/test_issue1579_whats_new_link_404.py @@ -187,39 +187,35 @@ def _read_ui_js(): return (REPO_ROOT / 'static' / 'ui.js').read_text(encoding='utf-8') -def test_whats_new_link_resets_display_and_href_on_every_render(): +def test_whats_new_link_resets_display_and_contents_on_every_render(): """Without reset, a stale link from a prior banner can stay visible after a re-render where the new payload has current_sha=None. """ src = _read_ui_js() - # Find the "What's new" wiring block (~50-line window) - idx = src.find("Wire up \"What's new?\" link") - assert idx != -1, "What's-new link wiring block not found" - block = src[idx:idx + 800] + idx = src.find("function _renderUpdateWhatsNewLinks(data)") + assert idx != -1, "What's-new link renderer not found" + block = src[idx:idx + 1200] - # Reset must happen BEFORE the conditional href set - reset_idx = block.find("style.display='none'") - set_idx = block.find("style.display='inline'") - href_clear_idx = block.find("removeAttribute('href')") - href_set_idx = block.find("link.href=repoUrl") + clear_idx = block.find("container.replaceChildren()") + hide_idx = block.find("container.style.display='none'") + show_idx = block.find("container.style.display='block'") - assert reset_idx != -1, "Missing display='none' reset on every render" - assert href_clear_idx != -1, "Missing removeAttribute('href') reset on every render" - assert reset_idx < set_idx, "display reset must precede inline set" - assert href_clear_idx < href_set_idx, "href clear must precede href assignment" + assert clear_idx != -1, "Missing container contents reset on every render" + assert hide_idx != -1, "Missing display='none' reset when no safe links exist" + assert clear_idx < show_idx, "contents reset must precede link rendering" + assert hide_idx < show_idx, "hidden state must be handled before visible rendering" -def test_whats_new_link_suppressed_when_curSha_falsy(): - """The conditional must guard on all three of repoUrl/curSha/newSha.""" +def test_whats_new_link_suppressed_when_current_sha_falsy(): + """The legacy fallback must guard on all three of repo_url/current_sha/latest_sha.""" src = _read_ui_js() - idx = src.find("Wire up \"What's new?\" link") - block = src[idx:idx + 800] - # Match "if(repoUrl && curSha && newSha)" with arbitrary whitespace - pattern = re.compile(r'if\s*\(\s*repoUrl\s*&&\s*curSha\s*&&\s*newSha\s*\)') - assert pattern.search(block), ( - "Link must require all three of repoUrl, curSha, newSha to be truthy. " - "If any is null/empty, link stays display:none." - ) + idx = src.find("function _updateCompareUrl(info)") + assert idx != -1, "Compare URL helper not found" + block = src[idx:idx + 500] + compact = re.sub(r"\s+", "", block) + assert "if(!(repo_url&¤tSha&&latestSha))returnnull;" in compact + assert "constfallbackUrl=repo_url+'/compare/'+currentSha+'...'+latestSha;" in compact + assert "return_isSafeUpdateCompareUrl(fallbackUrl)?fallbackUrl:null;" in compact # ── 3. End-to-end: simulate the exact reporter URL shape ── diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index 5eaee61e..274b7af4 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -29,6 +29,81 @@ def read(rel): # ── api/updates.py ──────────────────────────────────────────────────────────── class TestUpdateChecker: + def test_build_compare_url_requires_all_pieces(self): + import api.updates as upd + + assert upd._build_compare_url( + 'https://github.com/nesquena/hermes-webui', 'abc1234', 'def5678' + ) == 'https://github.com/nesquena/hermes-webui/compare/abc1234...def5678' + assert upd._build_compare_url(None, 'abc1234', 'def5678') is None + assert upd._build_compare_url('https://github.com/nesquena/hermes-webui', None, 'def5678') is None + assert upd._build_compare_url('https://github.com/nesquena/hermes-webui', 'abc1234', None) is None + + def test_build_compare_url_rejects_unsafe_remote_urls(self): + import api.updates as upd + + assert upd._build_compare_url('javascript:alert(1)', 'abc1234', 'def5678') is None + assert upd._build_compare_url('file:///tmp/hermes-webui', 'abc1234', 'def5678') is None + assert upd._build_compare_url('https:github.com/nesquena/hermes-webui', 'abc1234', 'def5678') is None + assert upd._build_compare_url('https://github.com/nesquena/hermes-webui', 'abc1234', 'def5678') + + def test_check_repo_includes_compare_url_from_normalized_remote_and_merge_base(self, tmp_path, monkeypatch): + import api.updates as upd + + (tmp_path / '.git').mkdir() + + def fake_run(args, cwd, timeout=10): + if args[0] == 'fetch': + return '', True + if args[:2] == ['rev-parse', '--abbrev-ref']: + return 'origin/master', True + if args[:2] == ['rev-list', '--count']: + return '2', True + if args[0] == 'merge-base': + return 'abcdef1234567890', True + if args[:3] == ['rev-parse', '--short', 'abcdef1234567890']: + return 'abcdef1', True + if args[:3] == ['rev-parse', '--short', 'origin/master']: + return 'def5678', True + if args[:2] == ['remote', 'get-url']: + return 'git@github.com:NousResearch/hermes-agent.git', True + return '', True + + monkeypatch.setattr(upd, '_run_git', fake_run) + result = upd._check_repo(tmp_path, 'agent') + + assert result['repo_url'] == 'https://github.com/NousResearch/hermes-agent' + assert result['current_sha'] == 'abcdef1' + assert result['latest_sha'] == 'def5678' + assert result['compare_url'] == 'https://github.com/NousResearch/hermes-agent/compare/abcdef1...def5678' + + def test_check_repo_omits_compare_url_when_merge_base_missing(self, tmp_path, monkeypatch): + import api.updates as upd + + (tmp_path / '.git').mkdir() + + def fake_run(args, cwd, timeout=10): + if args[0] == 'fetch': + return '', True + if args[:2] == ['rev-parse', '--abbrev-ref']: + return 'origin/master', True + if args[:2] == ['rev-list', '--count']: + return '2', True + if args[0] == 'merge-base': + return 'fatal: no merge base', False + if args[:3] == ['rev-parse', '--short', 'origin/master']: + return 'def5678', True + if args[:2] == ['remote', 'get-url']: + return 'https://github.com/nesquena/hermes-webui.git', True + return '', True + + monkeypatch.setattr(upd, '_run_git', fake_run) + result = upd._check_repo(tmp_path, 'webui') + + assert result['current_sha'] is None + assert result['latest_sha'] == 'def5678' + assert result['compare_url'] is None + def test_repo_url_strips_only_dot_git_suffix(self, tmp_path, monkeypatch): import api.updates as upd @@ -603,6 +678,53 @@ class TestSequentialUpdateRestartCoordination: ) + +class TestUpdateCompareSource: + def test_simulated_update_check_payload_includes_both_safe_compare_urls(self): + src = read('api/routes.py') + assert '"repo_url": "https://github.com/nesquena/hermes-webui"' in src + assert '"compare_url": "https://github.com/nesquena/hermes-webui/compare/abc1234...def5678"' in src + assert '"repo_url": "https://github.com/NousResearch/hermes-agent"' in src + assert '"compare_url": "https://github.com/NousResearch/hermes-agent/compare/aaa0001...bbb0002"' in src + + def test_update_banner_html_uses_multi_target_links_container(self): + src = read('static/index.html') + assert 'id="updateWhatsNewLinks"' in src + assert 'id="updateWhatsNew"' not in src + + def test_update_banner_frontend_uses_data_driven_compare_helpers(self): + src = read('static/ui.js') + assert 'function _isSafeUpdateCompareUrl(url)' in src + assert 'function _updateCompareUrl(info)' in src + assert 'function _updateWhatsNewTargets(data)' in src + assert 'function _renderUpdateWhatsNewLinks(data)' in src + assert "$('updateWhatsNewLinks')" in src + assert "compare_url" in src + assert "repo_url+'/compare/'+currentSha+'...'+latestSha" in src + assert "_isSafeUpdateCompareUrl(compareUrl)?compareUrl:null" in src + assert "_renderUpdateWhatsNewLinks(data);" in src + assert "data.webui.repo_url" not in src + assert "$('updateWhatsNew')" not in src + + def test_update_banner_clears_stale_links_when_no_updates_remain(self): + src = read('static/ui.js') + start = src.find('function _showUpdateBanner(data)') + assert start != -1, "_showUpdateBanner not found" + fn = src[start:src.find('function dismissUpdate()', start)] + empty_idx = fn.find('if(!parts.length)') + assert empty_idx != -1, "_showUpdateBanner must handle empty update payloads" + empty_block = fn[empty_idx:fn.find('return;', empty_idx) + len('return;')] + assert '_renderUpdateWhatsNewLinks(data);' in empty_block + assert "classList.remove('visible')" in empty_block + + def test_manual_up_to_date_check_clears_update_banner(self): + src = read('static/panels.js') + up_to_date_idx = src.find("settings_up_to_date") + assert up_to_date_idx != -1, "manual update up-to-date branch not found" + block = src[up_to_date_idx:up_to_date_idx + 300] + assert "_showUpdateBanner(data)" in block + + # ── Regression: force button reset on retry ────────────────────────────────── class TestForceButtonResetOnRetry: From bec21eafa00bdcb4df4ef9b5d8e65f887c9e6c75 Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 14:22:26 -0700 Subject: [PATCH 08/19] Add What's New summary toggle --- api/config.py | 2 + api/routes.py | 56 +++++++++++++++ api/updates.py | 109 ++++++++++++++++++++++++++++++ static/boot.js | 2 + static/i18n.js | 22 ++++++ static/index.html | 11 +++ static/panels.js | 6 ++ static/ui.js | 87 ++++++++++++++++++++---- tests/test_update_banner_fixes.py | 51 ++++++++++++++ 9 files changed, 333 insertions(+), 13 deletions(-) diff --git a/api/config.py b/api/config.py index a6f7daaf..223df061 100644 --- a/api/config.py +++ b/api/config.py @@ -3909,6 +3909,7 @@ _SETTINGS_DEFAULTS = { "show_cli_sessions": False, # merge CLI sessions from state.db into the sidebar "sync_to_insights": False, # mirror WebUI token usage to state.db for /insights "check_for_updates": True, # check if webui/agent repos are behind upstream + "whats_new_summary_enabled": False, # show an LLM-written What's New summary before diff links "theme": "dark", # light | dark | system "skin": "default", # accent color skin: default | ares | mono | slate | poseidon | sisyphus | charizard "font_size": "default", # small | default | large @@ -4037,6 +4038,7 @@ _SETTINGS_BOOL_KEYS = { "show_cli_sessions", "sync_to_insights", "check_for_updates", + "whats_new_summary_enabled", "sound_enabled", "notifications_enabled", "show_thinking", diff --git a/api/routes.py b/api/routes.py index 70a25fcc..06e09438 100644 --- a/api/routes.py +++ b/api/routes.py @@ -5276,6 +5276,62 @@ def handle_post(handler, parsed) -> bool: return j(handler, apply_force_update(target)) + if parsed.path == "/api/updates/summary": + from api.updates import summarize_update_payload + + updates = body.get("updates") if isinstance(body, dict) else {} + + def _llm_update_summary(system_prompt: str, user_prompt: str) -> str: + from run_agent import AIAgent + from api.config import ( + get_effective_default_model, + resolve_model_provider, + resolve_custom_provider_connection, + ) + + _model, _provider, _base_url = resolve_model_provider(get_effective_default_model()) + _api_key = None + try: + from api.oauth import resolve_runtime_provider_with_anthropic_env_lock + from hermes_cli.runtime_provider import resolve_runtime_provider + + _rt = resolve_runtime_provider_with_anthropic_env_lock( + resolve_runtime_provider, + requested=_provider, + ) + _api_key = _rt.get("api_key") + if not _provider: + _provider = _rt.get("provider") + if not _base_url: + _base_url = _rt.get("base_url") + except Exception as _e: + logger.debug("update summary runtime provider resolution failed: %s", _e) + if isinstance(_provider, str) and _provider.startswith("custom:"): + _cp_key, _cp_base = resolve_custom_provider_connection(_provider) + if not _api_key and _cp_key: + _api_key = _cp_key + if not _base_url and _cp_base: + _base_url = _cp_base + agent = AIAgent( + model=_model, + provider=_provider, + base_url=_base_url, + api_key=_api_key, + platform="webui", + quiet_mode=True, + enabled_toolsets=[], + session_id=f"updates-summary-{uuid.uuid4().hex[:8]}", + ) + result = agent.run_conversation( + user_message=user_prompt, + system_message=system_prompt, + conversation_history=[], + task_id=f"updates-summary-{uuid.uuid4().hex[:8]}", + ) + return str(result.get("final_response") or "").strip() + + return j(handler, summarize_update_payload(updates, llm_callback=_llm_update_summary)) + # ── CLI session import (POST) ── if parsed.path == "/api/session/import_cli": return _handle_session_import_cli(handler, body) diff --git a/api/updates.py b/api/updates.py index c6b619cb..99bbce30 100644 --- a/api/updates.py +++ b/api/updates.py @@ -301,6 +301,115 @@ def check_for_updates(force=False): _check_in_progress = False +def _repo_path_for_update_target(target: str): + if target == 'webui': + return REPO_ROOT + if target == 'agent': + return _AGENT_DIR + return None + + +def _commit_subjects_for_update(info: dict, *, limit: int = 24) -> list[str]: + """Return commit subjects for an update range, if the local git refs exist.""" + if not isinstance(info, dict): + return [] + target = info.get('name') + if target not in ('webui', 'agent'): + target = 'webui' if info.get('repo_url', '').endswith('hermes-webui') else target + path = _repo_path_for_update_target(target) + if path is None or not (Path(path) / '.git').exists(): + return [] + current = str(info.get('current_sha') or '').strip() + latest = str(info.get('latest_sha') or '').strip() + if not (current and latest): + return [] + out, ok = _run_git(['log', '--format=%s', f'{current}..{latest}', f'-n{limit}'], path, timeout=5) + if not ok or not out: + return [] + return [line.strip() for line in out.splitlines() if line.strip()] + + +def _fallback_update_summary(updates: dict, details: list[dict]) -> str: + lines = [] + for item in details: + label = item.get('label') or item.get('name') or 'Hermes' + behind = item.get('behind') or 0 + commits = item.get('commits') or [] + if commits: + lines.append(f"{label}: {behind} update(s). Highlights: " + '; '.join(commits[:5]) + '.') + else: + lines.append(f"{label}: {behind} update(s) are available. Open the regular diff comparison below for the exact changes.") + return '\n'.join(lines) or 'Updates are available. Open the regular diff comparison below for the exact changes.' + + +def _update_summary_prompt(details: list[dict]) -> tuple[str, str]: + system = ( + "You write human-readable release summaries for Hermes users. " + "Focus on what the user will notice in the product. Keep it simple, specific, and short. " + "avoid technical jargon, implementation details, SHA names, branch names, and file paths unless necessary. " + "End with one plain sentence noting that the regular diff comparison is available below for details." + ) + user_lines = [ + "Summarize these available updates in 3-6 concise bullets.", + "Use everyday language and explain visible behavior changes, not code mechanics.", + "", + ] + for item in details: + user_lines.append(f"{item['label']}: {item['behind']} commit(s) behind") + commits = item.get('commits') or [] + if commits: + user_lines.extend(f"- {subject}" for subject in commits) + else: + user_lines.append("- No local commit subjects available; summarize only the update count.") + user_lines.append("") + return system, '\n'.join(user_lines) + + +def summarize_update_payload(updates: dict, llm_callback=None) -> dict: + """Build a human-readable What's New summary and keep regular diff comparison links. + + ``llm_callback`` receives ``(system_prompt, user_prompt)`` and returns text. + The caller may wire that to AIAgent; this module keeps a deterministic + fallback so the banner remains useful when no LLM provider is configured. + """ + if not isinstance(updates, dict): + updates = {} + details = [] + for key, label in (('webui', 'WebUI'), ('agent', 'Agent')): + info = updates.get(key) + if not isinstance(info, dict) or int(info.get('behind') or 0) <= 0: + continue + item = { + 'name': key, + 'label': label, + 'behind': int(info.get('behind') or 0), + 'compare_url': info.get('compare_url'), + 'commits': _commit_subjects_for_update({'name': key, **info}), + } + details.append(item) + fallback = _fallback_update_summary(updates, details) + generated_by = 'fallback' + summary = fallback + if details and callable(llm_callback): + system, prompt = _update_summary_prompt(details) + try: + candidate = (llm_callback(system, prompt) or '').strip() + if candidate: + summary = candidate + generated_by = 'llm' + except Exception: + summary = fallback + return { + 'ok': True, + 'summary': summary, + 'generated_by': generated_by, + 'targets': details, + } + + +# ── Self-update application ─────────────────────────────────────────────────── + + def _schedule_restart(delay: float = 2.0) -> None: """Re-exec this process after *delay* seconds. diff --git a/static/boot.js b/static/boot.js index e08ad6e9..95855cc8 100644 --- a/static/boot.js +++ b/static/boot.js @@ -1379,6 +1379,7 @@ function applyBotName(){ window._showCliSessions=!!s.show_cli_sessions; window._soundEnabled=!!s.sound_enabled; window._notificationsEnabled=!!s.notifications_enabled; + window._whatsNewSummaryEnabled=!!s.whats_new_summary_enabled; window._showThinking=s.show_thinking!==false; window._simplifiedToolCalling=s.simplified_tool_calling!==false; window._sidebarDensity=(s.sidebar_density==='detailed'?'detailed':'compact'); @@ -1415,6 +1416,7 @@ function applyBotName(){ window._showCliSessions=false; window._soundEnabled=false; window._notificationsEnabled=false; + window._whatsNewSummaryEnabled=false; window._showThinking=true; window._simplifiedToolCalling=true; window._sessionJumpButtonsEnabled=false; diff --git a/static/i18n.js b/static/i18n.js index b0a28ade..af42001a 100644 --- a/static/i18n.js +++ b/static/i18n.js @@ -513,6 +513,7 @@ const LOCALES = { settings_label_external_sessions: 'Show non-WebUI sessions', settings_label_sync_insights: 'Sync to insights', settings_label_check_updates: 'Check for updates', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Assistant Name', settings_label_password: 'Access Password', settings_saved: 'Settings saved', @@ -744,6 +745,7 @@ const LOCALES = { settings_desc_external_sessions: 'Show conversations from CLI, Telegram, Discord, Slack, and other channels in the session list. Click to import and continue.', settings_desc_sync_insights: 'Mirrors WebUI token usage to state.db so hermes /insights includes browser session data. Off by default.', settings_desc_check_updates: 'Show a banner when newer versions of the WebUI or Agent are available. Runs a background git fetch periodically.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'Display name for the assistant throughout the UI. Defaults to Hermes.', settings_desc_password: 'Enter a new password to set or change it. Leave blank to keep current setting.', password_placeholder: 'Enter new password…', @@ -1638,6 +1640,7 @@ const LOCALES = { settings_label_external_sessions: 'Mostra sessioni non-WebUI', settings_label_sync_insights: 'Sincronizza con insights', settings_label_check_updates: 'Verifica aggiornamenti', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Nome Assistente', settings_label_password: 'Password di Accesso', settings_saved: 'Impostazioni salvate', @@ -1861,6 +1864,7 @@ const LOCALES = { settings_desc_external_sessions: 'Mostra conversazioni da CLI, Telegram, Discord, Slack e altri canali nella lista sessioni. Clicca per importare e continuare.', settings_desc_sync_insights: 'Rispecchia l\'uso token WebUI su state.db così hermes /insights include i dati delle sessioni browser. Disattivato per impostazione predefinita.', settings_desc_check_updates: 'Mostra un banner quando sono disponibili versioni più recenti della WebUI o dell\'Agente. Esegue un git fetch in background periodicamente.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'Nome visualizzato per l\'assistente in tutta l\'interfaccia. Predefinito: Hermes.', settings_desc_password: 'Inserisci una nuova password per impostarla o cambiarla. Lascia vuoto per mantenere l\'impostazione attuale.', password_placeholder: 'Inserisci nuova password…', @@ -2755,6 +2759,7 @@ const LOCALES = { settings_label_external_sessions: '非WebUIセッションを表示', settings_label_sync_insights: 'インサイトに同期', settings_label_check_updates: 'アップデートを確認', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'アシスタント名', settings_label_password: 'アクセスパスワード', settings_saved: '設定を保存しました', @@ -2983,6 +2988,7 @@ const LOCALES = { settings_desc_external_sessions: 'CLI、Telegram、Discord、Slack その他のチャネルからの会話をセッション一覧に表示します。クリックでインポートして続行できます。', settings_desc_sync_insights: 'WebUI のトークン使用量を state.db にミラーし、hermes /insights にブラウザセッションのデータを含めます。デフォルトはオフ。', settings_desc_check_updates: 'WebUI または Agent の新しいバージョンが利用可能な時にバナーを表示します。バックグラウンドで定期的に git fetch を実行します。', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'UI 全体で表示されるアシスタントの名前。デフォルトは Hermes。', settings_desc_password: '新しいパスワードを入力すると設定または変更します。空欄なら現在の設定を維持。', password_placeholder: '新しいパスワードを入力…', @@ -3697,6 +3703,7 @@ const LOCALES = { settings_label_external_sessions: 'Показывать внешние сеансы', settings_label_sync_insights: 'Синхронизировать с Insights', settings_label_check_updates: 'Проверять обновления', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Имя помощника', settings_label_password: 'Пароль доступа', settings_saved: 'Настройки сохранены', @@ -3874,6 +3881,7 @@ const LOCALES = { settings_desc_external_sessions: 'Показать беседы из CLI, Telegram, Discord, Slack и других каналов в списке сеансов. Нажмите для импорта и продолжения.', settings_desc_sync_insights: 'Синхронизирует использование токенов WebUI в state.db, чтобы Hermes /insights включал данные браузерных сеансов. Выключено по умолчанию.', settings_desc_check_updates: 'Показывает баннер, когда доступны более новые версии WebUI или Agent. Периодически выполняет git fetch в фоне.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'Отображаемое имя помощника во всём интерфейсе. По умолчанию Hermes.', settings_desc_password: 'Введите новый пароль, чтобы задать или изменить его. Оставьте пустым, чтобы сохранить текущую настройку.', password_placeholder: 'Введите новый пароль…', @@ -4743,6 +4751,7 @@ const LOCALES = { settings_label_external_sessions: 'Mostrar sesiones externas', settings_label_sync_insights: 'Sincronizar con insights', settings_label_check_updates: 'Buscar actualizaciones', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Nombre del asistente', settings_label_password: 'Contraseña de acceso', settings_saved: 'Configuración guardada', @@ -4931,6 +4940,7 @@ const LOCALES = { settings_desc_external_sessions: 'Mostrar conversaciones de CLI, Telegram, Discord, Slack y otros canales en la lista de sesiones. Haz clic para importar y continuar.', settings_desc_sync_insights: 'Refleja el uso de tokens de la WebUI en state.db para que hermes /insights incluya datos de sesiones del navegador. Desactivado por defecto.', settings_desc_check_updates: 'Muestra un banner cuando haya versiones más nuevas de la WebUI o del Agent. Ejecuta periódicamente un git fetch en segundo plano.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'Nombre visible del asistente en toda la UI. Por defecto es Hermes.', settings_desc_password: 'Introduce una nueva contraseña para establecerla o cambiarla. Déjalo en blanco para mantener la configuración actual.', password_placeholder: 'Introduce una contraseña nueva…', @@ -5782,6 +5792,7 @@ const LOCALES = { settings_label_external_sessions: 'Externe Sitzungen anzeigen', settings_label_sync_insights: 'Mit Insights synchronisieren', settings_label_check_updates: 'Nach Updates suchen', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Assistenten-Name', settings_label_password: 'Zugangspasswort', settings_saved: 'Einstellungen gespeichert', @@ -5960,6 +5971,7 @@ const LOCALES = { settings_desc_external_sessions: 'Zeigt Gespräche von CLI, Telegram, Discord, Slack und anderen Kanälen in der Sitzungsliste an. Klicken zum Importieren und Fortsetzen.', settings_desc_sync_insights: 'Spiegelt den WebUI-Token-Verbrauch in die state.db, sodass hermes /insights Browser-Sitzungsdaten enthält. Standardmäßig aus.', settings_desc_check_updates: 'Zeigt ein Banner an, wenn neuere Versionen der WebUI oder des Agenten verfügbar sind. Führt regelmäßig einen Git-Fetch im Hintergrund aus.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'Anzeigename für den Assistenten in der UI. Standardmäßig Hermes.', settings_desc_password: 'Geben Sie ein neues Passwort ein, um es zu setzen oder zu ändern. Leer lassen, um die aktuelle Einstellung beizubehalten.', password_placeholder: 'Neues Passwort eingeben…', @@ -6862,6 +6874,7 @@ const LOCALES = { settings_label_external_sessions: '显示外部会话', settings_label_sync_insights: '同步到 insights', settings_label_check_updates: '检查更新', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: '助手名称', settings_label_password: '访问密码', settings_saved: '设置已保存', @@ -7077,6 +7090,7 @@ const LOCALES = { settings_desc_external_sessions: '在会话列表中显示来自 CLI、Telegram、Discord、Slack 等渠道的对话。点击可导入并继续对话。', settings_desc_sync_insights: '将 WebUI token 使用情况同步到 state.db,使 hermes /insights 包含浏览器会话数据。默认关闭。', settings_desc_check_updates: '当有更新的 WebUI 或助手版本时显示横幅。会在后台定期执行 git fetch。', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: '助手在 UI 中的显示名称。默认为 Hermes。', settings_desc_password: '输入新密码以设置或更改。留空保持当前设置。', // onboarding @@ -7927,6 +7941,7 @@ const LOCALES = { settings_label_external_sessions: '顯示外部會話', settings_label_sync_insights: '\u540c\u6b65\u5230 insights', settings_label_check_updates: '\u6aa2\u67e5\u66f4\u65b0', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: '\u52a9\u624b\u540d\u7a31', settings_label_password: '\u8a2a\u554f\u5bc6\u78bc', settings_saved: '\u8a2d\u5b9a\u5df2\u5132\u5b58', @@ -8102,6 +8117,7 @@ const LOCALES = { settings_desc_external_sessions: '在會話列表中顯示來自 CLI、Telegram、Discord、Slack 等管道的對話。點擊可導入並繼續對話。', settings_desc_sync_insights: '將 WebUI token 使用情況同步到 state.db,使 hermes /insights 包含瀏覽器會話數據。預設未啟用。', settings_desc_check_updates: '當有更新的 WebUI 或助手版本時顯示標記。將在後台正常執行 Git-Fetch。', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: '助手在 UI 中的顯示名稱。預設未更改。', settings_desc_password: '\u8a2d\u5b9a WebUI \u767b\u5165\u5bc6\u78bc\u3002\u5047\u5982\u5df2\u8a2d\u7f6e\uff0c\u6bcf\u6b21\u52a0\u8f09\u90fd\u9700\u8981\u767b\u5165\u3002', onboarding_password_will_enable: '\u5c07\u6703\u555f\u7528', @@ -9143,6 +9159,7 @@ const LOCALES = { settings_label_external_sessions: 'Mostrar sessões externas', settings_label_sync_insights: 'Sincronizar para insights', settings_label_check_updates: 'Verificar atualizações', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Nome do Assistente', settings_label_password: 'Senha de Acesso', settings_saved: 'Configurações salvas', @@ -9324,6 +9341,7 @@ const LOCALES = { settings_desc_external_sessions: 'Mostrar conversas de CLI, Telegram, Discord, Slack e outros canais na lista de sessões. Clique para importar e continuar.', settings_desc_sync_insights: 'Espelha uso de tokens para state.db.', settings_desc_check_updates: 'Mostrar banner quando versões mais novas estiverem disponíveis.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'Nome de exibição do assistente. Padrão: Hermes.', settings_desc_password: 'Digite nova senha para definir ou trocar. Deixe em branco para manter.', password_placeholder: 'Digite nova senha…', @@ -10164,6 +10182,7 @@ const LOCALES = { settings_label_external_sessions: '외부 세션 표시', settings_label_sync_insights: 'Insights에 동기화', settings_label_check_updates: '업데이트 확인', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Assistant 이름', settings_label_password: '접근 비밀번호', settings_saved: '설정 저장됨', @@ -10344,6 +10363,7 @@ const LOCALES = { settings_desc_external_sessions: 'CLI, Telegram, Discord, Slack 및 기타 채널의 대화를 세션 목록에 표시합니다. 클릭하여 가져오고 계속하세요.', settings_desc_sync_insights: 'WebUI 토큰 사용량을 state.db에 반영하여 hermes /insights에 브라우저 세션 데이터가 포함되도록 합니다. 기본값은 꺼짐입니다.', settings_desc_check_updates: 'WebUI 또는 Agent의 새 버전이 있으면 배너를 표시합니다. 백그라운드에서 주기적으로 git fetch를 실행합니다.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'UI 전체에 표시되는 Assistant 이름입니다. 기본값은 Hermes입니다.', settings_desc_password: '새 비밀번호를 설정하거나 변경하려면 입력하세요. 현재 설정을 유지하려면 비워 두세요.', password_placeholder: '새 비밀번호 입력…', @@ -11201,6 +11221,7 @@ const LOCALES = { settings_label_external_sessions: 'Afficher les sessions non-WebUI', settings_label_sync_insights: 'Synchroniser avec les insights', settings_label_check_updates: 'Vérifier les mises à jour', + settings_label_whats_new_summary: "Summarize What's New with AI", settings_label_bot_name: 'Nom de l\'assistant', settings_label_password: 'Mot de passe d\'accès', settings_saved: 'Paramètres enregistrés', @@ -11391,6 +11412,7 @@ const LOCALES = { settings_desc_external_sessions: 'Affichez les conversations de CLI, Telegram, Discord, Slack et d\'autres chaînes dans la liste des sessions. Cliquez pour importer et continuer.', settings_desc_sync_insights: 'Met en miroir l\'utilisation du jeton WebUI dans state.db afin que Hermes /insights inclut les données de session du navigateur. Désactivé par défaut.', settings_desc_check_updates: 'Afficher une bannière lorsque des versions plus récentes de WebUI ou de l\'agent sont disponibles. Exécute périodiquement une récupération git en arrière-plan.', + settings_desc_whats_new_summary: "Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.", settings_desc_bot_name: 'Nom d’affichage de l’assistant dans l’interface utilisateur. Par défaut, Hermès.', settings_desc_password: 'Saisissez un nouveau mot de passe pour le définir ou le modifier. Laissez vide pour conserver le paramètre actuel.', password_placeholder: 'Entrez le nouveau mot de passe…', diff --git a/static/index.html b/static/index.html index 6f8b22a6..edffc296 100644 --- a/static/index.html +++ b/static/index.html @@ -343,6 +343,10 @@
+
@@ -1051,6 +1055,13 @@
Show a banner when newer versions of the WebUI or Agent are available. Runs a background git fetch periodically.
+
+ +
Changes the What's New action from opening the raw diff first to generating a short, human-readable summary. The regular diff comparison stays available after the summary.
+
Display name for the assistant throughout the UI. Defaults to Hermes.
diff --git a/static/panels.js b/static/panels.js index 62b91aab..0047924c 100644 --- a/static/panels.js +++ b/static/panels.js @@ -5070,6 +5070,8 @@ function _preferencesPayloadFromUi(){ if(syncCb) payload.sync_to_insights=syncCb.checked; const updateCb=$('settingsCheckUpdates'); if(updateCb) payload.check_for_updates=updateCb.checked; + const whatsNewSummaryCb=$('settingsWhatsNewSummary'); + if(whatsNewSummaryCb) payload.whats_new_summary_enabled=whatsNewSummaryCb.checked; const soundCb=$('settingsSoundEnabled'); if(soundCb) payload.sound_enabled=soundCb.checked; const notifCb=$('settingsNotificationsEnabled'); @@ -5303,6 +5305,8 @@ async function loadSettingsPanel(){ if(syncCb){syncCb.checked=!!settings.sync_to_insights;syncCb.addEventListener('change',_schedulePreferencesAutosave,{once:false});} const updateCb=$('settingsCheckUpdates'); if(updateCb){updateCb.checked=settings.check_for_updates!==false;updateCb.addEventListener('change',_schedulePreferencesAutosave,{once:false});} + const whatsNewSummaryCb=$('settingsWhatsNewSummary'); + if(whatsNewSummaryCb){whatsNewSummaryCb.checked=!!settings.whats_new_summary_enabled;whatsNewSummaryCb.addEventListener('change',_schedulePreferencesAutosave,{once:false});} const soundCb=$('settingsSoundEnabled'); if(soundCb){soundCb.checked=!!settings.sound_enabled;soundCb.addEventListener('change',_schedulePreferencesAutosave,{once:false});} // TTS settings (localStorage-only, no server round-trip needed) @@ -5935,6 +5939,7 @@ function _applySavedSettingsUi(saved, body, opts){ window._showCliSessions=showCliSessions; window._soundEnabled=body.sound_enabled; window._notificationsEnabled=body.notifications_enabled; + window._whatsNewSummaryEnabled=!!body.whats_new_summary_enabled; window._showThinking=body.show_thinking!==false; window._simplifiedToolCalling=body.simplified_tool_calling!==false; window._sessionJumpButtonsEnabled=!!body.session_jump_buttons; @@ -6048,6 +6053,7 @@ async function saveSettings(andClose){ body.show_cli_sessions=showCliSessions; body.sync_to_insights=!!($('settingsSyncInsights')||{}).checked; body.check_for_updates=!!($('settingsCheckUpdates')||{}).checked; + body.whats_new_summary_enabled=!!($('settingsWhatsNewSummary')||{}).checked; body.sound_enabled=!!($('settingsSoundEnabled')||{}).checked; body.notifications_enabled=!!($('settingsNotificationsEnabled')||{}).checked; body.show_thinking=window._showThinking!==false; diff --git a/static/ui.js b/static/ui.js index 076ec07b..94ba56e2 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3910,16 +3910,87 @@ function _updateWhatsNewTargets(data){ url:_updateCompareUrl(target.info), })).filter((target)=>target.info&&target.info.behind>0&&target.url); } +function _appendUpdateDiffLinks(container,targets,prefix){ + if(!container) return; + if(prefix) container.appendChild(document.createTextNode(prefix)); + targets.forEach((target,idx)=>{ + if(idx>0) container.appendChild(document.createTextNode(' \u00b7 ')); + const link=document.createElement('a'); + link.href=target.url; + link.target='_blank'; + link.rel='noopener'; + link.style.color='var(--accent)'; + link.style.textDecoration='underline'; + link.textContent=target.label; + container.appendChild(link); + }); +} +function _hideUpdateSummaryPanel(){ + const panel=$('updateSummaryPanel'); + const text=$('updateSummaryText'); + const links=$('updateSummaryDiffLinks'); + if(panel) panel.style.display='none'; + if(text) text.textContent=''; + if(links){links.replaceChildren();links.style.display='none';} +} +function _renderUpdateSummaryPanel(summary,data){ + const panel=$('updateSummaryPanel'); + const text=$('updateSummaryText'); + const links=$('updateSummaryDiffLinks'); + if(!panel||!text) return; + panel.style.display='block'; + text.textContent=summary||'No summary available.'; + const targets=_updateWhatsNewTargets(data||window._updateData||{}); + if(links){ + links.replaceChildren(); + if(targets.length){ + links.style.display='block'; + _appendUpdateDiffLinks(links,targets,'Regular diff comparison: '); + }else{ + links.style.display='none'; + } + } +} +async function showWhatsNewSummary(){ + const data=window._updateData||{}; + _renderUpdateSummaryPanel('Writing a simple summary…',data); + try{ + const res=await api('/api/updates/summary',{method:'POST',body:JSON.stringify({updates:data})}); + _renderUpdateSummaryPanel(res&&res.summary,data); + }catch(e){ + console.warn('[updates] summary failed',e); + _renderUpdateSummaryPanel('Could not generate the summary right now. The regular diff comparison is still available below.',data); + } +} function _renderUpdateWhatsNewLinks(data){ + const options=arguments.length>1&&arguments[1]?arguments[1]:{}; const container=$('updateWhatsNewLinks'); if(!container) return; container.replaceChildren(); const targets=_updateWhatsNewTargets(data); if(!targets.length){ container.style.display='none'; + _hideUpdateSummaryPanel(); return; } container.style.display='block'; + const useSummary=(options.mode||'')==='summary'||window._whatsNewSummaryEnabled===true; + if(useSummary){ + const btn=document.createElement('button'); + btn.type='button'; + btn.className='linklike'; + btn.style.color='var(--accent)'; + btn.style.textDecoration='underline'; + btn.style.background='none'; + btn.style.border='0'; + btn.style.padding='0'; + btn.style.cursor='pointer'; + btn.textContent='What changed? Read simple summary'; + btn.onclick=()=>showWhatsNewSummary(); + container.appendChild(btn); + return; + } + _hideUpdateSummaryPanel(); if(targets.length===1){ const target=targets[0]; const link=document.createElement('a'); @@ -3932,18 +4003,7 @@ function _renderUpdateWhatsNewLinks(data){ container.appendChild(link); return; } - container.appendChild(document.createTextNode("What's new: ")); - targets.forEach((target,idx)=>{ - if(idx>0) container.appendChild(document.createTextNode(' \u00b7 ')); - const link=document.createElement('a'); - link.href=target.url; - link.target='_blank'; - link.rel='noopener'; - link.style.color='var(--accent)'; - link.style.textDecoration='underline'; - link.textContent=target.label; - container.appendChild(link); - }); + _appendUpdateDiffLinks(container,targets,"What's new: "); } function _showUpdateBanner(data){ const parts=[]; @@ -3962,7 +4022,8 @@ function _showUpdateBanner(data){ if(msg) msg.textContent='\u2B06 '+parts.join(', ')+' available'; const banner=$('updateBanner'); if(banner) banner.classList.add('visible'); - _renderUpdateWhatsNewLinks(data); + const summaryMode=window._whatsNewSummaryEnabled===true?'summary':'diff'; + _renderUpdateWhatsNewLinks(data,{mode:summaryMode}); } function dismissUpdate(){ const b=$('updateBanner');if(b)b.classList.remove('visible'); diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index 274b7af4..3b6ea2ef 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -725,6 +725,57 @@ class TestUpdateCompareSource: assert "_showUpdateBanner(data)" in block +class TestWhatsNewSummaryToggle: + def test_settings_default_and_persistence_allow_whats_new_summary_toggle(self): + src = read('api/config.py') + assert '"whats_new_summary_enabled": False' in src + bool_keys_start = src.find('_SETTINGS_BOOL_KEYS') + assert bool_keys_start != -1 + bool_keys = src[bool_keys_start:src.find('}', bool_keys_start)] + assert '"whats_new_summary_enabled"' in bool_keys + + def test_settings_panel_places_summary_toggle_next_to_update_check(self): + src = read('static/index.html') + check_idx = src.find('id="settingsCheckUpdates"') + summary_idx = src.find('id="settingsWhatsNewSummary"') + assert check_idx != -1, "settingsCheckUpdates checkbox missing" + assert summary_idx != -1, "settingsWhatsNewSummary checkbox missing" + assert check_idx < summary_idx, "summary toggle should sit after the update-check toggle" + nearby = src[summary_idx:summary_idx + 900] + assert 'settings_label_whats_new_summary' in nearby + assert 'settings_desc_whats_new_summary' in nearby + + def test_settings_js_loads_saves_and_boots_summary_toggle(self): + panels = read('static/panels.js') + boot = read('static/boot.js') + assert "$('settingsWhatsNewSummary')" in panels + assert 'payload.whats_new_summary_enabled' in panels + assert 'settings.whats_new_summary_enabled' in panels + assert 'body.whats_new_summary_enabled' in panels + assert 'window._whatsNewSummaryEnabled' in boot + assert 'whats_new_summary_enabled' in boot + + def test_update_banner_summary_flow_keeps_diff_links_after_summary(self): + src = read('static/ui.js') + assert 'function _renderUpdateSummaryPanel' in src + assert 'async function showWhatsNewSummary' in src + assert "api('/api/updates/summary'" in src + assert 'updateSummaryDiffLinks' in src + assert 'Regular diff comparison' in src + assert '_renderUpdateWhatsNewLinks(data,{mode' in src + assert 'window._whatsNewSummaryEnabled' in src + + def test_summary_endpoint_and_prompt_are_human_readable_not_technical(self): + routes = read('api/routes.py') + updates = read('api/updates.py') + assert '"/api/updates/summary"' in routes + assert 'summarize_update_payload' in routes + assert 'def summarize_update_payload' in updates + assert 'human-readable' in updates + assert 'avoid technical jargon' in updates + assert 'regular diff comparison' in updates + + # ── Regression: force button reset on retry ────────────────────────────────── class TestForceButtonResetOnRetry: From 623dfef4995e12085737748b51c3261102a4acf9 Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 14:48:01 -0700 Subject: [PATCH 09/19] Stabilize What's New summaries --- api/updates.py | 126 +++++++++++++++++++++++++++--- static/ui.js | 50 ++++++++++-- tests/test_update_banner_fixes.py | 49 ++++++++++++ 3 files changed, 206 insertions(+), 19 deletions(-) diff --git a/api/updates.py b/api/updates.py index 99bbce30..b8f2f85f 100644 --- a/api/updates.py +++ b/api/updates.py @@ -8,6 +8,9 @@ at most twice per hour regardless of client count. Skips repos that are not git checkouts (e.g. Docker baked images where .git does not exist). """ +import hashlib +import json +import re import subprocess import threading import time @@ -23,6 +26,7 @@ except ImportError: _AGENT_DIR = None _update_cache = {'webui': None, 'agent': None, 'checked_at': 0} +_summary_cache = {} _cache_lock = threading.Lock() _check_in_progress = False _apply_lock = threading.Lock() # prevents concurrent stash/pull/pop on same repo @@ -329,17 +333,92 @@ def _commit_subjects_for_update(info: dict, *, limit: int = 24) -> list[str]: return [line.strip() for line in out.splitlines() if line.strip()] -def _fallback_update_summary(updates: dict, details: list[dict]) -> str: - lines = [] +def _summary_cache_key(updates: dict, details: list[dict]) -> str: + """Stable key for the exact update range being summarized.""" + payload = [] + for item in details: + payload.append({ + 'name': item.get('name'), + 'behind': item.get('behind'), + 'current_sha': item.get('current_sha'), + 'latest_sha': item.get('latest_sha'), + 'compare_url': item.get('compare_url'), + }) + blob = json.dumps(payload, sort_keys=True, separators=(',', ':')) + return hashlib.sha256(blob.encode('utf-8')).hexdigest() + + +def _clean_summary_bullet(line: str) -> str: + line = re.sub(r'^\s*(?:[-*•]+|\d+[.)])\s*', '', str(line or '')).strip() + line = re.sub(r'\s+', ' ', line) + if not line: + return '' + if line[-1] not in '.!?': + line += '.' + return line[:240] + + +def _summary_bullets_from_text(text: str, *, fallback_items: list[str]) -> list[str]: + raw = str(text or '').strip() + candidates = [] + for line in raw.splitlines(): + cleaned = _clean_summary_bullet(line) + if cleaned: + candidates.append(cleaned) + if len(candidates) <= 1 and raw: + candidates = [_clean_summary_bullet(part) for part in re.split(r'(?<=[.!?])\s+', raw)] + candidates = [item for item in candidates if item] + if not candidates: + candidates = [_clean_summary_bullet(item) for item in fallback_items] + seen = set() + bullets = [] + for item in candidates: + key = item.lower() + if item and key not in seen: + bullets.append(item) + seen.add(key) + if len(bullets) >= 5: + break + return bullets or ['Updates are available.'] + + +def _fallback_update_bullets(details: list[dict]) -> list[str]: + bullets = [] for item in details: label = item.get('label') or item.get('name') or 'Hermes' behind = item.get('behind') or 0 commits = item.get('commits') or [] if commits: - lines.append(f"{label}: {behind} update(s). Highlights: " + '; '.join(commits[:5]) + '.') + highlights = '; '.join(commits[:3]) + bullets.append(f"{label} has {behind} update(s), including: {highlights}.") else: - lines.append(f"{label}: {behind} update(s) are available. Open the regular diff comparison below for the exact changes.") - return '\n'.join(lines) or 'Updates are available. Open the regular diff comparison below for the exact changes.' + bullets.append(f"{label} has {behind} update(s) available.") + return bullets or ['Updates are available.'] + + +def _format_update_summary_sections(summary_text: str, details: list[dict]) -> tuple[list[dict], str]: + bullets = _summary_bullets_from_text(summary_text, fallback_items=_fallback_update_bullets(details)) + sections = [ + { + 'title': "What you'll notice", + 'items': bullets, + }, + { + 'title': 'Worth knowing', + 'items': ['The regular diff comparison is still available below for exact details.'], + }, + ] + lines = [] + for section in sections: + lines.append(section['title']) + lines.extend(f"- {item}" for item in section['items']) + lines.append('') + return sections, '\n'.join(lines).strip() + + +def _fallback_update_summary(updates: dict, details: list[dict]) -> str: + _sections, summary = _format_update_summary_sections('', details) + return summary def _update_summary_prompt(details: list[dict]) -> tuple[str, str]: @@ -347,11 +426,12 @@ def _update_summary_prompt(details: list[dict]) -> tuple[str, str]: "You write human-readable release summaries for Hermes users. " "Focus on what the user will notice in the product. Keep it simple, specific, and short. " "avoid technical jargon, implementation details, SHA names, branch names, and file paths unless necessary. " - "End with one plain sentence noting that the regular diff comparison is available below for details." + "Return only bullets. Do not include headings, markdown tables, intro paragraphs, or closing notes." ) user_lines = [ - "Summarize these available updates in 3-6 concise bullets.", + "Summarize these available updates as 3-5 concise bullets.", "Use everyday language and explain visible behavior changes, not code mechanics.", + "Return only bullets; the WebUI will add the fixed section headings and diff note.", "", ] for item in details: @@ -365,12 +445,14 @@ def _update_summary_prompt(details: list[dict]) -> tuple[str, str]: return system, '\n'.join(user_lines) -def summarize_update_payload(updates: dict, llm_callback=None) -> dict: +def summarize_update_payload(updates: dict, llm_callback=None, *, use_cache: bool = True) -> dict: """Build a human-readable What's New summary and keep regular diff comparison links. ``llm_callback`` receives ``(system_prompt, user_prompt)`` and returns text. The caller may wire that to AIAgent; this module keeps a deterministic fallback so the banner remains useful when no LLM provider is configured. + Summaries are cached per exact update range so refreshes do not generate + slightly different wording for the same available updates. """ if not isinstance(updates, dict): updates = {} @@ -383,28 +465,46 @@ def summarize_update_payload(updates: dict, llm_callback=None) -> dict: 'name': key, 'label': label, 'behind': int(info.get('behind') or 0), + 'current_sha': info.get('current_sha'), + 'latest_sha': info.get('latest_sha'), 'compare_url': info.get('compare_url'), 'commits': _commit_subjects_for_update({'name': key, **info}), } details.append(item) - fallback = _fallback_update_summary(updates, details) + cache_key = _summary_cache_key(updates, details) + if use_cache: + with _cache_lock: + cached = _summary_cache.get(cache_key) + if cached: + result = dict(cached) + result['cached'] = True + return result + generated_by = 'fallback' - summary = fallback + candidate = '' if details and callable(llm_callback): system, prompt = _update_summary_prompt(details) try: candidate = (llm_callback(system, prompt) or '').strip() if candidate: - summary = candidate generated_by = 'llm' except Exception: - summary = fallback - return { + candidate = '' + sections, summary = _format_update_summary_sections(candidate, details) + result = { 'ok': True, 'summary': summary, + 'summary_sections': sections, 'generated_by': generated_by, + 'cached': False, + 'cache_key': cache_key, 'targets': details, } + if use_cache: + with _cache_lock: + _summary_cache.clear() + _summary_cache[cache_key] = dict(result) + return result # ── Self-update application ─────────────────────────────────────────────────── diff --git a/static/ui.js b/static/ui.js index 94ba56e2..1dc42aa6 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3933,13 +3933,46 @@ function _hideUpdateSummaryPanel(){ if(text) text.textContent=''; if(links){links.replaceChildren();links.style.display='none';} } -function _renderUpdateSummaryPanel(summary,data){ +function _renderUpdateSummaryPanel(payload,data){ const panel=$('updateSummaryPanel'); const text=$('updateSummaryText'); const links=$('updateSummaryDiffLinks'); if(!panel||!text) return; panel.style.display='block'; - text.textContent=summary||'No summary available.'; + const sections=Array.isArray(payload&&payload.summary_sections)?payload.summary_sections:null; + text.replaceChildren(); + if(sections&§ions.length){ + const wrap=document.createElement('div'); + wrap.id='updateSummarySections'; + wrap.style.display='grid'; + wrap.style.gap='8px'; + sections.forEach((section)=>{ + const block=document.createElement('section'); + const title=document.createElement('div'); + title.style.fontWeight='650'; + title.style.marginBottom='3px'; + title.textContent=section.title||'Summary'; + block.appendChild(title); + const ul=document.createElement('ul'); + ul.style.margin='0'; + ul.style.paddingLeft='18px'; + (Array.isArray(section.items)?section.items:[]).forEach((item)=>{ + const li=document.createElement('li'); + li.textContent=String(item||'').trim(); + if(li.textContent) ul.appendChild(li); + }); + if(!ul.children.length){ + const li=document.createElement('li'); + li.textContent='No summary details available.'; + ul.appendChild(li); + } + block.appendChild(ul); + wrap.appendChild(block); + }); + text.appendChild(wrap); + }else{ + text.textContent=(payload&&payload.summary)||payload||'No summary available.'; + } const targets=_updateWhatsNewTargets(data||window._updateData||{}); if(links){ links.replaceChildren(); @@ -3953,13 +3986,18 @@ function _renderUpdateSummaryPanel(summary,data){ } async function showWhatsNewSummary(){ const data=window._updateData||{}; - _renderUpdateSummaryPanel('Writing a simple summary…',data); + _renderUpdateSummaryPanel({summary:'Writing a simple summary…'},data); try{ const res=await api('/api/updates/summary',{method:'POST',body:JSON.stringify({updates:data})}); - _renderUpdateSummaryPanel(res&&res.summary,data); + _renderUpdateSummaryPanel(res,data); }catch(e){ console.warn('[updates] summary failed',e); - _renderUpdateSummaryPanel('Could not generate the summary right now. The regular diff comparison is still available below.',data); + _renderUpdateSummaryPanel({ + summary_sections:[ + {title:"What you'll notice",items:['Could not generate the summary right now.']}, + {title:'Worth knowing',items:['The regular diff comparison is still available below for exact details.']}, + ], + },data); } } function _renderUpdateWhatsNewLinks(data){ @@ -3985,7 +4023,7 @@ function _renderUpdateWhatsNewLinks(data){ btn.style.border='0'; btn.style.padding='0'; btn.style.cursor='pointer'; - btn.textContent='What changed? Read simple summary'; + btn.textContent='Generate summary of changes'; btn.onclick=()=>showWhatsNewSummary(); container.appendChild(btn); return; diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index 3b6ea2ef..c9e39bf3 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -762,6 +762,8 @@ class TestWhatsNewSummaryToggle: assert "api('/api/updates/summary'" in src assert 'updateSummaryDiffLinks' in src assert 'Regular diff comparison' in src + assert 'updateSummarySections' in src + assert 'Generate summary of changes' in src assert '_renderUpdateWhatsNewLinks(data,{mode' in src assert 'window._whatsNewSummaryEnabled' in src @@ -774,6 +776,53 @@ class TestWhatsNewSummaryToggle: assert 'human-readable' in updates assert 'avoid technical jargon' in updates assert 'regular diff comparison' in updates + assert 'Return only bullets' in updates + assert 'def _format_update_summary_sections' in updates + + def test_update_summary_formats_llm_text_into_stable_sections(self): + from api.updates import summarize_update_payload + + payload = { + 'webui': {'behind': 2, 'current_sha': 'abc', 'latest_sha': 'def', 'compare_url': 'https://example.test/webui'}, + 'agent': {'behind': 1, 'current_sha': 'aaa', 'latest_sha': 'bbb', 'compare_url': 'https://example.test/agent'}, + } + result = summarize_update_payload( + payload, + llm_callback=lambda _system, _prompt: 'The settings panel is easier to understand. Update prompts are clearer.', + use_cache=False, + ) + assert result['summary_sections'][0]['title'] == "What you'll notice" + assert result['summary_sections'][1]['title'] == 'Worth knowing' + assert result['summary_sections'][0]['items'] + assert result['summary_sections'][1]['items'] == [ + 'The regular diff comparison is still available below for exact details.' + ] + assert 'What you\'ll notice' in result['summary'] + assert '- The settings panel is easier to understand.' in result['summary'] + + def test_update_summary_cache_reuses_same_update_summary(self): + import api.updates as upd + + upd._summary_cache.clear() + calls = [] + payload = { + 'webui': {'behind': 2, 'current_sha': 'abc', 'latest_sha': 'def', 'compare_url': 'https://example.test/webui'}, + } + + def fake_llm(_system, _prompt): + calls.append(True) + return f'- Stable cached summary #{len(calls)}' + + first = upd.summarize_update_payload(payload, llm_callback=fake_llm) + second = upd.summarize_update_payload(payload, llm_callback=fake_llm) + changed = upd.summarize_update_payload( + {'webui': {'behind': 3, 'current_sha': 'abc', 'latest_sha': 'xyz', 'compare_url': 'https://example.test/webui2'}}, + llm_callback=fake_llm, + ) + assert len(calls) == 2 + assert second['summary'] == first['summary'] + assert second['cached'] is True + assert changed['summary'] != first['summary'] # ── Regression: force button reset on retry ────────────────────────────────── From cae007b069352afc345e01f527ac71b6e7b465cd Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 15:00:55 -0700 Subject: [PATCH 10/19] Refine What's New summary sections --- api/updates.py | 26 +++++++++++++++++++++++--- static/ui.js | 2 +- tests/test_update_banner_fixes.py | 6 +++--- 3 files changed, 27 insertions(+), 7 deletions(-) diff --git a/api/updates.py b/api/updates.py index b8f2f85f..77debba8 100644 --- a/api/updates.py +++ b/api/updates.py @@ -396,16 +396,36 @@ def _fallback_update_bullets(details: list[dict]) -> list[str]: return bullets or ['Updates are available.'] +def _worth_knowing_bullets(details: list[dict]) -> list[str]: + targets = [ + f"{item.get('label') or item.get('name') or 'Hermes'} ({item.get('behind') or 0} update{'s' if (item.get('behind') or 0) != 1 else ''})" + for item in details + if item.get('behind') + ] + if len(targets) > 1: + return ['This summary combines updates from ' + ' and '.join(targets) + '.'] + if targets: + return ['This summary covers ' + targets[0] + '.'] + return ['No update details were available to summarize.'] + + def _format_update_summary_sections(summary_text: str, details: list[dict]) -> tuple[list[dict], str]: bullets = _summary_bullets_from_text(summary_text, fallback_items=_fallback_update_bullets(details)) + if len(bullets) > 1: + notice_items = bullets[:3] + worth_items = bullets[3:] or bullets[1:] + else: + notice_items = bullets + worth_items = [] + worth_items = worth_items[:2] or _worth_knowing_bullets(details) sections = [ { 'title': "What you'll notice", - 'items': bullets, + 'items': notice_items, }, { 'title': 'Worth knowing', - 'items': ['The regular diff comparison is still available below for exact details.'], + 'items': worth_items, }, ] lines = [] @@ -431,7 +451,7 @@ def _update_summary_prompt(details: list[dict]) -> tuple[str, str]: user_lines = [ "Summarize these available updates as 3-5 concise bullets.", "Use everyday language and explain visible behavior changes, not code mechanics.", - "Return only bullets; the WebUI will add the fixed section headings and diff note.", + "Return only bullets; the WebUI will add the fixed section headings separately.", "", ] for item in details: diff --git a/static/ui.js b/static/ui.js index 1dc42aa6..b72470a1 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3995,7 +3995,7 @@ async function showWhatsNewSummary(){ _renderUpdateSummaryPanel({ summary_sections:[ {title:"What you'll notice",items:['Could not generate the summary right now.']}, - {title:'Worth knowing',items:['The regular diff comparison is still available below for exact details.']}, + {title:'Worth knowing',items:['Try again later, or use the comparison links below for the raw update details.']}, ], },data); } diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index c9e39bf3..701b592a 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -794,10 +794,10 @@ class TestWhatsNewSummaryToggle: assert result['summary_sections'][0]['title'] == "What you'll notice" assert result['summary_sections'][1]['title'] == 'Worth knowing' assert result['summary_sections'][0]['items'] - assert result['summary_sections'][1]['items'] == [ - 'The regular diff comparison is still available below for exact details.' - ] + assert result['summary_sections'][1]['items'] + assert 'regular diff comparison' not in ' '.join(result['summary_sections'][1]['items']).lower() assert 'What you\'ll notice' in result['summary'] + assert 'Worth knowing' in result['summary'] assert '- The settings panel is easier to understand.' in result['summary'] def test_update_summary_cache_reuses_same_update_summary(self): From 90c2ee7e0432d63294946df5cb88ed3f2c88b590 Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 15:15:52 -0700 Subject: [PATCH 11/19] Split What's New summaries by target --- api/routes.py | 3 ++- api/updates.py | 7 ++++-- static/ui.js | 42 +++++++++++++++++-------------- tests/test_update_banner_fixes.py | 35 +++++++++++++++++++++++++- 4 files changed, 64 insertions(+), 23 deletions(-) diff --git a/api/routes.py b/api/routes.py index 06e09438..19356cfd 100644 --- a/api/routes.py +++ b/api/routes.py @@ -5280,6 +5280,7 @@ def handle_post(handler, parsed) -> bool: from api.updates import summarize_update_payload updates = body.get("updates") if isinstance(body, dict) else {} + target = body.get("target") if isinstance(body, dict) else None def _llm_update_summary(system_prompt: str, user_prompt: str) -> str: from run_agent import AIAgent @@ -5330,7 +5331,7 @@ def handle_post(handler, parsed) -> bool: ) return str(result.get("final_response") or "").strip() - return j(handler, summarize_update_payload(updates, llm_callback=_llm_update_summary)) + return j(handler, summarize_update_payload(updates, llm_callback=_llm_update_summary, target=target)) # ── CLI session import (POST) ── if parsed.path == "/api/session/import_cli": diff --git a/api/updates.py b/api/updates.py index 77debba8..0bbca829 100644 --- a/api/updates.py +++ b/api/updates.py @@ -465,7 +465,7 @@ def _update_summary_prompt(details: list[dict]) -> tuple[str, str]: return system, '\n'.join(user_lines) -def summarize_update_payload(updates: dict, llm_callback=None, *, use_cache: bool = True) -> dict: +def summarize_update_payload(updates: dict, llm_callback=None, *, target: str | None = None, use_cache: bool = True) -> dict: """Build a human-readable What's New summary and keep regular diff comparison links. ``llm_callback`` receives ``(system_prompt, user_prompt)`` and returns text. @@ -476,8 +476,11 @@ def summarize_update_payload(updates: dict, llm_callback=None, *, use_cache: boo """ if not isinstance(updates, dict): updates = {} + requested_target = target if target in ('webui', 'agent') else None details = [] for key, label in (('webui', 'WebUI'), ('agent', 'Agent')): + if requested_target and key != requested_target: + continue info = updates.get(key) if not isinstance(info, dict) or int(info.get('behind') or 0) <= 0: continue @@ -518,11 +521,11 @@ def summarize_update_payload(updates: dict, llm_callback=None, *, use_cache: boo 'generated_by': generated_by, 'cached': False, 'cache_key': cache_key, + 'target': requested_target, 'targets': details, } if use_cache: with _cache_lock: - _summary_cache.clear() _summary_cache[cache_key] = dict(result) return result diff --git a/static/ui.js b/static/ui.js index b72470a1..cb39b2bc 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3933,7 +3933,7 @@ function _hideUpdateSummaryPanel(){ if(text) text.textContent=''; if(links){links.replaceChildren();links.style.display='none';} } -function _renderUpdateSummaryPanel(payload,data){ +function _renderUpdateSummaryPanel(payload,data,targetKey){ const panel=$('updateSummaryPanel'); const text=$('updateSummaryText'); const links=$('updateSummaryDiffLinks'); @@ -3973,7 +3973,7 @@ function _renderUpdateSummaryPanel(payload,data){ }else{ text.textContent=(payload&&payload.summary)||payload||'No summary available.'; } - const targets=_updateWhatsNewTargets(data||window._updateData||{}); + const targets=_updateWhatsNewTargets(data||window._updateData||{}).filter((target)=>!targetKey||target.key===targetKey); if(links){ links.replaceChildren(); if(targets.length){ @@ -3984,12 +3984,13 @@ function _renderUpdateSummaryPanel(payload,data){ } } } -async function showWhatsNewSummary(){ +async function showWhatsNewSummary(target){ const data=window._updateData||{}; - _renderUpdateSummaryPanel({summary:'Writing a simple summary…'},data); + const scopedUpdates=target?{[target]:data[target]}:data; + _renderUpdateSummaryPanel({summary:'Writing a simple summary…'},data,target); try{ - const res=await api('/api/updates/summary',{method:'POST',body:JSON.stringify({updates:data})}); - _renderUpdateSummaryPanel(res,data); + const res=await api('/api/updates/summary',{method:'POST',body:JSON.stringify({updates:scopedUpdates,target:target||null})}); + _renderUpdateSummaryPanel(res,data,target); }catch(e){ console.warn('[updates] summary failed',e); _renderUpdateSummaryPanel({ @@ -3997,7 +3998,7 @@ async function showWhatsNewSummary(){ {title:"What you'll notice",items:['Could not generate the summary right now.']}, {title:'Worth knowing',items:['Try again later, or use the comparison links below for the raw update details.']}, ], - },data); + },data,target); } } function _renderUpdateWhatsNewLinks(data){ @@ -4014,18 +4015,21 @@ function _renderUpdateWhatsNewLinks(data){ container.style.display='block'; const useSummary=(options.mode||'')==='summary'||window._whatsNewSummaryEnabled===true; if(useSummary){ - const btn=document.createElement('button'); - btn.type='button'; - btn.className='linklike'; - btn.style.color='var(--accent)'; - btn.style.textDecoration='underline'; - btn.style.background='none'; - btn.style.border='0'; - btn.style.padding='0'; - btn.style.cursor='pointer'; - btn.textContent='Generate summary of changes'; - btn.onclick=()=>showWhatsNewSummary(); - container.appendChild(btn); + targets.forEach((target,idx)=>{ + if(idx>0) container.appendChild(document.createTextNode(' \u00b7 ')); + const btn=document.createElement('button'); + btn.type='button'; + btn.className='linklike'; + btn.style.color='var(--accent)'; + btn.style.textDecoration='underline'; + btn.style.background='none'; + btn.style.border='0'; + btn.style.padding='0'; + btn.style.cursor='pointer'; + btn.textContent=target.key==='webui'?'Generate WebUI summary':'Generate Agent summary'; + btn.onclick=()=>showWhatsNewSummary(target.key); + container.appendChild(btn); + }); return; } _hideUpdateSummaryPanel(); diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index 701b592a..b85aa559 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -763,7 +763,11 @@ class TestWhatsNewSummaryToggle: assert 'updateSummaryDiffLinks' in src assert 'Regular diff comparison' in src assert 'updateSummarySections' in src - assert 'Generate summary of changes' in src + assert 'Generate WebUI summary' in src + assert 'Generate Agent summary' in src + assert 'showWhatsNewSummary(target.key)' in src + assert 'target?{[target]:data[target]}:data' in src + assert 'target:target||null' in src assert '_renderUpdateWhatsNewLinks(data,{mode' in src assert 'window._whatsNewSummaryEnabled' in src @@ -823,6 +827,35 @@ class TestWhatsNewSummaryToggle: assert second['summary'] == first['summary'] assert second['cached'] is True assert changed['summary'] != first['summary'] + def test_update_summary_can_be_generated_per_target_and_cached_separately(self): + import api.updates as upd + + upd._summary_cache.clear() + calls = [] + payload = { + 'webui': {'behind': 2, 'current_sha': 'web-a', 'latest_sha': 'web-b', 'compare_url': 'https://example.test/webui'}, + 'agent': {'behind': 1, 'current_sha': 'agent-a', 'latest_sha': 'agent-b', 'compare_url': 'https://example.test/agent'}, + } + + def fake_llm(_system, prompt): + calls.append(prompt) + if 'Agent:' in prompt: + return '- Agent startup is clearer.' + return '- WebUI settings are easier to use.' + + webui = upd.summarize_update_payload(payload, target='webui', llm_callback=fake_llm) + agent = upd.summarize_update_payload(payload, target='agent', llm_callback=fake_llm) + webui_again = upd.summarize_update_payload(payload, target='webui', llm_callback=fake_llm) + + assert len(calls) == 2 + assert webui['target'] == 'webui' + assert agent['target'] == 'agent' + assert [t['name'] for t in webui['targets']] == ['webui'] + assert [t['name'] for t in agent['targets']] == ['agent'] + assert 'WebUI settings are easier to use.' in webui['summary'] + assert 'Agent startup is clearer.' in agent['summary'] + assert webui_again['cached'] is True + assert webui_again['summary'] == webui['summary'] # ── Regression: force button reset on retry ────────────────────────────────── From 7925a152111bc2fe48af06022abc32648e2283ed Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 15:30:56 -0700 Subject: [PATCH 12/19] Clarify generated summary button states --- static/ui.js | 33 ++++++++++++++++++++++++++++++- tests/test_update_banner_fixes.py | 7 +++++++ 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/static/ui.js b/static/ui.js index cb39b2bc..1b612443 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3933,6 +3933,28 @@ function _hideUpdateSummaryPanel(){ if(text) text.textContent=''; if(links){links.replaceChildren();links.style.display='none';} } +function _updateSummarySignature(info){ + if(!info) return ''; + return [info.current_sha||'',info.latest_sha||'',info.behind||0,info.compare_url||''].join('|'); +} +function _updateSummaryButtonLabel(target,data){ + const labels=target.key==='webui' + ? {generate:'Generate WebUI summary',view:'View generated WebUI summary',regenerate:'Re-generate WebUI summary'} + : {generate:'Generate Agent summary',view:'View generated Agent summary',regenerate:'Re-generate Agent summary'}; + const cache=(window._whatsNewGeneratedSummaries||{})[target.key]; + const signature=_updateSummarySignature(data&&data[target.key]); + if(cache&&cache.signature===signature&&cache.payload) return labels.view; + if(cache&&cache.signature!==signature) return labels.regenerate; + return labels.generate; +} +function _rememberGeneratedSummary(target,payload,data){ + if(!target) return; + window._whatsNewGeneratedSummaries=window._whatsNewGeneratedSummaries||{}; + window._whatsNewGeneratedSummaries[target]={ + signature:_updateSummarySignature(data&&data[target]), + payload:payload, + }; +} function _renderUpdateSummaryPanel(payload,data,targetKey){ const panel=$('updateSummaryPanel'); const text=$('updateSummaryText'); @@ -3987,10 +4009,19 @@ function _renderUpdateSummaryPanel(payload,data,targetKey){ async function showWhatsNewSummary(target){ const data=window._updateData||{}; const scopedUpdates=target?{[target]:data[target]}:data; + const cache=target?(window._whatsNewGeneratedSummaries||{})[target]:null; + const signature=target?_updateSummarySignature(data[target]):''; + if(cache&&cache.signature===signature&&cache.payload){ + _renderUpdateSummaryPanel(cache.payload,data,target); + _renderUpdateWhatsNewLinks(data,{mode:'summary'}); + return; + } _renderUpdateSummaryPanel({summary:'Writing a simple summary…'},data,target); try{ const res=await api('/api/updates/summary',{method:'POST',body:JSON.stringify({updates:scopedUpdates,target:target||null})}); + _rememberGeneratedSummary(target,res,data); _renderUpdateSummaryPanel(res,data,target); + _renderUpdateWhatsNewLinks(data,{mode:'summary'}); }catch(e){ console.warn('[updates] summary failed',e); _renderUpdateSummaryPanel({ @@ -4026,7 +4057,7 @@ function _renderUpdateWhatsNewLinks(data){ btn.style.border='0'; btn.style.padding='0'; btn.style.cursor='pointer'; - btn.textContent=target.key==='webui'?'Generate WebUI summary':'Generate Agent summary'; + btn.textContent=_updateSummaryButtonLabel(target,data); btn.onclick=()=>showWhatsNewSummary(target.key); container.appendChild(btn); }); diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index b85aa559..a28b1a0d 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -765,6 +765,13 @@ class TestWhatsNewSummaryToggle: assert 'updateSummarySections' in src assert 'Generate WebUI summary' in src assert 'Generate Agent summary' in src + assert 'View generated WebUI summary' in src + assert 'View generated Agent summary' in src + assert 'Re-generate WebUI summary' in src + assert 'Re-generate Agent summary' in src + assert 'window._whatsNewGeneratedSummaries' in src + assert 'function _updateSummarySignature' in src + assert 'function _updateSummaryButtonLabel' in src assert 'showWhatsNewSummary(target.key)' in src assert 'target?{[target]:data[target]}:data' in src assert 'target:target||null' in src From f0d2ebccd969358f20a72659020b1b5efdfbaac1 Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 15:43:17 -0700 Subject: [PATCH 13/19] Persist generated summary button state --- static/ui.js | 31 +++++++++++++++++++++++++++++-- tests/test_update_banner_fixes.py | 5 +++++ 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/static/ui.js b/static/ui.js index 1b612443..6e9360f4 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3933,6 +3933,31 @@ function _hideUpdateSummaryPanel(){ if(text) text.textContent=''; if(links){links.replaceChildren();links.style.display='none';} } +const WHATS_NEW_SUMMARY_STORAGE_KEY='hermes-whats-new-generated-summaries'; +function _loadStoredUpdateSummaries(){ + window._whatsNewGeneratedSummaries=window._whatsNewGeneratedSummaries||{}; + try{ + const raw=sessionStorage.getItem(WHATS_NEW_SUMMARY_STORAGE_KEY); + if(!raw) return window._whatsNewGeneratedSummaries; + const stored=JSON.parse(raw); + if(stored&&typeof stored==='object') window._whatsNewGeneratedSummaries=stored; + }catch(_e){ + try{sessionStorage.removeItem(WHATS_NEW_SUMMARY_STORAGE_KEY);}catch(_ignore){} + } + return window._whatsNewGeneratedSummaries; +} +function _persistGeneratedSummaries(){ + try{sessionStorage.setItem(WHATS_NEW_SUMMARY_STORAGE_KEY,JSON.stringify(window._whatsNewGeneratedSummaries||{}));}catch(_e){} +} +function _pruneGeneratedSummaries(data){ + const cache=_loadStoredUpdateSummaries(); + const valid=new Set(_updateWhatsNewTargets(data||{}).map((target)=>target.key)); + let changed=false; + Object.keys(cache).forEach((key)=>{ + if(!valid.has(key)){delete cache[key];changed=true;} + }); + if(changed) _persistGeneratedSummaries(); +} function _updateSummarySignature(info){ if(!info) return ''; return [info.current_sha||'',info.latest_sha||'',info.behind||0,info.compare_url||''].join('|'); @@ -3941,7 +3966,7 @@ function _updateSummaryButtonLabel(target,data){ const labels=target.key==='webui' ? {generate:'Generate WebUI summary',view:'View generated WebUI summary',regenerate:'Re-generate WebUI summary'} : {generate:'Generate Agent summary',view:'View generated Agent summary',regenerate:'Re-generate Agent summary'}; - const cache=(window._whatsNewGeneratedSummaries||{})[target.key]; + const cache=_loadStoredUpdateSummaries()[target.key]; const signature=_updateSummarySignature(data&&data[target.key]); if(cache&&cache.signature===signature&&cache.payload) return labels.view; if(cache&&cache.signature!==signature) return labels.regenerate; @@ -3954,6 +3979,7 @@ function _rememberGeneratedSummary(target,payload,data){ signature:_updateSummarySignature(data&&data[target]), payload:payload, }; + _persistGeneratedSummaries(); } function _renderUpdateSummaryPanel(payload,data,targetKey){ const panel=$('updateSummaryPanel'); @@ -4009,7 +4035,7 @@ function _renderUpdateSummaryPanel(payload,data,targetKey){ async function showWhatsNewSummary(target){ const data=window._updateData||{}; const scopedUpdates=target?{[target]:data[target]}:data; - const cache=target?(window._whatsNewGeneratedSummaries||{})[target]:null; + const cache=target?_loadStoredUpdateSummaries()[target]:null; const signature=target?_updateSummarySignature(data[target]):''; if(cache&&cache.signature===signature&&cache.payload){ _renderUpdateSummaryPanel(cache.payload,data,target); @@ -4044,6 +4070,7 @@ function _renderUpdateWhatsNewLinks(data){ return; } container.style.display='block'; + _pruneGeneratedSummaries(data); const useSummary=(options.mode||'')==='summary'||window._whatsNewSummaryEnabled===true; if(useSummary){ targets.forEach((target,idx)=>{ diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index a28b1a0d..5ad4ab22 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -770,6 +770,11 @@ class TestWhatsNewSummaryToggle: assert 'Re-generate WebUI summary' in src assert 'Re-generate Agent summary' in src assert 'window._whatsNewGeneratedSummaries' in src + assert 'sessionStorage' in src + assert 'hermes-whats-new-generated-summaries' in src + assert 'function _loadStoredUpdateSummaries' in src + assert 'function _persistGeneratedSummaries' in src + assert 'function _pruneGeneratedSummaries' in src assert 'function _updateSummarySignature' in src assert 'function _updateSummaryButtonLabel' in src assert 'showWhatsNewSummary(target.key)' in src From 1ad5fe9c140e42c2ee633e437b91f5d005b2cebd Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 16:00:46 -0700 Subject: [PATCH 14/19] fix: keep boot settings regression close --- static/boot.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/static/boot.js b/static/boot.js index 95855cc8..27dfa638 100644 --- a/static/boot.js +++ b/static/boot.js @@ -1379,6 +1379,9 @@ function applyBotName(){ window._showCliSessions=!!s.show_cli_sessions; window._soundEnabled=!!s.sound_enabled; window._notificationsEnabled=!!s.notifications_enabled; + // Persist default workspace so the blank new-chat page can show it + // and workspace actions (New file/folder) work before the first session (#804). + if(s.default_workspace) S._profileDefaultWorkspace=s.default_workspace; window._whatsNewSummaryEnabled=!!s.whats_new_summary_enabled; window._showThinking=s.show_thinking!==false; window._simplifiedToolCalling=s.simplified_tool_calling!==false; @@ -1387,9 +1390,6 @@ function applyBotName(){ window._sessionEndlessScrollEnabled=!!s.session_endless_scroll; window._botName=s.bot_name||'Hermes'; if(s.default_model) window._defaultModel=s.default_model; - // Persist default workspace so the blank new-chat page can show it - // and workspace actions (New file/folder) work before the first session (#804). - if(s.default_workspace) S._profileDefaultWorkspace=s.default_workspace; window._sessionJumpButtonsEnabled=!!s.session_jump_buttons; const appearance=_normalizeAppearance(s.theme,s.skin); localStorage.setItem('hermes-theme',appearance.theme); From 7d0a2c36218be6f6a967be64e4f037317e79fea1 Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 16:12:29 -0700 Subject: [PATCH 15/19] docs: refresh update banner screenshots --- docs/images/update-banner-whats-new-after.png | Bin 32865 -> 144705 bytes .../images/update-banner-whats-new-before.png | Bin 32321 -> 140956 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/images/update-banner-whats-new-after.png b/docs/images/update-banner-whats-new-after.png index 7b0469f9129bd0c19f926512cab851abf3826ad4..3fbed52db26704e348b07374b8817d36f85d8ea7 100644 GIT binary patch literal 144705 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ࠩ+5xYR01qk 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 UvosPLzaDD(2gF7s!HKaUw@=**e{N6e*_ZU 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%0Aj;8G4smpa65j;x-us=T#Rbp}=O<|`ERtX6 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 jfSc!sljEi4hokzH5W#hDOfQb}5oYG5 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 literal 32865 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 Q01zT8sr0E*{Bz*{19(VSj{pDw diff --git a/docs/images/update-banner-whats-new-before.png b/docs/images/update-banner-whats-new-before.png index 1940cfce9ac420ea82d87e75608200c5854ed899..e5af9b395d862efe6b4c041c7b91ccf4d2ea3c5b 100644 GIT binary patch literal 140956 zcmd3N^LJ!j({^l5td2Rc(a|Im+nCsz*tTukm{^lcY}>YNeVOOJpLf0QfAG~0ebzd? z`}A2??W$dMRaK~*j3^=;E*uC52%@-{umT7OBoYV+m>>+;=bez#4kZu}6cBM?K_!=r z(>K^vBT+}fuqy5YJh#W$HH9XPFA9=$tVE`uxYYruA?jf0o$OE^h?p{`i~IvMJ2pF5 zFUwbTXa{NOyRpff>=RK}Y*1Vx>_3cA;$x}<`p95sO$ENuH56qPyt};?+0XNsT;R@Y zG?d-*9h}ThmhtDc{_%8rD>p|}E_cdYHqq}1vd{THvZ*%k`r4J`?DT)`=H&R~&?dse z{cph@R%rP@i+pnbe_YbvTh5@(^oSeLlRl)D)JPU8XKVHvo*k!s(QoOokJ>J(RE?OVn zI^O-nss0hpycC~*A3C3M+HEhJx#(T;F?jxtxWW5F2YA)6u;1@zj0rFRYtp;B|UET>p7DIk`!&cr=%JGex`w$MF^5 zo!@~BAJcDBka+;dlfPBCv$f{pmCMDuXfh_IJp$e@kBbBT$LATntrtSC4TiUOj`Pgm zBQ)9Hr+KA3KeZoIJ3ivQn;`#u4BGy~2NW`&FOs z1iI?7^13SIF7+x;xF zxMSzZVym;M!={Jex08V2f21o`i0j|?VWg;ze)IA!Ai-Ox02J6GuQ^}PzXdH>zh0Fy zJU?-~&NrEW%5cB5NzYVY;4QRm4S2t^S$`mR+=hSLXLfksY(9S~$7TBc!uycn=j+z0 zkHyQu#)nDA(~37VV2FkOSMa41wD$hlOH5Ourw=v- zB+fsa7cR@E)3rZ-U%Xw_mG7P3eyU)9_~2Rj^7XZw@eZ;m%6rGU<3Xo=>wCJB=T67l zJmK52j)yhUzh)c7{a=&Sl|pbzgbv?}4YT}MZuoeE=Ls^2^FDw0W4p1jb`{yN>~`|; zdT8Boe!5G4wHtP{#q8$wew8_M@HU#r0N1h8c5#*Y0-^%^;Pt+=_;`BI`CmBvk1;`= z?0Q+(7c!r|Ol5x@cX*wAyhv_ra6KCA7f4ffwQszacQjwEKlOh8JO9JG#h+TVdF|Wy zkE?cuv=z65iWft#1!un7QXc5^(c+KC6Yux6U%~&H7isXdf&4$n8*F3!5@6hCsPg~! zI}?cE=<`4YcG4_G7T>gQ)orA@m!XyuKbl8N6@j}x=7o%c=I@;Zr= zoD$)%tao}xEWt#qe2iw($;57(q_rx4TH^BUtR&Ad4YYV*L>Af_W&8@mRT>MC=RmL# zUyH2z6%<{!j3ZqpD#)YY0y)wdgqZGhu@2B-(CPfE6y1;mKw4{hEyA4}UYRb4r5KUP z56exa3}~e++Tts^2f8c5-qL;*mH>EcOeQfbR#xS_>@DsVdd-FbPCyn%fnZQ^BGKga zVw-ekNNi~6&7wBm$5ssG;0#JBE&}r|N&I#>HDb$J3`I&nk(7wyHs(|!l&6v704?Zj zRsD98#QkVOyqewMz^l2IM!Pu-fdUB1Q$(2oiA;J!0=S z>VB~|JJ-C%hym)yOW|}kxqf&qEWc+z=vPr_*_t~D9i=MJSYdX;bx)9jDzRW?i7$H3SB%q zku3}65hR)XMao*xjwkMCY+K$qDr+BW))baRC1~_+1nS&$Rg6b#Rp$_|-?jfIR??2B ziR`ZWG{{?Faaf&3d!81E%9b9y>DIfj3b?;A!C;4W3(_XRM39H=R1!=nEo5c^#zO^& zD8;tzO#ITM7nAMOR)q;0C-7|1VjEkw@x-4cp}E`@}Y@KI3z z_)DTr;c&i99@Q4?Sr!3hxbA}N-6_s9LkSlk_>)>RJn!wKd@m^7;;NtXqwSjmVPE|( zdJDNFStM5#CaPRvbTDCHtmz@fl=v5iV9%qN=w7QsAunDKCd&g#yc$6nMT*MOeJVzI z&VX7RaHb=r@{y8ghE8oWfs(>s?SKbHdy=ls%SC zDh9G&bmlS0Ak+skjdW`$HBAVe4>h(Kttm4ovQt_$q5Ll8Dy-xa=pEIdL=!OhUot^e zd`5XJWt&M%nMng9Bikvo^KeK9Yz9OIJeaVsx1b`>QjczyiY4A=0*p(UVJ({M#m#|a zk-cb#pi3ad8A+YO*uFpvm$gOM{z8tO~eb z!^o=eNT&_2`H`M{oz|Ea&=?5xd8T2qu{%-rK`ecUig;+yAdd==a^Id^1coWqv%3?B zv=QQ+1VZ(g^oLKvQ4EX5CF6=)FdiLFt^&-pNWP0zB+Vs?D#Wa2PeI6YmoOU|oqaknGh( zoAe~iE0y~c6g889)@GDF9PMY6NZs8sWpN#^tJ)O&7mmBOuf=B7GrBiYDqSfM(J3v& zjO7UTLVtdT9Krb5(KOir(v4L_`7|+hUWR}uD#aF*VBXBq{Mq=jFT~a}u@jUtC2HI2Uot?Js_Hk3X&^U=nFfI{@BOVrCEQpv{`;QNfP(tm z@9=#R2nISbTE%A1+z~F`f3zDi|6qmH=Q{Gy>3t_{+xwQjo{OhYiC9yZJMuCYh#giy zZgQe86Z+@tczTR`)v+@Q>sQXmEsp+csVgCD@mH7~5!g!bT9$f!H1&ioUE(Rup~Y9V zGp-((jMe<8fy+*owkTE|mJ$)P;-6yr?jzXZE(p@GnjrNx-1=PF12+%+Cpy|v5s4f^TVSM_nC z-Ec44SCg}ogCu?^3M~QC+ z>P+z%Yu%)VX(Oc@wKYpTeVKav8;7Kb7&Y-HZfWy!C&`t4HXPDT#Eq=RTk=}ZgGp84 z&mr4_ek^0wKFHsCs~)M2d3qEB`MH~O&8K`~_R|BQ5^62V&`b|hI`OwK(WlU`P@`>TMP_NY12IUwr z|M5Y(F!{WheM$w1`Z+)pXaq#dd(2wJUY9SZKAQ>2PcsezbYLN2IF}=%ThK6VZt+Ml znJ^KY*+1C)E-3Q>rtuzch`a;fNupWGK~$Zft&7v+l!^eN?IIHJZk*fn86;K<=*K`~ z={}9{ZGOY&xH-Q=3HWzT!@^hb6o=sx{VcGhOEsm`@~qhut7x?k_-w0j%4rwh>eZ7} zhXi&sRk0JQByFgYLRhQga&=RQIdcOGvT#~YLyK)y-l>;_W827A8p?87Ri>?6w}2SR z&0$4R7N%{`=Jq{`y3UyE8Z6(aGyT`5PrudcUM+Y|X90|>quEmc55-}xq(-M^fU|*U zn8~s2%QpzZ#)-BVl4B&HxF&SwY1YT(f%>g=NNb?Jb|Lf&nwRzFrf7k|oR*5pW!d+; zW9lRG1c*~1=&3qieFV(+grb{XTM*ej$amIErFcV9d#Czr1P3?g(%4c@i|`E&5F=|Y zR&v@nfqL$wbAv;nVF&`u_lEtoGc95u;R>g~elZE>-Uot^s0t{xi!c1%S|H|UlR=HKu)%UF(- z%Mz;x5~`%gF(%$Ujxub8aU{RjBqO+=LU(a>f+WQhnN_v-p+-jdS`G@W7P_6@0k?W<8H*l4zg#H1;*EsljFajm`I;h; z9App7qEn?wm_n0?GhfL;(g@Jai2%^IRb5GBjv#S@{AzM8Xpq_CO;jF!i*Btffn!u< z^p}RN`wC^&wtr^Bm#n^^R_2(thEBbCvVo2O2sQ}=E1S9oY3V@=;^18-8rev8TeAK- zzLzxvR~4M6ys!|TGdv$(`EkmH42;M{WMUvIq}(^hOTA3%<&=YX3mH52Z4YMiyn{4m zlx|g@dZ!#g(N0npgYB~VD%PtRF-di4-%l`Q7xq2_EO44~Hq?@nC(HK!02l=q@-iN- zJo2;&T(mlpOWtp6R_t5;!<2H{#15nzBLIEHe2&($X z(6|O&N_d^uAl`0k6h#S5HjSNV#hv?J$pr73o+am$LiP2vB)T2G2um9ZG7z&O{HhV5 z^k$_7q(DO*NK+W8K#VTP{jp^x#AQ%rUn>%zvM7C^M_?!w-M(tKk}0aSQ36W32t@|e z`mOB=o5+puCaNI~B(W8Z{%mWm6>RB(Uhhe1P%S%%YNDlgZLvDFk>LtLp6H*>sqcq$ z!WtB;3nR4IH#3P+Lp5;ib7*Q zUKU5z3T-USN&z2k;}b*2=c0n&4y8w8_u8T|kn7XE!2OR+Lov$V8jD1rze#|*z*X*a zxD`b!;_w$P?b5jdA|p>rs5%UWD0W@!kjhsN35u_q5)k1_)O(|KA8 zF(w&@70e2fruhU*l~WD*+=TjWhZ5DWS@__4#IAF7a8X1Fh1c4pM3 z8HK$6D)CszUq`nebkV6q%~Osa3JXIC0T{g5-Q`Mi!eukkC-|;>RV9Gd5i)^IIlXT` zj`=zyfRzS>pK<(tC(+YIq`ZcvH4N^uKon1Ze>*YYCxYKVWh=O!Ce`731~Ow@VOuC7 zRq+k)1VcrF=S-EMjL_(bY5T!gpU7_K)1{q1-m9rl%P@z~93-8bgd+7~+*~X`XrV#n z+D#*p&8={CN6t}r$q^42k^z}7j1djTEoXzRs#t>lK(EM26X>1k);am<62S=@+NW@-L)tt$~DTB5L(Ann>cb-BAggsRrtMp#m!DzNwT=I zM_uQx!cl<1X9CTy(mteg%YnP`C2%(-X$}Uw$s^Zx?)bP(o{mN{IrMnClKZ}*nSQ{U zv*VU?BY#ndtC;wVQeXEw#z-`$_)D_w&s23U?15KKahT>qaSnu1zKD{Y_x{?6ub=0F zG~-z6OQaE}-SUw6YFIBvYSh`cI@Dq&SW2YvG?89XI>OvdF+tZ#)h2jZq$K63GU;D# z53*X0UG}nT&F1EM4{w@HURTSqo=3qio4v_z6Y6rDfjvUs*FR zjH6&D1 zL_b_JPlXdowwHR1La7LSBq~yxM3ON;hu3s~1y?97eq1G=`=!7ub#I%w)Po?N4mv_j|_^<4; z8!L+=g=JXb$y7+#Y;zvgsX<@{9lRM5>%cdqs{p5ysRYP6$GHbN0M0sAyR_Lt!+!i^ z*u)(;-%*Ibj)GEZR88&UB!M$sx>L%!Ekm6i^JNNT1R9X8%K9yR@*Al_-Hur>y3?|4 zX+;=&hwsdZhFu&hwDjw7TJci4#=;&3_M`7Yo@@5dMuO~?S#}x~zs&Nv2#xoF`6M$Y zrCV~62(7RV9H=buaCjLff5Xi#x6Ten?G}CIVmEoj^|$Yxif8u@MzD8wGRqj1;I}I2 z)ABVEgVwY&=t`=DMS6x5mP;FIMWw#0*0kxQpHYihd--zgwNxoxrI9qLI9)j)`G<8e z7e-Lh$(bL8R3{6{Nn_h}*%tTH6vO+L_tVYFz48KuN~Is>$*$nmLHn^EV)f-FzopjQ zH9UuwQx~<)YNO}H{IAzJ6`vuNjfSUgmI+|}SvcXxP5S*O#okqe6z^4J;fwfbw!C9| zuKhh+XTfG!LFhkVgh{^blxSWDxCLV^dNJ#-wC}xo)vo5t*sxzn&YXuLsYPNVbcE_N zdR(OKkusq=E^8_PS=msmF}Ub>TxpuZ_nX99qQsO*?T+EdRM1m7VV6X<@Q2{99obT| z6q0LIMXV*TM%cA#v`-k`6W(LTzutv8%>E&Jb1qoP-|xjmC&DER?kJ@r9X$rYSo)F+i)p$vY)NMz3ia;}Qz;gjEv=$?&L4Vy0Pj<%e4>tt(YaNu54FBVTyhTzeA!_!#;H zSSadD*J=2`^0K>sGGV)DT6f);)$#CHGx?d~OBxaCSp1XQ>+<5Q$%=H_0k`sv@xap2^FDX8J?3I9IRzR|zyY;uR^qh+L zXoR5O!zS5(9yL3vi}w_sHrfuZPC6QnKVHM{BAvAzpM1SN?{-A>N`alzx`lj+zqclN zKQ1e+{2?!QpXrh_y~{crFAvJInsAZUp2sRz&RtLEgLRybQ?Y(H?H_nI-!Y=20}*Y; zxlFWOww@f{PwP04gIb*1cE;|qo7UY1kiA{_(edT6&!{a^q{mVa;AGS6>uX^FPg`O@ z`q!M;;S!TX%}iNLViEYD-F00*XnUX%D^TaCYk+;{P-!NrEH>8F6puNG@r!Jk^E7KT zgo&gzZl-#?;eF8*hVG&GAk>N5ml@L!R|o??Cw+oDrv@5~*)Pj;(`B0G%C0h|1LDvK zo7?I|n{)fozXbfByQ!*}0d%lJ`G+f!O{AsvtWe`Y-Lh+;d$#rYNUA#)WbFzBft0}> z>ZVJ_YK;bzDThhJ^*0 zmfhL|?ca_TORDrP+`40FJN=I(y1>b5t^$F)5)r6LY*Q*E4P2IH^dDtX%dmhq%+EwO zpXG%Mb}#dFvNzfO!?!v=0co|80uuFGP`U1bxQo2>=?i|Uusscmb4 z*l!Md;;k|(q{~bAvmC<`1(8iC-mz{6yR&)gL=G)1AmU}_g@^T}P9|YRB(!2*!-5ws zTolrFakW5_?|IRWgo}LoL{V|l@yp!hAPRs%9`f2Lr*M#9MNa1#P07m;>#xGnH$zYB z76Ks;OqqikUbfB$5#g**5iCV%QdyAa&%LizhZCt=-lsuUmP6Xj5|^~2WTP;7Sw_Ah z21wYPU@UIW?~}&K#jD+qc(4?eP3;5ZzGANq9P_$z}_1yA;*&@VCWIJt`L!f@)P+g zO%ol?m&G8mrd-8^nyt+=y`w>Eg9iH?#7mguHpzmU($QezUnEPp&& zf9!-i13hf!N;TIW5^2>pGn*{PCD+YFu|(nYZ>l3$k8E zwt2nLZZCX#+5IHV2e1#hi6N#tRgox018$1M4o=cu+Ccu49>f+L0yYl3k@xO%BXIV zB2q~k>yaNUcbv2E_jvKmu%DL>kmx_8j&(Z5{BF^jq+E`Y6klCcorIz_^;ilCXQA5f z(Z`DJ1)d@55+iF69re8mi3~P%FgGAt%&XTvxj`iSYgDAE91ef^%A9X!A|x|k{1tyi z9_XVTU7BLv)3>KcBkl#4anqj)-Uc`;77(OYAnKGt5~Lmlkmsn!o5>9xT>W|dlYW%< zIevSco0;s++h4~^Stu*c3eWi*ceYhO>|QM1mx_X&*}Xx3kBvo7)NZJ(H{0HfXRdsb z1R$GO-d85jisR7yj~%*8*e>(;XPUV_odtx-{%W#O-8lo=uz;6Ox0?~KgbaY1k$=l!zWv5jKFGoQ0uL~8Bi)c*DP_G^dqc9w^l@( zD;r#*uv0sz6Vb0N`zcN_b&`rG28@Mt z@IY3S12S68aHTsOlz)iJE@>i3mlj)Osjv>c8CFUHD_tfpTDW97r|#ng;|r>m?s0uT zgPZwq4P_0ofcPs;<5-CTu1K>pw%S}+7i2K4eTDbbXvB*~3jMoNrls^kGb{exum&fh zq+bVHRJ*QPWRWYSg<>=Piep7wmFAYMsNX0{`r|k6CltCzx8Ie@rtM{pv7XIox`q&b zTuw%(bNY{!bEGxb2DEaf{~isbr!i=no|^X71Z4!2E8E5&BbwagxAqJ5=@IdjTTbBd zK;>6Pnn`%zKe|`@YcE?sL|2QTlP#w4Qu$XbpwmK6j56qAp#$MBࠩ+5xYR01qk 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νh;lJ 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 A-v9sr literal 32321 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 From dc213d47b869f1706aa35d7b4f40332094919aac Mon Sep 17 00:00:00 2001 From: Frank Song Date: Thu, 14 May 2026 07:13:34 +0800 Subject: [PATCH 16/19] fix: preserve literal thinking tags --- CHANGELOG.md | 2 ++ api/streaming.py | 9 ++++--- static/ui.js | 14 +++++----- tests/test_issue607.py | 30 +++++++++++++++++++++ tests/test_sprint38.py | 61 +++++++++++++++++++++++++++--------------- 5 files changed, 84 insertions(+), 32 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48e58a6e..b1967d0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ ### Fixed +- **Issue #2152** — Literal discussions of reasoning tags such as `` and `` no longer disappear from saved or re-rendered assistant messages. WebUI now treats `...`, MiniMax `<|channel>thought...`, and Gemma 4 `<|turn|>thinking...` blocks as hidden reasoning metadata only when the wrapper is the first non-whitespace content in the response; provider wrappers with leading whitespace still strip as before. + - **PR #2191** by @lucasrc (auth refactor 1/3) — Thread-safe login rate limiter (new `_LOGIN_ATTEMPTS_LOCK`) + PBKDF2 key separation (new `_pbkdf2_key()` reading `.pbkdf2_key` separately from `_signing_key()` reading `.signing_key` — previously both shared `.signing_key`, a key-reuse anti-pattern across HMAC and PBKDF2 primitives) + transparent migration in `verify_password()` that re-salts legacy hashes with the new key on next successful login. 241-line regression suite covering the lock + migration paths. Split from earlier #2167 per maintainer review request. - **PR #2192** by @lucasrc (auth refactor 2/3, depends on #2191) — Invalidate password-hash cache when password changes via the Settings panel. The PR #2191 cache lives for the process lifetime, but `save_settings({'_set_password': ...})` could mutate `settings.json.password_hash` without telling the auth module — leaving the cache stale and verifying against the old password until restart. Now `save_settings()` calls `_invalidate_password_hash_cache()` on both `_set_password` and `_clear_password` paths. 52-line regression suite + `verify_password()` simplified to rely on the new hook instead of doing the invalidation itself. diff --git a/api/streaming.py b/api/streaming.py index 91dbc738..bf473d90 100644 --- a/api/streaming.py +++ b/api/streaming.py @@ -689,9 +689,12 @@ def _strip_thinking_markup(text: str) -> str: if not text: return '' s = str(text) - s = re.sub(r'.*?', ' ', s, flags=re.IGNORECASE | re.DOTALL) - s = re.sub(r'<\|channel\|>thought.*?', ' ', s, flags=re.IGNORECASE | re.DOTALL) - s = re.sub(r'<\|turn\|>thinking\n.*?', ' ', s, flags=re.IGNORECASE | re.DOTALL) # Gemma 4 + # Treat provider thinking wrappers as metadata only when they lead the + # response. Literal discussion of these tags later in normal prose should + # stay visible (#2152). + s = re.sub(r'^\s*.*?\s*', ' ', s, flags=re.IGNORECASE | re.DOTALL) + s = re.sub(r'^\s*<\|channel\|?>thought\n?.*?\s*', ' ', s, flags=re.IGNORECASE | re.DOTALL) + s = re.sub(r'^\s*<\|turn\|>thinking\n.*?\s*', ' ', s, flags=re.IGNORECASE | re.DOTALL) # Gemma 4 s = re.sub(r'^\s*(the|ther)\s+user\s+is\s+asking.*$', ' ', s, flags=re.IGNORECASE | re.MULTILINE) # Strip plain-text thinking preambles from models that don't use tags (e.g. Qwen3). # These appear as the very first sentence of the assistant response and are not useful as titles. diff --git a/static/ui.js b/static/ui.js index d0f27aa8..4814092b 100644 --- a/static/ui.js +++ b/static/ui.js @@ -4236,7 +4236,7 @@ function _messageHasReasoningPayload(m){ if(!m||m.role!=='assistant') return false; if(m.reasoning) return true; if(Array.isArray(m.content)) return m.content.some(p=>p&&(p.type==='thinking'||p.type==='reasoning')); - return /[\s\S]*?<\/think>|<\|channel>thought\n[\s\S]*?|<\|turn\|>thinking\n[\s\S]*?/.test(String(m.content||'')); + return /^\s*(?:[\s\S]*?<\/think>|<\|channel\|?>thought\n?[\s\S]*?|<\|turn\|>thinking\n[\s\S]*?)/.test(String(m.content||'')); } function _formatTurnTps(value){ const n=Number(value); @@ -5101,25 +5101,25 @@ function renderMessages(options){ } if(!thinkingText && m.reasoning) thinkingText=m.reasoning; if(!thinkingText && typeof content==='string'){ - const thinkMatch=content.match(/([\s\S]*?)<\/think>/); + const thinkMatch=content.match(/^\s*([\s\S]*?)<\/think>\s*/); if(thinkMatch){ thinkingText=thinkMatch[1].trim(); - content=content.replace(/[\s\S]*?<\/think>\s*/,'').trimStart(); + content=content.replace(/^\s*[\s\S]*?<\/think>\s*/,'').trimStart(); } if(!thinkingText){ // Historical name "gemmaMatch" refers to MiniMax <|channel>thought format. - const gemmaMatch=content.match(/<\|channel>thought\n([\s\S]*?)/); + const gemmaMatch=content.match(/^\s*<\|channel\|?>thought\n?([\s\S]*?)\s*/); if(gemmaMatch){ thinkingText=gemmaMatch[1].trim(); - content=content.replace(/<\|channel>thought\n[\s\S]*?\s*/,'').trimStart(); + content=content.replace(/^\s*<\|channel\|?>thought\n?[\s\S]*?\s*/,'').trimStart(); } } if(!thinkingText){ // Gemma 4 uses asymmetric <|turn|>thinking\n... delimiters. - const gemmaTurnMatch=content.match(/<\|turn\|>thinking\n([\s\S]*?)/); + const gemmaTurnMatch=content.match(/^\s*<\|turn\|>thinking\n([\s\S]*?)\s*/); if(gemmaTurnMatch){ thinkingText=gemmaTurnMatch[1].trim(); - content=content.replace(/<\|turn\|>thinking\n[\s\S]*?\s*/,'').trimStart(); + content=content.replace(/^\s*<\|turn\|>thinking\n[\s\S]*?\s*/,'').trimStart(); } } } diff --git a/tests/test_issue607.py b/tests/test_issue607.py index 15d0c4e4..0e950c3d 100644 --- a/tests/test_issue607.py +++ b/tests/test_issue607.py @@ -64,6 +64,36 @@ class TestGemma4ThinkingTokenStrip: result = _strip_thinking_markup(raw) assert result == "Answer" + def test_mid_sentence_think_tags_are_preserved(self): + """Literal discussion of tags in visible prose must survive (#2152).""" + raw = "The literal tags and describe reasoning markup." + result = _strip_thinking_markup(raw) + assert result == raw + + def test_mid_sentence_closed_think_block_is_preserved(self): + """Only leading provider wrappers are stripped; later tag-looking text stays visible.""" + raw = "Use scratchpad as an example in the answer." + result = _strip_thinking_markup(raw) + assert result == raw + + def test_mid_sentence_channel_tokens_are_preserved(self): + """MiniMax-style channel markers later in prose are visible content, not metadata.""" + raw = "Use <|channel>thought to start reasoning and to finish." + result = _strip_thinking_markup(raw) + assert result == raw + + def test_mid_sentence_gemma4_tokens_are_preserved(self): + """Gemma 4 thinking markers later in prose are visible content, not metadata.""" + raw = "Use <|turn|>thinking to start reasoning and to finish." + result = _strip_thinking_markup(raw) + assert result == raw + + def test_minimax_channel_without_second_pipe_still_stripped_at_start(self): + """The client-facing MiniMax <|channel>thought shape is stripped when leading.""" + raw = "<|channel>thought\nSome reasoningAnswer" + result = _strip_thinking_markup(raw) + assert result == "Answer" + class TestGemma4TitleLeakDetection: """Verify _looks_invalid_generated_title catches Gemma 4 leak.""" diff --git a/tests/test_sprint38.py b/tests/test_sprint38.py index 020574f3..880a812e 100644 --- a/tests/test_sprint38.py +++ b/tests/test_sprint38.py @@ -5,7 +5,6 @@ Covers the static render path (ui.js regex logic, verified against the JS source and the streaming render path (messages.js _streamDisplay logic). """ import pathlib -import re REPO_ROOT = pathlib.Path(__file__).parent.parent UI_JS = (REPO_ROOT / "static" / "ui.js").read_text() @@ -14,24 +13,25 @@ MSG_JS = (REPO_ROOT / "static" / "messages.js").read_text() # ── ui.js: static render path ──────────────────────────────────────────────── -def test_think_regex_has_no_anchor(): - """The regex in ui.js must not use a ^ anchor so leading whitespace is allowed.""" +def test_think_regex_is_leading_only_after_optional_whitespace(): + """The regex in ui.js must anchor after optional whitespace.""" # Find the thinkMatch line by locating the .match( call on that line idx = UI_JS.find("const thinkMatch=content.match(") assert idx >= 0, "thinkMatch line not found in ui.js" line = UI_JS[idx:idx+100] - # The regex must NOT start with ^ right after the opening / - assert "/^" not in line and "(/^" not in line, \ - f"thinkMatch regex must not use ^ anchor — found: {line.strip()}" + assert "/^\\s*" in line, \ + f"thinkMatch regex must only match leading blocks after whitespace — found: {line.strip()}" + assert "/^" not in line, \ + f"thinkMatch regex must still allow leading whitespace — found: {line.strip()}" -def test_gemma_regex_has_no_anchor(): - """The Gemma channel-token regex in ui.js must not use a ^ anchor.""" - match = re.search(r'const gemmaMatch=content\.match\((/[^/]+/)\)', UI_JS) - assert match, "gemmaMatch line not found in ui.js" - pattern = match.group(1) - assert not pattern.startswith('/^'), \ - f"gemmaMatch regex must not use ^ anchor — got {pattern}" +def test_gemma_regex_is_leading_only_after_optional_whitespace(): + """The MiniMax channel-token regex in ui.js must anchor after optional whitespace.""" + idx = UI_JS.find("const gemmaMatch=content.match(") + assert idx >= 0, "gemmaMatch line not found in ui.js" + line = UI_JS[idx:idx+140] + assert "/^\\s*<\\|channel\\|?>thought\\n?" in line, \ + f"gemmaMatch regex must only match leading channel blocks after whitespace — found: {line.strip()}" def test_think_content_removal_uses_replace_not_slice(): @@ -42,6 +42,8 @@ def test_think_content_removal_uses_replace_not_slice(): block = UI_JS[idx:idx+200] assert "content.replace(" in block, \ "ui.js must use content.replace() to remove block (not .slice())" + assert "content.replace(/^\\s*" in block, \ + "ui.js must remove only leading blocks after optional whitespace" assert ".trimStart()" in block, \ "ui.js must call .trimStart() on content after removing the block" @@ -53,6 +55,8 @@ def test_gemma_content_removal_uses_replace_not_slice(): block = UI_JS[idx:idx+200] assert "content.replace(" in block, \ "ui.js must use content.replace() to remove Gemma channel block (not .slice())" + assert "content.replace(/^\\s*<\\|channel\\|?>thought\\n?" in block, \ + "ui.js must remove only leading Gemma channel blocks after optional whitespace" assert ".trimStart()" in block, \ "ui.js must call .trimStart() on content after removing the Gemma channel block" @@ -65,11 +69,11 @@ def test_gemma_turn_regex_in_ui_js(): " (note: double-pipe: <|turn|> not <|turn>)" ) # Extraction block - match = re.search(r'const gemmaTurnMatch=content\.match\((/[^/]+/)\)', UI_JS) - assert match, "gemmaTurnMatch line not found in ui.js" - pattern = match.group(1) - assert not pattern.startswith('/^'), ( - f"gemmaTurnMatch regex must not use ^ anchor — got {pattern}" + idx = UI_JS.find("const gemmaTurnMatch=content.match(") + assert idx >= 0, "gemmaTurnMatch line not found in ui.js" + line = UI_JS[idx:idx+140] + assert "/^\\s*<\\|turn\\|>thinking\\n" in line, ( + f"gemmaTurnMatch regex must only match leading Gemma 4 blocks after whitespace — found: {line.strip()}" ) @@ -81,11 +85,24 @@ def test_gemma_turn_content_removal_uses_replace_not_slice(): assert "content.replace(" in block, ( "ui.js must use content.replace() to remove Gemma 4 turn block (not .slice())" ) + assert "content.replace(/^\\s*<\\|turn\\|>thinking\\n" in block, ( + "ui.js must remove only leading Gemma 4 turn blocks after optional whitespace" + ) assert ".trimStart()" in block, ( "ui.js must call .trimStart() on content after removing the Gemma 4 turn block" ) +def test_message_reasoning_payload_detection_is_leading_only(): + """Persisted literal tag discussion later in content must not create a thinking card.""" + idx = UI_JS.find("function _messageHasReasoningPayload(m)") + assert idx >= 0, "_messageHasReasoningPayload function not found in ui.js" + block = UI_JS[idx:idx+500] + assert "return /^\\s*(?:" in block, ( + "_messageHasReasoningPayload must only detect leading provider thinking wrappers" + ) + + # ── messages.js: streaming render path ─────────────────────────────────────── def test_stream_display_trims_before_startswith(): @@ -128,13 +145,13 @@ def test_stream_display_trims_return_after_close(): # ── Regression: existing anchored patterns must be gone ────────────────────── -def test_no_anchored_think_regex_in_ui_js(): - """The old anchored regex /^/ must not exist in ui.js.""" +def test_no_strictly_anchored_think_regex_in_ui_js(): + """The old /^/ shape must not return; leading whitespace remains supported.""" assert "/^" not in UI_JS, \ "Old anchored /^/ regex still present in ui.js — fix not applied" -def test_no_anchored_gemma_regex_in_ui_js(): - """The old anchored Gemma regex must not exist in ui.js.""" +def test_no_strictly_anchored_gemma_regex_in_ui_js(): + """The old /^<|channel>/ shape must not return; leading whitespace remains supported.""" assert "/^<|channel>" not in UI_JS, \ "Old anchored /^<|channel>/ regex still present in ui.js — fix not applied" From 25ce490e2403677a23f197b3e5332f6d10e79e2f Mon Sep 17 00:00:00 2001 From: Jordan SkyLF Date: Wed, 13 May 2026 16:27:06 -0700 Subject: [PATCH 17/19] docs: add update banner summary mode screenshots --- ...date-banner-whats-new-after-summary-off.png | Bin 0 -> 141943 bytes ...pdate-banner-whats-new-after-summary-on.png | Bin 0 -> 145729 bytes static/ui.js | 4 ++-- tests/test_update_banner_fixes.py | 12 ++++++------ 4 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 docs/images/update-banner-whats-new-after-summary-off.png create mode 100644 docs/images/update-banner-whats-new-after-summary-on.png diff --git a/docs/images/update-banner-whats-new-after-summary-off.png b/docs/images/update-banner-whats-new-after-summary-off.png new file mode 100644 index 0000000000000000000000000000000000000000..fbc1a861fcbe84ad338111ab6641522a89c9296f GIT binary patch literal 141943 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ࠩ+5xYR01qk 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νh;lJ zzUZ+=>NYZyPOkP zgRxz<8{e@o8HDbzO_N>^+)bK2MPqThxw^7TWi zm0WUqtUhLI?rD{-R9JRIslyq1H|E-jSaC#8SJN2yYwn)ZaVygzHnLanh~Kr3^vl(f zlc0sq_h_4M!iKADHbCl|v8ro6T32)7 zKI`{2)eRa!*^Sjf({I6a%EQi#97zDw9;Ssrb<uvkIB}iAfQ33fHlSg^N|8iA1u@Zo zkBT564>mHSd9VttTs2c+EJIg_r%=&WqK+LjlZtYkoOG^oHa@w@8&Oz+GBK27sDfc* z0wltWtceuqPnlN0yUAS*zgi~9Dkn27&vCBwj;^9VU#d3uHd{06MNcx7*TL?mW4u*4vx^-w8Gt3;($QtW6Pn$rQf(B7%~Ugs;yd<` z2~&kzKyi-aavj^nn>ryX@Zc6ztS{du#yr9yc{Yah#6;udUjqX}^~5g61#7gbmmaDO z@ua;sG}xE1{U^B1Ryblw+p1whBkAHar_JV*r#g3uJeg}M^8ZJB&;8%la*( zgeP1MwtW&k60fZ`g$?`I#7MBT(!AZiTmQaWGfYi+vL4OxgPmTMRP9|C_Q)AA=UZrp zA{SU{`2nq^&CGutQGG=yK!-*F050#3gvz1t%CZ!c?FR4(jP97K;Eks=IaNY-$v}>l z0(WA!s2XZ~`meP|lQ|eh+YdNjE1X$B`11;Jfi*G4zfQG&s?`nfo5|UZbxO2z0oq5s zi0+f#Y}#2Y$djf>_>D9xN{F;BSmWz^DJEFGjpqS!>l*5n!?hdD@*ui1b?v_D#$5ZA zTO1O8vu9zohqdpO^BDA|-bXwZjmt*#Z9%u{OK@a)u{EDqd4{+nBwsMDZ!4S$B1|Go z03%cgg@Awnt#-XBCuKxXRG&m9TxoQ1)<7wMt|ccR*ddKZwrA0?1JGRb& zY~%*N)k~5bsKC0d_asy|E_qm19O3yBDOv^puGD5eiTC3^iD=tBQISI!T?r_+$5s&@?@H8=?Y4pGl-ylR+6PUb-?M=E)LoHvG z2{NefsxSuJ62lWj)6}{-A>-Wkc@dUK6QAd%L1MKQS`I+Nbp4&Up>Po!$&aQHr|Dv; zTk+iS7?EPS1qEbiBq59R-<;F+d+xTB-GIgO(v~;^fl?)WyYOf5^8hmnUgXxyJ!(pW zzM^6NPdzvIDH%B|Fbq$&Z>R;eUk7oIn+zs0| zBE-|1BLvvsDY}(cSdx z8lB1?j(#xXdH{v)ix9~F*0${GkbK@HU3tb9p{slD7*_A+ze1Kf{|&l;ZP4@% zAb7Z<@iXBz7U0tw^fovwqx|`K*8kibPSql@myN`Z5ufvGGQ9kRNE#YR)`^1a3m3CD zJX-t4w{7nlDVa%0&xEHXi4yr0GtZQJ31YajRP8lU*C7(JcPaHVcKaUZ?JHlHSeVrr zcwmgPTETGvX+zH>U}b{cWx9dol+sOeN%Bb!rgr+vGlla1PP$Nx557)&GC=Y9P0cJm z*-}nI{I~*){%6`{b}rECpWH2Y!pVI%AM#|sGV2)Xs7VN+T3Wui)D3y9PyYd}>+<>{vB$ zo>p^e%}AzTJ)P2+9|pD`nhsyDvYCz6GgJ?5J^D|sWj7JQ#J z2wY00?voN%qCh0X*KXcinS5?bT?j0lAD_nxC2k+u2qH~0?8aWv8G4tnnZvr4sZx(Ohd z{KJ0?miGL7qery&Vv^$>H)BEIMIDb)%=%Ex#Bks&d_+&dz`q#Cq9@?5k2=j{qrcTK z7iu8YlOTB=-P%|Reeky?mil#qqZTI66BWBTfF`@qXG3yBZwb;f4|ho$M6D-Z%EEM# z_SsWU!V^iRqi2ay#qjbASDd)zr?$_#*e`;_zsS#7$z8oiC#c2OBgPQs=KV|}05v{i zR=|0oMP)J^FCW8V-x;2HW}lb&lQQ|Yk)0x5d?;9B#N0WBaA&MmbQaGV(Byh*;IMfV;~MA;A&tT9VH`vk<#$22HiDl3U{{| zAzBk$VFyW5NGV2^JDEB#oLm=_%i^8lA^E-X>h~kQ?kA*~ZS8@c!2bi9{BwnrF(dC= z2t8xakFHR1KZAP|OHjUg_i9?$LOOqKDyB*&asvNNYPAAmx?pA6zLnsG-0xgVvf<s>IEkz`X7j&V-Ym0`rA?|b$fM)|xndP98Q7zZZ!9|%bq!Q9Sz7m2hs`Hn$c2Q+ z!y3!O2Sq`7yiD&j;||Ait7)g}(h--S;H0=v{)m zWmeaF?86DRYkV;JeA9kR_%tOH%u*PSrrF+DQgnaMY-Xvgx%b0Mu+M{PK|Uc`6WeBLoUxBQoyp$&ZweaF7m(|sLLD?nm^o*d1y|ak zW1~`3mK)VK6}iU+IN?}UZCyF*I(JL{ILdyXyIa@*Jl=q3x5zL2KC-_*v~N7{>G@nm z`0nt%KTW=^R-;~5e?J?o?s`63(7UeYKJU!~c!z4=ejk3NUE3ur2Gl`*uxup3@^!z=Dz*YDf5zP+WN6T}&&d4F9TG|E zuwwQ6$7EWRJ}Va9nV9Gsw>{dbNHb5jgfK7zrCkvyoJzm@!|U}4_e`+s&uNOdS84U ziob|se!wOhiJtRpJt}>l#hEzg3&RuK{1$g2Y(|B0BIGY-zqxX>K%8h6*q}j(rP{BC zQ=A|+LxDd0=F53mKhkzIGpmEpJ(fOvYDiJ%BSw-Ib3plgU1}&(r{tei_WU^<4k2pX z5&+(gw_R(^kyEmkRJ!@! z%87(i)|8B%@pBa1Rv6q*CvgYtZM>;_=`0d~tlugEc?r%ct`X@gbQ`VrNZnW0_V+Ko zUrfxEf2}n11N>uP13s%1DM94Ka|SbWuw$ar?r=?*B0xXl=#GzI81k|(S@%nr&oD6Y z6jAchdW&fIJ*9H2h#H}zdr)Yvt%J9uGVaac(Nt%|Qk%?4V!QIaYlAL(by+<9&0Jww zs_K%zFGNG zVzlZm6BczZp=!SBDX+DHOu#z@D}2U!`!m<-GuN@Iw1b$7o$}Op427DZ^cDk(I1=7 z)!%n=14jxc@UYlk=Qia#n z^@@?8ZW?z{m641P-6|vW#^ab5VCx|FLoQ%%so$Ddx5eV)ZiHUlN>V$jIIkBE{N)#+ zM51jk`u0qn2J#TOcZ03pE9$@_G2+)TyOfY+xS-;$|7rnJ+2LU+KV{TmV!~}_2}T{u zZA`%u7$)HFb=19>B}^Q4CB+02G<)*Y8cK{$ve@;&H{{;Io*Ez08S1zT9xbSfr7)}R zx_jTx^Yj)$%=^D-x!PyfM8mk4o$ktdi(3}CI%yB@LbD&9)zyaH?00?s7!?cYQ7S9+ zIBKKyXM6c>1B<))AA2%o&sRPv#pICp$F)QoB>EV3p0}~l);%J7GM(jw)RZeU6j{gH z0KlUF-Q{E4O4lNL@>$^q%?8F>1IT^QcqaT)1Jp^u#+7*lA{P1iVFWY-)}myx++_BB z!H{(TrF5mOU6^*QOTsMoAPOf}nxBa~ya%<4_&cJi@)+;PK1#VRQGVRJ`#7^KiU(p{ z<$9uw7(~GZyc)yp@{-p%mjvMz$(KNHvNZ9Ofw)b)^#6>!)~kygWE|M9w)n;zxsDwb zXA6poUWgLCE*-fx*$Uu?UOea^!%pJ3e$93}`fSmknf-F8?~P|Sr*YfGsCTn>Sv^ptj=91r7-!@((nEme+Zic zqK66nak(+~&26u-{1ebil=f!stYtYrir)@HSas8TACaj_c4S-3Bpj~9*vw+HoT;kh zOjoXou(-KmJ1k4CZV?jchmr+rF&jOdAx%YVmnT zt9njc{wb`gr2l|`$Slrb(<--}J8AN=;*X{L-th3S*z@|sdtCQ57?8!H@)7|F}}&E?bg zrKj{?Cr~85yYmifJ_kmLYues}5r+41g(4j&-Epiq}I>=4HjQ;xrhS)`fkCPg_w``C)5pNBFkPMoz5u0KZo|oqOfIf=3 zz06+OEnS0ztKc;1227l!aMnyMSCij)aMdEmxpw$#&a%lHH#tnsADJZ=HpD)FaX;ya zv3uGvhukxhu!}0RR16y58~i#_;avS3~xf)(e(pDz%eO9>1Ts9@cIjHa2E-y$6{M z9{$Qd`0efYr+@19xyjY-x}NsF@0~qPJ>OcAzTkf;7+>kSY!tE>rE1+|^na$oeH1i9 znEi@|uvF*Drf>-ZHvxA9jCHO<{zd;xk$PQ{c>$LmN`Dozri|uE#NK3T#QLRux9F;D zfzIo|TCO6Yc)km9qjw)9Ymf|ph+S_XGV8;*HD$+$K=mYI`;0<(x6hL8$m^*xFC3{$ z%IfE^bOF&WoR{V|&+rX1ygd4RbUf(w5_air z8O)(!t9ki*CtrGYCSrIpy>Y=(Usmc+>DmHy0gruq(eh2+xOw(c^K4Rd!S1r_V$x@@ zC`0j!rOGLN@fc3ww}ShC3YQ*W9GAr8&muh3f3PaH>p*rQ?xZ=7zD*b(ZcAaPsb1Ac znZFS(w$obHgbn*r(1rlC{O&L`Je?V?q#T5Vn}M4N%k~l13WSZC8Xe0xf`J)zj2{a| zN%W=xi1FiB4JP3p&fxT*xInp{O1|G_fUd|rUvssn-3_vVh{f8N)2EJ8dPDYC7i;sqcT{Ezv`p94cW?VH zhYiOI&#lc8UXfwcfHhOe>gJSQ)sxAT!NCH@s$l zSJc;h%`Edm!HYO_J@ykN)Ni(Pe-m8tlG|V!$@cfyW29ODo^~8?ZOBo5mM3-@JPRfmf3;yGn#ZKe_7w(fCj`wIp zsE#jV1q)=tu(b@-jj128cCq5o$g&jk3S%DmESqK@9`e`@l`>_#zh`6K8rtd6_ynV0UuszJD*lSaDq#J|Nmx2azt};O4=g+v1ZZ*vM)z}#wBS_(eqnoJo&15 z&))cLXE1Rs1o|fI!EOUFoel8Okh*nuKK86OUwsMd_2Pb(BD&R=Y^$?E`Z}lG>Z?-X z;xYM4;!mdcmbOjkLe327>&yvj&#bE_o!aGWZwm$9Dp7wGw`E#rCMm}@rcESFv=hqa z%vc5zrv{r4S&miOpNZ=J3VmD%;o3+Y>qi|vucT^qL*))CQUf$^1b<%#$~n|zEV3_2 z1?nUK^2NYcP@`g8m`no%=6Crg`Xg*83foZY7@cZh+8=^(uXt2d{?uEPW@G;f(-;}P zQ-!}c2^gv^KkKob!PtvJaQj&30e$DUUe?P&0YmmuKJaeKt{I9jmnaxL_s)Lpb)sDU znMrf&$?>FlM~&i%sq&%}yx#(4upTm$SDk0x&gBm6qpWLCKfCT8iR;iH`s`(qLjkI! zFct-Dr(DoOC)3ZVPnixOcgDY&*&k9F@(A;?mHjm;WD2)K&Z_Z+VAU8VLBElnTg0{< z+j`Z>EV9aSq&BSNm>jP|qz6W3k|Cm($3=CD)y9sOK+)oQXVsKfEN9U{nG&M-XD1dE z7MgSKtu3&py#_=CuR}!v?Dn!ZA=lp17uvd5WXJ{v0IE5;6-G$bt`@wReorTCVId*s zPF!o9=)O14FXrA6_06ldXY!xgPFWq!z7=bJLtlNkt3F#jkz+Y+J$rU=GyL|hanWJ< zxV07L@YJ{9e%^X8n6BA%N?ZN5B;T%9z8QNW`tjTQ+w11J;wR7F#FNKoY}I#69&$OM z+Z5)=3Ke)14?Q~3@%-q0;UH?VC&?w=a@J^Fdgy1j>KBMwPX~d-?^u(@Y9QZTSALbAXC)&Z&bm8ad4&VFv1SbKgGTv2XC@-&VNIRG61T_ z8dCt67;TVNvS*cQo2*K@nibBLxOo=b7vF!XE~Z~w{9vv-rg0&So`2~~1fCkWYGmw} zL-ihqe-3fiJn^&+xO+15B^{5!8TKgITfKAY!S@pKbY66 zNTc^LqH=G8A<0^d+AWql7NL|%0g2<6+>sEgGo=U5K05?ddpX=(8oXpnyB-Yb4C&>O zsjehaW~PleNLF6^FJeD|0?L33u;+!g6ZB{hQWROQ`$3Q0S@g!tYt_zJCe6>*@(!GIt5y{_PdI`7d+y`aODf z7b>_uWtwsep^U&aeN;qzY#o^bY<*D`I~{H7;4BtTctByRf}%-=MW^u;PpXP9AD($M zxoeOuR#})6lr%io2F-e;@B>3jz(D`W`*c zXcv-I2MbX4J13rV*Ao`Qg~@w#HcJ?KJOW3>&_X za=xvkanU7eu8Xa0!{FZe+9EWna*StQpPb%sW;QwjJkIs*9(U5Q?1-*RS!&ZkJ|+dDQ0LZv8x%Y^g-!=q$V;Yp$uqJ>d+%lM|q$eh#3L? zo~Qwad_*ha#mG4Z5R4Eke1uM_Hz6Z+82(7$C?<^4n%Zj72a(5@ugHFljqv9dj$AiW z>IH)Uq46*SQrr&#fma!Y+I6hNs^uXvCbD)|v6s5xAq5`6GYEUZb!oimofJXg(hq^) z_~AY5=^ye9AwIrl(CE$b>T4fPiu^sqSK8;@S3*b`OCSS2lqFe|FiAvJTkxX2(rw8 zg1sut*{v2&N!#xwIE-{-T>la6w=>q(CX5lp*J<$t)zMy~D1Jac3Y@<0BBR>(rKP=L zWmeP+F~jzDRSpW37nu3D825!29qs0VlIjJ!LF>vdTo079s;uRTca^7JrYmTBjT$(E5Ew33>ff7;ohmwprL(I|pxl9lWi!9cp1?f65)?)6Pu#ChMPFyvVF?nORW*kE(7Y@aAB1YEox}{G?Qq)SmNGEmlE_WvQ4*LXPCw`0M^3paq7Ka?4{q3tuYZ^_ z8``Y{J<{V?DyqtoosMq1IK#%haGe?PjY;LwKO z$Gt=t8aUoB)~kjj36e`>witt5L-n^^bf7e+_jgX5qenRJRqUQv@JPB_H|D6ovn|TPW2jr$P5r$`kAtD1Vh(o5cw|( zrg9M!Oq=yj<^K1NC2#V_il595uaSF*ykFvU`gDVc*3(=UYD6LNb$i`Wzr(gqu`c53 z^&&Mb>o=C4w_BGt>3rDEX{mq&ah=l9Nmun-Qjxdm0&-H*7+cNd65yFedWmYAjEZ$kt%SIWpO@tO8MDT!qxsMrqAWOtrhL= z_Cpfr>Ta&krMs6eZvYar$xY_4Ce)z=`>GR5n}xl@e(sw{NpaQaqgM={2u8O%FzJ~@ z3eC9a+<&CFFa{#-wU<9TQaOo^xS7*QnmV%4W}X@Qbe?EfMFAibhdE{pUPR#U@09ZU z2l=N`vxzB6K)Hg>EFN-)^kQXS837Xoiq!lOB? z`oAG_up;rm#%b6=S#bo7168+W@*T=v7@ZpY9CsRx<+xGxQ5T(55h-MmRYDP_$J_8K zqJabkQZKPE<#V~u1qs&Y&N@b@GrTxWKPA$o63tMF_=A%C2F$yjpv9Uh>OQm*=#{h9 zKX4p!c0HNcGSw@nrivovQU3%It`l!DM59jGGclrDx^tIrdh@LJ#3D(939zj(h5o=C zM@>}R#rhG*0;g;Cu7#dRXUv=}j9ds->R_PPaU_YP#Q}fqAQgVvD`W{=Ena~d@+qj- zs`nRlI9{ZE9qn%xN(K`35v*Gl&je?dAvY& zNS2gY=bvtpP9BFo7XgQ_jz{teR9#TLp8J27Hi2ADgv(7RqtLyc=6Z7Ha(afU+&`w- zeUApr{T(5)BiQafVkCxIWPZ>_9(-lsU>WYsQvUUba}dv?U=}Z>hPA>gZ~c?VMr3?C zR=~t)8!>kaA!i>2E_$j!dl11$n}fl;LV^7&dKVUxzuHfhe13S{tmRY!J z!Kis3u?b>RWSS(aaEill_DLoeO}p&`j6P1mVTaSTK<2yLspA1j2DIO^7_&2Y@htqy zj=cdnTmBsBK*V7+xod}>``zK0mu#BnHO!jzxOkYu2OTFCgJd8X7TZ$i(tvSUi@VoP zj5b=axrz-9xV!fD$Ig7HEr_MX#!F@*UU3Ek#Cxj;?;1oU$9OMk4w;*^g%+6LAa2X@ ztP6d=0rJKW!m_*|(dICwh3^Hh6^8E#b>{T3R&k?JYGrCH zxrm`bbR7l1M{(6uQ(~eW9V_zChXRXO={bKTq=-UTGDF}2V&){AclH*@BQcUxFR2m` zqQ(#cF$Ed)6tXSA9GLSVO?xw)3ab?K0DooAR7ux7w)5HWO@vk-q*O zpYsQ0Fw#*O7vz0xW@{TY0u2`xJq7-hx;(1ly`+H4LMVaKmeoAplOkiyR*LFklj zS#B3IM{^I3ZU%c%BB|56K@JfiuRj04WFQ)rM`n^Mq%kWze2}~{z*uKKT2(*kmgJxA z7;Hyx>^T%bZsewnbT>pcK+fQ$b<_cBAOw;sLa~+}BcL7f@2mb~h0Nf8wuP#z^_Ei> zQUBjRe|+0i^CL~Tqu*S!>33b}W`w>_jcuBk900*OR$FRmV4Upvn+TgkF_dQscQc9? zMM&1t&V^RmhL+~IF0TdkCsfM1zFY}Ts9u@tc?TBkgU{|};w0*8_fep7yxPH1$%z5XMo#f zR3}ToHd%}R(5DnYBRJ^+WJ-kh6UOMl+E?QW;yT1uT+|!gLp-wB!dm z_4Ggr{^1!baR}Vr9LA*buhn$?t~N)jt!@eJaUalBmn$1|J^XiGe>GAvUW+Q^mhQKtNeB2$W<4|3c96$VB<>Vvi`Bi2#Im%dTk_#aY z9W21WdYIhEHfqKilcNx}5H`_fUUVlXi>a{9u5Zs&kb8`N1t@1r0xehp_Uwc*% zz_?Q($$L;FPbT^l%icm$R8GjEBO{p2qNrxh4gy5{7$!jagC`?%3}})9ot=)=VQ`H` z0#Q_r;*Jqe6-c1fz6$B9x4^k7nCD3rVa5XaTL?i1MirgA5hFc`u0;?8-AsS)iE?~8 zL^eAI7lV2RV(FBI(fU>WK?_YbYQs^Q@QTqSMRcA3F;BTZ%A`|@S!Nf!0rBgExL0kE zau%TTLw0*MghrREV1=vT-j-m?f7}>IqX1LmB}0d%79w)9|Hj(3ARYO=uS6)-h_&FhE8DwD^45eX-8P zXi-eTE-NxH%3P;WU@Qfs5>mE^9`40t>#`-%j;a^#+}5#s=#gOwG{F~)`)~Vv(nW%d z%i_ip&-@1W(piAJItl%yI=FChzXb(xATD;W)e^*(7Az2D^xeu!0Sreg;55092AayV zd*t9n9E8+H#)gaxfLE0&k!&rZECtHa;r)72+dQQ6FViBbK_DiehEhx@7>h0oUSHY{ElQvxKrYcp)*y6p!D7lXLQFPAS~E8Jc$5LNn)qO z_{CFB@qaF9beOAjMw%A|TCC-IV_7hOPa2DN-SCQydF>tVmtzBy)xEday*HyNyK|tt zU4fBpaf#VRkYYMK7Sk6CwMiz3VFAf)2xkYDXDp}zgdE2{IJFGjqJvu&9gNLcx@uUN za##wT&2~hk4Savpzy^CN7&J8^k@z3|lL$WXhi3bRo8<1Mpy;ZDFm#umXCMzr6gC}7Cxlg0k$_Jt2@ zC@upwdt)Fr%imHEZ+9lGZEM8iK=!rIb|%1=mjl~Mcl^IENb{-C%Q=IQ7kxGX>WAQcPM~#+9 z<}1~+^%dopOz1}g+s}V%N^lk=6jV|QnyTyh=Oi{XKk2H2UY%RRLvc)TP%ZggE<`AX5VS2$f|^D@QuT=Bs4~1cia|9XNEpY z2d3z_eLp2a>w+wet?)KRZ*}7=36>hk)PO4^utF1hE!Qc$TJN3U%<+cD4PzMJv+P!x zw8V0{1&<`~g1lHEieY05VEZo{WhY}of3Rq0hi^u@VOs!Kf_#_-iogaE_NzgVgnPr9ShWWCLehw8beV-OeoW&W`XFR)7x>8WSae=337{X>u7Aw?S#KBD_A#Y-U&~%``ys1fR2(4ou<>Eao-P zWdd|bSJZ>Zm@ld$8apuC(&Hwg9ZxW+Hrzfzk9_9C$*VVI2QiK|1KfthBsQ1rpROSC z&sM}6!x+n`j3ZC_MSa+jS%BuMy4D~U!T%FJpuwDKLuqG)KEm;@;dfM9}J zb-N~}YILuuXIcMLg3#dO9GO3lLHsL8Ih5eQZaQ$PF-Orv>OE&iMkzgTX`bJCEIa`r z3*)~>Nu{jOSV^erVOl6^eS|lo>+EF&H8cYX?0Gf_6r=Dfc!Hlr2?|}cqAnk6D~C$X z@%t*^H8|;kx!5SlM*q~t=}4c{YXHZ8+)x}x=9%3@NhE0m9iRabOI%68+#Ti(i2R&HN}#EB+z0ZN13Z!;vAWBhpE;|_N)S2cu!^>4q1m54Tki=6iIZ=%f-Tmx%xO5Zn{ zf*)$Eend5MI;WRhEzZX|m~Q;euB4$Smr(q(X5|(^N?!(PPEsn2Tn1)VT?{(74Zgk& zpzt+?h3HTWYU`r_5*$F>WfZJg^xpa0@w^)JhTV0P#xsj$+FeYP!4w) z+zNF5Oj|YcqgyE7q!8|;!!*=7WjbL-EQFdXXyv%cP+QDuKmW>@Ky7rm#JF(^l?!}# z+|Fcj@*DFN{Db>zEe1t{tkb>OrO3?f}J3C>9Wf3y_Jho6#8H0@5GQ@94Cg*TFXz=v(@6SX&jzL{jp>a61 z(*ZS~REK`fA}RYR2eWFU>SB<%`2Dy?E7NHlox-Z5HyUL^2Va|9K1^|st%wqF(mMws zK~vdF+H}F7=u0#D|0$P(#N$LXKut$j+5j#{OB*<^>RkYPKQZ%Kh%kMK>FEp|U1?x8 zn+?CwZ!v`5AILSH4M5&G%f%~~?>SFqy}XlK3BE%3TMz|)=-*1jyfg`aXtYQ|b113* z4!q&DhAcSb9pJ@hA#)J-59$6M7y!*&DV$GjT+?e>i_bm2}p@@GaV z+(gc07m=(;S?ZzDpgxf-q;@%(PCu$Z6`5%rrDFZ!nhTu%HBi4k%VN}NvxPDPYo)^? zZ+T7O@k{|5NoZz-Wr|;ru+P$DYR$i_aPSpZ=vTOh#^)&|7k-)DV|?yu*tQmgk#w8V zS|zFL0)DRr+P-O*zQ_=lr2Ml_j}@FL-fCk(UCE_=cQeVf3?te6`2**f+jI&e;54NAs42zWX3o4$Q(!i?Sh;B+tKsRjh-)AYDWUX zKgqcbHT_DA01MHaaDQ7nPxy^BnFb(-(sb!85_e|e(zI$VA+{WKVp1C+g65$hPy<~( zz8~@`h@?OXIi<*wrCy&qS^YIHG?U}BUIW)U4L8HH9o+i)gvLZr=Ye%>Ni9n-<`BOpD2NNpM^EVZj?$R7jaMrLnvzxhmB+bJfCx7W;qF( z6gQ%bHf!2hOxssur(`rOLc{-$Q|+4#SQ9eXc#_FT~njn|{|^X%B^Yd+jY@73DHrMxW`z z@B6`;9lpAbgK#~sru>Y)MRFqglGPE`8QM$_Q&!qXN|-X*f{K^UnmjVhV^5+(kE6Ts zflS-q58)WT_kSa~bKLi~HAaq5&R{*UV)kziY<(`q0G|v_@9@0#cQMCS13fkwTkmHW zZziw+Vhle24vcJf9);`R$)VHae|9g#R>zGC9MI+6%|bi*+@2Rqp`G!+HH9FrN@@r` zm18Bbprk|{HpB%ap~!buC-3%?GIK?=Hr8#-g3&tskOJi?i7}cI#kMjH6Hv1NvRLow zIuA%u9svd z>i_Br;XJ!4P;Vw{88wZ?S7P@s&{l7zPOSr`Ip6+I#P6S@IhS|CKM@Qi_|hk6nSH_; za&J2vC-gaT^gAK7;05*##7Uj~FqNqOM42U%(35qlsbG|89BeY#uSb32XHknEpejj+ zvl3tGG+Qm7xmxNBBVdPOl|TQPq3P^Fs=2uGGJLMR{u&R8XiY|*!rE;9Vpp!^*w#N`fhtKfc}v|A9g6=GAK*bAL@}GVO0D3?^t$^x8bo}?&j-gXUX1e z`f5VAxvfTSK`ZU-1Rz|=z;BRwl7~LY#L!3ho=ols$nI{>l$#uHMZYdVqK9tAUCh^P z;;QnRv8h8s{yei>$in@YB2-_Oh~7e8eLzB1sIS)>Xb;`s%#geLLCY`!orPN%Zm-}E zF>lK^m7TXE(AdqMLtjbN=h=nW&8M#W;n=F)6u6^+!O4JDU&Z64Nkg+ba!ta{B94;; zSQ+dzN!ki0Ane*g=ptPgRnB?HAO2@J7AP{3{%~Mx$$uhxwP#Ekk6;ZvIw2Y9=c;Hl zF!m32?5v9G%nUMxd;aW#dWp|h5eb3%55&(G$S|;&>q`bnkpEe#+*k!X)`f};VcoRd8?nMJ?~~sqb=ZR@GElaxw>YC zl{xaO#d(~Xb7)|y<3H(IZq>2vlu(=}m7XRQ24#n}mqQ}p z|4A6wpuevXk_v;e@rN2{2n|iCnu-M*a*{bM|8j^rGpT}72dtu_NP>lOOvA*vQU#3o zie;Q4P)y?vcrE11La65@QOQl?^I~iET zuV{?M+;t%!)IL(nF~6r^_t=}HWUsP+C^|$Wi9dGB`p+{AAklK#-DqOOSD-;0abbay zpG-q@&(;WH6?keBu>RegQbw8Z?Y7;q${_065I!B`&mn0?`n~o9%2?ary@zFW=F(Fk zd{HW}aaG`X7|zl5IjE80&IXtnLz>bhj7UO^*4x@OYHqo>xBth3t`aJ&se7;iYsAL)MMu zSzp{Dn0w#WOvBuXZJl*acAQMbM)tU;iE!-lV;3i5R_MsQGLiuD&G6K!5__%pb@cBk za3xt@&+$e2sn@r}4v0mV64A&GAWCtW1~s>4>(|3VE1$Kyd7L?dSb$9RIM*K2NH{MN ztdVc9ci5WPbkq>0&oz@r&^SV62l}jXEJJq1J8B~A)#MFE7sR#PTYLagXUR*H$W%v2 z;EG+*GF-}GnrFEA`_JD3XArv9{@8&`Ob}*0HGh?^08=Sm(zuVwm;PrLD3Sz=pK!e` z(pUW1#iVI1;shg2Aoo*jDzI)ZP}On`Vie$p7Y5Rw=Fys=HHsFOiLIxhMY7pXxa`JL zx-WRJ)eNdg2075LbVUl)Zat6Ark%MA;fF8SQ5caiukvxc&H-_oEGij@OnvHs8GxOP zr^s@i3=`9Wb#Sm*cnP@~S$*HgwY}c1WmRH4D>_Z}wpcck#rAv%`}B0>={O15K(F=n z@SVNiBlzY&_CB2%##iBgT8+hXSrkKrzj=118bABoEZGHD|IRBx$ z5Zv?f7+ieBwtZ9V^i}M{f1)v)H;L!Dp8kCuaGDtNxmt!C{B?P~^=N2iHL(uq+x}9w zb2+1u&2kLO%{3|3lTi@cmGSJ4eIoy@%&!lHe(I(7}D7K4B{k$qrF6SqpY*NSfeCq%4eN%q6pPcG*$DUft z+W2S>w7yDMw8==zPs&iy1Xz##`(**Z%4bS`0L2`-GHWR#>->E%;)Q% zat`r1mhXM~(kykg*_Z1);2LG3yo}f4ZO7MQIhUkCqw(tSGkE&a*JdP;eX4tZEP9LV zy_RFIpBw*WeRY>}8d)s1icpThKSlrM)+^kdCziA$0wlJo8dMQH=ZHW%&D5nEm|L?G zM&vvb?JdutbZV0cuzY$?6K@x+WgUaO@x#KZo~sg0{{rgmz%oM)K?<6MzMB74(1aAK zu>-3ez|>z^%<8)U<7(L3zvKeuj!3oqCr@*ZZU3QGzpyP!hrhVW^CZLpKq;QZCOyW0 z(PQ2p7GSZ8(eaQ(b*dnaD;2#(dzi8$lY~7S)yDcoznB37rssllbO$iBp-YFHU-I3g z2$MotK%j%EXF)1e9OJxo=0S5Hwp7`oVScQ^M#n$NK<4N%m^TcrsfY`hQtgd}2%CFec$ zyl7k9x-}0dD2ZjeK90klR}T2X6S!RD>U_?K^=hPk>z`W%H;dxFmpe`8IIvu8+zg1} zu|CbvcX~+P%gyNB3^Z-owoDsJwZ*ddULJ|)VSE1UujZ?8m{*7vyY&1hjs3Fic{y3_ zNpqT(Xe}K;tmduHe|pH2duyQFY5hz6oI-5>cq|l~-Eg9J9*d9s)zIGTaKs8LcG0u@ z;mHl@H%W-q;~NIUd$YLY`6p=Kf!gd#-0qNVDPoc}+xxM=H!Xt9^&~8oO*+kCi5FG& zW!OZo&F$EyoR&)=Ebq-}FsXLiVY-e0{##{(-<7VOvy)Yn_KoGM6DQ9{TdK6FfsD0} z8>lqT*XNc_h@16VRlaZxXkq&6O>X^YyI-(wqZfaI^=r~`VATr_)2F*xDjCzgFZzX6 ze6Ms(AC)Sxuvl8~$%%vJ1@@Q0g3!4)t_blwVK6-*jfL|(qccnxWi6vmxS8Ubl-nD3 zwG-D~_2;Tie~=2dL5(=n#wJdXe}h{8(%mvj)I>yOW6pVJ9BIONLDUaJbtq@>ZTn?VMg&~0rY~ml)UuRah2Xw4s!BGXy#aQfR zGr~OQaJV-jZOdWEp^WP-Xk^d!ibxyFSLf=<_~~Z85M+3x{aGi0%7-rK(qc{XHJ&2> zSogT}uJ^XoPQi8+kq|O4lJi}BD+X>RY49!Z9FwBQ=k@*E^?Vns-dy)Dkv2MucF}>0gyZ@KB zTFdA5CZkEN<#Mx!A7%XO^Ig~4(23a4& zHMG<|UhghDZQmHxwGbFFACs(l{B~Y+Fi>#;2aU=_euc50CpaCN%Y1K>PIZcw6kdlJ z4HS4arau$TzIJ%Jio29;ga?ZD5wD$^WB`zX*9>!sCEvh(uWm$)f+aX*cH_<3vxOz4 zXQi3OSO0WC>q+?A$7lrg`THWjIQZMA)9`>!k(DhI-T@I2e$v#vs2Az$5C3Ps%1#H% z;v>#XweH*Pbial|B#wpQv$$x4xzXx3cC zT|Q1|f=$8W=CcrCfPW%1+fOY3!750_)ari^j*JBo<*NKMx`T{d6`TJJXG8&ABev1W zPpU|ye$8tC!e1gR5UIRF}aBm>E}r9=R{dIBXmb$VmY`d z2w`KWv#Y4&zQ*z3fs_rQnw3qfwf_9QmWw`+Fo477G8q;MIUIwCK=s^gXKiC==YcG1 zNh2(i7|UyYSTl?o17lReTRqc=1DR~#yAk{KmTC8j)rs$91?mpw+_D{L${BRb!dK)l3Pr*>u#Q*VE!c z_*AVB(ySa~4v?_%{~#mfzV3OcuOxW={7QgwY+JXitL;Vn_$u|iAIc>L=C!}>YEr7z zyq)!`k=Mr%#w;&uOUhUQ}>*bHCA z3*t7|0~LSuPMTf8740dX?RReX=VXt@c6}{jQqZkXh>(-j6ZC3tXz| z{V@LTBO88>4#ucNx2iYaRQ{XI%4tqPN*K8G*93#%I$s*l5$(oCy3`JkpHlMfo9jRO z>I%kLKqNcJDRz?*Q-`?&_<97Rixz{08Up76s1<3&GNC!r-*?9({%h(Y8`Z^k^Ms2; z{dRTbq2OY`m4uyjO(*#ZUjVn+m^xa7nY_SB^0g2puM^(uN&AyAxX+;cQp0y$0m#Bbi?IgB-DSm2*9SC)r;#NN`A4u+uVy!qZF#DoC9705nth{c z1-1Umcg8H*x8?7%=iIC}@51Q9OmbY-{WaSFN|h7z`ARK(FUOH?{qE~??Pq(dYl&hC zSOP1Kr^11ip61-~hSdRY`WhQ=7gZ+(H!+!)#6rtZIhfz|PFoq?6f$_+A88UY1R86+ z2G-`#^n5FCo&!iAQ$!mj0dwH0Oqs+j--jt%wSq$CY)he3St02dJ19eAU2;30#XX;E z!(Gr5A=?C-)cO6QrluMUYh*+@6AuZnN?N}5KMFhOr18WIaR;b?qR3Azqn1~9$(1#S z^6$p{RNb-c+@U!@qIid}E1k&3D8x+CvG*!ARC0>I$4(c^H7?W!`<;;ck!O&^4-Hn|(O6LEPU|mqtB~pDkSv7Z@n zDv5i{kTS@KP@q$jC`q1ahu5Av;5YQ%9EIZMae4O^D3n>i`^=u5XoEX%aW1tsp0j-( zpg3IngT_L|MwDQI=bd_(L5r^N=r3V+;#mow5_8QaB4V>Wj`4Q5FU9{T4&CgTF6M0r z?T%D#-rXP*M3d}X>GYiA2{fZY7e5ujqHo;?qlRp(ylcYbmeiJRPhppqr zH7xIG)f(&~(w?vHnCIA=-?rYpppq+tK_-9C-kltDSi-J-0Z_mL1;qspj%I&N3OqN& z>UJ;@3T6N!&&#ZJ#0sQ-5Ba44Pbfa)Qxdd6D}B z(MP00T0wl8>%YJIiD`&f>n<^%5X3VT4qOMgsZuq zO}1Njw(K+^%b2YHu;A_R4E~3sT~r#_Y&k51B#VQ*BqXp3+lYx2zT16Z;?hd*;&U^8 z$oL>1K9}#{&#v2ouerz3&^~>YTT8Xg&i5&52*JAZSytiMfTvrN_2v|q_`5>ZJ;dii zK7iGModQ4^(eqEWt()F;+Me?elB3Pnh3jlrcV#Ig_Bicd&1mmyeK`5gBG>4Zyk|yB zKMb$^o_sC_D6$+Z(I~$6Fm}36I}lqgRzKHo66w_IE@0tXe{5cS`G1byNw{G;#Sdc} zRtkx=@b~1>z&KEYJoU8GBUrjsw_R~px^)}8Ty@dgcr@Jv`BOEqOe`i3h(>c%33js~ ziPyG2g>eAwtneaf6Nwo`OE`z*v4l7H-^ zzxM}@dp7el7!fp4S8y_b8_Aoq{VIL7BBs%J#HqFEd~c`c)mFIBzrN1dn3_UB&_k^N zV^LalLHS8wu&+TGl`aKwF*q2RrIGENp<{^IkZ{Iy5Nf5PW`0sf>hbI%kDPqlRfc9+ z9&tamhh1}=2%g>$w6fz356FZ^>b>~&mQz5(wtLc1yI?*@hYy`161Ja~h(jGgq}wo9 zI~#(4fE#uN&Z5MC;7*k|4wo#)_d3Wt^P#P?HNs~5u{6cLv$piu(LeNl?dyKExj^6c zx3lMC0_%CFr~ZcGf1HXNK^uXb)fIIt(6lER#sJ~CE4>Hd{>I7xZ{yoL` z|lRVY|jxyuE(UL+^^TFwe z@9pIEZ!+B9%1SRPR7L6gr8)bs1Bf_$opHy1Lv{XieRgQ&Zh#ld@e=%=Pshl9np}$g z_=+B7L%^fkj#F7`+7rt+(3_zD`dnMy0?&uzxBXZxY;Ra4ZvE(t-Ec$aK|LHUkJg$f1p5MfU%rU2p8o*&L^7(ZWp@_y@bJfvxJC>P`v)&aXrgM}8%^E^ zY=dYXbHPSXeG86LOuYPZYvN5zj)!QM{$y{%yWY?tM# z3A&EFLZjmu-)_f+lIq+cCxRzMowq>eacfF#3KKFHr2Qa0d&GU!T(% zO9djmt!lJvdJH;sKLztva9i0k4zb#Qv7B!1jowQCxl= z)g=yHz1QCZ3(qy?oR&vZ)mxn`@ZnxXx`Quwgg51B1xiewB+M#pp*ve)Yc<5r)duK^ZK&z5eNdP+itcoe7(Z38PbuMS9^PQ_n6fCI{ zdCVec1)QwU$PzXjwlARMm5omppVS04xwhvkqRxoF&f~tB`&#>BW9Q2Fyz^!M>e}lV zlHmJ=(JY7a-b(L%9N>F+IIEjDBhN{{#^0JnSI-Wd1Y4w4ZwYy^Hxq~X{j2*$o%5o z8rkdY!dCeGYgwF;c~=~T6VyH*S3dP-Y3H;45%C^J-n`L!BC?CgA*`tRD~kS|>A_rqGMSNrH^e%E^;d=sWDn8Tg7@w&5)@xlypuM!JEjtJV|-?cU#H~!JN9ma}rD1hc` zSS^76>FR9LSNVf>XBI@kx7={iq@$H}Pcs#c!7`&7?Rx9^;ZyH*m@(2e8=0r?7urG*SRL z`C{imm196FrD<~%%aDSn>XRKM0a)}22f9<^&bh8EOTsXI(vQBx#CmTvkBO9TY|K%1 zHXpBxRsQkADg##$ksA4Y`D*#s*W;EzfFFRTYvSkT81aZ=URr2-hHTJ0TeL?IsBBgO z#?Lr0%(vkFus)i!af0NN`Vdgp8K5w+$OA>>9o2RHThq$s9pc)qQnXF8WX?$-h%KCO zlKwuS0+TQ$!&8mJR#<>=f!r_vlcK_~k8>6KSDNAq?1G6BX4DP@sUUh|E*!G&)!|d= z#?njcFuOSG?EIPec6Gmbcw+&CtEh-}$xfCup;Wc0dQd zwy#pxwOXvb-Vi|vpKRK`KN@N@8*6A^7Am>5a=*slF>*bIP&*iyICr!XppPA4yhZaw z{5L0Q(SbybBkgYv6+1w=Q+8O+8&Y-LR)l)o+ilF8UE2uTkC&_8zSwKJEf1wYfijHf z9_l(fpEfXN+CIL%SLZbrufNpXY&BdC119Wzj+Xx9swar|cQo^KkSxD`Jw;d7{%9C^ z*WGLt`E0a5PT7YXn7pC}{OEDJ9arBM+7mEhE6U4^#hO6VF0@cXNqJ^L-Xx?HEX%$T zCB30BeGRgUwDtX>km4zF1l01;J6aQRo_?L<8H$n47{cfpvCd}Ok$9(ae&cKX=YTR) zV&U0mG^Pm_X{Q;%9mNp$>WPAXO2kP9*|VjWakO)Pya=&>W0MXxdQKRi12_CTIxNkO z>#Dw__c7FXy1>uNz;Lr0Sh-x~u@8VcQQw+jxur5zUmwS%7zKwam0$PqV#}RRntH!) z6bgqg))s&P%@wvH)nrvRw^lDI@kpU1Z^&4Hz?Dot^miI`s9^$Z`jtqB<6nByuXabw zbJHo>QXz5bm>@p=IeFc&>pUw`W`w!Otvsf^)v9dv@kw(FT7pO(C4OkfWm$PE#-8D< zVw$GpC$vNPq?jt5@w)>jJDu0+#DJ_DDSnNcp~~eAU#sj{0u{2lcKmb(R0M@LI?`!E z^lodGh*O4vhe|puk_}}n4k#In_HE2Pyp%*9o&m{3r+!@7bw1MaxK1~cLS1zUgly5O z<(&DuM2j0J0(WfAyOS=@bUkS^zDjK<@9U21{80S2Siwdfv*}|Ph1pv&RG%Gw=?P8HPRn1f9+_*Hkwq?=_?y-2qj_ya8PJLaVc$f)Q1c5JNr3L zuq7(-bm^N*Xo&0Hb%CUzOQ3qmtfxRpQtU3v{1I{M88a`Ksa42yaraiD3fY0M$XX@I zK!6va4|NuQX^Xv>c7zuLEZK0SNkLsjDrslpvF)E}>nl)eQO)G{2Ju^x9`2T}V-88+ ziI^N2rR|3l29^^jH6Z%wGF9zAHG>3#Ygi#TkVq?SJ0qCPqBI-|kBqY1dDTkt4)h(M z81BamOw%$cdy^SssNlPbR>F8NvGa}l9HvTy3(yhfN5+Ii*8~p%KzehznwGxvCQ}ge z!|uDeJ&q-Z?J|keiBGFlSAN1D)bVg!kLT^A-HUIM`TLfD{bMZmLxCs-;(twiYW%@# zWdw22&_V3?=(g2;uR2%+=%|EjFA)H3|1-TI_MPpn%L+P}-o+|_4v}M=03_OdV0q2Y z#27_nYPYB;OqDDk%tz*XHM}F>mIk9*#X@(upUz^Q50U49>_l7dMh2ax8gh-TI@;%~ z4V#TIBj(JgYQEvd#{a$u;mU>)n3q+;dp#^k@vnnvnV%FGGr7cVdrLPZpT`=R98cnK z1~x)R7wmsw9vVU^IGpqr2@`m1qZVV^{+j1Slv@VKHkxBQd|DDEo3X&(B7-=ie4 z7$~E;uaimaJ6=vx859V(9P$;MJ|C<9bRyBw1oU7t|2~0yC_iO;Z$ZOxg+V~Xg97m! zfo9#c2#{nu-3+%QNLowwJsl{k%p+*;EPLK;P=kH*Uvc3l!2A#!1haF_cTt9k z`Z4{y7Y!|x4qsTrnoMz@{YlC>{hZ~Gj3kT2sD=rczO-yWRrR-@>fIP&Sp+ z>%WtO3A3j?j`&FT7mLF@?5pLB{DPgVJ=##b_2!cCsQBlQS(zt`@?R_5EzBC<14L#IFK-B{fnIP|q+V zLP5Ujm0?qeQ?k+cL++y=J&%&S#ds6rcAin-6lp+LaeQ#BRtg%iH9|$pV*wa z+RKzCtTfAD<11mjqEi6}1$_^FiNBf~#?yrkQSclF#f~OlFG~5n9o1H@VQ+7grUOX-+qR~iRbh45vur|j1aQy^MqQ#Z479Gub;vPfkCka z+ViTeUgu@B^^$`QD$@SxzhJ9O3txZGA0Nh*utJQ6$SfkMyF=%9j^G$VH6?QB;%FXu z804C)L7lFQjG4^N28~l>Ka_etU3^a2agofDO!GJ$B~d2Alppk?<_Y$DT&_nW^4#2P zchRR(d3_u_HZ>7=AEh5F?!N=%;H7~8`F(Tzfj{e73lp(^kAGi&8i*%V4Bx6GNkQCC zg$xuiIr1USy`N4Z)QrVBsA0ayR5Z~5D%6XqZ!R=wNj|`MdN)~k;BQKD+8;K_I179C z=%hyJL?_`1RoFTUip9v7F*p9=n&{E=*n+x+RPcpCw@DB;t+AIV9wjvy<#3C-FgcfL z4Jri$f51ATK5%H`b)0NkuOC?>YI2>N~ z5Pq|HNJZukNNd(0euNg&>;UyAMf{DZR}+FeH$p`-@C)_ulJqM z-1zU8kyuLMIaG=mD~s3MhkqU#05r`;yJlQ1#o$0frbJ>uDD$l5Kx3{#IRF~!Bg5no z?B%#6fI?886Qn2Vl-^hT++^DJiC01rYXFw@GL5p*#qNwMLD`3zZr_cf{xY9q?y>+=EN({kQlGeO4hwEzUnnrX?t97t>N)_P~hX9AE zrnO09WSX^Ts?DOz)HPLsjhHp6y&O3M(ctALIE~V99AWd%;U-{&0tf+mco;m@#Xm}8{`AU0l_o@@Dvb&8CHWyVIT0_o2IpjgI(ZOhDQ~sT3IGr zKRmxS2<&rXQm3H2a*dz5TDb?KoUPK&V(((8|IYc7>ZyTAguDN)tg8CVpwD!=H9cnH8}3F- zZGwxmzk(&6@EGk;4dVt?=Ny1>9Sy7Ceq4gRy>;v$nkCRHoBy>4nMQ~x!aN&T_(rTdsv4KcN=YUzXUq^@e^K+{ZYQu3?Pg|KmD z1n#h3RO!eNwoz@gHs~wc;eEM^bddf+++jP4vekIqflnH7j-qfrrXJ(MLSCvKcYni! zi*8Tm2sT=8)q?%nD$m`5BgODs{sMk)RiZ4H!Aec)RgbU9o?Kk~Kf1GpK0*R2ZgY7b zFKFN$P4t*1t`2sJC!#tmPZej*v0r~$tre7`Zl$-E1_CSNY0{R@u;vt5(+Y9}k;0|? zg@lBPIslt>XKR}fu|Tt*mBNeT)wA0e76)J7grIXVxlOLfyUJ-Mm49T9nw*hIOdKLD z>2nckQ~nLqDs*}=;X8xs0F^k9VMOyBLQ6Y5FSee-_P(EU#9|rDcf6h6<<$*deffv8 zemmWltD=y3Td1ko!3g+UnzK$iF(3Pn&Yuetpj=_En{mGNK}}%sw#5KJWj@(x_eb*h zmL}Nb_+3y2mf=iK`vZi}jz{>q58ulc%Z%9_mvp?W{jsx-$d-mF2vxO@L%kyA0kssb zBcWKnmU8K#wnQxGYGcY2aXS6C4qfqx_=20lAMUC zG~4m(-=I#GA6aem#uHRxX=lnk4ytX^m*z(d9JC##!tLoN1NZ&257H zUVHsP`M+Ps0jsmgzZxB}{-@dj)KmF2nPR-s#)06$w{zP#^T6c1_d`m?U=5Lb$Ai=q zYTkr2UNTmze8u})_KgRngN+QiSaeJNgtv)zwU~C=90qDJ#?YQfry>76f0(J&whPqv{&dMl2&DAbO% zzTo{_2Q1qOQ;Ro7k*pgvSA+5oq`!&c-BF!fDuN&Q)~4dxSO>x;Me*~sSd0irx`jxg z@f5XqyW^OXH6-GT$n7%287LCNLlGl4OMr+}CRp6RgY4cMy~Rc;CU)#>1O_RZ9gSeo zkfho`QY#a*20!hKh=i?S8XNod#|Sls5{y}3A!?E53ugh6z2BJNPYE`XC!Hvu^_H_Y z!B&88OyviZ{vHUcr_Law(H3unx0etZOe&c2hJyMT!L18=(8SofRP8?BDQ|9^yzJmC zO@{s99poMxM{1qiPHZ9ZL{9Xl1m$oHF_NyXQ}?H-d+qEaaj#%XH)8`z7OAtYR@r{? z=7N0u|C~F2!##+l*xvpmpaOd+8(8e*Ye=ia|2D0mI7CzGp$RiXH{@~%8^Qh1kZdZJ z$^@Mjo**pnbii^YbLDjo)l61+BB22VQ<*0MJ}wdpD|{f1BMoL5GLDe$gHjgBGleEE zG!Z&*fC#i$zTB(J0I8y1PvT4>^%|Z79}4tGq`Yy!t>NzKZ9N%dmLjBC}|0fUV(;O zdo@Hh*eT3`l0WuGnHvgoCQzAjPQTytS4ttJej~~1BSkmHC=IN`2^`8rfk~gSDP5Tj zSQf_x&4L%EoRG->#x z#T!j9kxjc<52u>bu6Yj{a!7iYo*nW4Qt58~guA?&G^0g#Tr(zYXDLkQ%9vX7&!kNf zR-gev#g@uo7vZ2IX^9o|9Pa)!jgP3Kn_HSA49q;$DI+F52Q_Lr_jDXTKFn|%648Nk zgGH@+Q&Axh8}U6IXPeXuU7*c%d>3NPF=zz442Tj!4v8H_Q`TbGaMig+P&fn)GD2+w zL);J=>=jd6$E5Qt2lo^YY|Z~6^&Flb5@{ZYyC350Aj7~565;}pZdUjs`?(frZzjv3 z_67MA4|_^pCOE{nK(sBBaEM5zen3dayioMNczXfq z)Z*Ovp2YF&Y(eW1%V@0(#WnP$R-0uz+ydGnX~ z6pSLugc&U-vff#sJdnbN(FYOMPKbpLsImNGoNiRlZX-UQd9(daSjzVxBuu#jJ z1|Rrx6Tml9I-m*u)iK}~X!mY%N0Z<%IDMcX7OPZGK1!jL<;9`3;slfT>LsQRb_y!Y z5*h{dv_#vd76^rOaL3rBiZe}|roB%?jyV%_-j;Ja2IF9@iQLSmgbx48U3@fQu|kdo zgq*f;3^8c{M*H=Zxuoqz{q$s0=HtL zhh#%h8f^&d&*IDE6Q!TqbdtkY?vLleci5mzW zNK)s{D2Zxf83T-T(;)fq}mD__!j6{ZUR9aQ*v_i#Mi>rZBM)$Oy`KjGtpdaAE6) zVUMhB&68;`y08d^|_*>fv_WT)f_aWQqn*#1eTT%)RfdGgjWS_ql*|q zpedc+|1su{DuLZeUuWFrfLj4>(3=%co zss@l5^t=hQBB~aR&l4hU36V9Eh5MyEu8E5(E%zJ??nR4VY5u>C)UiZj*G%+u9v<4` z!0{wqqYI-UvRN->Y}{^`b4V!a`XF_XA%5f6VaJ~!SUsgI<5HM0pf{QPbcNO-EOOX^ z17+#TIEYb9D5KtiO#B;ob$rXYo#pv~~GrLFzw@>atwpEoH$$oaX zt9b73_KNZ7G8p0;X<{GUHi?7@2NJD82-ym8MJ%`LFTnsMz=@xjL=|=yShGsz6Ty-) zJ^nDs^RO89Gna590DhtN8&h0@G*gEBQ$;0A6v3#!-dP1Se0S9z()Y_DRCe>XZV5p zeY?M`sLORyH{hZYb1g&aKkFW;@M4=1)%T%^z}Rc?$Ov&px8*_<#mADU2#_4!A}H#n zOHVQ_L^LUTu_$orz_`QfhW677W=OcZleoG|==(GaW9V-L3C2-DbXD??6ZPUW-^Gflf2EI!;k`wX89lDEVf9YyjUT9kG9t+YNJh4dR*lRk49OEML4DjEO$^0L41+IMM+*qSL7 zYN~?fH5#X9jUJa3Uoin6qf)c1&<;vO{xX(1_SlyclwtPn)0?pHIY|gryBekv~wlGSA~%( z%W=O&{65T3ik%$VR(}y2g9~nrrtBP6Bmk>}=TeGL_SpQ`K=*#H3c% zKS&5)3cm!gnR7=&ZT?BP77b}K!zdvH3x_DN5?p*IuM_J0Sr2JKS)oHZM00p(v^c zB;g{U=bxp-kRz9{NZF&jHSlS%BLC(x|JR=7F)y*sq}J6}W~H!;W?F8RlV zrf*k)VwFn2fHNLEQ48Wsc#!Ahmo#ZWkR46nk-Q&#A}2TGCU@NuA&CNr{xMmFE#R%h zmIEtgAfbP?dELJI(|)=_`}X?jro-q#TFAYO5_S~;EBG4buAX;Wbq&=Ci8Y<1koff# z>ZZeLQp7S0p4YUrvaz&1x0X7yT4SKPye4T%*JOF20V4~`1vq&dgzNuKUdmjv*KwAm zOaf)7GGPfyD4=^9`v6pw{Ynq@dNM}izW0(9vdb_M1aD9t%VA*HiMX7!OY%QC^8fPfN+)H;o+S>+n4 zoRH*yH(f|$X){of@dq<1u)HipYnC(&F7kmu7$_Sqx)KW8({YlT**)9O`bA$m^ur)5 z44||)G8AB6+o@!&BSwoFl70y%Ta7qHQIq*L6K#-w;dX>dg3W8%V^O&*?Tx0VwVXG~ z150X-m6-tgc(Fq!0R#F=S7MnJj7c$6NmY^YXIow82{$$CYsf&9jc8-)(@Dt#pG>DU zu3DG5RS$6oJf>wir!52M;6;T@Z1i(mApp*YXLI>>p?zXEKH%HNQP5G%_o z1Flk1YQFZ9KO!r;JwKmU+>UQyAeJpmvFv`bZ&X+5Uc4xtRSKJrRS^Fuo2NO0(JAk5 zf~_?LdV=h_6;>>6OBuGRGG1|wl$3{99i;%xXq1R;D)3_3y&p5SVI-TZ`JwGXrBb=P znPE5@Kskjnt0cuPVsvaq?atN80>=X&p~q0g6ens{wGr4szx7i^NATLlMMOT&n_|ZkHp_`>B8`*0eg%%lfaf}8rY-Pi7MC6; zZe#0NzFX&A*zmt|ScUa&EDgV(qd;q!1g5N|@q@|48p|yF7!dyRwbk0z^Bh6{nU12i z=HW?no$rN=#w3^qZ)yvh?{JkjLq-mcNfRw`&^MUJXz^f-oBT{&gE|gqgSO)@$?DCj z%Vbz;%zbAi#LNYuCn{%v{>GIK`jCoQ*bWbl3r} zzk(P5UM!LSu7Fz^4xuM!D`8>)v7-zz&0S*{?sJh?20c79XggT|;T>p4v7s-TDS0TU-V@m}DZ zKgV=6cQ%%GWqY*SXl1w}P7$YOW1$SUL1tIIAd!KA<*m|7cpcQV?igV~y-=b|qA#(Q zSWVNPIsOt(;wNb$cGrDqvyCDJmbs+L-euA~W^m#m@RJm+Fu6>aK>3qqL1b2)#0JB` zkgG1O9Py&67Hia2;dhojXpTfMhHJTN#m{t70Je=7@IT6Xv7RANhHl8K4w~W8s=a`g zJ0eQ4jN1?m$6<9TV<+npXQr71LO65VKjQDkX` zFB9bCqEyzc;(9(4k13KkveV%*QtSMaT^G$mBjC&X5@|0S5XPO_JV zm+*1ET2tWv4vDK(S1#e>)(xg1z9g~cpPx||(O*v(3sRbX|8x=YwvBl5^qh}+#{8#T zHtvn!%Zucy1w>tY7>R{pNUHkQ(39_$->HZcc!bW~kvJf{uu?qZl#7wXA*@lFFt^H`KklT=vv}l4dv7gii+`e*P zz(fw(cC7HL^S|ujoUGWi7f_@+Y$p>!_$V)9Z0du-9x4`E%jZQifWr%)hH#?d({tYx zi&wDV0nj|WqE?LZgFQ8@mwUs<`QR{khyDp#c=s4~)Z(sub|UAnNs1|V%#=oWOp`;K zA>Jzm__Tw!hqHqf^UWZOE4Y?SN|t!ZLGCGXl9VDG=e8pqqqSWpgPQYFS*>4N5AqtQ zpWGw!Gxs%P<7bj_unj_eq5h84kI9g?LzB!HSI6 z`BLRtAVdevp*(}GTPEOj0Kj{N-Y!e(F7X}A>-S8tt`D@xVWt6mHs^NHb&616 zk&PHHl=0z;azE}+1CjGLTa93P-8_bJg6C!j2c?kSR zt#MciP^eOBe!lLY)dtn2l_h&~4J!wE-ojG3PBQms5Pw=M$^&&_@QM1L<A7Q%N+5N?-?t|g>w!HpGIPoR12 zx+uFF19x8~g}JSpyWdhzB4_;ufEj+cn+H{7yMgV>F^wBDN8O%fFFF?Q(0Wo}ZK85%+8xO*8e1PKMIkndr0RCK)r(4s%|6QiWwh}3ad%f6zC!jJ6=?X3p2%D%moek-4gjO=2G4?A zI+re^w#hIRkN#)pA-*u?^bTJFE+DpN&-y{Ya^-ys*unga>D6m}eWd=H|4d!|E`NcLe|`CGhrNM{ zmSphUbrFWp^=5ACbdt;VUF;1g7CmY12=QJ%%lwiOYRo`Un8+Z_MFXp!@p0_^eN zNa-5bMdX*FcQ8=%4QLzbt(7)2+fW5I6&M#55i{_Tsl(pRJAI{d-PK@%%Q}H(qCVIE zX#tJ9gG+lBR@Qb(Xq#nvCy(v3wGoOi=y5I79Pa3GaQTJW>A6lOS|0!_<(U+QaZOep zW?zYV)7<{{o^B@V28vJ%Cz)s#`Hxi<#=7p2cbKU?cq`#NSo19QH(cF%M1 zwLJRd$Z>`ic(e@a3`P)vEu>(T(8B|TU_VpC`APcHtpooQLs4^y%?|jTJ-PeU%i)8m zs$le#1gq8F)&xphw!+PG;5X82IWeMECIiF!A^0q0!`#opx;<&&6C*b_#HsWUUCsyc zC(ZThMxHQ*>`Jq|8XCOjua z4V)XD)VN5Qf1cDr%?>ROyzlRyH*3&m@C&HcyI+Zd6`S85H>`!m0MO0OZv^F<)^bur zCoBvb^qU>5T?@K7VySIXAq;XLUgxWkrKF5V$qjS=dHKLGgMr7}Na#+1+&$I=uBtaD z>mly>+L<%=O=5o!#a~L4)IIB738jCrpK%NU zL{KDrmhEzU3|1h*BRqHz18*yfz6Vw+A9C|bmo{HQesCe1MEW{l@Fk08R8j+~G};!hxCa+JZ-r3EV8Fhi7(u2wSi@%z1A(ZvmGBQ! zeu&~m&JCSK_2A%O1os9T68$?J{x0bPT^?>3V^&edM^x?)+@2eim{~=YclK?3hoAY@ z04?Pmb!R%Y2wAYG|LOQ+Yy*9r6&U9S=l)7P9J#zZk3x&R-I|cMxRZyvd?@@CGBaal z(Y;1%&UFH73H0zkTe-~BB=9p8t8WcYnLXTH1A&;b$}_~A9rpsq*e1-h0)bis8>Dv* zo8k7rt?d%xIhVP{i@CyW`igYXBD?lo4KW%ISZ*!(u_w4mcT~1%Zek`Y$H>%FNYktP z`|R(nOZtsDcrDL0(+Q$Zi%I6O%EaV~=qZ8UEPBR3^5qXmc|~~%2wTs4d~9aNjDg1X zIoq#jnY;8AuT*!ZcrdbQc@z3niBkj?uobC#QP;rS{Cx0{-ca3M-}bp@shzRJ^s9~z zo(Mh;$F*cVyAT+Z9h!&K*3*o~9sFz!ZND6(bntjNiu6n|38T?^#|^mRSGSYMo+J2w z4HTyO-9vrI6F0?yg0+G6>3v2KTmXGRsYcO7HZT6pOYdy?oZ8wlA0R}o`d$f$q4TkrOAn7U*?^ z@4&bfHT6Ana_ieBlM>eS0N=me(hCiOE#A9X08G00MMu$>t_VBL46t%vm8pyA^qgyo zqm{4>1Lk@wE5pCFU~6PK-SN97KOna&oVUEjB~kYzclT3OmvmiP6FvCdEA`k5h0B}D z45-=cmLFZFiBwHMm15DCVVcgPr$x2iL16E9ucC8O#n)?$Jxr3($60wF_DdDhg*9Aa zoJc9nS=hIdxAI^!zcSi6zLfd5lF-aLCZ37B0ywTRyQ45RVcwQoP9IuA=QeFaD=d7yM{7QHu#zxD z^Sm94xSp#7d+yv_54j?)(2f577Wn_tI(rGrYz@roIIEA;7WTAa!({xUY&$D0DTkgt zJfnQ{R&9ksu}?gQch%CPuh7P}*T4i)e>4OMj<%wh0S!KDTwCk8D+Y#k^_ z8UcgL8yf{C-~LG3*x@oSDRcTYa8i%qT6stQ3=3z5E6NCWGoKM^l>H6%`Ov;$Hu-E@ z%thd~*CeVGQc>Ou<`K54JFy+Y$lN4FN7uHiw{Q+k#FRh=JI#F%^?}PBRtb1`Xd%X24w2MX@KZ*;t&w zw3m_=Fc9qGA1pXzW-zIrvOPb8PEa|&07&{DKJKQX8lACdGRLM5VITaE>T`{Ik51Tj zUaNTDCU!mE<}q!jEl!BYGi0awidQKw4ZUXmTvYBF&Kr#Cn%HFksQpU2KAXSTj)=}T ztiKTzh$5Qb_*~gUF9fupQ_rGIuZlM4GzyO&;#^LOW*rkjA|mfG%->thT2JWv%lTDY zI7gE~v+_-4pJNqrM~bOaF+r3rfwmxQp)mhf2}(&Mh>yLmQevMyWR)Yqich1 z#w@OvEclE*+J1taAR8abHEk7TKSPT-=5jFziyOm z&6O4x1mFMM@1IO>LIvzF=NkSeA~D(1pYW%)%8Q3qE6ExIM6cMRh}omw%F?K2>L{O+ zyk=onw5K2x+%WVjefv1m;2Vh$T%_|Xx$+HRCIJsak!H!B6Y%Emmw_SIz#tTIJ!c+% zQKEvZdEK7q2BsG2){^tK^%(nWCitp^W!}h`NboA(LVW!Qov~+p9#%e4&EM>doKn{+ zzCrIcUOCcpjt4(+7qKq3@WF89ht8jt{`zA(F0;E`cPgUoz&utDLSy}ePXnrp8|46| zL`-C~S?7sA^LU&2`~vro3i9T19<9clF?14DR-?1N1Nl5lEdZoWx-as0S!FHpp4Lh7 z`R!7L&$hNiVQ$s_xYbI-<{15WMMFL__wv1VOQm2`>BO$V<8=!kWXEOPGi9Vsrs&c5 za%tywmXjgqEB5J{5flI%_$wz1zMbt!+Knx{J=ymA^YpW$66?Ilx2fa2T8?DAXn&=< zxjOX4%mJB7&=YQDraQp;K#o~H#^4Pn!XLX#lnhv#ur`#Tf3`UL_rR_{XT<1TX*wiZ z{3tUmfuZy(HOHtp6ly6f)489R;3(f*&I9l^)HeCJXq>>HY`BK~K=0l%k0LPx+E-Xo zQsypkw$7#x>1tlub?AcGX_i$$LDDvuP_>CH24wSaZ2tFv^)J+> zR}5>JVvR;6xxN_Rfm$E~^EA@QUTD77?P3N4cUT9CL*9y{K*|{8cFU^OOYc9^CXfsh zCQT&S&AVr!#ecR4cN-f_m#WPzWlb9!l92fk^+MG)0Jtiz<9eW`wJMlkH<;lT02(v` z45TqYI#M?kOzChENs^4;%9?1G*yZ9`by zX+FRr@Zedj^zHDQyMrxA1vNC&t;>$|Xz`#shj;%Ux6x2=(B))H&}JuX@C|ve5B@(Y z?xu`3hH%Mbr}dfqVHnt}zALpbOAyse5EBH$QsDFM?cOZl159Je>!RgOC|WS2!UJtxp3o97L9W9S#Jg2j!H-#IW#8a$9$qu)c(b?0 zQIExM>@2Rc=%|OAPe#DywF%$Twx1dxwX$WKUE0^cLy(lu#O*0$FYZP!3pKhj#rCQ? zivh3C>I`B*b25;aegOv`IK_-_Nq(4Go7~ z9Lf1lx8b*T=OqhV_bg}Oy2N9_7m<6S(!}01=v{8n)PQNKhF%xLU}gv>^p*%n zsC#iPo$>|uW~OICd;uFa#-NVq3%p7 z^cUr&>0a}}8s_52)@*;bn$$pHYpR_UD{UlOpsKP-Eyi z+huv?L;RlpG{K7Fw`)mtDnT`#dOC~9-Vsin96`VKqS~RaExCW|wC`mUj%y)ng}+WR zK^~V3dEp;8xb??BmD1+oboD11n^kdsqsHU09DAub1Qp4i75_os9h#iWnf>ryMBFom zYBXy{lW&gPX2Ai;`tSc~0djnbZ3mrFd)HqTd=EP3zg1i>5Q%ho{wg*pd3sGZscg0*T^CS7K}v9`$e03F?WY-XjAJE)70G1tmUO3S>ZM zjH3W$%;CuzVUvl}3C+TvlYbl%9NCg260}@)e7{@FgOiB?8_W1|hN0Euai>gZ;*zSx zGAC&EY|vHG_xcmsTem^63g;R4ewPjEYLPWz;0c-_qo_a9`qavvt5IL8JiM^XSyJpg z;6x1L#PU0~&}?)@Yb4iscS{Vr`=$ZYTWLyb?p?u_rg%e7-N#0HyUsLKIp5y#h~qi0J`2-g+{y1CqS1`VYgk%s@Vs&y zjeKlQ(;>nQR12fI=;&nl(DNn|LeiEH-$VR{O8~cq7p%H8Zd&r4jfDf9r*dYMEVUHo zKk-8$`vK(-G3w=%KlexD5m%4KWEhtR44|JyX%2jLry}QySa$69xI?J}F&sr0)8z+6e%#4h3!!CU z`)@Q6n)c$l%g=;~f37Bcl5Q&~R9tG8`leA`Qd`1TsM=0rqn_ZElg>-+RZX$<+) z#|N6y8Nc7kG-oAV5KdLw-dya~3(R1R8W=~76xrX_D%}=$*!!_NZ}^`py_@UwUOB&F z1m)SwsApu1#Kh*VW*l7+J{jcL1cYG4mXL`N#=nB!-P=w*`sA4-5;E~5P-~L)ydrk@ z|K^j@-IY>AdGz7Xwbb+O7UPCL7l%;nrc%7`;+I&{b9mdq$Fce7fs6vTQye_VT2{;! zDI%5)oJUm!jl{MIY%F=PX*HU$D9lsI;ly>i(&|{e^bXp0n#!&d`5t_{aJsNPd;y&h z3yKzh(nQFW1>j|Nbmy8=menJ+Id}vsEDe8`UKA48OF-96eWF$Up;5%dRz2Riw)0Qs zFbRx3Eyd8{ZbJ1{fN6hJjGdonngwVFPg^pl-#YKpyGKsjxso}I`~8=U-!&-@9JZ^y zWMQ76${_I0WyS8J6%CRX9oogl^`c40mqS)0krCcTF7V+bI;(iXd+JV>*m#I7^3Q>W z7g;}@bKPxLzmm&%p3gOxXtVC2uiOm`Y;tcITz3fneYC_T6!<3@mIh90MG(awi40^< zU0HYL+VrSBVl+{|@4}nbQW>>`dYvUW7?Ldh*HgS?E&?R3;=RzKBoeQa}udy1X$O{1>19EwGXORm#~G<{c-=IZDCNdK+gfv;z>0f&Fz zv`A-pGh-SlFOE$LK*_w?o3Zg+Cs_<-h310Fe+t_nM63$M{QO~ZoB`H!De2^PD=&Tx zCBo$@VIvKSG@SFCy4E42L6-mRS6Yw z;E$q~Z@gsKJ$gCO1qs0wiMDrRk7!a2>Si=m;xyf*6H4xA7!qp8XLH6*U+1_nMnT@F zfgH{c0#p>KZK2FtYn0E;J;o#12PR^v`L}+U5I-vF0M;bU7DNv#%u#dV0lLIX`=K_V zpUPmItEwd3us?B+h32N!ng;L=QXNk(#4oanoO2ID@$G2V{*)Rxjp_%j#EGz64u2h# zy?XF(@X#6Qrl}nG-RRDT^loA*zSh`8Nz+44Rj#a{Qc;?57BVs;;fHC`edI1Lv9frV z5LEFTIDiu^ac8*o1M94_*AB! zW`Vo0w%(c9Pf;{(*{wYuZ|dQd7}+ zk|(*zVTngL@MpNryt(O|&PGb@pQz>>@4u#?VDZP{7v3uQ%zHWbcz_RYPqAa^hnuK) zL&~AsQRJjxoav{Rcs=&($$}4=esg$Q4)LXYhOQ?^P~a|xeGwQTR%W$Jt?ajvR@7T7 zvMnqkRq=igs*+~kHj$Xhos)QzzxzDVHn_&ClJ>hT%i{FylVn#}$`LgLp|5(Kprj8( zzhngr`DjlOLM;9wwlj8D^DI^i$TxhbqUcTCZ=Q?-#o8^bsp+cxJ9e6WpZ1evYt@0DI z8x9Vuo5g+k3tY%ETy4$O*Sd^2gY`H(^z%REgT9bOKjoQJU1ij#Tj<~qSz$V|eBu`q z+Q)|%*3$bM>v@qWTrm z!7Uy~=KD7^@o$*CtV4UspQ8V<^!{fD#~(eMDJ5Es+G>-3WM@0-qP&v2KJ6o+J-mgg29!s* zi2LRDv&DMcFMuiycZ!E=KFbtc3(GG#lO3zBTNko8l8bHGC{Khi-uH#+Gv( zo-crnj<$==1qFXgd2CHrM6ryKJ^q_*9h@)f+aU(e=^BoDILuYX;=m#*_8f>Bb<(6P z8k1Ceu1yR@(-_b9E;i%po}#t!XT`5c={wnD@t-o%(%p=+TrYiSDfSMn3h({LLoE5PuQ(0)n>Tvd zpDr?G!&{!@vys1P804!iq~UYI+AW^%Qv4vK7H0kSikWpI!Y1Mi=K(9&j*LRKBQ?&M zjM-V?{%7(hat#w+F4N+)S--TjiwoeumRIju%o=s+L2CL+?m+8~kaOYFuB6eOSgCs6 zXl8opCKaF2JI_LcS843z1S|;y`y$UGFNaQ5>gzpk*bJHQo*1i8lNw8P*J;>s{G6r- zblXKR@!)J_N{lTVaLjP^Q}>82{FnqtAM-qUE`{A;s{d4&`10Zd*Ek^YwQ2hawXDfq zPkrJu%{aAXuh-m}H8T%D=Jgbgl@7d$>4g#2tsU0gLhq8Y=OlV*xXB-^~1y;XZe1rYj$L_m6x)5vq$AUNK%|4Km`p)i)PqgTLd2M`4?|aU3#nglf_e1fh zy7xt?ezOuu(oY4_T1uz>0B4#eC(;tItjUD>Yrt%Xe8;6JG#3PyT@^QBHfmM;Y@xCX zsvU{3HKO14_?`t^%QF0MKs4{f%jt6G3x5qV9!W0rCe2|b!1-#C(d^n`nsh16(Nwsu z{$tO@d{0hFIgH#I&%u~QS3R4LZN)d*De~3jkSVwqfonZcwEES$n`sGqY>**!Y14LF z8~WEj28pdKpCax@vS#7MocjP@&Ev97*QNk9@?FAtINvhLql_dqKPl2-SM2@l`)s=W z@b$fVQYk*}8nV}X_jxEDkS<=TF+apvD1IlMCM21jD{luW_D;rLHT+AglRw8F)8Yc( zEOiasRu{Fzrn9)bxUSuwuO4#Q+)zEa_wwH^X((<&5a;)03_)j*^helgzqsWB&bpra zU;g!k6N_E3j@#EC(NQY{zPPE%)0&1x4Us=)cq?5XxTUx!YK;xCj>1gg4Yjn}KrtR-SiZAuSuRt5 z40+e~L@r=fqWZh1uD_k zY+{x1E5=hY?hKmQ)8)O)iI-7hwz~5LhM^OdZ>qdvTqn&S6V5g})6c19B|e3!-v(6G z9kPBf$!m3jWWJooZG|?|R3`glw#DMTS4|r$zMIFkWKNr-gf#ruZ2x_Y6WIs# z)Rrh;x}4$=dY%8#J378!w`U{La^!OQ%N*3g06ZCPvc{5=Y75Vk z>Q2=c4tp9_is`&%(@a9&9R4V<0k#-cYZPi_^QLwX%8Qo}VVm`$j?GP`LaQHHhZkZj zLFXe_M>h~W(Rp&BvWq&K`S$2*@Wz|3X2CbB_-h;a+t{laqp(KzUpuRnyrAv7vgP~o zRE3K;E+k=L@~NSMG9#W=I>LEJtU&RNH2@*?>l>~74L3@}=h;B41?~T|0F&n&s$>Zb zeDQ}58TIc)_rq|Xg)5!Moe_sFYbbO`N9JfPemUQg(tSQ;=}uC;4VVVK_a5Dp4C8p= z|5N(q`(dBed*n(LQ$b6*O$@z%QQF294B@tQ#FVN6C?ly5pR(G&vp75S#bb$;Q@qGR zAFp_(Z%+lknT*p86wrOPWt1D!Smv-Iv+Gq}@24wYe5|SUA$fDle6_$q*mAuVjQX_v zvezf8Ahm>-t*}evh!;;K!`t#lr@NW>6r+*)*X2#7Vt0jA%9|~~(A~|v#o66WaBx%b zojlu++3*IZoP^c+ek4{}MtIoK{(HX&L-wHrA$g=Y*tU7b#`r$bEb-ebo6Sg!h~q!$ z5%1e8FY*cKOP;=?CL^N^m>nMYF3?iFp8U)_%k-gdi155=7a~CspwO?Ybo1GYS234( zoZBp%#bBhRnei)qlPxg@+aWwXFQwyAK7@by|BMRI5W>W`C^^}P>`*N3uZgiG^Wb+*5d$;1H-befL4NSzEVJjS-5p|gt6 zpf!<6?M?XdwzsQ4FwH9NOLV6ASCZXIc^OLXZ5`nL>U4tayI~Xt$WX3be7lCYbp}G)e~ijG%6u9_w0&Gi?Owr_W1Oe zBt5pkW5Yq;cRfKch=}T`;`s{%K2{(H4RqLlV>vwP$@LQEQ?;xKAtdS7Ep{@VcKqbY=qDVg z%2Cr9E3dehFi*@oI6W5XxT3gS(oXu@sT!B1+E45>Amygs^f%I>+k0tBKeQsFmp5yb zw1NGgV3MdVbBgToxVvn?tT6y6m|to$JrG=vNrICTx()DL zvw>ETNHPPPu2~uhw$h6NgD}?>nInN{9h1wjIeigr=6T<}e~3rBl>!fe%$rphlSRwb z#hk*hY0~!G>F}-w>P$ac!uJvz$=me%sw>mr=e_bUaY6*9q^-I4w-W>YhI-|p;&V26}M7+t(UZ;;8PmmeDq6U=vD?!Bh$R!2|t zF#Ln*q&#%-xDT2In1pQ&wgeYIPFF5c`Wp{R(@k9(?EKAt!N{lb`3_*|MGnhIw12ma zPVE`-M(j2fGbN*hL+kWoLT31OFBZj1I?=M;z9b}R{yU-7veV_kAjx9v*FJ!Pf1QZE zTiGzAJ-rb=8KSpu7$j4V#!Ge67VM=02+QX*hYdVZX)SkyA5A zMv7v_8u(Ufv#laW4(f`|s}PvaX7EO)tY=G;nA9W@o0Q(L2kXujC&%TaaH_mJYW38hDgA0dU)wLlUD@G@qp)sB(C z49v~Q77~pO#fI;xkk`ImF6cQ)vf4!;zuvC44lp%ee7bEKLCVjc`rjQ4azI!t0*8QS zF1wHtjPXI3R7$yDKxcd>dF_f5!?t5&;D)RJ4uYDYeh;&YZVX(;J1g5LlcOK{uG>V_Fawa4xXs1udnw&l@@B`>@o=Xn(h8pNR)6n zd@==pzqwToY{s(O*E_8se}%I#A<6}P#w(4b+S%{h7Xm_B82_dzElVBs)t~- z`jVyVny*d*f-RVx*Z~FrVwo(^E>PwMdouIqQ_EP0WwHHaKrbe&ybohihX~Yh-P0JV z@V5sa_@EoM!~!`tBT=dVM|exaC4%8H@PwsbLhr;Fo?azY!O%9L(k?6 zjxDaPC=~kge3Y>6L_S7DaNxm_zgUIQ!TH*$yf-9;pKAlN;#Mp1m&p*o;V(J!#=+U= z_~7GsXZDKY^UR|Go}%`daIqWg(X-*plvNcKakmuL7J^)Z=jUkap%%?`H(=HTwV9<4 zzlZSqW?O|cGTcT2YQkSp*4py9oClZb znoA(4Fd*obr*||@LGmq*`LgO7!E<&eBt2)?gzdhNdZt=T`0mrsMZCBNqjh{few_Ai z|J_B8on8k09y}itWqiTo@ptL1u>2w?yRzY<&$lW~!FD}%@zPOVT~BhXG;;EvM0)fY z*0>MyeZ3yeF^!oaDSe5hQ42$ zYP9&TDaP+jH#f?C^P1b)n;V-4jMZKx{Y?6Vz!Ga_T3UhtNt`6>=L6|N9*0xdvY?)| zfilq}!U?N!|A*1jyrgm2`s$XH)LCTXvNGjRZKuO9`4WC^jefezY;26%?ntuetz)X9 zgBZ`bh1OvZMOglK=5i)|ricfV9aY?&J($kDvC}%b0Rq;Suji>fR;e(C6(cTIX0prs zOwMql%F4?_F}3ArR|1jw9T0kaTCAe3ZkXj$Vpu;L3E7obz2~Y#+S%S*L%H2nnd{tW zLwW6TI1-d0=88g-f1RM|8m`T4w)-=#kEn;_`?FH2c)$LVWPpY5FX8FwBiIMmDCx-G zOFt*~c0VVT)k{gy`mca9m$DVe<-Y@(gJM*VLzbK1583i;?Zqj!DB&6@aF{AslP>Ik#MIDc;D+uXtb$+aklx7E+lfW4q2XY&*6S^>E*nhz)fSo z`j883H}~{5-uC;UYgmQZVb-3oD`*{)=fY?-jswe!yg%22~t;sT_x7SlT9DqppVy+saepD67^9>{j6DS_~m>KnWkMJ zu7D1^39y=;68+mx%ny!f-+xH^zD2%5NWd$K(>WQ`hO^bM!?~Lboz#@Ri#+P8;Ws@l z-(>=#ZwwOn?~nn)GuJp{1GA}gDQ2hB*XjNkqfzAa1X(nxOM`Pj-V{mJX3$O%4{iNv zn3`(ZjX)V{)?;;L?aP2EY0ql5md4E0v(HVIFThB%4y~^tRmcVH+pf)?8x1kH( z<*+^=?tcnLxi)OKgh8uL*eE~G`33#7YiF`(_V6GtPk`|Jl_O7V4|DE$~WhlmcV`s*69KHGpvv6{1Gv8Eta)%`b*%G^E z_Rt?Ezr1h6^RIK=hPbBB&NkF}nCk3@d8h4}`>zAMbut6q>n(FWACv$gGm~w^0_|)} z1$2bSi^sGk5H9ra(UXZ`nYTI z-`H*9D-J|2yr|0t@uoySJR}_V@a_>8B2Mj?rXYE|UmZZ0zL;XkB0Sx_I*@)=_LlSK5G^~Z$ANH9$CJq`zv4XV206KZZ+2rj|}<$bbJWpj&NG&+(_Yt;=+T+ALmAqNcEoThC{F zvOk;oA5$y6bulm-T`U^;U>9anV(0MSU|QpIf0pTUj<)+e75ij2^sq<2FTQbkGQHbF z8aPRoYD=8W>cv9JnPq}5FFdfF1!U6mn3O7d|0!;5&@i}L_^_%W7K!n0ovkz|%$VDmsVU-{7k0Wmb_0vlc5BI;l|5Do z_g?jOHAB=jy3F{}4yGH)J^crW5<4k_jnQ+{O;B54Cfra*zw)c=}}R2KE*cFp+IyB@r@{aiG*oS#)+Oe;qa z(M5Hg0aUlQF8!{+AXomPrfvDFjOnEFc1aExL$|E5Dr+X@FbBhub5FIbc(`v*5f!C% zxu@+MyJwgPPeK-GM!+flkvg1o&IOp*WzP|PDLDhs(>(VZ0>U1zG}J1V}RZqc5Fn1G$#@l+D`ZcDJ8ppf1g<`e(xy{ zjtL7@l_!+XEkd%iocoQREZtn%Kf^$K46=-Vvi5geU_hh5lf<3U6s>OWX7<99YX zbF>z;4L$N0o~(1}oar@=e%<-0nE?^3a+0z>ba~n4`||hIw8*ykFS?u|!qN>_*jbk; z94lwIwblofexDYI$#YR%F0XheqfB}w0H9e7(x zJNv4fqgtKiyUF1OT0;|^R3K=DnaGJPIM@l4d!hcUe}cBe?n7uvK=IFY9Es^t}sI~wlVq~+Wp?ir|>Avr^sup4W;w>ks ztu3R@9>qUo)*|ptzH;<*bur#Qcd$S|)mX~AE~Ge2=K$l>mASgyk)n=`Q{N2zt=#!= zML*i9xpq0f@8M(@&O}qs=*gdD-hJE(GHb?CL)$A8~$L*2Gu#Vx>479!fS?#_NEBv`mos+fu+9AFhlwZoO1y+J6p&6%uZ7CNZW`z95^I1aPHlM5NwrdCdU zdIVe5ReMQIE@_+T_3j+2@T<4PC5JzJBl7TV%v_~X&xV{6xV&%Ffq`qM!%D7Dm%zqg zxkRW~yR4#|`JJ2_5-^yfKUTX~GKgzqO&mtrJNx&soi@W*i^Fc6c?Qn61-?lw^9Lhf zD4J@yDrIz`vg4`wJz!(aXgL>lAX-l+MapGO%>Hn6jwKK{vG!f`kscS0x8!{VC!!xG ziUWo<>LJZhBUA#fvz|VTGaz^(Z^4Iq_fr+n{&SG?8FLHx{fi+^Qb;a`Q_e&~uFV(T z8~y4p&aXGUyvE;%^bN=CEU$R;U9edGqeG0njW1{koOn~MDgI|M)rI^cb6o^pYxA!a z850Na)N!96HoFkuSwm5MZkH=1a;kgdGkDJT{$f2D|KX#D*qUf?uM40aZ`6Q2qN3!& zhwb3%2hBntZ1gH`9j=#@+gWsFVX2#4w%lID_dEKjYR~{VP5D+o>3i#foXe!Gh?Ics zsvZL-228WlMO_dC=hwo;_H%)+8It9ob0+#j>9*_#m)NcVJC*#MgGWV-jdBiC zbo}Ph>+Uj5Rl|Qw8PG;&is5qbG!gqIz9DF%>%xzqn{t8nLZrK{lTtDO~7`|>>b%Ja3V=?^fMpWPwIr}xlg>* zZX)D-uZ|viZf`7m-V1Sz5y2Xaoc3Mo_! zOHuD|oO&0L_4EIT`U<}`v?f@f6faQR3KSBgxDphF?DuxmTc$3xI|n6xU9||v6>O8=U|mIHPl^#76IkXu8cv@F z_2=W4HPuTbYGF0WA~Ewd1`Ty2YJ6Fdix6%#Hhsh5rng+(ga6~xv)%weX{Do`z9`M5 zU7xdCv^IEA2-}X(!V|k(I_0IY{a)}kZ^{lwnXh0e%i}i5>P$`ZZcL6U@%p+Aj zi(m0pAm;%-*{_GMBt~SOd2D3nLnZY>y6p)^sRv(9+~sQNmBFnE$5Fy`p?7h0<5L_y z;k40L(P8kBB+`SM#>Z&vIMyxN9~Rw={JC6p&JUZ=6>~REURld@jzhCw1w~Bb4BGli zStLKF)ju&q{^J69MDZ?pPkwxIw8ux|fgjk8*{G3(N6rRE+#IXIm|=*4<#| zIa$Rpx&*q$=aZ9m*b@FPYpH?oX4`{2!Er@sCm~iw5P#uZ*Z`NrroPirm^vegX&(=Z z8g}R>md^ozO{Z&7&jp-}#=a9&{Rn1Bbs?I_xItB8c<%`vYiru)=Rx%q^IO$91nS#f zq>jQ|s*lw&+c31oojo4qLF7OHde;o`ck?#C0vDG5lpj%%4#(j3`vB*43zYTT-y$qw zxhk50Gifo0FL*p$jPHf{oJvMgEDf{?C1h?5z4&y5oS4~-CcVhr8KG_f_o4&=sSciG z|A`9_?ge+rDEqGe4>ip4$o=KW3l%57CR#_Du2ZD6Nq~l?F(KKY?86yykjrB1a-TY( zbK)EnY{yMPAe$mVK*G4gL)T2X82oZt35tRpp=3;EY1Fz{U2iUyrFJ4gz4zh+G>7$ z*|TddUkr!TnPX@5b4C3`2SZf_C%1BZcOR2vaij+gwyZlv55`?>`sQ*U;WF1o|D&IC zsRJS_QK1@%qVGbhXEJ|SmLvDVPUDCFtaK2%4udHrj`);PWC-T0^4RJTUz5I6gq-Fk z>G1TM=zKQ1mx>O*1#D@$*yRxYf5ysxO85-x^i-*20a-c8*iY2RIX+F?02UtgQOoqf z<@FNhbrVbLJ{Fuby4Y@0Jf8#d9v?-UgY{}eq^Jevkx z%_p*3!j@WECh7Ok-XDq5rL8mcnBLI%z7C8+cn@$DzPIv{mPtqoo52E;KR#q%4JIa_ zpOoP1+^-4m$Nd2zU}Df}$p4g*WW+aQ^5Y|d^1_uRoiVd67z^4y)Diekd^bR1Ny(V; z3tFZ11`(=Vqsay@8gc)HQm7ui(jzNgWIt@*wLTA_dkw3@a0CtPfdcda+E*dL4+wiG zx*-u)-?aC&A6OeO4XXDO@dfQn4w^K_=#ZBiO;VTSty8!#Qt!y|p1zoN!!a)h)I@xM z->k<^6#w>(MOB(elzI^?lh)DxHcUO#V8b-tznDS}34ZC^DnE(f$RQ18g z9Yt1JQGpp40`OT9AQ#Tjpa9nzkd1>^9EL?!9#*RJ_7elUgOkz&FcV@k@giz?0d6_S zGrB(p6cB$FUHBFA_rVABb4|TgRa(bdgQ%1ig;S>tVCr)gYLcX>(_ctI5K*M`Sp1RO zn^#GVR7EMBBOF5}fqFq9vLb1AoZwrj_~vlUc@OAIr(i@e0rOcIFJ{hgh;RqeDbxS3 z0Oo_^2tdH3lz~Nwt1u(hsppl)(et1HQ(UynDRSDJ#z;t%QwALxt)s5bgKuV|x$+6j@?J!pbZIRUNh^ zY%nx1A^W;&6oE8GnzMWA1P8Ce1wjfD_6dtg^!)TarHO?^sD$En(N2EAd{YqXu)2_8 zC|zWYKthIx_!s~b!aSI_3Z5E<7Xt1Jjq3&#aBs_&x5I zW7PqKZx;wQ(FsUDUHnL*g<6?RRLx4O!9tXw?)lQu>577^aW(kRDcUk0r?Wim5&VyL z0OT*Xg_pdh{vK@?%3*I|=j&kMdo95MG1;Nk1wRUp2y+=n{4w(1TnB8DGZeTUo^m&w z*ry`2DQj3txY#UiNQbxXS@Spzh)1zJC+b4mp52ls~J zcUagmBJfrH`r33xWgy{J0QhdfU2EjbDEJ(jh^a-OUZ#*m%>+^Uy)^)^b4U1X>N!Mv zGG`=ADjJNL7hNm=6)L3pN}y8&(6mm*9@j1^^xxK-*jS%wksG5_@-)Wwr4{^M7#Boh zfMl>i%IAj;zROm5f+Rx9|BDgvpBQ5w&}GB2>{$M(XbfV?JNqrgBhTE5fJxu$goJ*p z>s$^`i@n51W-OX)c(kdF06{Qk1Fc3dFQQ(*2>w^7GZdBukf0QPf}~mUW)b2O{ZhS(R3E!BL%4_6~; z8xmtGHQTbOcuHaHN0|&1TH=d3M#hiH3F@2H!v-ofk9gIF+L^liL1Z+7* zi+#ln?zITI5P?p7df&$fz!>$%hA9R{;a?0@R|5Nf7@2CW6bN*E%~hZc?oO*Q?=R9G=@&6ss*Y9MxBqmb5h#{ba0YgX*Jz= zm5d;+XFzI>BpP3t{~q%o)Zw}#U0K&udrHLm66tA*F<3M~4s`;e$45WvuawrIK_G9h zh1_LamQ?dgIZ=|9&XQQY8@lOSSd3Nf9Ohq-4~PYJnnZY_UlT7*QXHiL-*q1cq7Ch- ziYI200t!KmYn2%F=(oEFl5GTFCW*4-prsfI0jqV|09>l+;dE(YZHh&CUx2kF-VnP^QZ%_V`a#1A zQFWyFP{_QlpLeKI*i)WxO@~$~y{q+9K`l{poe{FZfd4oTSvJ|v&q78d=7nA)JgxUs zTB?t7Z#z-%M-`@TlO$g}2EH0ZtggR5InA%$rLDIh{F4eh)S(yUi1t*~L)m{0z0HtD z7S2OKA=k29x-e=#R8H{ueU+0B?5kqmOs!Isw}KyI4!+p-!If~^{`AkCx->n(xI#Bg zKGdp)ZV1E*#TIaz#j!;GEUu5SmOT1g&GyQ5(r;5`)BO`=p5j3o$t@|#qAy>MJ#R-o zV=kM_;KGW!CO%Q25{|x1l56lL?hB93+k_QNtQ;H_f1DMHq!!6clR_6R5udKx-$is3 z&^V=Vqis{)x388J=u!$6wN{@)-AZzblpolTt71PYEytKhv3^kU`DMsMa(|Qg2f`32 z)yO(LK5oD4^Wm}ED4R->5>*f zWm1p{FP5qnI#U6N;O~|PW-uUrxu$AiOz6B6B!RJ2A2{HZ?AnQ2s=N6LvKaFp=p#iX zf%*u8v%FmaxNM2$$p1piC#gV@qZ+8nI@vnUB6`P*1ED2;}L>tkFA&e`}*z2aaYg1(E#9Nsmtk zPdRpSAZ(%`^-nh^L$*PEUiv?+Kd&-++MRkU1m+1j+;F1_Eszq#*^t!nNHUA!FY zoiDVto|ZMN!ThrpdWEIXQc$dpC7%sz?lSL+2@gXQfr!)}HuyCd+lV#W979cLEvU7@ z->`4=B6+Gqq{Z-0GQPRZqt2D7)$XT&P_*bPxZ98#uq{?pr+ZN3V zGl0({q-)8iGfr2u8xN$;hA2o8rZNV`II*6DZUcR0U;db`R{>-YuRU|&WFq?$t*UV5 znsUDl5ky80&|~StMG;E_TUNPj*fZe@slRcClhtY1mh;5wNG{BZ&8vre_;y^feY~lu zNVC*b+c{Lh|Kp(jKNJ8;xsa8pha$`K9={om z*lsJeF{<#fs%l;?ER{@YrN%Vp#8|6??WE(wF!$z)qrd%T%U?Eyr+@ z*vRgJ94C<35WmV5AgpTod8cy=UT3RLB5tjdrV5x>M+6>!(2JM*Dng!>&NQ87AFW|( z{!P%%`qL-oc_iJ}YNQSz#vJOf7)!J5Dn-ra--+}A6G&%@t5h$q0h_0@(pYocbc|Dd zE602LK9YL7|DOtGoMDAR0(zqFFe`@wB34`|FgCjTh>75v4l&BbLmpCi=rG`A;xKY} zW4vn*HYJ}NygNp>?P5dTE*m5SFYu6^B*-Uj2dvyrEE9qTH5*VLY7AvRn})_q#T)Fa zGzSI7FZD*>=>) zl?LGXnaBMNO5b6yW8-jlA*za-9}fIcLj|{1#2j$|L8*c)Bv{0gA?3tFay2b<{keFB z#KIx)WRf|%p%>;})@r0gF*{puf>}N^Lds8SV=a_U=4ZfH+9?~)MNfVai0uNKuND+1g;y?w3?Z4!jUS{G!7w)NV z2u8F_SyIf4TmW-Q*H5XbyL7OQnd(^j4J?Dqw|wNt>}Gy!N?Xo<+5}gcvb{R;VIepj z+n+kc?C)RcvD+U1VpTBSET8X5iK;QqhZU%b+KfV^T>2>IdQ-p(U}e<2N&%boNxNU! zN<5QY8qy{oM*N|1JRRnLPkN@mw0(WAqWX6coKkX1{}9~8V1OfORlKB2w( z$KHI{(I6{`Py~w&MGtiMJxnt^h2J0@^6taJIGqx%*yC?0V}*Lko$WoQ3NFe|x{7>1 zXx@6AexYT{G9qOc;D^drR&FU0jA^cf`Aa(mY5c{C>nWj^fVE9$7Hv8DU{^0vaV*xo zkmk6UDbga=HMH#MKFZ+Y$Y|NGv?C|hOzvbL5g%% z3d>*~fBgO!fRIIY+E?E5#`1GZEYyYya7+!^G=Y&gRWb9eOY|9Ay5$En0m^P*8%D0` zz@u@@r6==6ix%fspeAX5Udb2t+u>pixEYC1A>xAY0mjx<{IvQZLfQ9=%=j^ zmJc&JwVMJ5?8v8w&3mH=zE}gWpQs4#Ognz#Crp)+B`X@FuHjjOI8$=WFnu1C5}LGr z>EH?Kq)8Z0y|tQ*EOUn~!<3aBtdK{qFx!A2y`z|bHhu$4w!NxvwfYg)fi)sagB8HW z7p#fJ(D9e39-01GvOCRPZtrWEj493JMb~hwatw9(aK!E6aRg3KC02@CX_3gNA&3-5 zh)akTDdv<34!V~@!VJI8^Y}!d1~FD@rU}pjJ7Lzu^@!3@Aq3S&uGpK_ZWnW-#t8Hb zWrxbSRMbNRnVXMBfIjcXDGX}CG!S8&Iy4l&TjYOPH&LL~xVZg-gNR6EE^GXn6ATfK z(fj{D3C}DzNAelAXWO)Fup7V5ycrd3Wf0_JR#x*K%DgchaCIOjV6Hse(P_#{e{$ zym7Q6^{{~8JcRbzwn=Pi?`0UB{tkrIzp>>hKk+L{T1G2@40wGLLiP)Jt5ecikO{6{ zvIzkzW%a2+X~8}Ge<0AB0hwG~%=51RQkCx?3C!izKS^6!)aI^Wcal;*NfUr|MbXDY zT}_KF^Ha3MGN#ArYR)h)=^&(tZvkVI5Q7*O$x8v(1VNZsEgV2r1SlFy4>S6#59SB^ zjuBpG2EJI?heAH6A4%Ur)$sZ)y`W~`L!PoP{kQAdm|85dgEB$@X$%#=8e;e*@~MHe zg9lRnI8Yi`c1t3fIO)LbNeYc5$4jaaX^tv}NPNGh4mkDfQ4Z4}GTpTKOKCI{p4DN58fgZg=BZlhgK9fed=1> z!*3qh<`g;nY0WkD<49R5-ah}CHXUYAro%xEaw-6&?n^a)j1PZem*n)r81V&J0!zDg z;RLVimGoojHT7&mfCY>azF-sCm zca7W$A99Xr(kOv3#z=H1TSUx=)Ul-?D5FSlFPGd2h?RT`75{ZpD#w*27zF@0S8Mzq z7SNCEDh6_{lhkG!!S1^nHAd7#U7Sl?LwdW7M94D1BE&pV0*z{RZ1^dpI$KJF;>cdc zR63D=B%}zIBgXP=15x~g6Ix1~<&+fMWBxBkumOJKblX!Xze~-5usG9)#|uwjcZ9Fi zLIGIGg^ntc+xb7OH>D*8_qSykKDb-?t`g~2GohRLet<# z>5-X&L{*fhQHqZ5%bOp%^l=3~&$Sf5UGb!U^|wj?G^~z^5Upb|XH?coH8sJ98+2KJ zp5XVyeujy%aLbS3}o3euv!mDSs!2IH@m==DAISt>$sNd{aT@K?NFjtm3>3<)s8LBeVfbZ-I46 zVv*4geEq|nfY{CmsV}1dcnUjnM7zwj5(ty??Y3gMKsqITIDbeKx7h1xIY1`h4oSf z>B8{_9G%tqhIS;bdq_QkQZ|;|{?Ki|F6+OdI?$qK%)`R>gev_ep14mb)X3VWoA)-+>t*8c{L5a0YKR==fpKUbMe*mN;RR0 z8?{u^F!(fquFUvmv6Aa~`C0XgSfdB7^icf5m}3B=HSJG-*-3j!klg#f5A-C2)#j%m z4^oClJQ_2)2E+LE<-!c6DI1n4m9|{EB&A%p)yHuC+`u z+!qgcz&3cn_hOi#a!LxO305P@EP1fAS;z^ziWYuZ1VXZ{)yr|CjQ!fSEpxm*X1u-a zJ<@A%S(u2jzdeLWjbB;8RNF{U%jmSz=`nfFSKWS#gK>IF|7q{gOYlD?0`td{$`rxk@ETaTbF}~KL+_G0&%#f@ zZ@1A=;j{X$e96usX&iSJ(UrmMj<0|a5^Iu!s4J0pLa4Dmt-PYEP;H@GF*FJ@|*ugu4#@@}U7A?(xRRu*J7yn~)&|8UWb%5Ak%QsIoXZCt*}Q65q!%!-W`KKq;1wJc&O zc7Z+8iIQ1Ubche{b#l4xk}QJ`xTHc+!uCYu%(G=Q93LdQSjzsXLhJA8ll+Cov*~VR zRmlRLWJJO@IqL7p#)vJu08O14Gpmy51s@Rq$7)GywiFiGTn)sN5vMypN5MjxE_KN* zY&dgB#6Kc@@fy35p{Wax zx+)dLPmB{td@E5wg)}36|7oyJH>Uy)-cq){yybq9Ir7H)gtkp_nn`k+cJ%ci849rt zH+)>}^8lKIhbxgcZOMR^VLPo9k@L@i;9|?)-mkao0ksXt1A-sB9!f^NZ^f@y;F$HJXv5GnyZz?BohVWKyc z%Fu31YTCUHg4^kr!tLJj+pN-#;?p6J)YDjy#6Ai4^wn8Lb~ny$+`g?toYHSQvB?Ek z*Bt3`8$yod@E25R=@MNVVr38mn(3gHt-{LYze#<_s-haTSH!UVy25pS81TQrk_)$F z(LTGt)QJgBg@XN~053ZN{tLe!Qve7i_Jxs>Pbp)MHCYkh>X8bMv#0Jab<&UoYHyZZ zS1lx$2ioO_8!K8o{J<|I3lCg)`s21tmQN=+8d<=$Q3+o&p7L}~oXG0xtgRu%f#8V` zlaJ$nZ30^K zS(QS2i4|c7eM4+0UE)}?8}}|Hdp$)kh(t2Kzy|UEO*CSzpE;G)^|Rc zqUB_XBeNge(!@y~dFlBUJa4bXgWZA~qxDu^A4qGurK)N9oCYn~!UNHp!}>$^VL03> zE0o3fZ>RWbE>5OF<@_(w4Yf4pB+1x8miG`8jEYvN8|}+i1(hq{BLAV_Ajs)=E_Gha&g4u0|tbm$WwV|hVz%nxh@6{)`^mf6rI#mv9bZV%E z2i8d;bS@NN&t@1rmQ#nK)il!jB~OsdKJOM7k$>9Le_Rix7?d<^G5y0SNE8^I|Ndh( z7ia4*KU}m}s1!y%OhunoBr=ciQrNN<3*Ex2~!bLG+MpCgO#iOL{6@BMKTE#7S z$~;$|@S6_{bNJbz5zX>kyE0Q6Za95QGhP#M?(hI|67*oqY5ok%#qsPrVhxv)EUm-C ziG`k+eh&O^Fmw)#jolMCh&$i#DU=R?1CSuF;>Hh(qu3fUDGWZFCDuz9ge&K`p$+&) zz1H|*D^Me^?Q7Y7g5qfHa6IkP`1AMIUy;?H3P;XBUYP=|kRAJBjZ&b@`b{BJl28Lv zSIw)mHDx<y;&!@pIHaA(??JE@B72a!aie`-TGWk>LZz`E#P}F&5q&M2=Ef0897skc+RIY)q?B?rgA5w&M1_|5UmkW@s~evhzxGCB#M>M z&{fUlE(R5#0shyt7>U@E{zL?*h8BYbKJcNTz}XWpsQyUqaJ5pTc(f*J)9w9@c6eD; zfXc+ccavkF*p?5VMrlXCmOO1T`Y>a|s;z2yxD-0zD- zjJ#nA%oCPBw{7E(Ge8Cdh^f_VBZ!D5mQyR2m1jYX*zDbDxM4hgDnz-NtcYL#2HL#2 zgP(It4P^u37ew>v&DWDgy)=v+B7a;t8tzD!T4oM)gke_()eiTK*nCiCi1k4g8Mf|O zebE2B8eQ)H`M$N@hZrCE8Y7ExRg8s+@p8tD1=koRzDZmUCI{0#F<@)m|bi&*r@nL)6(E5ma<;sa(E((fP`SX1w3?Y+o4~A7FMLbNa9;_dEw;42j z8na=J5~HxFI(T+f3~!1;aK8yZ_DzZh)Od(0nqtfDFEaN zVzUQ7#$#hY3!hhev$A+D{#k(8qJa#ZIXPh=KKIibQS)pugbLL2Lr; z+`Fn@I1qhAS6=ylE5{LTmfd4|j|q;D=U?wg9BTZ5Y+c`cjjgIf_k#Z)7GOfg9gJxP z$Rx*TJgR=nTW=&EhR~arE!V1F?g&a$ucWXf-^nSX6|f33{2TemzncP1;$ubfFx%Hc zgxIs@6dT(-scm@qW0%R9z4nha__tX|@nYx+s$eXE{XAdOow#ykpT0+KN#x#_r95P>COz4zj_=l;bxO~Ptp?Aj_hWF7b4KpsTDR*K) zeVHr|CzXuzk(wVr_9xOlD$7uNFQrVk8@A$~#VeJDOWkOd7k>txSq@I-TM@3y*7xER zlQh_q%a0DA*o)Mu7gve5($Cijf^^Z~mY#doL$(f%j)7)5?{kUOGLNOo^hvNf^!Gy) z(L{Rmm5Mu>a-MY7%)fT;gnS=CAn%6ZyT4(RW5xGYCRb`l+))2F!_by_9LQE4SvL=V zDI}$kvZthnYL7*DW@e&kR6vAwDgE}xN8^(C3rt+6c{^d{%eB`_CzD1bQntt1)haUM zD*m3F_MR`EI;T1>pVnMmBh8h+3d=Oo78H11+X^<0swABVswyPWCb4>;`oHZic1*gF z7cY|H>*QO*a6iWGg2ZThx2Mnl-bQi_I*2^3Tqdn8H4%8c%$FQS=yPx>%*WE|;of|% zfR~i#iXl<(uMq&ZZN<>u074HUqT?0o2QxzL%|69k$6;HMVl-8Bhw7U%u35$(d{78w z&Sy!VN&|g<9851BN+HupWMJ>&bO=q)lFoD2j&IioAd7)XjIWZ2ID2euvb&+w@S&h& zZF$-crAZa)_B4J=2X*d%liM%4v#+ss8D0&LukUw8-1nQiRvv;~Ag%|MmFDy1yk|C~ z;p^`ARsAGwyK`xtPA*&-S`BBe4wF8osLjTqrRLt_4>W3YZ$G|iiDN6uw8NVgq>n`* z!I@cu05Q}_Y5#_+sekIJB94IH@_ccH@U*!EWEkO;Ee-WH{|MCT{0Pw^9qH4{>N+-8+0) z8f;d}<>`krT7OF2BxIK#i$s>oR);x=SA6o+F=>a_FG#1ipc7{virtKa4RsLt@he=s z+1}mq_{T|1DK5=KzNT39D(opOw|7q~4s3)3ZX~PVsd~(qy%@6s@0H5Z`S-9*$+ZMO z2OP}65+nt)sEr;&j+92H!y1NYdoQzJ#&Gt$U5x`ni38}9_~I{*gKs|oOvR5zv;4U) zKyj=WV^S!&4oDq3`#Zh_qnEpMzWW>6$V{=b#D&vV6`N&seZX(S+9|S6JS=H`unTgK z5V!`B(IzGF4>S1z4GbbGn_lcsojpWNOtd|%9LD;H-(BA#_unRk_eWXx(wlW3H~87n zLN4Zb?K>iHabGPVpn$FCVehjz#l;KGR4Hb8If&D2CndCL&wjNh-C_Erf#2;tl5?A4 z3?g-!=8m88D@M7oF-ZaZ1>j{W=^2J>B?v->voqAOfNl&G!@8LPVnh!hN^l# zlA&p-GwrNbB?i~VUPZ)^_Hztcw~U$Sc8WxlU7`$!&saFJP2MTRqXo@y$W6}txJKo} zDUhW7^6C$J)Ls9Ww;wg za3Z_Y-`!7b>DI_8=h@%R4;jK3d1)C$ng6wS^wWuKqNtQ%$!US7Sngc;G{zJD){F(t zae6UQS?pvnu1)w7#X9L)x#M}eK-48{pI#}F#AN>B>JoX%@XCzM9p&NDUI_zXP{0$ zv!dN2O{Yh8h50twf1Ic4bc$t7ATtVc3`N;ITsh{XxoiD65D)aYheezyNFcG;I>v(} zHKMi&6qLDI<;%Laq-2i+_b$(eQ5n&ZcbJodA+~i z`}rP5G9~$Uak(Ng#!oD`E5CAow-hM0dH>wZRwYLg=eC|%?Vi+)m-79xlUf*_;!q0B z_UY*qc#QN#+BoXxyxbRV4i*_R>Xr7>65wz>C)}#z@(!N`;L>2#C4BvPbk|4eob$D7 z*%TGTa#)`7tiSZ`4A%LnFza#6Pj#&+#4pEnU7Q9+1^xM{;juW!u>NM{ks_S7@E+@< z?d_bZAbyhA<;CywHhRZQSTOgQw{JYzeUo!7xBby|F-Rzu&HF6i&&V@f>o}9O7OT(U zTL?=A0x22kep=#=2Ud_%+(@DTNT54LV zRFdmiWF`S`-t!yz(dXlc+Ark7KEvspiZ}*X&+xJJ)5qs9qx}Nz&~%R73vKnU0x|x8{lQ?6}7MgXTsF@VzX9Abj*B!c=tk>B!pQ(ot2?{cY zsgV-*M6dgk02kh;HP!72OYj|gqV?NLiFJNp8lUT?bw!qR74FO3U3FxjNpoV`#ne9h z@yA4Y@uxYBZd(5KhYevg-saq+^pu83nMn(!e%YnnqsHFnYliRoGr4J5y5=cp z31i$IM`&t>+TQtHCS!yPbY}Sz>jN_IFj*XZ7`z|!KrYKu{cC4Kclp7@?#ZUyu6t#; z;Dg>#L8qs(8I-I3tpZ~AgQ}=&mOeQi$~w2lHC>3M<@^~z>%*OGe|ov|fzitCI;Cy% z?c(~$D+6Jc#m$#unbwQq$r!>lk0ZTnlIM04cUWv7)^C27i{n^ED$+`Ko{Unk4i3Agx(? zUyt9-H?-#_)ARLV<|Hbsb-$dFe^9pdf&}+IgtTg3x_y^<`V1|z^*N`vJtl{Jjf0h% z%xk1_6#qREf)B23+%7@v% z*!lDg=QZ7Xsk+oph&-5jLIXLOXql7W z*}K#SJX4zIpH?M(S!l`<(+JJKkVsio`LxJn!M^|g)NT7bOqW>QvW@d4QrO`))3Osj zaoXWghtDe8bDLTV<#^^2_o%t_NrtHX+k)+3YJxc{Sh0cAR;{S*yfNi&wcVNyENBku z1oIypiK-UI%qR^zzc$gWZ=HV61$}XQy?F~9#-UqR+J&%_Fg&72Je->pEZ1IVbJ5t6 z8dWJzR2G-7hqTM$TMb-N=)cd3@asHXtX}gks%o3iueHlUC`G}#v<0+3&z}dC()l;{C9%W_psqIHtRVMo)qrBl9vG zHI}JWa;0uQnTv|b~AZR`etIh z6pe1n0m}v{_ME33AxnC=Df(ff$u~2(l5KfYFX~s;0mya&X z;k2W4*&yEMZ{Cw-Q)IPBq-f~+FtdpHZD|Ri~Oy1%0x$M&o z?mpd(s>iOh%%(AQ=Zz?eG~OBP)1exDE`QTPMpIRr)q^$XY)U$@yXaSJdGJvHDZitCGp%JJtpa}J$4S8Eb?w=ovy+O}U&WO2ev9P&e(Ap%4!V^Mzrm}CG8=!^PcAzzPF{-&QOwr2r6P~>Of)2v#5pr4+}`9clmDq8+-ULmx_dj@7ScJ zl=KKl>@;c?J-`-4LiO`|bZw+UwfKsaKTE?RrSjh)#PVP1_V`mTMH|9hSIkOBGP@X$ z^U|A6%MRJ=pMk|+?s1DnFO4s6d)6gB2tfZGg4}X828gz@q|s9>{C#?vrHYw!gL;da z{BGZ*);-nk&;{QBzAx8T$mK0ZSI{5EYL`!9*({x!=yj&r9=7l{y=E2aZRIxOKX=0u z#vR$W(K!9hyiJfXMd5RCRnu7;BC2sEJ`qggyW30ofRx1ZG~`?(llFbPic`mpMLB3$ z{E9`*L#MHk)oiv4SM}Lu;cl);e|z87_9Y#!MhwzgmNusZUh{KrUCxH`y$WeMPR9DI zHm#manCjjyq}%Yxb(~q4HTNc*9;xZ7C+tU`iO2B5WX$7=>^Rvi_fQ_ET8%j_dg5w4 z%%#cls zh(b_HO{$0Pu$RSltN9)PGah1V>AncP~x7}j@D{P zZ|Xt<>bm6has;k@Ur$Y08*c}=4u-FPp|wh8!371AJ_M0LP>}KlRr({)iDQg~amy8t zD^cucUz>?CA^9n%4t@q6?%R2@2BE*@DORlnz@zzGkGdr3a(NHU464bb&?YA7aJ{8f zv~xRNRCZ8#Ec)r>gQ2@Uj;~O0n#dY%-JY+Vyn^nS5>L6TZ0diZXA-9*Cx}Sh@2Baw zaHA1$GtL%HH=V&Rr#xlKDe{V&AU!&9oyg&6XgoJe>1+?h)Q zb@Gn7;N8W&y2ZFHyY{$L%SQErDaSiHIbPOLBL{EU`o_UMiV-*XVd(%dNS$5{(eAxi zdGrk^6z%D7nl^W*w{nWlzjrw(I+i!6XZRQ-@_JbEtplB$;`2)j&F9fbDwwkzUT+LS zH&c>$Z%%Z`SI}<1jW6nnA(uLQ0f&zg{gj3KPEO|F`Yrr z)Su;6Q+kRA8jl#jijm?M<9v!}d=@~5D{}$X=D@Ek6#x8ugFvMG*gxnO*_f+tEBmF}s$lmm`|iD!T6F zH7Nc_g#6`WdutmY(e&9+sopke5i57-g_EWs>G(GZZSHq>pwq0D-nAI=a1mU>-s-x~ z{PxiBnVVzk{NB4_8t1DG!|0+d(`$F_a{w8CFazbFMQ7DqW%z!@1SQl ztEN_a)@o}$!4a@5&DY9jc3XY^Jd)x3TA7sS{irq7lSWKnzzj@v+$$qt;M1q*4#{V& zD7}ve?r+TUeO=z?-%(D&En9QkENf`LK>DPTWK!|$<}yDxZIh<>G!*+@p6WI&{N75P z7(Hc8(sE^{(E2Chu2)8h#QI0A?V8P1q*G|OO`Dna+HsVZ-9#6+q)_R#7jQpf386cyl)Fe48(k%zup#W%%aRP-R#a*3XqV)CFKE>E;Q7GKq%j6 zq483G|5jKiKXwTK&#W)YjR|>X@6&ZyLXFDPkMLndKA!JodMYNrtu%^<6QohWgCA-I zm*mVX)ZjyMM^Rix1}c^Ye$U3~;I{)@*R^|{%;hZA-@E7AT}Cg#EmToEbHQrZZLb*K zUl3C=kVcCf(P?hNdf9sVOmMKzZqsBKDZb5V*5lAog+Fsolsa(S;ymr7%sdjvOvu>Gtbo*__azA@usyM@u;GL{2I^Idbd zBJQ^sn9^0^fkX;zJd1lxh5m6hQ&fTf6g4DN!pP4+;O+|6lbNwG05WQrP&IgTVP*$S zVHqJBXD+2v#tg-Ips`$10v&8pPagrBpfSO)YmkD5z22=CsRB|=iry2=JbTTJ_W)HI z*s#243@-CtC>0nJpQoXQOjv5nQKL24qN<3o`*V06u|QYE#;OEA((mZM@G4Dqv=pm% zHQMhPF=O8GYj5By@bNSTzr1Us$vmxC_+|L_;bh*nedjw2fT=0qBvgF^dG`l+hDOBi zlygY@$)#O8*vfnc2xO_U7JvMc)ca*V+oYDNSX*7)bBy!Djr(~GWueeJk9SMRKNndy z!hT(BmC1Qd@ijov&EAV`%Qlhv5At4Wp2b^##z#2DW9R;DI9jt-&DoY)gksWiCZ6s54nU?&V*fsA1l^i&ma6M)1lw3`uBxdiRxMBdB@AL+ur z*)G*u?~Rn`dAq$8tF&9NE`>7?n^etAi@-oZWm|V=oMVv9q#3}B)KHs|O_}UZl(s(> zo}>Sk8y=3UpxI?m!WpKXV;?r==yh=Fq5~&DCR<|ZRI_N2 znR9KA)HHE1N|@!D1L!4&ixs?|=_%ZOSVzF888wwUu7;2PGL&D33Idz#X+Edm*xa$< z$Ba{-b@~DnW*(^`qyya_#oFFk0%1)l?|*GLeeWJrtlaDUf<|km{7@6Tc|5fkGC%*f zX=nZ+)`RZ$j;~!LXMb?uSdqdV;+aK1b>&*^`m0+GE+<>Gyn58s=c2QKp~>8Mz0Hi3 zt=e)P;?Y;(vv7*~Pt>E`Pt8fOpGR_Mb|hg&lw_rLPrkA~)?i#K&#}i{&j!*2jOmFD z%?WjmL?@nQd}1jU^B3WU7o@T>6*lJ2)1zLzqWj{p60?DJCSe)+3J^)WX29b)uX-H$ zGzNz;Q0Kp%Uiz0afVcgn_W$tpmQisvO|O@2FM-qeDAmJuiL-otU0T@PfJyG?OoM{;)TUyne^M0VE|i{ESlO& za}^DZ86%%NQFuSrxdL|X9B8akvYqnxh1&RW-0cD~YnDl3idZ0mYPf&KVxD$#LFRWB ze**Z@-*kO_H#;aep4b7;HlcKwU=wTBsM@K(^LDTZ9Emq(B75;}eIJqVwGBOWhhh6! zfyFBGyCWxo7(uGIDLp-{TIo?A$M=u7;%S;1)^}NOkHNWvbc*qdFzMp4msI=S(*PC% zqYv-8s{Oe1HU(SYH)wo|K4qM9@pzY;O~53zoCYGm^36w=`*PPzrXDvyoSb(jr!@VC zO)X(P;z#Cdai!A=ux6>EqGD8ND0ZHf)*L>5hJ!%*Kh-atZ?tjoDWzQsuJ|QfGn{I8 zlffy@32c%YPaKnW_TyhK-vEW}QHI&(BSQ$=QcJkTh(K^hKS$B92;q2Y;XTC%13i-Z zj2q@^HcQRl<~!sUNvJg3v8gcl+Ev~KswE5w%|KuOc;)XBAB;il(*K@!dX6`ZPlfTe zNUbpM)S-K`SDweNrvUCL=EFE04NkG37+Iy=xb+D*`TGIkkHU+)SSTSLuP@~|9%OTr zDD{F4evF+~h@#&QXdb#EitOAdO5~GJuW+YipqE!lWNWzl7!*4!!;QvN3X9pdF-5a1 zkPp}rTjWt9WB2JtA&w(;X_L8FPT?BKM)s=FBA*OhUT}Qnx+$GlmaD9_WP%`@qq{@J z>(shcE}Qs1G7XE#F#%btpEfmrj3c?`xBD!;!Iy_cC{y@$JX7mAmv?Bz?u4swyW{u4 zA-UtLAwj1X`2%-@0k>>1u%&E1xkoBeinIsh+%9)0;#)?4$9PT-fw5%g1JmfXU0^Qw zM}{y^=wkS%^NxsywzdLXEY^Cq;&Ar5dQqNUs_zUJg}XBh?^8qY6u3XdcIYkITuGU7 zeerZQTIjyJd#RhC4Nm*+p=y3nTjo+t6QHs56UWEt;oA|55mYkH$pNZy8j5X&nM!{7RJ%B4L?-nccZa+h|>_s&hYX9r=YQeMXnK2;+53eA!x2Sr_s^Vn>{r29%9e zUcEwMG-6)}0ri)${`T$d{HNe3da_TLGBP1_@WEH&rJmj62RXP-rcq{xgL*FvsvADO zXx@Jy>`LyyK4DIv)5$(5{NP+(G!PvohZP6msl$w6f*={~3<502+7m2M*(|!I?vBW< zev$zn7W+=`^B0`)=L^K)VL)_q;%{Zf@ru79Gat}IeJR@}Ux*UcGIll&F+&7Md@>d#F^$=s5CH3!0eIyLI9=h7 z9DZZjsm@U77+ZLv=z+Zt+dy(^$Ii!MKF%)z0x{>pyUN<0o*5JKvf!xJ2maE+lPd@)n0sh(2KtjE1`Z*_x=S zdU8wQ9&^-r(jT!OrT#6nZH9iXrIs*aT}+XWhPLv}IxIcPORTAVFWCkKVMemfjK4-T z(+KM`PncB00OOTyMTyb(Hd*S+-^RBYAT#t@B}kf3ae-lW(41QKt~=!pMR0|8W2qHb z)l6exjKFXOPtlFn?&76xBs=5cHr>);g7FZD!C<;B2dC0Jzlc<|Jb@D+h80n&Z)ive zGJW3J=G1L+oz3kqUy@=G%j!RW*wP}g7zn>U^`v*mFb@B<;gMIF@CyitkeX}XmJ06P zcUjaFt?Mmt*3r&kgfH7u807%jk676c z(N}PLWE^2b>1*mq@}GkMrkS0?!OleADevem7$=%<5F=eav!(Ynj>;2B`rG8th7_k% z-Jcpyj8qh!+ajgCRn=DYBZ zjKdN%(0++Ql!Z#UXVbPgLI9Wt-Cb=0?|kYz;EXMpC(^?98x0cYD9Kx@rnHG2y``?} zPhZUg(wyZvyHJjYMvU%RNYz7>?bBnXBwcqJA_7?LY(q({_Sx((OZMFH?CC1gIcQVDZv z($A$1%X!DgjH6+VuIO}Jxc2G@Qsi)>PLf#CsybRwjuYw_#GB2?cip7%t0+c`N~O@C zQ9=*PEBPdgVy8YQ))>{dmoXYFFTNJl9KMN^H5OLVP7dTf?n?TcNE+!MGd$InYp~8P zXC&NX8SDQiBO7E{y{nK|?=gzecJmfuDY>JuT^~ep0*ynwv^5zGC-USKvO^u7O7tt{d^Sf$cztQo=0mEO zDFwBzjaV&72T_N%cNP1%<7vQt1ADKoL!g(d3*~IdWR}-=q!E>X1OiKF!A1Tsb>gpe z*C+B*FLOmN=UO#fUs{uNF3-gW-0I_R<5M#54}6D1tICpFLDR%CCdh&;jOP+9A4PvG z6HDaR+CuRzNKJaJ$d2@g`LDvI?<{KG@B*EX9=~OEPcmygg*Nb=C-IBzdlB5Ofdl3p zqEQCP<+}jjh&oy!bC8u%jGj1!9~ASWj9=+%_$7HV)GL%Z9IK^ioEyDN9@XfMW$_^{ zuG`>cFzQ$=ZowO8Y221B=cR42EawuEo zi$bQ?h{Y>a$7~Eoo(W6H?;oOe>$5paOuKw^WpM{@>Z^plx|edV;VLxfwMka-*`jlqe+zH>}Q3=-Nohuk_eX{vAz5jagK z^%B7GGRyV%KZ)Ae?X*m3r|^Tf16O8-A9z8xI**LCQz=wQ^8_)Mb!J!wzu3mEAk}Yr z-6664ynjL_U+bBtI_%sB@HSlg?9LEwo(ccC@#Rs@*}lY=lVT2a5@3oO!I~&As9Te|L7pa;Csm-bfO}3{+P)o zkrz%)^(&22i-VIiqV>`;HB0|Y0|MNpJ};s-X#L(9P6v}yVU#M?m&$UMvm*Trs6}{Y z)&RySsp-Z7VnT?yyv3vvA(>obUNZ_+G?X%oL$(=Ta6%V&+($?5)4#ytN$aenATUO% zY#dpG$JVvA!!_Omys>(IM~gY5&G*?ExzoqC2}xcMd9<~N7s;!wr3r73Mf66W^pq6h zTi8+@Hmmg)XeS9JVQ5%0bAQ`60aIv9)iShnkCAVS-+|%ep@`vvlaNPVKio{@S0G?P zcqJgrvUH5pXrr|h<3RbG1MUO4kD+%l1bR z2VAHnY^I)ZDW`^hwwF@U8qO3XhW7HlP;=~>k|p1EvRn-ys}4ntp4jVl6}V>;&+SyE z1FZkqa1l7X_G)SCv@5m$T12tw0fv3}OIol_MBi@lDuKIaPA_LM8qdgHa?bJ$gsze) z3ZO&&r|M7%%k=qvk$vBkv{#2NQzJo)D6A#SY`=<(Us-93iw8|v<)gU)6+eCQG|lC# z0#7e(-F#ddsR{^KMe$@H{!0B_IE&Vj&#^F86@4II83Ro8arBZjt2NdG?f>2#FOBS<15fP-HztwUU7nqCF!_9nNB@d*} za4XpO#_tqetnQ}_2V%N&AA{LoDYZ&PlCL0P1`Su4zVctJ#3_;(&}2(1^O$wb+b>A+ zokev4?!B~KKu^Sv1;{TtP)}n!tq`u^++zSLJ3KdX4fO-;piuxWGRAxFV0re}!>?#I z;)s`rSB*m=qLj)?1QzGD*;L^7HBoBV{it#F!&o)b+%HuXqz=uiSoQsES(rtZ+QDdE z^O-R(){v=Zf?3PH_KK-;LJ^2R^m*=+vBf^MD}T)?o@@m9_v1ZUsE`v z$CW!6yMO4`z#S*M2uR9+r<`RB;Za^i_O78-ad*h=a>0f3H_PS z3P2SeS;Z9%`WW)ns2Y>spc>ckb)M|ah#29O4`PRY5L)ippXO$q0MVaxIZ5^8?TQjS zzl?29cd-|$#M_GbC7S;nrrjpj!K!29PvNrAoZp~6?EG4OPn;o<^&BHkb+J@QJr5Qy zA%3%_=5MIUDb5F1Gb1P;IFLay2d@jG5Dku*aV(ijsEsgtl%&j3(=b@$;dn|f8X6%s zfn2pPN5Y4P$xlsm$#6z+7cjh$l;go{yzieJ&ceg$dE3YkFwh^4IFjkGIiKg5F~TBm zbxb?26%{1Y^1`L7H2kv` zOB)Ztl$4a*P;GQiat}>bt$%Y)5w89}oxwug!Kyrm`j^(5CT{bW8^0lEIsdC)+cgcf1e}B)e zj+NzL(Cpl=vN80f&2S^FS-m~@#S$ZtccCm7FHA$a?jQ3J_nH)EkgXKnZ-~quXRlG8 zH8JH|LBe+7O+ihMC;pdSeog|m8ygdTi&WKg$+?Fdh5XPEBx^u8r9|9EAlRf^jO#j&ig+bA&S5LfRi&7$jhUvvAF(N;-QtT zZj)S!BmM_^|EeDC@NA?ea3SRI%)9g3PZ>I=`nquo&$S;dL+ip4k*o{U`)*@lqBIoK zdY?dVcNNA3I?|C=;845hD~H-&KcuLz(#<905(V}0U&RS+O)n0I9L7xQ^a>A(OI-7% zYkF00x~tX*N5s*9=A^_CFOAKELjGi!O?G*30}65fnMg{E%rQ}%AzQ=XjGrm0+Qmts zd==t7IA;5d(tIR5p-wsrMAejQzyFe2h?~*vIW@Qbkvx6y(IC;-0@esEg^2q8c#)6u z<#iZM*E|(fQDWSxxUBy;o=}nIcs>N92TD%Elr4V~HSA-$(L}QRRb_6!`osTx0sKUv zyUZ7OqcU?U8wzJ@AAM{s^2faVSldmi9!TSUn8JagTmq(Q+b*UOh1UzYFb1V|mp$j? zjdCp%l1h}UNWYtBalyAxRW{siuE|(G9PgLVmDodvY<{-0O%$16o{qhJUn6!NrDoVf zQv9KtcE|@&#hR>%*>fR;(x$!A(G{(D(t=yH0H4`N?${Z+kH8(h{Nt6vj?#mkQ6ekv z+f*db2utzuc}|9EqScSBfDji+1|bL^m44?7N}I)BGl3Lfkh|;oJUN#*N|Z3O<79aJ zJZb1b3EY8U8`|RwfuG}b4i!+2UP!>1-GDSivn^5)SyW!b&PUBDvL0UsMOA@5NKAlU z#X1B83UTq_n5#S`r8h^S5GVG(#Fw}p=rcvWK6RxmMn9z9e<0yD{3SXlCo2UuWZo%t zYCbOvTcaG>lVD7b*(2#wep$l6JJ5VP)muI^aOoc*rm89g(vYK^_RLkuf<#-R;qbZM zOd*sUbcMMj$jFXSyk_InQJ?Q~I*e({!G0nNUUQPnuL03u?=kV87*YU~EdL2(zWAyf z`WF;A!o!LVu3c}hs?K4TLXM<%Tm}5TnqKV{eJBZftY-M zXd={kD3`t)z1=ShP@0}Uob%cCsy=_hj=2&>jad_B`dbWA;)@&_;Axc*fLsLj>{(w> zoU6Fd_6RW9Z2*9DKS*x`og_dpbK6pNW`12#i3dME9ulNYl+gz%bO?szv2hVqM8!xL+~WMwop zqy3P^%$9Ykm|INyE7H>R{m`?(QP@|u)izNs$oCo@-V-R)ycNB+-2mzhAOUC(9{ur< zIbO&FC&woyN-*Lt7Tm|h94HXoc!%{v&?901rtKSIJ+eflSb9g_?Fj$v2ej@9!rgX9}^!g3T4WgDCQh0Dl*X8D!xB?xi&4OT}1W~h%iIrT=`zMu^` zN;#~;3s=ey<=m6;wx4U)?9oH?6#B@0_ZZ>s_%PM)Qn%FZW{kMofr96Rz8t4S?B^i& zI*O;yRca-Vgi5bY1f*n6W6UJwU(A`I*$ah$;b7H^L&i)`ixUxV@OODA?E3v`%MCgF zO90}2DMf*n1@u@5_yFax{;hc;D}BVi5C8#a&3fZo64s z$^agRK0KIW3SS1eG@bJd%<_I^lRUiOs>6fWdIqu$N?xQ~k}n>`$@9G36U~rHd5G1N z!yJd!&n^z-it~lVNvD70sY|t_#tCHlG++yrBTV()X@_T~2uTNRGa7N`Lo{qdRTcAx z5VIb!l1j^FtjRq8WNh_^9~>Nn0tX+?A^j^JTaQYG7iBf~>5fvEoo6nNkNsqGTs%C_ z!0N~M%XefOz^d2%Q(JJF3^D8?Hh#!jj^d%QLbZu`FJ^&-pWkt|tYv2;^%D~0GL!BC z>E)Y8*jgoid{KIUJhgI4>23x%K__}`2KGG2*N+;Swp25Y0gxk`%qrI(n>b4 zhcJ^alj)6^9v|(Ble7B?&So+V zWDo$^l+!{H8DvOAb?Hhr$Mz&{Y_9IVq=UX$ZaO_Pmp-iMFhyB|O}7cVcRZZJ1X(JO zs8EJIpivP&aTRP_i>%wIL^F>?1f6-A2KcNZg0BCF5b5i zRv8Iy+uAXHwvtoURzfi`81f-3R(uZ}+alOz`wlI&LGLi;Utyv`S-zfUUJ0W!T(e2| zppq)!bG+59#3O=hjgowi9>z#~SE;kN(b}?vHY?kGAEsR5jemx0 z!{?ET&fDl!kqce|>X3<~0NjKW`whu~k5sKyinrF?nvxKp!eD~!||geTWk z-B~CtEp6c0YpzzPlp$b#9WY|*X#za`|XgDYEcOg{a))T)~jAl@$?ad&65k(j<9cNbToHCrU*Kz06c;-Sq$e7(n9ofZeuzFNzD}&HSZeg4NEDxK4Nf`OmdCU!68c)a4`l| zT%H!Nt?7a*#>FVT6k5OR&vz!LyC!VG>b>jC7S^uCYL1hZ8#raXBpOWi`j!tL#8W>d zx?RT=6JRQEVw>>p*czVgr995G^3@cN_10JzE{|-F>N)+@t^QMbln}uXy*4LkpGi~x z&BUgx!ftKsr0u4LxAvfK-g#*2=9)F{rI~qNFX#|M^r2i3sIFkXR&1n$GgqfmaGSuwRR~8Oze$8_NvmTsWLoc%G z8xFVcFf~aSRn^c?|H=zu)K%!3e@U9^@cj&jjI6eb+HpFqpAMJB=NiIjKQ}py6J*5s zZRnT8e&!-NFN^25URGsDqbN5HI2xCVZFO2Ra>&Vp*`q90*%^6z>x{wEK1At_2Uq@vihd%!m+OTQz20x?BL^ z5zARodp>FzT@&%OXz31*!LO_&eXkO;>eVd6@k$_OwvDbRf|dE#i4_jFfP9?L_dB;( zzFhD6>M$NAj|hZC2Jil`-65)RBq^Kt>8sfI2s#{(fh;QQq|)W_@hXQ6-~Py!kGYPD z$Ruxee4j2@74rm050K#?f8Cj6vidRcpONUFOezLC86NUFp1l+=gVuZN2ld9o)2nTw--U)RQDN)$$5gRDRB$DgHE@Q@92ZZR|RG5edhMU zce)jhhoU=%BJ9qPmb-Miu{2P8$Dib0K^sDxlSc3RX(>FlL!(!Riafij(!}b7+sl} z$330v#t$ubis$dC)@sinfmw>1EpKc{#ZRC#w0uQp|7(eh#2T7fa4cJJ)l|W?@vip!@8hzop@l{;Z2uz2{EY7|&(L%4K(#)@-Vp^s;k*Z#^5q z(*>p$(+a0Ov}`gbkXTX8E+eVY^-MJJJ+(01sQ0`9J#ozTabo@$>#7wb$pLmWr?60S za%4+<&mAMDV<-p!wz z>b(_fxb{15%tDkPO0$9bH+u4AU6BUdR(X$gYPhYKT0h~t=^`|X4gma?{WQsRT@&1d zZ0;%lM>-i*bX4K$c%@n7?$0L|?z?VGQG=^3wvj1oKN|Iv3wJ1}7>QFsFU;$j3;!u2 zHZ}EYvV+B19=Bfe^}c@Mg=xisB2JIRC~P~}=sJGMO6H-i6xm z+q7rtndBvKy{t?O-JpSn`u+E20;oO6<&7=4t)-=rUbu$509Ei3;li|T59 z5NKoIDf_;2!mnl-^)9Iqm`<~m*50>F=1#Df8eX?>*yoqqkI7qk4;$DZTN^E?`Bj1Q zvM~O!{m&TEv<8db{Vs}E84q{-ynI8seiQ$gf=i&Z+)-|9Bvt`eVrTeYCrQv?JDJZ2 z(BrUbnv5rHfv(=BJBWlxnAS6O*4#)a@YI0tj9HY@^wd~wgH5!h{$;E`22;Iaqp5_^ z6x7u`V9uy#Mb3M41bpP<4HrsZpMu%i3oNY_3^BE`eVgDR%wJipB~hhzNZsnt%LgJpv_LsrH)J&B&TTZM@*fpdzwm+sFsvirE>M9LJx1Wn zS3qWh$SjkHNPSM1t1`|%>9cM&dDvMJ&H_80b@NrkHC0i|IdKqU=t+fV322%#1crYo z7-7lRNx?iBm{Sz0(JQI09Be%)T2OUcuk!BsT~Vxo#3{2Hrq4+sbmxykK$54GAX4DMVvx>N2{ zRFdVm-|}`>cv_-dxbTLW@6CsXi*xTC?gJ^zfd&{HX*@C$3*IhwYe#H1nyRTE_M?Cm z>~>y{fq1Y|5`;S-cCNtJbU}+-uM0k{O7y&w!_%~K|HkUHRg+?U_dxAxI2Df+41NrA zMeF0C{m5o8Ia*+dS|)KjnAJT+sdWdEXKlQiJ+K^ZENpN0gBy2%LVsuxx+tSK>X^~? zUBxmX^(REhw>w`Jr0lOB_-gEPR(5S{Sm(a|%ys#j(N!v)=3c=*2y#x6;xib#r{oMy z0~%@>9K+)g^cR{h!!5>0JiZTh*VLyTEtVz2Q=}04hOMd#m{y8Bz%0>y|0-DSb8oaS zoiuho4g1#x@|+a9TA)u5Qn`})Y7?|?UASYoyw2wLUds3kgT+eQo z&ujJFg^=1;jvC%9bh+Ba9=j%AJ``@_gJf6S+$k3G$`nkkG7L)Q7a5(cj+HA#FLdhj z`3(}|?Wme%ZaAyorL%&pU0GK)u2zaGW~BFB1Pp2jdBU4YY<9o|hT2-JRVz#1M7}a< zIO>Kr>JF+(rVfgub9;fOdGJc)$ppVae{|7Aw;moR5=M_4K}Scv8?T5!j*d|#rcfBJ zpb9Ruu`GZ4<3$@E%(~nM8jsj$lHcx2=vt=gQjr^cJCL9*_Cq^4&#WVGGF^W2I~Y zc*U0>CCF%8P)c3_sbJLG7%FMts@f}1a$`FhdFXq0imOZ2H*flI#2bBr^My$`Nh?v{ zy9X`CZ)unJ0*sJ9_uv&(r)9gtw2k{uiSw3O2RgGOeY)ojhg^jQE{?u);2%6+PPyI3 zgm}evz7d|p2((4*zSmett+{&af8*AmI(ugdT*UmFZe##uy=)yuT_j#fdBsg@;d$S? zv7cCN*#rx8H0MKj4jmKK#Bul zUt(Pk+$l#(-zIy$sHkKQdfhD;uCw_l{U@mY2jGCR^%a^~Y{$?PQaiKkeBUeTer&0{ z8nHywkAgH+Mc~e?j{AMtpD0&So2+ovKU;U)8uo3^fGcG- z<^`Rx#cMh!jJs;i3A5OX?Q(LlMmxfd^|q2-i30a$+H|Vs&%Z+8WHs zl6!Bz7zEqok< z5Pg73S~#yBcevrx?Cmz}JI|K0r14(e%}MQSZ$G4`+VeQ3Rz3aJ3Qyd%SUDXIzr-Y> zdjbwFS}Q?5J25#tL%n9ZMY zr-ID)wRK2&tYL%;4+3ue-~j}L;{@2)n}%L{p-D+aysNjyM~fZb_hRXyb6IQGjrSQl z&WC*WNc@Ya_?z@(Wmypb0k~ckc({i&0GAK%d|_wbCrH;wEuvTRji#%?^MUj#_WxVkwG1hy-2U3Hu#Oil zI%h)DD%$nCLW$TZ4UB)H1ZPjVVi9(?VW_SV-N9zei44bG{b$wI&V9T-x3O9! z$Y{Mw?&6GEds8;_4t#&lI2+!Q^QSK08{Hbz_(6kkiMo;zd+v7@1Uc&`*05y}w1hg|& zc75ZAdzC^bFmx`B$eTYC$#LC$XJ!Ah4C0(N+;@5x+@7$}EV=APUih22jw58gtf$DX zq=m8nG;d*$tMUu-&ny$aM0CLCPrrGM8yFiAh=0ric#V-hhU66X_XCmKzRD9QSN*(3 z`4mYG%T)IQyvamo2(uC9*;O$C90f`B}=Wd#AC>+3FEjr0eQ7Z2T}G z&)Y!&J-IuQ+wbShCvfVebSpc_+V>bHG-an~x*QkELZ-x3>NY{~UY=8$nCT`$2ALe) z#GxNw@?5)4X_%(b&MZ6p3-hvqKZDj??RjiJVuD%Ase9WBC{dWE;SlmKj@-DIeQQ#d zuS^MQ(%BW{O_t3?^cn;64DABk@-Z~8sT{qL07VED&$xaR@|-0t2$+N>eUlISHHE~I z{)|2;)}Ps|-(rKCpM7We9_FvDz`>=EL)0sNCTkb*hdcE=SC=c6sV5g%!bN-wjq)G2 zgcLnvGB^eR^-&`!W!J_^0*Up?QX?U?4J%p{%Z|0N_38KfFnReo}=X z2+lbVn&6VQ2%!f{+~QnhS>!O!p>&0d4ED9%VX;`*_f%3-8mx+I>f_S2_uqzdLiPem zYY;qiD8?ydOY5pWV(*dOaEgcY>|*!-TKJ*Vf?pfTm%$uDj1&0I2|!y?m;4Qhg2<~H z8;;cQ006rGft~LOIv*x+BCD5(Yl+&}pogh9obB2;F_G7`11Qyh=E-ZNCqz|1eoMot z74nOFPuf{bGF>x|UivJF%lO9Tm)F!fGhV1PF|)nGtPH)mGURAhet!vFTF%D!R+D8U z*v+sf=_?}AM|j@mOc5T|dv&g`XV)V9c!T*5Y5hSES-r5&t^3nOKe5&)ExBlAY&gCP zHOWX;{ovfqsT}V>qD)>c%9pZCp1c|KCz&a?fo`y9_Hhv4f=fb~14N=sYDlZf02fI18o z?EN8+<`&wI9m7;zVH^$5{$p8njZWz^B3U;oV#%KlXF7q3WJFh7<5df;{CBYuuGY57 zzMfPY<040N$z0EAik*CddM>g^^!fM#LEUAV^3DgH$|&U1|BzaMhc+`eQKV97HBn5 z-4tawSpF}&3*aLv1e~AmIWdv`;*3P2TAwmM7K)2z(Dp@S3 zEA=$znZ-|flZHrqt2Ir(RmRMs$@h|2{ua^rQsa%AW?cn6JWNzwa6ry!|Aqp+%;a`1 zt*9st1X{*lL~zmU+c(4a)HK*&K@yFjyvf zucozNvN;RAM77#@YY}RbSep2tvQNhYv4088>;2`OaOxV!6ht1R5EA4yaEUF!CgJ5h zU2O{6phI$S8h^%U00ZkyID(Xvx|Pu%-kId&ba4|sxF7B|QPd|BkV>}i*0B%HNJ0=MbE>==UX1s6AUR@cZt@20;%M|NNH{GMGzIkmG zg@3NFUQnyQGZdRlsw(^r@kr6!K&6B%8DVgoT&)s+5e@K_>R+Y-KvsTLnjl@M@eNf! zQ^LHYY>Eq+lNZExOD@?U1x`}AW5nj+RIEoXftBa#dn4JuOwe;Lj)Ts=-IHh=&B$?y z867H=Z$Od8M4@$Q?uemkxk)Nzin6Y_oDt?4m=2F=Fxng%m#aqr=)V3p_2gz%#|`E8 zIc@=D4CnbWyX`vQG@B+{{XK^CZ**3Bs}>bX)K||jPI?jI8)XqnJ@KYWZp~m@&>qFd zW%RNzmv~j{TKaT`h&c6kgA_Ix$@gGNgHE5bct4D@aTGwn>*XI9@UaRY?Htw?NRdcU zYZch&H|{-~pRM{Vhpl3xPaf*8#HS*riOZtS5Srt|_{-sPJ~rLQ`Yk-&D5ZfaWAxi6 zZBV=fgWYl%mTvMr2ciLo9kXj9H;_>f53o-55BL6|DM67U5t2C%4p2%_qrO~c{v+Q< zpaJdgdz9-cMpu!cd)nLqeIUU6pD)0g8ch!KSkHDO^NVtEg|6I9<2kAdLod5o44PO@ z&ilBr&wh1aOJTse3*cFo0US8i?}w?g9*36);)7=+>g1$Tw{tv6(z*5m$cU-Kt|-NJ zeU`+Uymd3Wiv#&xy~u^PJ8qB`?T6m4w3joZIiM+Y&gWHAfiseFUf!^nr$Yu6MDLo#qff7XdnLz;>4_D**Vc5Q z&0vNRO6AV%*Xe%p@K9G*|E{AW5}w2jr|um-Q*{7&?C&V2CcU`1k`4}-4h~8WukT~G z=x{cDMQhgDMkFGsDTSx6fi+rfIPozHy>f^Pf0^3|bbX|2^_zXu({fx~1xj@>O^mA3 zDhd*jsi@7WC=FD=An?)Ar-H=yUT4{fSwTTVK|%YY=|JMwQiy=B-r`$~(h>pi0MciG z@he+EuykJ!wWd0WE8qTL@h3Y`PNs&;WISObT`}yK)uFm|x$XBQ?FMBMPVS}FvSz9w zyJ|V`sRXeav6%~JdG|^kVO*YJW zmW*hTr9$q=P31>F$u6p2er5wfLZLQ0as) zUJY+ZUqiz{RaNPEUfmGVgJ!33V|hYBv97d2yQs2k`Nmf4|p1 zOkYmk84Yf2YwRBoqZU&Ge$2l3N85)t3@;wFVWkm;-=AN6E_~ircv^(YchC0ub8)zz zWCX^SmXyG2_^&v4`Ttx0|2;*M8*DRGrhTwo+l2Ls3}y$p#?7w#n)~^eX&bw~L2YXOvCl7j48qw?SqXM&d1KXZG*zyT zBL-N<$txWOm)(oPE3f5I>FYCR(>NZDDyxXRHTy)z<1iX2M_7jh@&MI8L!U;x2yf5a8qI zhiaCBo%~19@6eEI(~;(mYH7U2-+b`?OeN8qZWXd6bSXb?Dc#Y?=$nD3FYa^Uszhb4 z5#Ez7)567dAv?sdr1dV;?%!Z$uS5G=Cf76(0nZwP&pY}1m&fDozN@8bQFu@S02Sk) zzK>)$GRZ|u7+%4%3GUGB5bKDpl(FcO5c1^hc|4JtrI(2l5ss8)#vLXJd3wwN{^En0C z|5q^o+5i7N{6Bw>i^=Y*T@9GK%I0Z&FiWU>pxlWOiKJGSm=!&Dx&|iBW8`5>m`iLZ zR}w@iR6n;@Ql4SNX-;6ixRnp9nf@B$u4z{4?e6eNsD{Fstp)u-Vx=yJu|Q8 zalPl-Ah{XOJ{r?9-$$L88S@4H9V#WlJsfVOwuik8+>-FNm8rbl3_rX>65PCf38=;P zK!l$mTqHpEaUD(Tx1K6ry49M;ym-Ot-vdT@fMVAMb?J1%Rszt+i*YsYNafYVqZPzC zj&F%r$ZNu8MlKCE%5^<6?dMWH9VcE2kIb!$>Bb?Yp4*ZBtZP?|_cfqN31qHUv$95tQ{OgHPjkIJK7k2=<% z<0}*^&Elwjn@@e;_Fc9xUy!?8mB5^nbV%pz!r)RNMLs0NbWPac%Wcg;o~0sxw$J-w z2)eFz^-(D4#f>~h{Xp}=6brHujeRLq`Nv<87Q$FKEghS zPq~_(l+fPLSycsb&v!8nr!?RHj>xiD^BxHm^FDxC@KE=Rr-#?};T> z*_N8hXRu}_;9WfUY@kXf?V3>~9^_9)UODzW7II5pS4_8pJ??I)HMcMDlP+~`_ zTwRA+-4$T1q**mjEP>JH4ajraOJ$18sr*k~}s}zb0bI zu9l4qQ$#r1)OXcm+}sulg(=dcjA>FWU`p%leTOyMQjqHyiNWP=NRXNLMj~09rq;VP z4|ZGgK<~@EP3gi^SZ@vVAt}GIfMr>B>w1%RAFS#~@%xu5=Mgg)n$C3)hchKLpTN7q z@sZf9&!B%Ns#w0B@JSa(OSo$JRD;%*OIHFKa$abWh%r_b8#XXQmM?tgEm2%(Y42z^ zFAe4(k>%=X&YyaatX4ct z(9S$})ES+8k2cnpZ2VsBb~-QRlKyCQ#_FcSWYN-{(CrE%pHpf&Eq0TOK)S*pVV|A6 zSa~Lw6QX}qP$+D!&ru0$am#Yne?uBwWxx|(p%EEH^?6pU|SB;zTse2z^M$7ik;vYx8& z#6Ly3({wY@OfjYd@pd0+T zvTGZ=r!`uh+YLNPnf7$~g{qZK^hnJ1DImLA&yooO>cUR1QHeKN^!iND)=p8D@oVwE zsz+N|0iL0A;IsXeGex>cwoTW-zPz3APZycp=HCS?DyeR(S*6P%(Qa7_ z#SWQ$q8UuN37e&y%40Jh=Z&)qMx34HMa${sxU}J}hU1c>%{vi{%xemWk&x+hxq;Rm zlaXf`^KN;b?B10uk1(<qgl+VRX8?d*y*BhuMnLC8WP(*vK{2#T4505Jc#nfa!!c z{dGJR#LY0bGH*ZKI^B^ol-XQUQW^DbbN{$KU&um!M^2+|u+WCTKxSxIK*%$alc+4bz-uJm0Wyc)O1x8tzJ zzdSyc%(tMYK3(|`mr*6OSHCyIo;H|29q-af%#-AJKzZn>>PDz}qUSAr#pZBs8EyMQ zpQX`9&BapqA)ZrC>?lv9YDH1i`j_9++hkw8rMrO-`dXjM7!s0%2*+cFnBjr0Fhp*o3x-Le$Bf z%ymA35T2XZRmJst4jQcW) z?7A6E%eg?;{%&4QlV9rre%pPQ~IdXlCf`dBN; zN>t(Po!wn*0HSJCpZc^{uELIdmr0uw*2Vdd(`iPH`uO_&BwrRyMn@;F2tZ!bWSl*= z#gM7=_KpQ9DGxIUo*HIdZ5M2ga!U?9PClic^~vSa8yjayoS zN1hR*mT(2*-bqCk%i4;WEeOfz{=30F9el$0CUflujy1*n*hm6_V=`gqF*1M4Ft=^S zUwSI$8qj?_P-aYLa??bGiJzmy64+I^oCa9=Kd+vgzu}TqYPi*8` zIIN)-9%>f&TakVd}D4aj;@zRX_Oz=DYpEb+R&d zA;a?Ik&R5yB>p413?#HF@3CF71mXlwj&Sf8!Wjf$wO_q5i)-#LLg3kv<3<%DHKNK# zdfI+!8Fm88DZ$~-RMYG#N5T5lQWBh;E9i~v;xN~?%DQ3EBM^=z$uh3AYKlkG=vPB# z8+-~btqh3Eg6x!o*9}C-{+8Ias38hy!3OR*3b+u^GBg^Z;tY; z@#~|2J|O%qK7w^D8jbk*HodOq%R{R%6^5D(KfRF?b^{B~?_L^agS6?JM~IQ@K4B1* z{Wggl_ooFUqdhQ1*LS0~*1AFTw~L3hyb1`W!$K-HPH_)FgZc_S6c9P+H6=#ft)V~R zGkSZS8MF549FlvM5Z>mLy7!iyUM7oa_QB0fN@;ji@QvoWWOqA_?+b~-`%?qy`9?I@ zPr+f3$B*eGBD)ugQ@*wif#Qc(CvC(mt9%dNX1N%T=B*HS3#lk@&kdG@#R*wbWI2Qh zH9Q_O_H21;yHlHEfxdcYHx7bE;mEw zY=o;|(_-?*mC|9hlJ^o{Zv?B>I6FROknWFN5LF9v)p`h${F!)Z+;&^`iv|AxP3=IP z8E4gdWuqiP)Ux>>g*K;>s@D0hi8m%6jVYA0GVCAOHul`6t=rQ0m6q&psQiYTCE6jCiJ|>XZoM8(7kFuYf%i@2#y80#bIHYHzPfbXRn)2i=3w;rqbXKtZ04lZv&2r8J$#`Jbfzf4G4J~c4`VUdx1?x zpav3{tzed7yP7;&^{0+g0Cd3DRs!Ae)MXn9j0=a=0*bCEAEn*8}*P| z*|XBa!j96+z&=`DT49uaid7VD)tsk9HS*IR!#cNoUcT17k8n2|{)u!WLrc3UbAQjp z4E9?+71u#OZ863pmd_Rbj_ple7nsvr<$Gv&8j!=^K`SX3Y(%g{cpOuR)C zw0Y>3?kKVxA9X|HcXX!c}GZL%%;@XWS0Rf zwv2Iy;l@!U*t+2gfwM>eKjqn!3%pZLuOrz*QG zMTzO;gb28ABo9x9s1<(#84QohsTHkiFgH9mkYP!qEycQW+y-K!4K8!KjW40_4;4#Tr6K-@5c5`+yPm-$1 z5f@YxrnX`BwQ}v{Y{8E+YS_Zol?a}BZc!D)Vhv||b+x$SiC~+#QoaQ0r>?e@?OOHt zQn3)VCv5Y4tuTX~#!j)^1C$b@1YV*8T+B8qw*?um5nDOPD^PN{Ji3aue`YbVOFqws zAZdxcJ~zQaef*@=tn$y`5pwjQwH%d`TeVSK9O%(E)O($WnWNU17}(;}g(co#r8Et} z3>sU%wQ5pcHd1x!GaJ9JqS~1Ih#pAS^BGMR)7%NMKT4i0;3?@_o%f_eFKo>`tz9ay znR7(#rp<#+P;p%(Z#+((x*atBsB^VCs1S=4&GvQ=$J0^SL3GF%ry6L#f!f z?iQQjB2qYIaggptD$XQs{p)Q3Ib4GrddNCf$+zNOvAD%E(9~bQo5ZDIfCp!II)B5v zTAu+QeB0*8QqTg6=uEQ8)VQ$_lsR7Yndqj-y~rnC>!rP2A5UsU6*s9>JT_9yFnj=c zsuHiX2+vzvS(cBdHQsAjIr(jGpyyeJnp@T*S9V?m%s!Kog|3{=qw?63%~fvb;@U?x zWtQK}xG%hJA5gn2WIGuuV7ZLe{W4WOk!Kr4L0%jCx7C^IU(X8Zd}atvu%n3U(4x|3 zX?nS!-G>YnmJ0Xv>z% zzWO`gDbS)o87c08qA^l(cx1e3%IEUDr!Cn0(5bKSPQ99UQXS0nL_}#hk)lr-y`#$; z&{OR#?PpbkLv`h;skjBTF+OR*uPY;W+OBMM=P9~zNY|HIugl2gzY(QulV!ZQj(u7& zQfJm^IWb7e>LR?DPA>^zsMs9m2@VNwI@!Hbv1};bX$MtwacgXP$(4Tvig~gO=U_9P)dgLK&KcS#oaT?ekNg~6!<3+ASZoInn zyEl3?yJF+RRY%CzWMN(pnI*PV+K1IZM&6^R?!$WmHUpk@CXop>Vmn9h$qBnWHKpEl zP$&1ht%y%h&C1$koyc#uHuGm-))>=|-tE|_(OWI#PMuUf#`L+aw>KrRdVx}XcKnc%NEO@n zIA&~yNm?|`sd>|OxuXPb<;y6q-Cd6`JeT~K={-+P^hrS!zDJ?)v}VcdmM7t0>HRn9 zq-s9%UX=&m%%hW&jkUG!s!ESPRlDwc9?re1WHkQ(UtMn!ZEi5YGxkdCN`kucdf4?{ zrQo{Yms?1XC}T;ll!K>D^Yy{()sfBp)_ot$-j@x9v=+}60UQU-C6Ag zyf@mgUO?_<`d)8j=A#JIT|^w{RzEdg?vO-Hd12;L#RBdz`l`+0z*?HUt9N(rlnq)Y z7)n>yhNvQT5c36?sC#qUQcx|cyB7OTLmHaX5B~~bX{*B5B`~qp!uEOz+wi^zWmf42 zyW`h!Y+FI-lEK;n6TGiGrKpQF;Gc~4atz*@RIyk(bSc{3WRp_#@rVPGBGj6)mTF@t zj|MhbJ~YXZi1Z}VbE~Ku&FLj+Lu2rxplOI*aXxSw1EyKdR3wk+syMh`}>oGK(KZ{m$D`fsh=XRR-zx&->terfJ2 zYg0MlfUOfgG(08Rv>7%RJSoK9C|YgWn=-*hPoDSWe|!N2-y1^eKWhJ^p%-(5De5V% zSSmm97C{_e9-XGF?dYFq8CGy4cyzfXJrfd_xsU4|$?G+_$?xHc`emo&HlNGP`tDQT z@1u#+t;|)+4rBdgC$?EH9SKjU=o4{=t<-ihop{NQ0qgt1IrMNCR2p{g3=!WZ%`n?5 z&3A@moFp8y!5kALJc9`PQ4zFL1NO)@JFpBdzlpSfD@Mqqc<00}s;{}<*WG+}_W9%( zA8pihw^Y-k=MBY`j`@<)ztR&>)-^Hl(<29hxmLlg`j%o5AqD~351#3W-n$n`FsLxw z3!@o`!r;H_9KMBF?*2^`G{~k5UW8ny&oD@X7VNRe08|JZ)|`QBN61N0lLi4FtDYcw zI#;Py)*YW;s9Tg3Hj!)*B8n?knV<)9aVENq%}S0-l8^j;*HfyO7Itavfy(oi^*Jb%j3qDiQ^x2(K?WcPX8#C7? zhxP|W|3b_Du5uIO3silD63q?x8rNY@LZBX2KH}j+*!-ZHq6FEPIo%z&uXgKSKJ<2h}@jrzPbWsVgJw-6eM0z%k@Xm5LPKwv0ls6)xPf_ zzv*2cpGoGFpUfCG{b}P%E8g?g$|{-cD=u%%)g#(7en?}VH~LN)=ikyn(IwN7=SD#d zFQ0S?Xq%~pntj^Yn?E_qYD~G^FcSbeI+%8m;ZLE+;W+k(B@*@PS9bwBU%U6{F#{0U z$TY(b{{rkU8rsI5fn++1)>s;qVS^OKtin+XKx!EyWnfW7U`kP3sq-(d zTQp2)@=LwWyxb{5{wLd+f3Q?z8y*s8*JtAD1=<#$nGO0Js}FGWQ4YAO)c%4FC~r9o zhMz7@_6aA^B(=Ur*mZONdJk-#q*!|>g|fM8T4M={9DggG?=XM(+9a_~Sk5i6ab&7$5vjg?SL2Qlt3id+S*nVch%<*Zz@v z0k7v|pxQujpqyKj%2ZA*WycyTG^hZ7`e1Z!&CNndNI8pv*N-w)l_jWCSNBix8$H| zJ%ZqZU3|SUZc)ncemP}k%*kKUE~4H}ucg_U;@09Ar8J>W;4m|xNC2sNCcxy2wyaxf zSxMuiG*P$6lo)d1-=`8y)raz79Hhh{os*W2gzVgISI|>_V`FC(LY!g412pB|!z$71 z`d1930d~0Pa1nHtQ8mA{){Oq>g0&CS)Vf4s53VP691jVJO8s3_WgbS z{to}F;>TR!mUiazr*5*RYNNtI4|>wY#=aw)h!O1t_oe=lCZ&Z+=UHnz;7Kt`Cf}Z> z`ZyD4Jr{qo6-Awz7OttPO4Yo{KO}E)XsGp`FYl@f%YP)kUZX~%J#THjG`3g4ee#SC z<80*vPKap_^y4P4I!!rowM2nh!?F0tBUiUT!A@DQsrbk*5F6NR9)JmKxHU}(tj8i# zOW=jar#)kAc!PYX^Q>_dVP8$WM;Ka%ADBIy)3r06>dut?-B?{e`(lc|p?HJkFZe9) zaA&Z$Z(PZNQBy$rd8xJE?1|ePA=e?Kw;T~6Dz4#n;13(=WtRHJNxahSe1Dt!ivLIe zu(`j8u#}s7g;8VQqxp+;0+qJRr%#C3Si{Ri*B|F<7q z9hDriGO9tyyzyGLXNtbylTo7wj!SR8$YPVd9oMD#A536yN&gpJrb7kD=KRlbvD2Y{ z1|=x5ee^SmcSoXTSadxrpriRwokZ_mNLJioBUL4q3LMeIe_SArGdsa9F#9UBEi7kX zn}lwp`dBQideUO9OB%`2+j}=ygL9RHb9G7$E3gH2j8lmMH!`7BTSdjn&?Rx0tH|!+ zHBMf>N?*bxsdUpX2WzRtzx35*;M(y%HpAtfL214e+NXX~HK!G+JP#j!oMa%n$+&uh zqZFhDDe@SSuUAugTC>GLddd5ia%60{wnr?VHU3{HKFSDjPcF_Sadm>G7l)NtXHmWYC-QFBbBVSEW!KJ9eyt@+AI4ZPOq}9) z&nbSDO4?P!q-}i6QTc;s+2`FN#_6y?f1$x%qH4~SvWSj~9`tNvB2){Awl-@|elT2) zXrfeLkn_ugnd~@V6KGRyN1K}4|4=VP8EZik%y75ZYWEY?-3Yk|p#-SF?3h~>i`Q4E zfRzUIUVF)7liPvnIv=OvXGuBq3h~BJHvD!;SP94l&h-d=Y=(Gq7}-E)fqA2m-}_ZM zQJt_Qv$xTUtE|+}Ww&!WsJ)(~WB;-2@)-FDr|$94{?~BHd^j5`e7x2~ZFa>9qaomR zcP}~R3pX^wyQ8{quZvm;S84v#NAzrzdvd1c3K6;?BY!^V=M zU{%0VVj>_K@J?rmJXFxbuYE}PL8;Rof1tLYMCCI_nBWr6IMWXg^0SJV~ob5Cpql+3{?LX>dlIF$9&XR|DCV4~fuAIbH+{Pl^j5Yj=BOcMcVbxy`UCGyuKZ>@vfkWzrtez~2S8M#ae`_1Jt zZz!hY=}UH5v4C%^=goeT)mZP61Mh^Lh<9PdQr83ln&O=8B7VcBEYM{rhy_D;>ZYEP zfC5Q&MQm7(3a*rv?nHExZ>$?(Bu8Ryx6QMQDo|HUhBl&Hwj6t#wW|b^B%YOR231iU zyQVdb7us2*tvQJ)jK?go;h$H>cfDfaN8WqM6eCh7b+4WPD_B{#ATuv#FGsQ-C8H;+ zNB2rLv>nK#8P6UY@aKl~pgMfLz1&|KjTIxF6JRLqL9R3$t*g61-P#J0AGzEh)*>xZ zT7|XY`CYuhihl9wR;AwLpXogX^*r9@cdAjNOiX5X?7j$1=@p!vCMB=A*vo+C2O!8p zpE49qu!)h{tyfjt+@+4oZ7d8up1%G>IC~w1jdIgNo%Wj4Q1&E>kVcgcIVg?4eOYQS zTWg~2WJ5LBbQ$;eb`O&30e(_1mZcGFeo*!jVm z1i6=Xc7TOajq~5r$lV(Wk#w7W?A3hiA5sH#M@L44tgX^JwKeiV<(|r29w=)QWTr8 zkf)!;_|=*u3fK6J(8tiiGe+Aaaaj)F>#Txk#ujal$Z7y zWGba-J-oMB7OBLtAuPH28#6N^{)8kcHAAZXW`m`pkQe%m;2%PDy8b91I*jXlt&SxAdvb zQy0-+zm=becQBs9FHcB8Y|y1!HNlb}C=kXYG{K;}+7emoeeYu499&mNL{KMZ`<)sL zTmLxMYJTHs`ICA5yX95qI)iI&>lr6K%`c~&y2WvSOA10`0wK7orFqIP;09 zY4G{vW>O^(4{~<-Vj)h7+K_iVTeklEVz7#Qx6^4~H7s&v;#osL#e{?xv+8F_MoN?o zlZ(EPSY^dPsi=C^PMvqxq4%+Yp;6;vRZ=9E5rg0NcYeFcS;g9ePDgw^6DcVUDhk!; zj~;C~@PgCY$L%y~Hw4)5yj%|m3khPZ%LSUAF96ro*%2<&@1&y0s&73*S|$HZRlWZ9 zZ=lM<*qZx$Ng~jdk-2v-YdLLd_|}hqeSge7)E&j-4AMe}-~Y5?7>Ao9-K!-VX@Mf| zlWx6EC|l2D9OdqPhp5UmZZ=DpNnwiQ$;{^F8KFgSGq1kB6`Z$(D4U;>K}xAexDBg zXm2YYw;Nbo8;%rjfQe_%5$5KY0k+%3KcWULcQ+@wY$zcf%aI(ABj0MGEek` z2o7ordPN0~TZhpip?Q#26>0;;B|eMRg2#?3PaD=yIc|0=WS*zI8wDUq)zup0$!%h6-%6(L=*ktt2k!(m9 zDK|_zZ~0A#S#3ody(RniO((OBv@T;`BuX333m-~I8k}RW9ZvHuAxOzG3ylod3aCMF zFh{uuF%DK7@pG3v8&IgrFRSmkDE7E08wxPN+}dTuTap*eRrA3jdTB;7KDAS?pm|b% z=Guyiy8D>Sd?#;hp#y?l0S*<-^oF{6DUCH<=GguRFanCNvC{;ba zJ~D$-@)J1s;x_WTEXyzR2TgSU2u#=^Jpt_QZ!&+U(=Lrq=N=!XLmX&tT^!FX26nF4 z1J~reJ5S;iyP`bE#1V=k++SLI4R^e|zUMgVg4xSwU+T}2!Q!khE%gTsF7t8$viBVo z5d<|BEL18d+deX^MSU?ziQ|T^QZp0OQo${#7~i8jD(UVfkYC{OV<@PF^}J&sUKVbD za4u;&E6ehokFuw5rakM-{Un}cZa{DTnx~(BLk9r2q>`*EE>S8PsCI7UWKh38pjNQU zYQ(&#?^CZgr~3X)Ebwmf8=K44mvSFS{@q;%L^sKCB=OOpTd+Sk2+a2h_8dUR1m3p^ z8|dy!{I4_m`B-|JTXXimy!!6UOi9a5JsF6J1n1^ljgH*)AEYq@9R@LeNs;wZ=KOq) z3%%xb57sFGTM}LB=h55ym$wUhuWZd;|uZmx3I+(C&9^mxeHpV zPPR#U$7N(=Pw^-3asg$m=?4H}$v^TdmSi=*fU$0!-DaTv)^foIWL1o)aW;cgxfG(m zADnBo7r)64y!virdL-Qou>q|-6M;V`llhw~$nv;N^2lAyc-3EkN&IcD#pANjXM4ZO zkz3lDay)FB2F7_sHFc~q=RP}se|eQkBe8*#4x!VqPn4GQYX;#z0jPU1fpkgH=(V?W zNkQDlKgV*a^8EUc#%Qj`WI_SGGlX*Le`KejF@Wicf6a7?&TY;>4{&9k^toqqQS5}f z@(#B?LU}vwtLUdDODMjmTd6Ii3>9z5U54N!nc!HC&p%tjoml%`*@kM(Y zFZDsnT9oE6)Vov#^_1EGgltI6t%n@>NeQ%}gEd!x+8iI@+4V4Liq;p79iHk%wdH{> zCX*-*fU4!lUxeIXLB7?I_G<@HIl$K>Mz7)%vi0P|F6hH8@M30wIXceu{75WBw3eCA zR8AJtxN|=Hz%|pxgQ&|F-(c~POy$4|saqFwn$c6=IbA0H-!EBLp#l=9&#$^$zOF=! zYqAx>AI4;oMN&sPb+Sd5Z+epn0W zaShMz`s1JASI5!I_J;MJY7QQx64nsX(=MZscV}}^D!_nS{x#&iaL7H^A;9|hH zw83GTP2&#`*}<`~M|c}m)oJIxMqeycIPwl(AdqQBv5x2@d-$K{=H&f*uG=nnFOX1S z3}AeE5e`Q;nvN~qyNRkl0Y|p`<>zlFIe3E>+$*?sii3Tv-0J~PS`>HNVe8c#H zc(^29{;xBMz!^V6eae6TAzJ$i{DaN(bI{l4e0d-8q&4U~q3ZkqlGT8ROgZ-nrDR_X zGeYM6yhvaCpHm()Er|cgW9x6aHm2n&1~oM`wT-m66U?d%fd7@V-<)jF3dA)iIlo+WSE-%nQ4_f zPqyPLR7#JIe*e5}%wGFz-cPd%cVD9mr}vNLuy%+sJSr+`ZRl}55}E(~`}c~982|TV zV_LPkE7HgIZ3kO9ad8Dtn6=-%tF#|S?7j#14k+y4psub?7dh>D;(qTu`bK0;?>=%0 z5=!IDWoBU+&XGfehbtaM`G0$Vi^eNf=>Kqnibq!zGUR& zO3KRL2+qJbm_M+Ts{AkWsNka_>c7_ygiVkxRg)}vc^@|8&Y#=AZewrH_4sjKtmd_hXzWHi*(JD*WNZ&QC`1QN{r z_alxQ-#W3g=lwfPEK?u@)(D&|9}Y+a8n=p#i(6UYa*w1xA006fu-I$PH(=Y>{$l5# z2@~94^pM5#l%C;#H@C{1pA7s_so1X!Bw&6;-7y6+&6$`k=;K95h-&!KP^fD3wYQhf zd)C1I5s@(6*P#D(s_p%=F?*ql;Ut>UEz=fzdH=;#AX}Yi?RJ?q_M^x@ ziu)*2APfHT+W-2$&ghr5&wRXj-Wbu}_T^kyWiS!#xjVMnVAEgj;%^?VZnH1Bw*+V| zegPjph%YjtFMj^}e$C_TbTpCIZ)3f|ihRJtdrKjeuv!%rJIJj6la%edL9~0HB*J^U z)9hd8&Y$f6kdkubXF%V8Z5rEBbjEbO0fHj+JO>rXUGyS7f50_UJ=alKBT0bo!RF7V zU*tR@0KLrq3cGdm_=4<+))*zulQ|!LL(PFET_Mb(t5MQIo*J?cMgjn`)c=;h^;uIZ z1xYJ6!Vm*D*;rays;u00Y(6zzo7l^Unw>R+*DrSQ_pO>gZ@W!PyMggrs_JX1&|O)U zdmx)GZrbvOfx&16hpVcJA{=7#DVb{f!TM98Sc*SgE7bH>Po6x{YxW%!#+>x&B%(6yKc{uNqT}M!H>KSw`s3l4H6*L zFB;PwY=`(YAFp?)TJ5C43RIy2wnH9UTTX(4f@wk^gUb1xcEBCz3qFj0oJ7eYmP}`) zuI{w?em_c@;5jePdNFz;dgrrDWK&4$wb6)pEhjfTG<4%mf0E~SyOBD>5130sIbQ4a ze(W6WaN|Y}UijbDs$)%^MC2FNjib!7?_ZJe(u4z`vKkpTN zG8Y%R)Yz2qwfwYv!1a{MZBVO{{A{0a>?r-|p)i;7&ae(fy}Kid&A`}rYat2a(d0V` z5{_VSCLmpytcfy_Qv$+_?S98=QA={8#^MXHO0s@<^vd_|=GBh}1_!hGUUL3VO~LH! ze_T`H$~kSySJ@0|m+S?ja^&7-LXIFIHx}aKMAXuCa;ds6a457divPaU|C^W+FufD+*sY>#_I<+YGtRW#o82tmZiXWVom z`7#^rpp$8;rL~vl*rZ0Q&!TqS#kvT)dRUd6z4DoKJr}m!e0ECW1Q&m62hk@v2Y3L8Ki0^xEwJECAio34g*%@^?VeU1L{?y|z% zFst-9u?t5C<&Hz%Ix5G&-u_Q4d*-1OHxEx|pS0^@O5=jzLI7!%&z3D!90vr47FY5K zHlq^a#1{5}czC2nPnN{dmMnAVuUQl$gSrX zZ>0+QB_`=;>x}MhU_y}ap$~b}=JusU`T3Cs*H2+;_`oCps#*Ie$}6H}2WdmNY~nWm z+w{^0Yat!-?b0$(ZNH`S)j}MO$@_8jh#0gthx6gDkf5N(o!*i!%wjHz*|EV>fM1rU z-r~=%F!}{7+Zhht1F)3fG|>wtYex)-OCk%=kAI&*A~g`MxDjXu=O?GEb>{9^fKj}P z&PX$OG1asL@TwPQd3ky1Zqv~Q4k~U7giE|RE-WD*Xr%B6zO1O!Z4-Tx zmo#l{Z*jPg_*Q|q*Tnab<&>U=Muix~Z$)?jVB&AhQe6nHADx%aSKgxv+hIp6)NP%& zxs=AQ+Povf4h~feD3ObLBAH%aUY_jfqhsWvCo4l0n5-?a>SNu_c_#dewia}w z6{r$$H?zs_Z0511Kmcjx9v&ku@p$OxzK`dwwbb5ZQPnA+MMuBAxlM7kKm2TtP3Ivy zJIwert;G~v|CwZ8E{gSK4*o)L|9yC_ZxF>F%!HUMN!Lde(w`1#Qk5As5Pp2NZ$L}E ze_^t6)SHG^wzVxFWv#Qrjj)hXSq}bq40)od<_-w9U#Iif-|}<7>bA38vHs@%CwT|I zCN4i$SYLlA0QPR9r2$G_Q$y~kWlFIN3byIco$~aoj2Kwi3NSK4^HuFJO^wz_EL!PC z$lNJj8Y+&D1QsE9uD!X)IU_y&wd5K=%}#jY63%&s>%Y679uST*9gsGj&AyGUKp@}P z*rS~xC4iL5uzJboh?-k~cVny<+5i$Fb&2)DuO9-#;MsKWH^7aG;nV)^GQ#tT6d+{W zFp@Zk@bnIvwb}d7s~TkU9RODaj%uQFws2DdVAZoOqeebJU2-1e(&d#~Y$6|j)A+&4 z%1R0g?>zg4sdJ*&K=2DA-v9hE>bmwxa&F~!%y;#iU=yFcg{`eEKRDNVB{s&WI{e^mmWB^N7yul ze9}DITrN2C0hT2E`}V-nQXvheBEk_<ELofRYi7o_zJqg%JAb) zkEhzzU9x5u4WY7b1wr`sz7r`my|Tq6YU5 zzz%?M$b9xsw>od+#y>oli}qOmU;BQpkX{_$D8G$X6oo~`Ka{f&DH*LIVNs$fb8WXY zUtvtn*5E$1a(i~ATI!Wvk%aoGm6sa=b0O$C<{&{my7g!Ar- zt(xk`Q0eez<>F+9~u- z+wPh*%lQldfE|G2QG)U=0N^1ARQdSZUS;t@9*R{%hDN8STOgPK_6y7ySl;^E!4!d# zf@af5XsCu&u#T`HIn$x^cd+KVd+E82aMO%}LQWUNk7!I{e@JWw#d?YGBT!v zNKydq2Y%)WuApRj%NCfqdN0DXZ_Ok#W!lM6+g7Xm^0_t_cq{I4yR`tTxb`(pJ%CvV z0(L=g5^iOsxWw+f2Nab9pwqtcSUUc{6n5qhoOkOY{iDB}*WM$#`MfZbnU&S}-8%|t z(YxuYoFIW5zWW>;z`A}xdiQZJ^)2b~)*r@{(A*4ClK)`b-4(b)LBgme<&+)h|LqYE zPgq36FX$Lxyr@~co-6;H<(+-6HQKq)KJ>X+f>8X0o=Nmdra)C;GtNL>LBZzJr(2hR zt9!mRQR=INViF66D~V<3^GU9F0aa}7-c`;|?u_FEFUJBF<`x1&crT?%FD-ssg!e3}InplZcJ5sHn!hk(4q7d>gRb zSp}?rs7aTdE+o0MhEM^&?p^{VhlYNHsv2l&D!uqx1cRZL!80>6xovkK)WoD2%c!DP zXAi&i3<3r)VAq601W|r6!RhEmFOo~&e4Jzv+TQP7HrCx4U4H`}MIxeis3Og6O5u|n zKr;h$h(fsI0l;$$OC+3T+cJIj1#PZsXvFU9L~TqrM%CpXoDK|V$ftca9V?Z=^e|dI&vF0EiJTewNgnpk^5SSmCpp?Y3F(oP}ER3oj6=ZMRQ+$u1fFCfbTsH7BLOqwtCza%EvHL6|30h-yA-x&x3 zSjqg>3w~dXj zy?Ah$$e*pyQNp~v8sNriQiri5?tp4O3&607e0qqF;D7%0t6Fqq$8gfn33jdy-^`~D zg&COm>ABp5eZnZ?Qt?qPtdp%X(Z+{O;CE}z_=L6&kwMM!@(^1 zdLv%l*_Kx&!P&mw&qo#w;Ykn8A!3Oe{%{8e+y&0 z!&v_c*G?fE;eh@W8yj0XiYs)3LVbqt?q2|t-RpOBm1KxIc@%5U@nRaA>*|=#-f$8i zr7fJa5mV1Yjtv9w7(Ynr%<)dmC_%{_9V;~DgD(a2Xw^*LlDla0AJS)suYCzlCbN{n zhB9zf-ll^ijNe8bHp5^^f70));q`L^v1jd3Y{x%{)uL-(o0+u~s$O{S2fEHtSG^tqu0yK@FrvtWDsYYl`WyRV!Hj7N~XXPW;(i&5*@V$w8E(c zV^Y47J|jNbMGOk4g1~+YQRW+-FB}{`w?K%h$*te*G;C-$A1)r#(k2)+=*aG3Bv7t8b`JUc3bHys(TzXt>b zf7N6OyvaygTlLHAY8B}_t(2K30sf(p@9;TAxY=2+h=;So%7scf&%-Q^M+*`r4LmD>IoqP2wW=W5z$sU7OWal_N zJYWhE(Bq>4$*AW1eSod$aqZ2=Z)0mik700&JEOrR;_#v)0{&5gi9oP$)80YYG#a#^ zmAWUM%2qC5YJrv!)^eXpZdco$YD*HfQSt&Bl- z8DeQH&&?&KDuic^YJGGQJz;sw%ciMxx-(n(!&p9Sx1opvoX%*FIo;LFd<1 zx!UAIDi6sq2tQJqvUmXOovit$0HTZwRTCUHcvh==pI4Jg^EsGtFVTU17s zzzwxQfCfK_J+Xe2!Q)}^!KHxP-)U- z+tq)~Vhn_qDk`J}{*nPWV|OW`behsB!5M{_Q*e{aZr%dlZOo8b(`HKy5Xm??!fm*% zO~_$&&m9e9EMN_nImqZ+Jsll6;tBAqQtJbw2G^ppvOVwHENK0{Deb6QRd7dtyA`V7&oiZeXB$T6Nv(#xA=}fI{i*iLq6AMXzdm#q8JjvB=JVY^pYQjBuLIE}USsFLRpbw$O+-d-8pW>M4z*$AVS&;rP` z3-Vea0B&X&7CG;QOmcJGcKyVhh*Wjsk1Vk@49I3M0$}8z#h4Mu1=Vs@UBzv7cfgvX zBh}`fqw#w+H~XZWcp&GY^HNwruuE}JZ)%@PxM8MrtfV^|?)mWAAvE8>_j6}ry(Fda z!(jG(&Y|3GL4yL{vx{dNd-LgyL1VqwKYGQa3QaqPR1dHYZF6H9-ravqfc@b)NKgI; zAxL$G{8Q;f-;GVyUQ>$hCnQ+dy+RvfAFkJX=FUzsXDh^ny@=j#FKk*B8~&q9UX}-bI)9C)QPHZ6v;AR$RuqOeAlC2IT%alm_e&5IqvtEylF=32U z3PxIrHu`ZuaD`0zq-Szl%gJqJ;Z)hDCetD0 zXjgdWwcD-is?uS806bdarT8UOe{L)a=A@emD5Yw^Omv29Q}PZZ&td)bFvs724ActC z9}#B#82#7N7N>eDE-RV4-9w8aTO7B3RPtNAlYF5ngBT4{dkyp`ovc$L}P0B%C*kr=ij}x{4B5P%t^j|o2VZ!=^ zSHbi3!1<#+I4vmJ@CV{L`o~D#&7J;IJwJDc^v7`lbJAZ`N|NQSH}4;RpuVbkdcZ;s zagm-tq_*+%{i-PYJvU%xy#`Yd8B{zD>5HBB3yFR@D-x1Vf_GWWD~->VXAjiz2yl&9 zI6m;&$5-24t3WeGhPFeZT3W-4f~qBQ=n^WD^B6WflX)517ROU-#O);wfkGJ z$d(UpcAD{`LPG9<%WUV8n`CjApQ7vy-I`Ddq9+s#9W~R)HVbK}gP^tvs1BBiXP$GO zPoC)O>H?vNG4`O;IA>DoD2Bi0+3#py8+{Ltb;O~fy!`vJ-W~C(n|i7kTFK_$Oap=9 zqYq`M$&GgNv$G+Pxb0u;Tz(XM-H>V%+=u+RcyJfso<$vuk0UCISN`Xfs&f6va#M`` zaVI-d3_NUqg%W-Unz|U~2F|e&OHAu-vX)mBqvLVUg+;BvhYm~)=%dLS*#vyU$x+LVP4*TKH~Q6VPsT6Fr_L-xN5&e zL-j#P!_Uvz&@gF4&28h}p*`=^%iTjG0v}kaCTruapF78J!Z_4UDY*egRzO4W{F?l* z3_sjpVi8K_4?PAcmb`{*oY^h7k_=gMjxAR2)RkSncnH=T+ zRHjD!JhVY|KBEzT9)dI7`bs2DgH-fVCz?ZDg>s899z8O$IUnu-_b*%583V2Xo0n#b1zxp20jx~@yj!T{K4DI%kt=*{7=k{VMR>R}b-@o6(ngPA))2bl$ z#$wRr=gE&c&W_Fn0j(ocq%XZ~HK?jyD#}MA)Dco}Mb3S1q1_cEP`qwX!$Fzy-aavl zs>9#Y9vBtcVR;Tmd)d_%Vi*N)w4J4IrXf{iWrc?sovO1G-yRW-vG&W=2pfNxKJ0Ha zgveiq9z>ipo4rb(IE1s}Kwm>E7-zkE zha5GSNaFQVO=Ji}^Ia6UO#|qIU##)+fAz{ujU*4_xqAmcI1xV0VpP zS7aT_PZu<-ZIsfceN->_HzoNvsLvEVNPIe=Pg$PCEo`O6dwjHp6gXEmjUABQ4OwV9 zsLV>&q>E+nx;!~t$b8%$FH5C-G!~dy7IyGAHn2|V*!q$(yNs0y#_AS*PE@ejE0NLD z;7N>p6@^aVVnSK`Dt!#%6f?WL@Ap5-Mkm*TR?!EP`7-`SFr$_ahy)4U1Mk~s4oFRj z2OFPpm$!+hSuy~;wJi7N)k61#9$cgz2R;5_UHOXtDtF{flI1o4Gxv>PkPt(oK$vcv zWa9ANQ?Qd-TDp8$;iEXj?>!CiQbzvUcE3zAt_u^!J+NC4ul01Ege9l{X$aLU3pv`M zjJ_Y(JZvJjYP;Ra5VZxFCX4v!ib|yV#6^Dgx9HH+vs=Ojkk#O8pBSmDE9uD??l!=y z%lqT1j&YVpAO{##adQ~ufcRsWlC%mv3KkIr#0+hJe6Nnb^=utJ{!!oM>0%@FMx z-7#Do@4<{?NCE{~>goYac7?;BWllR8YKhUj1bxYN@9hDFEc3XNZHdZ&Zww?~1C$a2 zcX3%kzLG_4$H;jc7nzQG;-%-pX{L}$>@l@`Eg_ED)607NR1s*d#WaM~7|iomtyv1s zx_I?S>OJ2mi#0EUx5fE6(_K<73xCY;o{{gbYF~6{bzR8AM1)t-oouDYJ zz;R3w=;LNH!^(3Zu6~N9JneLsb)@$}@*u*DQ}CZ5xV%4c1&}En*U1z{0un1}r?k2n zu3^m{Uwk~}>d*?v*O-Kko*w?Q-w;4u54XN@iiH8R2RK8`l&wL_MWT^tvsY;p4>Rhw z&6|gJ3%i94Q*}tA@4v5b?%@OUjvk^eH6CuBPq#;X7vxm&sR7ru zk(GuyREJ&QK*6Ifus|;bWnZ$3D8%Qpb*H_Y*61Dq@aYBy{;_F3$hGI?c_-TMWU-U2 zgc4mzu)YNsAs2`NAPqAc=%9tNGGhj6UHXz9mWTa5)Un`O>(T5Ed0H7IX;NWBNp~bv z*)@fMNHPecJfVJ_52wXbN02Ko0=lU?*%+g?xT;JO?W|pNUL%;PJp8q=%5HQ%yiKrG zf$dCptgpeJD7E=>&j!-D)YWeN>sjH-8+Qj=9!_kU4)-{UGKgJ!uPCuUu5U;(H%S4& z`C3$t6$3-CPIsYE?%e0k?ej{LX^@AT-4HnR5y``jS8cT0wLBWCR&CU zfaI;{|F-RLQ+ebuu*IApONofHi2{xJCM3hP27dVO5k?>FB(!1s_ycvj!-ND$-(Ycu z1OfOrXkE(1E+urLY*?fFcy&>S2A&mLi%U@!sjbD1K8yvn2rnR!0h~AM!|orAIM?t{ zz=***#=bgNZe0now7Q z3Z@-Jfe=@q=Xo+eS4(S^+(z5qSS$nznW51|{{HvZqCo6>7aBl|i|aK+r>rF;b}8LG zxFV%U(7!DtG=1cL>yuHg48YWPk1wvO^@!lae%@+b<}KFV`Q%liyoyv>Bj;s(eM~&t z!M@96r<-Rm{Wp|xYD(K}GOZT`r4cwN>Rs-L_A}h~=y@(JpZ%+{K{bzCZHT?u#MIPq zznC=wcNaZbd%?i>1+klJ`m_yRta9wuL5~^?G!_6tE>M&l-Q2#uzIGZE2p4)xNCKtX z4Y_qd<|DNp2radSpCpMOAKwV2!0c^9i1QvGFnn4heFOfK)Dsrat}f-m#NEov=MfhZ z^G9|$r~I8)?-n~4DeDt6g&0iWd%vR-Mx$m^Tv2gdQL(gf?+ktZRS}WW3h^@s7fYO) z{V)`$p(?}2&=AsXFris;D%27#e=S4!@F4nTu%FV>FT2WnU#d1AS{O{W!4GK1WcZkC zD~Lb4zmz{Z$5PPXFSZdB6jW?pZq-7iWMxf*$MNyc$v3$nn{t4%kEV5LeLLzO$HCXE zGXXS|yg{)$KrG@X)G}YaI@^TjfkN#}*_Q(Qk!p`07q}tb91Pk3OP7(^gj*6C7qG^G z@=|QGv@nfM?7b%FXrTzFDJ1&e)6_IKH*YysBFmj832Rkt5`g)~+?%6-Z*2bKGL<1{d%b3N&4e>dqGL+IXPK`=RyP6Uri2%Lwzib9+!$ zkBMVVVR~*mS(E)5;12+fXF=`cGE^5(Kt7(Wq&%^wy8+T20PU~mF(8Sl$fYx%Jn8AC z70vnT+$^4*bD-C$o34?W{nMgekC*+%TQJ)h{6*JCSDCR(>%pR0zP=~gZJ%%D5t<|E;%^Sjw2Epa!L(|hK+*G(?h-$eT!}?CP!raEr&JGxC4Bvfuzv6gb zXU)vUhI@8Bm7Z>4yP!;~Zp(4cs)g_VtvsttkB4|v<+%IWnOHhbL_*h@x6!-g`BgwV z9s^-FiGRQWyRC;AU7>?h2`wTbJ-`m?PM*^M%mDI7-VpEt3~$fQI=Q09$)E_wFbmn! z9;qnmZ~?;0Yhw{ud*{q490@q^{r$BQMmjt1&HR#Y>|Joa+v1WaB(AF3+S;1K@~Anl zMZ==r#8i2F+^Ven!xSGK&Ny$bcAP6MW#Otskh7fLC+N8$iLp`@Tg)hNN2zY#xp{CI z+5SI%Qo4fPLT%Rh4^Cu0uV$lF`kd4aZ;fjEOsVD?L|+=Tv)-V5b1|A+Q0dj6jF{Ya zpjkWqK>*Kt8jx>)%>)9L`laWqdp&UnHGh*S;;+;GyM#$SJ-yr6<%@fz&#T-s^>2gq z<9ZG=9RYC#R#jf<`icdCbAMrFS3i|$(A3cKgCjxi_w&xgCS+5;`wS&wX) zt_CzwiZ}S9B$@r%G$+Pj(ez-7EpR`|U%&o>&U+-ENfww+{FUrxE-iQ*raDcfF(5f;|vsdI-f~#(B(xs)!&|> zL<@-EcKT}lO@8;Tu&+$RqIbsCTe#!w!`6x7XG$XeEhtA|sWa6MU^T%4#4rIEJPo1i z?!LL4JOmztA{4MC`VAdL>y{a1crOCC7YGc&O@RUrXqMIg*S!s7$S-j&R8&Z zUtd6jp?T2TWBs*>V|M~7d1NK7oVWl(kk;~YJ?b>gS9K_u2kx_H|EFo*?8H(J$2h(E zsAB6T!GE#?K>d$seEjd9I{dM*Yc4LAy*w|7+Z&>k7;v^Axd#4aAykPWcou(z=Rp3Ma_4fOZJ!{srXZ|?Qr zbiuiR>*~bD&CSQl3uK5{6!aEY{Zdae)~>;mfxGezk(dQEpTera%e-#0Kszv)ZKALp zfuG77aICZP^G!mMW)($5fMsE14GAtY@XYSUYZU@G?e)YNbTx|0G-5l6c_Y#n1yr*# zc#PhHb@j*OhwCG!t_wP?6WKQCuXf^O%CXo~uzlQUzW*`uar|W&E=x zxZ=m%>t=qLEk*x(nixS~AC_fSJI{LOWps3%xJJk6?j+8U&n)OeHa3oHCp+zh?H9*S zQn9gdadAmW@(@8e`%_^eCx<}yMFjKV!|Bw7EzokBv` z?*7+(3O@hrztZ-<-~E5_{tyn1g+|*|R<{Ok&Yt8ar|GhFxEr=eys(qQ)X_A&S9RC% G#eV>#vXz?v literal 0 HcmV?d00001 diff --git a/docs/images/update-banner-whats-new-after-summary-on.png b/docs/images/update-banner-whats-new-after-summary-on.png new file mode 100644 index 0000000000000000000000000000000000000000..7ff4a81c1d2d7f344b9edb6704f9a757aa61c5dc GIT binary patch literal 145729 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ࠩ+5xYR01qk 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νh;lJ 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 literal 0 HcmV?d00001 diff --git a/static/ui.js b/static/ui.js index 6e9360f4..298cb4c9 100644 --- a/static/ui.js +++ b/static/ui.js @@ -3964,8 +3964,8 @@ function _updateSummarySignature(info){ } function _updateSummaryButtonLabel(target,data){ const labels=target.key==='webui' - ? {generate:'Generate WebUI summary',view:'View generated WebUI summary',regenerate:'Re-generate WebUI summary'} - : {generate:'Generate Agent summary',view:'View generated Agent summary',regenerate:'Re-generate Agent summary'}; + ? {generate:'Generate WebUI update summary',view:'View generated WebUI update summary',regenerate:'Re-generate WebUI update summary'} + : {generate:'Generate Agent update summary',view:'View generated Agent update summary',regenerate:'Re-generate Agent update summary'}; const cache=_loadStoredUpdateSummaries()[target.key]; const signature=_updateSummarySignature(data&&data[target.key]); if(cache&&cache.signature===signature&&cache.payload) return labels.view; diff --git a/tests/test_update_banner_fixes.py b/tests/test_update_banner_fixes.py index 5ad4ab22..de46a892 100644 --- a/tests/test_update_banner_fixes.py +++ b/tests/test_update_banner_fixes.py @@ -763,12 +763,12 @@ class TestWhatsNewSummaryToggle: assert 'updateSummaryDiffLinks' in src assert 'Regular diff comparison' in src assert 'updateSummarySections' in src - assert 'Generate WebUI summary' in src - assert 'Generate Agent summary' in src - assert 'View generated WebUI summary' in src - assert 'View generated Agent summary' in src - assert 'Re-generate WebUI summary' in src - assert 'Re-generate Agent summary' in src + assert 'Generate WebUI update summary' in src + assert 'Generate Agent update summary' in src + assert 'View generated WebUI update summary' in src + assert 'View generated Agent update summary' in src + assert 'Re-generate WebUI update summary' in src + assert 'Re-generate Agent update summary' in src assert 'window._whatsNewGeneratedSummaries' in src assert 'sessionStorage' in src assert 'hermes-whats-new-generated-summaries' in src From 97564c2b01c01d8de37877c4db1737606cae4e0d Mon Sep 17 00:00:00 2001 From: ubuntu Date: Wed, 13 May 2026 17:38:50 -0300 Subject: [PATCH 18/19] =?UTF-8?q?feat:=20show=20=F0=9F=A4=96=20badge=20for?= =?UTF-8?q?=20cron=20jobs=20in=20agent=20mode?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Identify cron jobs with mode=agent (no_agent=false) in the cron list by displaying a robot emoji badge next to the job name. --- static/panels.js | 9 ++++++++- static/style.css | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/static/panels.js b/static/panels.js index d942fac0..e27f548b 100644 --- a/static/panels.js +++ b/static/panels.js @@ -425,11 +425,13 @@ async function loadCrons(animate) { item.id = 'cron-' + job.id; const status = _cronStatusMeta(job); const isNewRun = _cronNewJobIds.has(String(job.id)); + const isAgentMode = !job.no_agent; const profileLabel = _cronProfileLabel(job.profile); const profileTitle = _cronProfileTitle(job.profile); item.innerHTML = `

${isNewRun ? '' : ''} + ${isAgentMode ? '🤖' : ''} ${esc(job.name)} ${esc(profileLabel)} ${esc(status.label)} @@ -468,6 +470,11 @@ function _renderCronDetail(job){ const deliver = job.deliver || 'local'; const isNoAgent = !!job.no_agent; const cronJobMode = isNoAgent ? 'no-agent' : 'agent'; + const modelProvider = + job.provider && job.model ? `${esc(job.provider)}/${esc(job.model)}` : + job.model ? esc(job.model) : + job.provider ? esc(job.provider) : + isNoAgent ? '' : 'default'; const script = job.script || ''; const profileLabel = _cronProfileLabel(job.profile); const profileTitle = _cronProfileTitle(job.profile); @@ -498,7 +505,7 @@ function _renderCronDetail(job){
${esc(t('cron_next'))}
${esc(nextRun)}
${esc(t('cron_last'))}
${esc(lastRun)}
Deliver
${esc(deliver)}
-
Mode
${esc(cronJobMode)}
+
Mode
${esc(cronJobMode)}${modelProvider ? ` ${modelProvider}` : ''}
${isNoAgent ? `
No-agent script
${esc(script || '—')}
` : ''}
${esc(t('cron_profile_label') || 'Profile')}
${esc(profileLabel)}
${esc(t('cron_toast_notifications_label') || 'Completion toasts')}
${esc(toastNotifications ? (t('cron_toast_notifications_enabled') || 'Enabled') : (t('cron_toast_notifications_disabled') || 'Disabled'))}
diff --git a/static/style.css b/static/style.css index 98661718..2b4e04e3 100644 --- a/static/style.css +++ b/static/style.css @@ -2700,6 +2700,7 @@ main.main.showing-logs > #mainLogs{display:flex;} /* ── Cron alert badge ── */ .cron-badge{position:absolute;top:2px;right:2px;background:#e53e3e;color:#fff;font-size:9px;font-weight:700;min-width:14px;height:14px;line-height:14px;text-align:center;border-radius:7px;padding:0 3px;} .cron-new-dot{width:7px;height:7px;border-radius:50%;background:var(--success,#22c55e);flex-shrink:0;animation:cron-dot-pulse 2s ease-in-out infinite;} +.cron-agent-badge{flex-shrink:0;font-size:12px;line-height:1;} @keyframes cron-dot-pulse{0%,100%{opacity:1;}50%{opacity:.4;}} .has-new-run{border-color:var(--success,#22c55e)!important;box-shadow:0 0 0 1px var(--success,#22c55e);} From 6af22791ce9918e7980c6138a22ca23f7a387b49 Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Wed, 13 May 2026 23:55:35 +0000 Subject: [PATCH 19/19] =?UTF-8?q?docs:=20CHANGELOG=20stage-351=20=E2=80=94?= =?UTF-8?q?=20close=20v0.51.57=20(stage-350=20batch),=20open=20Unreleased?= =?UTF-8?q?=20for=206-PR=20stage-351?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index dc2240e6..1a68ebc6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,24 @@ ### Fixed +- **PR #2210** by @Jordan-SkyLF — MCP Tools list in Settings → System no longer renders an unbounded inventory that makes the settings panel scroll-trapping. Added a toolbar (result-count summary, page-size 5/10/20/50/all, search input), bounded scroll area with consistent height, paginated rendering, and focused regression coverage for the large-inventory case. Existing WebUI-only/runtime-only contract preserved (no MCP server probing, no agent-side changes). Visual before/after evidence shipped under `docs/pr-media/2210/`. + +- **PR #2213** by @franksong2702 (fixes #2152) — Literal ``/`` discussions in normal assistant prose are no longer stripped from saved messages and re-renders. The old server cleanup and stored-message render regexes stripped the first closed thinking-looking block anywhere in the content. PR aligns saved/static paths with the existing streaming rule: provider reasoning wrappers (`...`, MiniMax `<|channel>thought...`, Gemma 4 `<|turn|>thinking...`) are stripped only when they lead the response (i.e. the wrapper is the first non-whitespace content). + +- **PR #2149** by @starship-s — `/api/session` loads no longer pay the cost of full external CLI session discovery when opening an ordinary WebUI-native chat. Caches CLI/external session scans briefly, skips CLI metadata lookup for ordinary WebUI-native session loads, and reuses a single in-memory ID snapshot during session-index pruning. Messaging, read-only, external-agent, and CLI-marked sidecars still take the CLI metadata path; CLI-only sessions still use the existing fallback. Stage-351 maintainer fix renamed the existing `_needs_cli_session_metadata()` gate to the broader `_session_requires_cli_metadata_lookup()` from this PR — strictly more inclusive (now also covers `read_only=True` sidecars, `session_source` markers, and source_tag/raw_source/platform metadata so legacy-imported sidecars still get the slow path when they need it). + +### Added + +- **PR #2207** by @Jordan-SkyLF (fixes #1579) — Update banner now shows target-aware "What's new?" links: WebUI updates link to the WebUI comparison, Agent updates link to the Agent comparison. Agent-only and WebUI-only update states no longer show a misleading cross-target comparison action. Opt-in settings toggle enables human-readable LLM-generated update summaries for each target's diff; users can still open the original diff from the summary. Cached/generated-summary button states persist across refreshes. Extended update-banner regression coverage for the diff-link and summary flows. Visual evidence: `docs/images/update-banner-whats-new-{before,after}.png` + summary on/off variants. + +- **PR #2206** by @vcavichini — Cron list now shows a 🤖 emoji badge for jobs running in agent mode (`no_agent=false`). Cron detail view shows the configured provider/model next to the Mode badge, falling back to "default" when neither is explicitly set for agent-mode crons. UI-only change. + +- **PR #2212** by @dobby-d-elf — Tunes the Activity sweep animation introduced in PR #2203 (stage-350) — softer color stops, less aggressive contrast, smoother fade. CSS-only follow-up. + +## [v0.51.57] — 2026-05-13 — Release AG (stage-350 — 7-PR medium-risk batch — auth trilogy + cancel-status with conflict resolution + Ollama label guard + provider precedence + Activity animation + Opus dedup tightening) + +### Fixed + - **Issue #2152** — Literal discussions of reasoning tags such as `` and `` no longer disappear from saved or re-rendered assistant messages. WebUI now treats `...`, MiniMax `<|channel>thought...`, and Gemma 4 `<|turn|>thinking...` blocks as hidden reasoning metadata only when the wrapper is the first non-whitespace content in the response; provider wrappers with leading whitespace still strip as before. - **PR #2191** by @lucasrc (auth refactor 1/3) — Thread-safe login rate limiter (new `_LOGIN_ATTEMPTS_LOCK`) + PBKDF2 key separation (new `_pbkdf2_key()` reading `.pbkdf2_key` separately from `_signing_key()` reading `.signing_key` — previously both shared `.signing_key`, a key-reuse anti-pattern across HMAC and PBKDF2 primitives) + transparent migration in `verify_password()` that re-salts legacy hashes with the new key on next successful login. 241-line regression suite covering the lock + migration paths. Split from earlier #2167 per maintainer review request.