From 965e537497084dd07c619fecaf8f7331f94205cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric?= Date: Fri, 2 Oct 2026 18:16:20 +0000 Subject: [PATCH] Stack docker-compose Roundcube 1.7.4 (nginx, php-fpm, MariaDB) avec skin vBlog.io Co-Authored-By: Claude Opus 5.5 (1M context) Claude-Session: https://claude.ai/code/session_01Sa4nUG3GtbdEaPS6fA8eq1 --- .env.example | 49 ++++++++++ .gitignore | 1 + README.md | 107 +++++++++++++++++++++ compose.yaml | 105 ++++++++++++++++++++ config/10-base.inc.php | 21 ++++ config/20-vblog.inc.php | 20 ++++ docs/apercu-boite.png | Bin 0 -> 57469 bytes docs/apercu-login.png | Bin 0 -> 26354 bytes nginx/templates/default.conf.template | 65 +++++++++++++ roundcube/Dockerfile | 52 ++++++++++ roundcube/zz-healthcheck.conf | 5 + scripts/sync-theme.sh | 19 ++++ theme/_styles.less | 75 +++++++++++++++ theme/_variables.less | 31 ++++++ theme/fonts/OFL-Poppins.txt | 93 ++++++++++++++++++ theme/fonts/poppins-latin-400-italic.woff2 | Bin 0 -> 8668 bytes theme/fonts/poppins-latin-400-normal.woff2 | Bin 0 -> 7884 bytes theme/fonts/poppins-latin-700-italic.woff2 | Bin 0 -> 8596 bytes theme/fonts/poppins-latin-700-normal.woff2 | Bin 0 -> 7816 bytes theme/images/vblog-logo-white.svg | 13 +++ theme/images/vblog-logo.svg | 13 +++ 21 files changed, 669 insertions(+) create mode 100644 .env.example create mode 100644 .gitignore create mode 100644 README.md create mode 100644 compose.yaml create mode 100644 config/10-base.inc.php create mode 100644 config/20-vblog.inc.php create mode 100644 docs/apercu-boite.png create mode 100644 docs/apercu-login.png create mode 100644 nginx/templates/default.conf.template create mode 100644 roundcube/Dockerfile create mode 100644 roundcube/zz-healthcheck.conf create mode 100644 scripts/sync-theme.sh create mode 100644 theme/_styles.less create mode 100644 theme/_variables.less create mode 100644 theme/fonts/OFL-Poppins.txt create mode 100644 theme/fonts/poppins-latin-400-italic.woff2 create mode 100644 theme/fonts/poppins-latin-400-normal.woff2 create mode 100644 theme/fonts/poppins-latin-700-italic.woff2 create mode 100644 theme/fonts/poppins-latin-700-normal.woff2 create mode 100644 theme/images/vblog-logo-white.svg create mode 100644 theme/images/vblog-logo.svg diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..78bde26 --- /dev/null +++ b/.env.example @@ -0,0 +1,49 @@ +# Copier en .env puis adapter : cp .env.example .env +# Pas de commentaire en fin de ligne : Compose peut l'intégrer à la valeur. + +COMPOSE_PROJECT_NAME=roundcube + +# --- Versions (images épinglées) --- +# Tag roundcube/roundcubemail:-fpm-alpine +RC_VERSION=1.7.4 +# MariaDB LTS / nginx branche stable +MARIADB_VERSION=11.8 +NGINX_VERSION=1.30-alpine + +# --- Exposition HTTP (prévue derrière un reverse proxy TLS) --- +# 0.0.0.0 pour écouter sur toutes les interfaces +HTTP_BIND=127.0.0.1 +HTTP_PORT=8080 + +# --- Base de données --- +# Générer avec : openssl rand -base64 24 +DB_NAME=roundcubemail +DB_USER=roundcube +DB_PASSWORD=change-me +DB_ROOT_PASSWORD=change-me + +# --- Clé de chiffrement Roundcube (des_key) --- +# 24 caractères exactement ; ne plus la changer ensuite. openssl rand -base64 18 +RC_DES_KEY=change-me-24-characters! + +# --- Serveurs de messagerie --- +# Préfixes : ssl:// (TLS implicite, 993/465), tls:// (STARTTLS, 143/587), aucun = clair +IMAP_HOST=ssl://mail.example.org +IMAP_PORT=993 +SMTP_HOST=tls://mail.example.org +SMTP_PORT=587 +# Domaine ajouté aux identifiants sans @ (ex. example.org), vide = aucun +USERNAME_DOMAIN= + +# --- Plugins --- +# Plugins fournis avec Roundcube, à activer +RC_PLUGINS=archive,zipdownload,managesieve,markasjunk +# Paquets composer installés au démarrage (ex. johndoh/contextmenu), à activer aussi dans RC_PLUGINS +RC_COMPOSER_PLUGINS= + +# --- Divers --- +# Taille max des pièces jointes : PHP (upload/post) et nginx (client_max_body_size) +UPLOAD_MAX_FILESIZE=25M +# Dictionnaires aspell intégrés à l'image (build), séparés par des espaces +ASPELL_DICTS=fr en +TZ=Europe/Paris diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c49bd7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.env diff --git a/README.md b/README.md new file mode 100644 index 0000000..a1b3901 --- /dev/null +++ b/README.md @@ -0,0 +1,107 @@ +# Roundcube Webmail en docker-compose + +Stack Roundcube **1.7.4** prête à l'emploi : nginx + php-fpm + MariaDB, skin Elastic recompilé avec la charte vBlog.io (surcharges LESS dans `theme/`). + +``` + :8080 (127.0.0.1 par défaut, derrière un reverse proxy TLS) + │ + ┌─────────────▼─────────────┐ réseau frontend (sortie IMAP/SMTP) + │ nginx 1.30-alpine │ sert le statique depuis le volume www (ro) + └─────────────┬─────────────┘ + │ FastCGI :9000 + ┌─────────────▼─────────────┐ + │ roundcube (php-fpm 8.4) │ image locale = roundcube/roundcubemail:1.7.4-fpm-alpine + │ │ + skin Elastic recompilé + aspell + mailcap + └─────────────┬─────────────┘ + │ réseau backend (internal: pas d'accès sortant) + ┌─────────────▼─────────────┐ + │ mariadb 11.8 (LTS) │ + └───────────────────────────┘ +``` + +![Login](docs/apercu-login.png) + +## Démarrage + +```sh +cp .env.example .env # renseigner mots de passe, RC_DES_KEY (24 car.), IMAP/SMTP +docker compose up -d --build +docker compose ps # les 3 services doivent passer "healthy" +``` + +Puis `http://127.0.0.1:8080/`. Le premier démarrage copie les sources dans le volume `www` et crée le schéma SQL (`bin/initdb.sh`), compter ~30 s. + +## Arborescence + +| Chemin | Rôle | +|---|---| +| `compose.yaml` | Les 3 services, volumes, réseaux, healthchecks | +| `.env.example` | Toutes les variables (versions, BDD, IMAP/SMTP, plugins...) | +| `roundcube/Dockerfile` | Build multi-étage : compilation LESS (node) puis image finale | +| `roundcube/zz-healthcheck.conf` | `ping.path` php-fpm pour le healthcheck | +| `nginx/templates/default.conf.template` | vhost, rendu par l'entrypoint nginx (envsubst `NGINX_*`) | +| `config/*.php` | Config Roundcube additionnelle, montée sur `/var/roundcube/config` | +| `theme/` | Surcharges du skin Elastic (`_variables.less`, `_styles.less`, `fonts/`, `images/`) | +| `scripts/sync-theme.sh` | Réimporte une customisation (défaut `../roundcube-custom/vblog`) | + +## Choix techniques + +- **Image officielle `fpm-alpine`** ([roundcube/roundcubemail-docker](https://github.com/roundcube/roundcubemail-docker)) : son entrypoint génère `config.docker.inc.php` depuis les `ROUNDCUBEMAIL_*`, inclut `/var/roundcube/config/*.php`, initialise/migre la base. Pas de réimplémentation. +- **Volume `www` partagé** (rw côté Roundcube, ro côté nginx) : pattern documenté upstream pour la variante FPM. À chaque démarrage, l'entrypoint resynchronise `/usr/src/roundcubemail` vers le volume (`bin/installto.sh`) : une image reconstruite (version ou thème) est donc propagée au simple `up -d`. +- **nginx** : depuis 1.7, seul `public_html/` est le docroot et les ressources sont appelées en `/static.php/`. Le vhost les sert directement depuis le volume (préfixes et extensions alignés sur `ALLOWED_PATHS`/`SUPPORTED_TYPES` de `static.php`, cache 30 j, les URL portent `?s=`). Seuls `index.php` et `static.php` atteignent PHP ; `installer.php` et le reste renvoient 404. +- **Thème compilé au build** : Elastic est livré en CSS minifié ; `_variables.less`/`_styles.less` ne sont pris en compte qu'à la compilation (`@import (optional)` dans `styles/variables.less` et `styles/styles.less`). Un étage `node:22-alpine` recompile `styles`, `print` et `embed` avec `lessc` (même commande que `skins/elastic/Makefile`). Aucune dépendance Node dans l'image finale. +- **Dictionnaires aspell et `mailcap` intégrés au build** plutôt qu'installés à chaque démarrage (`ROUNDCUBEMAIL_ASPELL_DICTS` fait un `apk add` au runtime). `mailcap` fournit `/etc/mime.types`, absent de l'image upstream (sinon warning « Mimetype to file extension mapping doesn't work properly »). +- **`des_key` imposée par `.env`** : sinon l'entrypoint la génère aléatoirement dans `config.inc.php`, perdue si le volume `www` est recréé. +- **Healthchecks** : MariaDB `healthcheck.sh --connect --innodb_initialized` ; Roundcube : port FPM 9000 ; nginx : `GET /fpm-ping` relayé à php-fpm (chaîne nginx → FPM validée, URL limitée à 127.0.0.1). Ordre de démarrage piloté par `depends_on: condition: service_healthy`. +- **Réseau `backend` en `internal: true`** : MariaDB n'a ni port publié ni accès sortant. + +## Thème vBlog.io + +Les fichiers de `theme/` et `config/20-vblog.inc.php` sont une copie de `roundcube-custom/vblog/`. Pour resynchroniser après modification : + +```sh +sh scripts/sync-theme.sh [dossier_source] +docker compose up -d --build +``` + +Pour revenir à l'Elastic d'origine : vider `theme/`, supprimer `config/20-vblog.inc.php`, rebuild. + +## Configuration + +- **Variables** : voir `.env.example` (commentaires sur leur propre ligne : Compose peut intégrer un commentaire de fin de ligne à la valeur). +- **Options Roundcube** : déposer des `*.php` dans `config/` (inclus par ordre alphabétique), puis `docker compose restart roundcube`. Référence : `config/defaults.inc.php` dans le conteneur. `config/10-base.inc.php` fixe langue, `proxy_whitelist`, durée de session, rate-limit de login. +- **Plugins** : intégrés → `RC_PLUGINS` ; tiers → `RC_COMPOSER_PLUGINS` (installés par composer au démarrage, nécessite l'accès à packagist) + ajout dans `RC_PLUGINS`. +- **Taille des pièces jointes** : `UPLOAD_MAX_FILESIZE` applique la même limite à PHP et nginx. Le message encodé en base64 pèse ~1,37× la pièce jointe. + +## Reverse proxy TLS + +La stack écoute en HTTP sur `127.0.0.1:8080`. Le proxy frontal (Traefik, HAProxy, nginx...) doit transmettre `X-Forwarded-For` et `X-Forwarded-Proto: https`. Restreindre `proxy_whitelist` (`config/10-base.inc.php`) à l'IP du proxy en production. Si Roundcube est publié sous un sous-chemin, régler `ROUNDCUBEMAIL_REQUEST_PATH`. + +## Exploitation + +```sh +docker compose logs -f roundcube # logs Roundcube et php-fpm (log_driver = stdout) + +# Sauvegarde : base + volume enigma si le plugin est utilisé +docker compose exec -T mariadb sh -c 'mariadb-dump -uroot -p"$MARIADB_ROOT_PASSWORD" --single-transaction "$MARIADB_DATABASE"' > roundcube-$(date +%F).sql +``` + +**Mise à jour Roundcube** : modifier `RC_VERSION` dans `.env` puis `docker compose up -d --build`. L'entrypoint exécute `installto.sh` puis `initdb.sh --update` (migrations SQL). Sauvegarder la base avant. + +**Proxy TLS d'entreprise pendant le build** (npm, apk) : fournir sa CA en secret BuildKit, optionnel : + +```sh +docker build -f roundcube/Dockerfile --secret id=ca,src=/chemin/ca.pem -t local/roundcube:1.7.4 . +docker compose up -d --no-build +``` + +## Validation effectuée + +Stack construite et démarrée avec Docker 29.6 / Compose 5.3 : 3 services `healthy`, schéma SQL créé, login IMAP réussi contre un Dovecot 2.4.5 de test (utilisateur enregistré en base), charte vBlog appliquée (captures `docs/`), `installer.php` et `static.php/config/...` en 404, statique servi par nginx avec cache. Non testé dans l'environnement de validation (dépôt Alpine bloqué) : l'étape `apk add` des dictionnaires/mailcap, et l'envoi SMTP. + +## Sources + +- Image et entrypoint : https://github.com/roundcube/roundcubemail-docker et https://hub.docker.com/r/roundcube/roundcubemail +- Options de config : https://github.com/roundcube/roundcubemail/blob/master/config/defaults.inc.php +- Skin Elastic, points d'extension LESS : https://github.com/roundcube/roundcubemail/tree/master/skins/elastic +- Image nginx (templates envsubst) : https://hub.docker.com/_/nginx ; image MariaDB (`healthcheck.sh`) : https://hub.docker.com/_/mariadb diff --git a/compose.yaml b/compose.yaml new file mode 100644 index 0000000..16faa01 --- /dev/null +++ b/compose.yaml @@ -0,0 +1,105 @@ +name: ${COMPOSE_PROJECT_NAME:-roundcube} + +# Roundcube Webmail : nginx (frontal) -> php-fpm (Roundcube) -> MariaDB +# Variables : voir .env.example + +services: + mariadb: + image: mariadb:${MARIADB_VERSION:-11.8} + restart: unless-stopped + command: + - --character-set-server=utf8mb4 + - --collation-server=utf8mb4_unicode_ci + environment: + MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD:?DB_ROOT_PASSWORD manquant dans .env} + MARIADB_DATABASE: ${DB_NAME:-roundcubemail} + MARIADB_USER: ${DB_USER:-roundcube} + MARIADB_PASSWORD: ${DB_PASSWORD:?DB_PASSWORD manquant dans .env} + MARIADB_AUTO_UPGRADE: "1" + volumes: + - db:/var/lib/mysql + networks: [backend] + healthcheck: + test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] + interval: 10s + timeout: 5s + retries: 10 + start_period: 30s + + roundcube: + build: + context: . + dockerfile: roundcube/Dockerfile + args: + RC_VERSION: ${RC_VERSION:-1.7.4} + ASPELL_DICTS: ${ASPELL_DICTS:-fr en} + image: ${RC_IMAGE:-local/roundcube}:${RC_VERSION:-1.7.4} + restart: unless-stopped + depends_on: + mariadb: + condition: service_healthy + environment: + ROUNDCUBEMAIL_DB_TYPE: mysql + ROUNDCUBEMAIL_DB_HOST: mariadb + ROUNDCUBEMAIL_DB_PORT: 3306 + ROUNDCUBEMAIL_DB_NAME: ${DB_NAME:-roundcubemail} + ROUNDCUBEMAIL_DB_USER: ${DB_USER:-roundcube} + ROUNDCUBEMAIL_DB_PASSWORD: ${DB_PASSWORD} + ROUNDCUBEMAIL_DES_KEY: ${RC_DES_KEY:?RC_DES_KEY manquant dans .env (24 caractères)} + ROUNDCUBEMAIL_DEFAULT_HOST: ${IMAP_HOST:?IMAP_HOST manquant dans .env} + ROUNDCUBEMAIL_DEFAULT_PORT: ${IMAP_PORT:-993} + ROUNDCUBEMAIL_SMTP_SERVER: ${SMTP_HOST:?SMTP_HOST manquant dans .env} + ROUNDCUBEMAIL_SMTP_PORT: ${SMTP_PORT:-587} + ROUNDCUBEMAIL_USERNAME_DOMAIN: ${USERNAME_DOMAIN:-} + ROUNDCUBEMAIL_PLUGINS: ${RC_PLUGINS:-archive,zipdownload,managesieve,markasjunk} + ROUNDCUBEMAIL_COMPOSER_PLUGINS: ${RC_COMPOSER_PLUGINS:-} + ROUNDCUBEMAIL_SKIN: elastic + ROUNDCUBEMAIL_UPLOAD_MAX_FILESIZE: ${UPLOAD_MAX_FILESIZE:-25M} + TZ: ${TZ:-Europe/Paris} + volumes: + - www:/var/www/html # sources Roundcube (partagées avec nginx) + - ./config:/var/roundcube/config:ro # surcharges PHP (*.php inclus dans l'ordre alpha) + - temp:/tmp/roundcube-temp + - enigma:/var/roundcube/enigma # clés OpenPGP si plugin enigma + networks: [backend, frontend] # frontend = sortie vers IMAP/SMTP + healthcheck: + test: ["CMD", "php", "-r", "exit(@fsockopen('127.0.0.1', 9000) ? 0 : 1);"] + interval: 10s + timeout: 5s + retries: 6 + start_period: 120s # 1er démarrage : copie des sources + initdb + + nginx: + image: nginx:${NGINX_VERSION:-1.30-alpine} + restart: unless-stopped + depends_on: + roundcube: + condition: service_healthy + environment: + NGINX_PHP_FPM: roundcube:9000 + NGINX_CLIENT_MAX_BODY_SIZE: ${UPLOAD_MAX_FILESIZE:-25M} + NGINX_ENVSUBST_FILTER: ^NGINX_ # n'interpole que nos variables + TZ: ${TZ:-Europe/Paris} + volumes: + - www:/var/www/html:ro + - ./nginx/templates:/etc/nginx/templates:ro + ports: + - "${HTTP_BIND:-127.0.0.1}:${HTTP_PORT:-8080}:80" + networks: [frontend] + healthcheck: + test: ["CMD-SHELL", "wget -q -O - http://127.0.0.1/fpm-ping | grep -q pong"] + interval: 15s + timeout: 5s + retries: 3 + start_period: 10s + +volumes: + db: + www: + temp: + enigma: + +networks: + backend: + internal: true # MariaDB sans accès sortant ni exposition + frontend: diff --git a/config/10-base.inc.php b/config/10-base.inc.php new file mode 100644 index 0000000..cc008c7 --- /dev/null +++ b/config/10-base.inc.php @@ -0,0 +1,21 @@ + ['verify_peer' => false, 'verify_peer_name' => false]]; +// $config['smtp_conn_options'] = ['ssl' => ['verify_peer' => false, 'verify_peer_name' => false]]; diff --git a/config/20-vblog.inc.php b/config/20-vblog.inc.php new file mode 100644 index 0000000..d698f69 --- /dev/null +++ b/config/20-vblog.inc.php @@ -0,0 +1,20 @@ + '/images/vblog-logo.svg', + 'elastic:login[dark]' => '/images/vblog-logo-white.svg', + 'elastic:*' => '/images/vblog-logo-white.svg', + 'elastic:*[dark]' => '/images/vblog-logo-white.svg', + 'elastic:*[link]' => 'https://vblog.io', +]; + +// Lien "Aide" vers le blog (optionnel) +// $config['support_url'] = 'https://vblog.io'; diff --git a/docs/apercu-boite.png b/docs/apercu-boite.png new file mode 100644 index 0000000000000000000000000000000000000000..ec8e442ba789f62e7f71358c39cb56c9b4aa77c9 GIT binary patch literal 57469 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�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%0AV6doq=-{-y)~PKl1A%&{dZ>JK6Q?mYRNL>aymQ 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 literal 0 HcmV?d00001 diff --git a/docs/apercu-login.png b/docs/apercu-login.png new file mode 100644 index 0000000000000000000000000000000000000000..a3d6a2de44eacf19f1b5584edcf1f073926cffd5 GIT binary patch literal 26354 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 GLK6Uw=|v3y literal 0 HcmV?d00001 diff --git a/nginx/templates/default.conf.template b/nginx/templates/default.conf.template new file mode 100644 index 0000000..8ad2f46 --- /dev/null +++ b/nginx/templates/default.conf.template @@ -0,0 +1,65 @@ +# Roundcube 1.7 : seul public_html/ est exposé (index.php, static.php). +# Les ressources statiques sont référencées en /static.php/ ; nginx les +# sert directement depuis le volume partagé et ne délègue à PHP que le reste. + +upstream roundcube_fpm { + server ${NGINX_PHP_FPM}; +} + +server { + listen 80 default_server; + server_name _; + + root /var/www/html/public_html; + index index.php; + + client_max_body_size ${NGINX_CLIENT_MAX_BODY_SIZE}; + server_tokens off; + + add_header X-Content-Type-Options "nosniff" always; + add_header Referrer-Policy "same-origin" always; + + # Statique servi par nginx (même liste de préfixes que ALLOWED_PATHS de static.php) + location ~ ^/static\.php/((?:skins|plugins|program/js|program/resources)/.+\.(?:css|js|map|png|gif|jpe?g|svg|ico|webp|avif|woff2?|ttf|eot|html|json))$ { + alias /var/www/html/$1; + expires 30d; + add_header X-Content-Type-Options "nosniff" always; + access_log off; + } + + location = /favicon.ico { + alias /var/www/html/skins/elastic/images/favicon.ico; + access_log off; + } + + # Points d'entrée PHP autorisés (installer.php volontairement exclu) + location ~ ^/(?:index|static)\.php(?:/|$) { + fastcgi_split_path_info ^(.+?\.php)(/.*)$; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_param HTTP_PROXY ""; + fastcgi_pass roundcube_fpm; + fastcgi_read_timeout 300s; + } + + # Healthcheck : ping du pool php-fpm, local uniquement + location = /fpm-ping { + allow 127.0.0.1; + deny all; + access_log off; + include fastcgi_params; + fastcgi_param SCRIPT_NAME /fpm-ping; + fastcgi_param SCRIPT_FILENAME /fpm-ping; + fastcgi_pass roundcube_fpm; + } + + location = / { + rewrite ^ /index.php last; + } + + # Tout le reste (installer.php, fichiers cachés...) : refusé + location / { + return 404; + } +} diff --git a/roundcube/Dockerfile b/roundcube/Dockerfile new file mode 100644 index 0000000..9f7b995 --- /dev/null +++ b/roundcube/Dockerfile @@ -0,0 +1,52 @@ +# syntax=docker/dockerfile:1 +# Image Roundcube (php-fpm) + skin Elastic recompilé avec les surcharges de theme/ +# +# Le skin Elastic est livré compilé (styles.min.css). Ses points d'extension +# _variables.less / _styles.less ne sont pris en compte qu'à la compilation LESS : +# on recompile donc ici, dans un étage Node jetable, puis on recopie le skin +# dans /usr/src/roundcubemail (source que l'entrypoint synchronise vers /var/www/html). + +ARG RC_VERSION=1.7.4 + +FROM roundcube/roundcubemail:${RC_VERSION}-fpm-alpine AS upstream + +# --- Étage 1 : compilation LESS du skin Elastic --- +FROM node:22-alpine AS theme +ARG LESS_VERSION=4.9.1 +ARG LESS_CLEANCSS_VERSION=1.6.0 +# Secret optionnel "ca" : CA d'un proxy TLS d'entreprise (docker build --secret id=ca,src=ca.pem) +RUN --mount=type=secret,id=ca,required=false \ + NODE_EXTRA_CA_CERTS=/run/secrets/ca npm install -g --no-fund --no-audit \ + less@${LESS_VERSION} less-plugin-clean-css@${LESS_CLEANCSS_VERSION} + +COPY --from=upstream /usr/src/roundcubemail/skins/elastic /build/elastic +COPY theme/ /build/theme/ + +WORKDIR /build/elastic +# Surcharges optionnelles : un theme/ vide redonne l'Elastic d'origine +RUN set -eu; \ + for f in _variables.less _styles.less; do \ + if [ -f /build/theme/$f ]; then cp /build/theme/$f styles/; echo "surcharge: $f"; fi; \ + done; \ + if [ -d /build/theme/fonts ]; then cp -r /build/theme/fonts/. fonts/; fi; \ + if [ -d /build/theme/images ]; then cp -r /build/theme/images/. images/; fi; \ + for css in styles print embed; do \ + lessc --clean-css="--s1 --advanced" styles/$css.less > styles/$css.min.css; \ + done; \ + ls -l styles/*.min.css + +# --- Étage 2 : image finale --- +FROM upstream +ARG ASPELL_DICTS="fr en" +# Dictionnaires installés au build (plutôt qu'à chaque démarrage via ROUNDCUBEMAIL_ASPELL_DICTS) +# mailcap fournit /etc/mime.types, utilisé par Roundcube pour le mapping type MIME <-> extension +RUN --mount=type=secret,id=ca,required=false \ + set -eu; \ + if [ -s /run/secrets/ca ]; then export SSL_CERT_FILE=/run/secrets/ca; fi; \ + pkgs="mailcap"; \ + for d in $(echo "$ASPELL_DICTS" | tr ',' ' '); do pkgs="$pkgs aspell-$d"; done; \ + apk add --no-cache $pkgs +COPY --from=theme /build/elastic/ /usr/src/roundcubemail/skins/elastic/ + +# Healthcheck php-fpm : réponse au ping FastCGI via le pool +COPY roundcube/zz-healthcheck.conf /usr/local/etc/php-fpm.d/zz-healthcheck.conf diff --git a/roundcube/zz-healthcheck.conf b/roundcube/zz-healthcheck.conf new file mode 100644 index 0000000..977c59e --- /dev/null +++ b/roundcube/zz-healthcheck.conf @@ -0,0 +1,5 @@ +; Expose /fpm-ping sur le pool www, interrogé par nginx (healthcheck de bout en bout) +[www] +ping.path = /fpm-ping +ping.response = pong +access.suppress_path[] = /fpm-ping diff --git a/scripts/sync-theme.sh b/scripts/sync-theme.sh new file mode 100644 index 0000000..58099c5 --- /dev/null +++ b/scripts/sync-theme.sh @@ -0,0 +1,19 @@ +#!/bin/sh +# Importe une customisation Elastic (format roundcube-custom/vblog) dans theme/ et config/ +# Usage : scripts/sync-theme.sh [dossier_source] (défaut : ../roundcube-custom/vblog) +set -eu +cd "$(dirname "$0")/.." +SRC=${1:-../roundcube-custom/vblog} +[ -d "$SRC" ] || { echo "Source introuvable : $SRC" >&2; exit 1; } + +rm -rf theme && mkdir -p theme +for f in _variables.less _styles.less; do + if [ -f "$SRC/$f" ]; then cp "$SRC/$f" theme/; fi +done +for d in fonts images; do + if [ -d "$SRC/$d" ]; then cp -r "$SRC/$d" theme/; fi +done +if [ -f "$SRC/config-vblog.inc.php" ]; then + cp "$SRC/config-vblog.inc.php" config/20-vblog.inc.php +fi +echo "Thème importé depuis $SRC. Appliquer : docker compose up -d --build" diff --git a/theme/_styles.less b/theme/_styles.less new file mode 100644 index 0000000..9fc9797 --- /dev/null +++ b/theme/_styles.less @@ -0,0 +1,75 @@ +// Compléments CSS charte vBlog.io pour le skin Elastic (Roundcube) +// Emplacement : skins/elastic/styles/_styles.less + +// --- Police Poppins auto-hébergée (pas d'appel à Google Fonts) --- +// Fichiers à copier dans skins/elastic/fonts/ (source : paquet npm @fontsource/poppins, licence OFL) +@font-face { + font-family: 'Poppins'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url('../fonts/poppins-latin-400-normal.woff2') format('woff2'); +} +@font-face { + font-family: 'Poppins'; + font-style: italic; + font-weight: 400; + font-display: swap; + src: url('../fonts/poppins-latin-400-italic.woff2') format('woff2'); +} +@font-face { + font-family: 'Poppins'; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url('../fonts/poppins-latin-700-normal.woff2') format('woff2'); +} +@font-face { + font-family: 'Poppins'; + font-style: italic; + font-weight: 700; + font-display: swap; + src: url('../fonts/poppins-latin-700-italic.woff2') format('woff2'); +} + +body, button, input, optgroup, select, textarea, .popover { + font-family: Poppins, Roboto, sans-serif; +} + +// --- Bouton principal de la page de login en orange (CTA du blog) --- +#login-form .btn-primary { + background-color: @vblog-accent; + border-color: @vblog-accent; + + &:hover, &:focus { + background-color: darken(@vblog-accent, 8%); + border-color: darken(@vblog-accent, 8%); + } +} + +// --- Mode sombre : liens lisibles sur fond sombre, bouton "Écrire" en orange --- +// :where() ramène la spécificité à celle de la règle de base "a { color: @color-link }" +// de global.less : seuls les liens "nus" changent, pas les listes ni les boutons. +:where(html.dark-mode) a { + color: lighten(@vblog-primary, 40%); + + &:hover { + color: lighten(@vblog-primary, 50%); + } +} + +html.dark-mode { + #taskmenu .action-buttons a { + color: @vblog-accent; + } + + // Elastic assombrit le logo en mode sombre (opacity .8) : on le laisse net + #logo { + opacity: 1; + } +} + +// --- Logo du menu latéral : l'emblème est presque carré, on lui laisse de l'air --- +#layout-menu .popover-header img { + padding: .6rem; +} diff --git a/theme/_variables.less b/theme/_variables.less new file mode 100644 index 0000000..3b052aa --- /dev/null +++ b/theme/_variables.less @@ -0,0 +1,31 @@ +// Charte vBlog.io pour le skin Elastic (Roundcube) +// Emplacement : skins/elastic/styles/_variables.less +// Source des couleurs : kit Elementor de vblog.io +// https://vblog.io/wp-content/uploads/elementor/css/post-6.css (.elementor-kit-6) +// primary #314977 · secondary #000000 · text #7A7A7A · accent #FF7B10 · police Poppins + +@vblog-primary: #314977; // bleu marine +@vblog-accent: #FF7B10; // orange + +// --- Couleur principale (boutons, sélection, focus, cases à cocher, quota...) --- +@color-main: @vblog-primary; +@color-link: @vblog-primary; +@color-link-hover: darken(@color-link, 12%); + +// --- Menu latéral gauche : fond marine, action "Écrire" en orange --- +@color-taskmenu-background: @vblog-primary; +@color-taskmenu-button-selected-background: darken(@vblog-primary, 8%); +@color-taskmenu-button-background-hover: darken(@vblog-primary, 8%); +@color-taskmenu-button-action: @vblog-accent; +@color-taskmenu-button-action-hover: lighten(@vblog-accent, 10%); + +// --- Accent orange sur les badges des messages récents --- +@color-list-recent-badge-background: @vblog-accent; +@color-list-badge-background: @vblog-primary; + +// --- Mode sombre : le marine est trop sombre sur fond sombre, on l'éclaircit --- +@color-dark-list-selected: lighten(@vblog-primary, 40%); +@color-dark-input-border-focus: lighten(@vblog-primary, 30%); +@color-dark-information: @vblog-primary; +@color-dark-scrollbar-thumb: lighten(@vblog-primary, 10%); +@color-dark-blockquote-0: lighten(@vblog-primary, 35%); diff --git a/theme/fonts/OFL-Poppins.txt b/theme/fonts/OFL-Poppins.txt new file mode 100644 index 0000000..3c49f41 --- /dev/null +++ b/theme/fonts/OFL-Poppins.txt @@ -0,0 +1,93 @@ +Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-ThinItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-ExtraLight.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-ExtraLightItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-Light.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-LightItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-Regular.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-Italic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-Medium.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-MediumItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-SemiBold.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-SemiBoldItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-Bold.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-BoldItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-ExtraBold.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-ExtraBoldItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-Black.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) Poppins-BlackItalic.ttf: Copyright 2020 The Poppins Project Authors (https://github.com/itfoundry/Poppins) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/theme/fonts/poppins-latin-400-italic.woff2 b/theme/fonts/poppins-latin-400-italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..11123368e5c09220c0acdb440593cf92548eac5d GIT binary patch literal 8668 zcmV<2AtT;*Pew8T0RR9103qA}3;+NC07OIp03nG00RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/theme/fonts/poppins-latin-700-italic.woff2 b/theme/fonts/poppins-latin-700-italic.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..70974d82d26ad116b3c7c9136f9932a034181ea5 GIT binary patch literal 8596 zcmV;FA#2`uPew8T0RR9103nnB3;+NC07F;+03kpC0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/theme/fonts/poppins-latin-700-normal.woff2 b/theme/fonts/poppins-latin-700-normal.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..bf022fc77e764ee16a6d45fae8ed5016110ca2fc GIT binary patch literal 7816 zcmV;39(Un)Pew8T0RR9103L_{3;+NC06tIv03I{|0RR9100000000000000000000 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 a#rF!vrZP-gD&O<}^};ukMx!zS00029z2{T_ literal 0 HcmV?d00001 diff --git a/theme/images/vblog-logo-white.svg b/theme/images/vblog-logo-white.svg new file mode 100644 index 0000000..a7790d1 --- /dev/null +++ b/theme/images/vblog-logo-white.svg @@ -0,0 +1,13 @@ + +AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTpkYTI3NDZjNi1mNzFiLTRmYTktODExZS05M2NkYWY4NjhhNzQAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaA91XmY9vYc/lQWs5mc/nSgAAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDo5NDg4N2FjYy0zZWRlLTRkNTEtYjEwNC1jNzI4ODJlYzJjODVscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNo0cSopkBTFmCEdCRaDm4D2QAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFggHLDHh6IB6u0VT/kooPSrah5drQE82Y5rJoe/qvpz5TqkZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaMasuQR/8QV+DkHEEuN8x9AAAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRNAAAAAAAAAAAAAAAAAGRoYXNoWCAT0buA0oWePCeILrY7wuF+ctrG5lgvGRcyRirNXcHZLGRuYW1lbmp1bWJmIG1hbmlmZXN0amV4Y2x1c2lvbnOBomVzdGFydBjNZmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOmRhMjc0NmM2LWY3MWItNGZhOS04MTFlLTkzY2RhZjg2OGE3NC9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOmYwZWJlY2QzLWY1ZWItNGU1OS1hYzAwLWMyYWQ1OTM4MzAxZXJjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCAcsMeHogHq7RVP+Sig9KtqHl2tATzZjmsmh7+q+nPlOqJjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFggANyWZH5B4dxS/hb406toS2r01DxDX6NJMAeOnX/BNKeiY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFggmc3m2Mzqiz5Id6nTzYaBsHtDc0/mJtVh/TILchty2U90Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQG/ItNK4qa/jOO1TsdhbZG15OJxWuALP6h98NAXAYU/cseE7va6a4qIxjlo4kDLeSCGKoPAqw1Pa3A89GxJqwkI= + + + + + + + \ No newline at end of file diff --git a/theme/images/vblog-logo.svg b/theme/images/vblog-logo.svg new file mode 100644 index 0000000..0cc08fe --- /dev/null +++ b/theme/images/vblog-logo.svg @@ -0,0 +1,13 @@ + +AAAWgmp1bWIAAAAeanVtZGMycGEAEQAQgAAAqgA4m3EDYzJwYQAAABZcanVtYgAAAEdqdW1kYzJtYQARABCAAACqADibcQN1cm46YzJwYTpmYTA2ZmM0My0yMGFkLTRmYzMtOTc4Zi00NDdmNWE1ZDNiNmEAAAADl2p1bWIAAAApanVtZGMyYXMAEQAQgAAAqgA4m3EDYzJwYS5hc3NlcnRpb25zAAAAALxqdW1iAAAARGp1bWRjYm9yABEAEIAAAKoAOJtxE2MycGEuaW5ncmVkaWVudC52MwAAAAAYYzJzaFN7GjaL+DvcZ7qDIvssT+QAAABwY2JvcqNpZGM6Zm9ybWF0bWltYWdlL3N2Zyt4bWxqaW5zdGFuY2VJRHgseG1wOmlpZDoyMTQxNjZhMS01OWQ5LTQ1MTAtYjdlNi1mNjc1NjM0YjNiYjhscmVsYXRpb25zaGlwaHBhcmVudE9mAAAB4mp1bWIAAABBanVtZGNib3IAEQAQgAAAqgA4m3ETYzJwYS5hY3Rpb25zLnYyAAAAABhjMnNotc0ool/uwYHS0xMCXfhROQAAAZljYm9yomdhY3Rpb25zgqJmYWN0aW9ua2MycGEub3BlbmVkanBhcmFtZXRlcnOha2luZ3JlZGllbnRzgaJjdXJseC1zZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmluZ3JlZGllbnQudjNkaGFzaFgg0gLQY2DQpyuLaKHGYmxL9pIGWRXgVZQndUlPC3BBZ/GkZmFjdGlvbngdY29tLmFudGhyb3BpYy5jbGF1ZGUucHJvdmlkZWRqcGFyYW1ldGVyc6F4H2NvbS5hbnRocm9waWMub3JpZ2luLWNvbmZpZGVuY2VndW5rbm93bmtkZXNjcmlwdGlvbnhmQ2xhdWRlIHByb3ZpZGVkIHRoaXMgZmlsZSBhdCB0aGUgcmVxdWVzdCBvZiBhIHVzZXIgYW5kIG1heSBoYXZlIGNyZWF0ZWQgb3IgbW9kaWZpZWQgdGhlIGZpbGUgY29udGVudHMubXNvZnR3YXJlQWdlbnShZG5hbWVmQ2xhdWRlcmFsbEFjdGlvbnNJbmNsdWRlZPUAAADIanVtYgAAAEBqdW1kY2JvcgARABCAAACqADibcRNjMnBhLmhhc2guZGF0YQAAAAAYYzJzaCHV0xW1SMJqd+3ehqhKsZUAAACAY2JvcqVjYWxnZnNoYTI1NmNwYWRNAAAAAAAAAAAAAAAAAGRoYXNoWCCef7I8bNY42SEO0ST7/4olLBw27oaPO19GdQejLNz5HWRuYW1lbmp1bWJmIG1hbmlmZXN0amV4Y2x1c2lvbnOBomVzdGFydBjNZmxlbmd0aBkeBAAAAj5qdW1iAAAAJ2p1bWRjMmNsABEAEIAAAKoAOJtxA2MycGEuY2xhaW0udjIAAAACD2Nib3KlY2FsZ2ZzaGEyNTZpc2lnbmF0dXJleE1zZWxmI2p1bWJmPS9jMnBhL3VybjpjMnBhOmZhMDZmYzQzLTIwYWQtNGZjMy05NzhmLTQ0N2Y1YTVkM2I2YS9jMnBhLnNpZ25hdHVyZWppbnN0YW5jZUlEeCx4bXA6aWlkOjI4ZGFhZTE0LWNiNDgtNDNhOC05M2NkLTZjYjliN2ZjZjhjY3JjcmVhdGVkX2Fzc2VydGlvbnODomN1cmx4LXNlbGYjanVtYmY9YzJwYS5hc3NlcnRpb25zL2MycGEuaW5ncmVkaWVudC52M2RoYXNoWCDSAtBjYNCnK4toocZibEv2kgZZFeBVlCd1SU8LcEFn8aJjdXJseCpzZWxmI2p1bWJmPWMycGEuYXNzZXJ0aW9ucy9jMnBhLmFjdGlvbnMudjJkaGFzaFgg7mshbHpJrugvO3izq6qTUyqOAO23FFoU7v69VayZMmOiY3VybHgpc2VsZiNqdW1iZj1jMnBhLmFzc2VydGlvbnMvYzJwYS5oYXNoLmRhdGFkaGFzaFggFBFyHyxF4DRsGQWlQaYvja1e/2VaVq3EX3/njPu9PpV0Y2xhaW1fZ2VuZXJhdG9yX2luZm+jZG5hbWVvQW50aHJvcGljIEZpbGVzZ3ZlcnNpb25lMS4wLjBrc3BlY1ZlcnNpb25lMi40LjAAABA4anVtYgAAAChqdW1kYzJjcwARABCAAACqADibcQNjMnBhLnNpZ25hdHVyZQAAABAIY2JvctKEWQISogEmGCFZAgowggIGMIIBjaADAgECAhRA5aAK7sI50L64g/oGQgU9Z1UTADAKBggqhkjOPQQDAzBJMRcwFQYDVQQKEw5BbnRocm9waWMsIFBCQzEuMCwGA1UEAxMlQW50aHJvcGljIENvbnRlbnQgQ3JlZGVudGlhbHMgUm9vdCBDQTAeFw0yNjA4MDcxODQzNTZaFw0yODA4MDYxOTQzNTZaMEQxFzAVBgNVBAoTDkFudGhyb3BpYywgUEJDMSkwJwYDVQQDEyBBbnRocm9waWMgQ2xhdWRlIENvbnRlbnQgU2lnbmluZzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJh6CmvLUBgFFNU0vUKlOVtE6djd17L5SuwX0LemFisBM3dkd/3cyjxFA3Qo5S46fX0/ihY0VZ7mfb9KF703t5OjWDBWMA4GA1UdDwEB/wQEAwIHgDAVBgNVHSUEDjAMBgorBgEEAYPoXgIBMAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUzlHiBIFOZFsj+OPEz5o+nMHXXMIwCgYIKoZIzj0EAwMDZwAwZAIwMXMdFJ4BetLLVY7ORuE9noqbbAZOZn/aArXyTwFAZfKrPzxF2vPoJNf1+UCdg1XGAjBwX1zd9WGqYkqmL5SFqw1QySjr1zJfpJM9+1rdDwSPLMOPOjKuiXjoU/pUUeG9RwmhY3BhZFkNngAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPZYQO/FLaxreCU8sCz3hCIpHvCog/3EMQ1B9bv18Iy3DhHvMqvObe196WwqVzIN7+bg5yRPTBGdX8D+FDTVGCglxYA= + + + + + + + \ No newline at end of file