From d7b96ecd4d69b854fbfe5de0a5583f1f9d725eb9 Mon Sep 17 00:00:00 2001 From: Doudou Date: Fri, 25 Sep 2026 13:24:09 +0000 Subject: [PATCH] ComfyUI RigShare 1.0.0 Multi-user collaboration for the current ComfyUI frontend, continued from ComfyUI-Nexus by daxcay (MIT). - Login page before ComfyUI loads, first-run admin setup, JWT sessions - Personal API keys; server-side permission checks (edit, queue, manager, admin) - Every workflow shared as a live room, with snapshots and history - Per-workflow access lists (view / edit per person) - Conflict-free concurrent edits (id remapping, per-id link merges) - Presence: who is online, cursors, selections, follow mode - Chat with unread badge, blinking icon and sound - Server monitor (CPU, RAM, GPUs, queue) with a floating widget - Admin options to hide the Comfy.org login and API templates - Docs, changelog, screenshots and icon --- .gitattributes | 2 + CHANGELOG.md | 40 ++ LICENSE | 3 +- README.md | 403 ++++------------- __init__.py | 484 +-------------------- classes/WebSocketManager.py | 13 - docs/accounts.md | 43 ++ docs/api.md | 55 +++ docs/images/access.png | Bin 0 -> 125428 bytes docs/images/account.png | Bin 0 -> 107988 bytes docs/images/admin.png | Bin 0 -> 203105 bytes docs/images/chat.png | Bin 0 -> 105640 bytes docs/images/floating.png | Bin 0 -> 111887 bytes docs/images/history.png | Bin 0 -> 129927 bytes docs/images/login.png | Bin 0 -> 337959 bytes docs/images/people.png | Bin 0 -> 81848 bytes docs/images/server.png | Bin 0 -> 74348 bytes docs/install.md | 64 +++ docs/reverse-proxy.md | 43 ++ docs/security.md | 42 ++ docs/settings.md | 45 ++ docs/sharing.md | 64 +++ pyproject.toml | 19 +- rigshare_core/graphdoc.py | 210 +++++++++ rigshare_core/hub.py | 526 +++++++++++++++++++++++ rigshare_core/jwt.py | 58 +++ rigshare_core/login.html | 124 ++++++ rigshare_core/routes.py | 561 ++++++++++++++++++++++++ rigshare_core/stats.py | 79 ++++ rigshare_core/store.py | 477 +++++++++++++++++++++ web/assets/img/logo.png | Bin 260874 -> 0 bytes web/lib/nexus.api.js | 115 ----- web/lib/nexus.chat.js | 160 ------- web/lib/nexus.cmd.js | 737 -------------------------------- web/lib/nexus.comfy.js | 261 ----------- web/lib/nexus.elements.js | 217 ---------- web/lib/nexus.litegraph.js | 693 ------------------------------ web/lib/nexus.mouse.js | 190 -------- web/lib/nexus.panel.js | 258 ----------- web/lib/nexus.sockets.js | 135 ------ web/lib/nexus.styles.js | 37 -- web/lib/nexus.user.manager.js | 27 -- web/lib/nexus.workflow.js | 306 ------------- web/lib/nexus.workflow.panel.js | 236 ---------- web/rigshare/assets/icon.png | Bin 0 -> 68663 bytes web/rigshare/assets/icon.svg | 16 + web/rigshare/client.js | 215 ++++++++++ web/rigshare/graphdoc.js | 106 +++++ web/rigshare/main.js | 273 ++++++++++++ web/rigshare/panel.js | 722 +++++++++++++++++++++++++++++++ web/rigshare/presence.js | 202 +++++++++ web/rigshare/server-widget.js | 99 +++++ web/rigshare/styles.js | 199 +++++++++ web/rigshare/sync.js | 538 +++++++++++++++++++++++ web/rigshare/ui.js | 64 +++ web/util.js | 25 -- 56 files changed, 4996 insertions(+), 4190 deletions(-) create mode 100644 .gitattributes create mode 100644 CHANGELOG.md delete mode 100644 classes/WebSocketManager.py create mode 100644 docs/accounts.md create mode 100644 docs/api.md create mode 100644 docs/images/access.png create mode 100644 docs/images/account.png create mode 100644 docs/images/admin.png create mode 100644 docs/images/chat.png create mode 100644 docs/images/floating.png create mode 100644 docs/images/history.png create mode 100644 docs/images/login.png create mode 100644 docs/images/people.png create mode 100644 docs/images/server.png create mode 100644 docs/install.md create mode 100644 docs/reverse-proxy.md create mode 100644 docs/security.md create mode 100644 docs/settings.md create mode 100644 docs/sharing.md create mode 100644 rigshare_core/graphdoc.py create mode 100644 rigshare_core/hub.py create mode 100644 rigshare_core/jwt.py create mode 100644 rigshare_core/login.html create mode 100644 rigshare_core/routes.py create mode 100644 rigshare_core/stats.py create mode 100644 rigshare_core/store.py delete mode 100644 web/assets/img/logo.png delete mode 100644 web/lib/nexus.api.js delete mode 100644 web/lib/nexus.chat.js delete mode 100644 web/lib/nexus.cmd.js delete mode 100644 web/lib/nexus.comfy.js delete mode 100644 web/lib/nexus.elements.js delete mode 100644 web/lib/nexus.litegraph.js delete mode 100644 web/lib/nexus.mouse.js delete mode 100644 web/lib/nexus.panel.js delete mode 100644 web/lib/nexus.sockets.js delete mode 100644 web/lib/nexus.styles.js delete mode 100644 web/lib/nexus.user.manager.js delete mode 100644 web/lib/nexus.workflow.js delete mode 100644 web/lib/nexus.workflow.panel.js create mode 100644 web/rigshare/assets/icon.png create mode 100644 web/rigshare/assets/icon.svg create mode 100644 web/rigshare/client.js create mode 100644 web/rigshare/graphdoc.js create mode 100644 web/rigshare/main.js create mode 100644 web/rigshare/panel.js create mode 100644 web/rigshare/presence.js create mode 100644 web/rigshare/server-widget.js create mode 100644 web/rigshare/styles.js create mode 100644 web/rigshare/sync.js create mode 100644 web/rigshare/ui.js delete mode 100644 web/util.js diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..d0d6371 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +* text=auto eol=lf +*.png binary diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..27b9c54 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,40 @@ +# Changelog + +## 1.0.0 + +First release of RigShare, a rewrite of [ComfyUI-Nexus](https://github.com/daxcay/ComfyUI-Nexus) 1.0.2 for the current ComfyUI frontend. + +### Added + +- Login page before ComfyUI loads, with first-run creation of the admin account +- JWT sessions (HS256, 12 h, renewed while active), bound to revocable server-side sessions +- Personal API keys for scripts and other apps +- Every workflow shared as its own room: saved files automatically, unsaved tabs once edited +- Shared workflows list, *Share this tab*, *Stop sharing*, removal of idle rooms +- Per-workflow snapshots: automatic, named, restore for everyone, open as a copy +- Per-workflow access lists: restrict a workflow to chosen people, each with view or edit +- *Manager* permission: only accounts with it can use ComfyUI Manager (install, update, snapshots, restart). Enforced server-side; the Manager button is hidden without it +- Admin option to hide ComfyUI's Comfy.org account login (top-bar button and sign-in dialog) +- Admin option to hide templates that need paid API nodes from the template browser +- Conflict-free concurrent edits: links and groups merge by id, clashing node and link ids are renumbered, dangling links repaired +- Live cursors and selections, drawn above image previews and DOM widgets +- Follow mode that jumps to the other person's tab and view +- Chat with unread badge, blinking sidebar icon and sound +- Server monitor (CPU, RAM, per-GPU load, VRAM, temperature, power, queue) with a floating widget +- Execution progress and previews sent to everyone +- Admin panel: accounts, permissions, display names, usernames, passwords, server settings +- Server-side permission checks on ComfyUI's queue, interrupt, free and upload endpoints +- Warning when a reverse proxy drops WebSocket upgrades +- Login page that follows the ComfyUI palette last used in the browser + +### Changed + +- The sidebar panel replaces the floating chat window and keyboard shortcuts +- The server is authoritative: identity and permissions are checked on every message +- Graph sync uses the frontend's change tracker and per-node patches instead of patching litegraph + +### Removed + +- `/login`, `/logout` and `/nick` chat commands +- Plaintext `admins.json` and the shared default admin password +- Hiding ComfyUI's menus with CSS, and clearing the user's workflow on load diff --git a/LICENSE b/LICENSE index e550b32..85a821e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,7 @@ MIT License -Copyright (c) 2024 daxcay +Copyright (c) 2024 daxcay (ComfyUI-Nexus) +Copyright (c) 2026 Doudou (ComfyUI RigShare) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index d9bb4c1..e8a83f1 100644 --- a/README.md +++ b/README.md @@ -1,336 +1,119 @@ +
-![COMFYUI-NEXUS](https://github.com/user-attachments/assets/6548c010-649b-4e6c-8ae1-f05e3f523f31) +RigShare icon -# ComfyUI-Nexus +# ComfyUI RigShare -![Version](https://img.shields.io/badge/version-1.0.2-green) ![Last Update](https://img.shields.io/badge/last_update-Sept_2024-green) +> One ComfyUI rig, a whole team: accounts, live co-editing of every workflow, chat and a GPU monitor -A ComfyUI node designed to enable seamless multi-user workflow collaboration. +[![GitHub Release](https://img.shields.io/github/v/release/xiaodoudou/ComfyUI-RigShare?style=flat-square&color=e94560)](https://github.com/xiaodoudou/ComfyUI-RigShare/releases/latest) [![Stars](https://img.shields.io/github/stars/xiaodoudou/ComfyUI-RigShare?style=flat-square&color=yellow)](https://github.com/xiaodoudou/ComfyUI-RigShare/stargazers) [![License](https://img.shields.io/badge/License-MIT-blue?style=flat-square)](LICENSE) [![ComfyUI](https://img.shields.io/badge/ComfyUI%20frontend-1.53%2B-7c3aed?style=flat-square)](docs/install.md) [![Python](https://img.shields.io/badge/Python-3.10%2B-3776ab?style=flat-square)](docs/install.md) [![Dependencies](https://img.shields.io/badge/Dependencies-none-brightgreen?style=flat-square)](docs/install.md) [![Auth](https://img.shields.io/badge/Auth-JWT%20%7C%20API%20keys-orange?style=flat-square)](docs/security.md) -![Untitled design (2)](https://github.com/user-attachments/assets/1d1f4b2b-0999-461e-b43c-719d107c54df) +A custom node that turns a single ComfyUI server into a shared workspace. Everyone signs in, opens any workflow, and edits it together in real time while seeing each other's cursors. Fork of +[daxcay/ComfyUI-Nexus](https://github.com/daxcay/ComfyUI-Nexus), rewritten for the current ComfyUI frontend. -**Features Video**: https://www.youtube.com/watch?v=RnYIUG59oTM +
-
+--- -# Important Notes +## What it does -
+- asks everyone to sign in before ComfyUI loads, and creates the admin account on first run +- shares every workflow: people who open the same saved file edit it together, and unsaved tabs join as soon as you edit them +- lets you switch tabs freely, because only the tab on screen syncs +- shows who is online and which workflow they are on, plus live cursors and selections +- lets you follow someone, jumping to their tab and view +- keeps a chat with an unread badge, a blinking icon and a sound +- keeps per-workflow history: snapshots every few minutes, named snapshots, one-click restore +- gives each account permissions to edit, queue, use ComfyUI Manager or administer, enforced by the server and not just hidden in the UI +- lets you restrict a workflow to chosen people, each able to view or edit +- keeps simultaneous edits apart: two people adding or connecting nodes at the same moment both keep their work +- issues personal API keys, so scripts and other apps can call ComfyUI with their owner's permissions +- shows CPU, RAM, and for each GPU the load, VRAM, temperature and power, plus the queue, in a panel tab or a floating widget +- sends execution progress and previews to everyone, not only whoever queued -- **Install/Maintain on Server Only**: This node should only be installed on the server machine. -- **No Installation Needed for Others**: Other users don’t need to install this node. -- **URL for Connection**: Other users only need the URL to connect locally/remotely. +What this fork adds over Nexus: -- **Security**: - - ComfyUI menu and features are for admins only. - - ComfyUI shortcuts are for admins only. - - Prompt Queue shortcut `CTRL+Enter` is for users with queue permission only. +- **Built for the new frontend.** It lives in a sidebar tab and works with workflow tabs and subgraphs. It needs no legacy menu and no litegraph patching. +- **Real accounts.** A login page, hashed passwords, JWT sessions and API keys replace the shared `/login account password` chat command and the plaintext `admins.json`. +- **The server is in charge.** It checks permissions and identity on every message, so a browser cannot impersonate someone or edit without the right to. +- **Every workflow is shared**, not a single canvas that everybody fights over. -- **Editor Permissions**: - - Editors can only edit the graph (create/update/delete/move). - - If an editor has queue permission, they can queue prompts in the workflow. +## Screenshots -- **All Admin Server (not recommended)**: - - One can create a server with all admins to resolve permission issues. - - Refer to the `Admin Account Setup` section for more details. + + + + + + + + + + + + + + + + +
Workflows tab: this tab, history and shared workflows
Shared workflows and history
People tab
Who is online, and on which workflow
Chat tab
Chat
Server tab
Server monitor
Account and API keys
Account and API keys
Admin tab
Accounts and server settings
Access list of a workflow
Who can open a workflow
-
+

+ Floating server monitor over the canvas
Floating server monitor +

-> [!WARNING] -> When opening the ComfyUI workspace for the first time, it will be locked. Login as admin to enable editing. +

+ Login page
Login page +

-> [!WARNING] -> Move or disable the ComfyUI-Nexus nodes from the custom nodes folder if you want to return to your normal ComfyUI setup. +## Getting started -
+Clone into `ComfyUI/custom_nodes` and restart ComfyUI: -> [!CAUTION] -> Enable the old `litegraph(legacy)` node search box. (New node search box is under development and has bugs) +```bash +cd ComfyUI/custom_nodes +git clone https://github.com/xiaodoudou/ComfyUI-RigShare.git +``` -![Untitled design (4)](https://github.com/user-attachments/assets/336a29e8-f6fb-4730-bd6d-f6b94947941b) +Open ComfyUI in a browser. There are no accounts yet, so the login page asks you to create the administrator. Sign in, open the **RigShare** tab in the sidebar and add your team under **Admin → Accounts**. That is the whole setup. -
+Everyone then signs in at the same address. To use the API from a script, create a key under your avatar → **API keys**: -### Location of Nexus folder +```bash +curl -H "Authorization: Bearer rs_yourkey" http://your-server:8188/api/queue +``` -#### ComfyUI Folder - - `Drive:/ComfyUI_windows_portable/nexus` +Behind a reverse proxy, turn on WebSocket support, or nothing will be live. See [Reverse proxy](docs/reverse-proxy.md). -#### Stable Matrix - - **Full Version**: `Drive:/StabilityMatrix/Packages/ComfyUI/nexus` - - **Portable Version**: `Drive:/StabilityMatrix/Data/Packages/ComfyUI/nexus` +## Documentation -
- -## Disabling ComfyUI-Nexus - -
- - - Stop ComfyUI and go to `ComfyUI\custom_nodes` folder - - Rename `ComfyUI-Nexus` like this `ComfyUI-Nexus.disabled` to disable. - - Restart ComfyUI again. - -
- -## Key Features - -
- -- **Multiuser collaboration**: enable multiple users to work on the same workflow simultaneously. -- **Local and Remote access**: use tools like ngrok or other tunneling software to facilitate remote collaboration. A local IP address on WiFi will also work 😎. -- **Enhanced teamwork**: streamline your team's workflow management and collaboration process. -- **Real-time chat**: communicate directly within the platform to ensure smooth and efficient collaboration. -- **Spectate mode**: allow team members to observe the workflow in real-time without interfering—perfect for training or monitoring progress. -- **Admin permissions**: admins can control who can edit the workflow and who can queue prompts, ensuring the right level of access for each team member. -- **Workflow backup**: in case of any mishap, you can reload an old backup. The node saves 5 workflows, each 60 seconds apart. - -
- -## Key Binds - -- **Activate chat**: press **`t`** -- **Show/hide users panel**: press **`LAlt + p`** -- **Show/hide backups panel**: press **`LAlt + o`** (for user with editor permission only) -- **Queue promt**: press **`CTRL+Enter`** (for user with queue permission only) - -
- -## Chat Commands - -- `/nick `: changes your nickname -- `/login account password`: this command is used to become admin. -- `/logout`: logout the admin. - -
- -# Node Installation - - - ### Installing Using `comfy-cli` - - `comfy node registry-install ComfyUI-Nexus` - - https://registry.comfy.org/publishers/daxcay/nodes/comfyui-nexus - - - ### Manual Method - - Go to your `ComfyUI\custom_nodes` and Run CMD. - - Copy and paste this command: `git clone https://github.com/daxcay/ComfyUI-Nexus.git` - - - ### Automatic Method with [Comfy Manager](https://github.com/ltdrdata/ComfyUI-Manager) - - Inside ComfyUI > Click the Manager Button on the side. - - Click `Custom Nodes Manager` and search for `ComfyUI-Nexus`, then install this node. - -
- - >[!IMPORTANT] - > #### **Restart ComfyUI before proceeding to next step** - -
- -# Server Setup - -
- - ### Knowing ComfyUI Port - - - Open Comfyui in your browser: - - ![image](https://github.com/user-attachments/assets/b430d5b7-dcb9-4a7f-948f-d257147b597a) - - - In your url tab, digits after colon (:) is your port. - - **Example:** - - ![image](https://github.com/user-attachments/assets/82ff2d9e-9eb6-4846-97c6-e3e321101fef) - - The port for the above URL will be **8188** - -
- - ### Admin Account Setup - - - Open the file `ComfyUI\nexus\admins.json` in notepad. - - ![image](https://github.com/user-attachments/assets/2c0f3e6b-8bea-4378-8390-1bb377514e0c) - - - **"epic"** is the account name and **"comfynexus"** is password - - Replace account and password with your own liking, but make sure not to use spaces. - - ### More than 1 Admin Account Setup - - - Open the file `ComfyUI\nexus\admins.json` in notepad. add another account(s) and password(s) like this. - - ![image](https://github.com/user-attachments/assets/35461ce1-b1a6-4ddb-8333-5dcf7d6acf55) - - - Make sure every password is different, and make sure not to use spaces. - -
- - ### Setting run_nvidia_gpu.bat (Local setup if not using Tunneling Software) - - - Open *run_nvidia_gpu.bat* and write the following and save it: - - ```.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --disable-auto-launch --enable-cors-header "*"``` - -
- - - For a host machine in another IP Address write and save it: - - ```.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --disable-auto-launch --enable-cors-header "*" --listen 0.0.0.0``` - -
- - >[!IMPORTANT] - >Don't leave the password as "comfynexus" as anyone can login. - - >[!NOTE] - >**DO NOT SHARE ACCOUNT AND PASSWORD IN PUBLIC** - - >[!IMPORTANT] - > #### Save file and **Restart ComfyUI before proceeding to next step** - -
- -# Hosting Setup - - - One can use Ngrok or any other tunneling software supporting http/https to host a comfyui server remotely. - - Also you can host locally over WiFi/Lan. - - ### Using Ngrok: - - - Go to this https://dashboard.ngrok.com/signup?ref=home-hero to sign up. - - After signing up and logging in, go to this https://dashboard.ngrok.com/get-started/setup/windows to set up ngrok. - - After installing and setting up ngrok, - - Run CMD and enter this command: `ngrok http ` - - ![Ngrok Output Example](https://github.com/user-attachments/assets/66f9b4a4-1d63-4756-8d57-64420fdc151a) - ![image](https://github.com/user-attachments/assets/e3ca3d23-a388-4879-8b45-23591a05833c) - - - **Forwarding** is the Remote URL, Share this URL with your peers. - -
- - ### Using Local IP - - - Open a cmd and write `ipconfig`. - - ![image](https://github.com/user-attachments/assets/56c4c17d-b1dc-40e1-acbc-1e62e8e15b70) - - - Now copy IPv4 address ad add comfy port to it. For example, if it's `http://192.168.1.45:`, the final URL will be: `http://192.168.1.45:5000` - - Share this URL with your peers. - -
- - >[!NOTE] - > **Ngrok and WiFi address might change if you restart the machine. Follow above steps again to get the new URL.** - -
- -## Permissions in ComfyUI-Nexus - -- **viewer**: default permission given to a person joining the server. -- **editor**: person having editor permission cad edit the workflow. -- **queue prompt**: person having queue permission can queue the workflow. -
- ->[!NOTE] -> Admin has all permissions by default. - -
- -## Real-Time Chat Window - -When you join ComfyUI for the first time, you will see this chat window in the top left corner: - -![Chat Message Example](https://github.com/user-attachments/assets/6b908ade-cd01-43d4-831c-6af2c6c461cf) - -
- -To chat, press `t`, then write the message and press 'Enter'. - -
- -### Chat Commands - -- `/nick `: changes your nickname -- `/login `: this command is used to become admin. **( account name and password saved in `admins.json` above )** -- `/logout`: logout the admin. - -
- -## User Panel - -To show/hide the user panel, press `LShift+ LAlt + p`. - -**For users, the user panel will look like this:** - -![User Panel Example](https://github.com/user-attachments/assets/eae8791c-40a8-48d6-b72d-f4f7875d1653) - -Users can perform the following actions on a joined user: - -![image](https://github.com/user-attachments/assets/94ae776c-b96e-4d3e-8cc3-f01ec9cb4ee2) - -- **mouse**: show/hide the mouse of other players. -- **spectate**: enable/disable spectate mode. Main use case: when you want to see or learn something from another user. - -**For admins, the user panel will look like this:** - -![Admin Panel Example](https://github.com/user-attachments/assets/0ce11918-4890-4202-a2d0-2df6f3a1fae0) - -Admins can perform the following actions on a joined user: - -![Admin Panel Actions Example](https://github.com/user-attachments/assets/ff147ca6-a51c-4eea-9e87-6c8db6322311) - -- **spectate**: enable/disable spectate mode. Main use case: when you want to see or learn something from another user. -- **editor**: give/revoke editor permission to/from that user. Anyone with this permission can edit the workflow. -- **queue**: give/revoke queue permission to/from that user. Anyone with this permission can queue the workflow. -- **mouse**: show/hide the mouse of other players. - -
- -## Backup Panel (For Admins and Editors Only) - -To show/hide the backup panel, press `LShift + LAlt + o`. - -**The backup panel looks like this:** - -## OLD -![Backup Panel Example](https://github.com/user-attachments/assets/27af5386-b848-4081-a88d-e8d4967a72f0) - -## NEW -![image](https://github.com/user-attachments/assets/423c9e23-b13a-4b50-998c-712ec7f08f51) - -- **load**: load the backup on ComfyUI. If the admin presses it, it will load for all users. - -
- -Backups are now divided into **'Short Term'** and **'Long Term'** - -**Short Term**: These are only 5 backups and are saved 60 seconds apart. - -**Long Term**: These backups are created every reload and they are never overwritten. - -> Backups are saved 60 seconds apart. To load a workflow dragged by an admin, the admin will have to wait 60 seconds to let the server make a backup, then load it for all users. - -
- -## Inspiration - -- Greatly Inspired by https://multitheftauto.com/ a GTA:SA multiplayer mod I spent years playing ❤️. - -## Future Updates - -- Based on feedback, I will add/update features. -- Multi-room collaboration. -- Users can set their own color for names and mouse cursors. - -
- -### Daxton Caylor - ComfyUI Node Developer - - - ### Contact - - **Email** - daxtoncaylor+Github@gmail.com - - **Discord Server**: https://discord.gg/UyGkJycvyW - - - ### Support - - **Patreon**: https://patreon.com/daxtoncaylor - - **Buy me a coffee**: https://buymeacoffee.com/daxtoncaylor +| | | +|---|---| +| [Installing](docs/install.md) | Custom node, Docker/compose, first-run setup, upgrading from Nexus | +| [Sharing workflows](docs/sharing.md) | Rooms, saved vs unsaved tabs, stop sharing, snapshots, follow | +| [Accounts and permissions](docs/accounts.md) | Edit, Queue, Admin, renaming, what viewers can do | +| [API access](docs/api.md) | API keys, websockets, trusted IPs, other apps such as Open WebUI | +| [Settings](docs/settings.md) | Panel settings, ComfyUI settings, every key in `config.json` | +| [Reverse proxy](docs/reverse-proxy.md) | Nginx Proxy Manager, plain nginx, HTTPS | +| [Security](docs/security.md) | How passwords, sessions and keys are protected | +| [Changelog](CHANGELOG.md) | What changed, and when | +## Why this exists +I run one ComfyUI box for several people. [ComfyUI-Nexus](https://github.com/daxcay/ComfyUI-Nexus) had the right idea, but it was written for the old UI: + +- it hid menus with CSS and monkeypatched litegraph internals that no longer exist +- anyone could become admin with a shared password typed into chat +- everybody worked on one canvas, and opening ComfyUI wiped your own workflow + +## TODO + +- [x] Login page, JWT sessions, first-run admin setup +- [x] Per-user API keys +- [x] Every workflow shared, per-workflow snapshots +- [x] Cursors, selections, follow mode +- [x] Chat with badge, blink and sound +- [x] Server monitor with floating widget +- [x] Conflict-free node ids when two people add nodes at the same instant +- [x] Per-workflow access lists (share with specific people) +- [ ] Publish to the Comfy registry diff --git a/__init__.py b/__init__.py index a26d61e..cb681d7 100644 --- a/__init__.py +++ b/__init__.py @@ -1,469 +1,31 @@ import logging -import json import os -import shutil -import datetime -import time -import uuid -from aiohttp import web -from server import PromptServer + import folder_paths +from server import PromptServer -from .classes.WebSocketManager import WebSocketManager - -DATA_FOLDER = f"{folder_paths.base_path}/nexus" - -PERMISSIONS_FILE = os.path.join(DATA_FOLDER, 'permissions.json') -ADMINS_FILE = os.path.join(DATA_FOLDER, 'admins.json') -TOKENS_FILE = os.path.join(DATA_FOLDER, 'tokens.json') -NAMES_FILE = os.path.join(DATA_FOLDER, 'names.json') - -SERVER_FILE = os.path.join(DATA_FOLDER, 'server.json') -WORKFLOWS_DIR = os.path.join(DATA_FOLDER, 'workflows') - -if not os.path.exists(DATA_FOLDER): - os.makedirs(DATA_FOLDER) - -if not os.path.exists(ADMINS_FILE): - with open(ADMINS_FILE, 'w') as f: - admins_data = {'epic': 'comfynexus'} - json.dump(admins_data, f, indent=4) - -for file_path in [PERMISSIONS_FILE, ADMINS_FILE, TOKENS_FILE, NAMES_FILE]: - if not os.path.exists(file_path): - with open(file_path, 'w') as f: - json.dump({}, f) - -if not os.path.exists(WORKFLOWS_DIR): - os.makedirs(WORKFLOWS_DIR) - -if not os.path.exists(SERVER_FILE): - with open(SERVER_FILE, 'w') as f: - default_config = { - "name": "Default Nexus Server", - "max_user": 15, - "config": { - "last_saved_user_id": "id" - } - } - json.dump(default_config, f, indent=4) - - -if hasattr(PromptServer, 'instance'): - server = PromptServer.instance - routes = web.RouteTableDef() - socket_manager = WebSocketManager() - - async def broadcast_message(message, sender): - for id, socket in socket_manager.sockets.items(): - if id != sender: - try: - await socket.send_str(json.dumps(message)) - except Exception as e: - logging.error(f"[ComfyUI-Nexus]: Error sending message to {id}: {e}") - - async def broadcast_message_except(message, excluder): - for id, socket in socket_manager.sockets.items(): - if id != excluder: - try: - await socket.send_str(json.dumps(message)) - except Exception as e: - logging.error(f"[ComfyUI-Nexus]: Error sending message to {id}: {e}") - - async def broadcast_message_all(message): - for id, socket in socket_manager.sockets.items(): - try: - await socket.send_str(json.dumps(message)) - except Exception as e: - logging.error(f"[ComfyUI-Nexus]: Error sending message to {id}: {e}") - - async def send_message(message, sender, receiver): - for id, socket in socket_manager.sockets.items(): - if id == receiver and sender != receiver: - try: - await socket.send_str(json.dumps(message)) - except Exception as e: - logging.error(f"[ComfyUI-Nexus]: Error sending message to {id}: {e}") - - @routes.get("/nexus") - async def websocket_handler(request): - id = request.query.get("id") - socket = web.WebSocketResponse() - await socket.prepare(request) - - socket_manager.set(id, socket) - logging.info(f"[ComfyUI-Nexus]: Socket {id} connected") - - try: - async for msg in socket: - if msg.type == web.WSMsgType.TEXT: - - data = json.loads(msg.data) - event_name = data.get('name') - event_data = data.get('data') - - sender = data.get("from") - all = data.get('all') - receiver = data.get('receiver') - exclude = data.get('exclude') - - # logging.info(f"[ComfyUI-Nexus]: Received {sender} {all} {receiver} {exclude}") - - if event_name == "chat-join": - user_id = data.get("from") - user_name = event_data.get("name") - - with open(NAMES_FILE, 'r+') as f: - names = json.load(f) - names[user_id] = user_name - f.seek(0) - json.dump(names, f, indent=4) - f.truncate() - - if event_name == "nick": - user_id = data.get("from") - user_name = event_data.get("new_name") - - with open(NAMES_FILE, 'r+') as f: - names = json.load(f) - names[user_id] = user_name - f.seek(0) - json.dump(names, f, indent=4) - f.truncate() - - if all: - await broadcast_message_all(data) - elif receiver: - await send_message(data, sender, receiver) - elif exclude: - await broadcast_message_except(data, exclude) - else: - await broadcast_message(data, sender) - - elif msg.type == web.WSMsgType.ERROR: - logging.error(f"[ComfyUI-Nexus]: WebSocket error: {msg.exception()}") - except Exception as e: - logging.error(f"[ComfyUI-Nexus]: WebSocket error: {e}") - finally: - logging.info(f"[ComfyUI-Nexus]: Socket {id} disconnected") - socket_manager.delete(id) - - return socket - - @routes.post("/nexus/workflows") - async def get_user_specific_workflows(request): - - user_id = (await request.json()).get('user_id') - if not user_id: - return web.json_response({'error': 'User ID required'}, status=400) - - with open(PERMISSIONS_FILE, 'r') as f: - permissions = json.load(f) - - user_permissions = permissions.get(user_id, {}) - if not user_permissions.get('editor', False): - return web.json_response({'error': 'Forbidden'}, status=403) - - user_workflow_dir = os.path.join(WORKFLOWS_DIR, user_id) - if not os.path.exists(user_workflow_dir): - return web.json_response({'error': 'User not found'}, status=404) - - workflows = {} - for file_name in sorted([f for f in os.listdir(user_workflow_dir) if f.isdigit()], key=int): - file_path = os.path.join(user_workflow_dir, file_name) - with open(file_path, 'r') as f: - workflows[file_name] = json.load(f) - - for file_name in sorted([f for f in os.listdir(user_workflow_dir) if not f.isdigit()]): - file_path = os.path.join(user_workflow_dir, file_name) - with open(file_path, 'r') as f: - workflows[file_name] = json.load(f) - - return web.json_response(workflows) - - @routes.post("/nexus/workflows/meta") - async def get_user_specific_workflows_meta(request): - - user_id = (await request.json()).get('user_id') - if not user_id: - return web.json_response({'error': 'User ID required'}, status=400) - with open(PERMISSIONS_FILE, 'r') as f: - permissions = json.load(f) - - user_permissions = permissions.get(user_id, {}) - if not user_permissions.get('editor', False): - return web.json_response({'error': 'Forbidden'}, status=403) - - user_workflow_dir = os.path.join(WORKFLOWS_DIR, user_id) - if not os.path.exists(user_workflow_dir): - return web.json_response({'error': 'User not found'}, status=404) - - meta_data = [] - for file_name in sorted([f for f in os.listdir(user_workflow_dir) if f.isdigit()], key=int): - file_path = os.path.join(user_workflow_dir, file_name) - last_modified_time = os.path.getmtime(file_path) - last_modified_readable = datetime.datetime.fromtimestamp(last_modified_time).strftime('%Y-%m-%d %H:%M:%S') - - meta_data.append({ - 'file_name': file_name, - 'last_saved': last_modified_readable - }) - - for file_name in sorted([f for f in os.listdir(user_workflow_dir) if not f.isdigit()]): - file_path = os.path.join(user_workflow_dir, file_name) - last_modified_time = os.path.getmtime(file_path) - last_modified_readable = datetime.datetime.fromtimestamp(last_modified_time).strftime('%Y-%m-%d %H:%M:%S') - - meta_data.append({ - 'file_name': file_name, - 'last_saved': last_modified_readable - }) - - return web.json_response(meta_data) - - @routes.post("/nexus/workflows/{id}") - async def get_user_specific_workflow(request): - user_id = (await request.json()).get('user_id') - workflow_id = request.match_info.get('id') - - if not user_id: - return web.json_response({'error': 'User ID required'}, status=400) - if not workflow_id: - return web.json_response({'error': 'Workflow ID required'}, status=400) - - with open(PERMISSIONS_FILE, 'r') as f: - permissions = json.load(f) - - user_permissions = permissions.get(user_id, {}) - if not user_permissions.get('editor', False): - return web.json_response({'error': 'Forbidden'}, status=403) - - user_workflow_dir = os.path.join(WORKFLOWS_DIR, user_id) - if not os.path.exists(user_workflow_dir): - return web.json_response({'error': 'User not found'}, status=404) - - workflow_file_path = os.path.join(user_workflow_dir, workflow_id) - if not os.path.exists(workflow_file_path): - return web.json_response({'error': 'Workflow not found'}, status=404) - - with open(workflow_file_path, 'r') as f: - workflow = json.load(f) - - return web.json_response(workflow) - - @routes.post("/nexus/workflow") - async def post_workflow(request): - user_id = (await request.json()).get('user_id') - if not user_id: - return web.json_response({'error': 'User ID required'}, status=400) - - with open(PERMISSIONS_FILE, 'r') as f: - permissions = json.load(f) - - user_permissions = permissions.get(user_id, {}) - if not user_permissions.get('editor', False): - return web.json_response({'error': 'Forbidden'}, status=403) - - new_data = await request.json() - - user_workflow_dir = os.path.join(WORKFLOWS_DIR, user_id) - if not os.path.exists(user_workflow_dir): - os.makedirs(user_workflow_dir) - - existing_files = sorted([f for f in os.listdir(user_workflow_dir) if f.isdigit()], key=int) - - if len(existing_files) == 5: - os.remove(os.path.join(user_workflow_dir, existing_files[0])) - existing_files.pop(0) - - for i, file_name in enumerate(existing_files): - new_name = str(i + 1) - shutil.move(os.path.join(user_workflow_dir, file_name), os.path.join(user_workflow_dir, new_name)) - - new_file_path = os.path.join(user_workflow_dir, '5') - with open(new_file_path, 'w') as f: - json.dump(new_data, f, indent=4) - - # Update the server.json file with the last saved user_id - with open(SERVER_FILE, 'r+') as f: - server_config = json.load(f) - server_config['config']['last_saved_user_id'] = user_id - f.seek(0) - json.dump(server_config, f, indent=4) - f.truncate() - - return web.json_response({'status': 'success'}, status=200) - - @routes.post("/nexus/workflow/backup") - async def post_workflow(request): - - user_id = (await request.json()).get('user_id') - if not user_id: - return web.json_response({'error': 'User ID required'}, status=400) - - with open(PERMISSIONS_FILE, 'r') as f: - permissions = json.load(f) - - user_permissions = permissions.get(user_id, {}) - if not user_permissions.get('editor', False): - return web.json_response({'error': 'Forbidden'}, status=403) - - new_data = await request.json() - - user_workflow_dir = os.path.join(WORKFLOWS_DIR, user_id) - if not os.path.exists(user_workflow_dir): - os.makedirs(user_workflow_dir) - - new_file_path = os.path.join(user_workflow_dir, f'lt_{round(time.time() * 1000)}') - with open(new_file_path, 'w') as f: - json.dump(new_data, f, indent=4) - - return web.json_response({'status': 'success'}, status=200) - - @routes.get("/nexus/workflow") - async def get_latest_workflow(request): - with open(SERVER_FILE, 'r') as f: - server_config = json.load(f) - - last_saved_user_id = server_config['config'].get('last_saved_user_id') - if not last_saved_user_id: - return web.json_response({'error': 'No workflow saved'}, status=404) - - user_workflow_dir = os.path.join(WORKFLOWS_DIR, last_saved_user_id) - if not os.path.exists(user_workflow_dir): - return web.json_response({'error': 'User not found'}, status=404) - - last_file_path = os.path.join(user_workflow_dir, '5') - if not os.path.exists(last_file_path): - return web.json_response({'error': 'Workflow not found'}, status=404) - - with open(last_file_path, 'r') as f: - workflow_data = json.load(f) - - return web.json_response(workflow_data) - - @routes.get("/nexus/permission/{id}") - async def get_permission_by_id(request): - user_id = request.match_info['id'] - with open(PERMISSIONS_FILE, 'r') as f: - data = json.load(f) - user_permission = data.get(user_id) - if user_permission: - return web.json_response(user_permission) - else: - with open(PERMISSIONS_FILE, 'r+') as f: - permissions = json.load(f) - permissions[user_id] = {'queue': False, 'editor': False, 'admin': False} - f.seek(0) - json.dump(permissions, f) - f.truncate() - user_permission = permissions[user_id] - return web.json_response(user_permission) - - @routes.post("/nexus/permission/{id}") - async def post_permission_by_id(request): - user_id = request.match_info['id'] - data = await request.json() - admin_id = data.get('admin_id') - if not admin_id: - return web.json_response({'error': 'Admin ID required'}, status=400) - - token = request.headers.get('Authorization') - if not token: - return web.json_response({'error': 'Authorization token required'}, status=400) - - with open(TOKENS_FILE, 'r') as f: - tokens = json.load(f) - - if tokens.get(token) != admin_id: - return web.json_response({'error': 'Invalid or expired token'}, status=403) - - new_permission = data.get('data') - if not new_permission: - return web.json_response({'error': 'Permission data required'}, status=400) - - with open(PERMISSIONS_FILE, 'r+') as f: - permissions = json.load(f) - - if not permissions.get(admin_id, {}).get('admin', False): - return web.json_response({'error': 'Forbidden'}, status=403) - - # Merge the new permissions with the existing ones - existing_permissions = permissions.get(user_id, {}) - existing_permissions.update(new_permission) - - # Save the updated permissions - permissions[user_id] = existing_permissions - f.seek(0) - json.dump(permissions, f, indent=4) - f.truncate() - - return web.json_response({'status': 'success'}, status=200) - - @routes.post("/nexus/login") - async def post_login(request): - - credentials = await request.json() - user_id = credentials.get('uuid') - account = credentials.get('account') - password = credentials.get('password') - - with open(ADMINS_FILE, 'r') as f: - admins = json.load(f) - - if admins.get(account) == password: - token = str(uuid.uuid4()) - - with open(TOKENS_FILE, 'r+') as f: - tokens = json.load(f) - tokens[token] = user_id - f.seek(0) - json.dump(tokens, f, indent=4) - f.truncate() - - with open(PERMISSIONS_FILE, 'r+') as f: - permissions = json.load(f) - permissions[user_id] = {'editor': True, 'admin': True} - f.seek(0) - json.dump(permissions, f, indent=4) - f.truncate() - - return web.json_response({'token': token}, status=200) - - else: - return web.json_response({'error': 'Invalid credentials'}, status=401) - - @routes.post("/nexus/verify") - async def post_verify(request): - credentials = await request.json() - token = credentials.get('token') - - with open(TOKENS_FILE, 'r') as f: - tokens = json.load(f) - - user_id = tokens.get(token) - if user_id: - with open(PERMISSIONS_FILE, 'r') as f: - permissions = json.load(f) - - user_permissions = permissions.get(user_id, {}) - return web.json_response({'user_id': user_id, 'permissions': user_permissions}, status=200) - else: - return web.json_response({'error': 'Invalid token'}, status=401) - - @routes.get("/nexus/name/{id}") - async def get_name_by_id(request): - user_id = request.match_info['id'] - with open(NAMES_FILE, 'r') as f: - names = json.load(f) - user_name = names.get(user_id) - if user_name: - return web.json_response({'name': user_name}) - else: - return web.json_response({'error': 'User not found'}, status=404) - - server.app.add_routes(routes) +from .rigshare_core.store import Store +from .rigshare_core.hub import Hub +from .rigshare_core import routes NODE_CLASS_MAPPINGS = {} NODE_DISPLAY_NAME_MAPPINGS = {} WEB_DIRECTORY = "./web" + + +def data_folder(): + return os.environ.get("RIGSHARE_DATA_DIR") or os.path.join(folder_paths.base_path, "rigshare") + + +if hasattr(PromptServer, "instance"): + try: + folder = data_folder() + os.makedirs(folder, exist_ok=True) + store = Store(folder) + hub = Hub(store, PromptServer.instance) + routes.setup(PromptServer.instance, store, hub) + logging.info(f"[RigShare] ready, data in {folder}") + except Exception as e: + logging.exception(f"[RigShare] failed to start: {e}") + +__all__ = ["NODE_CLASS_MAPPINGS", "NODE_DISPLAY_NAME_MAPPINGS", "WEB_DIRECTORY"] diff --git a/classes/WebSocketManager.py b/classes/WebSocketManager.py deleted file mode 100644 index 61e58b0..0000000 --- a/classes/WebSocketManager.py +++ /dev/null @@ -1,13 +0,0 @@ -class WebSocketManager: - def __init__(self): - self.sockets = {} - - def get(self, id): - return self.sockets.get(id) - - def set(self, id, ws): - self.sockets[id] = ws - - def delete(self, id): - if id in self.sockets: - del self.sockets[id] diff --git a/docs/accounts.md b/docs/accounts.md new file mode 100644 index 0000000..de2d675 --- /dev/null +++ b/docs/accounts.md @@ -0,0 +1,43 @@ +# Accounts and permissions + +## Permissions + +| Permission | Allows | +|---|---| +| *(none)*, a viewer | Watch shared workflows, chat, follow people, open snapshots as private copies | +| **Edit** | Change shared workflows, save or rename workflow files, take and restore snapshots, upload files | +| **Queue** | Queue prompts, interrupt, free memory | +| **Manager** | Open ComfyUI Manager: install, update or remove custom nodes and models, snapshots, restart | +| **Admin** | Everything, plus deleting workflow files, removing shared workflows, accounts and server settings | + +Queueing, uploads, and saving or deleting workflow files are checked by the server too, when *Enforce permissions on the ComfyUI API* is on (the default). A viewer cannot get around it with a script. + +## Managing accounts + +Admins use **Admin → Accounts** in the RigShare panel: + +- **New account**: username, optional display name, password, permissions +- toggle **Edit / Queue / Manager / Admin** per account; the change applies immediately, with no re-login needed +- 🪪 change the display name shown to others +- ✏️ change the login username, your own included. Sessions and API keys keep working. +- 🔑 set a new password, which signs that user out everywhere +- 🗑 delete the account + +Admins can also toggle Edit, Queue and Manager straight from the **People** tab. + +A shared workflow can also be restricted to chosen people, with *Can view* or *Can edit* each. See [Who can open it](sharing.md#who-can-open-it). + +The last admin cannot be demoted or deleted. + +## Your own account + +Click your avatar at the top of the panel: + +- change your display name +- change your password; your other sessions are signed out, this one stays signed in +- create and revoke [API keys](api.md) +- log out + +## Guests + +With **Require login** off, *Allow guests* lets people in without an account. They appear as *Guest-xxxx* and get the guest permissions from `config.json`. That suits a trusted LAN only; the default is to require a login. diff --git a/docs/api.md b/docs/api.md new file mode 100644 index 0000000..0f131bd --- /dev/null +++ b/docs/api.md @@ -0,0 +1,55 @@ +# API access + +With RigShare installed, the ComfyUI API requires authentication too. Calls without it get: + +```json +{"error": "RigShare: login required. API clients: send 'Authorization: Bearer '."} +``` + +## API keys + +Create one under your avatar → **API keys**. The key (`rs_…`) is shown once, so copy it then. It acts with your permissions: a key from an account without *Queue* cannot queue. + +Send it as a header: + +```bash +curl -H "Authorization: Bearer rs_yourkey" http://your-server:8188/api/queue + +curl -X POST http://your-server:8188/api/prompt \ + -H "Authorization: Bearer rs_yourkey" \ + -H "Content-Type: application/json" \ + -d @prompt.json +``` + +`X-RigShare-Token: rs_yourkey` works too. For websockets, where some clients cannot set headers, add it to the URL: + +``` +ws://your-server:8188/ws?clientId=my-script&token=rs_yourkey +``` + +The key list shows when each key was last used. Revoke keys you no longer need. + +## Other apps + +Apps that talk to ComfyUI need a key once RigShare is installed. Recent versions of Open WebUI, for example, have a *ComfyUI API Key* field in their image settings and send it as `Authorization: Bearer`. Create a key for it, ideally on an account with only the *Queue* permission. + +## Trusted IPs + +Requests from **trusted IPs** skip the login and the permission checks entirely. The default is `127.0.0.1` and `::1`. You can add addresses or networks (`172.17.0.0/16`) under **Admin → Server settings**, but prefer API keys: a trusted IP is trusted for everything. + +## RigShare's own endpoints + +The panel uses these; they take the same session cookie or API key. + +| Endpoint | | +|---|---| +| `GET /rigshare/api/status` | Server name and whether setup is needed (public) | +| `GET /rigshare/api/me` | The current account | +| `GET/POST /rigshare/api/me/keys`, `DELETE /rigshare/api/me/keys/{id}` | Your API keys | +| `GET /rigshare/api/rooms` | Shared workflows | +| `GET /rigshare/api/room?key=…` | One room, with its workflow JSON | +| `GET /rigshare/api/snapshots?room=…` | History of a room | +| `GET/PUT /rigshare/api/room/acl?key=…` | Who can open a room (owner or admin) | +| `GET /rigshare/api/people` | Accounts that can be added to an access list | +| `GET/POST/PATCH/DELETE /rigshare/api/users…` | Accounts (admin) | +| `GET/PATCH /rigshare/api/config` | Server settings (admin) | diff --git a/docs/images/access.png b/docs/images/access.png new file mode 100644 index 0000000000000000000000000000000000000000..373ecf493f68cfcdfc914ce02b411ff64812ed7e GIT binary patch literal 125428 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�k7(goe!hjqBF(B*c>Xv>%ly=ab&uaj)L-5 z!>+Qgh78OK>v#{g6-3Guu`$06+FspG+_X4kg>=sQ{dlQYAHUcZ+Bn}fO(C_hS$KjF zp!ojou_=W%KkpQH9-6O{i~ohWCRrcC@BiOdUwH$(Bl*I$cM1a{4DX-HCUm#i$X z;@u*#9+-p&>&h)3pu{a5yPUMQpMh`XIgd|;-f61cB=1&c8iT5PTMws(R+d3PY> zIG~rFj1#QzVlHiU01Zl{+i#VKKx2~@j)@Zvjqr*(MegLjL%{*SF0XiTyu5Jlbde4T z51Lp#WuqQzh)dDNmTfS}{#L>vt9u`~cJCjQ z&T5uI$Ky198+Kd4X3fn}d}!yuy)q19>`$^(PJ2zd`OW@{hZokr2bK&0X9(^<*;~Ey zWj#aY*wC6DK#!>T15`rF3SHyw-fDj`yZ`Sk0Rko~aeQ( z`3!e6{QrTRJ0~f_d9_D|`3WQo%_nHFKa~2}uFApEU$x9CEit*}s^Q5d-)gy4ezKmEznRzF_JWi0$eti{3Fy!vVn|zow zgT*i&qxoyKeGOaf)YHTblT31gTOrpC^R?_GazN7!b^3*lW8W)|6h*l%%otA9HyzChOgc?)~3zlm8#M(*F;?{=eZ$AEFHY z6g;nL@8EKBx~q`E#f#=pEx3K!zr8IhD10{!bhDgL#oV%P<*aH?H$v3E=Sq~?&E1U% zS?^O~0?-2oxR}T{vGF71pBH*RV`jF6U-PV(mu&j*xDHlIhQ9~wF>~$&OaF-B12{$` zwzs!8oKidqUH2qrlo}iJ^01-D_d`-sQ`Htrt7*MVZ1;u^+0XXi^>(+k(Eb7S13^P} z=uPHmCxZX$A*ZzW%h3!H5|XR4o9o3O#id(@wD%@$w0su%DJk`Zg*2k~Kxax`9y|S# z`-iTJ;jfDfXHx3wX8~xTvU2^}vpbGv3Q`i1ue=?Ni!@6`4E|_9KUAI-=`=i`aru2v z+7X_{*<>5lk>XHYS66qv5O8(&s3r3qlU^E_C4_-mXOEF0hUWLx^k+=f#ClE_CcALy z-p+)#{_2lraWdbU7C2m4AyUp|{yu7Yc4tMUDLf$ zloqV7BgbVRf6*@J z@QzP*$2`Y-98SgB(^@;rv9ZK^| zaICTG7(g~&>iOTTek~WF^fSWV6$ff+ z^rU{%(#e_{4^Wr{O;}Zg%B1a{YCT@Y<4(FcJ(u>ds+XUNN~M{eZQyYi5W3Mc5~~wS zhah@-V@I6OIAM5`pTLCg1M&nCvPQRay8A`q-~{`zntdjwyy9hL{oZVlGbcSZzTN{j zc;U2KC(;{au^x47v_NEk%$IsdFy`j;v-=$%Z;{rU5{9Vh*= zk)bqS&o?rIR`7F8k;*ewzAGOT4Bv`t5!=Y5971oGs8AVN{`v~IjE0KJyLUP&DwxhE z%Uac}L1LmA!zU+vZfKxI3@Drv4KlW5zKb*cN6~Mb2~y!h|0!7q`X+pD`L zW7-++pClF4{}{b)dRlU5jWIbbU{@{ZkOqS(cMB*hr-ihug6+UXhc*AzbQa;{(u$GH za6j1*;oi4K50K9IdyS6o{`FqbNrO6A>YOVyGhCGCrOniUI|?h6W}Wc8XxBaK^Uu-Z zpU|T;KU7rIgRX%!oa~4MQ`0juoqKzMG)zojb7~=_=i0~#zP}SV#{me^nM)aU0+qomux7{Xsztud zSeAl(Va*aja5zy=oh6XZI49EeK5TL~y@_Mfj7|PHPK*j{Zif#Bm0jBmUPz*b z(Gb4STJp(!mvG6lk_lW?pMxsTXzxT4k`)XeI6X1xN3DZWG+LiN9&RMa^J><^!>R=P zIj8bl@h9~3y52%y3PY4+$$u>>^)HWi>(|jEyQop9sw`xFq>ARMFfcxutvj&A7&o@D zF*McFHm=AiR?HCAeE(j;#f6kSncS{=jJrZQ1dC1AOkV!T^=UttD3FK1*Z-;}jWm9%XD-i`r*8|T>v^S*A5NW1%tU`&`u5o6n0xP?eWKL$tIk;b4XNAIfyR7l!< z(o%8k2ZyBPzn3>#3TY{8X)&Nhjbz1jKgk4yX?Kmk4^iVC$0p;^(fijLIV@d2bu3dn z;H>@jE1!5P@Zal-wMzrS(EGhbUNw!hB({-{pV8Jbqi&DAzMJcDnN5Eo#XSQ)n;Mr# z9FV~zdLM;lh}nNmDLiqj!C7Vgnj{o z^zv?zHdSO9aQOMw`U;9-gdxAW$MoVF+JgM?pf?^Z&QBOOd zF@H-QR0|drrAuT5`a3-VX%Fb_UW89?95T={h1b|+e5*@vI}?9kg~6Hy=a<~^d8Avc5ge`?_)n9 zNvMvb+3m3|{>fO$)=tue6gu=zraj&ePRSDt)Cm07bUyOEnLOe@fktM@^uJru{|#^c z*EI)@vmQ=OO^v>H`E6Us65?X;nXay`ARQZ*&-Hm%*A*7l0eDh!TQ#A8Q{^Y|fpGX| zri@4m`+Mx~Z=GFSvJ{^t@z^#S-yJy+ZKSIQfsW&MxzH=nam@mfY5#p?e^wu4*0@}iHXO@$G(Ug^_%ou!&I48Rf0Oe^eFW;U2QF)`6Gn8NS8*%m_N z0nDvwDY*XNDezi*c_b2hF=WEzlT59X+*83v-g*;E8rmkrEZ26SM z&CQ+_2Vfci|73`=vT`J~fXnT*`)E%bi>9FOtrs?6 zS)YrQxU)T}hT|9DrYlX&i<9xW99#P)Xl}3JYG7nU<;0=uYA{tu=JcnqXDq*AOW?(k zNIbW7O?5T-_qX5QW|EVWOGVNMId5`u=A#@g1k*-PoWv$1kcYM-L!dyIxS`7JU~wQt zK)=Ss#%6cUH%-v%{6)1abEHPEprGKaFTz`-5eXd~9aXez1m$lgw<)Wp?FF%72;|R&(P3th|V2>qpz>;uuLEFHuKP}ZlN{! z;`~^|X?=eeUYj)2Bd{lnhlxp-_9mm8uQs&bv`DwMqpvS)=25sLnx8}{DXYedv@o#| zWa8M`+G%zDg1yn+)9f^t`ikHbI)kfITFD5iT>f}m^wz(B?N2sG)zs7kTyJyuSLb{i z+q=6%=rBhe$#FkrW(EZZ*Ir_GhErCWbQ@V(TAm1iU%#Sz!0&`fo@~DIxj&KXXem-; z)uH;t)_|hFr^n*ra0LY&SEItpT~(E&q2S+SM|=X%@s1GbX}C z7pMOPdY4^yiAhNlSZPU#eA+E249?e(moxx3%~uT+IeAa`HOlSMT4y*VAj*-2SlgIXX)&slx5Rs3fSos_Oi2 zhSa;g^UjN={?N^{PH4KHHl^ti%cB6%Nk%2w*}ou`J-t(V-wQAQ6rIC;5{T6U1a>v_c-+ z;2`FGXC~%~j*b>V)M*Q)YLr{7^d)eBHu&ghCB*GbA`X|4v2l0s0NAKcY(YUm`aab) zz4*1Msd^R`o8$Vv8T@o}KDFjERrV^+Mw^-pmb)s!%4O>}`V0&Vm~c|j_?R6mw&!Ih zB_@IcD5`6_Dn;x4=59@|JHjdFyeq4J{CK76H$F9$wIqcLSy@}pdG6`5v-b`R=+(MV zS04fOEOJ`~8yt*$n~6`!y?uRg#46?XpJrv1mXm}3G0uLrc=t^sqG_t!5*HUYUN$Qu zgUB5L^p>-e6GX?zxaNzv5+zB9HjFJTbyQTmCwh;Yn>#})QrK}dtV4}P(5={{J9}q$ z{}~(GT=~}8QfK7vxeFk;oFvZea>*LqD-PgvR9ClKdQM0@`n%Uit28)#wVEV{kB?ti zSP0SGJ1!|Nw|*eLwY9mKhi@P%>i_H-8y}w`z&!IEISoyN)uh7-!0Y(p8r0Zt@i{{F%E+nvnQCe)YgD-9vG8K`rJ1_1HwM{y(*Bh zohUY}_n1sfNI1CgA`O*TtyX?Y%%12aw6eCACg}cd>8X(W*Ei^9R@~Zj>&{231#5$8 zF>*%USEoX*yW5#Eakm$1VIC&9ki2}va$x$S==H_+s5qM%xK!U*1zAFonwHk(x>7*l zT3sE8-QRL2^_#GB9nJ#%0L<$Yh>Ysp4t^foh#3-+8*gkmLQQRL-}+5aUO78EtErhT ztvEV3JbU&GSV6!nazXrIVmFge;Z;)7*)YW%pUq5Fq==r0rRDEbmN{J@v^))^IXT7P zq)JHzcbj|-J{U@G&C1FGC*~1m%gl_|Y@IuY*?_F9?DfSO+;w;6VcL6hb7>m?VbDz# z7)Z)J)l6^t{ymm6mSZEr=RqRP`YXk!Dqdz_&C$)?^y1>-byL2}T|Su+KOsH`#s^qv z5Gw#MC_g_R4Tm(xtl5=bQc`mHH5z+DeoYMp)Y8(DD(rpPj6sWv9>K-Q`5047N~#kE zb6gvs4kn;wz);VV)B=qrKY#w@+5G%(YxA?y6`#s7C@;zL@bG~9XOImtGczGNVr*t+ z=9A-NCnqPB$(2nOR#sIxOEx{sbmq6^;q;xh4ZtW(+cwraZLqr|_7_??KLxcgKT{Mt zCE*TkHsEZ4O-#gF!M?tE4EkBV>z%?~=e*D0uA-u%u&jDmrL8_ic!$xSEcuknb9-40 z4GnvHtm{{BTpgZ)XB{2QNh(f^p5tzBPk6}Q`8|!o~@fW~HBQ2=~q-m30?&|b}L5hpJb85bq|Mg4mW3SU|6&YXe6%u5xKoh=2%FWKQ(!tt$h36Gk;ta?6wNs5JyEp8^N zLAVxt`s2r_a{wep<@F{S=I7z5Bw<$b(^?y^-D{BH&i)=7`!(qBcU~UYlYa=()KsBn zsaE~wM7|~m3bG_{dmy*d?Ma}lr~gm_t=899cGCO%-MA)8Y;bV!vj!||Y>OFE%mQX6 zv8>TbJuR(74HgDt9bd%5Jh28~7sz>bcVf-n@vyTe^4Jz`z5sIcT=z0JD2NXN{FFc{ zqJuro_YH@hYRWxVhXAmr^3(#FKiw&AX%Q=-b^@wYCeA0X;d(eT%?4hh$}Gk5>{;Hg zU#JjJZKSMP>q|=+w>i1F8)tLAh<38HB~R>!fyFDh&YvS927pDZmce0TFw$*3jPSRCY7MBEf z5j~=QboePWv{wX?T$rD)@|1YG!rHR`SPr;7zy_KWcwq$3f>T%ZkdOic}qp${s5 zH1d@~X(=LNPEJmQyf0OZj2=O}e0&FPf+g>nfz1V`_|B=Q@wvGyYRqC}WCSpa&U0{2 zfX_14GgembCS6H^uk2<&~9lmA1CP^24$fzV}dQYil3&@VOrnH)Q|k)I3~RSkTkc1117IET~<+ z6c_IUKQ=&1`UY{mc4XUd(E*2tClkENFp>1}xjo$x7`fWeS{g{HRnC&NcX2_7goFTM ziUGOp&o9WNx!qm|fe9oeBt*A9=`-H%H7VDJe@ZVtQA;`X`E|SNYu31P4puG;0C{>Qs;WkZ)Ait-b+Z!< z<&18IvNeQ-ggi{kQG8lb>gaQQ&^a_T#J$r5Twm9{SzQf{H!f2>D~DukdMaua6_2Mw zh#1uhbx4Sa=%e3s!Jo3Q%v3wBrTN}svGuB7?fLS|)Ho+4|9P9M0^Gn<5#QSYg4N&1 zGr+UU$$6TtnDe$iu6IQ&eIM8>iBMsNYz?T~s1*2v)$T`X($ZKLTEy5A($d|)#C0d| zmpj~H;SJ}Dz2%nU?d|RAYHDAZTtSoQ0HB0%?7{9$qlAv%E!MzBESSN*LXP6_`NP0xxB)V zji^zN3UQ<#>`N}96O~``#039~%=h0q49Et1w>uYFznQO*N5dB4ae7HZar}0BraEJV z@AKpP-N5AA!fV1i!Kqh_#2Yw9qaWEDJ|{{q9Qhsh;{Z2(6GU}X8{kU+KpwIE%djyg-P8j6y_g*}w+}xY{|8bMJ<8zvv+_T=ENvoS zv;J9f@b%7Vz5DwAGPUK@-?mmnzSX?f@6DFeSQ{X!`Sv;>N`&Cnoe@XjUj_-VBcj<) z&gdgiNRyRy1@EX4r5(mdZx_i^N=!3KhMDH5#Ku*7BM>_!ejF#E&H!TrGh zK8s@qd&22Ly6?hvO^#+`X~K88GwIY99m0|Nnx3%S95G*y7t>pEin5-uE zf2$_zna=~~Kl~G!J0%pPX%EfYh@F1O5}cT9D|N{-L5BSNLnu>U{+n#X*huW)>7XN{ zb{BRFVy0@viPU7anV-YzFJZwzDRm;{=$FKcd|MtoAOtRCL8}*0s%QpsJ;PX z@Bvt&5o;x0NfvbxYEOll5Z3;QFQ!&_(BV%Occs|;7p44Ml2pFgSwG8gPTQi=_slkz z%}vZQY>hI_Oxn58{kFgS%*QrVlThjlEvvl<$sGM|D^IAE)okD=fVVqUy)so7V>=B! zIQIph^?ZQ98O?QRpW*H=_t4dPUF}O24wGK_x_khXr|*)**vs)|%#9z>#0A( zI9FvPKgl`pNKdi6#(f@y4t#(SwX<)e4chE_I^^PraiSC&s$-ZL)NhR4NGwNz`@A(p z$>S3#pjXZ97tbAUk?fMLu5NATTuivVVwX4CM`;Iyk1Y=S|I5nPu(Mb`dM!{}n^jk} z)mqZ=aEc9!EHslOg*w^Uy3%wkQIis0=(S~w4K;DTP?az&=UF7^KM+_Z-JhIsr@s=2 zfAK4biJ*|0zv_rT0_9HM)DS%j=W%CRE6}74-+#ao@B=Ln|EPTd@lk9xf@=tKGkdq0 zgIdbTPC>(|1LL{z1C^9;g4-x&k|E<7F6ptDG4HF3y66aWSt#lo$uFJhlJi#aBFpO_ z);ktV#py@SxW}DVe6oyvSqqg9k42j+(5$JMn@0am^LUwy7-O*RcDMfg7HM-kA#IFS zQ?}CQvETCkNV29{lM+}%f_b#|A9K6ErN!1gmcWmtuc}aA~7V42wEH$uP$5nbXHt24d#knNiUT(~$ z>ma$ez(FPHG@III_aIs$`J}TnY3OEk%xlj#M)in``noY!JRBDfJa?{RbqFS$_zq4H zrkoLdkHgJb4Ci?rW(U<%lc$M?>e&nn@!R21{6pWkr@nwE_-4@tQ-|8iHlqW?^OV## zAG*J`!)*q6tR|wO?)jc>Yl7+s(LuHsy*!Eag{757oR+NZP3KQ~0nz4V{q&?~$&@F5 zTK9%e^W@L7%cQ(j%gaXbJf%3K+D8#SGjl4VQKUWx^PkX4J3PrLD9E)mv_9N&uyb-A zQi*upehMIKO&c3~V3>I6>$N;vxJ#aSe}w}eN@JsuMl5K7ckYd2BX}_XyWk0-SP{zX$O+=IQ(MKb4e`WKJrRt`+riW<{^l-w>#;k6guF`dn@r*>uI4B1Bxp*CyqP$~+5->)0 zZ>)9=02?)n*V4MHONEf*_GRKrW3}KI)(_nDB8YrX-3DSAp^rCTn?hdsjh z>g~;&LmJ?x0~ilK_-OcUhgf%iy+{2%B{BC4m(;eWWR>P-#2Wegu!LvJPY&Uu_@Vlb z9I&a7fhX_Ex&H*wTXtf!rRddF)-OFTJ!KIF{3eiWr(ZREeQ{+&aa)_jNO_xY!fkBQ z$=TU#AUVCLC@m!gcK&yHc^RN{z&%xW9z5Ndh7AvEu*Am1aC|8G+tvFUWa`7i!t(R- z9PI2cv9Vi}1MY3QJizy^b#RnbZ(OB0T%2}ZNyU9(|H+0+t5jA?KtcJ-RLU+x`B8lK z_WB#?u>2IJgrga22v_zJg=&*w{CWEqyn;SPdcR?rMh5)QIhUUVB0BRM8y6rB0?-OG zvrM=Yh@gIV2!ROUQ8Xrmi|0Ny6`U>}{DATZ2PbqOO=N9l#oW?zy3w~09BDxTa1B|Y zsbP_^;auVqlEp8{d#j(*UVoS=64|B>Rq(aCA$4ZiHYYtjoKXqC+TmM0MPId^y7*#o zQ0H3-XMTeWi72lH*cO;sw}Hb{Bd}% z87^t>f`Xcj7jB4}H0B;~t0KKFg1F}3{7#2Bw?95y=}j*T+7Ll#0*opA{JaVrN04Fx zj=#aDnjYgs~!hGBPsHg%)@A=-+%G{>H+`kA0ij8A+@D?7Q`pHHa|_I2J+B z3@|}TN>7B(a)#7jRMGRx%Zj=+=*54T9)PjJy1vm0y6xZIG|o2qMhYr}lm|!?D2XTs zU=Z9cMH&;(3eyGi>NI${-(C}Fm8KQA{{%re$aTQ0iD+nP$!KX^&vsL68{x0-C5lMJ zvS?CK-+ZQOlx~RXPilnydra3|2pl5Q#|)0djZ_(o6orEY083O_U+;~x#AjqgLo0GS z4l*#>G@JqVENJU*GX$zW9cufEq?j|xhi}YFN@#G&F34T!=83n*D}?dgoXOtqAsDKAeN@*04m`XEQsN$ZOXsTb<7K7BfG$Lr&R zr&R&;mAAJy5*<4`xU&rkc56%gakNG&BH`(i^ks&&8Ikzy4VQ z@?Zdp>ox)T0uWHfCMRESPjW=(*(U5_s0k=pcx8`s(9&9$;WS4jlb>vxP8MU71k|yW4H%k zpJxN`npbMcb3I%`);gk;-ie0Q2SyU*L8*kHdGu;3!7CMfZh<}H2{D_f;(Ko^7Y9=ZvJKXzhcQ=kYxJ-2tVvSNYqHU7-N z;RQc_7)+L|7}sbetdtQjB#B-nfqDjM2AGG9QqiC&%C zK|!UYTrw{coxw5~=C|Gz+j=hcr%#KkxhfAsnAKQZ{{hQd^&b6Q(YD|pH^Bej91W5y zE5k@#uEq+cIZXRzD)+_#J_jD&S3W6%?mc1T93Z-eJ8+EiB z^4l+>jtVOzafi!i>sLFxKi?-LVvv0xz-mtB)9uD5+pDX=V}hikVB#wvUh9X7b! zvR$I>TY0Eimc?z+$L_~{YChWsC`A2DpNrOeAE-pY1G5>V2eD9*qu)3kt+JMwclP!IyLzXkK<;Fj{m-924<9}RaILE?20%Gi z6SIJg0-zB{+zIH{FoJ}!2*^2rw6f}17>!V3x5;dk{ZTNjk0RFzwZN&AkB|R}QUwh-;d#&}voWFV&JJrZT|NQ#J|McnGgC+p0fXQucq50_J!&z3*EvUw8 z&=CVLjz*P7es=bUA*H3$t>xZS26}pQ;^QDRwfG|A{`8iR)GI)bqZll{1i9UO#_xiY zXEGn?R}Prn#Kb8YVP9z+5!^2p78XB$|C72aH5E|7^D4AQJpupvEw8U%A2CHg#Ktaq z*C;laGgV|LqpC{e+qg15Ty-+Dz92(cfSsjy3X6(*xz#iKHZC~L{dbS*rB8HZiE)2f zcJv9nHNUtBhb;l}cHmC!YnOR=0=MZl2C3Nv;mbQEkDs!$Y|aolJ=?pBau1PRq`-^y zpp;Wu{=m3)($wq5FxJ>$k#WagZL6U~Z}!mKa6F4-xFjm9R|T3iiYfI#Cbe$9W}}$| z=&#dYX@1^h|03=CcR0Ly*Gc`oaF3*JjM~;zO_pMIVBqWNT4v)-X&D)s8+YD#85tNT zsi*)AlwbSS%*^cFJEXwopCuc&5Zsni9j&dsgM%Qw%~^E-3Ir#x8MYZC3$^}qDOZ5+ zb8>QyHYbNg5E)%lQyy2BS~OB|lz4%j7YD<@Is-8gAOA2>x~!yxP|)q|y}-~QH=t(# zAj;;0K_UzEinex7o#z!-Nxh1i+H1-%m{#0`ZX;u3W22*Ql$EFJJhj~4!)~zD%?>DW zV&d0|J3l#P>}+fX1_xo?F1J~r=U5kzdHs6$)IJ_Wx^b$>w-SIXOx6;{{0R8!Nn`!c zkP=h0={mdfWK?wY+-<1L-dTyw#mXN9A%ry}@-UT)T~mLXqjh<>+Nk7amJZCh65Rdt zw!Eakuqdz7zM!FLNnA=w=~lCJ-O6qe(R^E6M?lw9G8F34aU89`etq-2x�jSisHA zP2g$Czj3Me3@?F(7SLolIVqgD?A%;4i%x6n9azlg_D=l${d;?RpKJk2ntqymdP+Yu> zYRIbCFbmy9oOdKh9XPqzrPEArYCh}hT#q?Qd|6`L0ZH(aDrwb=#)Qo$3o6WcmYK{J~EQ|2|3dfAJykYP%=}fc--p=nB}L-sXloV_bb$==KcPx zuP4M2y}-82sJzTQJEDNvO2(kaP*3mpjv%hCT&qpDdf~?3^4^6BEs9 zOz9;4w03kkfZ-*nQ{}VH4mV7BcpvvKe!?K*GV1x7o4XE^u#6w)D~z<(Awl5Yv{}B( z1DviL*$PsWF<6Af)8t`lm$@EU^c;5Fq^ADOtXciG${|r~D;s*-QuA>}#tz_$hT3L6 z^XvS>&AteJVl?nug(|!ieuRjKh$rY^xX$B@Cb3OTa3s?DMq&zJy?F4e&q(9qF-0^( zgalQhH2xhIV}8*T*@w}G!gq{kbMlJss46ez@_h3fvwPE3Z*4wegl!#`d0^kgBv>~+ zf1%fHp!R|Nfp(WlnHcRe>x{39v6(BO@tkdOhUCqO$lr24*@wld5u>+sTYAOEtG#(M zI9YWty$Q5{PT|PFKruu65DgVoWJCn0J3{@hdIE}hKsyc{icQ4?)K?{6UX>d6Q)^8l z1zm-b6u?Zat-Uejex!lu860$9O3Y%!TidF;8oJKoy>a`rcV!>gXznQ(qa!gf1Rowv zOiXC1ZcE~R$HTp=MzBZ-onvxxi#AK#!+NAn$KKLKe>yrk_$3`3lDgy$uCA`k%-u{L zfzT~%HwWUwe9QjeOn-Ul?aWW=f%^FS1=$O!=2v+^g-y7zYc$c*rw&_N~R# z-1HF$3Ck>nfY?HUxxG)|7_t6P)0iFH{WL?0@fYGGJp3@fCz%JSWdtNNEP6FZ`|+( zj+?`2Tl-)r@#4(W-FS(lxU7hi{BM$c78)w5Dsca&cY2uX&Uc{>?qM-!f@}Ko#|oAj zn+kP-idu?4q*GyGVcXk$s-EwG@CD5ez#h=Pbo$_fVhreUP&$|_ysEZY2oNPF z3Ur^{d&hPp^QLLF%NE!2i!0L=&x+V#Kpagc=g7U!{Rw9Cp}bWJ@<9Q(b$^@g;^E$1}IO#3%k~{ zt!_F-#_zpG>FEZQmAM%*$tI#UGD-Y}B_&k0hn!;fO5-CV(}IK11DnSxY;SW61|6Sm z)oqO*nVu;Lf-(%+3&!aD#Ni;)qtgdDhXoE3d@F$#UyCm;#d^4216ehF5HC7RYNrL!zE!a$FxtijJmqBPLC*xs>Kx(F0}&F%lbL|os$|$%ZhGt2 z?2tv(82+<_=8X2{oJ#vBMR1SfdpIx7fh@?QAOqu2M^{wTI0nBL7rY=ES)6)7@^LL0{0VO~Fs zz`?=DM}8nKSX@m5G(^B|qU*h^|$#~C8q0s;bH+lJ24FX7u)o;>Hj(Bs(H*x)f=Hnq04j*Y1@ zMQ5a?k$@$%F19XJzH#@PVsk{$3{2c(}mb$7*EB z14CnI<)5yPtxDnct*NQ0t*w2_DE<0%W9s`a4*nvZIayJ5ouww(RNuZBCwOLRqe`P`-kjg?I|br2 z==dYfEr-`zQ|3Jb(-so366n6)U$r$l2c`4mYgyTzojK3YH*#MsmY2Dw-C)nHhwA4c zx5W%v{2hCV4!c9c7y22#m;u?lKiR8PH5a3g?|oa9_Kc5K4s>iu-uld`fcVN^)9{&t z$dmk|?2$;C{4L}L5QA+_*Exce;~svOR=L%?zVH5kKrVL1CvtzemBO7MufFqlW~^(f zE$~8%mMZcIv%=%(+>q0nq9eV73-3r9W5e9oHl4z38?qj|pv=m1A{G6UqMi@q)3o}L zPNAXTKS4Z-^xKhrG+^#g8yyMJ)Pl*Nr{Q8{UEFbkwdiE;GYIg?_1ll6x}N)B_MxgM zvGou#(vU3|TO$_o*7)63;~KyAoy9*D&Ir2kbmDGe258Fv^u{@{{>Rc5Kf9}4yU83C zm^?JBesC;yd9>$Oy52^XddXftpt9y_!%pLH8AQ?p)b6a2)HQKvOo${~Zd;g3t5%g0 zdDj-z^EAR}E}!x48C8Zz=A=Mtp4*PfG3j!LvkPps_X;S1@Q42<{yIXwaCvo0G5B#~ z*K-C2#=0Hl%SE1^LwORN7YCsk!}keKNyU)!)?0TB%N8}Sp2_#Cj6TpSg97tkEx9U2 zk4aPS@B)=jWm4l^iLWI{u zn6GQfRak@zsf`iNY`ukgAtymsTzspIkph$JJz_MFk`}uIpFC+U?SLzoAp|2>Wu|4ar=64RRo=g*ak?oue$0WS7 zxjxzL!jHdmp;T9`)ehweZ>(qv8gtgJvnz%LNA=}H<>nNI>2TC=gZM>CZxN}*mvVm^ z$FU2h%L-Svx6td{#nldUU!vWfxuT3xQd^$+%1_U?`@;F+{ZY1~Y2u#rczVeqRN-ujxkWqYJ>fR78 z7=E|&l#%qz*uAl!szg=g!kGBSZR&W@HBT-!Vz`|RX60W6!|U)pdG+AFN@XyF-6 zYX4#Mr@a!?Je5EV^64c&t!sIgcUrvEadqCcNtWtXD-2)y&lP#3j94q+vTIWJR{)DH zw9KyL+{r1ZAl0MaH1m;yl}b^LUMfNiH-q&X4U*UNWX|}-!@`wHQ2grqDa17qvie`m_1F##DjV=GT|+Xj=1fHY%2c^ zz~yKkCW!#mb5_Jt)4CstZb%;lKew`Aa};ExMl|8{HW5yIsf5{MJW>k6Ym_)D(Ro65QOGKwb;~+igIJ^WTX1Z%i6JQbcR$UXYZ{$}%Pd z_-PA6m2oj{RU#RKEbH2?0mIKDpxEqpM@8yA)Rp}$R~#4qBn6s~t_w3|L)01Hk-P>?295cUg!BDA`}xt5aszATcDUjjlYBkZViHnJ_283UwPsnA86M@E z(*%>7?nc>9fh;?G7|VR}xRj zQI&>Aoe&?5OxEY~6S8)13_+{I^;oHRt_v*b3D>O}a3kz=uy@bAdbYeu4^iNwOPbXe z%17F?nA)9$r>~ltep^3H$j=XE&yYFvJm^>nuW&w*&{vc+Q&(1A8XTjI@6@cYY5s8Q z9&id%_URsm( z$?ExNTFVD6(DkUP#sw4edXXU;mH(MAYS=HMBd$obskxZ&WPSA3*10#B$ z2pwfZe0>p2!Fo)9Ssz#Qu-+?nR9}lo#o#cyjz3S97Jhn}+34wJ)fSdesDEWK00aO_ z(Ihz~bQ*w+8L7Lyd#GPV=wiQL#+Mo7Z7*KDARy$h12=X1{p7*n!H-c^PbYqTD{P*l z1~rPm=wFN}&lZcacVBxJu-(~$NO_o+SMEExW>pi!adh{4AR3Y1+J4eDGABHmuq_iw z=`ksh;or$vN^)fyaGJGxIt4;24aZ3hH8lpzJ5kJ9>GD}DI(IIz=&z!EzDtA}#}Q90aWKxO@q|xY5rx9z8K(D#Rzjk0Z*r8<)6#f|gF&zfXx7Dr zvXPmY+tK6^Bi?Iu^@)zyBK_+^7m!(8UB<+R|w>&TR6u9CyRx+;GET<-* z@)Z*my@~ujpJ^i_+2dMziPT2e}JnFD^KovLYpzXvW?r^AMT?BS}`zH7t>+t1n2 zmgjbZugEuxE}x5CEr2`$BeJp8LfCH#(Uh zn$Y@=!?<}Fq!sL*xWU@%P^G4-ItBe$BA=s=i8+{+HsL4G;-Jz;N;F-KTXNUzwlO@% zAhG`Th91|u0VWfilDRfy-Ys;+zq1NGBB|5N<@fJ;T=BSQC>suEKn-{vRZVN1OvZ)9 z2|DlERe%}17x}$cGo;53`0KvJc;NU=p0MKZu*zL<%XO=Iv|ks!#&jXOWQ9=WHpcpe zMR!-vFaPlLju@V@;`#bbjqxU(R*fTm?XsiVtEq9GiqwD>DL=oNvkQ;BQrqz;sf~?1 zcLxe~2E*0jSe?R;lGNiHrA3C)BqLWE%l(h4i>>EqaPe>zvIeB4Jve8?Q`=243;Ip? zbadwwt*ymU1&h@gqa@>5`5r&^2LpgtBBGKY-AWmj}6e_Niv#_1w?cu3?ljZ}9XM>c_i{_RPlF`bA`0XQ26P`*N z%Jdi}vN=bUiM%tnMWW=asB}iXCTUxx`}-Th3qRzQe`4WopK^Lcd<1uH67!y&a8EoL z_uZwZHr#$~p{edVt|8aU`i_vmTiOt97f;9MTj89Jj*gJ}l|}Npp5MbaS&Hw40Rc4F z=4=N}(AE~bX8_X~ao}&>##(_P-P+a$Z4Mj3XXt!^xWwSMsvBNA+3)W@#sBGglmu-v zpu<5#oY^uqQStH5)8xAo`S`RA4lgEOJg(dMy#`RXSgKskpadjni2iig7z4S2FWIFO zEpj*iUbN3WeE2R9Oml$X-dJ9~4_k)+ad_*r+n!YUNdM+e3t3=b;NIB?T_+d8s^CjuYlaLnn_)c^4JaFKUhf-2fYM$KehnLfN$RdruZjunPW%KYb+z%L9D@V&tqvY8%N zKCiwHu8Nk8_fHUe)Px##$419Sjt>rkEs~rf^;@d0^0Z5f@7nan>iTlgLs&6WQ#PMPT%4b8aC26p_U}-{07u<)!SI?(9$u_EtLfo+SJ&Z#ggfU3 zCs{p_FK{d(hMlGijVY1JRUP~1Q&)PiNjQ_kkf*jeTOXKQ&PQif$9$chV}FBEgC0QZ zL*1Ss*5nFvOXYn!V*ss3R1+pj0!s2Ff9#V~RE1mpQ$G?f%W^ImbQp>=@19$CBl#>8 zaX6ExqB2Ky$jPUTik@;F=fosjd<$x0_WK-AI%+mv>d`;QGjNwJA~bYwaTHvX4-?7%wyJP=?(oL z=*MqMc5x6%0b&GOZ>F5{?5n9T4G% z(QBmXwxgADI01eVYhRkhi%@VGwwx3Ke#fF_xnBX zzKPV=`;L7Dc+4|VQBjcJZ+TwPhUV%S8iG)47S(bPl7eaUF< z*bi6WmDmVBJ5GB*MIDr>Pc)D=E2RcEt0p`n){t& z#G9+fu#uuesl~s&Dsr#vpH}|Cdi-w#TE#JaKzhb-ybk(8R0e0~`Xz!kR6S`N%MJzM zxzVoLzqyxwqTh9T6^@%B#>(=@j`aQr-v`*J<{Tcen`LNP4O*hTDV4jm(^T*CO!L;d z?cqIq>{M9i2H!w{i2mf{@5h%pw9GmA*|4*&9)}L!zKM+F-SG677ZfrV$#@G#XLTow z@v^Q)Dk`J3?q`6V%V%|Tca!}{06(^Bo>HtNm&5wVc3X^}-<=?_BImt@Wal3s)#!2L zLGVL04ONdMwJj(So5EmLfuIA-MVPUKyE`vHAW~1(OLC>NE$)8i*wvwYAZ+#S)Vhe7YwU z^cn}%2eNJ8DxTlY?_WuB`YY4)5DL!F`1mzD-f5`rwu?@#H!2xV7aPA61=@K@>i!J} zUu9wNvmI}gP2U|bGy z*PhTvU?PMI1}p8`xw+z{(gJ7d<^G6hULniw3;n}7f9k>7|c)4 z`>B1Qq{PIdOi+~D|T*Y2hpMiVz~~P^Ik1; z(&Cb+<~WF_>YEis8LwX-YP~bS`=!n1e}#h|Vp#b0x>rtS;KRHFGomQ(4F%>McDABV zZ)|9*$4lL?+d2?4O*<5WZ}chn9xT&jPCiKQOXER`ZtZuNO{LS`+BK5-Vnm#Ndb@~? z6&p{%hfc7uVv54E_KOpeaL-omMTAjA^*O44Agy|uS`lAFERt7-d!3qVSVvf&UIjup zz3`QyMbFlLd|g2@dZm=+WLA4^K)j3$RH@q|)Ti z-eioz8r&Go!O2-MX+a%M7b?y)=$=rysx|Amp3pxyfs->CL_lb{hB-!2QQd#I|w*A zrJOgESXkz6K0dkwCMCT_;PyOl;x{(V!f%(M2ycxx539vVEv%AZ86Q&>AjOE4BD#w=z zfa(}@C@DQO4+G89fP=lw(}X{nMhF(7eI?Tnampz1G|^dW6MM(9+5Hu4!DQ~otaq7; zjj6wgfB*gIRM1h$Rc#!@guz}FCFG=I^}>XNbxhlppmQ?VfuLuNaTM zKvk1Q-hRj+jzj+@>=pv4jH+i`B7N`aNr>#nEcd$Sx7~5$IeTSh> z2}AxE2z76yXNZO~gy1*mv4J(;w)PCrwvktoNMWc+{ zhA_JWib$G<2?Kx`5R-PH1uHPgcZckXii#gUSU5TFBYqYYow!}D^czZpY|m~b?9U%i zYOy+0QSkDnmz5ns3J3+?8B=tQj4SPfSHMO_MmlF1qCsuSf3~g#zw{NQJPUyxZz3#~ zP%vaEep=llCwGGXkdlJLG|Eo`^{=WbN3=wXFBY$F<4*5OGNIi+mbyARNiM6vj$R#H zUYs@FwsqTXIL*vlZfg1n>V@TCJ_{kYV+gufyS*~7Z1t4rArU2(in)2o_(r8Datj1^ z8HCdf=rXE1ma($Z#S-`eo}wBT-+~hyI zDcTk1l_{qhe(-%AO-c3=OI=xAg>^$kCEC~>GA2M00xg1aZEsjuAB>Pz zy`P|u%U3(Pgo4wI>kQPC-Wa#M9(R~+?wv3z;XWN7=R-!i5@ttU{xyDpk`+QcKX}<$ zGlW;ypO{rX?hK8KN3NsR@dJ3U%_( zAE~K(AjcfujdNZv6f%J3+Rn~mWV_ig*h;3Fy)7x1vpzN!)zeKUn~e z4hohkz<8EANCjnwlVI68B? zOffWgj<$72`etSNsQ1&zxO=rHUm!wPvHC8J@KQI|lkf4F?gY8zqvu z+ZZlXL8^JMgG7l_Y8FI`q*Q}@`XZjOk;o+hA-pf(>yi4vnLmGeYfIsxr%vN@r$JzI zm^O>}XNT$mB`D=LE0(5a#a0Hg6z<_Ofp;3*qX8iyTbo?)g;>3G%`eD_Lus-P9*i!d2`UxXCW zvUSuxzl+515o+t{Ek_<^y|lbI*b86g%c6e#_SD|ZvFts;TK|Y_a%AE|{ESl7Tsz*> z!a@tZs@_TS^W{eS;m!3BQi>>XwYYfRv2p)tO2K3><-XWHxoCL-az5U~MF*aDPKg}n z4cfAlQR>+*?Dc4nHC{^|xM2m&nN67S9ZF6&i6k+{>|<%f!2>+) zIM5Uj3hnck#FaI!0OMVrIaFyd;`wf2sGCW8&INJbN4eqKc-MZ+J5-U2d)&np7ggUZ zH~Z?N16u`obxu`2genj?T9E}m5h3jA8sEPnn}dxV9wtEQsH=Me%~fKA zDWjh*n(m`WZwb#q>b(GJ>9|Fkio?xGDaz*p0*m=w=v?uz6OA*6eoOzJ4kho{n2C=6 zVBg%1Q@OfD@@sNBI-c|Ht}gV9{uD)e|HJ-m74}of)2F%E&(J>OUa>6cvJkKq79QhT zMJn754$CLN-mehYxbazjm#D2;;6N|^OA7Hl#Eh*|6~ikWA_|MHdJGJLU#PW7C~S$H zvN-7OG~VbMTdkfq)eTUY13JRc*4_ZorCt=(2{xk_IfL{#0Z^t_Z0GmGf(+fN`$ma! zczAe;>IQ^t*p|>6J8Vr&j*Zb{-Mtn&rpbqp2?;iZjhY>1zsX6LjKw;|@z`w@g1D&g z)?(9Pi@#Q2yT?OAxmEx{W%a3U$DbzYZQZ5!c0@$?lF;$Yjg&rwHbf|a+&NX2wk4Qk zt-pf^8+&g#wJy4yncvK#ErQN*!umF7M)UG&6b&jIw=_Y$N0{Zd-#hI~Lpb+4=nS-@ z9v5p`7#=^My;7v-6cS1nN%?5NHeTcEs2mM4+<$(~grP9Xe&U`8l!423E}&w6!(*KY z@whcLjCiK!$JVnMUNKTn^uXbd7f3}#wJ?2ksr*kb51oG9Qc@L?c6(Hwl$6xPoF`n# zJ}UGC9x;D`Z6^B=Dp95XH527!8vwwL1)9j|0vT}x4e-r*4yh*!zzU_Bqo-TH3CB(;j;tBz4{AbW~^X-pqYQ#v5 zX;pgK-C8nH=Yb7}AUZ};g}20l^+vxtMt64nT@p*vE7|tFkbE1NLjUZ(^c1>dFmVis zLzWQn(N|MTOWh(K+odP-8pQpOQnS>dfk{Hb_ZPc&bad8^S663_jqPXS(%GHlANMtI zIhqOB6#lN6?-8La-+PVfB(Oo%p#3F34qXxbn$O)Hx8MI`Js}r@So!;d3(F_A@)I?g zKm@LOkQ#E5rqZsw*!i#Ro5A#*b3vZ(oyK_msSKJrZ|oikq`Xq(`a+B3XxU>*cK)W` zKx$us4stD4(xSfF z^$JAGVyQdw?%nUc5(*HY{f6u!kZ`}~Fm0Q)N|0WHF;8fc=>i`+uv!j8iZ7|lcIo)g z>VXS=Bz-i)h?x@P-Z@E}E`dEOO&*Ad_9n_=EdP%L1lIF^Lh&`7QarOczyt6^jmy#A zm=LW}J`3;{kYahy=K}MyRa3SZ`qCplIr$2zM+bX*SQT}?DJFM2f=8lU^33w2+IcTR zB27Aj&v{pm)()1>SFijLR+nxnSA<*5;xUMz!p6n52ciWW9@gNDbg7xzI0SrDJ}csA z%C*4rywkwe(XmXC9v9UIrZSn%GCBD%6f~-}Zn3>aXq}JI5Uz*oOmJ5jiP`N}BlO!X z9;3qCkw^;@ukw8>@)uZY>B7neT z#l%+ZG)Ug)-+0Z-OU+Kj7{j0(5Pz>0;c%N}0Tt8;Ux8pcfURT&Z#DZ;k zs7Bs=3Q)wSC2o2)n$8>IpbIb>pDNRK;1zc-gf!NGpBS5$bZ7BeBJN5Zc)NRkBAvE0&N}}*OR|j*jv9N%1^1ICt89~fUN4G)d z2~BLMI59d@1`B1=7DPJB97LT^(LxvbJfonbgwyV{SalMh-oU^XNH+nJeD4HOejKMa zR<6Dm%mPZ3>|W`ico_pM`U`USupO5gmzvVzc^J?qmz?G(HA(FY_QhqsmSt&aun&Z_ zMvw^-AU+-N?>bI9>+VLZfT+Qy0#c}4_$?BZTxaSXOE}+92=Ze2H|Z2MirGWAqZUFU zpst|7qup`^G^Jy4nM@)VyHc8jxHviKSG)6(-Y{?1Gj%f<{>EkFkjhSp8E}mJ&arH# zNJbDRpvirV!Jc>HYU*@rq9RaUzF$X2QL~_|BJ167mw9&iv0&@y59uc5hl1=<>_Kg0 zPof!`b&Nq^v1rL1%tYHXzizU4|NJJskl=DjRTa9{?%|604pDn7YxqiUIRD0NM18;W zpK9ADG)o?pI%ra1FZg*|N00MbtWvsv>nmFgdMvUJTJ4dgpoY=5{nCDfX=PuvT3Z}l zhrRz6>Cw!(L&>^MlXS)|_N!m>Uc#zncz4&hk=4(jn^mbSqVF zQB!3wX<0KQO0yH#2^j2QPE%o`rpZ^d%w7E53t3$=$xlV#;RQQG02>(4fTr(*@EecO zgGMr9=O9PUeX~v==!pv4KK9(F+j&ooU~vlzNhvpR{=lZR%ey|DE$m%NsYG2f&%6ngJ{`%oz& zSw>QVI`q%;qzQ%|S*_to^N(vAbX(2Mx^y^gvFsTI3zC@dKQKYg^GP6Q{vgUYs2*a+ zaLLG~M@I=)wLy0CkKj!G%)>xN@PrZ?p7sUJ0!QdIm5&t>*KdQsXa@CD#R-Tb)S0+r zB|+xg{79zvp93CdjHHfVz5FNU*ejLOx|mwsrkGmr@jnMH+}Yldy8i0QA!Ni(nkO9|cPK|=`RQt5&;DURh9!VO*EKWWlk8OJ9G*;_FQ8YDP!sEG2Q z!GASyMwGw^pqtF5yfwk z1HSA>4O{lBM?xNh_cDIGWklO~^uMXhgzL=@RMjf(+8Tv1VyP_-CVuq7Xk@daB#P%- zv{veqNAzsE^rY6sb<==j_J2fX_$|8GdsVJH+5Q}IL<$1khWS7YurfY>79KJy;~L1+ zeH-z7g}rpFpuplp)aFx&C9<0vHfY+k9yzS*HLokTa-buQbDwBV5*A$MDm#+TaOhb5 z3gwZAv%`6l^fEg5+wL30%+bDyqu{a`L(S?qIqCHODaoTH_AzVQBOatgYwj84ynS$% zyggnbBsTj$5=k_nj#i@$aS)ad1AX7Vm{t;S{JMuGBvkd>Eh!HuHX&1avCQO zg8+;`7#* zqcqG~A=Pi#XkPRvWU{@$@ow05t`S(Yh;GMiYP!~qo}K`vL|QgJ=g_xohvMC;W1ArD zy8SX!<{g^~%)r@kD7Y ztaB0a=xoz9R|Y44h7y|{fiXW@aW$$IDrUpLUpgu zwLux)Qc(1NOiFtw`5=J~CK&w>G|NT21FX*?0qqg6_ zzomy$q8&`n_zxcR8uIvy!t78{iG_axcxzzt0)p++J-AKqy%$a&Y?nG__b5Izd=-8q zE+Zo&E)IfIuy-Ij42pVz`Zj}5&6{2)dy8?Bi<1xw{e{Kq`svB|QGzfS^?!uH8j*cE ziaUs}!}b>=Rh`;BOWpA=Q{@QJegp0eUKZGjyi89oEh;Q(}4-nfGke-gul zOT+THVe&SZcRGm4&JGdW*DxX|%S6e873o>SuD^xaaG9Q#RP7D| z!UjRiLb&M)c{kt-zKH;g0Qy4$$?IYBLj_yoZm75@bvTd^0OpD*{Q_+9nqmi$8+l6W z#2&@Q5-5U7=NIDv^q7<3SCNx@aM{<+d|?P?DgZJo&XQdHsi0F*uh8*P%>(fxs81>? zPKrQ~b~xUdQs!1M8wdjiL-4H(b+~1PK3#G*Hvt+yY4_4z&2fRJ<>*h&>T~EcwV_T$ z@qS!v94qP4J?R*d%%aJNB}a=>H$836MnW&Jf5^ABeDLW~&ALMUb<{+zEG@)j4w^tm z=05A=$(zu%ou}@Q43S`uK{KlLA!1(i8vjn|HDdYoF6nb_E+ax*LgIAiaBn-M(V$3$ zJoGb}GI6cjMET$SeU9jM`~77(omK^z%axrL($|ub#cvs}qi0Pm0U9AAb>9bFT-pE*mkR@2k;SSOu10W27QnI)gbzh#9D<^P1F`OQsxo82raQ zndcvxxt~BwhvbzokuWl{74Ha-H|YzerQ_4CL;(zh8QvO*5rYC1j5+c`1W#K46)AXI z;nFp6a&_Di2=plr&k5iVXwx@?#2A=JtFG$b!}mSlD*}uPK}$;@VExNUC-L3J_1^fg zb@YC)bjA&@-L}d-Y(i4+){kWG=!1GFO+XN4U!e}z^V~1`?p+&On7Pn}sH%-4w84rc zNxe7I(06rt#Hn-3xBuj1=^-#yZyCGDBJn+Dpt;)WuCv--X4QFR{3>hE1eA0>x~R`{ zaB=2eii#GOfL*rqKEk3x-?&;80$(nV>aIu_>F(wo4*m{`FEfMSW5Sh{*(wk@x3#xl zT~6$YQlvMoT*pVY>ixB;pu@-ho3i!a&kqW5vY_^DtOyffs=f%geG^l`STg1*&-t{_ zVWr{qo)iDZ zhPgW)gc$QOFt7_e5#ZuVhbU{vQD!YW#s0J0q4o%{P& z5u4_-ko~HirbSZA+}-=P9z9L$g5X+VZ7*Nc<$WRXY~=UC$++kwf^4238I$DI-<>}o z^N5I#ZhTkNogmn6=$1LWRy#n7f{Ya6I)YI|bSg*z3tmjZ2NKF|4oodxiauO1|BZayPHa;R*ckbUpAj(?S4qRXiR@$$fa`XM_pYWgs#%4Ev>su`bT0NAcA>l5D(hb_fv{s+5HH|H z0(N%p9No_O>tpLIEd#?1FOXT9{%EA4N`vW2PtV58++tD!x%%Y$@{k7QKS%SSVP;*W zXtR1xIb{LnI|j`2uJNmf5+|;8bhy*KMuF1g&;obLBtPO8Op{t zj?Ov_+Hp70g2dE{4B#|^oEcw%BOy?@+OG*dx`bmD{KWcsSO3a-2}->$s6ACxPcQ+a z@zK?3EoY80AsPxQfRn8wW)AM|7nlr7!6ZUaF)?4FqD(l5z@Ixv6Ya8bz@6lD&KgO7 zsC9J;Qaf1NAx3}_3#ql>J zpc?@~grsh!ZSg?6Xf(lNnZxDypOva=^1>GxGiwmkX}-|B4rp_LfxW4zX(WcA4Dj|N z$L`CGt>+W>b>z_ync3OsTUK~&=wzOMTPLgP);2aGTlK&=3Q@%`;2^BQVN$2ecH|~^7=UTa#n_JbQgZo_|8Lc zbU#ExAs7??0Hw&_tQC|4;wF27VMtDSiD=5a+tNMm8G~9mX^sKO|}ToCWHt zF;FyKcnGQ69NzadHeOjPsIw>F|&a9hi_RRg&S+(F*;0O7Z{fnrIC&e2?=yTe>ED<>a8!*;rZOu>o)z+|KI# zOM4_dHo2)q;Z7Vh6POnrq^|2B;I5z!cdnVzsB*wC6+^o&io)4%3ia9c@bU6-yH$j? z0PDMusiS-2Jz^(@0z#k2L&wI(yAya!i$S_qP5Jy_29UzbM0_T z`CrXhTI<3`gm&3D%a7%sVnOuf zd--P&{-CT(BX%Pt`J7s{W)boe41oFPOYG9JQN+dy2R-UAzow|}a{*0VME&e8qTYm6 zE3yxc=9`&|?+KAg`BL!Kna}&#+2UHk>Z%FLqbB^{`-DZSYiqS9E;qz(Xbit)9BO-G z3Xa)N_mfM?O8!di7X=Yq4+C1!JZZ|%57N<`o2Gg;VIt@9JRg?V)B7$?3xrr!Ufw&F z*zEGBpIf~?l3VNPaRiAq%BsI+%TiBK45PyV_(wFO|BbaZka?AY@lNKCB)fX z+`_Q4GvXcN;8L?xQewI#w0_;j0MBw$s8v`wSe3+*WA#2t>hu=(vVAYBwS1On&fv4R z(<5rbQ%Hzp&%>SN55It?Lib&BsLIaC22yZy$7$K_G|$wN3d^6%Z6`~tA4~Hx`;94R zwV$_-5+8QN+Rn{kkD56^*E(*#u(0&{H9AbS#};d6$&7mP4Kd$-{n8<2CMQ5s&5MG@ zB7xu9t-i6Nt1Y%n+ge}$WKl}X7f(8oE4AF|S4y8ZoPI+U1)UkEsVCSzgifszMF^n; zz1Adbj8#ZcV&&CrFfm2nLzvkAQt-TFKqT-xy8#Zm?S4ydKbOaLf$f%$Na0%-NQTmQ zqrxLT4?pqaPI!MGJAh5#8W=YR7X?IISv|u180g*gUH;_d+Hf-s^=A^kq?SOi1$1^w zL2A&?19Yy4r}Xp&ec$Oodx(a@j(LY5=r_qYciF`c1$JnQSgdW7l+X+9eH-O89he5V zI3|?i;zaDn(2BhD#n72PitnBbjoyfQB2XH4g-a z<72QSwd4Om*;~g|`E^~t+eW3N8%07Xr5hv!rKKgMrF(;i)%oaEzADM-`XMP}i}Z9SkXni_6Bb z`gah5K+aNezvlE9TK~tIM3507BPnV0I6^yT;M>6JXlZ4BJ~=aH&3)z;+{QqlrmNzo zz=5Z-vcJ3g)VL$&op9r0i0i=`s5WDbRLLoo$&$SrHgW#b>Jm6{_jq2OGHI3Zvpk#y z7f-*E>PO6z{=#Y;v=3l2dY(GqYO4NgszHjLp&gDy4-1ORk(Q**Lu5xX_Cwvzo-h+B zJ{#qBudYt4bX)GXYMY~E{{!M<=@@opMjTwOS1*T3zj}fI*W>(?m&93b)3j7r_7}+{ zIyo}fh9u(2Nv9e-beC~c(7dSVLzj@{BumRhmSZcs&Yv(GkVPI_n@3Wy!g|jY6q-NW z3>Hy!k#IQ$8@ zJ{@^zUVfWg*kH5_K{kv8eh2m6yB5;9IS}>fN}#>vcCC`HH?mt=Hmh^Ij^L+ow3ABw z@(4a=9&*gAqT7g_qwMv%RNq)u2j}80>$x2OH>LhgU3jxiP#VKb)kM@O!!?$mkmfJ$ z=AcZId#;!avN0kM4`XQfu^SHC7xGq>rgg3TprfXyp-ZvmW)M1bI!)@n1^~8}yij}I z%F0Bok-lst@uw1v%o-SZq~q4mCTphZdFg-43(nlE3yhXh|uWoC#EV%YPh)koM(%cL4BW5_=I&Ml%6>xrfKHZ zyC=W(a+Pw^$ok6bvt9dNa>3#zyR=$S2>zRt$GZV5log}LP~K*x~F z!Z<2&WL8pA_91f|XwJFZcdu=lJidF~)4fNg__qNo;%<<{c&hT_Wb5IAm!M5dPlpxq zL1++;56q37Dj)AevJy-buw!o&vvU!DE*p#}i5MKjXHfMx>AEp!LIh6Wv6j}>E$7NM zCjZIj(jt1@LHCo~s?KO|(%OtXmfKXdnCTF|XF&sN1p-6{Jlialfzi=d#eu46N~jfY zqN~kD`2my}yT_+6I_u9YWhZf1p0jFh?(nvSRdmjH{&N(s!%-Mh^v4n=#P7BiIoant zO3pvN8+fGNvhKU^)D0OL8Xp;lfjDa9HGB#_GzwE1VvKigUaO6x$bUvnu;DdEdmoXi zrwq4I(nR>XHlvB1Ht{LKteR91pa&jjehG`pbzIMuuN+(9*%l9EZf$KQrsiQIL8rN~ z?`>*H6&l2#G8PpQW4kgKB#$W73=pGo+m9{&q;moEKYer(tbXgO)B+o+z!?YT!&wr`;3cYt4V7W%}qLJ}oE*Q)h%{x&AXsAKBR z-CXMdW+EZo?t{%>qxPu%p%hBYtp?6-Gv9l)%8No{g$OCiMq@^cQ~-i_x|H$g)2*W9 z+Wtg!PAA)cE9{L@L0k9*%MKl z0OFeRFgc(O7%ztlE3~iF|79U?*CzwQ|s&DN}2>~SzzCQsEcZF?i<+iKnX zE*#NME?#mu0dv_y1_rKs_ZC4Veb9G(a2{Q&`s!uf@2t(Q*@<>O%H#C(4c)`>(brRU zQvr=u63wwDq481QVgdPTmNc#C-4MiEl?*eh0W`0K2qNW!yYd=VRt^sM2+$VX_JWJI zByV&bAsAm>Q1E@g)L)Tq@>s zu|}r*HHKoxDEA}XtR&!1+*Iy>p6COJYD0z*~W0pA?S;<`s3TZnE4SPEgj^-02&$!F$h{RXN#vcRMPXk4^3EKP#lIEW8#%?#Lf(!6r+B?p&&AllBKIp|q4GB+^TS z4$sHCZ!<^)H8bnKb)j6ap#0IcpQlUQ?BzIniN|5f$#{@I!@;2sDw50Z9@BDSB0_?I za>WAAUEOv=a?dptO_ZEQ@5%+J{7+E=4ng3p8~(v+ftg0ht8pX$Lr4mA>Z!@b+m;=qi(L8Fp^ zk0{Zd=(*y)lQE6k)5CVvHAs!oC{ImkX+QoRy)v1PSb9bp#YUxPH9dh8F}jhWzFR!) zx&L&l#`U)JU)fK(@3gSYK~$ zs}pv8@f^PIpY1gEsK!-_jmxBxY9F0~be=zP)y^r@aZ@;O@#!wm(t<lrmAiNDM)*s@IvfxU%mv*g4YIXb9>g#bD9f*%24{2$v=K3?{LKeX>_qE4=(IUJzT zabCEl;7Ppb`Ki_&f2~Ehjb*ADVnG^^?i!0fQyll3t%A*IIurFMKQdQ+B9x(dpsZC&Se-2X=$}V zA(E)4WRbBGLgEfIJ}>N~x%rqg~orLwT_3k3zqH;1LMd_`V)@086f zt83q+Jiu!P-=7-eUO&@BOu5rqz20+mXBGH?67J?C+4?^@Q0ILLiwB@x~K4lx1`zY)Y}-8XQhjrQLO?-Y0?yT z?w|q!x%MN<{l(;5?F^Lg;yY9y;L!%d?D#B3=m;86JtiqV#LxpJvD{wn6iQ}x*^KA6 zf%|Eig(bJgxYbwgSs7G=g0TI9zDA)K>9o!4T^A{+A26|gelWccy6s85{ra8Hj887) z)4Pm3JaFxSl)SRtA+)x={yRuPFJ{lWB{Q871Xhv6k+2}&xpM;hwEP@uVDSN-q=FvR z&hkDj!SfYl^iZ!reU=jpy+@h?v3(mvh>Z53bC{ygKtn?t?b6DdMSvh7S-y0aS(Yih zMO24VsOaE>SYV^#%a?b2u>xCWCB!s!bN^be0TnYm9Q7l|gD1ENP0B*%O57(@g(+t= zz)E-pbLF`1^2Sn-lTX{1?ObQ-GM%;_RAa>StU=e2pbtHLty3%;-f|D;IV?xNYgt)E z(SJ91q5G)ucA8>Ny_%G|6d&AwQ-S6wOb8x2kf8Q>%pfg5+VGz8IJe5j2fRG7uR|9S zlS-S6mi+@%9^!53;+s7t@)xgUWu+JLC}^C{E+0(3iSYN|C6JOcRToF9HSk4B)01el z&Tg8Tr609wv#4?SwDtG){+_j^m5aP{rb`{pVALMN_M3FqIkur2molD+m^jPCgw_-y zr9O^pOR1ZdJ)@?rGQWPjC-occ%FvZMm8-|ru`uf+@;_QwxR8)d-smW%U0rKjm3jU6 z%0qe*fJwuC@#zjvR2WP$h{(xBTZi$##tYHjXZ)(_)iJ++y+PW#{k|I!o!!l;k&n9PBEc5`I?p&02z z%?)xW`PxRIJ8ri`@l(Z|>2Um}ai>HXz`!@_b?OAdN?`;$jMQzfRbz>(I@UBPg(;1rvN! zFp4iNp+3)>U}71)S5%apEn6yb4@c_LLyJeGa3?rFx!9rrO9N7U`JQfb$3cC4WgMSY zy~UwoN3IurGxoetZdq>1NTtZchXzN3LtNUpQ(s@n^__KNK$~hMW^3xe)2HG<*@b>a zT-_W{1zs`+G3!*R_jF%mRckK!4`;WJYnv%4Njnw`=TvV@ej7jzSyZNTgVzyt?0tG9 zf#l3tE9{y8lPoUoS8zkDAMaWXvol>!ltq0G2=L{MF2kZg*VZ+EY#`Nl&ky(}PoO6e~MFl%J9!6J2OM`SnHOEp+EfUO_=3YLh}O)SdEJa`G{8 zHzlQ3fqg-FRgL=>(V_ZLB&5M#gEvPo%)r9X5oj)%(zW2Jgr}^e0+5{EozIi~I2;_k z8jJ$&)sI}=uZp<2jls%eVQT(o``R^qUsksKG0TBH3yrFyt^5|*w?oy*2B$~+;8+l& z5_T3hdeOx#sAIj?ng&4?6es?>7#Q!KKoi*!S>TN!Y=wT^vq(Dw*=eH&-J9)Xt1_7} z7MApa0_mI%zNv%o@Ys<;Gbl8lJ(F&3A~q~k<8jDxBh_v z80j!-HrO=XpX8f4T{GiocjJKFdQM*`&Rr%JB4C!#^g21zeCo zgZNPY9l$pA4QWh9cExEfpLB_J-5(dcMZBG$9Lzgh-pbovI{0vMa-pooGYF5!(kjMk~51 zIY+SLH@&fsBC(~un{%clm)#P5hyCX*!d_pkWPz6AkqCV#TVyL3RbZ_5`KHJ~&|Xo0 zxQ_Fk>9-ebv@+=Kn-}uF6MH|#SL`ix7wcjU1*fHj;gO97I-;u|m}i3n2lTQ3e(_?~ z@{hI;T9_9N{r`d95Whh6;e)xk^vnZmbW z9{Q8`)e*sM0*6c5pl8VP zEZ}%G)j&ZW@8qx>HS(_}yy5H&;K%z{kvZpov~tBnLOj-17E8AYz&VRpcx^RNwyTjp z6cQOJ@TQqvQ0LG7vFPpNmBH-Tkxww0FhAOf1p5?N1?IOSrGEjCDXYii(pza-{Lc^R zA3X5=^asE|e_QpI9dWT&!mc39Fh*W$C8-YpbZf>qE>J64J}J{2JiOy|0_R{Px)U5TZnwUZR08 ze)Sh-)H7;Xsg@sVF24u@aM7M(U=%u61`yT+`uq4RHV*VE9l8p_QLD#DI+~M>=tEgq z6!e$mA4p0{1~uVxa46S+Q2+u%dB~W*ynp(1`Zashz%mm9UyELDPd6*SrQ_McW$(K2 zbQ74Z-|}MR6mOWcrIU-ae7pdT<3YwSP1I+9|BUQx>Y`^W5#SLvPrU&`fg;mgbsw?e zt}bmIRZ_I8hpxI(Qo%z8m)}OR%?HFk9$H00aS$OhW=`NIog5M#zpjIcNS(%2$*B@x zWlc|Mv|k&I1bIf)laPonArTQu8XBv+&X>RoJUcTJ)D&`XKwZd-N=p+?>DfAbuNEpv zO`xo*jPn#DPYZ5ep>qCrEmsg34X(DA81b!V5x7EO zU%rGy^DQlO)giuoi3o`oN={FAJuYe!QyvHk&Xbq!%92+@M=_W#;0hvC@@45#(V$wW8r4v-mE%EeYU*ocO;;HQ!*c;hXEDy_ zfiVx5Nf>iK$Qpy#6@iWR0l19n76THL*|+;lHV;pv3^rn3=FfG%?#+s>epnvy^hH|8 zf9s8kFi24=M7N#wN9W*he6lUoYiQQc*XzCIrJ2!(VODr%W48x`VE5PCi;%O- zAD1YB`G$Y(`wWzAml1DD6GxdE)uU$?7TO$v*&68}sdq30TdOl4vSb%wl-&@t52FZN!OKl=H?GC04=^AML}} zNlQXla9+i;efSs}Gqk$5L6dBm*k%NQ>-N0l2r)gItMTW5L<7+yIK613?{Q3<*}jA^Mt&pSc%YqalIS(_CFduH^W+Hmlh9&R~>WO#FG?;827A;FJ#i7e*Rcv zzBYnb2b`C?PO2k+bejWjEOb$TKh_cD?53)QA5uJEw5sEtWAQfI<eTkqNp`65N6|m8<6X_GotGli21pI7yV&-nqp~Tnvc^zrnQR!9Ke@YL znx;fgolD}5#-wH!>+->+1;y=O)u<0nt;``LHx90?Rml>Ap5 z++#*Uv=4eg^_InvGGldPNhtG+I{*Z|7@k0Tbhg)BfYSjxa>WS_+b>^YB4Bt2sW{Tf z(oy`OEyq<-g5iyjAktnKISD5c@038yazLhFYxTqHb9&?+-?47b`yPQZ8nXV+gPThG zelbC$5_?fZ%XDAA((a-Q*C$&jrbB15#lJN6c^S$5v4?~jussxCv6jsL-Sp>ryF=M z)4ezOnTxBciVAjqb~>7>A3oo8LRUO#s`&)wh<4j*X8`ZCcicvB`0u@f<0yju_npFVs4WUB4WORjak`&Rau2nv!LIyqij z6T<8HoyUwJ=a`)1x3CCA(J9Lg_3iEUb5qXQoMOp_-S)@rRu(27ak*|vaR*ve9v(&Z z(4C+32A4=dIRs@$#O*(Ai5v4; z-$}X@4yPEG_LT7g4^3CEM+2#5C9KqLUi|4(h;q6>7r{TUOM4v0I_@}MiAytE?2r?9 z(<9?YN*ZnXvWVti0< zs9+mslUKswB=bPiyGBSbJo+P_pt(>!=?dca7t!R)Mk$DJo5>D+ERhTh1&vK$_`V>p>?o!jIvI590{XM%SL3s-5(D8%a0jFm8JK$ZhRNG7C z89UizXEiV1K5kukc6;=Qhdr`NXEnnX@z&{%Yr$pTX#_$^WYG1-XAkn7sWhBfcI1F| z$@~6RoiUqoP3D0`d%%}=c+$|I!pUUkZ!8P(t0^2o5=Iz|&g>W4=;UI}EiCGAy)WJv zr`hSJ+CqpYFBngBSrG`lbDfP_ z;x~Yi!N|eUXIY$czEQW)%J>}=;htFi8jLVT;&2;g=Qo2j0ZRHIj3%09w%}P-On#Q# z+ONSD8-Z7_OYD~jE-*MnfoY@#7c14E!qWde1>?dZwY`sb1Yj z;N05(v~_oATy-3CNa>h&+0;27&oeYTkirt!`5D!hfpNX=Us`vTKdBvH^@pk0>AM@0 z7x#h>)8)5aU@0HSE*?LMuUkad@z|X5Vo=QlYNQf<-~2WQ7njH0;rxVqIgcy({~~7Z zHAd8fN?Z`k(f~5sE3X6`!2H_Gi~(rT(pZm!o4!x-nHQ>Kkqe$cPP|qF3jugo!FHf4 zEzSOK=qqS}XC8I%lUB8l^5k2UTQJ?h1{FKR_68PP`JjWD$9N&5GV*vM_O+y3V+8+E!OM`qM9l=_Z@oXvJC7ZE&RzGB^6pxUDF?(HL zpHTzZ^480>*wHFnrDf6@q~FICA+ezV>gos&#W>57PX40v<}e9<5d0=bN6x`b)Ipyh zQE_+Oqx!c|u1JQ!?o2#|$4YK}y_jDE6nw^od%!(Ao9vPRh;H^q91_-_xi+o|Y673n z;`&-zv0bn6{KUA%3JyZUbrdrC+&Gy+CF74r@Y zkGCs#=c2dg+6^BQF+o8fUZg@J$Y;mivII$%13wv1PW=r1pdh=RL!jI zMJm=wrzohe&yOg34Mm}GcYfU50)IQHXAz9TZA?sn80X}KS(lfJ({dJG<>GiCg0H(-K!NNVAHaIe zo&|b>z0Alf1fY{uQB=Hw;3?&qG^qi$6@)9VVm6lM&tGsde?LP#+X4Qi85ji^RI=k( z?Djrl=#-7E#l*zmGcZf@*fg#dw?(o6I4%Gh9Q=2%b9{X*oG`<0S@7Oo0M>AGCAiWM$Ri^bxA_6m-tVHq*XZ%mXg#S<$Qx zM|rah^R2PxqZ8-j!|98PG%AW3E-iV$<;aNY&ov86>n}sh!^z7A*H3xV^28_>Dw6y^q3BjXvSf&q9(>8Bloimvt?MD;7RMp?v`CB*NZrfIbg9V0P?$zgmoBD1?{=3GU z(Sh;YUB;6``NjeifnroX{{E5Nx)qwt`6H_m0TefNQW6qGat6G+gF-@-2>kj+M=M~v ztI8E{2BpQeQw2zNHfA9k7e(!94K{@2IRX;@WF;}olHz(55KUu|ac|TmL_z0YjH;^k zS9xY@E1)<%Yktg^x1bMXW#nL4J+id0=vf4QPm%)SF03fzDWI-~5@5yS7LeptH=Pm^ z6F+@$SwH~_#gRAG$LD4Te2%BlK5T3~rJ9zi;mGY|rpXpk5|R}poZUXbRhGL6GG}P& zFSrD+?|e1mg02nNbJl%AQ5QP>TdvZ*cICae9d?t`>UH0hhM1d)re2@1Q~u z2jMTS-}#7#Zw;s(`FX58J>B430|O8w@(|*Z!oh40AfAVx`;A~kLAH}|cmo`v?sJdibkfO!o*@wGSyks!@Ltvcr6)#(=}lgB(PFT_d>PfvTo}rt|0{;a z4d?pnheaTarw)}|v@g@nsW#t#li$Su2lxfHh%YS$j08aDbVMR|J*+e|q6e0f6w>&a z9o10BQ+^l^AA&bYHjcyW7bMHWlPYw6;%719h|PezYYG?28#DBTs0Ms{@Yw#yMGatx zRANklNv1UDM}}qUdRwKMVj={5{`qQtf5f}LpEFiAL!rUwyD@r|k*VY@5Zstm-wKW) z=XEsz8wWHJnrE7pg-#xDJ@T$I0vFiats4v1JcZ*Y*ULNEwpKXPw7`H}jrU(fTr^hd^aXL6+b$(y7EzPV{ISF}kVKB*lm^^XWVDhki zJvbl5pdjp||Dea1WYZG(Dy%Skg88#Z4hDH0Z@KBw@cYxW5dBhMc zV5TB#Df=r;5uBk&@9B-n`=VtxQk4>_Fx($!d43j8e3{h`bTgj@oSXqEl>9{+Wc3(E z?cBh%w-FJSen}C0ZlB*Qfitz-EQVjh+QftoHO>vsnt=9p;UY+2KKbd1bxsui1*X1MyT}SSvWs>Wo#^(K|2*hH}b1`8hNjtmzfn{JihLg0v z@q&Cxa!hYc=JML6cMKWnP%xw_nbs`4-ynXDR$9sfy2ISuw7hg@1Jo5n<@m;ab+x>T zwlGQ_Bo&BnX=#8xYBtD|@?V8B^xy3$?EnuUD1=2oh(LH_E{9)N5E_jBuT~0A#W$7RR`>;jlugxgOnA6W;KDOE!Ao9@3?OwD8T=t(l z@;&d@>y9qKKk*XLwXtCdl_dW`$%{U^>!0sBwDla9uC{?kmeOSfi(VPPti$=nk8HT< z0^%VKA>X*IY`a}YSdD4m!nYY)d`=km75aBjVRI>wAQ-j4p!78wEL{*`am=3ot6ofK zYh>cLfx=V={Mzv%B$IbtT24kez_mQig#i|+MDKAN?OnH>pR4cJU%4-P@ZIcwzF|xM z)|Tyc&s<1LOp*$FGI+J(QRU9ME`H(pPj^6A#Ki2>-tO=Y2x`+i1+QjvTU((T<1y9> zrR4&J>&BTz7&C^@HRTrFqPd>Sbg)AY{4TLnB+zXmD-zo%4p5M+GF6`k{?=uyZ+4xorVhk@!+0WWWC zvJ!oolBu!r{9PWir%xM>b}0pRIbw|Mcq{OQFuuLigY}P6#BTZ%OoH4El;+kBI0-oCTh=hoo0u)x3#o$;r*$!)~ zV_Iq}J{uSwF4JqUh3zH4541;Mz-^7pU(eET+*!yK96FH~aXe}r`u+PEXa&Du%ke8M zy?WjR&mpDn;AEY|*+ygIdew4!Ma8H*k9rnze@$SyzcMf$3m6a68JZU}%Io+34Z)#L zYDk>|7sc|?i+!HQi#n@Y(fIt_yN|`RVzOH2KE@Wxqr4=^5l_m<^6(yWVGI(cq`Y2z zcM@K+@OB{^W2U>JSKgMMpLbIT* z92ghbI{#yQhtxM3y>Wi`WlYwp45KqfRrw8t?}&O)wtQWay`NTTy%3#Lvw-kPd8c$# z@8JCBUsgFVEdmqrqR;WS7W&GD#){0uJ{}onl0Tq7*~fNzBw!rYh;{z(U2e|1BEtGA z&R=`8)M(m)5^YAgzPJ297&c^Qoa5~I@bBypl)*QBN9vD|0oF&yMh_0!j1C-cGB&?` zc=HSOr9w2otHVE+EO?@YONPZZx;iB?v?^2*9+-nEQ2=<2}s z?e6~D{f6Vbtz<9yQAwkQOK%RvM^!AWisagf1->mTm3c>M9L>Q0!y~6Nsd(vMeW=br zFR{zWd5Qzuz^@r|Gg+AR()m{pE8Q^>8^1XPn?y_|jQNi5v?aqXvRKA19uFW5YXjEE zCWE7`41Y)%z>IT*<|4N`u5|(JNsRbkf)85uNLLiN0{^y5;p-P&O6>oi-Ome*36Ynu zHMb_T1!GiAY23I-JSC%-6WuiG@z&GrJ^{{#lrahJW0wG@_)U=Tl9V>T1YVw~R zxp5UV)VuAg%vgv_f^8UaHyKytfuxBSZPkk!DkvZP zECP1dnTu|Xxo)$1zBoUer_?v-`~lbsI~chV-S~U=T>SU{pxIo$;Q#edT`GMgJqh+; zkcNTwuxq@^VY%378|&lk@Bi3>f}c^BkEy62vuFN5B$LpyTzg)(+WIC)_8`Ly7o!52 zQgZS~z>f2+U?M&R_-IwR7S?<_o|)c-xDnvULbE|jO-FSb7HMoLxEbO4`G|FQ2p#{_ z%N;M<0|L-VejvQ>xtSRoZq4EmWi91GmwjYlIcpj;-gR|Z0txS+U(Zr$*_@V; zjpLTBfS^o~Sx~>;XJSemd3~@^w?Ag7dY%ZmFp=ygl1lc_-9o>5Sv=9Eaql8O1-sus zQw6zJznKVu7Rn82uuE9w6c*Tfq`r*&IrjrDUUW!E>#N6=+E$`&t6hoSk6cUvhXD4u zii(p@Xo8W_AeuLv?^vBUAG>?QjGd&|@~}vbCs7=~HMaQGaS@Y%Kr(UuobOXTxQ6mN zO5-bCC@eiV|FIvM8)EAXDv*w@d)L(m7F(zzN@Uq zp$IQGTFn8+HB3(7vco)oj4(wli6_k?Q;O ztA4rVR0&J1^AKMtk&mkt+|pM4*FrKltJ1=5tdA5k*Cao15LfmP;S{j4?esy<$Vd zTk>Uz^-rLPD#-61Z_pOo$n2GcG)Aui4dQWhtQPH3fPLU~66w=i9vkxLk|; zlryYweZ|OQ$sy^;y;_G^6`r-C;^LP~Ve;kzmX0=?PW1ljTFQ&N&YS^Yzs@Y4CoZ#)B#9j>Ce7xMnmRB!pYqcg8E3C&8y)(FLZQ9`qO>>Y~$j5 zJtA9SD$WEI#+I|2KgO=bDv6I;Ok^bVLjnAIxNZDth%BTz6(-{0jU358)N)pPmmM^< z#gvo^#OVF}m1hGf5=~6N>S)gVh?iHKD)eJJ z#aU$e2ay-5#)K~}qq8gilHr=DHDJ}?hywG?twx8s zEzqxu3J(ozrKIxP`bkq{zckIn#*)wd*lZ~+eFOOdDY6t+CMIBa&1)y^Y_F@790mJZoIGQ?PZ5=D=Xij4{Mwai06g_CdJ@+?7%XgWcT* zoRJ@0hVFh)H2FqK{2#U<=gPBMuH`5`YK1g<=BnhfuLlH89h8d7%2jS7MhWTW>*HEd z;n_;yNx=CEmh0;Wg~F)T$nv)xgk=0B>+*}jdXw2&kKJp(gS5RZhGRWnP6&j?ApN^l z%1Te4K4L&!0@c^MdD9y!^aCfH>HoudWm`P~b8j$(HR|Q= zyB9AH=H8zy2d3i${sSmtwBI+zrtL7nQ9EF@=Uj(+&?y(dL(=jD)Iu05%L^X~__ zV#DM8w-9`8oCu-);nf$5zcUIembdBJziqH+6 zvgaiwT>^V%ef^9)4ThJ<^JmgUBjo=64&Zp^G7hP;ghsXl$XDd!@U+`F-;bDXBwCtT zEH1K0NHl(sWk=N0(cZjT%VsPK@*$8S>Cc&8_dIN(TNVx1Q&89fy)QvvbZS?@hqZ8B ztq$0=$4{PuuJA-1gUh9zKS|-uQt#$p{g0bRgw|ev%U@m2B*%MuUQcP-D?hCtk^b#f zkg7c<;#X1^arHvH{g)3*Ax$snliJtte|$=&_5a1Ev~;Nj9|iF zyzmr$6wUw!Dnw_e{QUOe)D-R~Rd7dub}ylV5gV;utP$t7aymC;Esc&6(bumcL&H{X z7nU#D4+re2&<5Ybmi*)#0_$jEm-WivzW+zS(SZn}P8WBi@_^0HWp6Z67~ok8i!30c zyUa-yO7n|J=Y0U#R6$)zUJ_-`#TJ=k&XVfDf!xvuk`Dxiz!7p+zsCWSf>A z{sp8=qLIW1wJa4+ZK=erYgG4aexxlDBg?0Mo(W8r)&|wl&?-8fcf&zu>5=RY7-c~2 zDM*6c+$;`6JhfY1JvPMQLFatY@~Tnl@+}~p+Log5!4FoaTdib5BC~zwCiFVh;;%gm zC(Zunu9=xxgmf~!iUVqjN$?@|Ti-3#>z>3g#M;bzF=A2F?>97&a#W)Y@?CnkMF=^1d8A!;Ix6Jd8eGVfc@?i+H472)> z@Cc-M7;%PZ1OnEp$smDdW~y+Kc5QZ2n-lHQ9*-#3WAIN|uzq-ydm%TPeTqQ%HQ@L( z+;Khg#1iN}ucT%@#IcA{xb8XBt2U9M7}YqvxUvEi27ozNW+~^a<_$UH-@4}40B1yc z<(N9%oOF7*=Q94vX#g~fl=k`To2TZy#j=1Q+mU_ht01apZuVp zK_J}99_$XAgM>^n5i3v1lQKuV$GlLDmCX*^fE!2YHG-GYLV9~YLwaV_le;)Rk~WXyK7*~ro!5?y?qr0Syfj~`mrY$cuhqSk0nf!h0zv+C3OmZ0Jo<^gk> z^mTY~X5T)BBA{a~nC4Nu;O2Jz2`5Cf9u1p1IJ`w zjZL|hXTgJ;PxVOrjh0t2+Db^VevSmD*pF@8VJiNJ%GcEztwuFXa;H8GQ7%s9Do2qLv zs~V}aC-rkJV2CFQGX?>(g5HZZxJ53GyMJs9i1N5TRjjO0ZAS5BY9o?K3YOY={0|>C zfIBXx-7>KXRV9m0*kP1kXF6@#!_grIFPbdR}1uASlC@FBZugn`<#b+wu+UP$$lu z7Y{YrhBEM$$|Ix;*kQnHkfx`M#~Rt<|JsCCno(M+1fFXQt{j#8RClUoa$g?eANlzILXSQjIERc;*3G*N;VfH=UEY3 z6?yrPkProJcgy(z3six7U(^UNDZ;{N6T67;@!O_t!Q2Vh&Y7m^$=E$OfVywhZvqko zVmBM;sK=a_$>Uw~s>(;u?vqX0A13Y{pY|z-=FivDP*anl|N1@?5=UXTkV{$5)ZZyj zNb=43rD$m!6T~r-c_DqA6@yD%z8pJ$D%LhOJ}%oI_XW!^w~eH@(H?BzD?@GfcnL92 z;fVv?;Sr5pxt457FmSGBnB1@p=InWCsB)j&J<-k2 z`$Bo|L%d+VV_3+_`A*_~tgJ+gy1<_ZdoR|njeZadg(AC#fS{^aLA7#IJ39d3D5gz) z#R+Z`Fp5>Vjll5VMPL)AfbMjT!mhZ>K9^EC0Xz$tnP`Sa{LJB$ce+w)D%0~~ItWwy zZo+uivbZ=sFY_D;v1JoF`?BDOL=)73@COU886>QZT%aFN=`U7-4Abxt2hjsPj=j{pH|m_P{AdN#az zEQ(Ko`%7+RV&2@k{x@GC@4brCXSBioRXf3pH*20C5LZQN_Aj+kf;*es{l}_B6q=yN z)b}P})c5*w*>u};9@8C5>e~(0Kd^sax484ht>(!O4?^37Ggh>p26-ZMW)Fh8mL0&* z=jy6wU{H{p6q%Z`$VuYt!eo-R2qclxTo$D_kU|X|6DPUtDH~i!Q>y-u1KJYf*#O^w z7mE&BD5($;6s&^>x+&RU)4O_(KdK_iy9D>VU-C=(P(r)_n&9V#x{BGa)uGX)51UX8 z)g_Oe z_rm$$KKcKuLH+YHKAIxXc%)y3K{YFu-NaNDX=xVyYkH5GmiFd{1TeFMYj!v7nvY_m z-QbF%?x_@e)ZFtW69m+iU6X4YsO~GdEV&R_yDzjcq9WthFpNu@@wFwCiAko8KIMNm zuKnDI;#h^~!f4Q?oE-W|%=%ken7yFCNYw=}(SwkhwbP}j^vspfgan(eE|%f!?1hW) zJ1~yn+1Y%fLXh#;a;qe@x3~L&c_1gl@NuNg(pB%a{-Gge>`(4rZ_{$n=tIy5uU5Et zPwlL&GCfCh9gp)$=UclIB#dlHcfkp}KYIK`%L1$nzP&k4$frIk;AZr8TJ=x}v4YG$VQ z$zAK2XAeIp?=$Ph=ddq&darF7#K%|EC`j0WK&A#r^n5aMeR+ z#Jp%BRSk!@YIGyAXR%@>OO+kzibTpv7=w5{`WbbAa>J#ci;8rA56hq@3y0;)YH*_| zPJoZ!QdLjE)@D=8OB1>v#WvG~p01WlyGM@WZxZwJVrmS)=RyMJE|dZm+2HY}#PU&V zb>C?Bf-Q)*C8W0Zn}U;-0hLIOX)NJwRKjOoJTj2uvA)nHN{#c~*nj}ve|q~GAex3N z4wokh3je3)Y@P~%ew=a=$wnu1YEan)_%UA!KID5fDgo

+jr-nN??#55WdBmb|vG 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 z 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

Q#ZF6cL-eqY!a)<^Q8H4J+VlEr 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 literal 0 HcmV?d00001 diff --git a/docs/images/admin.png b/docs/images/admin.png new file mode 100644 index 0000000000000000000000000000000000000000..be8b1dc40707bc185add352872608dcc9c0e8568 GIT binary patch literal 203105 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%0A6SXecuXW$n`2l> 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 literal 0 HcmV?d00001 diff --git a/docs/images/chat.png b/docs/images/chat.png new file mode 100644 index 0000000000000000000000000000000000000000..1e0cbf24068884e2fa5d6d55673adc788aa407ad GIT binary patch literal 105640 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

F}9}UNr@A^T9VC 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 z%0D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 literal 0 HcmV?d00001 diff --git a/docs/images/floating.png b/docs/images/floating.png new file mode 100644 index 0000000000000000000000000000000000000000..9c9f9fd86cb73f5031d65ce7309b6c64df380f3c GIT binary patch literal 111887 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

4dyyIl;49??f{WkWBA>e+Oea;NZ2>(@RSl|!ec z(d&Dznb|47`t@;Vjo=pEXJCOoKixQ2{Q%S+q8n|+Tk}W<6VR7JX(bg*bBByZ&`F4w z*9l7Qm6{Ff#u3!&^i-=#7)0gptuU*E(5X;GFCY^ta<$9h6pFb*(FfQ@ED$Zhw1TeV z4R63$1ClAe5%(dJME4NqtUc7>(HWbHIdu(9lFo2A!Af4@LzZ|^)-?ySf~r)6nr zrN$iLCHDDO*uhbh&&4JCja=E5;6y5~>5^Lp6oS_GhCg5TBU%=v^wKJ6gzdJSKQJ?} zv5JG(937fy$%sVN~ae9v^G zu|jC!JYq(+si_GUxq%ia;(&Z%kpAo}3r{!T0v)35jg5>xVLwvJ7TLlfdEfUUHMeQk z+GGp#h!b;jm5?kV$#Mqo$;9+@oh@byKW!quTn`i`k@R474g>E5-$>OH%oeT3suR~c zGzeMpVw?l@@=w+`6ruL){xI!JNU5Zf%K!Xumfm7|`WdZ2Md#t_;hy~klgaa!$gj{` zcG>MZ1&V_U#2HgFSSa(QOCHNRmfpJ_zJ78AbVGm66X~UuLC0iO(fh^cpuM;as$bT+ z@km%INDk>~xxbLR?mwm+7|CZKT4)0zOCX^MmTe8J*rhSA&oxfp3z8urfD;W4Jo#Ee zM}ZM=Xi~I4gQ%kxfYKx-B;*rCbVcGg3{r+qAm->S9-jOHS@&3Xw?%ieBjEoxdFbb0 zXFm1(jByIF*R*P5E`(gei62aE({cF(UP~e&NJgIaV?*k zx>;FPlOxBLs3>dY(8(DuBQFh_(nJBPNJxlqz7%a^W}yk^#ebV_qC%_!he9ptIo#X3 zRke`k=-?1e4-V17@^Vqfc?ZDCYEe+}wI zauk0E`v8(ccvfjiNS?9<1O~oe5=|;8xtUw|z-Shp$**@EX1z@VVLKBMsWa(_tD7=1 zh0rAsYc4J?-!WTPOWX(CC@ij)zdoAYL^=yUpt{}XlX>nV>nGpL=@C2{f?6l`VjK{WohJ&%^A`r8O<&7%XqH*a|4TtC5f3~P0yyL$uL z*+6wL2`Gbt4tj`Z?FrSuKA3%bqeDPYxD%R`#-wV8P0BqQ_eyJ(nz_@YfC=nY<)ewy!cv=Cr=74 zzTmad(qC!d&y5HRI~qT*8GEr|b?43*8jl=(7=7od7o?o_L9__?w6;K~PzleaVi_Q2 zA?V$^2!gykYrRpCbrS$FhbtSk^6o{&hV`=EuldC{;(jmRDbWr|G@%GrdE8~7f*83e z8r($my}+{_g!PoUwv+O*5Ri4U=4TU3C32ON+Wv^J91IRI{QzsmEiNYZ<;qw*Whxuq zn^>^P&ce7Kjtdg9cbQh*O*!0kp5Bz+yR5-2o~u6QbPx{_DSSNk`QTvbCCKaTF%{Wg zr9PF^50F>aisw!>&~*I#y`F*vDJc_O$&FB2dqKXHcF`UrAwUSjh4bhAa48GD8v2Ox zJ`859LvRKDMiR2*K&qa3P?UPu?FeNAz|V7Vio793qT81vvwDBJqk>8wS35yIJ26zO zjF1CYQC)3fGDCIOwg7{I@S+%Dx5)bX6DZGdK}5c!U;=SjpUQ$<3Qo*r;6Fc)3Rklk zJ=1%R74ka4i&jR~`>T8iE3+I8Nf9zU2 z>Lm0zyXGA9J@y7btLjTcd3l6gokrPQ=G%T^AGD2cox)nX5GQVC-&d6kTLO1hSJzip zIVb{qd)11_#Lhhgw4?QNYmq0^mEOO9ASlu@Gi!z2Y-ediEni`0eqYn|-)?1jDN8Zc zp4mf(xZU0EbwfP|hedejTl@Q5eJI6Xaq;U|W8FIF}hI&2HmJXq-nw-DOfXijPK1Omj z<{3UIM9{&xXqtF|m{BqDc~drRy`bH0lGqvR<~QNbkCl{agQ47Z$Gz{tdvomG)Uuvz_CP^WG6q}l5t`1< zk1i6h)mE?6DA}y*b$5jQ*$Krxgb>u6EXQt1I>t&)egB@R#=HgJDQ}K`_pJD+!-f@S zc4%!0R6LJ)JvMTkzkcoU9C+xI?fd#Q@Q^$LdKnu`!c-~4qmD*D^nq$ppppNE^X$+L7p{^}PlZvEP%G?&e6R&4h-vtAdQ z7(FAt`h7Pu2Bs|Uk@N7D)q_H>vGiAY0(%sko%6Yz6q}3+RBlTr$Hi{_+idugZSs_X zPIRXi$D*$_gNECm?p9n+N^lr(fk&^d(doXc^$uV)u3^@{>;w`hw&RwO)M1aEl{WCJ z#9lXp;5$ykxBmWBQ)Lia1c4;-3VF1i&_>+Ww2PH{4pkLs)J{4%n?j*7b4Rn5mtAlA zV(eWEHlbPkI21o>pJeaX3#-P5$iQ!X`zjW>9Us*!#Uc z`Kj-=c!_Cm-@ZLda0L=W+z*z@Q*fbI!JSN86Kt8;&YRSL9`H|Gi(NB6+@1DU}ZbFEX zC5|y{3F1*%f(XM45E)nFf(B@JK9}NuvvKI*)bDW3@^V^}-!-*$sQ*4v?KHntTKs1; z&T)bN{9^pySipaEU!2v}t_Iiuyd`u}IKO3IQ4nN6dRK@SadC6eji`PI`9suvv*P&7 zgy->|ZR44cKpLTfe4DY=>-YUK(ivi%Il&53^bH4ZBELSw6YB;B2hdbEK$ZYZ;j{ey zUA0u(x)RPM>8z|7oP5RCqPDgc;93+K9ZTEo^HU4<^UaS)rt`pn=JbJH=-W^q-XfU> zVsW{4z=F6&#Ovx9O&MxMj>NNw95B)IXX(X%{`>^$ey$8f5dFu<6tU^RTpfZ7gd5E588Fk+}lW-3jkR-U5N zF+z~Bg<}oi9EM}I=5U=wzTKbq`NUTswRJPPa~~Jp;ODQz9-NH((Sjtp?a~em5wIMv zd#UHk{ww?tFKGzi_XJsap3b~<<*d|HLy#~`PAc-`fEI5zijl@`dai}f`mu?jVfE}F zC7`hjz2uxF+va?0YZ>kI@X_IQhEEMCh0jG_jlX+bEEf!|zBw~FujT76Pj>faL2$#( zq7ry6b=Iy(30r0PQV$?Ot)ZG%>ZUNS40hta*B6Kt5=Az^mJ=xwtrEvh%y=oGiyu`WH+(s_a0zQ@?viyisu~x(^m&R_{EebxrBGFX&Fe)-p1C z%?BO|P?G=UMD*}DYM{H({jDQj)F!Z>vi~P7nC5v~!GX0mn*g=T`BE=6y-F*;n}B-> zH%kXBUDXv8IXZhs0J|q{OP@D-_6+izUbwh4H#aYiRQKx~ ze?D_5<_eG@(H8l-H@jH=p_l}9D?*eWg{&+rfFXD|Ls1{{NP*qfwNuEre}0GXEhPy# zsW3dqV2b4=m6X`pSl#^K#)9lbXozxfd><1PYZjU&7=H}$A#w@|R6<6N!R7~$KMcV6 z@zO(GFkiKOlwgq39uiD2>VmJs5fC`h>Weuv*D}s1rx>CI)X7TF-RR9 zt}qzM3Ts*DP2_P~{wl4Kl43|fX!i*gf75m_JjPQTm<(?pS|+6mTezD(8v?wwH!x8AxT2Z@^%cBBPCIT>51w%uIu! znR|(No_{May{#jEZ73BLFSm(^qRGj@ilkN43;CZaerXRRwkY{LzX9Om;&$Ns+BYJc zBvDbYzrfD@FzYg%R4jucB9qDH@%1GgRArA*G#1HZ+PKfd$pj;qKhAY$>>V7mw6y5M zi3uoNrTbnyAsR-ii~u>Ft64k^6*yOf`_2doI5Hi_UNsnq2hsALb7@fktI8paJ}>@w z!rr9~D$YxeA&B<7qD_zWC1@E>ajX8j@Y9>;&ecuG0zyQb^y4xV9R465otl2;_ht+9 zHZWIbxFL7bbtGs>`~JNKD4Sg-b}^Z=R~Z>iq9*`b=go<89KRV4Q)#!SXG2vr?_-7Nqw~v`IqcbPNLURp=_%TY_nA z#uGrz!f51=n}$_sKLfa2ZDwXBI84*;j*gB328>f^@2ZsW;XI&{X${Y%1MEEC;>C;` zSWu1Mvhgj{%MR|ig@0H4jCbjy|0+zCqa*}b>M5g}VYb@=7wu4Jl(NbP?K%Tc^h0G3 zM8jo0zc~Qh{W+iUwz=l}6uIj5)0?eej)a1ak96u&`c1%;o|zbfMhhR$^wnYGBZww< zaY1RiQG3(v1NiCd7T>Jk#y;MmSgEAzjJwfiC6X+7OOXS-Z|Lj&T@ z;ISARTKodSL4n&3npS@Uhn7^)WYyqpi|>5{+x&Vd5-v}tGr=ix^-Z*_jHOd&0Z zDC?6#U}hbD3UlFQ@o&NJpyuJEu8NuTiR4tDi%3iWCTs!RQi$x2`@cX02ewi%vTh1y z>(P||qH*^1=k}knYr;Imj-G~i3he--LA@ytyp!(F>6;q>DRl0 z-??An61o4n{(n<$mjvCr4)I%L8EXk|{+4;yCp%xlyY@n`fZ_jz6oxnADxzPH=aLv3 zMqhR1Ur{342~HqTo$?U(%mXs)cO3DZ7!}J}rOxg?X7T{%9t!?HC(mc;uCD*r;Q61K zp70;p?oGz@0^!=AEobs`w8Vc*Fd1bhI4hTX4sX{=vXm`BE7!Shh2^IW;2BQA{O|O8 z!>fM%iZojw0dJ4kDR^gl9&*A18zCv&D%PojPze)W!Y%%ckg<~=r8EFR>-3* z$`VsFh)$FU9QfV@7R&bNw1{w7jvQpiABLAHoHl(Wu9A#E_K_qa9*#VUtdN{#h8`4m zbzyO2GP3J3@B-2)5<(E6f`ffwjFT@ zy3~EpK~r4x{qSJ|Oo3qFki`>|qC?K{26?3Kb-HVsE!>W>;4E8MSG0IP;rM2)*_=UD zJd9*})V%X5W#{8kjU3%oqu}dkUBmp&fmJc=p4DHl_E}I4X2`|fG3|N;GsxodYQHxc zH;#@P%zdk_@o)#VHRrc(RdYvM+t~>FX*X9_py_Mzyon@$FCRX~z7xG_Qklde%RY2O zru*f>sS@wDy%I8~)>s{Nw@Y@^Cvhl#Cfm^i7r|pKy9vX;K6cK4MjN%LK@rAO$eE4j z+BLCFs)fG14}1nZ$|@>#$L12&)UOrPvKEZ-Ri=|rRMRb z-Bo)xb|ts+CCPcKRJ5pG#k6ns*OjTF&QJ9MQtiK{%sAwYzIZo>4p7blNv11UX}k`P zDQicsbuj?sV$py21lZNMxW!Z{BKTrq;x~R0BCzKZ_$ao5F#UU-uJo)c;bnIve%?bo?k_@_O=z@s(*20=@Za%fe}nC)-M;7k zx}JWdp68VDDTmkobnHWC6&~@Qe-Yr$;XHZt*Ec_jvy*^>)a!7(x}o9KS%N%!NBaZ7 z{W{XpZ`Uu3{-cWjrn8srLIBO@8kQ^(rkJArei^40061S7s5M+x)7T*lhU{D5skF;2 zh1_So&4@v1Cm4C6z~;V=IRGvdLKj~{hb}L_)k@6RmwS{9V_8NGsDuj2vD(uAF4WLV z#Q@x9H z*Xz%7fp`M1>#7`fh?k2;?cc@3)=#qgQq&#&e9la{-uxkXiu=d-I7CWw^Eo>!#nNVK zRWDJaJvCCZL>z1r<{D`-7K@k5P~lb29Yj}mA3$;aJ;M05xug!TnSPw z*0ErBUhBFoCq6#s?(1jIo<-|-eG^;`?=(H#07kr+R%CYk(TB%zs+&V zt3&sfXjzC41}(*wTaKE#-t}yliZ0Hh; zuclTy=>{xh)NS1>SFS)<#m5N8N>-m)(*a+6wsECNFs!D!=8ccZ0!+`;^Z=D$f&^7YLUgfD*dt_SxLbltXd;TuOFH@UwkC)=ZKk1<43fS}Id=Hk5R9TiLbVFq@_f~c3Ja;BgVNIr z!V+sMDS3k55wNFd|U#oIQtv>F;3d$vHktb4)o zXuJ>lF*oN3qyn5FJIe!=21i;x$(5IxA#8tL1l)ysE(%U%lHFAZ4&>XWk&*6!fxXs@ z1dEC?to>MYLJIhbkx=?VO)Qh9>}#brItqpH0NJIrP(?E^8rFM-d^Ywk8O??>_g0$x zQu)P_N-4OfB`&3Ob|mKK|2k(d{_hDSv|DYlA0Seh?hFk^rricRIZ3x7E2HJXZxF3@ zbX1warkSf>|J~vWTO@&g&hGBw09RDb%J^JX_Z$oJLa;gK)xg|91yC1*#u$x8f%)9D zqO71G$+$YJ);FZ4vnoVWU0usYP0cal;_%|)qA|0&rY6RBjL16(rhXF!@K_zLpYFP7 zsFqiwk*zJ9%=~i+ex`?&WcvGiU^EISu-MX5A7s={=Koaa=wMcpZOP$oa=0E1nen8F zo?Q(;J{6_hOa23Oj*dExD!yl4mMT~#Ewb$rjNJgZ?71`s442Gg58n36C%~np;w8!H0oB2ZPZ_1x3jdeYTSR_&$2>EV?chJ^vV?4 zQZij|d%M29Mp-Z_Cf0Ay07Og>N>E*$QSKbp|A%?2C&-i?1awVJX~|c)tHN+13%|f71m zM#+x^5UT=YBl{rZPlJE|nxP*HGfKNo?PQ|IHuun|E1AQcB6TKVu=} zP4{|oa<@ra(7UK|uAp&3cxqJ-awD{bq4y`E72p7S?NB6}qNo?lZ4_}rEBO_~dXS#Nc1Li_t4?-OwhQ)bgBKDd79p~?>mv2GLhm#Y8#yZ;X>;f?;?-)cS z!sPX>&VvqY(uJSC7K6~`XupXm9QEl_F{m~#Y;u!zE@k{NdjX89*WRG|yaG^+9nHd$ zOxi-}s3%=lS{61G%!_s|q=Gx{=d}bf>o!R6?QuBKbr z5vON=yY9GV4l|fc*WSienX^*ocW0x37}{)BdJuq|lb({In@PTeBx%X)HziP{$i8%vzx_qOt+&M;I^`fKaPKy~rkjy6PNg4t| z`ED|2;Az*7OV*ZIjurFF^u6mVUa(I?f6TxtOyyl9)%;cd;#IiodbFnyw|FT?OY=s3 zZEhwc7s&ZkvD-GMavIO|^s6`;3A5Bk0~DpkgRgk&+L46VX*)(cjTE2n=K`FgcVDrc zyl9OagD(ZHCut;+Dk+XVc~>jWu*{6ll|uCi`{TyCoy5}X=4BBPPpw>Qm~WB(XOf25 zc#XN$_d+p~8%S|`5+`fx?y<79x0V$$+Tp52du)dC?`9dyPcYWR`W&VxnX*wECi%Zy z!JnJ@^0kG*LJuNz%+XV9BW!HIgu$wbijAeiOY*yhtjy_|X6x1~UkfO_%{^O6>ZhNr zaHv%hq4X{MLh5qLJ$bVz4{S4=L*)GvdNt{>zMId#@csM*IYD~)8d<6V9WO}%d|!n{ zfWHv=@sE??V#VK+xLS!z#eyY5>|K;HNeQRrRI)8qmoKMK2UN`$jVPKIIlZ@jO6w9B zsA1_?gerOzRa^gK0S0g3E{B@F_Qq$K1a{#vrF!|$8d;<$_on0Jii&b+$BES^h1_DemZQ zriZpU!OB013>BV}$drn!u>Jg3c=HaDJ8{Dqqe-Nt`ui|_%R53T%UlI7UZG#w=G5%z z0A%IxVdMmps+vjtA2Owen~o{y*2V&YgsH3LI!iQZaK{PH-8WWHTi;PzOC->3ve}xd z`q3J6CNf*+fZ2-5n8#yp4`pbhmN@oA;7ol`oe$1hvq>uU%d8*xN-<4*{>~-VhI-%5oJ}Vu@!;xm2*LkZY z0grkTj+S0AWXAdUmk(RywB1q5k~dASHJ`l9YDlB|MLM-i89UJFG0#%<%|6ntXzi_1 z<+jq`-S56~)(pr{H~aWacJ0LL^+(qfJei|J*iw%z$+!z0W@z7t8*1t=i4I@43sq7{ zX&=pZT43?HF=KEEeKT`@)9>da>rIncl+u76YQeN-m3(>#fZjWw)Z$D*C4$Yzzwt+r z`g!uf6pT3c{D~>S5uS!dvmfyQU_Y0I{d4|(XAC|mkw_k~UcnaiBImjyy&x?Yb*vJE zi)|y;6ZLs6br&vhwHR-PZC~C%sPzA?Yuvk5o;`oA2y!n3%#7jLiLxANHYv!vS-IL` z5uoO>p8W0BXRCcmPWI=sTp8<|=Tq30?Wp${qbE#@E}_CD&M`Z-WZ2QHoj=Hwh^+p0 zB>^5C3Th9F4jZ#<{_asD|I}7t^{R#7bV>RMH_?7+_V4H9!#gFL3j5o(NX^|^JozGN z-E&^a%3Rqs%Od^k>cj*|#(bNJq^_}JLw^c&I4_ZP z_pwGkL}F;tMZ}+8-0uh_mm4^)k5-|QW}w3Q9b-k7)F{W2&4aIcDAnA~k=CWNiHxh@ZwW-O>O{nKuScC5{EdF_%1YB=+z*ES#{)j=oKR>)0MvHr*N z*P+|bE(rwBa!>qaM3~0ln@+Vsms=w@{-TxR=gMc(8r9Upt1I2^R#uRbt(UXnJtiO{ z<5P0;XCsb(+mq3aJAg{#k8h2=PuC|mu11w4<`ysC`{kO31kfCvKvzWzZWPHSaJC zwF_pm$ZGJP%^s$69H{?|U$Ryqwsvei8l!=wWG+$*I>mh6<`wL99U-L(X7^1)-;>Rdo(bM<|6gor^~`FXlW!^Bd*dde3Y>~-CPl{ zhd^PZ*eFXPd}E%%(vF^e>y+6Z=Rl^bsbs*>=lMWw5OpTZEF4v;Xl37&l|si9cNjAm zTbTa!v2KzrVVHEM&6{(%h5IQR=_z@t$;vD}L_e2t7n+F#Keez}vbAK0UTXDFT^xZ4 zk0gORSK;=8Y|0oSB%L=_S0h(AA%j{V9?Mh1PG0}mMkIAMci=L7wn^?q16Uo*;WFrZ zK6={EHzVeY6A2cQ5!TPr#PtPZq~-?ujW<>BDQEn{R@CD)4Pvlz1~b#VM^+I&8M8*` ztfYt-xsM(Ma-tmM$A*i4mM-2r7JI)Z0ANC%)6Z%xLL#*f{^fwlu?AH8Usx4ny*RUttfB9LD z8u^w$gxhN+GZmXhL5DpVPDG&=7U$c4H(20$FgJ^k9#eN&B($e~GpGb$t$^ByQkHNE zWu6jKcuIs^XXPNmi_WdsUgf)6FRwWMNb`;-5)Rx4T~rJqDj!RyUsWBN{C-OXKppecQu2hq-uy_L|T%LSv#4PW#~X|uI#)VU-YZ1 z7Jl_ixi>j_r>VJA$-Y-e4eY}3B$=fv*U!*Ys`rInQcE}@!GBY?pCWs0@I_OvURyfX z9R8&7N25u>6kg-PB-_p6HOgCB(qXk@nYpmLCOZ)2m7|)u6tGmE*gJc!F#ZCUV!F17 zn;i6fAh|%|&DnLv^=$}n+C6;-&*2P=fy7QSDuQ)sFP=}NXu&PjZK=i_PzdUdM+r({ zbrPA>x{@an*wId%JloahG+VE~ebLT~a5Q>Xx0-`7E!m=eMx+V{Q@pS6&G0SJnK@KP zf8G|wHGx;t4Q#q|{1FzJ8*fE_FYRVeGiQv#C}zf;X0>2m93IZ!{c1n%TH60PeLKBf zFt3$A$8O!8{2=F$ydAr4;!Lsk@lZ26td6V-AGEBD8!%az4}<+Dti?>j;kCM>g5y%B zw%e2R)Q#;m_*MJB>J1an-Pt)Iw}SM=LIQJP1v^|96m%0kxfUU#rm3VCk~p?r9;I(l zHgSY(X&GzjS9G|5=0oZ2y7<^gCQYhQ9VMdpk-VlUEfIt%x6b9u|*2@JX_-O?JQq$i;!~#5R`ds zC?=d%LYv$|hS}>_G-|DLz^}c4fJ%F)8lNeX z7+|-ULqOQ)Y$Tc{_uNx+b*mHIenmG8$Q`a58P0`k6iEfo@67W|Od$FlIDFE98#F$D zoX0M!BCwA(eX#UrI=eL6(ALa{rAw`)=~~V6uf9=xWws8}hx3-zHHH(3^sceUIE$KD z+FJ6E521qV4SFJnUOdPi*~iz7Fr{sOquWFo86B%${iZ)|OnI~WPmd;vd@(Dfn!3%n zx~d0Zb+ys8t+bzBbdO+LMmf~62wl3VPDIJhx9KCDnz=mx#uJ97pL@yU=)U8uY}2Qe z?*{P=IIgl8rAI|XBK;Ed>hwfluq#O39VjBSSc#og{8hA+?XJ`5CirWMl4`Q>B`p*q ze&ty)Og{K&Bo(+fReNh)WTkjKMIMUDWv(%m@0D}-isU@??$Huv3+dYdy%7m41MX4D z>0htA7Fzw-mE_a-E->_BTO-pFq1+d~VH?qH@LC#D!u8Yi- z+QM$}^6xJ4J?|Y4=?s?oD-ZrPqJVlR4`XU+&>m!3j?Fz%);}IYS35mY@YGY_a`YTI zU?*6nNthn^4#*8kM&>8;>Od8t1@_1B#R+rQk5REI$~s0`b$5|wd7>4B8`-V$a`7`o z5}3Vt`CJCqff>SAak2&3*Q7l0?a0@p4rUkT+v8Y7-PPicQYKdGBiNE@ibquj`E~?* zr;c>0CNDM5pMLqCJc4(bYqVr7fMw{!QhuHSa|YBYV!?eKIIIZV2Z8E?12F|}wFNSd zB@pcq5Iqkgo2jY1Djz~Y+EkxZpQU^aIz$dr zXD2!=V?f`cZ>(fsM6XK0ZN5D59>&p1^Lk!rcNo$u8|!xhE76#YSH)n(fSEg7KeOX| zdiyAQ|2(=QiuO2I7wM2}&hcd6-+&D|+7A>4lU&GVVN}vB3^wr>d#uwjuiu+azhz9T zRjk<|aloz7*VAM4>=PtkxV&%?yxZe+w{MHz6+*JkXF-ezGcrFXha<|t+`s#SM~Wew zMBI|K3>M`zy)5d7uKM=Y@iiB?(Jq@RgTr*Ciaq)Ni@LXts%m}vesQxE6Sf#MsFbvH z2^e%rcSv_P5{iN#(!D52X=!N?rMnw}MRzyrT!`-H_nh&ZbN+e98SgvC9%Cac)?}?U z=Y3!Cy*}Tl@Mas2mig+3rZFt(OSXD*99Mo_q4X{hSM|Aqmo-A!Q$%N!TAJ$nCFS?* ztc#+nsL%|FVkJ#FTTpn5^&ARv3UavDFLk|h-W!ZutwoSKlZJ&<*L^j(PKx@>Ai~xg znm%?&O>_eKCyFC22wgdE{yIVDlM#%WNWAUC&3q=OqoRbA({ZXy%dsre51C{NUl<7^c*=qtpEA=#AuE^M$O8B6s z5667v?QE=PDohX4D!pGWzA;t4l{((!&xx;p^{-BO73VUe=e|8EE4co3A_Zc9j8UCa z+C>;{XPYMGaeAs)Y58heplP+KIOH3v`u1F`vwB}yei0yHOolWwmEXoy(TLi%*P0X3 z&n;pKg$b(Pj18Nnwkb=}lwT9EMN|5u5FZ`Qdt_(nTW1+V{1)0(3)EZ4%3)>|_|^KP z_|GTo;lC^GdBv_JWhVKAUG;UcYOl~ea(Z)QU-VE`N{U*kcu#VSo%OnmuC_P36mdVr z-%$Dvf3Yk%e@2@ojmJ78 z#?5X|rc>Bicd*$sI(kE3IXPMpa3}X@w@znC5txf-OXe`k@G-A{4~h&r$)J=lRK^cwhjN)1g{AR*p{^yV4QdPwjMu50fQ&qfUZn1NdYv_8xO=Pp zrsA+8mK?{Su?^-`Pf0Yh#4lF1#5(TBev{$W!-kUVKE0)36y8{?B$Bm zHx$g03@17XyEZi>t*mgU7ce~}`>JmFC(6%tQ#^=KkoeJGd^?Sf!2Yrfp~!#77jQ-E z%-=@QoJtu@lSSC2%oTD9K^vur6XUx40Z1Pp@2xk89JctJUEy#ogxpy|c~@#rK4lF^ zdBpAKfVc~1Z}WVgpJ38FaeZ080HV--L@=W`eL>PGr)-5Ct%ll8<$dQYOUlP1BPm=^ z0z+iqLwY^lQAVL-)6&!#u2n(=W6B{)4FzSKEG{hfT8u*=Q|6V0|rtWB$bku3Fu3bW2C>*}8~ z(-!fy+)U-U-1XAR|LfPJkQW$Fqz3X^I&7c6B^9>H!us<#E;WSr?Bx$RbrdDKk(eID z86lg9OWc&6rCDJ6{_9Y>2`lmPscmAcr?uONkD*Su&bX%`Mf=SgW&BNcXi5YEOAo?! zv661Ch+AbDaQHuaO1N|F52RwrT3Mg-Ss`=#%{EG|YB{sSo&XPwCk7^(^PTs*#4uKU zZ#R_vIZ=W%QP|9Td#tv+(XdBrU+$z+-)|;!^nd)*H;U+ds_Z{M&(UDr5ss^XUW0F| z@UT1YrvJUVV&{LK%q!88LXde)!d5b-=S!Gi&<1$usYk!Ib$m<8Woyl5i~Z*nWhT9N z=%-*?6z<<<&9C@_vyJ5j8jrXEKgTx}S;C9Y-_oc4Rxf|yRp|e?v-IN@*Y+W1czMbI zCK|ro2A<4Q-=1rX4}Oz2>AEJTty|0QgeTeXM__hdK%?oq*FOK#(G#!F`JX?hEPO$! z$N4RhAc!C1NpAnpfrO`mu$42~zdu%+)8m{yxh8vSY6?^084+4UCdDlFQr7!-x6>N# zpLO=W67C;fY&;r`q3tUAuiT|Xb_8_G^_MmT98M~Dt4=q08Q4c+iXzMY;%077pIKR< zS=-vODdXtf*iAQKXHc}IJB#dBnpO_`iV!`)%|y84`@Kbofj9QtY~L3A_L9QY?xo?l zjlVd{_O>nmXWOcli#C*6X&Rwr#q7na-^T66lI{`(`W}|}n}Z|vw_dstJ@LwpbGxe% zo8g_z60P*1g79xsP~f7H982Y`ir~<+6Z9o@M6Cqd;{~1H7Fw0~M4>vYTrSZ?f~tkv zs+n!NoIJ*o#jDXUTLrUG+}oGwtu7NezxDla+M}Bt_b4{{*~`j?{z}}lC+M7x`kz3V zWq5t`D*Js5n)lcIUNTO>AgwXNP}`SGz*AKx>~?n59VCkBx%AVqP;>SEBEz_#^mnq% zUGzZj6e=3=VtG<8@uwDWOQ3GcYk@_V_jTmnSTM6ZVrFJGa(C$G@vE)?eJe5|kay*n zDxR;uJ&u!ru!WDTGwM%J4qXh756T9~N=KLY<&g5m882x|c+ezE+IWW-Z4S49k)sp}D zu2MNM)58Wo_(9pzj*phO{ymTXTwb=9-YrD4eCGtlEPeaa%L4T5e{LF{CsG8VI@+t^ zEYaL}5aT2ysSzLCsI#I!BhsE72?p~~%Kl9ZA=y_h&4VWGtEtz|z^TH2m&dY8=%B1wYaK zKE0TUgrYx_CCumon#q=2eR$qYSaXBhGhvozvZjg=u%sj?(n&c>C0<53^3?=mInD1M( z+d5%;l-7m$tYS`mm1NGk*-+?-;etRf0tB~K;|D3dnTqDu4SkpTEtf;OY78`4)g&GHf zO;n~jt3@qPnitJ7yLyqcNN9AyD7lf%CupW_map2`+lRLt?X4(R8mG)q0DG0@!2?lx zBvQ8$#@%2NWcG~H^Bcc3s*s*l`2t|7b_xo!Wks1VS8`s~>15L7jCkg7A5H0|OboCo z7ufz#hjU&b01l8=ohmZ7S!hh;S5-Ey)~pEA(_a`DNEJxJzpz^{Vdqg(VYJt|1u0T zv$58?I-76boA4#tKp626j~gUz;o;%F{?kb0s}(!;va+%$;=8wz7HZY2%R@b&RR^TQ z5eAG9cDLtjD5X?X90RI01kvajW7Bu+c5>LF7(Gf2Zc!k=^I`K@;j3vI8!Lo4lRBseN+b!suS2gcB1BO*$S zvTL;-($Iu``e2xuH%+mBfDsw4XSq2u7cVD&Vx5g&I^ySN>r{@E)a}o=-wC*I`ZV== zeNRuz`1q%?GSR}g%q0dYf5D`oau;u-{h$Tms^cly^J{bXEiDF`RuNoS0QTV)05`wg zfR?tl@d6ibpd}X+09t=*#bMM;nUaqI2yo+{KR?9DhItzTn8kMvg6SMnwd($usX_$_ z2@rOKAwGY6c{W);RF4zKd74*L6wB$7bKM#&aL>DjhV1!-XdZVS{4nBs6JwsFkVz>O znc46ku3={uNvnh?1p28To7^9pPYS|@V9=-%+ zcd6JoYN5B#3bXM0_qPCMi^>U_o}1e%pWp-4z;EOl`l9vqAg-`cX4xOT3m z%mgT$UK@$~{wfF$Bvu;g>b4dy4n*ae+3?ayBQyRA?1_0!N&Q=3w38u@@aQoXTN?TcaFfy@)&PrIYO zdU(`y@E+Wwq*VQNCJ+02Ef>&ixn*K7lW)&M0lO--OpyKzs;PSU`c;tk?5wX7^60Ap z8n?fVfS^wDHDytCs;1AG>V3(x){sTbIuk?`J)>6oMn>rjsJV9_ z`e9yrmUr5&Q>fHA;F*~L zf0sT`w}6#jp3YIYy#{CMmxKf$^?=xo{^;PaC7ECU5sbli@ThWMYCN}hY~G#^J_>p* zAtJH?#1V(pLBJnv$jT`yC;)N7x2*IhEqjoY9|-;QlatBLC_{idigfAggBo}~*}Z$6 za7IEfsD#6VO-BtAEkQMK%9aDx>z8G563Rv*a<<~8sHa29IJ?W^_lMKIetih9to1E2 zKNB$mYjc0rY1IrOA|e8ObxbZ^Jdlw8oRt;Y6cVqw0*IXVAe@C&+b9fX+5tvs#5tf{ zT)1&7H90MwJKnxs%^GIzYM*<-B&zSQ;#ZmTqE7;8;0#b^aj7H?5_(2e8oz?puNdqf z54V*!CuiFT7A1uG*)XtHbJM%tmko5l`faXm?F~vK20CZQ47rsPjKJU+EfrvNm98El zK%^}&Ruk={$iVb*2LSw3R86yo#Kgp67S&797YATExBfA#$UhTmnRXbn0r=@$d9JbX zz)bv13R|vj#k4K4AX4cX2?%jG&VbS`GdE_tKmFmKGrX`0+#Fx76UF*DP>D z?%b42)8_Xtg1;OfP_?z6n3@Ljos#A`OcdO!oqC+J6-MMPde(wD6+Z%e9dk~t^gvXY zWKuw{>xMdE=TiS*9~Tvsx9EN5eguc@UuAZzoO&&?)^59X4*8$QP09^q?;zb8BAq|)RUj@+OlZm8TqQA8xqF!Sx(eMJqom;K9` ziAhIinLbYTF_kW15%?{_Ok1Crm2R?}iVBnMyd{t{z~Z6jC30>KAmk|U7iaqOsoF$x z4dX_mqs>3$=TLwCp9%G7ZIdY2f8?~RRy4G#R2_*~LXg*;!eGV2mSkKJwC;es&5&tOqglf`K}Bz}F3oakiot zqgz{Te+L`~XG>qUz}p@=2rmRgt%HBPS7`Gp`C|UC-gm;{12v@IA)2C&A)L{PpJVL9 z*|&aL|6IbkxAuR>*tevPiPdvH?l`xht^6{k|9~)Vj^0F(3ZA>OE{az|g}xJl-(UY- z9ZnfzlRnP)Fk*J~_qXiD$|Wj^Z0*Y*X_2DhJMe!ZK843DfJgnzp`Sa68TSzq;W}+vqAY)FyVQfda!@ka`Zn$&1f|B zxI}1QV;-HR3Z3EZe;tLPr7Z#c7--J)n~49Kgvr()x+44;BrE~zsdIlq(I@2)fqK|I zs3?8>Z;D#iyTn2^08I;iYa8W%A824Sm?B(=jz;uuFg4=dZ!P7M0i(i^AX^NyXd(R` z#GgPr0l_-)RHPL>f&E^_Q`tX(t5)A|f2qhZdP4a>O$kudJ^x#OGVu#hqy5}W_?=P0 zcfW}K3BKVU|4R)UWX>dH`1bbp=Q1}K2q@?>1eX<*+YGzGv=o8{_OmnDJ@A`K)m{Wv zgN2=Jnm=M7qi+#-Vt%-sD)h;*Vkd`7cl1(HcB0p}wh)i)^c@}FCMAVD`_yS@43i64 zC?mkt_#4tV$;qa*ZEtS}uSDB_)!)Ga$(+QWARX$wYdW z;ke7($6rI}V9e99dK|0fxE9L}88MyW4Lqjf=ywAtsbub826ny_CD=fnC@qLoNW=YP z2hb~)R#rhL68ZdTJ!d@n)Kp+%Wmr@l)XS|@9j&Stn?_}4XU`Ppi;3;3W~-O40+<)< z6xR|Rxceg8JVp8zX57Ay`* zN=lZWXMO$*Af0uDMU@jUO}os0+ngZZEHfRg*9B-e&4fAM0qF7$z_Fk2>NMM~^{~v;#8qw|BO6ux#0bB5=otzJ8BhOyJEUx%U2KP0qF6lJooD`|MA0zQ2-C-IyF=AJ3c-8}bS0xq zc8j<9_}sxx=-_QjQgC%Yuo3|h@CtCtn~D^)Zl2*I&F;(qamycu-+Y-tL3`Q;K9riS zJAFIRnS0wgDn+7bhKvVXl?VMJdaZ#lauF3oFE%^UvmY#)B`K z;wTfGiTSc|yR|s=)T>N?<1g3R`vtCmBtuOT2bmz1=xJKV%r z=DR1!ax$&i*qW6^ySK3u^65ib+T0us@8jE1mVasiY^cj^*KRB=&CDEabv?f!8&ft- z==vi}@ea-%3i7zH4v%>EpKpC+U%8$vuArJZxAe+4(*yfV&#aR@Eh<<1bE{RX*iQY@ z-?R>zSDGn#T~@#%fLZF&*XYx_l+o$@UKqfvTO43G%yoCw2RL7%XJhiq(_<$X#5Hn@&(B=_ z?sJQgkx?|oy2j)5<;$1gk_0F`%Wo|$vb}Bxm0u40GKdeDxwyC*N5T{}7;R>+;~@dj zjxz1r;(WFLC~6A)QiB8VSu?uoOzO>G_}+Ag2tYAA{-V5dOg2|9uS*FF8&a4Aq4Z(6 z{>;4_29m+$g2DEu1;&%-o6D6z20)&`)W+e#T-^;CM@L705vgleRQ#KdIDzq zsRda|F;QO-@dF_dxw&hG5HJg;g&DplsThF0@F`Q=-eDgd26HV^QrAAL34J~FM{At- z?!E9LOw2Ym&Hw~KIn09KaUw)#HSF3TTBDGP-RQ%KXUpQV?#1oVig2EhP3y3=vN{3# zC0TlMtbK4ihcGJum(zJ-d@S+e)YPRbFFEY;H*zob$|+`R?3}zlaS_LwLBzJ|AWs2& zh=^Z5^KA6~2$W{FG^S0wa`O!dW&`yoH{Q0}woM!oygFxDJUA7$#5*h&MrA5yn+`(d zqN%mKP& z1z2|nQ2l6XYlGW$K*M<|+N$f6O1Y+xRGW)7`GbfDWjSDlz>pHDPIO671m^#K(u9c~x}AagK@ zLXb3zr@&>=jE*(xjygeggig)xI7gwG4Ht?K_w{FwK#rp)lB5cgA}4S~IZnQF&jtWO zx@?;Ggv=UvT)<5DNM1D&+Rj-z-!NdY6fW^Gl|u%c!whgD3N{Q{>(s!)w$Zk>scC4S zqxz*Q;4=>_NB2dTLWITNyQ9X~X+ayu8+wI*#A{lZQi^b*R0qNNBglSjnBJ4zso&Uf zJkVekh7y2b!4^x8S1g>)>Vd&r^W#Xc(! zE)j8Y8hU!<7Y`2ptO+pYNB{-}w~_=u1~d9BKN<$-2fot{sVzSxik9%PE<@aeo&`D~ z{fhN(e0shKa?~*SMj;t9DE*ufnFAvW_px%ne%=3pqp4PIA4@AP#*G5!$EJ$=TwKom zS<2wsRcXjR6#vlkDnMfaCjgkpWpI!)N!>i$S(@pYT3w|->IHD)Av}Xp4getmpc?v_ zpu7O$^>7wCX67jAC^6mK8Pb5qOt4&>nJ_Xpn=S(}=@#81?eCU25yMnrOw0^_U%bf0 z$$5i>w_<#fRS!(bfuG~q8m~(c5fihS>waRgxB8)~gBOe^^jgAM{cMmMloS-v7{om5 zHRwQaqzI@0Ya6g@vv|3Lrqa^h4v66Upikl>;Te@93R5AMY6*Apff9(m26&VMR8FTs zqOl`h<3%95PW|%n@hD)E66uk+jMjx&6=1=7S5mg082@7{MFxR7tKA{3Q?xk7 z17%|DVWGI0U5ePgC3o(Mn3yaGI`E8un0i*#(g&W#Jj~1KG$^$2ut??Rx-zx2xI1Ca zlzUv4(=D`!9%!efqGF`5f1;!m4+CfzmoAonEsN)L{bqfa)yWi?Er539t*X+~OSwT1 z%pIBy1&^6DDMOAlK=)Dk8^0N z7{6JXQZUso>=JDVx~wXIYO#r)?%Kuix~e2~ad2?ZDt-AG?5TxG$Z^kwP48Q8wfoAl z@zj(KTU#bYeCt>_0}+yijQzNdF828Wd@k!sJW)=1Q>G;6T&c%%8;|k6E*K`Q>Wx%O+ zBaMKXuPitVJhv#S;w#sdz-2Q$)UkN-=$V0~t*yPab$@@^Ls=h!he;ceFhd-THP{N& zlm7Oms`+Rxrl(*JSW;93R20)Hfpbq?1(oQ?e;8Ds4GTr6LNINGb4n!LXyOn(Jp}f&r{{B8)d2hi^ zWQjvOFn^p*r6gznI=6*MusQQoi<*i&Tm`?IqfwiV5B7mXs;O0cc-QQHzEuH7l%SIU zrVe3Y;X+y|5fRpRgr7crO7w)_3p}r6dQRLYE~Z1 zGnnv<`*w^L!9H>g)+FSc4Gvuu39^A>j>1=(TR zl{Gc1je2HHN}Ge^2Da-&BNA;nsL|@ZAT6or0}S$y_Q-=4O`e@{zT=spxzqhR5|sDf zkA~S`UK-D!!_ny=tKx)yVJ~8Y$RQiDBOceoQ2RpPiip*r%B8&yo}Fc8)K35G06sz0 z6*8F5M7l0__q`R3H2e zmT)0TVr+Nry6s^R{Yo%By0naotbqJ=_n%H~Tfx5~!LjPqoEVW|WK@)q+XkIbW;&jH z+MuCf@D)ydS66k^jK@v_yX@@P?`Xki5nUKe z-A05(BUHbZx{OwzV#L2XemVQ&TC~3A4-583o$*|BY}T8%Qy7XxxZHG6Rbz^et2~o* z6crs@T*{etN5^;!+TsR!2OYU~bWuCk?$W~y=ONiC`oY`aNP~5MZ2iv&FWf*~ZEaH> zolL)n*4Bl`L@%|uZa6I}WL3x(0N1c+rp^JwTlK^sbE)Iow`W@|UhVDlb_LFjZ0*n0 zvxJ|^;5F$Z-vwp~Yu|U`&!?Tc*CcCTAS5fBl!-tPYQ_<&a&yy|EaCeE98S5Pe=>P> z?_;cHR#(kmev&!N8IOr_5-DY~vSMbnN$BhE*VB!W&AD|eWZd>sQW7a&bpq-T#sh)c zZ?UnV*(Bk7iH?p=F}KR4CdLRoIVCp8CeUB*ibbJkVBuEAo!hqo!z)zE7A?)%oIn$Z zMKSm2<+DIqVPE@otvB5f=&ai(`Qr@@2JnHBuH{^54IL-(n4=!h2hd=2l1QlC>G8#j zHG_}fYO01@JKpqUeFq{vFd{>)8N{21&F_UDd=M8G*UdyOwJ44Q3M#vzV*BT79v^Q^ z(W|^>hkgPdEadC`Do9S}8>AkeAm%8&J{m8!fC;P}*71{k-<1*G%w=|Wm1V!Emyvrx1e%RDc-#sZjG<59t*I={J!Sq`r5p`lm4C_)i*g)iHWDv zQNP}KwEDlEwtr=UNeU(={EAaBT;g`++8Hgqz9O;O+&t-j>+ap%Z`T;IRO}+&-WVGj zg9uq%N=mVQ(Bs3y>yX;?`S|!OEEqr$ps1^3cNbiMOz3NF;o^eBUj0oKpnl6S?>6@J z>2)OvM2AH?^|91x=U4@XbhCff3#EeyXJ&prVOw2%etoho|BK6>xpMeLm|cYXBcP(3 z;t|1W|nPX=A4ZZ#(}|GDD^1FE07V6vTxob`-)$Y53J z-4gS$eBCB(pLfpA&P+`00BckAHCL)|463Y*{VsO%=1oXq@Mbi?zntXN`cqfe%4H7s zQ@WOLI-;BzpIc2h^xO8_qN2BN-ptuXC`xesqnByj#^UKBr~`b`P3*$rVhVC{BSr86 z=IptF)_rs@64d+XlT03WzuOC#$0o0 zUmZ3H8Qb+(3I%>{YHU>6jJ&V}lGn2Gaxy}Eb0MdnK|x)Msi`)224R`^JI1RjHCtry zxfsQn?GSQ7DuB~OS5X-m#KpsF!fVdg<=hlkQ69N&I6cViq^{WTK4ics=iT%g$-RKy zvAU!b0hs;B8IqHedq@=ubKDi3Ip*dP5+5NlKJNyDAs#;GbVg!g1(X@e#!?E>QRGVP zvE0=*bM(*a#!D-}MFvoPf;NQ!ngfXc@g!D<=Fy|jS~B0x>+D^@xB9PB;=?2dkV{{` zzGZ5f)zi~+3mcOv32g5)#p8Khhw}B{?mWW)o8(sVs zfOF;Qm}1r6KkgVAJf@+cA^8;bU9PIClCL?O`M@at!VT~qfh3mu+kPZqo<(MLYwPON z%Vm65hYA{ohgEDS0NIV#X8NqHjjpMw$^B?#!rFS@jN_44MrJ0t;+KK~k_wTsQ}XYu z%*=}Ew0(<$A`XWZ*}0ieL3pGXg^0vuhg)-*fs&hsf{mVoY(VnpKI}`c!>T>CY+xqrUrIC8gaj2EiTcPMVlRs z=qswz%$6AMB#e!@c8y+)EJ=;r32Yx0V`9}=m^IjX2U;2eXH_^(;>kH_u2}efa0v;^ zXcl!6xTJZlVZ2s)moE1q!KWBq=HO0_@~=R&Z8A}pQBzY?%p8(amfl#QaHpXmFiIag zZ__@qzieIK2R8`>qrfHW9=eT+ffae(@T0TpD1}5cnY5^okdUZohIJd62*8kE9MZFa$Gb2e zK|GI3arTOE#153=g1;ENy+_H;ZUGLZ*pW`o&I0`Wh7=9p!-49FKg}{)2RB0j0f8H( z7T^n*DuGyBaxq{GR@?&oKKkJ+RveaK)GbrEH20bIVc?!e z3)t^$nJX8X%tbWYk>3nT<~Z7QbKP$IhpK!wp9Nh39~U1SuZoI_0mf(a7dB_*?yf(y zZIQPc3ft7w$Dqzf_6~pYgzT|){#&K=^t8~k4!Q2}=J(>gkI7wXne{zjFga9&YSjmj z^Cq=gRZQCUjaaCug|ksmPz**M)BatdmtyCOthpsQud{ri`2%i`lT;LhAO;NyOu(jt)f`49+T~NHcCD zP-h|WciRk!k3=9Cl=HtDM1GJL`)RcxllnI&h%CT-_1g8Ado)W+OH#3i^e3JtB4fa3 z6k^7wfF=W&Cy*9i$HIy*c+Pd>3=F!Vt&hsCt$lh{V%pw#=jG+>;)1m&7tb48W;!IZ z5Nm5^r(C{Um08v-?cm@5=JS_jo0`OE=Kvjw+?SRP!T6gqgi=VPo$MN{6;4hOchHh# zVNDJRxdV{-?MMzYLMAh3KY)Vk&mMGlk4FJjnqJD+FOJ*d6fo$>_>6A$PeX6siIHJ9 zHc2kd;~L52!Wz$`xn^x;70brc-#qMmR4mmeVZ5RsCAHQh-4*=(m3J){MD4fg9xN^` zb$7%N=RcL)B`>|91gPZoPSSud#ZWLKXTRk*JEI>Fe)r%&>he|0whBj$1%i2I8-+Fg zXv&Zfugn}7W#AYpC@3ILma=R;o648K@fGY7lU;vqO43NB#>TpC`b-ZeJS3laTN2Q* z%vo~#?yL!RQNquE_)s1dqoY%a4^sAezC7Tjk?l^RlGQ29?e+UQM1AeU_wSyh)mKF) ziY!5aL@wP!@f@|sKcnmY*6ZNlqHsb=rTuxQt|sz9Bc4U~8gT!6YiiJ%?i0H#ODo&R zE4Meo-U|__h)`tm&0rCLh#Jogt5iDgKsEsVog5BFa#mKmjVS?0GA1WqLOErk+Pyj} z^kQ3zAuL}xEh&ax+u#NXZR7SR=7#?MVuP<_X=~SYw6)1XeSLiTS~J7pYRqeh&)e$ea|Io|B%d;EfB4=B?tJKaK}K79%7cKpex$cMA_2Pva+&5F7?a(b2ti$*~V;5s7obd z_L)IJ(i0cMnFQZ&qg^jHaHs&^o5UY2WU}eGA$zLVplWi(ad+)R-?$;SI+&~;{NnIx z@4uYUBR{-!sar!P2GCT1cU0Thhs0gAq@vn+XSlQT%avPimKKdoGBW)>O2ovdBP%Pj z3X{PzsML8ge4IU_d%nHA-`2t5#-Q`*E5YV;>B>AYW9#*rahFwBtu~$|82=nrQ6-9v zfxSkGjHrb;6y3*f0sfP=xL&ap6gMbPDjZ{7J76@?j_nwLI_+LFCPP6Es)EG+!Y>kbZ`fO`fNBKi47J*k?< zQ*(eJ>h3sgWtKv%dk4huxqr&btL^TlW?|uX`53--kB5hcifUnZL=hhsmtR1@b-nh; z8VS3xySqE2lsY;(MzU&ZkH0D1+L(#Zq}Oyqkda$EqYmP$d(~QmtnZbMjE&JXRM$7^ z>gHCT3O;$_;qC3MfA{Nsa9q*q%aF%T`TCVZ>}vP;xEqkrGcz8zNW}f}g|$f8n?nlT zq7Yx--0XeKXIykxxi?PY^ycg5&rRJ)8QV8T@d!jiv-sv#uV zvX8%icsDpY&Ls+5BM$=9J)x!O#OuGGVPH`-exQHqpPRczlUorSW+%c#;MDyWI%Oon zo%s=z8F{XHWPVa$uRPf$08aV!tC*nXF*7k~<8Yzibwk+y?ZYy-Jqty5y7w`JME~F> zZ@0a5+7{OC-XKl#VdQ^$I)mEl)+E2`>l;Un=L3+LiaqcIPKlKi5g(lx9!^x_ae^4B z2dqRrs-*qUd;2whywk9@$!D+J*xbD1;Oyw!Wblz+BHk^Z{G?U58tc7p^aJIcp>3LK z=@u8oZ?z|Y!LqZm3ae1ICgpTH&N0KjZREvnB&<>}le9Ob-|mm#GnaPWl#XL&t6!2Oh# zW>jQ_rc?duG}P?hYdj!c9xavaegkbyobJr=Bb#Yn^kHF+uED`%wMxE|1u1L`0I)vy z&x(4Lh3W^MGWd2&aElvoSX7_*r=>;k-;9fktKR>?j#IU|uplBK5w`pkPb~P2=}58b zbUlgiUyN!5SIEGx4;sEKIL^>m6&0^2GZnE9O*XC(b@ISY6mH!GXUc#t7D{lniv(?M zi(*Z~!r^5~S{wYgk*ngftKkt^Um3+WpB*nMqIO0mcxiGYVuC9)LXNgAdVmtBshO+B zbHxH8NsICo1d9=LhkCD*^TF-AYV<^7`**I?Bkh0a2R9H(iU*Ed zHbaIDZ%(>2_l2y_k}#Z@HA)Z>t>ji8qRxc@9#;H;TPGagw+Ds+tCf3kP|y}p(l$4z zul4x*O1BdzSHdGB_aPSr6%&o3lt0*<^Ql$4oj^qtR4O^85B>Qup|5T|sHov&$KuWN zYJZ&pENw|n=7nTa`7`CHIrD(ozrVi^?#VMtta}5O$+X}qqJ7$O+0$A^R;nYGTd`dt zydXb6XYns)bYYnXr4WS2J+9fCK>hSxfxDTIa5?NIL#xduvWa`GLUxlAl3G0GDZxlT zNezDz)P5Hb!g7@hxL86M;gX{~o?Mw_*j0b=TU$TzIu2??ZzegpN*gB*%kTlusdfXZ zCM1uyNp(o4B`m5k6x<_Trm_>5AjU29So`Fg9j1`W)b2FRVqqHs>WeZFWxXl%cIjgO ze%Vk+|Fr$inHt1n!;0>y|LjO|y`x)N@_&2K@5k$?D{7wi)?jh;ko+YU*)K^uVeRC= z+DQHPH?IEI^RMC#06LB4msaHwZ_Wn(dExe_*MH(}iT==^;aL-s{s>6mAGWvu2&Cb3 z{(rP7@Pkh2|ImzZ{cC>C}hs45Sg1p7t28wDdEOMC$0Oi@jqU+#LQvAC4 zS&`{bvq#N68yg#_A8R@s4^F~fzRf2*+R6#5rF=Rqzi4g0>~p1hR_@X?_|p*%0IP$kqje1 zWfs4zBgOQW1n+H_gTLhE1=)vKMD~{go57+jF$u)QYZ1bMA-2cD!waE}O#nh<)|*k> z7-3bF5Eq{v%Lmh(WBzXG-{)UGKmY5@%#oPVYbq+y6Rs|@PEJwXIAvK?2I`KE-`{QF z;V{JXus{fOf}F-8_vso1J-Cxr-Se9v6lw9C>PnFoMn-q;@=`5z{}|I;3(npg7$3j? zkOSE``L@3Pk}@+7MSEA5(UQq31A6B9AmWQK1G2~YQ=r?s}VK^lzA0iUMQQfiu|;Nqv|=EXif>3Mm1w7{(Y z@x4AJUZkzPD*5~be!pgmEJ-cxY%DC+9)f8>^;uMslha?@C7qIwYu<2p=)95-t&6JD z>Q~&|Fql(QV|n`K2ZVW0f}}owmg#rteYVnSYNH@|!N=vO9UaX|OB2dgNJ~zx+8s6l zgQk;_$NN9M*4Hh=L{rkzD9y03F)P=QyFIR!|LBIBra}$Ckq~Y|alb zPftZQc6N5wbWoxolU`(-<68?24TJo&Yn;A?wXY8f@<0Wp3<)qPc6M}3@B5g~1m+wA z3|e#k43HrFUd%VXy(f%4vmB_}pPB%*1wH`*Cb77%m{>`mmRHGIHC`+7lM zUICsHR^UBNBQrA{6BF)l8bF+cCZWW~j|T@%)+ISPyT_$|KLdTXaA@sqZB;6e3gD4P zl@|Qb&u^|B0hni3HlA}9HyW;xUt<>?b{_=%!!%6f{Abn9Vov1R~nk`{*7|2#V3W+}^BO?RNs}c5yql*jQdd&%Sm@&9;LS3yK%=+4D zq4HwT*4B3R?s7y$;XI&}@`+`nS&~VeW#RJw3&2db~wk_7N}K~?4YlW^zT4qd%o6)Rb6Ad*NEQvR*tP-#k7j0Ri&u z+qWw=n=_-~a=yF`So|@NBEa&)9s{AXR9ajNG4pf~$%zoqGKGZ73qBwcx8)S&qobp+ z%q_IFt&fNtyd|$!hdN2$8aK2Bk@uZyb@O4?abCBekR&Mz5(avDzsTD~T9euY1gb{% zR9oMQ8Td?$jKF&A?5Mx~)Zct#cXxGlmDgt0kIl6Ux_A2<0q#in&fHv@dZ}?=2H@>N#rS?hQ`NN9ejLzQEOREMVDnmZ6uP4Mq%9P z^mqts{K&wv@w;+?g|btFx+?E0sq@_sm-%nbvLCgz(uct+s;U@S5o&3W|42!7)FkX( zWrxcKB9C~_H*b>j-m>4h6BZQ}l`k_zC;PaA(W#)8Sem`31AWwZwOzgwq zVHx;DuQWpkVPs8>?i!qm9gN8vF=B{s%}q`1E>Mzyb)95@4;?-IF<3)#adX3xM@yGY z;q{K2g9D0Oe=-=)rSYY37~FAnb%o91ehIt-MuLmSkiZE0hJ=R~n~$C3m%Z& z?zCK0Utizr*ROx8tHa3B1TmrRqwXcJM9AJg4dwU>Js~P8Djpv79n6n{q}P%ZKoK-J|f<^ywq8{z@6U1MWVTElBo4{O$L3Lb&1994Qy1Vt^HRruhi zR^wJduhN_k23>J+t8P}^ZefITYoY%JMv9;Q{X=_+rpw^7C8t_&gm(}kYgs9t6!isI zCXM^lq2L3a7T#DS;jCk0>Rw)6_7kUnD|JUh&v0nxNMIexjdpf+7cN}j1J}1A8pT`< zA{?AF_^@pvxhW7lTaMxdC1Y*!LZ&q`Mjv8QZ}r( zkR`M4Bj_YAU7EP=2onybM$(E3q3473XgY!&{R)b+=v@;2l9f1!^xSfD9E5V!s{`ha z$Jx2LnsRcqPJZ^TCMHW~qQ&_aQ&7G7j*j(MOIuq8{9F+T6Juj)C%<>^1oZW1bKQ0{ zK`Gv?q#egBu6+fkRE4PkS8rgQE$xP3Ysk+q`U`ze~66NN6db8#k6$SdjCn#2+`8H=bm>0rJ zN=ZyigbxfvTMhN~qAIdLs&(00g{+~d;utY;3_I2b2+BX;Fn|U4GYF-SJP0;3xBW@) zBa(HY+lq_xPS!mg3aR`-?HhO;%e)spPbEuE z$YsC1UW@K>CzkP4ll(t|_kX`!<>=MpZ@;6qck?X3eqL7p>;IsA_xjHI@0i*D2Jy7V zxgra~NOLB+b=P%9MY_B^mBjqZY^-1xQBy))UdA*$jKx~=s;@h7K6!OD2dee{m(fg#=wU2F>OX-Y^PIS!Fl@%irb+&hI_Ip%+2f9BY#fdL(|r| zI$!4Or@I0nIjBpCm1kSp*>SevOlK5kyV{s#!#gTC`9iGaQ@?_Mw_Rb0gFVylQEb2a zZ(=rf_ojkVSIyzY`3aBpoeV^C33%^pZxSoUexXzuPsDbuT}(<8vA_g!wwVp zlI{b~TO~i#7uMD9_PKN>GyJXqrJaKVgwyu6jqWS(>fors?Kz8A9z7PKgq=)N5q2^( zKk`4h=kLdqM5=&W%=z*EQ+|dAcOcq6l*RtPQeV=uo8xrFs7hj2GvW8D|DVf$%IXd2 zh~IN1@W|hP{_#kU|1$C1{qg^&EyKCE*#4^5+&uDu`_hszTt*&wx@J8`*;$};IsXLr z@BTXV`MdJJG|$!htW^O^Z}nFD$o>2GVM-0+YWEvMv(o`3qMlN`2S|tNqZ82F7h6pW zLK$PFAMP-yN1X{`A&~VNJu%=r8amv;Dl92MtynOaLvymGA6)zRwpx3r!xoPZww4Ag z49(4nH}64Y!%(^HKtd9~yc`ooqeuB{;sW>27Y^jHXk0wFDD{HrDy$ zZc860haFvx=#|SxhkpEMZ2SxpnH5>41MLhSe6NN|gVlnj3(58PZt-dB@iRw z6O26iUiJ|nHyN_kLdE$N7{I3hhX*5chuo5N=0P!13)5PkK7kh!#Ej_pw5r80Ih&N1 zx6zw^d!-rX8>XhTQ*u8vL&J1z>;z;JAaOfc($vINd%$EJtdh;f$O!dQVnU>$$j%)a zh3f-P*hKDJM6=Wh>Ii~F15`IwmX@L4wUPDEDumXkp!xJ1iRHxb4c~5AHMzm@aeZ_1 z$=TJaNenFa%?oAQT zzcmtc2N3+7XZhg0R$g94NEizW8B$6qBNLN}(&-PUD`H~4Fx9173%$~*_;SUGx#i`2 z_ldKG01mCQRW9=uWiSqd2Cb90sp<01dj`#+h6|6&EGM76dR1Ysr>uMcV-hLKkpH>w z4o%Rim)Ra{&RBnj%x7;x-JkHEe=HYd!V3y|K+yy_U3ZW7JdTN(Sy=L!%;xze&g~-c zsXw&<8SQ#Mr3I>`)m4b{*{=fs)tlG}%3@{k{(pHi(b8go+?7rH0Tvs(+uMGfshI^d z3;RKJAS4(bW-)>4zgppbKS-qKW|6kGg*1u}F8EcuKe4kDc~|2sg+(h?2_E zji5uJc{ouW8XoF5Iyf}sWZm1_;>5Y>#Q3b>`1mnr0^5(9X_6H1YY;(eTCw)+NY=P%j*dqGw@>wE?GKz9*lQbaVm-A@t)K0sZWOpnv*fz#VDaKQmq*NyAf$@Ukj zs~8A + + + + + + + + + + + + + + diff --git a/web/rigshare/client.js b/web/rigshare/client.js new file mode 100644 index 0000000..77d1a99 --- /dev/null +++ b/web/rigshare/client.js @@ -0,0 +1,215 @@ +// Connection, identity and HTTP helpers shared by every RigShare module. + +const LS = { + token: "rigshare.token", + guestId: "rigshare.guestId", + guestName: "rigshare.guestName", +}; + +function storageGet(key) { + try { return localStorage.getItem(key); } catch { return null; } +} + +function storageSet(key, value) { + try { + if (value == null) localStorage.removeItem(key); + else localStorage.setItem(key, value); + } catch { /* private mode */ } +} + +function randomId() { + return crypto.randomUUID?.() ?? Math.random().toString(36).slice(2) + Date.now().toString(36); +} + +export class RigClient extends EventTarget { + constructor() { + super(); + this.ws = null; + this.status = "offline"; // offline | connecting | online | denied + this.self = null; + this.users = []; + this.chat = []; + this.rooms = []; + this.stats = null; + this.server = {}; + this.retry = 0; + this.token = storageGet(LS.token); + this.guestId = storageGet(LS.guestId) || randomId(); + storageSet(LS.guestId, this.guestId); + this.guestName = storageGet(LS.guestName) || ""; + } + + get perms() { + return this.self?.perms ?? { edit: false, queue: false, admin: false }; + } + + get online() { + return this.status === "online"; + } + + emit(type, detail) { + this.dispatchEvent(new CustomEvent(type, { detail })); + } + + on(type, fn) { + this.addEventListener(type, (e) => fn(e.detail)); + } + + // ----- websocket ------------------------------------------------------ + + connect() { + clearTimeout(this.reconnectTimer); + const base = location.pathname.replace(/[^/]*$/, ""); + const url = `${location.protocol === "https:" ? "wss" : "ws"}://${location.host}${base}rigshare/ws`; + this.setStatus("connecting"); + const ws = new WebSocket(url); + this.ws = ws; + ws.onopen = () => { + this.retry = 0; + this.hello(); + }; + ws.onmessage = (e) => { + let msg; + try { msg = JSON.parse(e.data); } catch { return; } + this.handle(msg); + }; + ws.onclose = () => { + if (this.ws !== ws) return; + if (this.status !== "denied") this.setStatus("offline"); + const delay = Math.min(15000, 1000 * 2 ** this.retry++); + this.reconnectTimer = setTimeout(() => this.connect(), delay); + }; + } + + hello() { + this.send({ type: "hello", token: this.token, guest_id: this.guestId, name: this.guestName }); + } + + send(msg) { + if (this.ws?.readyState === WebSocket.OPEN) { + this.ws.send(JSON.stringify(msg)); + return true; + } + return false; + } + + setStatus(status) { + if (this.status === status) return; + this.status = status; + this.emit("status", status); + } + + handle(msg) { + switch (msg.type) { + case "welcome": + this.self = msg.self; + this.users = msg.users; + this.chat = msg.chat || []; + this.rooms = msg.rooms || []; + this.stats = msg.stats; + this.server = msg.server || {}; + this.setStatus("online"); + this.emit("self", this.self); + this.emit("presence", this.users); + this.emit("chat-history", this.chat); + this.emit("welcome", msg); + this.emit("server", this.server); + break; + case "denied": + this.self = null; + this.denyReason = msg.reason; + this.setStatus("denied"); + this.emit("self", null); + if (msg.login) this.gotoLogin(); + break; + case "self": + this.self = msg.self; + this.emit("self", this.self); + break; + case "logged_out": + this.setToken(null); + this.gotoLogin(); + this.emit("toast", { severity: "warn", summary: "RigShare", detail: "Your session ended. You are now a guest." }); + break; + case "presence": + this.users = msg.users; + this.rooms = msg.rooms || this.rooms; + this.emit("presence", this.users); + break; + case "server": + this.server = msg.server || {}; + this.emit("server", this.server); + break; + case "stats": + this.stats = msg.stats; + this.emit("stats", msg.stats); + break; + case "chat": + this.chat.push(msg.message); + if (this.chat.length > 500) this.chat.shift(); + this.emit("chat", msg.message); + break; + default: + this.emit(msg.type, msg); + } + } + + // ----- identity ------------------------------------------------------- + + setToken(token) { + this.token = token; + storageSet(LS.token, token); + } + + async login(username, password) { + const res = await this.request("POST", "/rigshare/api/login", { username, password }); + this.setToken(res.token); + this.reconnect(); + return res.user; + } + + async logout() { + try { await this.request("POST", "/rigshare/api/logout"); } catch { /* ignore */ } + this.setToken(null); + this.gotoLogin(); + } + + gotoLogin() { + const base = location.pathname.replace(/[^/]*$/, ""); + const next = encodeURIComponent(location.pathname + location.search + location.hash); + location.replace(`${base}rigshare/login?next=${next}`); + } + + rename(name) { + this.guestName = name; + storageSet(LS.guestName, name); + this.send({ type: "rename", name }); + } + + reconnect() { + const ws = this.ws; + this.ws = null; + this.status = "offline"; + ws?.close(); + this.connect(); + } + + // Headers that identify this browser to the ComfyUI HTTP API. + authHeaders() { + if (this.token) return { "X-RigShare-Token": this.token }; + return { "X-RigShare-Guest": this.guestId }; + } + + async request(method, path, body) { + const base = location.pathname.replace(/[^/]*$/, ""); + const res = await fetch(base + path.replace(/^\//, ""), { + method, + headers: { "Content-Type": "application/json", ...this.authHeaders() }, + body: body === undefined ? undefined : JSON.stringify(body), + }); + let data = null; + try { data = await res.json(); } catch { /* empty */ } + if (!res.ok) throw new Error(data?.error || `${res.status} ${res.statusText}`); + return data; + } +} diff --git a/web/rigshare/graphdoc.js b/web/rigshare/graphdoc.js new file mode 100644 index 0000000..f0df6d1 --- /dev/null +++ b/web/rigshare/graphdoc.js @@ -0,0 +1,106 @@ +// Workflow document patches. Mirrors apply_patch()/reconcile() in +// rigshare_core/graphdoc.py exactly: clients and server must reach the same +// document from the same patches. See that file for the patch format. + +const KEYED = ["links", "groups"]; +const MAX_KEYS = ["last_node_id", "last_link_id"]; + +export function linkId(link) { + return Array.isArray(link) ? link[0] : link?.id; +} + +export function linkEnds(link) { + return Array.isArray(link) + ? [link[1], link[2], link[3], link[4]] + : [link.origin_id, link.origin_slot, link.target_id, link.target_slot]; +} + +export function itemId(key, item) { + return key === "links" ? linkId(item) : item?.id; +} + +function num(value) { + const n = Number(value); + return value === null || value === undefined || Number.isNaN(n) ? -Infinity : n; +} + +function mergeKeyed(key, current, change) { + const items = [...(current || [])]; + const removed = new Set(change.removed || []); + const index = new Map(items.map((it, i) => [itemId(key, it), i])); + for (const it of change.upsert || []) { + const i = index.get(itemId(key, it)); + if (i === undefined) { + index.set(itemId(key, it), items.length); + items.push(it); + } else { + items[i] = it; + } + } + return items.filter((it) => !removed.has(itemId(key, it))); +} + +const slotKey = (id, slot) => JSON.stringify([id, slot]); + +export function reconcile(doc) { + const nodes = doc.nodes || []; + const nodeIds = new Set(nodes.map((n) => n.id)); + const links = doc.links; + if (!Array.isArray(links)) return doc; + const byTarget = new Map(); + // Stable sort by id: the newest link on an input slot wins. + const sorted = links.map((l, i) => [l, i]).sort((a, b) => (num(linkId(a[0])) - num(linkId(b[0]))) || (a[1] - b[1])); + for (const [link] of sorted) { + const [origin, , target, targetSlot] = linkEnds(link); + if (nodeIds.has(origin) && nodeIds.has(target)) byTarget.set(slotKey(target, targetSlot), link); + } + const keep = new Set([...byTarget.values()].map(linkId)); + doc.links = links.filter((l) => keep.has(linkId(l))); + for (const node of nodes) { + (node.inputs || []).forEach((slot, i) => { + if (slot && typeof slot === "object") { + const link = byTarget.get(slotKey(node.id, i)); + slot.link = link ? linkId(link) : null; + } + }); + (node.outputs || []).forEach((slot, j) => { + if (slot && typeof slot === "object") { + const ids = doc.links.filter((l) => { const e = linkEnds(l); return e[0] === node.id && e[1] === j; }).map(linkId); + slot.links = ids.length || (slot.links !== null && slot.links !== undefined) ? ids : null; + } + }); + } + return doc; +} + +export function applyPatch(doc, patch) { + if ("full" in patch) return structuredClone(patch.full); + doc = structuredClone(doc || {}); + const nodes = [...(doc.nodes || [])]; + const removed = new Set(patch.removed || []); + const index = new Map(nodes.map((n, i) => [n.id, i])); + for (let node of patch.nodes || []) { + node = structuredClone(node); + const i = index.get(node.id); + if (i === undefined) { + index.set(node.id, nodes.length); + nodes.push(node); + } else { + nodes[i] = node; + } + } + doc.nodes = nodes.filter((n) => !removed.has(n.id)); + for (const key of KEYED) { + const change = patch[key]; + if (change && typeof change === "object" && !Array.isArray(change)) doc[key] = mergeKeyed(key, doc[key], structuredClone(change)); + } + for (const [key, value] of Object.entries(patch.set || {})) { + if (key === "nodes") continue; + if (MAX_KEYS.includes(key) && typeof value === "number" && typeof doc[key] === "number") doc[key] = Math.max(doc[key], value); + else doc[key] = structuredClone(value); + } + for (const key of patch.unset || []) delete doc[key]; + const hasLinks = !!(patch.links?.upsert?.length || patch.links?.removed?.length); + if (hasLinks || patch.nodes?.length || patch.removed?.length) reconcile(doc); + return doc; +} diff --git a/web/rigshare/main.js b/web/rigshare/main.js new file mode 100644 index 0000000..4b45978 --- /dev/null +++ b/web/rigshare/main.js @@ -0,0 +1,273 @@ +// RigShare — multi-user collaboration for the modern ComfyUI frontend. +// Continued from ComfyUI-Nexus by daxcay (MIT). + +import { app } from "../../../scripts/app.js"; +import { api } from "../../../scripts/api.js"; +import { RigClient } from "./client.js"; +import { RoomSync } from "./sync.js"; +import { Presence } from "./presence.js"; +import { RigSharePanel } from "./panel.js"; +import { STYLES } from "./styles.js"; + +const TAB_ID = "rigshare"; +const ICON_CLASS = "rigshare-tab-icon"; + +function setting(id, fallback) { + try { + const v = app.extensionManager?.setting?.get(id); + return v === undefined ? fallback : v; + } catch { + return fallback; + } +} + +function installAuthHeaders(client) { + const original = api.fetchApi.bind(api); + api.fetchApi = (route, options = {}) => { + let headers = options.headers || {}; + if (headers instanceof Headers) headers = Object.fromEntries(headers.entries()); + return original(route, { ...options, headers: { ...headers, ...client.authHeaders() } }); + }; +} + +// ComfyUI Manager: hide its button and refuse its commands without the +// "manager" permission (the server blocks its API too). +const MANAGER_COMMANDS = ["Comfy.Manager.Menu.ToggleVisibility", "Comfy.Manager.CustomNodesManager.ToggleVisibility"]; +function installManagerGuard(client) { + const apply = () => { + const allowed = !client.online || !!client.perms.manager; + document.body.classList.toggle("rs-no-manager", !allowed); + for (const cmd of app.extensionManager?.command?.commands ?? []) { + if (!MANAGER_COMMANDS.includes(cmd.id) || cmd.__rigshare) continue; + const original = cmd.function; + cmd.function = (...args) => { + if (client.online && !client.perms.manager) { + client.emit("toast", { severity: "warn", summary: "RigShare", detail: "You need the Manager permission to open ComfyUI Manager. Ask an admin." }); + return; + } + return original(...args); + }; + cmd.__rigshare = true; + } + }; + client.on("self", apply); + client.on("status", apply); + setTimeout(apply, 2000); // Manager registers its commands during setup +} + +// Comfy.org account: hide the top-bar sign-in button and refuse the sign-in +// dialogs when the admin turned it off. +const SIGNIN_DIALOGS = ["global-signin", "api-nodes-signin"]; +function installComfyAccountGuard(client) { + const hidden = () => !!client.server?.hide_comfy_account; + const patchStores = () => { + const cmd = (app.extensionManager?.command?.commands ?? []).find((c) => c.id === "Comfy.User.OpenSignInDialog"); + if (cmd && !cmd.__rigshare) { + const original = cmd.function; + cmd.function = (...args) => (hidden() ? undefined : original(...args)); + cmd.__rigshare = true; + } + try { + const vueApp = document.querySelector("[data-v-app]")?.__vue_app__; + const dialogs = vueApp?.config?.globalProperties?.$pinia?._s?.get("dialog"); + if (dialogs && !dialogs.__rigshare) { + const show = dialogs.showDialog; + dialogs.showDialog = (options, ...rest) => { + if (hidden() && SIGNIN_DIALOGS.includes(options?.key)) return undefined; + return show.call(dialogs, options, ...rest); + }; + dialogs.__rigshare = true; + } + } catch (e) { + console.warn("[RigShare] could not hook dialogs", e); + } + }; + const apply = () => { + document.body.classList.toggle("rs-hide-comfy-account", hidden()); + patchStores(); + }; + client.on("server", apply); + setTimeout(apply, 2000); +} + +function installQueueGuard(client) { + const original = api.queuePrompt.bind(api); + api.queuePrompt = async (...args) => { + if (client.online && !client.perms.queue) { + throw new Error("RigShare: you do not have permission to queue prompts. Ask an admin, or log in with an account that can queue."); + } + return original(...args); + }; +} + +// Short two-tone "ping" synthesized with WebAudio (no asset to ship). +let audio = null; +function ping() { + try { + audio ??= new AudioContext(); + if (audio.state === "suspended") audio.resume(); + const now = audio.currentTime; + for (const [i, freq] of [880, 1320].entries()) { + const osc = audio.createOscillator(); + const gain = audio.createGain(); + osc.type = "sine"; + osc.frequency.value = freq; + const t = now + i * 0.11; + gain.gain.setValueAtTime(0.0001, t); + gain.gain.exponentialRampToValueAtTime(0.18, t + 0.015); + gain.gain.exponentialRampToValueAtTime(0.0001, t + 0.22); + osc.connect(gain).connect(audio.destination); + osc.start(t); + osc.stop(t + 0.25); + } + } catch { /* audio unavailable */ } +} + +function tabButton() { + return document.querySelector(`.${ICON_CLASS}`)?.closest("button"); +} + +function setBlink(on) { + tabButton()?.classList.toggle("rigshare-blink", on); +} + +// Remember the active palette so the login page (served before ComfyUI +// loads) can use the same colors. +const THEME_VARS = ["--bg-color", "--comfy-menu-bg", "--comfy-input-bg", "--fg-color", "--descrip-text", + "--border-color", "--p-primary-color", "--p-primary-contrast-color"]; +let lastTheme = ""; +function saveTheme() { + const css = getComputedStyle(document.documentElement); + const theme = Object.fromEntries(THEME_VARS.map((v) => [v, css.getPropertyValue(v).trim()]).filter(([, v]) => v)); + const json = JSON.stringify(theme); + if (json === lastTheme) return; + lastTheme = json; + try { localStorage.setItem("rigshare.theme", json); } catch { /* ignore */ } +} + +let rig = null; + +app.registerExtension({ + name: "Comfy.RigShare", + + settings: [ + { + id: "RigShare.ShareSaved", + category: ["RigShare", "Sharing", "ShareSaved"], + name: "Share saved workflows automatically (everyone opening the same file edits it together)", + type: "boolean", + defaultValue: true, + onChange: (v) => { if (rig) rig.sync.autoShareFiles = v; }, + }, + { + id: "RigShare.ShareUnsaved", + category: ["RigShare", "Sharing", "ShareUnsaved"], + name: "Share unsaved tabs automatically once they contain nodes", + type: "boolean", + defaultValue: true, + onChange: (v) => { if (rig) rig.sync.autoShareUnsaved = v; }, + }, + { + id: "RigShare.ShowCursors", + category: ["RigShare", "Presence", "ShowCursors"], + name: "Show other people's cursors and selections", + type: "boolean", + defaultValue: true, + onChange: (v) => { if (rig) { rig.presence.showCursors = v; rig.presence.redraw(); } }, + }, + { + id: "RigShare.ShowCursorNames", + category: ["RigShare", "Presence", "ShowCursorNames"], + name: "Show names next to cursors", + type: "boolean", + defaultValue: true, + onChange: (v) => { if (rig) { rig.presence.showNames = v; rig.presence.redraw(); } }, + }, + { + id: "RigShare.ChatSound", + category: ["RigShare", "Chat", "ChatSound"], + name: "Play a sound for new chat messages when the panel is closed", + type: "boolean", + defaultValue: true, + }, + { + id: "RigShare.ChatToasts", + category: ["RigShare", "Chat", "ChatToasts"], + name: "Show a notification for new chat messages when the panel is closed", + type: "boolean", + defaultValue: false, + onChange: (v) => { if (rig) rig.panel.chatToasts = v; }, + }, + ], + + commands: [ + { + id: "RigShare.OpenChat", + label: "RigShare: Open chat", + icon: "pi pi-comments", + function: async () => { + if (!rig?.panel.visible) await app.extensionManager.command.execute(`Workspace.ToggleSidebarTab.${TAB_ID}`); + rig?.panel.focusChat(); + }, + }, + { + id: "RigShare.ShareTab", + label: "RigShare: Share this tab", + icon: "pi pi-share-alt", + function: () => rig?.sync.shareCurrent(), + }, + ], + + async setup() { + const style = document.createElement("style"); + style.textContent = STYLES; + document.head.append(style); + + const client = new RigClient(); + const sync = new RoomSync(app, api, client); + const presence = new Presence(app, client, sync); + const panel = new RigSharePanel(app, client, sync, presence); + rig = { client, sync, presence, panel }; + window.rigshare = rig; // handy for debugging from the console + + sync.autoShareFiles = setting("RigShare.ShareSaved", true); + sync.autoShareUnsaved = setting("RigShare.ShareUnsaved", true); + presence.showCursors = setting("RigShare.ShowCursors", true); + presence.showNames = setting("RigShare.ShowCursorNames", true); + panel.chatToasts = setting("RigShare.ChatToasts", false); + + client.on("toast", (t) => app.extensionManager?.toast?.add({ life: 4000, ...t })); + installAuthHeaders(client); + installQueueGuard(client); + installManagerGuard(client); + installComfyAccountGuard(client); + presence.install(); + + app.extensionManager.registerSidebarTab({ + id: TAB_ID, + icon: `pi pi-users ${ICON_CLASS}`, + title: "RigShare", + tooltip: "RigShare — collaboration", + label: "RigShare", + type: "custom", + iconBadge: null, + render: (el) => panel.mount(el), + destroy: () => panel.unmount(), + }); + + // The registered tab object is wrapped by Vue; mutating it through the + // store keeps the unread badge reactive. + panel.onBadge = (badge) => { + const tab = app.extensionManager.getSidebarTabs?.().find((t) => t.id === TAB_ID); + if (tab) tab.iconBadge = badge; + setBlink(!!badge); + }; + panel.onNotify = () => { + if (setting("RigShare.ChatSound", true)) ping(); + }; + + client.connect(); + saveTheme(); + setInterval(saveTheme, 5000); + }, +}); diff --git a/web/rigshare/panel.js b/web/rigshare/panel.js new file mode 100644 index 0000000..2119cc4 --- /dev/null +++ b/web/rigshare/panel.js @@ -0,0 +1,722 @@ +// Sidebar panel: tabs for workflows, people, chat, server and admin, plus an +// account view (profile, password, API keys) behind the avatar button. + +import { h, initials, timeAgo, clock, roleChips, meter, storage } from "./ui.js"; +import { ServerWidget } from "./server-widget.js"; + +const ICON_URL = new URL("./assets/icon.svg", import.meta.url).href; + +const VIEWS = [ + { id: "workflows", icon: "pi-share-alt", label: "Workflows" }, + { id: "people", icon: "pi-users", label: "People" }, + { id: "chat", icon: "pi-comments", label: "Chat" }, + { id: "server", icon: "pi-server", label: "Server" }, + { id: "admin", icon: "pi-shield", label: "Admin", admin: true }, +]; + +export class RigSharePanel { + constructor(app, client, sync, presence) { + this.app = app; + this.client = client; + this.sync = sync; + this.presence = presence; + this.visible = false; + this.unread = 0; + this.chatToasts = false; + this.view = storage.get("rigshare.view") || "workflows"; + this.historyOpen = false; + this.newKey = null; + + this.widget = new ServerWidget(client, () => this.render()); + + this.header = h("div", { class: "rs-header" }); + this.nav = h("div", { class: "rs-nav", role: "tablist" }); + this.body = h("div", { class: "rs-body" }); + this.root = h("div", { class: "rs-panel" }, this.header, this.nav, this.body); + + this.chatLog = h("div", { class: "rs-chat-log" }); + this.chatInput = h("textarea", { + class: "rs-input rs-chat-input", placeholder: "Message… (Enter to send)", maxLength: 1000, rows: 1, + onkeydown: (e) => { + e.stopPropagation(); + if (e.key === "Enter" && !e.shiftKey) { e.preventDefault(); this.sendChat(); } + }, + }); + this.chatView = h("div", { class: "rs-chat" }, this.chatLog, + h("div", { class: "rs-chat-compose" }, this.chatInput, + h("button", { class: "rs-btn rs-btn-primary rs-btn-icon", title: "Send", onclick: () => this.sendChat() }, h("i", { class: "pi pi-send" })))); + + client.on("status", () => this.render()); + client.on("self", () => this.render()); + client.on("presence", () => this.renderSoft()); + client.on("stats", () => { if (this.view === "server") this.renderBody(); }); + client.on("chat-history", () => this.renderChatLog()); + client.on("chat", (m) => this.onChat(m)); + sync.addEventListener("state", () => { if (this.view === "workflows") this.renderBody(); }); + presence.addEventListener("follow", () => { if (this.view === "people") this.renderBody(); }); + this.render(); + } + + // ----- sidebar lifecycle --------------------------------------------- + + mount(container) { + container.classList.add("rs-host"); + container.append(this.root); + this.visible = true; + if (this.view === "chat") this.clearUnread(); + this.render(); + } + + unmount() { + this.visible = false; + } + + focusChat() { + this.setView("chat"); + setTimeout(() => this.chatInput.focus(), 50); + } + + setView(view) { + this.view = view; + storage.set("rigshare.view", view); + if (view === "chat") this.clearUnread(); + this.render(); + } + + get badge() { + return this.unread ? String(this.unread > 99 ? "99+" : this.unread) : null; + } + + clearUnread() { + if (!this.unread) return; + this.unread = 0; + this.onBadge?.(null); + } + + toast(severity, detail, summary = "RigShare") { + this.client.emit("toast", { severity, summary, detail }); + } + + async confirm(title, message) { + const dialog = this.app.extensionManager?.dialog; + if (dialog?.confirm) return !!(await dialog.confirm({ title, message })); + return window.confirm(`${title}\n\n${message}`); + } + + async prompt(title, message, defaultValue = "") { + const dialog = this.app.extensionManager?.dialog; + if (dialog?.prompt) return await dialog.prompt({ title, message, defaultValue }); + return window.prompt(`${title}\n\n${message}`, defaultValue); + } + + async run(fn, okMessage) { + try { + const result = await fn(); + if (okMessage) this.toast("success", okMessage); + return result; + } catch (e) { + this.toast("error", e.message || String(e)); + return undefined; + } + } + + // ----- frame ---------------------------------------------------------- + + render() { + this.renderHeader(); + this.renderNav(); + this.renderBody(); + } + + /** Presence changes: refresh counts and the current view if it shows people. */ + renderSoft() { + this.renderNav(); + if (["workflows", "people"].includes(this.view)) this.renderBody(); + } + + renderHeader() { + const c = this.client; + const s = c.status; + const label = { online: "Connected", connecting: "Connecting…", offline: "Offline", denied: "Signed out" }[s]; + const me = c.self; + this.header.replaceChildren(...[ + h("div", { class: "rs-title" }, h("img", { class: "rs-logo", src: ICON_URL, alt: "" }), + h("div", { class: "rs-title-text" }, + h("div", { class: "rs-title-name" }, c.server?.name || "RigShare"), + h("div", { class: `rs-status rs-status-${s}` }, h("span", { class: "rs-dot" }), label))), + me ? h("button", { + class: `rs-me-btn ${this.view === "account" ? "active" : ""}`, title: `${me.name} — account & API keys`, + onclick: () => this.setView(this.view === "account" ? "workflows" : "account"), + }, h("span", { class: "rs-avatar rs-avatar-sm", style: `background:${me.color}` }, initials(me.name))) : null, + ].filter(Boolean)); + } + + renderNav() { + const c = this.client; + const counts = { + people: c.users.length || null, + chat: this.unread || null, + workflows: c.rooms?.length || null, + }; + this.nav.replaceChildren(...VIEWS.filter((v) => !v.admin || c.perms.admin).map((v) => + h("button", { + class: `rs-tab ${this.view === v.id ? "active" : ""}`, role: "tab", title: v.label, + onclick: () => this.setView(v.id), + }, h("i", { class: `pi ${v.icon}` }), h("span", { class: "rs-tab-label" }, v.label), + counts[v.id] ? h("span", { class: `rs-count ${v.id === "chat" ? "hot" : ""}` }, counts[v.id]) : null))); + this.nav.style.display = c.self ? "" : "none"; + } + + renderBody() { + const c = this.client; + this.body.classList.toggle("rs-body-chat", this.view === "chat" && !!c.self); + if (!c.self) { + const failing = c.retry >= 2 && c.status !== "denied"; + this.body.replaceChildren(h("div", { class: "rs-empty" }, + h("i", { class: "pi pi-spin pi-spinner" }), + c.status === "denied" ? "Signed out — redirecting to login…" : c.status === "connecting" ? "Connecting…" : "Server unreachable, retrying…", + failing ? h("div", { class: "rs-small rs-hint" }, + "Can't open the live connection. If ComfyUI is behind a reverse proxy, enable WebSocket support for it (Nginx Proxy Manager: ", + h("b", {}, "Websockets Support"), ").") : null)); + return; + } + const views = { + workflows: () => this.workflowsView(), + people: () => this.peopleView(), + chat: () => [this.chatView], + server: () => this.serverView(), + admin: () => this.adminView(), + account: () => this.accountView(), + }; + if (this.view === "admin" && !c.perms.admin) this.view = "workflows"; + const scroll = this.body.scrollTop; + this.body.replaceChildren(...(views[this.view] ?? views.workflows)().filter(Boolean)); + this.body.scrollTop = scroll; + if (this.view === "chat") this.scrollChat(); + } + + section(icon, title, ...children) { + return h("section", { class: "rs-section" }, + h("div", { class: "rs-section-title" }, h("i", { class: `pi ${icon}` }), title), ...children); + } + + // ----- workflows ------------------------------------------------------ + + workflowsView() { + return [this.currentTabSection(), this.roomsSection()]; + } + + currentTabSection() { + const c = this.client; + const s = this.sync; + const wf = s.store?.activeWorkflow; + if (!wf) return this.section("pi-file", "This tab", h("p", { class: "rs-muted" }, "No tab open.")); + const room = s.target; + const head = h("div", { class: "rs-tab-head" }, + h("div", { class: "rs-name" }, s.tabName(wf)), + wf.isTemporary ? h("span", { class: "rs-chip" }, "unsaved") : null); + const row = h("div", { class: "rs-actions" }); + const body = [head]; + if (!room) { + body.push(h("p", { class: "rs-muted" }, wf.isTemporary + ? "Private until you edit it or share it." + : "Private — not synced with others.")); + row.append(h("button", { class: "rs-btn rs-btn-primary", onclick: () => s.shareCurrent() }, h("i", { class: "pi pi-share-alt" }), "Share this tab")); + } else { + const here = c.users.filter((u) => u.room === room.key); + const last = s.lastEditor && Date.now() - s.lastEditor.at < 60000 ? ` · ${s.lastEditor.name} editing` : ""; + body.push(h("div", { class: "rs-live-row" }, + s.live + ? h("span", { class: "rs-live" }, h("span", { class: "rs-live-dot" }), `Live · rev ${s.version}${last}`) + : h("span", { class: "rs-live rs-muted" }, h("i", { class: "pi pi-spin pi-spinner" }), "Joining…"), + h("span", { class: "rs-avatars" }, ...here.map((u) => h("span", { class: "rs-avatar rs-avatar-xs", style: `background:${u.color}`, title: u.name }, initials(u.name)))))); + body.push(this.accessLine()); + if (this.accessOpen && s.room?.manage) body.push(this.accessEditor()); + if (!s.canEdit) body.push(h("p", { class: "rs-note" }, h("i", { class: "pi pi-lock" }), c.perms.edit ? "View only in this workflow." : "View only — ask an admin for edit access.")); + if (s.canEdit) { + row.append(h("button", { + class: "rs-btn", title: "Save a named snapshot", onclick: async () => { + const label = await this.prompt("Snapshot", "Name this snapshot", `Snapshot ${new Date().toLocaleString()}`); + if (label === null || label === undefined) return; + await this.run(() => c.request("POST", "/rigshare/api/snapshots", { room: room.key, label: label || "Manual" }), "Snapshot saved"); + if (this.historyOpen) this.loadHistory(); + }, + }, h("i", { class: "pi pi-camera" }), "Snapshot")); + } + row.append( + h("button", { class: `rs-btn ${this.historyOpen ? "active" : ""}`, onclick: () => { this.historyOpen = !this.historyOpen; this.renderBody(); if (this.historyOpen) this.loadHistory(); } }, + h("i", { class: "pi pi-history" }), "History"), + h("button", { class: "rs-btn rs-btn-ghost", title: c.perms.admin ? "Stop sharing this tab (removed from the list if nobody else is in it)" : "Leave: stop syncing this tab and keep a private copy", onclick: () => s.unshareCurrent() }, + h("i", { class: "pi pi-eye-slash" }), "Stop sharing")); + } + this.historyEl ??= h("div", { class: "rs-history" }); + return this.section("pi-file", "This tab", ...body, row, room && this.historyOpen ? this.historyEl : null); + } + + accessLine() { + const s = this.sync; + const info = s.room; + if (!info) return null; + const owner = info.owner ? this.client.users.find((u) => u.key === info.owner)?.name ?? `@${info.owner}` : null; + return h("div", { class: "rs-access" }, + h("i", { class: `pi ${info.restricted ? "pi-lock" : "pi-globe"}` }), + h("span", { class: "rs-grow" }, info.restricted ? "Only people with access" : "Everyone can open it", + owner ? h("span", { class: "rs-muted" }, ` · owner ${owner}`) : null), + info.manage ? h("button", { + class: `rs-btn rs-btn-sm ${this.accessOpen ? "active" : ""}`, + onclick: () => { this.accessOpen = !this.accessOpen; this.accessDraft = null; this.renderBody(); }, + }, "Access") : null); + } + + accessEditor() { + const box = h("div", { class: "rs-access-editor" }, h("p", { class: "rs-muted" }, "Loading…")); + const key = this.sync.targetKey; + Promise.all([ + this.run(() => this.client.request("GET", `/rigshare/api/room/acl?key=${encodeURIComponent(key)}`)), + this.run(() => this.client.request("GET", "/rigshare/api/people")), + ]).then(([acl, people]) => { + if (!acl || !people) return; + const draft = this.accessDraft ??= { restricted: acl.restricted, members: { ...acl.members } }; + const render = () => { + const fixed = people.filter((p) => p.username === acl.owner || p.admin); + const choosable = people.filter((p) => p.username !== acl.owner && !p.admin); + const fixedRows = fixed.map((p) => h("div", { class: "rs-row-item" }, + h("div", { class: "rs-grow rs-min0 rs-ellipsis" }, p.display_name, h("span", { class: "rs-muted" }, ` @${p.username}`)), + h("span", { class: "rs-chip" }, p.username === acl.owner ? "Owner · always" : "Admin · always"))); + const rows = choosable + .map((p) => { + const select = h("select", { + class: "rs-input rs-select", disabled: !draft.restricted, + onchange: (e) => { if (e.target.value) draft.members[p.username] = e.target.value; else delete draft.members[p.username]; }, + }, ...[["", "No access"], ["view", "Can view"], ["edit", "Can edit"]].map(([v, label]) => + h("option", { value: v, selected: (draft.members[p.username] || "") === v }, label))); + return h("div", { class: "rs-row-item" }, + h("div", { class: "rs-grow rs-min0 rs-ellipsis" }, p.display_name, h("span", { class: "rs-muted" }, ` @${p.username}`), + p.edit ? null : h("span", { class: "rs-muted rs-small" }, " · viewer account")), + select); + }); + const radio = (value, label, hint) => h("label", { class: "rs-check rs-block" }, + h("input", { type: "radio", name: "rs-access", checked: draft.restricted === value, onchange: () => { draft.restricted = value; render(); } }), + h("span", {}, label, h("div", { class: "rs-muted rs-small" }, hint))); + box.replaceChildren(...[ + radio(false, "Everyone", "Anyone with an account can open it, with their usual permissions"), + radio(true, "Only people I choose", "The owner and admins always have access"), + draft.restricted ? h("div", { class: "rs-access-list" }, ...fixedRows, ...rows, + rows.length ? null : h("p", { class: "rs-muted rs-small" }, + "Everyone else is an admin, and admins always have access. Add accounts without Admin under Admin → Accounts to choose who can open this workflow.")) : null, + h("div", { class: "rs-actions" }, + h("button", { + class: "rs-btn rs-btn-primary", onclick: async () => { + const ok = await this.run(() => this.sync.setAccess(draft.restricted, draft.restricted ? draft.members : {}), "Access updated"); + if (ok !== undefined) { this.accessOpen = false; this.accessDraft = null; this.renderBody(); } + }, + }, "Save"), + h("button", { class: "rs-btn rs-btn-ghost", onclick: () => { this.accessOpen = false; this.accessDraft = null; this.renderBody(); } }, "Cancel")), + ].filter(Boolean)); + }; + render(); + }); + return box; + } + + async loadHistory() { + const room = this.sync.target; + if (!room) return; + this.historyEl.replaceChildren(h("p", { class: "rs-muted" }, "Loading…")); + const snaps = await this.run(() => this.client.request("GET", `/rigshare/api/snapshots?room=${encodeURIComponent(room.key)}`)); + if (!snaps) return; + if (!snaps.length) { + this.historyEl.replaceChildren(h("p", { class: "rs-muted" }, "No snapshots yet. They are taken automatically every few minutes while people edit.")); + return; + } + this.historyEl.replaceChildren(...snaps.map((snap) => h("div", { class: "rs-row-item" }, + h("div", { class: "rs-grow rs-min0" }, + h("div", { class: "rs-ellipsis" }, snap.label || "Auto", h("span", { class: "rs-muted" }, ` · ${snap.nodes} nodes`)), + h("div", { class: "rs-muted rs-small" }, `${timeAgo(snap.time * 1000)} · ${snap.author}`)), + h("button", { class: "rs-btn rs-btn-icon", title: "Open a private copy", onclick: () => this.openSnapshot(snap) }, h("i", { class: "pi pi-external-link" })), + this.sync.canEdit ? h("button", { + class: "rs-btn rs-btn-icon", title: "Restore for everyone", onclick: async () => { + if (!(await this.confirm("Restore snapshot", `Restore "${snap.label || "Auto"}" for everyone in this workflow?`))) return; + await this.run(() => this.client.request("POST", `/rigshare/api/snapshots/${snap.id}/restore`), "Snapshot restored"); + this.loadHistory(); + }, + }, h("i", { class: "pi pi-replay" })) : null))); + } + + async openSnapshot(snap) { + const data = await this.run(() => this.client.request("GET", `/rigshare/api/snapshots/${snap.id}`)); + if (!data) return; + const doc = structuredClone(data.doc); + if (doc.extra) delete doc.extra.rigshare; // a private copy, not the live room + await this.app.loadGraphData(doc, true, true, `${snap.room_name || "Snapshot"} (${snap.label || snap.id}).json`); + } + + roomsSection() { + const c = this.client; + const rooms = c.rooms || []; + const byId = new Map(c.users.map((u) => [u.id, u])); + const rows = rooms.map((r) => { + const here = r.key === this.sync.targetKey; + const members = r.members.map((id) => byId.get(id)).filter(Boolean); + return h("div", { class: `rs-row-item rs-room ${here ? "here" : ""}`, title: r.key.replace(/^file:workflows\//, "") }, + h("i", { class: `pi ${r.kind === "file" ? "pi-file" : "pi-file-edit"} rs-row-icon` }), + h("div", { class: "rs-grow rs-min0" }, + h("div", { class: "rs-name rs-ellipsis" }, r.name, r.restricted ? h("i", { class: "pi pi-lock rs-inline-icon rs-muted", title: "Restricted" }) : null), + members.length + ? h("div", { class: "rs-avatars" }, ...members.map((u) => h("span", { class: "rs-avatar rs-avatar-xs", style: `background:${u.color}`, title: u.name }, initials(u.name)))) + : h("div", { class: "rs-muted rs-small" }, `${timeAgo(r.updated * 1000)} · ${r.nodes} nodes`)), + !here && !members.length && c.perms.admin ? h("button", { + class: "rs-btn rs-btn-icon rs-danger", title: "Stop sharing (remove from this list)", + onclick: async () => { + if (!(await this.confirm("Stop sharing", `Remove "${r.name}" from the shared workflows? A snapshot is kept in its history.`))) return; + await this.run(() => c.request("DELETE", `/rigshare/api/room?key=${encodeURIComponent(r.key)}`), `"${r.name}" is no longer shared`); + }, + }, h("i", { class: "pi pi-trash" })) : null, + here ? h("span", { class: "rs-chip rs-chip-edit" }, "open") : h("button", { + class: "rs-btn rs-btn-icon", title: "Open", + onclick: () => this.run(() => this.sync.openRoom(r)), + }, h("i", { class: "pi pi-arrow-right" }))); + }); + return this.section("pi-share-alt", "Shared workflows", + ...(rows.length ? rows : [h("p", { class: "rs-muted" }, "Nothing shared yet. Open a saved workflow or edit a tab.")])); + } + + // ----- people --------------------------------------------------------- + + peopleView() { + const c = this.client; + const isAdmin = c.perms.admin; + const users = [...c.users].sort((a, b) => (a.id === c.self.id ? -1 : b.id === c.self.id ? 1 : a.joined - b.joined)); + const rows = users.map((u) => { + const self = u.id === c.self.id; + const following = this.presence.following === u.id; + const toggles = []; + if (isAdmin && !self && !u.perms.admin) { + for (const perm of ["edit", "queue", "manager"]) { + toggles.push(h("button", { + class: `rs-toggle ${u.perms[perm] ? "on" : ""}`, + title: `${u.perms[perm] ? "Revoke" : "Grant"} ${perm} permission${u.kind === "guest" ? "" : ` for @${u.key}`}`, + onclick: () => this.setPerm(u, perm, !u.perms[perm]), + }, { edit: "Edit", queue: "Queue", manager: "Manager" }[perm])); + } + } + const where = c.rooms.find((r) => r.key === u.room)?.name; + return h("div", { class: "rs-row-item rs-person" }, + h("span", { class: "rs-avatar", style: `background:${u.color}` }, initials(u.name)), + h("div", { class: "rs-grow rs-min0" }, + h("div", { class: "rs-name rs-ellipsis" }, u.name, self ? h("span", { class: "rs-muted" }, " (you)") : null, + u.idle ? h("i", { class: "pi pi-moon rs-muted rs-inline-icon", title: "Away" }) : null), + h("div", { class: "rs-chips" }, ...(toggles.length ? toggles : roleChips(u.perms))), + h("div", { class: "rs-where" }, h("i", { class: `pi ${where ? "pi-file" : "pi-lock"}` }), h("span", { class: "rs-ellipsis" }, where ?? "private tab"))), + self ? null : h("button", { + class: `rs-btn rs-btn-icon ${following ? "rs-btn-primary" : ""}`, + title: following ? "Stop following" : `Follow ${u.name} (jump to their tab and view)`, + onclick: () => this.presence.follow(following ? null : u.id), + }, h("i", { class: following ? "pi pi-eye-slash" : "pi pi-eye" }))); + }); + return [this.section("pi-users", `Online (${users.length})`, ...rows)]; + } + + async setPerm(user, perm, value) { + const perms = { [perm]: value }; + if (user.kind === "user") await this.run(() => this.client.request("PATCH", `/rigshare/api/users/${encodeURIComponent(user.key)}`, { perms })); + else await this.run(() => this.client.request("POST", `/rigshare/api/guests/${encodeURIComponent(user.guest_id)}`, perms)); + } + + // ----- chat ----------------------------------------------------------- + + sendChat() { + const text = this.chatInput.value.trim(); + if (!text) return; + if (this.client.send({ type: "chat", text })) this.chatInput.value = ""; + } + + chatLine(m) { + if (m.system) return h("div", { class: "rs-msg rs-msg-system" }, h("span", { class: "rs-time" }, clock(m.ts)), m.text); + const mine = m.from === this.client.self?.id; + return h("div", { class: `rs-msg ${mine ? "mine" : ""}` }, + h("div", { class: "rs-msg-head" }, + h("span", { class: "rs-msg-name", style: `color:${m.color}` }, m.name), + h("span", { class: "rs-time" }, clock(m.ts))), + h("div", { class: "rs-msg-text" }, m.text)); + } + + renderChatLog() { + this.chatLog.replaceChildren(...this.client.chat.slice(-200).map((m) => this.chatLine(m))); + this.scrollChat(); + } + + scrollChat() { + requestAnimationFrame(() => { this.chatLog.scrollTop = this.chatLog.scrollHeight; }); + } + + onChat(m) { + const atBottom = this.chatLog.scrollHeight - this.chatLog.scrollTop - this.chatLog.clientHeight < 40; + this.chatLog.append(this.chatLine(m)); + while (this.chatLog.childElementCount > 300) this.chatLog.firstChild.remove(); + if (atBottom || m.from === this.client.self?.id) this.scrollChat(); + const seen = this.visible && this.view === "chat" && !document.hidden; + if (!seen && !m.system && m.from !== this.client.self?.id) { + this.unread++; + this.onBadge?.(this.badge); + this.onNotify?.(m); + if (this.chatToasts && !this.visible) this.toast("info", m.text, m.name); + this.renderNav(); + } + } + + // ----- server --------------------------------------------------------- + + serverView() { + const st = this.client.stats; + const floating = this.widget.enabled; + const pop = h("button", { + class: `rs-btn ${floating ? "active" : ""}`, title: "Show a small floating monitor over the canvas", + onclick: () => this.widget.toggle(), + }, h("i", { class: "pi pi-window-maximize" }), floating ? "Floating: on" : "Pop out"); + if (!st) return [this.section("pi-server", "Server", h("p", { class: "rs-muted" }, "Waiting for data…"), pop)]; + const items = []; + if (st.cpu != null) items.push(meter("CPU", st.cpu, `${Math.round(st.cpu)}%`)); + if (st.ram_total) items.push(meter("RAM", (st.ram_used / st.ram_total) * 100, `${st.ram_used} / ${st.ram_total} GB`)); + const gpus = (st.gpus || []).map((g) => { + const extra = [g.temp != null ? `${g.temp}°C` : null, g.power != null ? `${g.power} / ${g.power_limit} W` : null].filter(Boolean).join(" · "); + return h("div", { class: "rs-gpu" }, + h("div", { class: "rs-gpu-name" }, h("span", {}, `GPU ${g.index} · ${g.name}`), h("span", { class: "rs-muted" }, extra)), + meter("Load", g.util, `${g.util}%`), + meter("VRAM", (g.vram_used / g.vram_total) * 100, `${g.vram_used.toFixed(1)} / ${g.vram_total.toFixed(0)} GB`)); + }); + const q = st.queue; + const queue = q ? h("div", { class: "rs-queue-line" }, h("i", { class: "pi pi-list" }), + q.running || q.pending ? `${q.running} running · ${q.pending} queued` : "Queue idle") : null; + return [this.section("pi-server", "Server", queue, ...items, h("div", { class: "rs-actions" }, pop)), + gpus.length ? this.section("pi-bolt", "GPUs", ...gpus) : null].filter(Boolean); + } + + // ----- account -------------------------------------------------------- + + accountView() { + const me = this.client.self; + const profile = this.section("pi-user", "Profile", + h("div", { class: "rs-me" }, + h("span", { class: "rs-avatar rs-avatar-lg", style: `background:${me.color}` }, initials(me.name)), + h("div", { class: "rs-grow rs-min0" }, + h("div", { class: "rs-name" }, me.name), + h("div", { class: "rs-muted rs-small" }, me.key ? `@${me.key}` : "guest"), + h("div", { class: "rs-chips" }, ...roleChips(me.perms)))), + me.kind === "user" ? this.profileForm(me) : null, + h("div", { class: "rs-actions" }, + h("button", { class: "rs-btn", onclick: () => this.client.logout() }, h("i", { class: "pi pi-sign-out" }), "Log out"))); + const out = [profile]; + if (me.kind === "user") { + out.push(this.passwordSection()); + this.keysEl ??= h("div", {}); + out.push(this.section("pi-key", "API keys", + h("p", { class: "rs-muted rs-small" }, "Use a key to call the ComfyUI API from scripts or other apps with your permissions: ", + h("code", {}, "Authorization: Bearer ")), + this.newKey ? h("div", { class: "rs-newkey" }, + h("div", { class: "rs-small" }, "Copy it now — it will not be shown again."), + h("div", { class: "rs-row" }, h("code", { class: "rs-grow rs-keytext" }, this.newKey), + h("button", { class: "rs-btn rs-btn-icon", title: "Copy", onclick: async () => { await navigator.clipboard?.writeText(this.newKey); this.toast("success", "Copied"); } }, h("i", { class: "pi pi-copy" })))) : null, + this.keysEl, this.keyForm())); + this.loadKeys(); + } + return out; + } + + profileForm(me) { + const display = h("input", { class: "rs-input", value: me.name, maxLength: 32 }); + return h("form", { + class: "rs-form", onkeydown: (e) => e.stopPropagation(), + onsubmit: async (e) => { + e.preventDefault(); + await this.run(() => this.client.request("POST", "/rigshare/api/me", { display_name: display.value.trim() }), "Display name saved"); + }, + }, h("label", { class: "rs-label" }, "Display name"), + h("div", { class: "rs-row" }, display, h("button", { class: "rs-btn", type: "submit" }, "Save"))); + } + + passwordSection() { + const cur = h("input", { class: "rs-input", type: "password", placeholder: "Current password", autocomplete: "current-password" }); + const next = h("input", { class: "rs-input", type: "password", placeholder: "New password (min 8)", autocomplete: "new-password" }); + return this.section("pi-lock", "Password", h("form", { + class: "rs-form", onkeydown: (e) => e.stopPropagation(), + onsubmit: async (e) => { + e.preventDefault(); + const res = await this.run(() => this.client.request("POST", "/rigshare/api/me", + { current_password: cur.value, new_password: next.value }), "Password changed; other sessions were signed out"); + if (res?.token) this.client.setToken(res.token); + if (res) { cur.value = ""; next.value = ""; } + }, + }, cur, next, h("button", { class: "rs-btn", type: "submit" }, "Change password"))); + } + + async loadKeys() { + const keys = await this.run(() => this.client.request("GET", "/rigshare/api/me/keys")); + if (!keys) return; + this.keysEl.replaceChildren(...keys.map((k) => h("div", { class: "rs-row-item" }, + h("i", { class: "pi pi-key rs-row-icon" }), + h("div", { class: "rs-grow rs-min0" }, + h("div", { class: "rs-name rs-ellipsis" }, k.name), + h("div", { class: "rs-muted rs-small" }, `${k.hint} · ${k.last_used ? `used ${timeAgo(k.last_used * 1000)}` : "never used"}`)), + h("button", { + class: "rs-btn rs-btn-icon rs-danger", title: "Revoke", onclick: async () => { + if (!(await this.confirm("Revoke API key", `Revoke "${k.name}"? Apps using it stop working.`))) return; + await this.run(() => this.client.request("DELETE", `/rigshare/api/me/keys/${k.id}`), "Key revoked"); + this.loadKeys(); + }, + }, h("i", { class: "pi pi-trash" }))))); + } + + keyForm() { + const name = h("input", { class: "rs-input", placeholder: "Key name, e.g. Open WebUI", maxLength: 40 }); + return h("form", { + class: "rs-form", onkeydown: (e) => e.stopPropagation(), + onsubmit: async (e) => { + e.preventDefault(); + const res = await this.run(() => this.client.request("POST", "/rigshare/api/me/keys", { name: name.value.trim() || "API key" })); + if (res) { this.newKey = res.key; this.renderBody(); } + }, + }, h("div", { class: "rs-row" }, name, h("button", { class: "rs-btn rs-btn-primary", type: "submit" }, h("i", { class: "pi pi-plus" }), "Create"))); + } + + // ----- admin ---------------------------------------------------------- + + adminView() { + this.adminAccounts ??= h("div", {}); + this.adminSettings ??= h("div", {}); + this.loadAdmin(); + return [ + this.section("pi-users", "Accounts", this.adminAccounts, this.createAccountForm()), + this.section("pi-cog", "Server settings", this.adminSettings), + ]; + } + + async loadAdmin() { + const [users, config] = await Promise.all([ + this.run(() => this.client.request("GET", "/rigshare/api/users")), + this.run(() => this.client.request("GET", "/rigshare/api/config")), + ]); + if (users) this.adminAccounts.replaceChildren(...users.map((u) => this.accountRow(u))); + if (config) this.adminSettings.replaceChildren(this.configForm(config)); + } + + accountRow(u) { + const me = u.username === this.client.self?.key; + const toggle = (perm, label) => u.perms.admin && perm !== "admin" ? h("button", { + class: "rs-toggle on locked", disabled: true, title: `Admins always have ${label}. Remove Admin to control it.`, + }, label) : h("button", { + class: `rs-toggle ${u.perms[perm] ? "on" : ""}`, title: `Toggle ${label}`, + onclick: async () => { + await this.run(() => this.client.request("PATCH", `/rigshare/api/users/${encodeURIComponent(u.username)}`, { perms: { [perm]: !u.perms[perm] } })); + this.loadAdmin(); + }, + }, label); + return h("div", { class: "rs-row-item" }, + h("div", { class: "rs-grow rs-min0" }, + h("div", { class: "rs-name rs-ellipsis" }, u.display_name, h("span", { class: "rs-muted" }, ` @${u.username}${me ? " (you)" : ""}`)), + h("div", { class: "rs-chips" }, toggle("edit", "Edit"), toggle("queue", "Queue"), toggle("manager", "Manager"), toggle("admin", "Admin"))), + h("button", { + class: "rs-btn rs-btn-icon", title: "Change display name", onclick: async () => { + const name = await this.prompt("Display name", `Name shown to others for @${u.username}${me ? " (you)" : ""}`, u.display_name); + if (name == null || name.trim() === u.display_name) return; + const ok = await this.run(() => this.client.request("PATCH", `/rigshare/api/users/${encodeURIComponent(u.username)}`, { display_name: name.trim() }), "Display name saved"); + if (ok) this.loadAdmin(); + }, + }, h("i", { class: "pi pi-id-card" })), + h("button", { + class: "rs-btn rs-btn-icon", title: "Change login username", onclick: async () => { + const name = await this.prompt("Change username", `New login username for @${u.username}${me ? " (you)" : ""}. Letters, digits, _ . -`, u.username); + if (!name || name.trim() === u.username) return; + const ok = await this.run(() => this.client.request("PATCH", `/rigshare/api/users/${encodeURIComponent(u.username)}`, { username: name.trim() }), `Renamed to @${name.trim()}`); + if (ok) this.loadAdmin(); + }, + }, h("i", { class: "pi pi-pencil" })), + h("button", { + class: "rs-btn rs-btn-icon", title: "Set password", onclick: async () => { + const pw = await this.prompt("Set password", `New password for @${u.username} (min 8 characters)`); + if (!pw) return; + await this.run(() => this.client.request("PATCH", `/rigshare/api/users/${encodeURIComponent(u.username)}`, { password: pw }), "Password changed; their sessions were signed out"); + }, + }, h("i", { class: "pi pi-key" })), + me ? null : h("button", { + class: "rs-btn rs-btn-icon rs-danger", title: "Delete account", onclick: async () => { + if (!(await this.confirm("Delete account", `Delete @${u.username}? This cannot be undone.`))) return; + await this.run(() => this.client.request("DELETE", `/rigshare/api/users/${encodeURIComponent(u.username)}`), "Account deleted"); + this.loadAdmin(); + }, + }, h("i", { class: "pi pi-trash" }))); + } + + createAccountForm() { + const username = h("input", { class: "rs-input", placeholder: "Username", autocomplete: "off" }); + const display = h("input", { class: "rs-input", placeholder: "Display name (optional)", autocomplete: "off" }); + const password = h("input", { class: "rs-input", placeholder: "Password (min 8)", type: "password", autocomplete: "new-password" }); + const check = (label, checked) => { const box = h("input", { type: "checkbox", checked }); return [box, h("label", { class: "rs-check" }, box, label)]; }; + const [edit, editL] = check("Edit", true); + const [queue, queueL] = check("Queue", true); + const [manager, managerL] = check("Manager", false); + const [admin, adminL] = check("Admin", false); + return h("details", { class: "rs-details" }, h("summary", {}, h("i", { class: "pi pi-user-plus" }), "New account"), + h("form", { + class: "rs-form", onkeydown: (e) => e.stopPropagation(), + onsubmit: async (e) => { + e.preventDefault(); + const ok = await this.run(() => this.client.request("POST", "/rigshare/api/users", { + username: username.value.trim(), password: password.value, display_name: display.value.trim() || null, + perms: { edit: edit.checked, queue: queue.checked, manager: manager.checked, admin: admin.checked }, + }), "Account created"); + if (ok) { username.value = display.value = password.value = ""; this.loadAdmin(); } + }, + }, username, display, password, + h("div", { class: "rs-row rs-wrap" }, editL, queueL, managerL, adminL), + h("button", { class: "rs-btn rs-btn-primary", type: "submit" }, "Create account"))); + } + + configForm(cfg) { + const text = (value, placeholder) => h("input", { class: "rs-input", value: value ?? "", placeholder }); + const box = (checked) => h("input", { type: "checkbox", checked: !!checked }); + const f = { + name: text(cfg.server_name, "Server name"), + login: box(cfg.require_login), + guests: box(cfg.allow_guests), + broadcast: box(cfg.broadcast_execution), + protect: box(cfg.api_protection?.enabled), + hideAccount: box(cfg.hide_comfy_account), + hideApiTemplates: box(cfg.hide_api_templates), + trusted: text((cfg.api_protection?.trusted_ips || []).join(", "), "127.0.0.1, 172.17.0.0/16"), + interval: h("input", { class: "rs-input rs-num", type: "number", min: 0, value: Math.round((cfg.snapshot_interval_sec ?? 300) / 60) }), + keep: h("input", { class: "rs-input rs-num", type: "number", min: 1, value: cfg.snapshot_keep ?? 30 }), + }; + const line = (input, label, hint) => h("label", { class: "rs-check rs-block" }, input, + h("span", {}, label, hint ? h("div", { class: "rs-muted rs-small" }, hint) : null)); + return h("form", { + class: "rs-form", onkeydown: (e) => e.stopPropagation(), + onsubmit: async (e) => { + e.preventDefault(); + const ok = await this.run(() => this.client.request("PATCH", "/rigshare/api/config", { + server_name: f.name.value.trim() || "RigShare", + require_login: f.login.checked, + allow_guests: f.guests.checked, + broadcast_execution: f.broadcast.checked, + hide_comfy_account: f.hideAccount.checked, + hide_api_templates: f.hideApiTemplates.checked, + api_protection: { enabled: f.protect.checked, trusted_ips: f.trusted.value.split(/[\s,]+/).filter(Boolean) }, + snapshot_interval_sec: Math.max(0, +f.interval.value || 0) * 60, + snapshot_keep: Math.max(1, +f.keep.value || 30), + }), "Settings saved"); + if (ok) { this.client.server.name = ok.server_name; this.renderHeader(); } + }, + }, + h("label", { class: "rs-label" }, "Server name"), f.name, + line(f.login, "Require login", "Everyone signs in before ComfyUI loads. API clients use API keys."), + line(f.guests, "Allow guests (only without required login)", "Visitors can watch and chat without an account"), + line(f.broadcast, "Share execution progress", "Everyone sees progress and previews, not only whoever queued"), + line(f.protect, "Enforce permissions on the ComfyUI API", "Blocks queueing, interrupting and uploads for users without permission"), + line(f.hideAccount, "Hide the Comfy.org account login", "Removes ComfyUI's own sign-in button and dialog (used for paid API nodes)"), + line(f.hideApiTemplates, "Hide API templates", "Removes templates that need paid API nodes from the template browser"), + h("label", { class: "rs-label" }, "Trusted IPs / networks (skip login and checks)"), f.trusted, + h("div", { class: "rs-row" }, h("label", { class: "rs-label rs-grow" }, "Auto snapshot every (min, 0 = off)"), f.interval), + h("div", { class: "rs-row" }, h("label", { class: "rs-label rs-grow" }, "Automatic snapshots kept"), f.keep), + h("button", { class: "rs-btn rs-btn-primary", type: "submit" }, h("i", { class: "pi pi-save" }), "Save settings")); + } +} diff --git a/web/rigshare/presence.js b/web/rigshare/presence.js new file mode 100644 index 0000000..b93ea01 --- /dev/null +++ b/web/rigshare/presence.js @@ -0,0 +1,202 @@ +// Remote cursors, remote selections and "follow" (spectate) mode. + +const CURSOR_TTL = 20000; + +export class Presence extends EventTarget { + constructor(app, client, sync) { + super(); + this.app = app; + this.client = client; + this.sync = sync; + this.cursors = new Map(); // client id -> {x, y, graph, sel, vp, at} + this.following = null; + this.showCursors = true; + this.showNames = true; + this.lastSent = ""; + this.pending = false; + + client.on("cursor", (m) => this.onCursor(m)); + let lastRoom = null; + sync.addEventListener("state", () => { + if (sync.targetKey !== lastRoom) { + lastRoom = sync.targetKey; + this.cursors.clear(); + this.redraw(); + } + }); + client.on("leave", (m) => { this.cursors.delete(m.id); this.redraw(); }); + client.on("presence", (users) => { + const ids = new Set(users.map((u) => u.id)); + for (const id of this.cursors.keys()) if (!ids.has(id)) this.cursors.delete(id); + if (this.following && !ids.has(this.following)) this.follow(null); + }); + + window.addEventListener("pointermove", () => { this.pending = true; }, { passive: true }); + // User takes the wheel: stop following. + window.addEventListener("pointerdown", (e) => { + if (this.following && e.target?.tagName === "CANVAS") this.follow(null); + }, true); + window.addEventListener("wheel", (e) => { + if (this.following && e.target?.tagName === "CANVAS") this.follow(null); + }, { capture: true, passive: true }); + + setInterval(() => this.sendState(), 70); + document.addEventListener("visibilitychange", () => { + client.send({ type: "idle", idle: document.hidden }); + }); + } + + install() { + const canvas = this.app.canvas; + const previous = canvas.onDrawForeground; + canvas.onDrawForeground = (ctx, area) => { + previous?.call(canvas, ctx, area); + try { this.draw(ctx); } catch (e) { console.error("[RigShare] draw", e); } + }; + } + + currentGraphId() { + const g = this.app.canvas?.graph; + const root = this.app.rootGraph ?? this.app.graph; + return !g || g === root ? null : g.id ?? null; + } + + viewport() { + const canvas = this.app.canvas; + const rect = canvas.canvas.getBoundingClientRect(); + const center = canvas.ds.convertCanvasToOffset([rect.width / 2, rect.height / 2]); + return { cx: Math.round(center[0]), cy: Math.round(center[1]), scale: +canvas.ds.scale.toFixed(3) }; + } + + sendState() { + if (!this.client.online || !this.app.canvas) return; + let msg; + if (!this.sync.live || document.hidden) { + msg = { type: "cursor", x: null, y: null }; + } else { + const [x, y] = this.app.canvas.graph_mouse ?? [0, 0]; + const sel = Object.keys(this.app.canvas.selected_nodes ?? {}); + msg = { type: "cursor", x: Math.round(x), y: Math.round(y), graph: this.currentGraphId(), sel, vp: this.viewport() }; + } + const key = JSON.stringify(msg); + if (key === this.lastSent) return; + this.lastSent = key; + this.client.send(msg); + } + + onCursor(m) { + if (m.room !== this.sync.targetKey) return; + this.cursors.set(m.id, { ...m, at: Date.now() }); + if (m.id === this.following && m.vp && this.sync.live) this.applyViewport(m.vp, m.graph); + this.redraw(); + } + + async follow(id) { + this.following = id || null; + const user = id && this.userFor(id); + const room = user?.room && this.client.rooms.find((r) => r.key === user.room); + if (room && room.key !== this.sync.targetKey) { + try { await this.sync.openRoom(room); } catch (e) { console.error("[RigShare] follow", e); } + } + const c = id && this.cursors.get(id); + if (c?.vp) this.applyViewport(c.vp, c.graph); + this.dispatchEvent(new CustomEvent("follow", { detail: this.following })); + } + + applyViewport(vp, graphId) { + if (graphId !== this.currentGraphId()) return; + const canvas = this.app.canvas; + const rect = canvas.canvas.getBoundingClientRect(); + canvas.ds.scale = vp.scale; + canvas.ds.offset[0] = rect.width / 2 / vp.scale - vp.cx; + canvas.ds.offset[1] = rect.height / 2 / vp.scale - vp.cy; + canvas.setDirty(true, true); + } + + redraw() { + this.app.canvas?.setDirty(true, false); + } + + userFor(id) { + return this.client.users.find((u) => u.id === id); + } + + draw(ctx) { + const visible = new Set(); + if (!this.sync.live || !this.showCursors) return this.pruneCursorEls(visible); + const canvas = this.app.canvas; + const graph = canvas.graph; + const scale = canvas.ds.scale; + const here = this.currentGraphId(); + const now = Date.now(); + + for (const [id, c] of this.cursors) { + const user = this.userFor(id); + if (!user || (c.graph ?? null) !== here) continue; + const color = user.color; + + // Selection outlines. + for (const nodeId of c.sel || []) { + const node = graph.getNodeById(isNaN(+nodeId) ? nodeId : +nodeId); + if (!node) continue; + const [x, y, w, h] = node.boundingRect ?? [node.pos[0], node.pos[1] - 30, node.size[0], node.size[1] + 30]; + ctx.save(); + ctx.strokeStyle = color; + ctx.lineWidth = 2 / scale; + ctx.setLineDash([6 / scale, 4 / scale]); + ctx.strokeRect(x - 4 / scale, y - 4 / scale, w + 8 / scale, h + 8 / scale); + ctx.restore(); + } + + if (c.x == null || now - c.at > CURSOR_TTL) continue; + visible.add(id); + this.placeCursor(id, user, c); + } + this.pruneCursorEls(visible); + } + + // Cursors live in a DOM layer above the canvas so they stay on top of + // DOM-rendered content (image previews, text widgets, Vue nodes). + overlay() { + if (!this.layer) { + this.layer = document.createElement("div"); + this.layer.className = "rs-cursor-layer"; + document.body.append(this.layer); + this.els = new Map(); + } + return this.layer; + } + + placeCursor(id, user, c) { + const layer = this.overlay(); + let el = this.els.get(id); + if (!el) { + el = document.createElement("div"); + el.className = "rs-cursor"; + el.innerHTML = ''; + layer.append(el); + this.els.set(id, el); + } + const canvas = this.app.canvas; + const rect = canvas.canvas.getBoundingClientRect(); + const [x, y] = canvas.ds.convertOffsetToCanvas([c.x, c.y]); + const inside = x >= 0 && y >= 0 && x <= rect.width && y <= rect.height; + el.style.display = inside ? "" : "none"; + el.style.transform = `translate(${rect.left + x}px, ${rect.top + y}px)`; + el.querySelector("path").setAttribute("fill", user.color); + const name = el.querySelector(".rs-cursor-name"); + name.textContent = user.name; + name.style.background = user.color; + name.style.display = this.showNames ? "" : "none"; + } + + pruneCursorEls(visible) { + if (!this.els) return; + for (const [id, el] of this.els) { + if (!visible.has(id)) { + el.remove(); + this.els.delete(id); + } + } + } +} diff --git a/web/rigshare/server-widget.js b/web/rigshare/server-widget.js new file mode 100644 index 0000000..d3964c2 --- /dev/null +++ b/web/rigshare/server-widget.js @@ -0,0 +1,99 @@ +// Optional floating server monitor: a small draggable card over the canvas. + +import { h, storage } from "./ui.js"; + +const KEY_ON = "rigshare.serverFloat"; +const KEY_POS = "rigshare.serverFloatPos"; + +function mini(label, pct, text) { + const p = Math.max(0, Math.min(100, pct || 0)); + const level = p > 90 ? "hot" : p > 70 ? "warm" : ""; + return h("div", { class: "rs-mini", title: `${label}: ${text}` }, + h("span", { class: "rs-mini-label" }, label), + h("span", { class: "rs-mini-track" }, h("span", { class: `rs-meter-fill ${level}`, style: `width:${p}%` })), + h("span", { class: "rs-mini-text" }, text)); +} + +export class ServerWidget { + constructor(client, onChange) { + this.client = client; + this.onChange = onChange; + this.enabled = storage.get(KEY_ON) === "1"; + this.el = null; + client.on("stats", () => this.render()); + if (this.enabled) this.show(); + } + + toggle() { + this.enabled = !this.enabled; + storage.set(KEY_ON, this.enabled ? "1" : null); + this.enabled ? this.show() : this.hide(); + this.onChange?.(); + } + + show() { + if (this.el) return; + this.body = h("div", { class: "rs-float-body" }); + const head = h("div", { class: "rs-float-head" }, + h("i", { class: "pi pi-server" }), h("span", { class: "rs-grow" }, "Server"), + h("button", { class: "rs-float-close", title: "Close", onclick: () => this.toggle() }, h("i", { class: "pi pi-times" }))); + this.el = h("div", { class: "rs-float rs-panel-vars" }, head, this.body); + let pos = null; + try { pos = JSON.parse(storage.get(KEY_POS)); } catch { /* default */ } + this.place(pos?.x ?? window.innerWidth - 300, pos?.y ?? 70); + document.body.append(this.el); + this.drag(head); + this.render(); + } + + hide() { + this.el?.remove(); + this.el = null; + } + + place(x, y) { + const w = this.el.offsetWidth || 260; + const hgt = this.el.offsetHeight || 120; + x = Math.max(4, Math.min(window.innerWidth - w - 4, x)); + y = Math.max(4, Math.min(window.innerHeight - hgt - 4, y)); + this.el.style.left = `${x}px`; + this.el.style.top = `${y}px`; + return { x, y }; + } + + drag(handle) { + handle.addEventListener("pointerdown", (e) => { + if (e.target.closest("button")) return; + e.preventDefault(); + const startX = e.clientX - this.el.offsetLeft; + const startY = e.clientY - this.el.offsetTop; + const move = (ev) => this.place(ev.clientX - startX, ev.clientY - startY); + const up = () => { + window.removeEventListener("pointermove", move); + window.removeEventListener("pointerup", up); + storage.set(KEY_POS, JSON.stringify({ x: this.el.offsetLeft, y: this.el.offsetTop })); + }; + window.addEventListener("pointermove", move); + window.addEventListener("pointerup", up); + }); + } + + render() { + if (!this.el) return; + const st = this.client.stats; + if (!st) { + this.body.replaceChildren(h("div", { class: "rs-muted rs-small" }, "Waiting for data…")); + return; + } + const rows = []; + if (st.cpu != null) rows.push(mini("CPU", st.cpu, `${Math.round(st.cpu)}%`)); + if (st.ram_total) rows.push(mini("RAM", (st.ram_used / st.ram_total) * 100, `${Math.round(st.ram_used)}G`)); + for (const g of st.gpus || []) { + rows.push(mini(`GPU${g.index}`, g.util, `${g.util}%${g.temp != null ? ` ${g.temp}°` : ""}`)); + rows.push(mini(`VRAM${g.index}`, (g.vram_used / g.vram_total) * 100, `${g.vram_used.toFixed(1)}G`)); + } + const q = st.queue; + if (q) rows.push(h("div", { class: "rs-mini-queue" }, q.running || q.pending ? `${q.running} running · ${q.pending} queued` : "queue idle")); + this.body.replaceChildren(...rows); + } +} diff --git a/web/rigshare/styles.js b/web/rigshare/styles.js new file mode 100644 index 0000000..3ddda20 --- /dev/null +++ b/web/rigshare/styles.js @@ -0,0 +1,199 @@ +// Panel styles. Colors come from ComfyUI's palette variables so everything +// follows the active theme. + +export const STYLES = ` +.rs-host { height: 100%; overflow: hidden; } +.rs-panel, .rs-panel-vars { + --rs-bg: var(--comfy-menu-bg, #202020); + --rs-bg2: var(--comfy-input-bg, #2a2a2a); + --rs-fg: var(--fg-color, #ddd); + --rs-muted: var(--descrip-text, #999); + --rs-border: var(--border-color, #3a3a3a); + --rs-accent: var(--p-primary-color, #3b82f6); + --rs-accent-fg: var(--p-primary-contrast-color, #fff); + --rs-soft: color-mix(in srgb, var(--rs-border) 55%, transparent); + color: var(--rs-fg); font-size: 13px; line-height: 1.4; +} +.rs-panel { display: flex; flex-direction: column; height: 100%; min-height: 0; } + +/* header */ +.rs-header { display: flex; align-items: center; gap: 8px; padding: 10px 12px 8px; } +.rs-title { display: flex; align-items: center; gap: 10px; flex: 1; min-width: 0; } +.rs-logo { width: 28px; height: 28px; border-radius: 7px; flex: none; display: block; + background: linear-gradient(135deg, #3b82f6, #a855f7); color: #fff; font-weight: 800; font-size: 14px; } +.rs-title-text { min-width: 0; } +.rs-title-name { font-weight: 650; font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.rs-status { display: flex; align-items: center; gap: 5px; font-size: 11px; color: var(--rs-muted); } +.rs-dot { width: 7px; height: 7px; border-radius: 50%; background: #888; } +.rs-status-online .rs-dot { background: #22c55e; box-shadow: 0 0 0 3px rgb(34 197 94 / .18); } +.rs-status-connecting .rs-dot { background: #eab308; } +.rs-status-offline .rs-dot, .rs-status-denied .rs-dot { background: #ef4444; } +.rs-me-btn { border: 2px solid transparent; background: none; padding: 1px; border-radius: 50%; cursor: pointer; } +.rs-me-btn:hover, .rs-me-btn.active { border-color: var(--rs-accent); } + +/* tabs */ +.rs-nav { display: flex; gap: 2px; padding: 0 8px; border-bottom: 1px solid var(--rs-border); } +.rs-tab { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; gap: 2px; position: relative; + padding: 6px 2px 7px; border: 0; border-bottom: 2px solid transparent; background: none; color: var(--rs-muted); + font: inherit; font-size: 10.5px; cursor: pointer; } +.rs-tab .pi { font-size: 15px; } +.rs-tab:hover { color: var(--rs-fg); } +.rs-tab.active { color: var(--rs-fg); border-bottom-color: var(--rs-accent); } +.rs-tab-label { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.rs-count { position: absolute; top: 2px; left: calc(50% + 6px); min-width: 15px; height: 15px; padding: 0 4px; border-radius: 8px; + background: var(--rs-bg2); color: var(--rs-muted); font-size: 9.5px; line-height: 15px; font-weight: 600; } +.rs-count.hot { background: #ef4444; color: #fff; } + +/* body + sections */ +.rs-body { flex: 1; min-height: 0; overflow-y: auto; padding: 10px 12px 14px; } +.rs-body-chat { display: flex; flex-direction: column; overflow: hidden; padding-bottom: 10px; } +.rs-section { margin-bottom: 14px; } +.rs-section-title { display: flex; align-items: center; gap: 7px; margin-bottom: 6px; color: var(--rs-muted); + font-size: 11px; font-weight: 650; text-transform: uppercase; letter-spacing: .05em; } +.rs-empty { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 40px 10px; color: var(--rs-muted); text-align: center; } +.rs-muted { color: var(--rs-muted); } +.rs-hint { max-width: 260px; line-height: 1.5; } +.rs-access { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 12px; } +.rs-access .pi { color: var(--rs-muted); } +.rs-btn-sm { padding: 3px 9px; font-size: 11px; } +.rs-access-editor { margin-top: 8px; padding: 8px 10px; border: 1px solid var(--rs-border); border-radius: 8px; background: color-mix(in srgb, var(--rs-bg2) 50%, transparent); } +.rs-access-list { margin-top: 8px; max-height: 240px; overflow-y: auto; } +.rs-input.rs-select { width: auto; flex: none; padding: 4px 6px; font-size: 12px; } +.rs-small { font-size: 11px; } +.rs-section p { margin: 4px 0 8px; } +.rs-note { display: flex; gap: 6px; align-items: center; color: var(--rs-muted); font-size: 12px; } +.rs-grow { flex: 1; } +.rs-min0 { min-width: 0; } +.rs-ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.rs-row { display: flex; gap: 6px; align-items: center; } +.rs-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; } +code { font-family: ui-monospace, monospace; font-size: 11px; background: var(--rs-bg2); padding: 1px 4px; border-radius: 4px; } + +/* list rows */ +.rs-row-item { display: flex; align-items: center; gap: 10px; padding: 7px 6px; border-radius: 6px; } +.rs-row-item + .rs-row-item { border-top: 1px solid var(--rs-soft); } +.rs-row-icon { color: var(--rs-muted); flex: none; width: 16px; text-align: center; } +.rs-room { cursor: default; } +.rs-room.here { background: color-mix(in srgb, var(--rs-accent) 12%, transparent); } +.rs-where { display: flex; align-items: center; gap: 5px; margin-top: 3px; color: var(--rs-muted); font-size: 11px; min-width: 0; } +.rs-where .pi { font-size: 10px; flex: none; } +.rs-inline-icon { margin-left: 6px; font-size: 11px; } + +/* this tab */ +.rs-tab-head { display: flex; align-items: center; gap: 8px; } +.rs-tab-head .rs-name { font-size: 14px; } +.rs-live-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 6px; flex-wrap: wrap; } +.rs-live { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; } +.rs-live-dot { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; animation: rs-pulse 1.6s infinite; flex: none; } +@keyframes rs-pulse { 50% { opacity: .35; } } +.rs-history { margin-top: 8px; max-height: 260px; overflow-y: auto; border: 1px solid var(--rs-soft); border-radius: 8px; padding: 2px 4px; } + +/* avatars, chips */ +.rs-avatar { width: 30px; height: 30px; border-radius: 50%; flex: none; display: inline-grid; place-items: center; + font-weight: 700; color: #111; font-size: 11px; } +.rs-avatar-sm { width: 28px; height: 28px; font-size: 10.5px; } +.rs-avatar-lg { width: 44px; height: 44px; font-size: 15px; } +.rs-avatar-xs { width: 20px; height: 20px; font-size: 8.5px; } +.rs-avatars { display: inline-flex; gap: 3px; flex-wrap: wrap; margin-top: 3px; } +.rs-name { font-weight: 600; } +.rs-me { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; } +.rs-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 3px; } +.rs-chip { font-size: 10px; line-height: 16px; padding: 0 7px; border-radius: 999px; border: 1px solid var(--rs-border); color: var(--rs-muted); white-space: nowrap; } +.rs-chip-admin { border-color: #f59e0b; color: #f59e0b; } +.rs-chip-edit { border-color: #22c55e; color: #22c55e; } +.rs-chip-queue { border-color: #38bdf8; color: #38bdf8; } +.rs-chip-manager { border-color: #c084fc; color: #c084fc; } +.rs-wrap { flex-wrap: wrap; } +/* Comfy.org account sign-in hidden by the admin */ +body.rs-hide-comfy-account [data-testid="login-button"], +body.rs-hide-comfy-account [data-testid="login-button-popover"] { display: none !important; } +/* ComfyUI Manager hidden for accounts without the "manager" permission */ +body.rs-no-manager .comfyui-button-group:has(> [title="ComfyUI Manager"]), +body.rs-no-manager [title="ComfyUI Manager"], +body.rs-no-manager [aria-label="ComfyUI Manager"] { display: none !important; } +.rs-toggle { font-size: 10px; line-height: 16px; padding: 0 8px; border-radius: 999px; border: 1px dashed var(--rs-border); background: none; color: var(--rs-muted); cursor: pointer; } +.rs-toggle.on { border-style: solid; border-color: #22c55e; color: #22c55e; } +.rs-toggle:hover { border-color: var(--rs-accent); } +.rs-toggle.locked { opacity: .55; cursor: default; } +.rs-toggle.locked:hover { border-color: #22c55e; } + +/* controls */ +.rs-form { display: flex; flex-direction: column; gap: 6px; margin-top: 6px; } +.rs-label { font-size: 11px; color: var(--rs-muted); margin-top: 4px; } +.rs-input { width: 100%; box-sizing: border-box; padding: 6px 8px; border-radius: 6px; border: 1px solid var(--rs-border); + background: var(--rs-bg2); color: var(--rs-fg); font: inherit; } +.rs-input:focus { outline: none; border-color: var(--rs-accent); } +.rs-num { width: 70px; flex: none; } +.rs-btn { display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 6px; border: 1px solid var(--rs-border); + background: var(--rs-bg2); color: var(--rs-fg); font: inherit; font-size: 12px; cursor: pointer; white-space: nowrap; } +.rs-btn:hover:not(:disabled), .rs-btn.active { border-color: var(--rs-accent); } +.rs-btn.active { color: var(--rs-accent); } +.rs-btn:disabled { opacity: .5; cursor: default; } +.rs-btn-primary, .rs-btn-primary.active { background: var(--rs-accent); border-color: var(--rs-accent); color: var(--rs-accent-fg); } +.rs-btn-ghost { background: none; } +.rs-btn-icon { padding: 5px 7px; flex: none; } +.rs-danger:hover { border-color: #ef4444 !important; color: #ef4444; } +.rs-check { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; font-size: 12px; } +.rs-block { display: flex; align-items: flex-start; margin-top: 4px; } +.rs-block input { margin-top: 3px; } +.rs-details { margin-top: 8px; border: 1px dashed var(--rs-border); border-radius: 8px; padding: 6px 8px; } +.rs-details summary { cursor: pointer; display: flex; align-items: center; gap: 6px; font-size: 12px; list-style: none; } +.rs-details summary::-webkit-details-marker { display: none; } +.rs-newkey { border: 1px solid #22c55e; border-radius: 8px; padding: 8px; margin: 6px 0; background: rgb(34 197 94 / .08); } +.rs-keytext { word-break: break-all; padding: 4px 6px; } + +/* chat */ +.rs-chat { flex: 1; min-height: 0; display: flex; flex-direction: column; } +.rs-chat-log { flex: 1; min-height: 0; overflow-y: auto; display: flex; flex-direction: column; gap: 8px; padding: 2px 2px 8px; } +.rs-msg { max-width: 92%; } +.rs-msg-head { display: flex; align-items: baseline; gap: 6px; } +.rs-msg-name { font-weight: 650; font-size: 12px; } +.rs-msg-text { margin-top: 2px; padding: 6px 9px; border-radius: 4px 10px 10px 10px; background: var(--rs-bg2); + font-size: 12.5px; white-space: pre-wrap; overflow-wrap: anywhere; width: fit-content; max-width: 100%; } +.rs-msg.mine { align-self: flex-end; } +.rs-msg.mine .rs-msg-head { justify-content: flex-end; } +.rs-msg.mine .rs-msg-text { border-radius: 10px 4px 10px 10px; background: color-mix(in srgb, var(--rs-accent) 22%, var(--rs-bg2)); margin-left: auto; } +.rs-msg-system { align-self: center; color: var(--rs-muted); font-size: 11px; font-style: italic; } +.rs-time { color: var(--rs-muted); font-size: 10px; font-variant-numeric: tabular-nums; margin-right: 4px; } +.rs-chat-compose { display: flex; gap: 6px; align-items: flex-end; border-top: 1px solid var(--rs-border); padding-top: 8px; } +.rs-chat-input { resize: none; max-height: 120px; min-height: 32px; } + +/* server */ +.rs-meter { margin-top: 7px; } +.rs-meter-top { display: flex; justify-content: space-between; font-size: 11px; margin-bottom: 3px; } +.rs-meter-track { height: 6px; border-radius: 3px; background: var(--rs-bg2); overflow: hidden; } +.rs-meter-fill { display: block; height: 100%; border-radius: 3px; background: #22c55e; transition: width .6s ease; } +.rs-meter-fill.warm { background: #eab308; } +.rs-meter-fill.hot { background: #ef4444; } +.rs-gpu + .rs-gpu { margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--rs-soft); } +.rs-gpu-name { display: flex; justify-content: space-between; gap: 8px; font-size: 12px; font-weight: 600; flex-wrap: wrap; } +.rs-gpu-name .rs-muted { font-weight: 400; font-size: 11px; } +.rs-queue-line { display: flex; align-items: center; gap: 6px; font-size: 12px; padding: 6px 8px; border-radius: 6px; background: var(--rs-bg2); } + +/* floating server monitor */ +.rs-float { position: fixed; z-index: 1000; width: 240px; background: var(--rs-bg); border: 1px solid var(--rs-border); + border-radius: 10px; box-shadow: 0 10px 30px rgb(0 0 0 / .35); font-size: 11px; user-select: none; } +.rs-float-head { display: flex; align-items: center; gap: 6px; padding: 6px 8px; cursor: grab; border-bottom: 1px solid var(--rs-border); + font-weight: 600; font-size: 11px; } +.rs-float-head:active { cursor: grabbing; } +.rs-float-close { border: 0; background: none; color: var(--rs-muted); cursor: pointer; padding: 2px; } +.rs-float-close:hover { color: var(--rs-fg); } +.rs-float-body { padding: 6px 8px 8px; display: flex; flex-direction: column; gap: 4px; } +.rs-mini { display: grid; grid-template-columns: 46px 1fr 62px; align-items: center; gap: 6px; } +.rs-mini-label { color: var(--rs-muted); } +.rs-mini-track { height: 5px; border-radius: 3px; background: var(--rs-bg2); overflow: hidden; } +.rs-mini-text { text-align: right; font-variant-numeric: tabular-nums; } +.rs-mini-queue { color: var(--rs-muted); text-align: center; margin-top: 2px; } + +/* remote cursors (DOM layer above canvas content) */ +.rs-cursor-layer { position: fixed; inset: 0; pointer-events: none; z-index: 900; overflow: hidden; } +.rs-cursor { position: absolute; left: 0; top: 0; will-change: transform; transition: transform 70ms linear; } +.rs-cursor svg { display: block; filter: drop-shadow(0 1px 1px rgb(0 0 0 / .4)); } +.rs-cursor-name { position: absolute; left: 13px; top: 17px; padding: 1px 6px; border-radius: 4px; color: #111; + font: 600 11px/16px system-ui, sans-serif; white-space: nowrap; } + +/* sidebar icon blink for unread chat */ +@keyframes rigshare-blink { 0%, 100% { box-shadow: none; } 50% { box-shadow: inset 0 0 0 2px var(--p-primary-color, #3b82f6); background: color-mix(in srgb, var(--p-primary-color, #3b82f6) 25%, transparent); } } +.rigshare-blink { animation: rigshare-blink 1.1s ease-in-out infinite; border-radius: 8px; } +.rigshare-blink .rigshare-tab-icon { color: var(--p-primary-color, #3b82f6); } +`; diff --git a/web/rigshare/sync.js b/web/rigshare/sync.js new file mode 100644 index 0000000..cc255b8 --- /dev/null +++ b/web/rigshare/sync.js @@ -0,0 +1,538 @@ +// Live sync of workflow tabs between browsers. +// +// Every shared tab maps to a room on the server: a saved workflow is the room +// "file:" (everyone opening the same file lands in the same room), an +// unsaved tab joins a room only after "Share this tab" ("tmp:", stored in +// the workflow's extra so it survives reloads and travels with the doc). +// +// Only the tab on screen is live. Switching tabs leaves the old room and joins +// the new one; the server copy is authoritative when a room already exists. +// +// Local edits are detected through the frontend change tracker (`graphChanged`) +// plus a light poll while dragging, diffed per node against the last synced +// state and sent as small patches. Remote patches that only touch existing +// nodes (move, resize, widget values, title, mode…) are applied in place; +// anything structural (added/removed nodes, links, groups, subgraphs) reloads +// the tab from the room document, keeping the local viewport. + +const LS_OVERRIDES = "rigshare.shareOverrides"; + +import { applyPatch, itemId } from "./graphdoc.js"; + +export { applyPatch }; + +// Split a workflow into keyed parts so edits diff per node / link / group. +export function snapshotOf(wf) { + const nodes = new Map(); + for (const n of wf?.nodes || []) nodes.set(n.id, JSON.stringify(n)); + const keyed = {}; + const groupsKeyed = Array.isArray(wf?.groups) && wf.groups.every((g) => g && g.id !== undefined && g.id !== null); + for (const key of ["links", "groups"]) { + if (key === "groups" && !groupsKeyed) continue; + if (!Array.isArray(wf?.[key])) continue; + keyed[key] = new Map(wf[key].map((it) => [itemId(key, it), JSON.stringify(it)])); + } + const rest = new Map(); + for (const [k, v] of Object.entries(wf || {})) if (k !== "nodes" && !keyed[k]) rest.set(k, JSON.stringify(v)); + return { nodes, keyed, rest }; +} + +export function diffSnapshots(base, snap) { + const patch = {}; + const nodes = []; + const added = []; + const removed = []; + for (const [id, json] of snap.nodes) { + const old = base.nodes.get(id); + if (old !== json) nodes.push(JSON.parse(json)); + if (old === undefined) added.push(id); + } + for (const id of base.nodes.keys()) if (!snap.nodes.has(id)) removed.push(id); + if (nodes.length) patch.nodes = nodes; + if (added.length) patch.added = added; + if (removed.length) patch.removed = removed; + + const set = {}; + const unset = []; + for (const key of ["links", "groups"]) { + const now = snap.keyed[key]; + const was = base.keyed[key]; + if (!now || !was) { + // Not keyed on one side (unusual shape): fall back to a plain set. + if (now) set[key] = [...now.values()].map((j) => JSON.parse(j)); + continue; + } + const upsert = []; + const newIds = []; + const gone = []; + for (const [id, json] of now) { + if (was.get(id) !== json) upsert.push(JSON.parse(json)); + if (!was.has(id)) newIds.push(id); + } + for (const id of was.keys()) if (!now.has(id)) gone.push(id); + if (upsert.length || gone.length) { + patch[key] = { upsert, removed: gone }; + if (key === "links" && newIds.length) patch[key].added = newIds; + } + } + for (const [k, json] of snap.rest) if (base.rest.get(k) !== json) set[k] = JSON.parse(json); + for (const k of base.rest.keys()) if (!snap.rest.has(k) && !snap.keyed[k]) unset.push(k); + if (Object.keys(set).length) patch.set = set; + if (unset.length) patch.unset = unset; + return Object.keys(patch).length ? patch : null; +} + +function stripView(wf) { + if (wf?.extra) { + delete wf.extra.ds; + } + return wf; +} + +export class RoomSync extends EventTarget { + constructor(app, api, client) { + super(); + this.app = app; + this.api = api; + this.client = client; + this.autoShareFiles = true; + this.autoShareUnsaved = true; + this.optedOut = new WeakSet(); // unsaved tabs the user chose to keep private + this.seen = new WeakMap(); // unsaved tab -> nodes when first seen + this.overrides = this.loadOverrides(); + + this.target = null; // room info of the tab on screen, or null + this.targetWf = null; // that tab's workflow object + this.targetKey = undefined; + this.ready = false; // server confirmed the join + this.doc = null; + this.version = 0; + this.baseline = null; + this.busy = Promise.resolve(); + this.applying = 0; + this.settleUntil = 0; + this.pointerDown = false; + this.lastEditor = null; + this.readOnlyForced = false; + this.room = null; // {role, manage, restricted, owner} of the joined room + this.denied = new Set(); // rooms we were refused; not retried until access changes + this.inFlight = 0; // our patches not yet acknowledged + this.crossed = false; // a remote patch arrived while ours were in flight + + client.on("welcome", () => { this.targetKey = undefined; this.tick(); }); + client.on("status", (s) => { if (s !== "online") { this.ready = false; this.emitState(); } }); + client.on("room", (msg) => this.onRoom(msg)); + client.on("room_info", (msg) => { + if (msg.room !== this.targetKey) return; + this.room = { role: msg.role, manage: msg.manage, restricted: msg.restricted, owner: msg.owner }; + this.updateReadOnly(); + this.emitState(); + }); + client.on("room_denied", (msg) => { + this.denied.add(msg.room); + if (msg.room === this.targetKey) { + this.ready = false; + this.room = null; + } + client.emit("toast", { severity: "warn", summary: "RigShare", detail: `You don't have access to "${msg.name}". Your tab stays as a private copy.` }); + this.updateReadOnly(); + this.emitState(); + }); + client.on("presence", () => { + // Access granted again: the room shows up in our list. + for (const key of this.denied) if (client.rooms.some((r) => r.key === key)) this.denied.delete(key); + }); + client.on("graph", (msg) => this.onRemotePatch(msg)); + client.on("doc", (msg) => this.onRemoteDoc(msg)); + client.on("ack", (msg) => { + if (msg.room !== this.targetKey) return; + this.version = msg.version; + this.inFlight = Math.max(0, this.inFlight - 1); + if (!this.inFlight && this.crossed) { + // Our edits and someone else's crossed on the way: fetch the + // server's merged result so every copy converges. + this.crossed = false; + this.client.send({ type: "request_doc", room: this.targetKey }); + } + this.emitState(); + }); + client.on("self", () => this.updateReadOnly()); + client.on("unshared", (msg) => { + const detail = msg.removed + ? `"${msg.name}" is no longer shared.` + : msg.others.length + ? `You left "${msg.name}". Still shared with ${msg.others.join(", ")}.` + : `You left "${msg.name}".`; + client.emit("toast", { severity: "info", summary: "RigShare", detail }); + }); + + api.addEventListener("graphChanged", () => this.checkLocal()); + window.addEventListener("pointerdown", (e) => { + if (e.target?.tagName === "CANVAS") this.pointerDown = true; + }, true); + window.addEventListener("pointerup", () => { + if (this.pointerDown) { + this.pointerDown = false; + setTimeout(() => this.checkLocal(), 30); + } + }, true); + // Drag updates stream at ~8 Hz; the tick notices tab switches and + // catches edits that bypass the change tracker. + setInterval(() => { if (this.pointerDown) this.checkLocal(); }, 120); + setInterval(() => this.tick(), 400); + } + + emitState() { + this.dispatchEvent(new CustomEvent("state")); + } + + get store() { + return this.app.extensionManager?.workflow; + } + + /** The tab on screen is shared and in sync with its room. */ + get live() { + return this.ready && !!this.targetKey; + } + + /** May edit the tab on screen: account permission, narrowed by the room's access list. */ + get canEdit() { + if (!this.client.perms.edit) return false; + return !this.targetKey || !this.room || this.room.role === "edit"; + } + + graph() { + return this.app.rootGraph ?? this.app.graph; + } + + serialize() { + return stripView(JSON.parse(JSON.stringify(this.graph().serialize()))); + } + + // ----- which room does a tab belong to -------------------------------- + + loadOverrides() { + try { return JSON.parse(localStorage.getItem(LS_OVERRIDES)) || {}; } catch { return {}; } + } + + saveOverrides() { + try { localStorage.setItem(LS_OVERRIDES, JSON.stringify(this.overrides)); } catch { /* ignore */ } + } + + tabName(wf) { + return (wf.filename ?? wf.path?.split("/").pop() ?? "Workflow").replace(/\.json$/, ""); + } + + roomFor(wf, extra) { + if (!wf) return null; + if (!wf.isTemporary) { + const shared = this.overrides[wf.path] ?? this.autoShareFiles; + return shared ? { key: `file:${wf.path}`, name: this.tabName(wf), kind: "file" } : null; + } + extra ??= (wf.changeTracker?.activeState ?? wf.activeState)?.extra; + const id = extra?.rigshare?.room; + return id ? { key: id, name: this.tabName(wf), kind: "tmp" } : null; + } + + activeRoom() { + const wf = this.store?.activeWorkflow; + // For the tab on screen, read the live graph (share flag may be fresh). + const room = this.roomFor(wf, this.graph()?.extra); + return { wf, room: room && this.denied.has(room.key) ? null : room }; + } + + /** Change who can open the room on screen (owner or admin). */ + async setAccess(restricted, members) { + if (!this.targetKey) return; + return await this.client.request("PUT", "/rigshare/api/room/acl", { key: this.targetKey, restricted, members }); + } + + // ----- joining -------------------------------------------------------- + + tick() { + if (!this.client.online || !this.store) return; + this.maybeAutoShare(); + const { wf, room } = this.activeRoom(); + const key = room?.key ?? null; + if (key !== this.targetKey || (key && wf !== this.targetWf)) { + this.switchTo(room, wf); + } else if (room && this.target && room.name !== this.target.name) { + this.target = room; // tab renamed + this.emitState(); + } else if (this.live && this.canEdit) { + this.checkLocal(); + } + this.updateReadOnly(); + } + + switchTo(room, wf) { + this.target = room; + this.targetWf = wf; + this.targetKey = room?.key ?? null; + this.ready = false; + this.baseline = null; + this.doc = null; + this.lastEditor = null; + this.inFlight = 0; + this.crossed = false; + this.room = null; + this.client.send(room + ? { type: "join", room: room.key, name: room.name, doc: this.serialize() } + : { type: "join", room: null }); + this.updateReadOnly(); + this.emitState(); + } + + onRoom(msg) { + if (msg.room !== this.targetKey) return; + this.version = msg.version; + this.room = { role: msg.role, manage: msg.manage, restricted: msg.restricted, owner: msg.owner }; + if (msg.created || !msg.doc) { + this.doc = this.serialize(); + this.ready = true; + this.settle(); + this.emitState(); + return; + } + this.doc = msg.doc; + this.ready = true; + const differs = diffSnapshots(snapshotOf(this.serialize()), snapshotOf(this.doc)); + if (differs) this.enqueue(() => this.loadDoc(true)); + else this.settle(); + this.updateReadOnly(); + this.emitState(); + } + + enqueue(fn) { + this.busy = this.busy.then(fn).catch((e) => console.error("[RigShare] sync error", e)); + return this.busy; + } + + /** Reload the tab on screen from the room document. */ + async loadDoc(keepView) { + const wf = this.store?.activeWorkflow; + if (!this.live || wf !== this.targetWf) return; + const doc = structuredClone(this.doc); + const ds = this.app.canvas?.ds; + if (keepView && ds) doc.extra = { ...(doc.extra || {}), ds: { scale: ds.scale, offset: [...ds.offset] } }; + this.applying++; + try { + await this.app.loadGraphData(doc, true, keepView, wf, { skipAssetScans: true, silentAssetErrors: true }); + } finally { + this.applying--; + } + this.settle(); + this.updateReadOnly(); + } + + settle(ms = 250) { + this.baseline = snapshotOf(this.serialize()); + this.settleUntil = performance.now() + ms; + clearTimeout(this.settleTimer); + this.settleTimer = setTimeout(() => { + if (this.live && !this.applying) this.baseline = snapshotOf(this.serialize()); + }, ms + 20); + } + + // ----- local -> remote ------------------------------------------------ + + checkLocal() { + if (!this.live || this.applying || !this.baseline || !this.client.online) return; + if (this.store?.activeWorkflow !== this.targetWf) return; + if (performance.now() < this.settleUntil) return; + const snap = snapshotOf(this.serialize()); + const patch = diffSnapshots(this.baseline, snap); + if (!patch) return; + if (!this.canEdit) { + // Viewers cannot change shared tabs: put it back. + clearTimeout(this.revertTimer); + this.revertTimer = setTimeout(() => this.enqueue(() => this.loadDoc(true)), 300); + return; + } + this.baseline = snap; + this.doc = applyPatch(this.doc, patch); + this.inFlight++; + this.client.send({ type: "graph", room: this.targetKey, patch }); + } + + // ----- remote -> local ------------------------------------------------ + + onRemoteDoc(msg) { + if (msg.room !== this.targetKey) return; + this.doc = msg.doc; + this.version = msg.version; + if (msg.reason) this.client.emit("toast", { severity: "info", summary: "RigShare", detail: msg.reason }); + this.enqueue(() => this.loadDoc(true)); + this.emitState(); + } + + onRemotePatch(msg) { + if (msg.room !== this.targetKey || !this.ready) return; + if (this.inFlight) this.crossed = true; + const patch = msg.patch; + this.doc = applyPatch(this.doc, patch); + this.version = msg.version; + this.lastEditor = { id: msg.from, name: msg.name, at: Date.now() }; + this.emitState(); + this.enqueue(async () => { + if (this.isStructural(patch)) { + // Send our own pending edits first so they are not lost. + this.checkLocal(); + await this.loadDoc(true); + } else { + this.applyInPlace(patch.nodes || []); + } + }); + } + + isStructural(patch) { + if ("full" in patch || patch.removed?.length || patch.unset?.length || patch.added?.length) return true; + if (patch.links || patch.groups) return true; + if (Object.keys(patch.set || {}).some((k) => !["last_node_id", "last_link_id"].includes(k))) return true; + const graph = this.graph(); + for (const data of patch.nodes || []) { + const node = graph.getNodeById(data.id); + if (!node) return true; + const links = (arr, key) => JSON.stringify((arr || []).map((s) => s?.[key] ?? null)); + if (links(data.inputs, "link") !== links(node.inputs, "link")) return true; + if (links(data.outputs, "links") !== links(node.outputs, "links")) return true; + if (data.type !== node.type) return true; + } + return false; + } + + applyInPlace(nodes) { + if (this.store?.activeWorkflow !== this.targetWf) return; + const graph = this.graph(); + const focused = document.activeElement; + // Keep unsent local edits: diff before touching anything. + this.checkLocal(); + this.applying++; + try { + for (const data of nodes) { + const node = graph.getNodeById(data.id); + if (!node) continue; + // Don't yank a text box out from under someone typing in it. + const typing = focused && node.widgets?.some((w) => w.element?.contains?.(focused)); + if (typing) continue; + node.configure(structuredClone(data)); + } + } finally { + this.applying--; + } + this.app.canvas?.setDirty(true, true); + this.settle(); + } + + // ----- permissions ---------------------------------------------------- + + updateReadOnly() { + const canvas = this.app.canvas; + if (!canvas) return; + const lock = this.live && !this.canEdit; + if (lock && !canvas.read_only) { + canvas.read_only = true; + this.readOnlyForced = true; + } else if (!lock && this.readOnlyForced) { + canvas.read_only = false; + this.readOnlyForced = false; + this.room = null; // {role, manage, restricted, owner} of the joined room + this.denied = new Set(); // rooms we were refused; not retried until access changes + this.inFlight = 0; // our patches not yet acknowledged + this.crossed = false; // a remote patch arrived while ours were in flight + } + } + + // ----- actions -------------------------------------------------------- + + /** Start sharing the tab on screen. */ + shareCurrent() { + const wf = this.store?.activeWorkflow; + if (!wf) return; + if (wf.isTemporary) { + const graph = this.graph(); + graph.extra ??= {}; + graph.extra.rigshare = { room: `tmp:${crypto.randomUUID?.() ?? Date.now().toString(36)}` }; + wf.changeTracker?.checkState(); + } else { + this.overrides[wf.path] = true; + this.saveOverrides(); + } + this.tick(); + } + + /** + * Unsaved tabs join a room on their own once someone edits them. Tabs that + * are merely open (the default workflow, restored tabs) stay private so the + * shared list is not flooded with untouched copies. + */ + maybeAutoShare() { + const wf = this.store.activeWorkflow; + if (!this.autoShareUnsaved || !wf?.isTemporary || this.optedOut.has(wf)) return; + const graph = this.graph(); + if (!graph || graph.extra?.rigshare?.room) return; + const sig = JSON.stringify(graph.serialize().nodes); + const seen = this.seen.get(wf); + const now = performance.now(); + // Keep re-baselining while the tab is still loading/settling. + if (!seen || now - seen.at < 3000) { + this.seen.set(wf, { sig, at: seen?.at ?? now }); + if (seen) seen.sig = sig; + return; + } + if (sig !== seen.sig && graph.nodes?.length) this.shareCurrent(); + } + + /** Stop sharing the tab on screen (keeps a private copy). */ + unshareCurrent() { + const wf = this.store?.activeWorkflow; + if (!wf) return; + if (this.targetKey) this.client.send({ type: "unshare", room: this.targetKey }); + if (wf.isTemporary) { + this.optedOut.add(wf); + delete this.graph().extra?.rigshare; + wf.changeTracker?.checkState(); + } else { + this.overrides[wf.path] = false; + this.saveOverrides(); + } + this.tick(); + } + + /** Find an already-open tab for a room. */ + findTab(room) { + for (const wf of this.store?.openWorkflows || []) { + const r = this.roomFor(wf); + if (r?.key === room.key) return wf; + } + return null; + } + + /** Open a room from the list (switching to its tab if already open). */ + async openRoom(room) { + const store = this.store; + let wf = this.findTab(room); + if (wf && wf === store.activeWorkflow) return; + const data = await this.client.request("GET", `/rigshare/api/room?key=${encodeURIComponent(room.key)}`); + if (!wf && room.kind === "file") { + const path = room.key.slice(5); + if (this.overrides[path] === false) { + delete this.overrides[path]; + this.saveOverrides(); + } + await store.syncWorkflows?.(); + wf = store.getWorkflowByPath?.(path) ?? null; + if (wf && !wf.isLoaded) await wf.load(); + } + if (wf) { + await this.app.loadGraphData(data.doc ?? wf.activeState, true, true, wf); + } else { + // Unsaved shared tab (or a file that no longer exists): open a + // temporary tab carrying the room id. + const doc = structuredClone(data.doc || {}); + doc.extra = { ...(doc.extra || {}), rigshare: { room: room.key } }; + await this.app.loadGraphData(doc, true, true, `${room.name}.json`); + } + this.tick(); + } +} diff --git a/web/rigshare/ui.js b/web/rigshare/ui.js new file mode 100644 index 0000000..583e82f --- /dev/null +++ b/web/rigshare/ui.js @@ -0,0 +1,64 @@ +// Small DOM helpers shared by the panel and widgets. + +export function h(tag, attrs = {}, ...children) { + const el = document.createElement(tag); + for (const [k, v] of Object.entries(attrs || {})) { + if (v == null || v === false) continue; + if (k === "class") el.className = v; + else if (k === "style") el.style.cssText = v; + else if (k.startsWith("on")) el.addEventListener(k.slice(2), v); + else if (k in el && typeof v !== "string") el[k] = v; + else el.setAttribute(k, v === true ? "" : v); + } + for (const c of children.flat()) { + if (c == null || c === false) continue; + el.append(c instanceof Node ? c : document.createTextNode(String(c))); + } + return el; +} + +export function initials(name) { + return (name || "?").split(/[\s_.-]+/).filter(Boolean).slice(0, 2).map((s) => s[0].toUpperCase()).join("") || "?"; +} + +export function timeAgo(ts) { + const s = Math.max(0, (Date.now() - ts) / 1000); + if (s < 60) return "just now"; + if (s < 3600) return `${Math.floor(s / 60)} min ago`; + if (s < 86400) return `${Math.floor(s / 3600)} h ago`; + return new Date(ts).toLocaleDateString(); +} + +export function clock(ts) { + return new Date(ts).toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" }); +} + +export function roleChips(perms) { + if (perms.admin) return [h("span", { class: "rs-chip rs-chip-admin" }, "Admin")]; + const chips = []; + if (perms.edit) chips.push(h("span", { class: "rs-chip rs-chip-edit" }, "Editor")); + if (perms.queue) chips.push(h("span", { class: "rs-chip rs-chip-queue" }, "Queue")); + if (perms.manager) chips.push(h("span", { class: "rs-chip rs-chip-manager" }, "Manager")); + if (!chips.length) chips.push(h("span", { class: "rs-chip" }, "Viewer")); + return chips; +} + +export function meter(label, pct, text) { + const p = Math.max(0, Math.min(100, pct || 0)); + const level = p > 90 ? "hot" : p > 70 ? "warm" : ""; + return h("div", { class: "rs-meter" }, + h("div", { class: "rs-meter-top" }, h("span", {}, label), h("span", { class: "rs-muted" }, text)), + h("div", { class: "rs-meter-track" }, h("div", { class: `rs-meter-fill ${level}`, style: `width:${p}%` }))); +} + +export const storage = { + get(key) { + try { return localStorage.getItem(key); } catch { return null; } + }, + set(key, value) { + try { + if (value == null) localStorage.removeItem(key); + else localStorage.setItem(key, value); + } catch { /* private mode */ } + }, +}; diff --git a/web/util.js b/web/util.js deleted file mode 100644 index 15edb9e..0000000 --- a/web/util.js +++ /dev/null @@ -1,25 +0,0 @@ -import { NexusSocket } from "./lib/nexus.sockets.js"; -import { NexusMouseManager } from "./lib/nexus.mouse.js"; -import { NexusWorkflowManager } from "./lib/nexus.workflow.js"; -import { NexusPromptControl } from "./lib/nexus.comfy.js"; -import { NexusCommands } from "./lib/nexus.cmd.js"; - -let app = window.comfyAPI.app.app; -let api = window.comfyAPI.api.api; -let nexusSocket = new NexusSocket() - -let nexus = { - name: "ComfyUI-Nexus", - async setup(app) { - app = app - let mouseManager = new NexusMouseManager(nexusSocket, app, 10) - let workflowManager = new NexusWorkflowManager(app, api, nexusSocket) - let nexusPromptControl = new NexusPromptControl(api, app, nexusSocket) - new NexusCommands(app, api, nexusSocket, mouseManager.color, mouseManager, workflowManager, nexusPromptControl) - nexusSocket.connect() - }, - async beforeConfigureGraph() { - } -} - -app.registerExtension(nexus); \ No newline at end of file