We're Hiring!
Whitepaper
Docs
Sign In
@olof
ยท
6 days ago
function
Visualizations
Get
Last Updated
6 days ago
Created
6 days ago
Function
filter
v1.0.0
Name
Visualizations
Downloads
28+
Saves
1+
Description
Chart, Generative Image, Fancy Text, Large Emoji, QR Code and Color Swatch via Markdown image URLs
Function Code
Show
""" title: Visualizations description: Chart, Generative Image, Fancy Text, Large Emoji, QR Code and Color Swatch via Markdown image URLs author: Olof Larsson version: 1.0.0 requirements: httpx, Pillow, async-lru, cachetools, vl-convert-python, aiohttp, pyhocon, regex, segno, replicate, openai, fal-client, psutil>=5.9.0 """ import asyncio import base64 import csv import hashlib import html import io import json import logging import mimetypes import os import platform import re import secrets import socket import threading import time from abc import ABC, abstractmethod from collections import defaultdict from collections.abc import Callable from functools import lru_cache from pathlib import Path from urllib.parse import unquote, urlparse import aiohttp import fal_client import httpx import openai import psutil import regex import replicate import segno import vl_convert from fastapi import Request from fastapi.responses import Response from open_webui.config import STATIC_DIR, WEBUI_URL from open_webui.env import AUDIT_EXCLUDED_PATHS, DATA_DIR from open_webui.main import app from PIL import Image, ImageDraw, ImageFont from pydantic import BaseModel, Field from pyhocon import ConfigFactory from starlette.routing import Route # ================================================================ # constants.py # ================================================================ INSTRUCTION_BASE_URL = (WEBUI_URL.value or "http://localhost:8080").rstrip("/") VISUALIZATIONS_DATA_DIR = Path(DATA_DIR) / "visualizations" VISUALIZATIONS_DATA_DIR.mkdir(parents=True, exist_ok=True) VISUALIZATION_CACHE_DIR = VISUALIZATIONS_DATA_DIR / "cache" VISUALIZATION_CACHE_DIR.mkdir(parents=True, exist_ok=True) # ================================================================ # utils_file_io.py # ================================================================ def get_string_from_file(filename: str) -> str: file_path = VISUALIZATIONS_DATA_DIR / filename if file_path.exists(): try: with open(file_path, encoding="utf-8") as f: content = f.read().strip() return content if content else "" except Exception: pass return "" def set_string_to_file(filename: str, content: str) -> None: file_path = VISUALIZATIONS_DATA_DIR / filename file_path.parent.mkdir(parents=True, exist_ok=True) with open(file_path, "w", encoding="utf-8") as f: f.write(content.strip()) # ================================================================ # utils_aspect.py # ================================================================ """ Utility functions for aspect ratio calculations and mappings. This module provides pure functions for: 1. Parsing aspect ratio strings 2. Calculating aspect ratios from dimensions 3. Finding closest matches in aspect maps 4. Formatting dimensions for APIs """ def parse_aspect_ratio(aspect_str: str) -> tuple[float, float] | None: """ Parse aspect ratio string like '16:9' or '1.78:1' into (width, height) tuple. Args: aspect_str: String representation of aspect ratio Returns: Tuple of (width, height) as floats, or None if parsing fails """ try: if ":" in aspect_str: parts = aspect_str.lower().split(":") if len(parts) == 2: width = float(parts[0]) height = float(parts[1]) if width > 0 and height > 0: return (width, height) except (ValueError, IndexError): pass return None def calculate_aspect_ratio(width: int, height: int) -> float: """ Calculate the aspect ratio from width and height. Args: width: Width in pixels height: Height in pixels Returns: Aspect ratio as float (width/height) """ if height == 0: raise ValueError("Height cannot be zero") return width / height def find_closest_aspect_ratio( target_ratio: float, aspect_map: dict[str, list[int]] ) -> str | None: """ Find the aspect ratio name with the closest match to the target ratio. Args: target_ratio: Target aspect ratio as float aspect_map: Map of aspect ratio names to [width, height] arrays Returns: Name of closest aspect ratio, or None if map is empty """ if not aspect_map: return None best_ratio_name = None best_distance = float("inf") for ratio_name, dimensions in aspect_map.items(): dim_width, dim_height = dimensions dim_ratio = calculate_aspect_ratio(dim_width, dim_height) distance = abs(target_ratio - dim_ratio) if distance < best_distance: best_distance = distance best_ratio_name = ratio_name return best_ratio_name def dimensions_to_size_string(width: int, height: int) -> str: """ Convert dimensions to 'wxh' size string for API calls. Args: width: Width in pixels height: Height in pixels Returns: Size string formatted as 'wxh' """ return f"{width}x{height}" def get_aspect_ratio_from_map( aspect_ratio: str, aspect_map: dict[str, list[int]] ) -> float: """ Get the actual aspect ratio from the aspect map. Args: aspect_ratio: Aspect ratio name aspect_map: Map of aspect ratio names to [width, height] arrays Returns: Actual aspect ratio as float, or default if not found """ if aspect_ratio in aspect_map: width, height = aspect_map[aspect_ratio] return calculate_aspect_ratio(width, height) # Fall back to parsing the aspect ratio string target_ratio = parse_aspect_ratio(aspect_ratio) if target_ratio: width, height = target_ratio return calculate_aspect_ratio(int(width), int(height)) # Default to first ratio in map if aspect_map: default_width, default_height = next(iter(aspect_map.values())) return calculate_aspect_ratio(default_width, default_height) raise ValueError("Empty aspect map provided") def resolve_aspect_ratio_to_size( aspect_ratio: str, aspect_map: dict[str, list[int]] ) -> str: """ Resolve aspect ratio to size string, finding closest match if needed. Args: aspect_ratio: Requested aspect ratio name aspect_map: Map of aspect ratio names to [width, height] arrays Returns: Size string formatted as 'wxh' """ # Direct match if aspect_ratio in aspect_map: width, height = aspect_map[aspect_ratio] return dimensions_to_size_string(width, height) # Parse and find closest match target_ratio = parse_aspect_ratio(aspect_ratio) if target_ratio: target_width, target_height = target_ratio target_value = calculate_aspect_ratio(target_width, target_height) closest_name = find_closest_aspect_ratio(target_value, aspect_map) if closest_name: closest_width, closest_height = aspect_map[closest_name] return dimensions_to_size_string(closest_width, closest_height) # Default fallback if aspect_map: default_width, default_height = next(iter(aspect_map.values())) return dimensions_to_size_string(default_width, default_height) raise ValueError("Cannot resolve aspect ratio: empty aspect map") def find_closest_aspect_ratio_name( target_ratio: tuple[float, float], aspect_map: dict[str, list[int]] ) -> str | None: """ Find the closest aspect ratio name from a parsed target ratio. Args: target_ratio: Tuple of (width, height) as floats aspect_map: Map of aspect ratio names to [width, height] arrays Returns: Name of closest aspect ratio, or None if no match found """ if not target_ratio or not aspect_map: return None target_width, target_height = target_ratio target_value = calculate_aspect_ratio(target_width, target_height) return find_closest_aspect_ratio(target_value, aspect_map) def get_default_aspect_ratio(aspect_map: dict[str, list[int]]) -> str: """ Get the default aspect ratio name from an aspect map. Args: aspect_map: Map of aspect ratio names to [width, height] arrays Returns: First aspect ratio name in the map """ if not aspect_map: raise ValueError("Cannot get default from empty aspect map") return next(iter(aspect_map.keys())) def get_default_dimensions(aspect_map: dict[str, list[int]]) -> list[int]: """ Get the default dimensions from an aspect map. Args: aspect_map: Map of aspect ratio names to [width, height] arrays Returns: First [width, height] array in the map """ if not aspect_map: raise ValueError("Cannot get default from empty aspect map") return next(iter(aspect_map.values())) # ================================================================ # image_generator_base.py # ================================================================ log = logging.getLogger(__name__) class ImageGenerator(ABC): @abstractmethod def get_api_token(self) -> str: pass @abstractmethod def _generate_image_impl(self, prompt: str, aspect_ratio: str) -> bytes: pass @abstractmethod def get_aspect_map(self) -> dict[str, list[int]]: pass def is_available(self) -> bool: return bool(self.get_api_token()) def generate_image(self, prompt: str, aspect_ratio: str) -> bytes: start_time = time.time() image_data = self._generate_image_impl(prompt, aspect_ratio) end_time = time.time() generation_time = end_time - start_time log.info( f"Generated image with {self.generator_name} (high quality, {aspect_ratio}) in {generation_time:.2f}s" ) return image_data # ================================================================ # utils_pass.py # ================================================================ def get_pass() -> str: return get_string_from_file("pass.txt") def set_pass(pass_value: str) -> None: set_string_to_file("pass.txt", pass_value) def get_or_create_pass() -> str: existing_pass = get_pass() if existing_pass: return existing_pass # Fall through to generate new pass new_pass = secrets.token_urlsafe(9) set_pass(new_pass) return new_pass VISUALIZATION_PASS = get_or_create_pass() # ================================================================ # utils_font_data.py # ================================================================ ROBOTO_SEMIBOLD_BASE64 = """AAEAAAASAQAABAAgR0RFRqZDpEwAAAOQAAACWEdQT1NdWGkuAABeAAAAWPxHU1VC+5TlMQAASAgAABX2T1MvMphLsZgAAAIwAAAAYFNUQVRe/UFBAAAB1AAAAFpjbWFwwSVh0wAACLgAAAaEY3Z0IDv4Jn0AAAKQAAAA/mZwZ22oBYQyAAAj3AAAD4ZnYXNwAAgAGQAAASwAAAAMZ2x5Zhp2LYcAALb8AAGGSmhlYWQJlmExAAABnAAAADZoaGVhCxAK6wAAAXgAAAAkaG10eFxfO0QAADNkAAAUpGxvY2ERBG40AAAZiAAAClRtYXhwCNkQxgAAATgAAAAgbmFtZbksqGcAAA88AAAKSnBvc3T/bQBkAAABWAAAACBwcmVweVjO0wAABegAAALOAAEAAgAIAAj//wAPAAEAAAUpAKkAFQB2AAcAAgAQAC8AmgAAAuYPdQADAAEAAwAAAAAAAP9qAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAHbP4MAAAJffos/jgJdQABAAAAAAAAAAAAAAAAAAAFKQABAAAAAwJO9LMZK18PPPUAGwgAAAAAAMTwES4AAAAA4dQCb/os/dUJdQhzAAAACQACAAAAAAAAAAEAAQAIAAMAAAAUAAMAAAAsAAJ3ZHRoAQEAAHdnaHQBAAABaXRhbAECAAIAIgAWAAYAAwACAAIBKAAAAAAAAQAAAAEAAQAAAQgCWAAAAAEAAAACAScAZAAAAAAABASWAlgABQAABZoFMwAAAR8FmgUzAAAD0QBmAgAAAAIAAAAAAAAAAADgAAL/UAAgWwAAACAAAAAAR09PRwBAAAD//QYA/gAAZgeaAgAgAAGfAAAAAAQ6BbAAAAAgAAMGAAAVBbAAFAWwABQEOgAUAAD/7AAA/+wAAP/s/mD/9QWwABUAAP/rAAAAvQDAAJ0AnQC6AJcAlwAnAMAAnQCGALwAqwC6AJoA0wCzAJkB4ACWALoAmgCpAQsAggCuAKAAjACVALkAqQAXAJMAmgB7AIsAoQDeAKAAjACdALYAJwDAAJ0ApACGAKIAqwC2AL8AugCCAI4AmgCiALIA0wCRAJkArQCzAL4ByQH9AJYAugBHAJgAnQCpAQsAggCZAJ8AqQCwAIEAhQCLAJQAqQC1ALoAFwBQAGMAeAB9AIMAiwCQAJgAogCuANQA3gEmAHsAiQCTAJ0ApQC0BI0AEAAAAAEAAgAOAAAAAAAAAigAAgBZACUAPgABAEQAXgABAGoAagABAHAAcAABAHUAdQABAIEAgQABAIMAgwABAIYAhgABAIkAiQABAIsAlgABAJgAnwABAKEAowABAKUApgABAKgArQADALEAsQABALoAuwABAL8AvwABAMEAwQABAMMAxAABAMcAxwABAMsAywABAM0AzgABANAA0QABANMA0wABANoA3gABAOEA4QABAOUA5QABAOcA6QABAOsA+wABAP0A/QABAP8BAQABAQMBAwABAQgBCQABARYBGgABARwBHAABASABIgABASQBJwADASoBKwABATMBNAABATYBNgABATsBPAABAUEBRAABAUcBSAABAUsBTQABAVEBUQABAVQBWAABAV0BXgABAWIBYgABAWQBZAABAWgBaAABAWoBbAABAW4BbgABAXABcAABAdUB2wACAewCAAABAgQCBAABAg0CDQABAg8CDwABAhYCGAABAhoCGwABAh0CHQABAiECIQABAiMCJQABAisCKwABAjACMgABAjQCNAABAkICQgABAkUCRQABAkcCRwABAkoCTQABAnkCfQABAo0CkgABApUC/QABAwADvwABA8EDwQABA8MDzQABA88D2AABA9oD9QABA/kD+QABA/sEAgABBAQEBgABBAkEDQABBA8EmgABBJ0EngABBKAEoQABBKMEpgABBLAFDAABBQ4FGAABBRsFKAABAAEAAwAAACoAAAAgAAAAEAACAAIAqACsAAABJAEnAAUAAgABAKgArAAAAAEAAQCtQP9+NH1VfD7/H3s7/x96Pf8feTtAH3g8/x93PD0fdjUHH3U6/x90OmcfczlPH3I5/x9xNv8fcDjNH284/x9uN14fbTfNH2w3/x9rNy0fajcYH2k0/x9oMv8fZzLNH2Yz/x9lMf8fZDD/H2Mwqx9iMGcfYS7/H2AugB9fL/8fXi+TH10t/x9cLP8fWyv/H1oqzR9ZKv8fWCoNH1cp/x9WKP8fVSckH1QnLR9TJV4fUiX/H1Elqx9QJv8fTyaAH04k/x9NIysfTCOrH0sj/x9KI1YfSSMrH0gi/x9HIP8fRiByH0Uh/x9EIXIfQx//H0Iekx9BHv8fQB3/Hz8c/x89O5NA6h88OzQfOjUOHzk2ch84Nk8fNzYiHzY1kx8zMkAf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ATEAGAGUAAMAAQQJATsAKAFsAAMAAQQJATwANAE4AAMAAQQJAT0AKgEOAAMAAQQJAT4ALgDgAAMAAQQJAT8ALAC0AAMAAQQJAUAAMACEAAMAAQQJAUEAKABcAAMAAQQJAUIAMgAqAAMAAQQJAUMAKgAAAFIAbwBiAG8AdABvAC0AQwBvAG4AZABlAG4AcwBlAGQAQgBsAGEAYwBrAFIAbwBiAG8AdABvAC0AQwBvAG4AZABlAG4AcwBlAGQARQB4AHQAcgBhAEIAbwBsAGQAUgBvAGIAbwB0AG8ALQBDAG8AbgBkAGUAbgBzAGUAZABCAG8AbABkAFIAbwBiAG8AdABvAC0AQwBvAG4AZABlAG4AcwBlAGQAUwBlAG0AaQBCAG8AbABkAFIAbwBiAG8AdABvAC0AQwBvAG4AZABlAG4AcwBlAGQATQBlAGQAaQB1AG0AUgBvAGIAbwB0AG8ALQBDAG8AbgBkAGUAbgBzAGUAZABSAGUAZwB1AGwAYQByAFIAbwBiAG8AdABvAC0AQwBvAG4AZABlAG4AcwBlAGQATABpAGcAaAB0AFIAbwBiAG8AdABvAC0AQwBvAG4AZABlAG4AcwBlAGQARQB4AHQAcgBhAEwAaQBnAGgAdABSAG8AYgBvAHQAbwAtAEMAbwBuAGQAZQBuAHMAZQBkAFQAaABpAG4AUgBvAGIAbwB0AG8ALQBCAGwAYQBjAGsAUgBvAGIAbwB0AG8ALQBFAHgAdAByAGEAQgBvAGwAZABSAG8AYgBvAHQAbwAtAEIAbwBsAGQAUgBvAGIAbwB0AG8ALQBNAGUAZABpAHUAbQBSAG8AYgBvAHQAbwAtAFIAZQBnAHUAbABhAHIAUgBvAGIAbwB0AG8ALQBMAGkAZwBoAHQAUgBvAGIAbwB0AG8ALQBFAHgAdAByAGEATABpAGcAaAB0AFIAbwBiAG8AdABvAC0AVABoAGkAbgBSAG8AbQBhAG4ATgBvAHIAbQBhAGwAQwBvAG4AZABlAG4AcwBlAGQAQwBvAG4AZABlAG4AcwBlAGQAIABCAGwAYQBjAGsAQwBvAG4AZABlAG4AcwBlAGQAIABFAHgAdAByAGEAQgBvAGwAZABDAG8AbgBkAGUAbgBzAGUAZAAgAEIAbwBsAGQAQwBvAG4AZABlAG4AcwBlAGQAIABTAGUAbQBpAEIAbwBsAGQAQwBvAG4AZABlAG4AcwBlAGQAIABNAGUAZABpAHUAbQBDAG8AbgBkAGUAbgBzAGUAZAAgAFIAZQBnAHUAbABhAHIAQwBvAG4AZABlAG4AcwBlAGQAIABMAGkAZwBoAHQAQwBvAG4AZABlAG4AcwBlAGQAIABFAHgAdAByAGEATABpAGcAaAB0AEMAbwBuAGQAZQBuAHMAZQBkACAAVABoAGkAbgBCAGwAYQBjAGsARQB4AHQAcgBhAEIAbwBsAGQAQgBvAGwAZABNAGUAZABpAHUAbQBMAGkAZwBoAHQARQB4AHQAcgBhAEwAaQBnAGgAdABUAGgAaQBuAEkAdABhAGwAaQBjAFcAaQBkAHQAaABXAGUAaQBnAGgAdABTAGUAbQBpAEIAbwBsAGQAUgBvAGIAbwB0AG8AaAB0AHQAcABzADoALwAvAG8AcABlAG4AZgBvAG4AdABsAGkAYwBlAG4AcwBlAC4AbwByAGcAVABoAGkAcwAgAEYAbwBuAHQAIABTAG8AZgB0AHcAYQByAGUAIABpAHMAIABsAGkAYwBlAG4AcwBlAGQAIAB1AG4AZABlAHIAIAB0AGgAZQAgAFMASQBMACAATwBwAGUAbgAgAEYAbwBuAHQAIABMAGkAYwBlAG4AcwBlACwAIABWAGUAcgBzAGkAbwBuACAAMQAuADEALgAgAFQAaABpAHMAIABsAGkAYwBlAG4AcwBlACAAaQBzACAAYQB2AGEAaQBsAGEAYgBsAGUAIAB3AGkAdABoACAAYQAgAEYAQQBRACAAYQB0ADoAIABoAHQAdABwAHMAOgAvAC8AbwBwAGUAbgBmAG8AbgB0AGwAaQBjAGUAbgBzAGUALgBvAHIAZwBHAG8AbwBnAGwAZQAuAGMAbwBtAEMAaAByAGkAcwB0AGkAYQBuACAAUgBvAGIAZQByAHQAcwBvAG4ARwBvAG8AZwBsAGUAUgBvAGIAbwB0AG8AIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABHAG8AbwBnAGwAZQAuAFIAbwBiAG8AdABvAC0AUwBlAG0AaQBCAG8AbABkAFYAZQByAHMAaQBvAG4AIAAzAC4AMAAwADkAOwAgADIAMAAyADQAMwAuADAAMAA5ADsARwBPAE8ARwA7AFIAbwBiAG8AdABvAC0AUwBlAG0AaQBCAG8AbABkAFIAZQBnAHUAbABhAHIAUgBvAGIAbwB0AG8AIABTAGUAbQBpAEIAbwBsAGQAQwBvAHAAeQByAGkAZwBoAHQAIAAyADAAMQAxACAAVABoAGUAIABSAG8AYgBvAHQAbwAgAFAAcgBvAGoAZQBjAHQAIABBAHUAdABoAG8AcgBzACAAKABoAHQAdABwAHMAOgAvAC8AZwBpAHQAaAB1AGIALgBjAG8AbQAvAGcAbwBvAGcAbABlAGYAbwBuAHQAcwAvAHIAbwBiAG8AdABvAC0AYwBsAGEAcwBzAGkAYwApAAAAAAAyADIAMgAyADIAWgB5AK8BJQGmAhsCLwJfAo8CvALZAvMDBAMfAzMDgQOaA9kEQQRtBLoFFAUxBaEF+wYHBhMGOAZTBngGygd0B6wIDAhSCJEIwgjsCTsJZAl4CaQJ2An3CisKUAqcCtALKQtuC84L7QwcDEQMhQy0DNkNBg0fDTMNTA1xDYENlQ3+DlIOmA7sDzkPaQ/SEAoQMBBpEJ0QsREOEUgRjhHiEjYSaxLDEvMTLBNSE5cTxBQAFCwUchSEFMsVChUuFYgV0xY0FnwWlhcpF1YXzhgkGDAYTRjmGPcZKhlPGYYZ5Bn4GjkaWBpyGpwasxrxGv0bDhsfGzAbgRvPG+0cRhyAHN4dfR3eHhUeah6/HxwfTh9iH5Ufvx/eIBwgaiDWIV8hhSHRIiEigiLaIxojZiONI9cj9yQWJB4kQCRbJIsktiTyJRAlPCVQJWUlbiWZJbcl0SXkJh8mJyY/Jm8myCbwJxcnNSdpJ70n/ChbKMYpKSlXKcEqKCp6KrUrECs2K4gr+CwyLIAsyy0eLU8tiC3bLh0uhC7jLzovrC/2MEkwpjDvMS8xVTGZMe0yOjKiMsczADM9M5AzujPxNBc0STSHNMc0/TVQNbM18zZiNsc23zcmN3Y32zgAODM4bDicOMU47DkIOZw5xTn6OiA6UjqQOs87BDtSO7E78jxOPJw89z1BPYE9qD3+PlU+lD7vP0o/hj++QBFAX0DEQSZBnkIXQpVDEUN5Q8tEAUQ5RJ5E/UWhRkJGq0cVR1pHm0fLR+lIFEgpSD9I10koSURJYEmcSd9KREpnSopKxksBSxRLJ0szS0ZLhkvFTABMO0xOTGFMk0zFTQVNT025TiFONE5HTnpOrU7ATtNPGE9bT5NP9FBSUJxQ5VD4UQtRQ1F9UZBRo1G2UclSF1JjUq9SvlLOUtpS5lMYU29T5VRaVM9VPVWpVgdWaFa2VwdXU1eeV+BYIliLWJdYo1jLWMtYy1jLWMtYy1jLWMtYy1jLWMtYy1jLWMtY01jbWOxY/VkYWTJZTVloWYJZjlmaWcdZ51oSWi5aOlpKWmRbGFs7W1tbclt7W4RbjVuWW59bqFuxW9Bb4Vv7XCVcUFyFXI5cl1ygXKlcsly7XMRczVzWXN9c6FzxXPpdIV1IXZpd0l4rXjdekF7YXypfdF/FYAVgQ2B+YPxhR2GpYeJiKmJAYlFiZ2J9YuJi/WMwY0FjbGP7ZDVkk2TAZPJlJGVYZWVlgWWbZadl32YcZnlm3Wc6Z+Jn4mjYaR5pU2l3abRqBWp3apJq4msma05rsWvqbAJsSGx0bKVs0G0QbTRtYW1+bdtuHG5ybqRu628Nbz5vWm+Kb7Nvxm/ucDZwX3DScR9xXHF3cadx+HIbckFyZXKbcuhzKXOIc890HHRydLd09HUkdV91qHX6dl92jHa/dvh3M3dld5h3x3gGeD54Snh6eMd5I3lreZR58Houem16p3sQexx7VHuOe858AHxWfJ986X1IfZ998H5UfpB+5H8Mf0l/k3+sgBKAXYBugKiA2IF3gdGCKIJbgo2CvYLxgy2DcIPQhAKEHoRJhIWEqYTPhQyFUYV7haaF84X8hgWGDoYXhiCGKYYyhnqGyocIh1WHsYfPiA2IToh2iL6I2YkpiTuJrIoHiiuKM4o7ikOKS4pTiluKY4prinOKe4qDiouKk4qliq2LD4tVi3KLxowMjGCMyI0OjWKNto3/jmaOtY69jymPU4+hj9WQK5BbkJyQnJCkkO6ROJF4kZ6R2pHtkgCSE5ImkjqSTpJkkneSipKdkrCSxJLXkuqS/ZMRkySTN5NKk12TcJOEk5eTqpO9k9GT5JP3lAqUHJQulEKUVpRslH+UkpSllLeUy5TelPCVA5UXlSmVPJVPlWGVc5WHlZqVrZW/ldOV5pX5lgyWHpYxlkSWm5cklzeXSpddl2+XgpeVl6iXupfNl+CX85gFmBiYK5g+mFGYppkUmSeZOZlMmV6ZcZmDmZaZqZm9mdCZ45n2mgmaHJovmkKaVZpomnqajJqfmquat5rKmt2a8ZsFmxibK5s/m1ObZpt5m4WbkZuk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BT0AiQS/AIgGlwAsBasAOwYuAIsFGwB5B+IAiwWrAHUIUwCNBu0AdQZVAGMFGABbBUcAHgRLABoHJgAlBXcAKgYJAI4E+QBcBW8AeAR4AG8FjgCJBhP/9ATG/8MFKQCJBIQAiAYuACoFJAAaBaoAjgSEAHUGNACLBSEAeQeFAIsGigCJBY8AUQShAFUEowBYBMcAJgOpABoFggAeBIUAGgT6AEwHGwBuBtcAXQZPAD8FJgAuBJwARgRjAHAHugBBBrcAPgfzAIsGnABoBQwAUQQ2AE4FpgAgBRsAQwVEAHIGYgAqBVkAGgMZAF8EFAAACCkAAAQUAAAIKQAAArkAAAIKAAABXAAABH8AAAIwAAABogAAAQAAAADRAAAAAAAAAu8AYgLvAGIFFwCaBiEAcgOVAAYBzwBnAcgAOQHlAD0BpwBKAyMAbgMqAEYDGwA9BFQAPASeAGAC1gCJBBUAigXLAIoB8QBjB68AVQJ6AGwCagBTA5QAJAL4AEoC+AA2AvgASwL4AEsC+AA1AvgASQL4AEUDOgBQAvEAUALxAFACCgBSAgoAUANaAF4C+ABKAvgAhQL4ADsC+AA0AvgANgL4AEsC+ABLAvgANQL4AEkC+ABFAzoAUALxAFAC8QBQAgoAUgIKAFAEuwBkBncAJAbSAJQIogCLBl0AJAbLAHYEkgBaBfEAJAQxACkErAAlBW0ASgWRADAF4gBpA+sANggiAIgFCgByBRIAlQY+AF8G4QBQBtAAXAbJAF0ElABdBYgApQTyADwEeACXBIwAOQhcAGACQv+kBJgAZQSMAIsEEwA6BCUAegQQACMCUwCRAo0AXwHdAD4FKQAkBMcAGATSACQHTAAkB0wAJAUeACQGwwBAAAAAAAguAFgINQBcAvgAOwL4AIUC+ABKBCMATAQjAFIEIwA0BCIAVwQjAFoEIwA0BCMANgQjAD4EIwCXBCMAVAQuAD4ERwACBF8ACwYDACMEgAADBI0AZARJACMEQQA9BHAAbAS+AEcEcQBtBL4ARwTZAG0GBgBtA7gAbQRiAG0D2QAkAgcAfwTaAG0EpQBQA8YAbQRBAD0EfgA+A6YACQPBAG0EgAADBL4ARwSAAAMDpQBJBN0AbQQyAEYFwQBIBXQASATYAFQFnwAiBIIARwdeACEHWwBtBakAIwTcAG0EfABtBXYAJAZeABkESABBBN4AbQRjAG0EzwAhBF8AHQV7AG0EnABFBpkAbQc3AG0FfgAKBiYAbQRxAG0EggA3BpkAbQSCADwEMQAKBskAGQSwAG0FDwBtBY0AIAYOAEcEUgACBNAACwauACIEnABFBJwAbQYZABMEzwBGBEkAQQS+AEcEfgA+A/sARggyAG0FEgAoAvgANAL4ADYC+ABLAvgASwL4ADUC+ABJAvgARQPDAIwCrACVA90AbQQ7AAQEsABQBT0AjgUpAI4EPAB5BTIAjgQzAHkEdwBtBIIARwRmAG0EogADAf0AigOfAG8AAPycA/oAfgP8/0wECQB/A/wAfwPBAG0DnABvA5wAbwL4AEoC+AA2AvgASwL4AEsC+AA1AvgASQL4AEUFbQBgBZcAYAV3AI4F1gBgBdYAYARMAJIEggBhBFcADwSzADAEawBoBC4APwOfAHABywBgBpMARwSqAGYCEv+gBJIANwSSAGQEkgAwBJIAWgSSAFUEkgAzBJIAZASSAFcEkgBiBJIA4AIz/6sCMv+rAiMAiwIj//sCIwCLBGYAbQTbAFYENwA4BI0AdgRDAEoElgBJBJMASQScAEIEkwB2BJkASQROAEwEjQBJBE8AJAPDAGUFIwBbA8oABgZL/+AEDQBtBL4ARwUhADYE2QBtAf0AAALvAGIFVAARBVQAEQSV//AE6wArArD/5wVXAAwFVwAMBVcADAVXAAwFVwAMBVcADAVXAAwFOwBeBIMAiwSDAIsEgwCLBIMAiwJN/8MCTQCdAk3/vAJN/7UFqQCLBYQAXQWEAF0FhABdBYQAXQWEAF0FQQB6BUEAegVBAHoFQQB6BOsABQRMAEwETABMBEwATARMAEwETABMBEwATARMAEwELABIBE4ATAROAEwETgBMBE4ATAIj/64CIwCLAiP/pwIj/6AEeAByBIcASASHAEgEhwBIBIcASASHAEgEdwBwBHcAcAR3AHAEdwBwA/kACAP5AAgFVwAMBEwATAVXAAwETABMBVcADARMAEwFOwBeBCwASAU7AF4ELABIBTsAXgQsAEgFOwBeBCwASAU2AIsFFwBJBIMAiwROAEwEgwCLBE4ATASDAIsETgBMBIMAiwROAEwEgwCLBE4ATAVzAGUEjQBMBXMAZQSNAEwFcwBlBI0ATAVzAGUEjQBMBaoAiwR3AHECTf+zAiP/ngJN/9MCI/+/Ak3/1gIj/8ECTQAYAhQAAQJNAJsGwgCdBB8AdAR1AC0CMv+lBRIAiwQ5AHcEUwCLAhQAhgRTAIsCFABbBFMAiwKqAIYEUwCLAvAAhgWpAIsEeAByBakAiwR4AHIFqQCLBHgAcgR4/5oFhABdBIcASAWEAF0EhwBIBYQAXQSHAEgFFQCLAuEAdwUVAIsC4QBRBRUAiwLhACQE4gBIBB0AQATiAEgEHQBABOIASAQdAEAE4gBIBB0AQATiAEgEHQBABOsAKwKwAAsE6wArArAACwTrACsC2AALBUEAegR3AHAFQQB6BHcAcAVBAHoEdwBwBUEAegR3AHAFQQB6BHcAcAVBAHoEdwBwBwYAKQXoACAE6wAFA/kACATrAAUE1wBNBAwATgTXAE0EDABOBNcATQQMAE4HgAABBsIARgWBAGMEhABIBHf/nAR3/5wESQAjBKIAAwSiAAMEogADBKIAAwSiAAMEogADBKIAAwSCAEcD3QBtA90AbQPdAG0D3QBtAgf/oAIHAH8CB/+aAgf/kgTZAG0EvgBHBL4ARwS+AEcEvgBHBL4ARwSNAGQEjQBkBI0AZASNAGQERwACBKIAAwSiAAMEogADBIIARwSCAEcEggBHBIIARwR3ADkD3QBtA90AbQPdAG0D3QBtA90AbQSlAFAEpQBQBKUAUASlAFAE2gBtAgf/kAIH/7ECB/+0AgcAHwIHAHgD2QAkBGIAbQO4AG0DuABtA7gAbQO4AG0E2QBtBNkAbQTZAG0EvgBHBL4ARwS+AEcEcABsBHAAbARwAGwEQQA9BEEAPQRBAD0EQQA9BEkAIwRJACMESQAjBI0AZASNAGQEjQBkBI0AZASNAGQEjQBkBgMAIwRHAAIERwACBC4APgQuAD4ELgA+BVcADATn/yIGDv8pArH/KwWY/5cFT/8qBXD/qQKq/3sFVwAMBRQAiwSDAIsE1wBNBaoAiwJNAJ0FEgCLBwAAiwWpAIsFhABdBSIAiwTrACsE6wAFBREAHgJN/7UE6wAFBIMAUARtAGEEhAB1AqoAlQRdAHgEqgCIBIcASATZAJAEAgARBE8AJAKq/7QEXQB4BIcASARdAHgGkwBcBIMAiwR1AI4E4gBIAk0AnQJN/7UEdQAtBSkAjgUSAIsFDAAnBVcADAUUAIsEdQCOBIMAiwWfAIUHAACLBaoAiwWEAF0FqwCOBSIAiwU7AF4E6wArBREAHgRMAEwETgBMBI0AeQSHAEgEgAB2BCwASAP5AAgEDAAaBE4ATANbAHkEHQBAAhQAdAIj/6ACC/+jBHYAiQP5AAgHBgApBegAIAcGACkF6AAgBwYAKQXoACAE6wAFA/kACAFQAEkCjQBPBEgAgwIy/5gByAA5BwAAiwbzAHYFVwAMBEwATASDAIsFnwCFBE4ATASNAHkFwgA+BeEATAUeAA4EEf/vCIAASAl9AF0E5gBHBBoASQU7AF4ELABIBOsABQQRABcCTQCdB9QAEwayACUCTQCdBVcADARMAEwFVwAMBEwATAeAAAEGwgBGBIMAiwROAEwFjwBRBDoAUgQ6AFIH1AATBrIAJQTmAEcEGgBJBZ8AhQSNAHkFnwCFBI0AeQWEAF0EhwBIBX0AXgSGAEYFfQBeBIYARgU8AE8EMABHBQwAJwP5AAgFDAAnA/kACAUMACcD+QAIBYkAjgRpAFwG8gCOBogAiQSBAEkFVwAMBEwATAVXAAwETABMBVcADARMAEwFVwAMBEz/jQVXAAwETABMBVcADARMAEwFVwAMBEwATAVXAAwETABMBVcADARMAEwFVwAMBEwATAVXAAwETABMBVcADARMAEwEgwCLBE4ATASDAIsETgBMBIMAiwROAEwEgwCLBE4ATASD/9gETv+FBIMAiwROAEwEgwCLBE4ATASDAIsETgBMAk0AnQIjAIsCTQCPAhQAcgWEAF0EhwBIBYQAXQSHAEgFhABdBIcASAWEACEEh/+gBYQAXQSHAEgFhABdBIcASAWEAF0EhwBIBZgAVwSiAEYFmABXBKIARgWYAFcEogBGBZgAVwSiAEYFmABXBKIARgVBAHoEdwBwBUEAegR3AHAFqwB6BOAAcAWrAHoE4ABwBasAegTgAHAFqwB6BOAAcAWrAHoE4ABwBOsABQP5AAgE6wAFA/kACATrAAUD+QAIBJ8ASQTrACsEBwAhBYkAjgRpAFwEdQCOA1sAeQYT//QExv/DBHcAcQUA/9gFAP/YBHX/7gNb/9IFPf/pBFD/xATrAAUEEQAXBREAHgQMABoEbQBhBGb/+QYhAHIEkgBMBJIARgSSADgEkgB0BKYAfwS6AHYEpgBaBLoAeAVzAGUEjQBMBakAiwR4AHIFVwAMBEz//ASDAEYETv/zAk3+9QIj/uAFhABdBIcADgUVACcC4f9pBUEAbQR3AAoFCP74BRQAiwSAAHYFNgCLBIEASQU2AIsEgQBJBaoAiwR3AHEFEgCLBDkAdwUSAIsEOQB3BFMAiwIUAHIHAACLBvMAdgWpAIsEeAByBYQAXQUiAIsEgAB2BRUAiwLhAGkE4gBIBB0AQATrACsCsAALBUEAegUyAAwEAgARBTIADAQCABEHBgApBegAIATXAE0EDABOBcr+ZwSiAAAEGf9JBRb/SQJD/0sEyP96BIP/CQTi/4oEogADBGYAbQPdAG0ELgA+BNoAbQIHAH8EYgBtBgYAbQTZAG0EvgBHBHEAbQRJACMERwACBF8ACwIH/5IERwACA90AbQPBAG0EQQA9AgcAfwIH/5ID2QAkBGIAbQRfAB0EogADBGYAbQPBAG0D3QBtBN4AbQYGAG0E2gBtBL4ARwTdAG0EcQBtBIIARwRJACMEXwALBEgAQQTaAG0EggBHBEcAAgYZABME3gBtBF8AHQXBAEgF4AB/Bkv/4AS+AEcEQQA9BgMAIwYDACMGAwAjBEcAAgVXAAwETABMBIMAiwROAEwEogADA90AbQIjAHIAAQAAAAoBrAMAAARERkxUAXBjeXJsAXBncmVrAXBsYXRuABoBJgAHQVpFIAD2Q1JUIAD2RlJBIADETU9MIACSTkFWIABgUk9NIAAuVFJLIAD2AAD//wAWAAAAAQACAAMABAAGAAgADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAAP//ABYAAAABAAIAAwAEAAYACAALAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAA//8AFgAAAAEAAgADAAQABgAIAAoADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaAAD//wAWAAAAAQACAAMABAAGAAgACQANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAAP//ABUAAAABAAIAAwAEAAUACAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAAP//ABUAAAABAAIAAwAEAAcACAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoABAAAAAD//wAUAAAAAQACAAMABAAIAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbYzJzYwFOY2NtcAFGZGxpZwFAZG5vbQE6ZnJhYwEwbGlnYQEqbGlnYQEebGlnYQEWbG51bQEQbG9jbAEKbG9jbAEEbG9jbAD+bG9jbAD4bnVtcgDyb251bQDscG51bQDmc21jcADgc3MwMQDac3MwMgDUc3MwMwDOc3MwNADIc3MwNQDCc3MwNgC8c3MwNwC2c3VicwCwc3VwcwCqdG51bQCkAAAAAQAVAAAAAQAdAAAAAQAeAAAAAQASAAAAAQARAAAAAQAQAAAAAQAPAAAAAQAOAAAAAQANAAAAAQAMAAAAAQABAAAAAQAUAAAAAQATAAAAAQAcAAAAAQAGAAAAAQAHAAAAAQAFAAAAAQAIAAAAAQAWAAAAAgAJAAoAAAAEAAkACgAJAAoAAAABAAoAAAADABcAGAAaAAAAAQAbAAAAAQALAAAAAgACAAQAAAABAAAAHw78Cz4KvgqkBAAD6gPqA8ADrAOCA14DIgMOAvoC5gLMAroCeAJaAggBwgFgAQIA7gC0AJIAcACSAHAATgBAAAEAAAABAAgAAQCGAY4AAQAAAAEACAACAHgACgGVAHoAcwB0AZYBlwGYAZkBmgGbAAEAAAABAAgAAgBWAAoCWAB6AHMAdAJZAloCWwJcAl0CXgABAAAAAQAIAAIANAAKAeEB4AHfAjkCOgI7AjwCPQI+Aj8ABgAAAAEACAADAAEAHAABABIAAAABAAAAGQACAAEAFAAdAAAAAgADAZQBlAAAAd8B4QABAjkCPwAEAAEAAAABAAgAAQAGAYEAAQABABMAAQAAAAEACAACAC4AFASsBK0CiwSoBKkEqgSrAoAErgAXABkAGAAWABsAFAAaAB0AHAAVBK8AAgAGABoAGgAAABwAHAABAmQCaQACAm0CbQAIAm8CeAAJAn8CfwATAAEAAAABAAgAAgAuABQCdQJ3AngCcgJvAnECcAJzAnYCdAAbABUAFgAXABgAGQAaABwAHQAUAAEAFAAaABwCZAJlAmYCZwJoAmkCbQJ/AoACiwSoBKkEqgSrBKwErQSuBK8AAQAAAAEACAACAC4AFASvAosEqASpBKoEqwSsAoAErQSuAmYCaAJnAmUCaQJ/ABoCbQAcAmQAAgACABQAHQAAAm8CeAAKAAEAAAABAAgAAgAuABQCdAJ4AnICbwJxAnACdQJzAncCdgJpAmQCZQJmAmcCaAAaABwCbQJ/AAIABAAUAB0AAAKAAoAACgKLAosACwSoBK8ADAABAAAAAQAIAAIADAADAogCiQKJAAEAAwBJAEsChAABAAAAAQAIAAIAHgAMAl8CYQJgAmICYwKBAoICgwKEAoUChgKHAAEADAAnACgAKwAzADUARgBHAEgASwBTAFQAVQABAAAAAQAIAAIAHAACAkgCSQABAAAAAQAIAAIACgACAkYCRwABAAIALwBPAAEAAAABAAgAAQAGAg8AAQABADYAAQAAAAEACAABAAYBiQABAAEAuwABAAAAAQAIAAEABgH4AAEAAQBLAAQAAAABAAgAAQAqAAMAIAAWAAwAAQAEAdoAAgBYAAEABAHbAAIAWAABAAQB1QACAEoAAQADAEoAVwCVAAQAAAABAAgAAQBAAAEACAACAAwABgHXAAIAUAHZAAMASgBQAAQAAAABAAgAAQAcAAEACAACAAwABgHWAAIATQHYAAMASgBNAAEAAQBKAAEAAAABAAgAAQAGAAEAAQABAXsAAQAAAAEACAACABIABgUiBSMFJAUlBSYFJwABAAYC1QLWAucC6ANqA3MAAQAAAAEACAABAAYAAgABAAIDIwMkAAQAAAABAAgAAQYyADYGAAX2BewF2gWoBZYFjAVaBUAFJgUUBOoErgSkBIIEaARWBBoECAPuA8QDsgOAA3YDbANaAygDHgMUAwoC8ALWAsQCmgJoAl4CPAIiAhAB3gHMAbIBiAF2AWwBYgFYAU4BJAD6ANAApgB8AHIAAQAEBMAAAgCpAAUAJAAeABgAEgAMBIgAAgCqBIYAAgCrBIQAAgCoBIoAAgCtBIIAAgCpAAUAJAAeABgAEgAMBIcAAgCqBIUAAgCrBIMAAgCoBIkAAgCtBIEAAgCpAAUAJAAeABgAEgAMBHoAAgCqBHgAAgCrBHYAAgCoBHwAAgCtBHQAAgCpAAUAJAAeABgAEgAMBHkAAgCqBHcAAgCrBHUAAgCoBHsAAgCtBHMAAgCpAAUAJAAeABgAEgAMBLkAAgCsAvYAAgCqBGIAAgCrAsEAAgCoAsIAAgCpAAEABANJAAIAqQABAAQDRwACAKkAAQAEA0gAAgCpAAEABANGAAIAqQACAAwABgTkAAIArQNBAAIAqQAFACQAHgAYABIADASQAAIAqgSOAAIAqwP1AAIAqASMAAIArQLPAAIAqQADABQADgAIA+8AAgCoBOIAAgCtA/EAAgCpAAIADAAGBN4AAgCqBOAAAgCtAAYALAAmACAAGgAUAA4EvwACAKwDMAACAKoEgAACAKsCywACAKgEfgACAK0CzAACAKkAAgAMAAYE2wACAK0DKgACAdQAAwAUAA4ACATZAAIArQMmAAIB1AMgAAIAqQAEABwAFgAQAAoEvQACAKwE1wACAK0DHAACAdQDGgACAKkAAQAEBNUAAgCpAAYALAAmACAAGgAUAA4EuwACAKwCyQACAKoEaAACAKsCxgACAKgEZgACAK0CxwACAKkABQAkAB4AGAASAAwCxQACAKoEswACAKgE0gACAK0DDwACAdQDDQACAKkAAgAMAAYE0AACAK0D/AACAKkAAwAUAA4ACATOAAIArQMHAAIB1AMFAAIAqQADABQADgAIBMwAAgCtAwMAAgHUBMoAAgCpAAEABARkAAIArQABAAQEyAACAK0AAQAEBLEAAgCpAAYALAAmACAAGgAUAA4EtwACAKwEVgACAKoEVAACAKsCvQACAKgEUgACAK0CvgACAKkAAgAMAAYExAACAK0ExgACAdQAAQAEAtgAAgCpAAEABATCAAIArQAGACwAJgAgABoAFAAOBLUAAgCsArgAAgCqBDwAAgCrArUAAgCoBDoAAgCtArYAAgCpAAIADAAGBOMAAgCtA0AAAgCpAAUAJAAeABgAEgAMBI8AAgCqBI0AAgCrA/QAAgCoBIsAAgCtArQAAgCpAAMAFAAOAAgD7gACAKgE4QACAK0D8AACAKkAAgAMAAYE3QACAKoE3wACAK0ABwA0AC4AKAAiABwAFgAQBL4AAgCsAy8AAgCqBH8AAgCrArAAAgCoBH0AAgCtArEAAgCpBNwAAwCqAKkAAgAMAAYE2gACAK0DKQACAdQAAwAUAA4ACATYAAIArQMlAAIB1AMfAAIAqQAEABwAFgAQAAoEvAACAKwE1gACAK0DGwACAdQDGQACAKkAAQAEBNQAAgCpAAcANAAuACgAIgAcABYAEAS6AAIArAKuAAIAqgRnAAIAqwKrAAIAqARlAAIArQKsAAIAqQTTAAMAqgCpAAUAJAAeABgAEgAMAqoAAgCqBLIAAgCoBNEAAgCtAw4AAgHUAwwAAgCpAAIADAAGBM8AAgCtA/sAAgCpAAMAFAAOAAgEzQACAK0DBgACAdQDBAACAKkAAwAUAA4ACATLAAIArQMCAAIB1ATJAAIAqQAGACwAJgAgABoAFAAOBLgAAgCsAvUAAgCqBGEAAgCrAqYAAgCoBGMAAgCtAqcAAgCpAAEABATHAAIArQACAAwABgLxAAIB1ASwAAIAqQAGACwAJgAgABoAFAAOBLYAAgCsBFUAAgCqBFMAAgCrAqIAAgCoBFEAAgCtAqMAAgCpAAIADAAGBMMAAgCtBMUAAgHUAAEABALXAAIAqQABAAQEwQACAK0ABgAsACYAIAAaABQADgS0AAIArAKdAAIAqgQ7AAIAqwKaAAIAqAQ5AAIArQKbAAIAqQACABEAJQApAAAAKwAtAAUALwA0AAgANgA7AA4APQA+ABQARQBJABYASwBNABsATwBUAB4AVgBbACQAXQBeACoAgQCBACwAgwCDAC0AhgCGAC4AiQCJAC8AjQCNADAAmACbADEA0ADQADUAAQAAAAEACAACAIIABgJ7AnkCfAJ9AnoFKAAGAAAAAQAIAAIAaABkADwALAAHAAAAGgAaABoAGgAaABoAAQAEAAAAAQABAAEAAQAAAAMAAgACAKgArAABASQBJwABAAIABgBNAE0ABgBOAE4ABAL8AvwABQPpA+kAAwPrA+sAAgRkBGQAAQACAAAAAQAGAE0ATgL8A+kD6wRkAAEAAAABAAgAAgHcAOsCjAJNAkwCSwJKAkICAAH/Af4B/QH8AfsB+gH5AfgB9wH2AfUB9AHzAfIB8QHwAe8B7gHtAewCfgKOA0sCkAKPA0oB/QKNApICbATtBO4CBAIFBO8E8ATxAgYE8gIHAggCCQT3AgoCCgT4BPkCCwIMAg0CFAUGBQcCFQIWAhcCGAIZAhoFCgULBQ0FEAUZAhwCHQIeAh8CIAIhAiICIwIkAiUCDgIPAhACEQISAhMCVQInAigCKQIqBRMCKwItAi4CLwIxAjMCkQNMA00DTgNPA1ADUQNSA1MDVANVA1YDVwNYA1kDWgNbA1wDXQNeA18DYANhA2IDYwNkA2UDZgNnA50DaANpA2oDawNsA20DbgNvA3ADcQNyA3MDdAN1A3YDdwN4A3kDegN7A3wDfQUaA38DgAOBA4IDgwOEA4UDhgOHA4gDiQOKA4sDjAONA44DjwOQBR0DkQOSA5QDkwOVA5YDlwOYA5kDmgObA5wDngOfA6AFGwUcBOYE5wToBOkE8wT2BPQE9QT6BPsE/ATqBOsE7AUFBQgFCQUMBQ4FDwIbBREE/QT+BP8FAAUBBQIFAwUEBR4FHwUgBSEFEgUUBRUCMgUXAjQFGAUWAjACJgIsBSYFJwABAOsACgBFAEYARwBIAEkASgBLAEwATQBOAE8AUABRAFIAUwBUAFUAVgBXAFgAWQBaAFsAXABdAF4AhQCGAIcAiQCKAIsAjQCQAJIAlAC7ALwAvQC+AL8AwADBAMIAwwDEAMUAxgDHAMgAyQDKAMsAzADNAM4A6gDrAOwA7QDuAO8A8ADxAPIA8wD0APUA9gD3APgA+QD6APsA/AD9AP4A/wEAAQEBAgEDAQQBBQEGAQcBMAE0ATYBOAE6ATwBQgFEAUYBSgFNAVoClwKZArUCtgK3ArgCuQK6ArsCvAK9Ar4CvwLAAsECwgLDAsQCxQLGAscCyALJAsoCywLMAs0CzgLPAtAC0gLUAtYC2ALaAtwC3gLgAuIC5ALmAugC6gLsAu4C8ALyAvQC9gL4AvoC/AL/AwEDAwMFAwcDCQMLAw0DDwMRAxQDFgMYAxoDHAMeAyADIgMkAyYDKAMqAywDLgMwAzIDNAM2AzgDOgM8Az4DQQNDA0UDRwNJA7kDugO7A7wDvgO/A8ADwQPCA8MDxAPFA8YDxwPeA98D4APhA+ID4wPkA+UD5gPnA+gD6QPqA+sD7APtA+8D8QPzA/UECgQMBA4EHAQjBCkELwSZBJoEngSiBSMFJQABAAAAAQAIAAIB+gD6AgECjAHrAeoB6QHoAecB5gHlAeQB4wHiAk0CTAJLAkoCQgIAAf8B/gH9AfwB+wH6AfkB+AH3AfYB9QH0AfMB8gHxAfAB7wHuAe0B7AICAgMCjgKQAo8CkQKNApICbAIEAgUCBgIHAggCCQIKAgsCDAINAg4CDwIQAhECEgITAhQCFQIWAhcCGAIaAhsFGQIcAh0CHgIfAiACIQIiAiMCJAIlAlUCJwIoAikCKgUTAisCLQIuAi8CMAIxAjICMwI1AjYCOAI3A0oDSwNMA00DTgNPA1ADUQNSA1MDVANVA1YDVwNYA1kDWgNbA1wDXQNeA18DYANhA2IDYwNkA2UDZgNnA2gDaQNqA2sDbANtA24DbwNwA3EDcgNzA3QDdQN2A3cDeAN5A3oDewN8A30DfgUaA38DgAOBA4IDgwOEA4UDhgOHA4gDiQOKA4sDjAONA44DjwOQ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AAcAOAA+ABAARQBHABcASQBJABoATABMABsAUQBUABwAVgBWACAAWgBaACEAXABeACIAigCKACUAlgCWACYAsgCyACcBhAGFACgBhwGJACoB8gHyAC0B9wH3AC4B+gH7AC8CBQIFADECSgJKADICTQJNADMCXwJfADQCYQJiADUClQKWADcCmAKYADkCmgLAADoCxQLKAGECzwLfAGcC4QLqAHgC8wL1AIIC9wL3AIUC+QL5AIYC+wL7AIcC/QL9AIgDAAMAAIkDAgMCAIoDBAMEAIsDBgMGAIwDCAMIAI0DCgMKAI4DDAMYAI8DGgMaAJwDHAMcAJ0DHgMeAJ4DKQMpAJ8DKwMrAKADLQMtAKEDLwMvAKIDMQMxAKMDMwMzAKQDNQM1AKUDNwM3AKYDOQM5AKcDOwM7AKgDPQNFAKkDSgNTALIDXgNiALwDaANqAMEDbwNvAMQDgAOEAMUDiAOKAMoDkwOTAM0D7gPuAM4D8APwAM8D8gPyANAD9AP3ANED+gP+ANUEOQRhANoEYwRjAQMEZQRyAQQEegR6ARIEfQR9ARMEfwR/ARQEiwSQARUEsgS2ARsEuAS4ASAEugS7ASEEvQS9ASMEwQTDASQExQTFAScExwTJASgEywTLASsEzQTNASwEzwTVAS0E1wTXATQE2gTaATUE3AThATYE4wTkATwAAgEJAAYABgANAAsACwANABAAEAASABEAEQAVABIAEgASACUAJQADACcAJwABACsAKwABAC4ALgAaADMAMwABADUANQABADcANwAQADgAOAATADkAOQAIADoAOgAZADsAOwARADwAPAAdAD0APQAOAD4APgAUAEUARQAEAEcASQACAEsASwACAFEAUgAJAFMAUwAHAFQAVAAJAFUAVQACAFcAVwAPAFkAWQAGAFoAWgAMAFwAXAAhAF0AXQAMAF4AXgAXAIMAgwABAJMAkwABAJQAlAACAJgAmAABAJkAmQACAJsAmwAGALIAsgAgAYEBggAVAYQBhQANAYYBhgASAYcBiQANAYoBigASAY4BjwASAdsB2wAPAe0B7QAYAe4B7gAeAe8B7wAbAfEB8QAKAfIB8gAcAfMB8wAWAfUB9QAFAfcB9wAFAf8B/wAFAgUCBQAfAksCSwAFAk0CTQALAl8CYAABAmICYwABApQClAAVApoCoAADAqECoQABAqsCrwABArACswAIArQCtAAOArUCuwAEArwCwAACAsUCxQAJAsYCygAHAssCzgAGAs8C0AAMAtEC0QADAtIC0gAEAtMC0wADAtQC1AAEAtUC1QADAtYC1gAEAtcC1wABAtgC2AACAtkC2QABAtoC2gACAtsC2wABAtwC3AACAt0C3QABAt4C3gACAuAC4AACAuIC4gACAuQC5AACAuYC5gACAugC6AACAuoC6gACAusC6wABAuwC7AACAu0C7QABAu4C7gACAu8C7wABAvAC8AACAvEC8QABAvIC8gACAwADAAAaAw0DDQAJAw8DDwAJAxEDEgAJAxMDEwABAxQDFAAHAxUDFQABAxYDFgAHAxcDFwABAxgDGAAHAx8DHwAQAyADIAAPAyEDIQAQAyIDIgAPAyMDIwAQAyQDJAAPAyUDJQAQAyYDJgAPAycDJwAQAygDKAAPAykDKQATAysDKwATAy0DLQATAy8DLwAIAzADMAAGAzEDMQAIAzIDMgAGAzMDMwAIAzQDNAAGAzUDNQAIAzYDNgAGAzcDNwAIAzgDOAAGAzkDOQAIAzoDOgAGAzsDOwARAz0DPQAOAz4DPgAMAz8DPwAOA0ADQAAUA0EDQQAXA0IDQgAUA0MDQwAXA0QDRAAUA0UDRQAXA0gDSAABA00DUwALA1QDVAAFA14DYgAFA2MDZgAKA2cDZwAYA2gDagALA2sDbgAFA3UDeAAFA4gDigAFA44DkQAWA5MDkwAcA5UDmgAKA5sDmwAbA5wDnQAYA+4D7gARA/AD8AARA/ID8gARA/QD9AAOA/UD9QAMA/YD9wANA/oD+gANA/wD/AAJA/0D/QADA/4D/gAEBDkEOQADBDoEOgAEBDsEOwADBDwEPAAEBD0EPQADBD4EPgAEBD8EPwADBEAEQAAEBEEEQQADBEIEQgAEBEMEQwADBEQERAAEBEUERQADBEYERgAEBEcERwADBEgESAAEBEkESQADBEoESgAEBEsESwADBEwETAAEBE0ETQADBE4ETgAEBE8ETwADBFAEUAAEBFIEUgACBFQEVAACBFYEVgACBFgEWAACBFoEWgACBFwEXAACBF4EXgACBGAEYAACBGUEZQABBGYEZgAHBGcEZwABBGgEaAAHBGkEaQABBGoEagAHBGsEawABBGwEbAAHBG0EbQABBG4EbgAHBG8EbwABBHAEcAAHBHEEcQABBHIEcgAHBHMEcwABBHQEdAACBHUEdQABBHYEdgACBHcEdwABBHgEeAACBHkEeQABBHoEegAHBHsEewABBHwEfAACBH0EfQAIBH4EfgAGBH8EfwAIBIAEgAAGBIIEggAGBIQEhAAGBIYEhgAGBIgEiAAGBIoEigAGBIsEiwAOBIwEjAAMBI0EjQAOBI4EjgAMBI8EjwAOBJAEkAAMBKcEpwAVBLMEswAJBLQEtAADBLUEtQAEBLcEtwACBLoEugABBLsEuwAHBL8EvwAGBMQExAACBMYExgACBNAE0AAJBNIE0gAJBNME0wABBNgE2AAQBNkE2QAPBNoE2gATBNwE3AAIBN0E3QAZBN4E3gAMBN8E3wAZBOAE4AAMBOEE4QARBOME4wAUBOQE5AAXAAIA7AAGAAYADAALAAsADAAlACUAAgAmACYAGwAnACcADgApACkABAAsAC0AAQAuAC4ABwAvAC8AGAAwADAADwAxADIAAQA0ADQAHAA4ADgAEAA5ADkABwA6ADoAGQA7ADsAEQA8ADwAHgA9AD0ADQA+AD4AFABFAEUAAwBGAEYAFQBHAEcAEgBJAEkABQBMAEwACABRAFIACABTAFMABgBUAFQAFQBWAFYAEwBaAFoACwBcAFwAIgBdAF0ACwBeAF4AFwCKAIoAFQCWAJYAIACyALIAIQGEAYUADAGHAYkADAHyAfIAGgH3AfcACQH6AfoAFgH7AfsAHQIFAgUAHwJKAkoACQJNAk0ACgJfAl8ADgKYApgAEAKaAqAAAgKhAqEADgKiAqUABAKmAqoAAQKwArMABwK0ArQADQK1ArsAAwK8ArwAEgK9AsAABQLFAsUACALGAsoABgLPAtAACwLRAtEAAgLSAtIAAwLTAtMAAgLUAtQAAwLVAtUAAgLWAtYAAwLXAtcADgLYAtgAEgLZAtkADgLaAtoAEgLbAtsADgLcAtwAEgLdAt0ADgLeAt4AEgLhAuEABALiAuIABQLjAuMABALkAuQABQLlAuUABALmAuYABQLnAucABALoAugABQLpAukABALqAuoABQLzAvMAAQL0AvQACAL1AvUAAQL3AvcAAQL5AvkAAQL7AvsAAQL9Av0AAQMAAwAABwMCAwIAGAMEAwQADwMGAwYADwMIAwgADwMKAwoADwMMAwwAAQMNAw0ACAMOAw4AAQMPAw8ACAMQAxAAAQMRAxIACAMUAxQABgMWAxYABgMYAxgABgMaAxoAEwMcAxwAEwMeAx4AEwMpAykAEAMrAysAEAMtAy0AEAMvAy8ABwMxAzEABwMzAzMABwM1AzUABwM3AzcABwM5AzkABwM7AzsAEQM9Az0ADQM+Az4ACwM/Az8ADQNAA0AAFANBA0EAFwNCA0IAFANDA0MAFwNEA0QAFANFA0UAFwNKA0sACQNMA0wAGgNNA1MACgNeA2IACQNoA2oACgNvA28ACQOAA4AAHQOBA4QAFgOIA4oACQOTA5MAGgPuA+4AEQPwA/AAEQPyA/IAEQP0A/QADQP1A/UACwP2A/cADAP6A/oADAP7A/sAAQP8A/wACAP9A/0AAgP+A/4AAwQ5BDkAAgQ6BDoAAwQ7BDsAAgQ8BDwAAwQ9BD0AAgQ+BD4AAwQ/BD8AAgRABEAAAwRBBEEAAgRCBEIAAwRDBEMAAgREBEQAAwRFBEUAAgRGBEYAAwRHBEcAAgRIBEgAAwRJBEkAAgRKBEoAAwRLBEsAAgRMBEwAAwRNBE0AAgROBE4AAwRPBE8AAgRQBFAAAwRRBFEABARSBFIABQRTBFMABARUBFQABQRVBFUABARWBFYABQRXBFcABARYBFgABQRZBFkABARaBFoABQRbBFsABARcBFwABQRdBF0ABAReBF4ABQRfBF8ABARgBGAABQRhBGEAAQRjBGMAAQRmBGYABgRoBGgABgRqBGoABgRsBGwABgRuBG4ABgRwBHAABgRyBHIABgR6BHoABgR9BH0ABwR/BH8ABwSLBIsADQSMBIwACwSNBI0ADQSOBI4ACwSPBI8ADQSQBJAACwSyBLIAAQSzBLMACAS0BLQAAgS1BLUAAwS2BLYABAS4BLgAAQS7BLsABgS9BL0AEwTBBMEAGwTCBMIAFQTHBMcAAQTIBMgACATJBMkAGATLBMsAGATNBM0ADwTPBM8AAQTQBNAACATRBNEAAQTSBNIACATUBNQAHATVBNUAFQTXBNcAEwTaBNoAEATcBNwABwTdBN0AGQTeBN4ACwTfBN8AGQTgBOAACwThBOEAEQTjBOMAFATkBOQAFwABAfIABAAAAPQNNA0uDS4M6AzSDMQMvgywChIKBAnuDL4J5AlaCRgI9gjkCM4IxAiGCHgINggwB1YHUAaqFtYW1gakBpYGSAZCBigGQgXmDL4FkAV+DS4EVA0uDS4NLgROBCgEAgP8A/ID7APeA+wMxAy+DL4Mvgy+CPYM0gzSDNIM0gzSDNIM0gzEDLAMsAywDLAMvgy+DL4Mvgy+CIYIMAgwCDAIMBbWBqQGpAakBqQGpAZCBkIM0gzSDNIMxAzEDMQMxAy+DLAIMAywCDAMsAgwDLAIMAywCDAW1goECe4J7gnuCe4W1hbWFtYW1gy+BqQMvgakDL4GpAaWBpYGlgj2CPYI9gjOCIYGQgiGCHgIeAh4A/wD/AROA+wD7APsA+wD7APsA+wD/AP8A/wD/AP8A+wD7APsA/wD8gPyA/ID8gP8A/wD/AROCM4IzgjOCIYGQg0uDS4NLhbWDNIM0gzSDNIM0gzSDNIM0gzSDNIM0gzSDNIMsAgwDLAIMAywCDAMsAgwDLAIMAywCDAMsAgwDLAIMAy+BqQMvgakDL4GpAy+BqQMvgakDL4GpAy+BqQGpAiGBkIIhgZCCIYGQhbWDNIMsAy+BqQGlgy+DL4W1goECgQJ7hbWFtYMvgnkBpYI9gjkBkII5AZCCM4IeAABAPQABAAGAAsADAAlACcAKAApACoALwAwADMANAA1ADYAOAA6ADsAPAA9AD4APwBJAEoATABPAFEAUgBTAFYAWABaAFsAXQBfAJYAnQCyAYQBhQGHAYgBiQHyAfQB9QH3AfoCBQJKAk0CXwJhAmIClQKWApgCmgKbApwCnQKeAp8CoAKhAqICowKkAqUCqwKsAq0CrgKvArQCvQK+Ar8CwALFAsYCxwLIAskCygLPAtAC0QLTAtUC1wLZAtsC3QLfAuEC4gLjAuQC5QLmAucC6ALpAuoC9AMCAwQDBgMIAwoDDQMPAxEDEgMTAxQDFQMWAxcDGAMaAxwDHgMpAysDLQM7Az0DPgM/A0ADQgNEA0oDSwNMA00DTgNPA1ADUQNSA1MDXgNfA2ADYQNiA2gDaQNqA28DgQOCA4MDhAOIA4kDigOTA+4D8APyA/QD9QP2A/cD+gP8A/0EOQQ7BD0EPwRBBEMERQRHBEkESwRNBE8EUQRSBFMEVARVBFYEVwRYBFkEWgRbBFwEXQReBF8EYARlBGYEZwRoBGkEagRrBGwEbQRuBG8EcARxBHIEegSLBIwEjQSOBI8EkASzBLQEtgS6BLsEvQTDBMUEyATJBMsEzQTQ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""" ROBOTO_SEMIBOLD_BYTES = base64.b64decode(ROBOTO_SEMIBOLD_BASE64) # ================================================================ # image_generator_replicate.py # ================================================================ def get_replicate_api_token() -> str: return get_string_from_file("replicate-api-token.txt") def set_replicate_api_token(token: str) -> None: set_string_to_file("replicate-api-token.txt", token) class ReplicateImageGenerator(ImageGenerator): def get_api_token(self) -> str: return get_replicate_api_token() @property def generator_name(self) -> str: return "Replicate" def get_aspect_map(self) -> dict[str, list[int]]: """Return a map from aspect ratio names to [width, height] arrays based on 4K dimensions.""" return { "1:1": [4096, 4096], "4:3": [4096, 3072], "3:4": [3072, 4096], "16:9": [4096, 2304], "9:16": [2304, 4096], "3:2": [4096, 2731], "2:3": [2731, 4096], "21:9": [4096, 1755], } def _generate_image_impl(self, prompt: str, aspect_ratio: str) -> bytes: target_ratio = parse_aspect_ratio(aspect_ratio) aspect_map = self.get_aspect_map() actual_aspect_ratio = find_closest_aspect_ratio_name(target_ratio, aspect_map) token = self.get_api_token() if not token: raise ValueError("Replicate API token is not configured") client = replicate.Client(api_token=token) model_input = { "size": "4K", "enhance_prompt": True, "aspect_ratio": actual_aspect_ratio, "prompt": prompt, } output = client.run("bytedance/seedream-4", input=model_input) if output and len(output) > 0: return output[0].read() else: raise ValueError("No image generated from Replicate API") # ================================================================ # image_generator_openai.py # ================================================================ def get_openai_api_token() -> str: return get_string_from_file("openai-api-token.txt") def set_openai_api_token(token: str) -> None: set_string_to_file("openai-api-token.txt", token) class OpenAIImageGenerator(ImageGenerator): def __init__(self): self.client = None def get_api_token(self) -> str: return get_openai_api_token() @property def generator_name(self) -> str: return "OpenAI" def get_aspect_map(self) -> dict[str, list[int]]: """Return a map from aspect ratio names to [width, height] arrays.""" return { "1:1": [1024, 1024], "16:9": [1792, 1024], "9:16": [1024, 1792], } def _generate_image_impl(self, prompt: str, aspect_ratio: str) -> bytes: if not self.client: token = self.get_api_token() if not token: raise ValueError("OpenAI API token is not configured") self.client = openai.OpenAI(api_key=token) aspect_map = self.get_aspect_map() size = resolve_aspect_ratio_to_size(aspect_ratio, aspect_map) response = self.client.images.generate( model="dall-e-3", prompt=prompt, size=size, quality="hd", response_format="b64_json", n=1, ) if response.data and len(response.data) > 0: return base64.b64decode(response.data[0].b64_json) else: raise ValueError("No image generated from OpenAI API") # ================================================================ # image_generator_fal.py # ================================================================ def get_fal_api_token() -> str: return get_string_from_file("fal-api-token.txt") def set_fal_api_token(token: str) -> None: set_string_to_file("fal-api-token.txt", token) class FalImageGenerator(ImageGenerator): def __init__(self): self.client = None def get_api_token(self) -> str: return get_fal_api_token() @property def generator_name(self) -> str: return "fal.ai" def get_aspect_map(self) -> dict[str, list[int]]: """Return a map from aspect ratio names to [width, height] arrays based on fal.ai flux-pro model capabilities.""" return { "21:9": [3136, 1344], "16:9": [2752, 1536], "4:3": [2368, 1792], "3:2": [2496, 1664], "1:1": [2048, 2048], "2:3": [1664, 2496], "3:4": [1792, 2368], "9:16": [1536, 2752], "9:21": [1344, 3136], } def _generate_image_impl(self, prompt: str, aspect_ratio: str) -> bytes: token = self.get_api_token() if not token: raise ValueError("fal.ai API token is not configured") # Create a SyncClient with the API token client = fal_client.SyncClient(key=token) target_ratio = parse_aspect_ratio(aspect_ratio) aspect_map = self.get_aspect_map() actual_aspect_ratio = find_closest_aspect_ratio_name(target_ratio, aspect_map) # Prepare model input with your specified parameters model_input = { "prompt": prompt, "num_images": 1, "enable_safety_checker": False, "output_format": "jpeg", "safety_tolerance": "6", "aspect_ratio": actual_aspect_ratio, "raw": False, "enhance_prompt": False, } # Generate image using client.subscribe result = client.subscribe( "fal-ai/flux-pro/v1.1-ultra", arguments=model_input, with_logs=False, ) if result and "images" in result and len(result["images"]) > 0: # Get the first image URL and download it image_url = result["images"][0]["url"] # Download the image data response = httpx.get(image_url) response.raise_for_status() return response.content else: raise ValueError("No image generated from fal.ai API") # ================================================================ # visualization_class.py # ================================================================ class Visualization: def __init__( self, endpoint_path: str, endpoint_handler, instruction: str, enable_check: Callable | None = None, cacheable: bool = False, ): self.endpoint_path = endpoint_path self.endpoint_handler = endpoint_handler self.instruction = instruction self.enable_check = enable_check self.cacheable = cacheable def is_enabled(self) -> bool: if self.enable_check is None: return True try: return self.enable_check() except Exception: return True def get_full_url(self) -> str: """ Generate the full URL for this visualization with authentication. Returns: The complete URL with pass parameter (e.g., "http://localhost:8080/visualization/chart.png?pass=abc123") """ # Constants will be available in the combined file return f"{INSTRUCTION_BASE_URL}{self.endpoint_path}?pass={VISUALIZATION_PASS}" def get_instruction(self) -> str: """ Get the instruction with all placeholders replaced. Returns: The instruction with VISUALIZATION_URL placeholder replaced with the actual URL """ instruction = self.instruction full_url = self.get_full_url() return instruction.replace("<<VISUALIZATION_URL>>", full_url) def get_tag(self) -> str: """ Return the tag for this visualization type, derived from the endpoint path. Returns: The tag string for this visualization extracted from endpoint_path """ # Extract tag from endpoint_path, e.g., "/visualization/chart.png" -> "chart" filename = os.path.basename(self.endpoint_path) # Remove the extension to get the tag tag = os.path.splitext(filename)[0] return tag # ================================================================ # utils_api.py # ================================================================ log = logging.getLogger(__name__) # --- Caching Utilities --- generation_locks = defaultdict(threading.Lock) # Request utilities def get_query_param( request: Request, param_names: list[str], max_length: int = 3000 ) -> str: filtered_params = [ (k.lower(), v) for k, v in request.query_params.items() if k.lower() in [name.lower() for name in param_names] ] if not filtered_params: raise ValueError(f"A non-empty query parameter is required from: {param_names}") for preferred_name in param_names: for param_key, param_value in filtered_params: if param_key == preferred_name.lower(): if len(param_value) > max_length: raise ValueError( f"Input exceeds maximum length of {max_length} characters." ) return param_value raise ValueError( f"A query parameter must match one of the specified names: {param_names}" ) def verify_pass_parameter(request: Request) -> None: provided_pass = get_query_param(request, ["pass", "password"]) if provided_pass != VISUALIZATION_PASS: raise ValueError("Invalid pass parameter.") def create_authenticated_endpoint(visualization): async def wrapped_handler(request): try: verify_pass_parameter(request) filename = generate_filename_from_request(request) if visualization.cacheable: cache_file = VISUALIZATION_CACHE_DIR / filename if cache_file.exists(): log.info(f"Serving from cache: {cache_file}") with open(cache_file, "rb") as f: content_bytes = f.read() else: lock = generation_locks[filename] with lock: if cache_file.exists(): log.info(f"Serving from cache (after lock): {cache_file}") with open(cache_file, "rb") as f: content_bytes = f.read() else: log.info( f"Generating new content for {visualization.get_tag()}" ) content_bytes = await visualization.endpoint_handler( request ) with open(cache_file, "wb") as f: f.write(content_bytes) else: content_bytes = await visualization.endpoint_handler(request) media_type = get_media_type_from_extension(Path(filename).suffix) headers = { "Content-Disposition": f'inline; filename="{filename}"', "Cache-Control": "public, max-age=259200", } return Response( content=content_bytes, media_type=media_type, headers=headers ) except Exception as e: log.error(f"Failed to generate visualization: {e}", exc_info=True) return Response( content=f"Error: {e}", status_code=500, media_type="text/plain", ) return wrapped_handler def get_media_type_from_extension(ext: str) -> str: media_type, _ = mimetypes.guess_type(f"file{ext}") return media_type or "application/octet-stream" # Response utilities def generate_filename_from_request(request: Request) -> str: # Extract filename from URL path (e.g., "/visualization/chart.png" -> "chart") path = request.url.path filename_with_ext = path.split("/")[-1] # Get last part of path base_parts = filename_with_ext.split(".", 1) # Split on first dot basename = base_parts[0] extension = base_parts[1] if len(base_parts) > 1 else "" # Use all query params including pass for the cache key/filename hash sorted_params = sorted(request.query_params.items()) hash_input = "&".join([f"{k}={v}" for k, v in sorted_params]).encode("utf-8") cache_key = hashlib.sha256(hash_input).hexdigest() return ( f"{basename}-{cache_key}.{extension}" if extension else f"{basename}-{cache_key}" ) # FastAPI integration def add_or_replace_route(new_route: Route): app.router.routes = [ route for route in app.router.routes if getattr(route, "name", "") != new_route.name ] app.router.routes.insert(0, new_route) if new_route.path not in AUDIT_EXCLUDED_PATHS: AUDIT_EXCLUDED_PATHS.append(new_route.path) def register_visualization_endpoints(visualizations): for viz in visualizations: wrapped_handler = create_authenticated_endpoint(viz) add_or_replace_route( Route( viz.endpoint_path, wrapped_handler, methods=["GET"], name=viz.endpoint_path.replace("/", "").replace(".", "_"), ) ) # ================================================================ # utils_font.py # ================================================================ @lru_cache(maxsize=10) def get_font(size: int) -> ImageFont.FreeTypeFont: return ImageFont.truetype(io.BytesIO(ROBOTO_SEMIBOLD_BYTES), size=size) # ================================================================ # image_generator_all.py # ================================================================ image_generator_fal = FalImageGenerator() image_generator_replicate = ReplicateImageGenerator() image_generator_openai = OpenAIImageGenerator() all_image_generators = [ image_generator_fal, image_generator_replicate, image_generator_openai, ] def get_selected_image_generator_name() -> str: return get_string_from_file("selected-image-generator.txt") def set_selected_image_generator_name(provider: str) -> None: set_string_to_file("selected-image-generator.txt", provider) def get_image_generator() -> ImageGenerator | None: selected_provider = get_selected_image_generator_name() if selected_provider: for generator in all_image_generators: if ( selected_provider == generator.generator_name and generator.is_available() ): return generator return None # ================================================================ # visualization_qr_code.py # ================================================================ QR_CODE_INSTRUCTION = """ To create a QR code, use a Markdown image tag pointing to `<<VISUALIZATION_URL>>`. The data should be URL-encoded and passed as the `data` query parameter. **Usage Examples:**  """ def qr_code_generate_png_cached(data: str) -> bytes: qr = segno.make(data, error="M") buffer = io.BytesIO() qr.save(buffer, kind="png", scale=10) return buffer.getvalue() async def qr_code_endpoint_handler(request): data = get_query_param(request, ["data", "content", "url", "link", "text"]) png_data = await asyncio.to_thread(qr_code_generate_png_cached, data) return png_data qr_code_visualization = Visualization( endpoint_path="/visualization/qr-code.png", endpoint_handler=qr_code_endpoint_handler, instruction=QR_CODE_INSTRUCTION, ) # ================================================================ # visualization_meme.py # ================================================================ log = logging.getLogger(__name__) # ============================================================ # CONSTANTS # ============================================================ TARGET_WIDTH = 3000 BORDER_WIDTH_FACTOR = 0.005 FONT_SIZE_FACTOR = 0.03 TEXT_PADDING_FACTOR = 0.5 JPEG_QUALITY = 95 MAX_DOWNLOAD_SIZE = 30 * 1024 * 1024 # 30 MB DOWNLOAD_TIMEOUT = 10.0 # 10 seconds MEME_INSTRUCTION = """ To create a meme, you may use a Markdown image tag pointing to `<<VISUALIZATION_URL>>`. You must provide the `image_url` and `text` query parameters. The `image_url` should point to a public image on the web. The `text` is the caption that will be added to the bottom of the image. Examples:      """ # ============================================================ # URL HANDLING & DOWNLOADING # ============================================================ def meme_is_valid_url_structure(url: str) -> bool: try: result = urlparse(url) return all([result.scheme, result.netloc]) except Exception: return False def meme_create_url_candidates(url: str) -> list[str]: raw_candidates = [] base_url = INSTRUCTION_BASE_URL raw_candidates.append(url) if not url.startswith(("http://", "https://")): try: parsed = urlparse(url) path_segment = parsed.netloc + parsed.path if parsed.query: path_segment += f"?{parsed.query}" if path_segment and path_segment.lstrip("/"): raw_candidates.append(f"{base_url}/{path_segment.lstrip('/')}") except Exception: pass unique_candidates = list(dict.fromkeys(raw_candidates)) return [c for c in unique_candidates if meme_is_valid_url_structure(c)] async def meme_download_image(url: str) -> bytes: """ Downloads an image from the given URL (or candidates) with size and timeout limits. """ candidates = meme_create_url_candidates(url) last_exception = None async with httpx.AsyncClient( timeout=DOWNLOAD_TIMEOUT, follow_redirects=True ) as client: for candidate in candidates: try: # Stream the response to check size before downloading everything async with client.stream("GET", candidate) as response: response.raise_for_status() content_length = response.headers.get("Content-Length") if content_length and int(content_length) > MAX_DOWNLOAD_SIZE: log.warning( f"Image at {candidate} is too large ({content_length} bytes). Skipping." ) continue data = io.BytesIO() downloaded_size = 0 async for chunk in response.aiter_bytes(): downloaded_size += len(chunk) if downloaded_size > MAX_DOWNLOAD_SIZE: raise ValueError( f"Image exceeded maximum size of {MAX_DOWNLOAD_SIZE} bytes" ) data.write(chunk) return data.getvalue() except Exception as e: log.warning(f"Failed to download from {candidate}: {e}") last_exception = e raise ValueError( f"Could not download image from any candidate for URL: {url}. Last error: {last_exception}" ) # ============================================================ # IMAGE PROCESSING # ============================================================ def meme_resize_image(image: Image.Image, target_width: int) -> Image.Image: """Resizes an image to the target_width while maintaining aspect ratio.""" aspect_ratio = image.height / image.width target_height = int(target_width * aspect_ratio) return image.resize((target_width, target_height), Image.Resampling.LANCZOS) def meme_wrap_text( text: str, font: ImageFont.FreeTypeFont, max_width: int ) -> list[str]: """ Wraps text using a bottom-up sliding window approach. - First, a greedy wrap determines the initial line breaks. - Then, it iterates from the bottom up, merging and re-splitting pairs of lines to find a more optimal, balanced layout. """ # Handle single paragraphs first if "\n" not in text: # If the whole text fits, we're done. if font.getbbox(text)[2] <= max_width: return [text] # Start with a greedy wrap lines = meme_wrap_text_greedy_by_word(text, font, max_width) if len(lines) <= 1: return lines # Apply the bottom-up sliding window refinement for i in range(len(lines) - 2, -1, -1): # Merge the two adjacent lines combined_text = lines[i] + " " + lines[i + 1] # Find the best way to split this combined text best_split = meme_wrap_text_find_best_split(combined_text, font, max_width) if best_split: # Replace the original two lines with the new, optimized split lines[i], lines[i + 1] = best_split return lines # If there are multiple paragraphs, wrap each one individually final_lines = [] for paragraph in text.split("\n"): final_lines.extend(meme_wrap_text(paragraph, font, max_width)) return final_lines def meme_wrap_text_greedy_by_word( text: str, font: ImageFont.FreeTypeFont, max_width: int ) -> list[str]: """A simple greedy wrapper for edge cases where the main algorithm fails.""" lines = [] words = text.split() current_words = [] for word in words: test_line = " ".join(current_words + [word]) if font.getbbox(test_line)[2] <= max_width: current_words.append(word) else: if current_words: lines.append(" ".join(current_words)) current_words = [word] if current_words: lines.append(" ".join(current_words)) return lines def meme_wrap_text_find_best_split( text: str, font: ImageFont.FreeTypeFont, max_width: int ) -> tuple[str, str] | None: """ Finds the best single split point for a given string. - Prioritizes splits at sentence ends, then commas, then spaces. - Aims for the most balanced lines where the second line is not longer than the first. """ words = text.split() best_split = None best_score = -1 min_diff = float("inf") # Iterate backwards to find the best split point for i in range(len(words) - 1, 0, -1): line1 = " ".join(words[:i]) line2 = " ".join(words[i:]) width1 = font.getbbox(line1)[2] width2 = font.getbbox(line2)[2] # Rule: Both lines must fit. if width1 <= max_width and width2 <= max_width: diff = abs(width1 - width2) # Absolute difference for true balance # Score based on punctuation score = 0 last_word = words[i - 1] if last_word.endswith((".", "!", "?")): score = 2 elif last_word.endswith(","): score = 1 # A better punctuation is always preferred. # For the same punctuation level, the most balanced (smallest diff) is chosen. if score > best_score or (score == best_score and diff < min_diff): best_score = score min_diff = diff best_split = (line1, line2) return best_split def meme_create_image(image_bytes: bytes, image_text: str) -> bytes: """ Orchestrates the creation of the meme image. """ downloaded_image = Image.open(io.BytesIO(image_bytes)) base_image = meme_resize_image(downloaded_image, TARGET_WIDTH) base_width, base_height = base_image.size border_size = int(base_width * BORDER_WIDTH_FACTOR) # --- Text Layout Calculation --- font_size = int(base_width * FONT_SIZE_FACTOR) font = get_font(font_size) ascent, descent = font.getmetrics() line_height = ascent + descent padding = line_height * TEXT_PADDING_FACTOR max_text_width = base_width - padding wrapped_lines = meme_wrap_text(image_text, font, max_text_width) text_block_height = line_height * len(wrapped_lines) text_area_height = text_block_height + (2 * padding) # --- Final Image Creation --- final_width = base_width + (2 * border_size) final_height = int(base_height + (1 * border_size) + text_area_height) final_image = Image.new("RGB", (final_width, final_height), "black") final_image.paste(base_image, (border_size, border_size)) # --- Draw Wrapped Text --- draw = ImageDraw.Draw(final_image) text_area_y_start = base_height + (1 * border_size) current_y = text_area_y_start + (text_area_height - text_block_height) / 2 for i, line in enumerate(wrapped_lines): bbox = draw.textbbox((0, 0), line, font=font) text_width = bbox[2] - bbox[0] x_position = (final_width - text_width) / 2 draw.text((x_position, current_y), line, font=font, fill="white", anchor="la") current_y += line_height byte_arr = io.BytesIO() final_image.save(byte_arr, format="JPEG", quality=JPEG_QUALITY, optimize=True) return byte_arr.getvalue() # ============================================================ # ENDPOINT HANDLER # ============================================================ async def meme_endpoint_handler(request): image_url = get_query_param(request, ["image_url", "url", "src", "image"]) text = get_query_param(request, ["text", "caption", "title"]) image_bytes = await meme_download_image(image_url) final_image_bytes = meme_create_image(image_bytes, text) return final_image_bytes meme_visualization = Visualization( endpoint_path="/visualization/meme.jpeg", endpoint_handler=meme_endpoint_handler, instruction=MEME_INSTRUCTION, cacheable=True, ) # ================================================================ # visualization_large_emoji.py # ================================================================ LARGE_EMOJI_FONT_SIZE = 100 LARGE_EMOJI_INSTRUCTION = """ To express emotions with large emojis, use a Markdown image tag pointing to `<<VISUALIZATION_URL>>`. Each image can contain up to 5 emojis. Pass them as the `text` query parameter. **Example Emojis:** ๐ค๐คฏ๐คท๐๐ธ๐ดโ๏ธ๐ฅ๐คฎ๐คฌ๐ฉ๐คก๐๐ธ๐ช๐๐๐ค๐ง๐คจ๐ก๐ง ๐๐คฆ๐คทโโ๏ธ๐ฏ๐ช๐๐คฉ๐ฅณ๐๐โ ๐๐๐ **Usage Examples:**     """ def large_emoji_generate_svg(text: str) -> str: safe_text = html.escape(text) # --- Calculate SVG Dimensions --- # Correctly count grapheme clusters (user-perceived characters) emoji_count = len(regex.findall(r"\X", text)) padding = LARGE_EMOJI_FONT_SIZE * 0.2 # 20% padding svg_width = (emoji_count * LARGE_EMOJI_FONT_SIZE) + padding svg_height = LARGE_EMOJI_FONT_SIZE + padding # --- Adjust text position --- x_coordinate = padding / 2 y_coordinate = LARGE_EMOJI_FONT_SIZE # --- Create SVG --- return f""" <svg width="{svg_width}" height="{svg_height}" xmlns="http://www.w3.org/2000/svg"> <text x="{x_coordinate}" y="{y_coordinate}" font-family="'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji', sans-serif" font-size="{LARGE_EMOJI_FONT_SIZE}px" fill="#000000"> {safe_text} </text> </svg> """.strip() async def large_emoji_endpoint_handler(request): text = get_query_param(request, ["text", "emoji", "emojis", "characters"]) svg_content = large_emoji_generate_svg(text) return svg_content.encode("utf-8") large_emoji_visualization = Visualization( endpoint_path="/visualization/large-emoji.svg", endpoint_handler=large_emoji_endpoint_handler, instruction=LARGE_EMOJI_INSTRUCTION, ) # ================================================================ # visualization_generative_image.py # ================================================================ GENERATIVE_IMAGE_WIDTH = 2560 GENERATIVE_IMAGE_HEIGHT = 1440 GENERATIVE_IMAGE_INSTRUCTION = """ To generate images using generative AI, use a Markdown image tag pointing to `<<VISUALIZATION_URL>>`. The prompt should be URL-encoded and passed as the `prompt` query parameter, with an optional `aspect_ratio` parameter. This can generate high-quality images from text descriptions. Use descriptive, detailed prompts for best results. **Aspect Ratio Guidelines:** - The aspect_ratio should be selected by picking the most suitable one for the image. - If the user suggests or implies an aspect ratio, then use that, or the closest valid one. - "3:4" should be used for upper body shots and similar. - "2:3" should be used for full body portraits and similar. - "21:9" for panoramas or ultra wide images. - "16:9" is otherwise the default recommended aspect ratio. - Supported aspect ratios include: 1:1, 4:3, 3:4, 16:9, 9:16, 3:2, 2:3, 21:9, and more **Prompt Enhancement Guidelines:** The prompt must abide by the following policies: 1. The prompt should be in English. If the image description was not in English, then translate it. 2. Always mention the image type (photo, oil painting, watercolor painting, illustration, cartoon, drawing, vector, render, etc.) in the beginning of the prompt. Unless the description suggests otherwise. 3. The prompt must intricately describe every part of the image in concrete, objective detail. THINK about what the end goal of the description is, and extrapolate that to what would make satisfying images. 4. The prompt should be a paragraph of text that is extremely descriptive and detailed. It should be more than 3 sentences long. 5. If the user requested modifications to a previous image, the prompt should not simply be longer, but rather it should be refactored to integrate the suggestions. **Usage Examples:**     """ def generative_image_generate_jpg(prompt: str, aspect_ratio: str) -> bytes: generator = get_image_generator() if generator is None: raise ValueError("No image generation provider is configured") return generator.generate_image(prompt, aspect_ratio) async def generative_image_endpoint_handler(request): # Get aspect ratio parameter try: aspect_ratio_param = get_query_param( request, ["aspect_ratio", "aspect", "aspectratio", "ar"] ) aspect_ratio = aspect_ratio_param.strip() except ValueError: aspect_ratio = "16:9" # Normal image generation flow prompt = get_query_param(request, ["prompt", "data", "content"]) jpg_data = await asyncio.to_thread( generative_image_generate_jpg, prompt, aspect_ratio ) return jpg_data def is_image_generation_configured() -> bool: return get_image_generator() is not None generative_image_visualization = Visualization( endpoint_path="/visualization/generative-image.jpg", endpoint_handler=generative_image_endpoint_handler, instruction=GENERATIVE_IMAGE_INSTRUCTION, enable_check=is_image_generation_configured, cacheable=True, ) # ================================================================ # visualization_fancy_text.py # ================================================================ FANCY_TEXT_FONT_SIZE = 40 FANCY_TEXT_FONT = get_font(FANCY_TEXT_FONT_SIZE) FANCY_TEXT_INSTRUCTION = """ To create a fancy text image, you may use a Markdown image tag pointing to `<<VISUALIZATION_URL>>`. The text should be URL-encoded and passed as the `text` query parameter. These images are self-sizing and will adapt to the length of your text. They are perfect for attention-grabbing headlines with just a few words. Think of them as a word-art effect of sorts. A bit cheesy, but it works. Example:  """ log = logging.getLogger(__name__) async def fancy_text_generate_svg_cached(text: str) -> str: safe_text = html.escape(text) font = FANCY_TEXT_FONT # --- Measure Text --- bbox = font.getbbox(safe_text) text_width = bbox[2] - bbox[0] text_height = bbox[3] - bbox[1] # --- Calculate SVG Dimensions --- stroke_width_main = max(1, round(FANCY_TEXT_FONT_SIZE / 7)) padding = stroke_width_main * 2 # Add "headroom" for emojis by adding twice the width of a capital 'A' headroom = font.getbbox("A")[2] * 2 svg_width = text_width + padding + headroom svg_height = text_height + padding # --- Adjust text position --- x_coordinate = -bbox[0] + (padding / 2) y_coordinate = padding / 2 log.info(f"Text coordinates x={x_coordinate}, y={y_coordinate}") # --- Embed Font --- font_face_rule = f""" @font-face {{ font-family: 'Roboto-SemiBold'; src: url('data:font/truetype;base64,{ROBOTO_SEMIBOLD_BASE64}'); }} """ # --- Create SVG --- return f""" <svg width="{svg_width}" height="{svg_height}" xmlns="http://www.w3.org/2000/svg"> <defs> <style>{font_face_rule}</style> <linearGradient id="grad" x1="0%" y1="0%" x2="100%" y2="100%"> <stop offset="0%" style="stop-color:#1e3a8a" /> <stop offset="100%" style="stop-color:#e94560" /> </linearGradient> <text id="t" x="{x_coordinate}" y="{y_coordinate}" dominant-baseline="hanging" font-family="Roboto-SemiBold, Arial, sans-serif" font-size="{FANCY_TEXT_FONT_SIZE}" font-weight="bold">{safe_text}</text> </defs> <use href="#t" fill="none" stroke="url(#grad)" stroke-width="{stroke_width_main}"/> <use href="#t" fill="none" stroke="white" stroke-width="{max(1, round(stroke_width_main / 2))}"/> <use href="#t" fill="url(#grad)"/> </svg> """.strip() async def fancy_text_endpoint_handler(request): text = get_query_param(request, ["text", "label", "string", "title"]) svg_content = await fancy_text_generate_svg_cached(text) return svg_content.encode("utf-8") fancy_text_visualization = Visualization( endpoint_path="/visualization/fancy-text.svg", endpoint_handler=fancy_text_endpoint_handler, instruction=FANCY_TEXT_INSTRUCTION, ) # ================================================================ # visualization_color_swatch.py # ================================================================ COLOR_SWATCH_SQUARE_SIZE = 1000 # Each color square is 1000x1000 pixels COLOR_SWATCH_MAX_COLORS_PER_ROW = 5 # Maximum 5 colors per row (5000 pixels wide total) COLOR_SWATCH_INSTRUCTION = """ To create color swatch images, use a Markdown image tag pointing to `<<VISUALIZATION_URL>>`. Colors should be URL-encoded and passed as comma-separated values in the `colors` query parameter. Supports hex colors (like #FF5733), RGB colors (like rgb(255,87,51)), and named colors (like red, blue). Example: """ def color_swatch_parse_colors(colors_param: str) -> list[str]: if not colors_param: return [] # URL decode and split by comma decoded = unquote(colors_param) colors = [color.strip() for color in decoded.split(",") if color.strip()] return colors def color_swatch_generate_svg(colors: list[str]) -> str: rows = ( len(colors) + COLOR_SWATCH_MAX_COLORS_PER_ROW - 1 ) // COLOR_SWATCH_MAX_COLORS_PER_ROW total_width = COLOR_SWATCH_SQUARE_SIZE * COLOR_SWATCH_MAX_COLORS_PER_ROW total_height = rows * COLOR_SWATCH_SQUARE_SIZE svg_parts = [ f'<svg width="{total_width}" height="{total_height}" xmlns="http://www.w3.org/2000/svg">' ] for row_index, color in enumerate(colors): col_index = row_index % COLOR_SWATCH_MAX_COLORS_PER_ROW actual_row = row_index // COLOR_SWATCH_MAX_COLORS_PER_ROW x = col_index * COLOR_SWATCH_SQUARE_SIZE y = actual_row * COLOR_SWATCH_SQUARE_SIZE svg_parts.append( f'<rect x="{x}" y="{y}" width="{COLOR_SWATCH_SQUARE_SIZE}" height="{COLOR_SWATCH_SQUARE_SIZE}" fill="{html.escape(color)}"/>' ) svg_parts.append("</svg>") return "\n".join(svg_parts) async def color_swatch_endpoint_handler(request): colors_param = get_query_param( request, ["colors", "color", "palette", "data", "content"] ) colors = color_swatch_parse_colors(colors_param) if len(colors) == 0: raise ValueError("Error: At least 1 color is required") if len(colors) > 50: raise ValueError("Error: Too many colors provided (maximum 50)") svg_content = color_swatch_generate_svg(colors) return svg_content.encode("utf-8") color_swatch_visualization = Visualization( endpoint_path="/visualization/color-swatch.svg", endpoint_handler=color_swatch_endpoint_handler, instruction=COLOR_SWATCH_INSTRUCTION, ) # ================================================================ # visualization_chart.py # ================================================================ CHART_DEFAULT_WIDTH = 800 CHART_DEFAULT_HEIGHT = 400 CHART_SCALE_FACTOR = 5 CHART_PADDING = 10 log = logging.getLogger(__name__) CHART_INSTRUCTION = """ To create a chart, simply respond with a Markdown image tag pointing to `<<VISUALIZATION_URL>>` with the Vega-Lite spec JSON in the `spec` parameter. **Important:** No tool calling is required! Just type the Markdown image directly. **URL Formatting:** - URL-Encode the JSON spec: The JSON spec string must be URL-encoded to be passed as a parameter. - URL-encode parentheses `(` as `%28` and `)` as `%29` within the spec. Unencoded parentheses will break the Markdown image syntax since they may be interpreted as URL termination. **Best Practices:** - **Use a Data URL:** Whenever possible, use `data.url` pointing to an exposed/public url with the CSV/JSON file. - **Keep it Short:** `width`, `height`, and `$schema` are all optional and will be set automatically. - **Add a title:** Always add a `title` property to the chart spec. --- ### **Examples** **Bar Chart:**  **Top 20 Candies by Sugar:**  **Line Chart:**  **Sweden CO2 Emissions Over Time**  **Scatter Plot:**  **Area Chart:**  **Heatmap:**  **Simple Inline Data Donut Chart (for small datasets when no data url is available):** """ def chart_is_valid_url_structure(url: str) -> bool: try: result = urlparse(url) return all([result.scheme, result.netloc]) except Exception: return False def chart_create_url_candidates(url: str) -> list[str]: raw_candidates = [] base_url = INSTRUCTION_BASE_URL raw_candidates.append(url) if not url.startswith(("http://", "https://")): try: parsed = urlparse(url) path_segment = parsed.netloc + parsed.path if parsed.query: path_segment += f"?{parsed.query}" if path_segment and path_segment.lstrip("/"): raw_candidates.append(f"{base_url}/{path_segment.lstrip('/')}") except Exception: pass unique_candidates = list(dict.fromkeys(raw_candidates)) return [c for c in unique_candidates if chart_is_valid_url_structure(c)] async def chart_download_and_parse_data(url: str) -> list[dict]: """Download and parse data from a URL with caching.""" try: async with aiohttp.ClientSession() as session, session.get( url, timeout=5 ) as response: if response.status == 200: content = await response.text() content_type = response.headers.get("Content-Type", "").split(";")[0] # Determine data type and parse is_json = "json" in content_type or url.endswith(".json") is_csv = "csv" in content_type or url.endswith(".csv") if is_json: parsed_data = json.loads(content) elif is_csv: csv_file = io.StringIO(content) reader = csv.DictReader(csv_file) parsed_data = list(reader) else: log.warning(f"Could not determine data type for {url}") return [] return parsed_data else: raise ValueError(f"HTTP {response.status} when downloading {url}") except Exception as e: log.error(f"Failed to download from {url}. Error: {type(e).__name__}") raise async def chart_resolve_data_url(spec_data: dict): original_url = spec_data["url"] candidates = chart_create_url_candidates(original_url) for i, candidate in enumerate(candidates): try: # Use the cached download method parsed_data = await chart_download_and_parse_data(candidate) if parsed_data: # Embed parsed data and clean up spec spec_data["values"] = parsed_data del spec_data["url"] if "format" in spec_data: del spec_data["format"] return except Exception as e: log.warning( f"Failed to resolve data from candidate '{candidate}'. Error: {type(e).__name__}, Details: {e}" ) log.error(f"All candidates failed for URL: {original_url}") raise ValueError(f"Could not resolve data for chart from URL: {original_url}") def chart_repair_json_spec(spec: str) -> str: """Attempt to repair common JSON encoding issues from LLM-generated URLs""" # Fix malformed property names (e.g., {22labelAngle} -> {"labelAngle"}) spec = re.sub(r"\{(\d+)([a-zA-Z_][a-zA-Z0-9_]*)", r'{"\2', spec) # Fix missing quotes in general after commas or opening braces spec = re.sub(r"(\{|\,)(\d+)([a-zA-Z_][a-zA-Z0-9_]*)", r'\1"\3', spec) # Fix URL-encoded characters that weren't properly encoded spec = spec.replace("{22", '{"') spec = spec.replace("22:", '":') spec = spec.replace("22}", '"}') # Fix common quote issues around colon spec = re.sub(r"(\d+):", r'"\1":', spec) return spec def chart_parse_spec(spec: str) -> dict: """Multi-stage parsing strategy with repair fallbacks""" # Stage 1: Direct JSON parsing try: result = json.loads(spec) return result except json.JSONDecodeError: pass # Stage 2: Repair and retry JSON try: repaired_spec = chart_repair_json_spec(spec) result = json.loads(repaired_spec) return result except json.JSONDecodeError: pass # Stage 3: HOCON parsing try: result = ConfigFactory.parse_string(spec).as_plain_ordered_dict() return result except Exception: pass # Stage 4: Repair and try HOCON try: repaired_spec = chart_repair_json_spec(spec) result = ConfigFactory.parse_string(repaired_spec).as_plain_ordered_dict() return result except Exception as final_error: raise ValueError( f"Failed to parse specification with all strategies: {final_error}" ) async def chart_prepare_spec_for_rendering(vl_spec_dict: dict): if "url" in vl_spec_dict.get("data", {}): await chart_resolve_data_url(vl_spec_dict["data"]) if "$schema" not in vl_spec_dict: vl_spec_dict["$schema"] = "https://vega.github.io/schema/vega-lite/v5.json" if "width" not in vl_spec_dict: vl_spec_dict["width"] = CHART_DEFAULT_WIDTH if "height" not in vl_spec_dict: vl_spec_dict["height"] = CHART_DEFAULT_HEIGHT # Force autosize to fit for predictable dimensions vl_spec_dict["autosize"] = "fit" # Force padding to consistent spacing vl_spec_dict["padding"] = CHART_PADDING async def chart_render_png_from_spec_cached(vl_spec_str: str) -> bytes: result = vl_convert.vegalite_to_png(vl_spec_str, scale=CHART_SCALE_FACTOR) return result async def chart_endpoint_handler(request: Request): # Extract spec parameter spec = get_query_param( request, ["spec", "data", "specification", "vega", "chart", "content"], 100_000 ) # Parse spec vl_spec_dict = chart_parse_spec(spec) # Prepare spec for rendering await chart_prepare_spec_for_rendering(vl_spec_dict) # Convert to string for rendering final_vl_spec_str = json.dumps(vl_spec_dict) # Render PNG png_data = await chart_render_png_from_spec_cached(final_vl_spec_str) # Create response return png_data chart_visualization = Visualization( endpoint_path="/visualization/chart.png", endpoint_handler=chart_endpoint_handler, instruction=CHART_INSTRUCTION, cacheable=True, ) # ================================================================ # visualization_all.py # ================================================================ visualizations = [ chart_visualization, generative_image_visualization, fancy_text_visualization, large_emoji_visualization, qr_code_visualization, color_swatch_visualization, meme_visualization, ] # ================================================================ # utils_hardware.py # ================================================================ log = logging.getLogger(__name__) def log_hardware_specs(): """Log hardware specifications with focus on CPU cores.""" try: # CPU Information - this is the main focus cpu_count_logical = psutil.cpu_count(logical=True) cpu_count_physical = psutil.cpu_count(logical=False) cpu_freq = psutil.cpu_freq() log.info("=" * 50) log.info("HARDWARE SPECIFICATIONS") log.info("=" * 50) log.info(f"CPU Logical Cores: {cpu_count_logical}") log.info(f"CPU Physical Cores: {cpu_count_physical}") if cpu_freq: log.info(f"CPU Frequency: {cpu_freq.current:.2f} MHz") log.info(f"CPU Architecture: {platform.machine()}") log.info(f"CPU Usage: {psutil.cpu_percent(interval=1)}%") # Memory Information memory = psutil.virtual_memory() log.info(f"Memory Total: {memory.total / (1024**3):.2f} GB") log.info(f"Memory Available: {memory.available / (1024**3):.2f} GB") log.info(f"Memory Used: {memory.percent}%") # System Information log.info(f"Platform: {platform.system()} {platform.release()}") log.info(f"Hostname: {socket.gethostname()}") log.info("=" * 50) except Exception as e: log.error(f"Failed to log hardware specs: {e}") # Log hardware specs on startup log_hardware_specs() # ================================================================ # visualizations_main.py # ================================================================ log = logging.getLogger(__name__) # Register visualization endpoints register_visualization_endpoints(visualizations) # ================================================================ # INJECT LOADER JS # ================================================================ def ensure_loader_js(prefix: str, js_code: str) -> None: """ Inject multiline JavaScript code into the frontend loader.js file. Args: prefix: Unique prefix to identify the JS block js_code: Multiline JavaScript code to inject """ target_file = Path(STATIC_DIR) / "loader.js" # Create the multiline block with start/end comments start_comment = f"/*{prefix}_start*/" end_comment = f"/*{prefix}_end*/" full_block = f"{start_comment}\n{js_code}\n{end_comment}" # Pattern to find existing blocks start_pattern = f"/*{prefix}_start*/" end_pattern = f"/*{prefix}_end*/" try: # Read existing content or create empty string if file doesn't exist if target_file.exists(): with open(target_file, encoding="utf-8") as f: content = f.read() else: content = "" # Create directory if it doesn't exist target_file.parent.mkdir(parents=True, exist_ok=True) # Find and replace existing block with same prefix, or add new one start_index = content.find(start_pattern) end_index = content.find(end_pattern) if start_index != -1 and end_index != -1: # Replace existing block before_block = content[:start_index] after_block = content[end_index + len(end_pattern) :] new_content = before_block + full_block + after_block log.info(f"Replaced existing block with prefix '{prefix}' in {target_file}") else: # Add new block at the end new_content = ( content.rstrip() + "\n\n" + full_block + "\n" if content.strip() else full_block + "\n" ) log.info(f"Added new block with prefix '{prefix}' to {target_file}") # Write back to file with open(target_file, "w", encoding="utf-8") as f: f.write(new_content) log.info(f"Successfully ensured block exists in {target_file}") except Exception as e: log.error(f"Failed to inject block into {target_file}: {e}") # Inject visual loading state for generative images loading_state_js = """ (function() { 'use strict'; // Constants const GENERATIVE_IMAGE_PATH = '/visualization/generative-image.jpg'; const CHART_PATH = '/visualization/chart.png'; const DEFAULT_ASPECT_RATIO = 16/9; // Chart defaults from backend variables const CHART_DEFAULT_WIDTH = <<CHART_DEFAULT_WIDTH>>; const CHART_DEFAULT_HEIGHT = <<CHART_DEFAULT_HEIGHT>>; const CHART_SCALE_FACTOR = <<CHART_SCALE_FACTOR>>; const CHART_PADDING = <<CHART_PADDING>>; // === Element Detection === function isWithinChatSection(img) { let element = img; while (element && element.parentElement) { if (element.tagName === 'SECTION' && element.getAttribute('aria-labelledby') === 'chat-conversation') { return true; } element = element.parentElement; } return false; } // === DOM Operations === function canProcessImage(img) { return !img.dataset.vizProcessed && img.tagName === 'IMG' && isWithinChatSection(img) && (img.src?.includes(GENERATIVE_IMAGE_PATH) || img.src?.includes(CHART_PATH)); } function markImageProcessed(img) { img.dataset.vizProcessed = 'true'; } function removeWfitClasses(img) { let container = img.parentElement; let steps = 0; const maxSteps = 3; while (container && container.parentElement && steps < maxSteps) { if (container.classList.contains('w-fit')) { container.classList.remove('w-fit'); break; } container = container.parentElement; steps++; } } // === Frontend Chart Spec Extraction === function getVlSpecDict(imageUrl) { try { const url = new URL(imageUrl); const specParam = url.searchParams.get('spec'); return specParam ? JSON.parse(decodeURIComponent(specParam)) : {}; } catch (error) { console.warn('Failed to parse VL spec, using empty object:', error); return {}; } } // === Frontend Chart Dimension Extraction === function getChartDimension(vlSpecDict, dimension, defaultValue) { try { const value = vlSpecDict[dimension] || defaultValue; return parseFloat(value) || defaultValue; } catch (error) { return defaultValue; } } // === Frontend Chart Aspect Ratio Calculation === function calculateChartAspectRatio(imageUrl) { // Parse VL spec from URL const vlSpecDict = getVlSpecDict(imageUrl); // Extract width and height using the helper method const width = getChartDimension(vlSpecDict, 'width', CHART_DEFAULT_WIDTH); const height = getChartDimension(vlSpecDict, 'height', CHART_DEFAULT_HEIGHT); // Return the aspect ratio of predicted final dimensions // Final dimensions: (width + padding*2) * scale_factor return ((width + (CHART_PADDING * 2)) * CHART_SCALE_FACTOR) / ((height + (CHART_PADDING * 2)) * CHART_SCALE_FACTOR); } // === Available Aspect Map === // Dynamically injected by backend when filter is invoked // Map from aspect ratio names to [width, height] arrays const AVAILABLE_ASPECT_MAP = <<AVAILABLE_ASPECT_MAP>>; // === Frontend Aspect Ratio Prediction === function parseAspectRatio(aspectStr) { try { // Single regex to split on either ":" or "x" const parts = aspectStr.toLowerCase().split(/[:x]/); if (parts.length === 2) { const width = parseFloat(parts[0]); const height = parseFloat(parts[1]); if (width > 0 && height > 0) { return [width, height]; } } } catch (error) { // Parsing failed } return null; } function calculateGenerativeImageAspectRatio(imageUrl) { try { const url = new URL(imageUrl); const aspectRatioParam = url.searchParams.get('aspect_ratio') || '16:9'; const targetRatio = parseAspectRatio(aspectRatioParam); if (!targetRatio || !Object.keys(AVAILABLE_ASPECT_MAP).length) return 16 / 9; const [targetWidth, targetHeight] = targetRatio; const targetValue = targetWidth / targetHeight; let bestDistance = Infinity; let bestDimensions = null; // Find closest supported aspect ratio using actual dimensions for (const [ratioName, dimensions] of Object.entries(AVAILABLE_ASPECT_MAP)) { const [width, height] = dimensions; const ratioValue = width / height; const distance = Math.abs(targetValue - ratioValue); if (distance < bestDistance) { bestDistance = distance; bestDimensions = dimensions; } } return bestDimensions ? bestDimensions[0] / bestDimensions[1] : 16 / 9; } catch (error) { console.warn('Failed to predict generative image aspect ratio:', error); return 16 / 9; } } function calculateAspectRatio(imageUrl) { try { if (imageUrl.includes(CHART_PATH)) { const ratio = calculateChartAspectRatio(imageUrl); console.log('Chart aspect ratio calculated:', ratio); return ratio; } else if (imageUrl.includes(GENERATIVE_IMAGE_PATH)) { const ratio = calculateGenerativeImageAspectRatio(imageUrl); console.log('Generative image aspect ratio predicted:', ratio); return ratio; } else { console.log('Unknown image type, using default aspect ratio'); return DEFAULT_ASPECT_RATIO; } } catch (error) { console.warn('Failed to calculate aspect ratio, using default:', error); return DEFAULT_ASPECT_RATIO; } } // === Styling === function createBackgroundStyle() { // Create a style element for the animation const styleId = 'viz-loading-animation-style'; let styleEl = document.getElementById(styleId); if (!styleEl) { styleEl = document.createElement('style'); styleEl.id = styleId; styleEl.textContent = ` @keyframes viz-loading-pulse { 0%, 100% { background-color: #d1d5db; } 50% { background-color: #f3f4f6; } } .viz-loading-placeholder { animation: viz-loading-pulse 2s ease-in-out infinite; } .viz-error-state { background-color: #fca5a5; animation: none; } `; document.head.appendChild(styleEl); } } function createPlaceholder(aspectRatio) { createBackgroundStyle(); const wrapper = document.createElement('div'); wrapper.classList.add('rounded-lg', 'viz-loading-placeholder'); Object.assign(wrapper.style, { display: 'block', width: '100%', position: 'relative', overflow: 'hidden', paddingBottom: `${(1 / aspectRatio) * 100}%`, height: '0' }); return wrapper; } function createImageClone(imgElement) { const imgClone = imgElement.cloneNode(true); imgClone.classList.remove('rounded-lg'); imgClone.style.margin = '0'; Object.assign(imgClone.style, { position: 'absolute', top: '0', left: '0', width: '100%', height: '100%', objectFit: 'cover', opacity: '0', transition: 'opacity 0.1s ease-in-out' }); return imgClone; } function setupImageLoadHandler(imgClone) { const handleLoad = () => { imgClone.style.opacity = '1'; // Stop the loading animation stopLoadingAnimation(imgClone.parentElement); }; const handleError = () => { // Apply error state with red background applyErrorState(imgClone.parentElement); }; imgClone.onload = handleLoad; imgClone.onerror = handleError; // Handle cached images if (imgClone.complete && imgClone.naturalHeight !== 0) { handleLoad(); } } function stopLoadingAnimation(wrapper) { if (wrapper && wrapper.classList.contains('viz-loading-placeholder')) { wrapper.style.animation = 'none'; wrapper.classList.remove('viz-loading-placeholder'); } } function applyErrorState(wrapper) { if (wrapper) { // Stop the loading animation wrapper.style.animation = 'none'; wrapper.classList.remove('viz-loading-placeholder'); // Apply error state with red background wrapper.classList.add('viz-error-state'); } } // === Main Processing Functions === async function processImage(imgElement) { if (!canProcessImage(imgElement)) { return; } markImageProcessed(imgElement); try { let aspectRatio; if (imgElement.src.includes(CHART_PATH)) { // Calculate chart aspect ratio immediately (no network call) aspectRatio = calculateChartAspectRatio(imgElement.src); console.log('Chart aspect ratio calculated frontend:', aspectRatio); } else if (imgElement.src.includes(GENERATIVE_IMAGE_PATH)) { // Use local prediction for generative images (no per-image backend call) aspectRatio = calculateGenerativeImageAspectRatio(imgElement.src); console.log('Generative image aspect ratio predicted locally:', aspectRatio); } else { aspectRatio = DEFAULT_ASPECT_RATIO; console.log('Unknown image type, using default aspect ratio:', aspectRatio); } wrapImageWithPlaceholder(imgElement, aspectRatio); } catch (error) { console.warn('Failed to process loading state:', error); wrapImageWithPlaceholder(imgElement, DEFAULT_ASPECT_RATIO); } } function wrapImageWithPlaceholder(imgElement, aspectRatio) { const parent = imgElement.parentNode; if (!parent) { console.warn('Image has no parent element, cannot apply wrapper'); return; } removeWfitClasses(imgElement); const wrapper = createPlaceholder(aspectRatio); const imgClone = createImageClone(imgElement); wrapper.appendChild(imgClone); parent.replaceChild(wrapper, imgElement); setupImageLoadHandler(imgClone); } // === Initialization === function processExistingImages() { const images = document.querySelectorAll('img'); images.forEach(processImage); } function setupMutationObserver() { const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { mutation.addedNodes.forEach((node) => { if (node.nodeType === Node.ELEMENT_NODE) { if (node.tagName === 'IMG') { processImage(node); } const descendantImages = node.querySelectorAll?.('img'); if (descendantImages) { descendantImages.forEach(processImage); } } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); } function initializeImageLoader() { processExistingImages(); setupMutationObserver(); } // === DOM Ready Check === if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initializeImageLoader); } else { initializeImageLoader(); } })(); """ # Format the JavaScript with actual chart default values and available aspect ratios def get_formatted_loading_state_js(): # Get available aspect map from the current image generator generator = get_image_generator() if generator: aspect_map = generator.get_aspect_map() else: aspect_map = {"16:9": [1792, 1024]} # Default fallback (OpenAI 16:9 dimensions) # Format as JavaScript object aspect_map_json = json.dumps(aspect_map) # Replace placeholders with actual values return ( loading_state_js.replace("<<CHART_DEFAULT_WIDTH>>", str(CHART_DEFAULT_WIDTH)) .replace("<<CHART_DEFAULT_HEIGHT>>", str(CHART_DEFAULT_HEIGHT)) .replace("<<CHART_SCALE_FACTOR>>", str(CHART_SCALE_FACTOR)) .replace("<<CHART_PADDING>>", str(CHART_PADDING)) .replace("<<AVAILABLE_ASPECT_MAP>>", aspect_map_json) ) # Initialize on first load, will be updated dynamically in filter.inlet() formatted_loading_state_js = get_formatted_loading_state_js() ensure_loader_js("visualizations_loading_state", formatted_loading_state_js) # ================================================================ # FILTER # ================================================================ VISUALIZATIONS_INTRO = ( """**This message is knowledge automatically added by the system.**""" ) VISUALIZATIONS_OUTRO = """So to clarify no tool use or function calling is required to do this. Just type out the Markdown image directly as above. IMPORTANT: Always use the full URL form (e.g., `<<INSTRUCTION_BASE_URL>>/visualization/fancy-text.svg?pass=<<VISUALIZATION_PASS>>&text=...`) rather than relative URLs. All URLs must include the `pass` parameter for authentication. Do NOT wrap the markdown image in code blocks or other markdown formatting. The image should be rendered and displayed.""" provider_names: list[str] = [gen.generator_name for gen in all_image_generators] default_provider: str = provider_names[0] class Filter: class Valves(BaseModel): SELECTED_IMAGE_GENERATOR: str = Field( default=default_provider, description="Select the image generation provider to use.", json_schema_extra={"enum": provider_names}, ) FAL_API_TOKEN: str = Field(default="", description="Your fal.ai API token") REPLICATE_API_TOKEN: str = Field( default="", description="Your Replicate API token" ) OPENAI_API_TOKEN: str = Field(default="", description="Your OpenAI API token") def __init__(self): self.valves = self.Valves( SELECTED_IMAGE_GENERATOR=os.getenv("SELECTED_IMAGE_GENERATOR", ""), FAL_API_TOKEN=os.getenv("FAL_API_TOKEN", ""), REPLICATE_API_TOKEN=os.getenv("REPLICATE_API_TOKEN", ""), OPENAI_API_TOKEN=os.getenv("OPENAI_API_TOKEN", ""), ) def inlet(self, body: dict, __user__: dict | None = None) -> dict: selected_provider = self.valves.SELECTED_IMAGE_GENERATOR set_selected_image_generator_name(selected_provider) fal_api_token = self.valves.FAL_API_TOKEN set_fal_api_token(fal_api_token) replicate_api_token = self.valves.REPLICATE_API_TOKEN set_replicate_api_token(replicate_api_token) openai_api_token = self.valves.OPENAI_API_TOKEN set_openai_api_token(openai_api_token) # Update the JavaScript with current available aspect ratios formatted_loading_state_js = get_formatted_loading_state_js() ensure_loader_js("visualizations_loading_state", formatted_loading_state_js) # Create COMBINED_INSTRUCTION dynamically, only including enabled visualizations # Build instruction parts with tags instruction_parts = [] # Add intro section with tag instruction_parts.append( f"<visualizations_intro>\n{VISUALIZATIONS_INTRO.strip()}\n</visualizations_intro>" ) # Add each enabled visualization with its tag for viz in visualizations: if viz.is_enabled(): tag = viz.get_tag() instruction = viz.get_instruction().strip() instruction_parts.append( f"<visualization_{tag}>\n{instruction}\n</visualization_{tag}>" ) # Add outro section with tag instruction_parts.append( f"<visualizations_outro>\n{VISUALIZATIONS_OUTRO.strip()}\n</visualizations_outro>" ) # Combine all parts and replace placeholders COMBINED_INSTRUCTION = ( "\n\n".join(instruction_parts) .replace("<<INSTRUCTION_BASE_URL>>", INSTRUCTION_BASE_URL) .replace("<<VISUALIZATION_PASS>>", VISUALIZATION_PASS) ) messages = body.get("messages", []) instruction_message = {"role": "user", "content": COMBINED_INSTRUCTION} if messages and messages[0].get("role") == "system": messages.insert(1, instruction_message) else: messages.insert(0, instruction_message) return body
Sponsored by Open WebUI Inc.
We are hiring!
Shape the way humanity engages with
intelligence
.
1