From e2c439b161dbf078a5d122eb4ae4542996d47a29 Mon Sep 17 00:00:00 2001 From: jbergner Date: Sat, 5 Jul 2025 13:34:22 +0200 Subject: [PATCH] Content-Update simplex-messaging-service --- ...-swarm-mit-abweichendem-port-einrichten.md | 0 ...interne-docker-registrierung-abschalten.md | 0 ...it-prometheus-und-grafana-selber-hosten.md | 0 ...domain-policy-kann-nicht-gelesen-werden.md | 0 ...-cbc-auf-windows-server-2016-einspielen.md | 0 ...-die-betreffzeile-einer-e‑mail-gehoeren.md | 0 ...ofil-public-nicht-domainauthentifiziert.md | 0 articles/2025/07/simplex-messaging-service.md | 129 ++++++++++++++++++ .../0-einfuehrung.md | 0 ...-unternehmen-auf-offene-software-setzen.md | 0 ...lle-ist-open-source-wirklich-guenstiger.md | 0 ...-sicheres-und-regelkonformes-management.md | 0 ...ud-zeitalter-kubernetes-docker-und-mehr.md | 0 ...-und-risiken-der-open-source-sicherheit.md | 0 static/img/simplex-messaging-service.webp | Bin 0 -> 19750 bytes 15 files changed, 129 insertions(+) rename articles/2025/{ => 02}/docker-swarm-mit-abweichendem-port-einrichten.md (100%) rename articles/2025/{ => 02}/ssl-fuer-interne-docker-registrierung-abschalten.md (100%) rename articles/2025/{ => 03}/push-dienst-ntfy-mit-prometheus-und-grafana-selber-hosten.md (100%) rename articles/2025/{ => 05}/default-domain-policy-kann-nicht-gelesen-werden.md (100%) rename articles/2025/{ => 05}/tls-zertifikat-mit-sha3-256-cbc-auf-windows-server-2016-einspielen.md (100%) rename articles/2025/{ => 05}/warum-personenbezogene-daten-nie-in-die-betreffzeile-einer-e‑mail-gehoeren.md (100%) rename articles/2025/{ => 05}/windows-server-2025-adds-netzwerk-profil-public-nicht-domainauthentifiziert.md (100%) create mode 100644 articles/2025/07/simplex-messaging-service.md rename articles/{2025 => }/open-source-im-unternehmen/0-einfuehrung.md (100%) rename articles/{2025 => }/open-source-im-unternehmen/1-open-source-als-innovationsmotor-warum-unternehmen-auf-offene-software-setzen.md (100%) rename articles/{2025 => }/open-source-im-unternehmen/2-kosten-vs-kontrolle-ist-open-source-wirklich-guenstiger.md (100%) rename articles/{2025 => }/open-source-im-unternehmen/3-strategien-fuer-sicheres-und-regelkonformes-management.md (100%) rename articles/{2025 => }/open-source-im-unternehmen/4-open-source-im-cloud-zeitalter-kubernetes-docker-und-mehr.md (100%) rename articles/{2025 => }/open-source-im-unternehmen/5-security-by-community-chancen-und-risiken-der-open-source-sicherheit.md (100%) create mode 100644 static/img/simplex-messaging-service.webp diff --git a/articles/2025/docker-swarm-mit-abweichendem-port-einrichten.md b/articles/2025/02/docker-swarm-mit-abweichendem-port-einrichten.md similarity index 100% rename from articles/2025/docker-swarm-mit-abweichendem-port-einrichten.md rename to articles/2025/02/docker-swarm-mit-abweichendem-port-einrichten.md diff --git a/articles/2025/ssl-fuer-interne-docker-registrierung-abschalten.md b/articles/2025/02/ssl-fuer-interne-docker-registrierung-abschalten.md similarity index 100% rename from articles/2025/ssl-fuer-interne-docker-registrierung-abschalten.md rename to articles/2025/02/ssl-fuer-interne-docker-registrierung-abschalten.md diff --git a/articles/2025/push-dienst-ntfy-mit-prometheus-und-grafana-selber-hosten.md b/articles/2025/03/push-dienst-ntfy-mit-prometheus-und-grafana-selber-hosten.md similarity index 100% rename from articles/2025/push-dienst-ntfy-mit-prometheus-und-grafana-selber-hosten.md rename to articles/2025/03/push-dienst-ntfy-mit-prometheus-und-grafana-selber-hosten.md diff --git a/articles/2025/default-domain-policy-kann-nicht-gelesen-werden.md b/articles/2025/05/default-domain-policy-kann-nicht-gelesen-werden.md similarity index 100% rename from articles/2025/default-domain-policy-kann-nicht-gelesen-werden.md rename to articles/2025/05/default-domain-policy-kann-nicht-gelesen-werden.md diff --git a/articles/2025/tls-zertifikat-mit-sha3-256-cbc-auf-windows-server-2016-einspielen.md b/articles/2025/05/tls-zertifikat-mit-sha3-256-cbc-auf-windows-server-2016-einspielen.md similarity index 100% rename from articles/2025/tls-zertifikat-mit-sha3-256-cbc-auf-windows-server-2016-einspielen.md rename to articles/2025/05/tls-zertifikat-mit-sha3-256-cbc-auf-windows-server-2016-einspielen.md diff --git a/articles/2025/warum-personenbezogene-daten-nie-in-die-betreffzeile-einer-e‑mail-gehoeren.md b/articles/2025/05/warum-personenbezogene-daten-nie-in-die-betreffzeile-einer-e‑mail-gehoeren.md similarity index 100% rename from articles/2025/warum-personenbezogene-daten-nie-in-die-betreffzeile-einer-e‑mail-gehoeren.md rename to articles/2025/05/warum-personenbezogene-daten-nie-in-die-betreffzeile-einer-e‑mail-gehoeren.md diff --git a/articles/2025/windows-server-2025-adds-netzwerk-profil-public-nicht-domainauthentifiziert.md b/articles/2025/05/windows-server-2025-adds-netzwerk-profil-public-nicht-domainauthentifiziert.md similarity index 100% rename from articles/2025/windows-server-2025-adds-netzwerk-profil-public-nicht-domainauthentifiziert.md rename to articles/2025/05/windows-server-2025-adds-netzwerk-profil-public-nicht-domainauthentifiziert.md diff --git a/articles/2025/07/simplex-messaging-service.md b/articles/2025/07/simplex-messaging-service.md new file mode 100644 index 0000000..0e479d9 --- /dev/null +++ b/articles/2025/07/simplex-messaging-service.md @@ -0,0 +1,129 @@ + +> Kennzeichnung gemäß Artikel 52 Absatz 1 EU AI Act: [💜 Kein Einsatz von KI](/page/ai) + +**Mein eigenes SimpleX-Netzwerk: Messaging-Dienst jetzt verfügbar** + +Mit großer Freude gebe ich bekannt, dass ich das Projekt **„Eigenes SimpleX-Netzwerk“** erfolgreich abgeschlossen habe und der dazugehörige Messaging-Dienst ab sofort für alle Interessierten bereitsteht. In diesem Blogbeitrag schildere ich den Weg von der Idee bis zur Live-Schaltung, stelle die Server-Infrastruktur vor und gehe ausführlich auf die Bedeutung von Privatsphäre und Dezentralität im SimpleX-Kontext ein. Abschließend ziehe ich einen Vergleich zu WhatsApp und beleuchte die jeweiligen Vor- und Nachteile. + +--- + +## Einleitung + +In Zeiten, in denen Datensicherheit und Kontrolle über die eigene Kommunikation immer stärker in den Fokus rücken, gewinnt dezentrales Messaging zunehmend an Bedeutung. SimpleX ist hierbei ein vielversprechender Ansatz: Ein offenes, modulares Protokoll, das auf **SMP** (Simple Mail Protocol) und **xFTP** (eXtended File Transfer Protocol) aufbaut. Anders als proprietäre Dienste ermöglicht SimpleX den Aufbau eigener Netzwerke, bei denen Nutzerinnen und Nutzer selbst bestimmen, auf welchen Servern ihre Nachrichten liegen. + +--- + +## Projektüberblick + +1. **Implementierung** + - Einrichtung von vier SMP-Knoten in verschiedenen Rechenzentren + - Integration eines xFTP-Servers für Datei- und Medien-Transfer + +2. **Test & Qualitätssicherung** + - Funktionstests für Nachrichtenversand, Gruppenchat und Medienübertragung + - Penetrationstests zur Sicherstellung der Kommunikationssicherheit + - Usability-Tests mit ersten Beta-Nutzerinnen und -Nutzern + +3. **Rollout & Dokumentation** + - Veröffentlichung der Konfigurationsanleitungen im GitHub-Repository + - Bereitstellung von Clients für Desktop und Mobile + - Onboarding-Hilfen und Support-Kanal + +--- + +## Server-Adressen + +Im Folgenden findet ihr eine Übersicht der aktuell betriebenen Server. Tragt hier bitte eure gewünschten Adressen ein: + +- **SMP-Server 1: smp://R3JRxGyucriJZE7crCEe4fC7D-Q-1fGAAkYvm_aX1C0=:pNkJFwypBZOjaEV0tqFdQLVxuw2vIkcU@a-smp-sx.send.nrw:8443** +- **SMP-Server 2: smp://NkyMHXo5ASy0nQgLPmThdMV92l5ru7inSVGk0E0Vs_I=:pNkJFwypBZOjaEV0tqFdQLVxuw2vIkcU@b-smp-sx.send.nrw:8443** +- **SMP-Server 3: smp://VEfRVpnEuJDygsrgMCAufOqCkE03Dh5ra1CDdbTzDZ4=:pNkJFwypBZOjaEV0tqFdQLVxuw2vIkcU@c-smp-sx.send.nrw:8443** +- **SMP-Server 4: smp://C0S2lzu7niWyR0AWSSCJKwZzKgwHVCo4dL5ICxWK9rY=:pNkJFwypBZOjaEV0tqFdQLVxuw2vIkcU@d-smp-sx.send.nrw:8443** +- **xFTP-Server: xftp://-OSroM9a4HiZWpnnpdcnUofVtZb2jZmnvJFkXZbKq_s=@a-xftp-sx.send.nrw** + +--- + +## Privatsphäre und Dezentralität im SimpleX-Kontext + +### Warum Privatsphäre wichtig ist + +- **Selbstbestimmung**: Jede Nutzerin und jeder Nutzer sollte selbst entscheiden können, welche Daten gespeichert werden und wer darauf Zugriff hat. +- **Schutz vor Massendatensammlung**: Zentrale Anbieter sammeln häufig Metadaten (wer mit wem kommuniziert, wann und wie lange). SimpleX minimiert dieses Risiko durch verteilte Serverarchitektur. +- **Sicherheitsresilienz**: End-to-End-Verschlüsselung stellt sicher, dass nur die Kommunikationspartner den Inhalt der Nachrichten lesen können. + +### Dezentralität als Schlüsselprinzip + +- **Skalierbarkeit**: Neue Server lassen sich leicht hinzufügen, um steigende Nutzerzahlen zu bewältigen. +- **Fehlertoleranz**: Fällt ein Knoten aus, übernehmen andere SMP-Server automatisch den Nachrichtenaustausch. +- **Unabhängigkeit von einzelnen Betreibern**: Keine einzelne Organisation kann das gesamte Netzwerk kontrollieren oder abschalten. + +--- + +## Vergleich mit WhatsApp + +| Aspekt | SimpleX | WhatsApp | +|----------------------------|------------------------------------------|----------------------------------------| +| **Architektur** | Dezentral, offene Server | Zentraler Dienst (Meta Inc.) | +| **Verschlüsselung** | End-to-End standardmäßig, offen geprüft | End-to-End, proprietär | +| **Metadaten** | Stark begrenzt, verteilt gespeichert | Umfassende Metadatensammlung | +| **Installation & Betrieb** | Eigenes Hosting notwendig | Keine Infrastrukturkosten für Nutzer | +| **Feature-Set** | Basisfunktionen (Chat, Datei-Transfer) | Breites Ökosystem (Voice, Video, Status) | +| **Netzwerkeffekt** | Kleinere Community, Einladung nötig | Milliarden Nutzer, hohe Reichweite | +| **Entwicklungsfreiheit** | Vollständig offen, community-getrieben | Proprietär, eingeschränkte APIs | + +### Vorzüge von SimpleX + +1. **Maximale Kontrolle** + Jeder Betreiber entscheidet selbst über Speicherort, Löschzyklen und Backups. + +2. **Open-Source-Ökosystem** + Der gesamte Stack ist quelloffen. Sicherheitslücken können von der Community schnell erkannt und behoben werden. + +3. **Dezentrale Infrastruktur** + Erhöhte Ausfallsicherheit und Unabhängigkeit von großen Konzernen. + +4. **Datenschutz by Design** + Minimale Metadatenspeicherung und nur so viel Zentralisierung wie unbedingt nötig. + +### Nachteile gegenüber WhatsApp + +- **Geringere Verbreitung** + Ohne Milliarden-Nutzer-Basis reduziert sich der Nutzen, wenn die eigenen Kontakte nicht mitziehen. + +- **Komplexität bei Installation** + Hosting, Zertifikatsmanagement und Wartung erfordern technisches Know-how. + +- **Eingeschränkte Features** + Einige Komfortfunktionen (z. B. Status-Updates, Business-Integration) fehlen noch oder sind in Entwicklung. + +- **Performance-Unterschiede** + In Spitzenzeiten kann es zu höheren Latenzen kommen, wenn einzelne Knoten überlastet sind. + +--- + +## Ausblick und Mitmachen + +Das SimpleX-Projekt steht erst am Anfang. In den kommenden Monaten sind folgende Schritte geplant: + +- Ausbau des Netzwerks mit weiteren SMP-Knoten +- Integration von Audio- und Videotelefonie über eigene Knoten +- Automatische Server-Discovery für vereinfachtes Onboarding + +**Mitmachen ist ausdrücklich erwünscht!** Im GitHub-Repository findet ihr alle Installationsanleitungen, Konfigurationsbeispiele und Entwickler-Dokumentationen. Pull-Requests, Issue-Reports und Feature-Wünsche sind jederzeit willkommen. + +--- + +## Fazit + +Mit dem Start meines eigenen SimpleX-Netzwerks setze ich ein Zeichen für ein selbstbestimmtes Internet, in dem Privatsphäre und Dezentralität nicht nur Schlagwörter, sondern gelebte Prinzipien sind. Zwar bedeutet der Schritt weg von den Alltagsgiganten höhere Einstiegshürden, doch der Gewinn an Kontrolle, Transparenz und Sicherheit macht dies mehr als wett. Ich freue mich auf eure Rückmeldungen, eure Beteiligung und darauf, gemeinsam die Zukunft der Kommunikation zu gestalten! + +--- + +**Links & Ressourcen** + +- Git-Repository: [https://git.send.nrw/sendnrw/SimpleX](https://git.send.nrw/sendnrw/SimpleX) +- Installationsanleitung: `/install.md` +- [Node-A Dashboard](https://a-smp-sx.send.nrw/) +- [Node-B Dashboard](https://b-smp-sx.send.nrw/) +- [Node-C Dashboard](https://c-smp-sx.send.nrw/) +- [Node-D Dashboard](https://d-smp-sx.send.nrw/) diff --git a/articles/2025/open-source-im-unternehmen/0-einfuehrung.md b/articles/open-source-im-unternehmen/0-einfuehrung.md similarity index 100% rename from articles/2025/open-source-im-unternehmen/0-einfuehrung.md rename to articles/open-source-im-unternehmen/0-einfuehrung.md diff --git a/articles/2025/open-source-im-unternehmen/1-open-source-als-innovationsmotor-warum-unternehmen-auf-offene-software-setzen.md b/articles/open-source-im-unternehmen/1-open-source-als-innovationsmotor-warum-unternehmen-auf-offene-software-setzen.md similarity index 100% rename from articles/2025/open-source-im-unternehmen/1-open-source-als-innovationsmotor-warum-unternehmen-auf-offene-software-setzen.md rename to articles/open-source-im-unternehmen/1-open-source-als-innovationsmotor-warum-unternehmen-auf-offene-software-setzen.md diff --git a/articles/2025/open-source-im-unternehmen/2-kosten-vs-kontrolle-ist-open-source-wirklich-guenstiger.md b/articles/open-source-im-unternehmen/2-kosten-vs-kontrolle-ist-open-source-wirklich-guenstiger.md similarity index 100% rename from articles/2025/open-source-im-unternehmen/2-kosten-vs-kontrolle-ist-open-source-wirklich-guenstiger.md rename to articles/open-source-im-unternehmen/2-kosten-vs-kontrolle-ist-open-source-wirklich-guenstiger.md diff --git a/articles/2025/open-source-im-unternehmen/3-strategien-fuer-sicheres-und-regelkonformes-management.md b/articles/open-source-im-unternehmen/3-strategien-fuer-sicheres-und-regelkonformes-management.md similarity index 100% rename from articles/2025/open-source-im-unternehmen/3-strategien-fuer-sicheres-und-regelkonformes-management.md rename to articles/open-source-im-unternehmen/3-strategien-fuer-sicheres-und-regelkonformes-management.md diff --git a/articles/2025/open-source-im-unternehmen/4-open-source-im-cloud-zeitalter-kubernetes-docker-und-mehr.md b/articles/open-source-im-unternehmen/4-open-source-im-cloud-zeitalter-kubernetes-docker-und-mehr.md similarity index 100% rename from articles/2025/open-source-im-unternehmen/4-open-source-im-cloud-zeitalter-kubernetes-docker-und-mehr.md rename to articles/open-source-im-unternehmen/4-open-source-im-cloud-zeitalter-kubernetes-docker-und-mehr.md diff --git a/articles/2025/open-source-im-unternehmen/5-security-by-community-chancen-und-risiken-der-open-source-sicherheit.md b/articles/open-source-im-unternehmen/5-security-by-community-chancen-und-risiken-der-open-source-sicherheit.md similarity index 100% rename from articles/2025/open-source-im-unternehmen/5-security-by-community-chancen-und-risiken-der-open-source-sicherheit.md rename to articles/open-source-im-unternehmen/5-security-by-community-chancen-und-risiken-der-open-source-sicherheit.md diff --git a/static/img/simplex-messaging-service.webp b/static/img/simplex-messaging-service.webp new file mode 100644 index 0000000000000000000000000000000000000000..2696b2cfc8371c1dc1f38091051aa5b45dbdc596 GIT binary patch literal 19750 zcmV(!K;^$uNk&E45l&F6yMujbFsANoJXf0X^c z`K|va)#vKJU{BW%*x&Ph+a9s}!hY8N^Lxhs$o-r5v;Di&1Nz7MzyJQbe#w4-zqp_O z{doU&eiMJXf7kuU_NV{<>;eDl+T-{K|NguGSN|>N!{BGvK|1xlYdJ8OT8)p|4shG=*#uqXMZ35*VqGsOY;~^HS*WA+eH+gGouU~XTTql7SgPe(M z;0nD+^_&4|=36)duTr#Mq8UH$Mn2<`owRweyvkS>AZ zfphNG1SgtvrqN+^BP2pdVq;Cdx3@#Yh!OcILD+#?zidFud~%mnc5i&?E3)ecg{+W@jt#j)WUTeQg3h`b#mo)Bgs{L<%Vp z+2-4fb_BiXO^*fCd~li7{R^BLLlsMa$_MVg(P4ueJT(wY_ob@`{&B_om+K~Qd9Yal zDprw(A&7xMN3N4{t5#lrA^r6+uw33QWEEmmEI`^ph`c#bZK+$wxVUgq#uj_CB;UE- z?y`}>V@Yv{NV|9u(U6(szt*1;oN51lRgxgG=MpV%@IIQo8^nHCrV-UWC>1i_{v{$$ z;MXUa1mnVLS?W{Fn~fY`qJ5o3C4cUHaPc(A58upRkO&&M;k&GfMwMa{^=$i1J5H)6 z-{FDY$l$qZ@n=3^X8cAY!BktgUJUWads+ zh7nFI_7q0ec_eHuc7&E9;?;G>Qi4q*mk7N^8G9fV#G;J_B{^1?p4r-_9azFadg(UlF^b zSJ16dXvELU8M4or)O$R>*Y%!GB%HGDh+x*aKl&!xdD+#rY&NkZ8mU34B3br^VuN7h zFzV|z73f}!(rg%tpmgs%42M6B^}zjg@j&ILw!&*`g`uyAE~AKi$8%ZS#B-!+hh9@KNgHOc!|Z%Kfv)p zF&`lnDDt5QM|9&^=wV}F8dfbzjnK#@O*IYbFt}h<1NEtsS;8JQ0<^H1#%QjC0Zf3W zkSaM1|FSV=PO;E6Z#bs%)iP=q+hGr8`@Q`e${fOvU4AGh19!%y>QBA7-1im+hE4d7 zPTwVGr8W0AAk~W5(dWSzjDmU?Y4QurKn>+Og=FJ4%^a zPs%C=W*WYZln!U+aKNIz;*F2cr*t6WO`Fnedw!WN;%9>=*k|3Py7J8i@<6gRxjyng z`7Sh{V<$i`LfoZlx+x3)8@rz@I<}N6auXQA@Iuz3Ff>}K9_297rsNNldR0BF+J97_ zq(XaZQ%1ERkeL6xH~!zFy3C8AH>a!?&(JmqiwH5ySOu#u5MC@h8UN=1Gkzft+45v# z$v)a-iR~1BX2mUmE!me~{4%YFu?gTgxezQ0l_>HlcJ zgjtUG#Zkk7r!R<&YBpnTJY=VoB@j?AlhX7*EI2)4BG&-tZ-Vx!1osD@8|4vjT^F_7GJNn2ZsC45K_1xl{IXpJm zG>he05Umo`6MJJYuZ&fjEV>q4V*<3%ce3>!;WNmsxdHx#ba(0{mqDuNRaRGpaS!g% z=D+SI8XSTCj=id3+bXnQvcrk1#5;S1VxEV&Wk>jXt`|X2WQ7z`XPAtctjwjYU${Q< zMbBDQNrJHslGfrr=pL=~SoXWTW7V6kq-}Y;bGrPQRE^#I(G)M<-81O$Kl3%Euwo<` zxn0`oTfPLMdG*okiq%9{fEiA3R^Wll`ArHmX(tlcr*wZ8iD{PUQqXurit7%6Z(9*T z_4G-a3Ci9<9&bQOqZhnuoD=@`z1+7{-|gCyA*<`ycs$$HpBDz7&cV%WetEXrSCrtU zRQ`$%{#AXyR|U+og#pMnQCc?Ac(JzCp`nQ_U0N_T55NARCe?Sj8zu z7STOi49LtB=Pp_tb8gNTui7-9Q<&KLv!e;Kp;tw*MWl1(eFQJVtXdLk1lm+u81RD^ z{*v=D;J_PeiRZVw>F)3 z4Qz9!M&F=UxE%Q6NcolP6r5{%EQ|D#6EYJM$2%Oj)ffEFoJ$blw`+A3aj|-y;-0g} zj1lu-vXAek&J0Fjgr|vnf}u~_<#!#?|HyB4`axKVnRUe6NY_v@fpj`FN5>R?_xQgs1PrK$T7Y{)d`B-UEO3 zLDjjbTE0DH1`|o?Q>hc-Y30=NS{aqg_uTiSFuI+DBct-mJoF<#$>C#cksaTcVxJ)d zh0vS@vZ!5&&-+QdgzPsGe4(B~c&{bVJKBl5yMuo-W0j!DJes+nVn0@H$Z|wTMDf$q z0))+YiQuB)nrG6rq7+8T5r0GHd9O8Kz!yQzc83gZn~6B(#ssq1<~OUUHHO8?dK%GA z8XM=Js|yf)3ERQNimnXcfs78ij24e(<|xtk<3*jS!|`vDs)nd?_?xS?v~nD&ZMLy} zR_&v3-^8TJaV0H>t~fbcS=wCHDdO#^rVAfdcz=#~tE{>$r~764#i@ zBv}QfwOk9Jc#+i2a7i-NaX{nc$NM7jz-d9P84j-y<|;7;9c1}UxSD!$%zxFKoBR=f zXBU3MR1s@lN7J2W;JZo2g&Qb>@M^WSY8=F9w99(>M^^JLD8TVdb2tfu@ai!$^qnq? z&JiD$DUI1A!y>ZY^dqcIY2oUBXB+e3a5MQ(EB`=1(UmjH`x~l#7u;{`KBfnl$L;`l z(|GnaiX{YnG}FzaZ1a9zscx;xk}XFuw@z$<7l8|NBf|;%%Y<#>k3j$c{`QuCfAaxXdaQN`WQ_75J}Sa+M2Cg^Q!_KgPn(RvOTi$GfFI} zIrBFg2-!`@bL9X^|Nf*4)8;?`>)5^?-c9UIPTw#~ z*N3hbq9bfJ#garNvdXh#9TniMjI*c=SL^RCxW=eu|5Y^?|8e>&nf(63Bt<{H>-^&) ztkLnKMym05wqHe5Q+!1dy``F~k@Q&V#cpd&mqHwan8ry>7y8W=GQRa=KVe`gQFe9# zg^q_T!C^>ym*eC&*)$5&m>>UE=WT<{z(S70pV1Zt4=e>-t?uHSe;{9=R;2%N7_93R z=l~Rx?`3A_#_q4ZiVQ4pgys{_e@sw8YT|uKxM2o8BNAdgo(USP;K4+gYCo5HUHR!p zM8ehlkG$&u%ez)6s#nj(LOG|dO0=dV;76O>H^7$A_i+SG%W@4$-9Sww2njp@bkMXs zVM4=)%XNuI3n?_x)|ehQcO$B)VGD{8WZ6K7_iP#V5m6^F#04S#S)&C#-k~{Z$QvUj zPiBg^!B&w7fNo;WkA0&pP8RR&ZF6_QQIH?O|9kLz(a!uaN=ccIQcJ3maldo5?;xpB z1*06kpe{vn6TbR*bBRNNWGOZj*fKFH&Prwaw4M`?+j_--%VGzn{O z(6L%cy4PRd^i8>GCNh8kEsOmsu$#ffyZ%H^-_vnA0L}SJRHDd=s zQk()jd$MeUaezQ!m{FOJmVlaN6?|jC5VY{IEdw|wSOX=}27aRy6rT9d=*E^3<)Ro0 zO^jXlUD%a8mqylN%1R|z0JQLr3b5<>H!sUpVsS31@Q8WwVQgZouDSc&iSh!@qV(AA zqK#P6p@Z$f`hGaFc_hm~>!L3!*6UL@-}Wugr;)|dwo~~`s%)s}9gSi~{{PvBhzmQ5 zGqw^ZSf3j>h#UhgqR~@>RuJ$RyzcR>V3x$Vrc2OmyVC&MFz_zzPphxl?*}uOD6x`R zF&f-L*~3#}31L4y-o&�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 F007j`nhO8` literal 0 HcmV?d00001