Zum Inhalt springen
NETbrainDokumentation

NETbrainDokumentationHilfe

Versionshinweise

Was sich mit jeder Version geändert hat. Steht unter Status ein Hinweis, lesen Sie ihn vor dem Update; wie das Update selbst abläuft, steht unter Aktualisieren.

NETbrain 0.5.9#

Stand: 3. November 2026

Status: Keine Eingriffe nötig.

Eigene Akzentfarbe und Sicherungen#

Oberfläche aufgeräumt#

Erfassung und Fehlermeldungen#

NETbrain 0.5.8#

Stand: 2. November 2026

Status: Keine Eingriffe nötig.

Chat#

Administration neu gegliedert#

NETbrain 0.5.7#

Stand: 2. November 2026

Status: Keine Eingriffe nötig. Wer ein mitinstalliertes Kundenportal betreibt, führt einmal sudo ./install.sh aus — danach zieht das Update über Administration das Portal mit.

Anmeldung#

Suche und Chat#

Große Wissensbestände#

Für Administratoren#

NETbrain 0.5.6#

Stand: 29. Oktober 2026

Status: Keine Eingriffe nötig.

Kundenportal#

Wissen#

Chat#

Korrekturen#

Für Administratoren#

NETbrain 0.5.5#

Stand: 26. Oktober 2026

Status: Keine Eingriffe nötig.

KI anpassen#

Wissen#

Korrekturen#

NETbrain 0.5.4#

Stand: 20. Oktober 2026

Status: Keine Eingriffe nötig.

Korrekturen#

Für Administratoren#

NETbrain 0.5.3#

Stand: 15. Oktober 2026

Status: Keine Eingriffe nötig.

Bilder aus PDFs#

Ein PDF mit Text bringt beim Erfassen seine Abbildungen mit, etwa Screenshots aus einer Anleitung. Sie stehen im Entwurf bei ihrem Abschnitt. Symbole, Linien und Kopfleisten des Briefpapiers bleiben weg, wiederkehrende Bilder kommen nur einmal. Übernommen werden bis zu zwölf Abbildungen.

Unter Administration → Einstellungen lässt sich ein eigenes Logo hochladen (PNG oder WebP). Es erscheint in der Kopfzeile, bei der Anmeldung und bei der Registrierung, darunter steht „mit NETbrain“.

KI-Chat#

Korrekturen#

Für Administratoren#

NETbrain 0.5.2#

Stand: 14. Oktober 2026

Status: Keine Eingriffe nötig.

Wissenslandkarte#

Die Landkarte zeigt als Netz die Verweise zwischen den Seiten, färbt nach Kategorie und ordnet sich um die Index-Seite. Jede Wissensseite zeigt ihr Umfeld als kleinen Graphen.

Korrekturen#

Für Administratoren#

NETbrain 0.5.1#

Stand: 14. Oktober 2026

Status: Keine Eingriffe nötig.

Schnell erfassen vom Handy#

Zwei neue Seiten mit je einem großen Knopf: Foto aufnehmen oder diktieren, dann wie gewohnt prüfen und einreichen. Auf Android liegen Foto, Diktat und Chat auf dem App-Symbol (lange drücken) und lassen sich einzeln auf den Startbildschirm ziehen. Auf dem iPhone gehen sie über das Kurzbefehle-Widget.

Korrektur#

Für Administratoren#

NETbrain 0.5.0#

Stand: 14. Oktober 2026

Status: Keine Eingriffe nötig. Jedes Konto bestätigt einmal den Nutzungshinweis.

Websuche im Chat#

Neue Installationen bringen eine eigene Websuche mit. Sie funktioniert mit jedem KI-Anbieter; die Antwort nennt ihre Webquellen mit Link. Abschalten lässt sie sich in der KI-Verwaltung.

Word-Dateien übernehmen#

Eine .docx-Datei in der Erfassung wird zu einer Wissensseite, samt ihrer Bilder.

Firmenwissen mit Cloud-Anbietern#

Hat ein Administrator Firmenwissen für Cloud-Anbieter freigegeben, nutzt die Automatik im Chat es jetzt auch ohne internes Modell. Bevor zum ersten Mal Firmenwissen an einen Cloud-Anbieter geht, fragt der Chat einmal nach deiner Zustimmung.

Weitere Änderungen#

Für Administratoren#

NETbrain 0.4.17#

Stand: 12. Oktober 2026

Status: Keine Eingriffe nötig.

Wissen erfassen#

Links das Textfeld, rechts die Ablage für Link und Datei (ziehen, klicken oder einfügen). Titel und Aufbereitung stehen im Aufklapper. Ein Text, der nur aus einem Link besteht, wird als Quelle übernommen.

Diagramme#

Weitere Änderungen#

NETbrain 0.4.16#

Stand: 6. Oktober 2026

Status: Keine Eingriffe nötig.

KI-Zugang prüfen#

Scheitert die Prüfung eines KI-Anbieters, nennt NETbrain jetzt die Ursache: keine Antwort (meist eine Firewall), Name nicht auflösbar, Verbindung abgewiesen, ungültiges Zertifikat oder abgelehnter API-Schlüssel.

Installation und Updates#

Installer und Update-Prüfung hinterlassen keine leeren Docker-Volumes mehr. Ältere Reste entfernt docker volume prune (löscht nur namenlose Volumes, die kein Container nutzt).

NETbrain 0.4.15#

Stand: 6. Oktober 2026

Status: Keine Eingriffe nötig.

Installation#

Einrichtungsassistent#

NETbrain 0.4.14#

Stand: 1. Oktober 2026

Status: Keine Eingriffe nötig.

Betriebszustand in der Administration#

Unter Verwaltung → Übersicht stehen jetzt Speicherplatz, Sicherung, Lizenz und Kundenportal mit Ampel und Klartext — dieselben Prüfungen wie unter /api/monitor/. Den Token für die Überwachung von außen erzeugt NETbrain dort per Knopf; die Compose-Datei muss dafür niemand mehr anfassen. Fehlt das Sicherungsverzeichnis noch, misst die Speicherprüfung den Datenträger, auf dem es entsteht.

NETbrain 0.4.13#

Stand: 1. Oktober 2026

Status: Keine Eingriffe nötig. Für die neue Überwachung NETBRAIN_MONITOR_TOKEN setzen.

Überwachung für Uptime Kuma und Co.#

Vier neue Endpunkte, je 200 oder 503, nur mit Token (NETBRAIN_MONITOR_TOKEN, als Authorization: Bearer …):

Ohne Token gibt es die Endpunkte nicht. Anleitung: https://getnetbrain.netfactory.de/doku/ueberwachung.html

NETbrain 0.4.12#

Stand: 1. Oktober 2026

Status: Für Kubernetes und App-Plattformen wichtig: Probes auf /api/live und /api/ready umstellen. Docker-Installationen: keine Eingriffe nötig.

Eigene Endpunkte für Container-Probes#

Beide antworten unabhängig vom Host-Header, von Einrichtung und Lizenz. Bisher diente /api/health als Probe; es meldet 503, solange die Lizenz fehlt. Auf Kubernetes führte das zu einer Neustart-Schleife, und eine Installation ohne Lizenz erreichte ihre eigene Lizenzseite nicht. /api/health bleibt unverändert und dient der Überwachung. Auch die Healthprobe eines Reverse-Proxys gehört auf /api/ready.

NETbrain 0.4.11#

Stand: 1. Oktober 2026

Status: Keine Eingriffe nötig. Für das neue Erscheinungsbild auch den Portal-Container auf 0.4.11 bringen.

Kundenportal im eigenen Erscheinungsbild#

Unter Verwaltung → Kundenportal → Erscheinungsbild: Name in der Kopfzeile, Einleitung, eigenes Logo (PNG, JPEG, WebP bis 512 KB), Akzentfarbe, helles oder dunkles Design sowie Verweise auf Impressum, Datenschutzerklärung und eine Kontaktadresse in der Fußzeile. Zu schwach kontrastierende Akzentfarben gleicht das Portal für Links lesbar ab. Logo und Einstellungen gehen mit in die Sicherung.

NETbrain 0.4.10#

Stand: 1. Oktober 2026

Status: Keine Eingriffe nötig; Daten und Lizenzen bleiben unverändert.

Kundenportal: Schlüssel eintragen#

Der Kopplungsschlüssel lässt sich jetzt auch eintragen statt erzeugen — unter Verwaltung → Kundenportal → Schlüssel eintragen und im Einrichtungsassistenten. So kann eine App-Plattform den Schlüssel vorgeben (PORTAL_SYNC_KEY) und mit der Portal-Adresse anzeigen; am Portal selbst ist nichts einzurichten. NETbrain gleicht nach dem Eintragen sofort ab.

Weitere Änderungen#

NETbrain 0.4.9#

Stand: 1. Oktober 2026

Status: Keine Eingriffe nötig; Daten und Lizenzen bleiben unverändert.

Kundenportal im Backup#

Die Sicherung enthält jetzt auch die Freigaben für das Kundenportal (/data/portal.json). Beim Wiederherstellen kommt dafür --portal <Zielpfad> hinzu; ältere Sicherungen bleiben lesbar.

NETbrain 0.4.8#

Stand: 30. September 2026

Status: Korrekturfassung zu 0.4.7. Keine Eingriffe nötig; Daten und Lizenzen bleiben unverändert.

Anmeldung nach der Einrichtung repariert#

Mit 0.4.7 konnte sich der erste Administrator nach der Einrichtung nicht anmelden: Die Pflicht zur Zwei-Faktor-Anmeldung und die Lizenzprüfung leiteten sich gegenseitig weiter, der Browser zeigte eine leere Seite. Behoben:

Eine bereits eingerichtete 0.4.7-Installation muss nicht neu aufgesetzt werden: Nach dem Update öffnet die Anmeldung die Einrichtung der Zwei-Faktor-Anmeldung.

Gestaltete Fehlerseiten#

Fehler (etwa „Seite nicht gefunden") erscheinen im NETbrain-Design statt als leere Textseite.

Neu: Kundenportal (eigene Lizenz)#

Kuratoren können einzelne Wissensseiten für ein öffentliches Kundenportal freigeben — mit Bestätigung, jederzeit widerrufbar. Das Portal läuft als eigener Container (ghcr.io/netfactory-gmbh/netbrain-portal) unter eigener Adresse und zeigt die Seiten ohne Anmeldung, mit Suche. Einrichtung im Assistenten (überspringbar) oder unter Verwaltung → Kundenportal. Das Portal ist nur mit einer Lizenz verfügbar, die es enthält; die Testlizenz enthält es. Fragen zur Lizenz: info@netfactory.de

NETbrain 0.4.7#

Stand: 30. September 2026

Status: Bitte vorab ankündigen: Jedes Konto richtet beim nächsten Anmelden die Zwei-Faktor-Anmeldung ein. Daten und Lizenzen bleiben unverändert.

Zwei-Faktor-Anmeldung ist Pflicht#

Nach dem Passwort fragt NETbrain einen sechsstelligen Code aus einer Authenticator-App ab (z. B. Microsoft Authenticator, Google Authenticator, 1Password). Beim ersten Anmelden nach dem Update richtet jedes Konto sie ein: QR-Code scannen, Code eingeben, zehn Wiederherstellungscodes notieren. Bis dahin sind die übrigen Seiten gesperrt.

NETbrain als App#

NETbrain lässt sich im Browser als App installieren (Chrome, Edge, Android, iOS über „Zum Home-Bildschirm"). Gespeichert werden dabei nur Programmdateien, kein Wissen und keine Inhalte.

NETbrain 0.4.6#

Stand: 30. September 2026

Status: Keine Eingriffe nötig; bestehende Installationen und Lizenzen laufen unverändert weiter.

Einrichtung hinter einem HTTPS-Proxy#

Hinter einem Reverse-Proxy oder Ingress, der TLS beendet, brach jedes Formular — zuerst die Eingabe des Einrichtungs-Tokens — mit „Cross-site POST form submissions are forbidden" ab. Behoben: NETbrain erkennt die HTTPS-Adresse des eigenen Hostnamens jetzt auch dann als eigene Herkunft, wenn der Proxy per HTTP weiterreicht. Voraussetzung: Der Proxy lässt den Host-Header unverändert. NETBRAIN_ALLOWED_HOSTS ist dafür nicht nötig.

Weitere Änderungen#

NETbrain 0.4.5#

Stand: 21. September 2026

Status: Korrekturfassung zur Testlizenz. Bestehende Installationen und Lizenzen laufen unverändert weiter; eine bereits eingespielte Testlizenz bleibt gültig.

Die Testlizenz kommt jetzt wirklich an#

In 0.4.4 trug die Mail mit der Testlizenz zwar die richtige Empfängeradresse im Kopf, zugestellt wurde sie aber an das Postfach des Herausgebers. Wer eine Testlizenz angefordert hat, bekam nichts. Das ist behoben — die Mail geht an die Adresse aus dem Antrag.

Wer in den letzten Tagen vergeblich gewartet hat: Eine zweite Anfrage mit derselben Adresse wird abgewiesen, weil je Adresse eine Testlizenz vorgesehen ist. Melden Sie sich in dem Fall bei uns, wir stellen sie von Hand aus.

Lizenz als Dateianhang#

Die Lizenz hängt der Mail jetzt als license.json an, statt als Textblock zum Markieren im Nachrichtentext zu stehen. Damit fällt das Kopieren weg: Datei herunterladen, unter Lizenz & Aktivierung hochladen, fertig. Ein abgeschnittener oder umgebrochener Textblock kann so nicht mehr passieren.

Für Administratoren: Einrichtungs-Token vorgeben#

Wird NETbrain aus einer Anwendungsplattform heraus gestartet, kann die Plattform das Einmal-Token für die Ersteinrichtung jetzt selbst setzen, statt es aus dem Containerprotokoll zu fischen:

NETBRAIN_SETUP_TOKEN=<mindestens 24 Zeichen>

Damit lässt sich der Einrichtungslink fertig aufgebaut an den Kunden ausgeben. Ohne die Variable verhält sich NETbrain wie bisher und würfelt das Token beim Start selbst aus. Ein zu kurzer Wert wird verworfen — mit einem Hinweis im Protokoll — und durch ein gewürfeltes ersetzt. Einzelheiten stehen in plattform-bereitstellung.md.

NETbrain 0.4.4#

Stand: 18. September 2026

Status: Keine Eingriffe nötig; bestehende Installationen und Lizenzen laufen unverändert weiter.

Testlizenz direkt aus NETbrain anfordern#

Wer noch keine Lizenzdatei hat, fordert sie jetzt in der Anwendung an: unter Lizenz & Aktivierung und im Einrichtungsassistenten steht „Testlizenz anfordern" — Firma, Name, Mailadresse, fertig. Die Lizenz kommt per Mail und wird wie jede andere eingefügt.

Sie läuft sieben Tage und danach ohne Übergangsfrist aus; eine reguläre Lizenz hat die sieben Tage Nachlauf weiterhin. Je Mailadresse gibt es eine Testlizenz. An Ihrem Bestand ändert das nichts: Läuft die Testphase ab, bleiben Lizenzseite, Export und der private Vault erreichbar, und mit der eingespielten Lizenz steht sofort wieder alles offen.

Übertragen werden nur Firma, Name und Mailadresse. Inhalte aus Ihrer Installation gehen dabei nicht hinaus.

NETbrain 0.4.3#

Stand: 18. September 2026

Status: Sicherheitsaktualisierung. Keine Eingriffe nötig, keine sichtbaren Änderungen.

Diese Fassung hebt vier Fremdbibliotheken auf ihre fehlerbereinigten Stände. Zwei davon betreffen die Verarbeitung hochgeladener Dateien und sind der Grund, warum die Aktualisierung nicht bis zur nächsten Funktionsfassung warten sollte:

Alle vier setzen ein Konto auf Ihrer Installation voraus; von außen war nichts davon erreichbar. An der Bedienung ändert sich nichts.

NETbrain 0.4.2#

Stand: 18. September 2026

Status: Keine Eingriffe nötig; bestehende Installationen und Lizenzen laufen unverändert weiter.

An der Anwendung ändert sich in dieser Fassung nichts: Ihr Wissensbestand, die Suche, der private Vault und der KI-Chat verhalten sich wie bisher. Geändert hat sich, wie eine neue Installation zu ihrer Lizenz kommt.

Sieben Tage ohne Lizenz#

Eine frisch aufgesetzte Installation ist ab dem ersten Start sieben Tage vollständig nutzbar. Ein Hinweisband am oberen Rand nennt die verbleibende Zeit. Die Lizenzdatei lässt sich jederzeit unter /lizenz nachtragen.

Läuft die Testphase ab, ohne dass eine Lizenz hinterlegt wurde, bleiben die Lizenzseite, der Export des Firmenwissens und Ihr lokaler privater Vault erreichbar. Es geht nichts verloren — mit der eingespielten Lizenz steht sofort wieder alles offen.

Für Administratoren#

NETbrain 0.4.0#

Stand: 9. September 2026

Status: Enthält auch die nie veröffentlichte 0.3.0 — bricht den Installationsweg --tls

Der Schwerpunkt liegt auf der Wissenssuche, der Verwaltung der KI-Zugänge und darauf, dass die Oberfläche auf großen Bildschirmen wieder angemessen wirkt. Bestehende Daten und Konten bleiben beim Update erhalten; einzurichten ist nichts — außer bei einer Installation, die mit --tls aufgesetzt wurde.

Wer von 0.2.1 kommt, erhält zugleich die Änderungen der 0.3.0. Diese Fassung wurde nie veröffentlicht; ihre Notizen stehen unten und gelten unverändert. Der Punkt daraus, der Arbeit macht: NETbrain bringt keinen Reverse-Proxy mehr mit — TLS, Zertifikat und Erneuerung liegen beim Betreiber.

Die Suche findet Wortvarianten und benannte Dinge#

Gemessen an einem Katalog aus 33 Fragen mit hinterlegten Belegstellen: alle 33 bestanden, jede erwartete Quelle gefunden und jeder Beleg im an die KI übergebenen Ausschnitt enthalten. Der Prüfbestand liegt beim Hersteller und enthält keine Kundendaten.

Wissenslandkarte: „Ohne Tag" heißt jetzt wirklich „ohne Tag"#

Die Karte hatte eine Sammelgruppe für zwei verschiedene Fälle — Seiten ohne jeden Tag und Seiten, deren Tags zu selten für einen Platz in der Legende sind. Eine Seite mit Tags konnte deshalb unter der Aufschrift „Weitere / ohne Tag" landen. Es sind nun zwei getrennte Gruppen, „Ohne Tag" und „Weitere Tags". Damit ist „Ohne Tag" eine brauchbare Arbeitsliste für die Wissenspflege.

Interne KI vollständig über die Oberfläche einrichtbar#

Nur Modelle, die die Datenschutzvorgaben erfüllen#

Für Cloud-Anbieter, die es angeben, prüft NETbrain je Modell vier Punkte: keine Speicherung der Eingaben, keine Verwendung zum Training, Hosting in der EU und ein nicht überschrittenes Enddatum. Wer eine dieser Angaben nicht macht, wird nicht angeboten — eine fehlende Angabe gilt als Nein, nicht als Ja. Aus dem Katalog des Anbieters Requesty bleiben damit 167 von rund 700 Modellen; fünf abgelaufene Modelle waren zuvor weiterhin auswählbar.

Anbieter, deren Katalog diese Felder überhaupt nicht führt — der interne Server, Anthropic, eigene Endpunkte — werden davon nicht gefiltert. Bei einem Server im eigenen Haus entscheidet ohnehin nicht ein Feld in einer Schnittstelle, sondern der Standort.

Rückmeldungen gehen an den Hersteller#

„Feedback geben" schickt Fehlerberichte und Ideen nun direkt an den Hersteller, statt sie nur in der eigenen Installation abzulegen. Ohne Mandantenbezug: Übertragen werden Art, Betreff und Text, nicht Ihr Name, nicht Ihre Kontokennung und nicht der Name Ihrer Installation. Wer eine Antwort möchte, kann freiwillig eine Kontaktangabe ins Formular schreiben — sie ist das einzige personenbezogene Feld und bleibt leer, wenn Sie es so wollen.

Hinweis zur Alpha-Version#

Der Schriftzug „Alpha-Version" oben links öffnet jetzt einen ausführlichen Hinweis darüber, was diese Fassung leisten soll, was sie nicht ist und wie es um Gewährleistung und Haftung steht — statt wie vorher das Feedback-Formular. Der Hinweis zeigt sich einmal je Konto beim ersten Arbeiten von selbst und ist danach jederzeit über denselben Schriftzug erreichbar. Die Bestätigung hängt am Konto, nicht am Browser: Ein Gerätewechsel oder gelöschte Browserdaten holen den Hinweis nicht zurück.

Oberfläche und Bedienung#

Fehlerbehebungen#

Für Administratoren#

Bekannte Einschränkung#

Ein eigener KI-Zugang unter einer Adresse, die keine Modellliste (/v1/models) anbietet, bleibt unbenutzbar: Die Auswahl bleibt leer und der Sendeknopf inaktiv. Ein Modellname lässt sich dort noch nicht von Hand eintragen.


NETbrain 0.3.0#

Stand: 2. September 2026

Status: Bricht den Installationsweg --tls

NETbrain bringt keinen Reverse-Proxy mehr mit#

Bisher konnte install.sh --tls <hostname> einen Caddy davorstellen, der sich sein Zertifikat selbst holte. Dieser Weg ist entfallen. NETbrain spricht im Container HTTP; HTTPS, Zertifikat und deren Erneuerung liegen beim Betreiber.

Was Sie einrichten müssen, steht vollständig in BETRIEB.md, Abschnitt „Anforderungen an Ihren Reverse-Proxy" — mit einem kopierfertigen nginx-Beispiel. Die Kurzfassung: TLS beenden, Port 80 auf 443 weiterleiten, mindestens 12 MB Request-Body durchlassen, X-Forwarded-For setzen, Port 4321 per Firewall auf die Adresse Ihres Proxys beschränken und Ihren DNS-Namen in NETBRAIN_ALLOWED_HOSTS eintragen.

Wenn Sie bisher mit --tls installiert haben#

Ihre Installation läuft weiter — install.sh hat Ihre netbrain-compose.yml nie überschrieben, und der Caddy-Container darin bleibt unangetastet. Zwei Dinge ändern sich trotzdem:

NETbrain kann HSTS jetzt selbst#

Strict-Transport-Security kam vorher aus dem mitgelieferten Caddy. Setzt Ihr Proxy den Header nicht, können Sie ihn in NETbrain einschalten: NETBRAIN_HSTS=true in der .env neben den Compose-Dateien, dann Container neu starten.

Voreinstellung ist aus, und das mit Absicht. Ein HSTS-Header auf einem falschen Namen oder hinter einem Proxy, der nur HTTP spricht, sperrt die Domain für ein Jahr aus, und keine Konfigurationsänderung holt das zurück. Schalten Sie ihn erst ein, wenn HTTPS unter dem endgültigen Namen steht und funktioniert.


NETbrain 0.2.1#

Stand: 31. August 2026

Status: Korrekturrelease zu 0.2.0

Zwei Korrekturen am Installationsweg. An der Anwendung selbst ändert sich nichts; wer 0.2.0 bereits im Browser benutzt, merkt keinen Unterschied.

Korrekturen#

Hinweis für eine bereits vorhandene Installation#

install.sh aktualisieren lässt eine vorhandene netbrain-compose.yml unangetastet — sie gehört dem Betreiber, samt seiner Eintragungen. Die zweite Korrektur greift deshalb nur bei einer Neuinstallation. Wer 0.2.0 schon per install.sh aufgesetzt hat und die falsche Adresse im Protokoll sieht, entfernt den Rechnernamen in der Zeile NETBRAIN_ALLOWED_HOSTS seiner netbrain-compose.yml von Hand und startet neu. Alternativ die Datei löschen und install.sh installieren erneut aufrufen; die Daten bleiben dabei erhalten.


NETbrain 0.2.0#

Geplanter Stand: 28. August 2026

Status: Release Candidate

NETbrain 0.2.0 macht aus der bisherigen Pilotinstallation eine deutlich besser bedienbare und betreibbare Wissensplattform. Im Mittelpunkt stehen die KI-Verwaltung, Spracheingabe sowie ein verlässlicherer Arbeitsfluss im Chat und in der Kuratur.

Neue Funktionen#

Einfacher installieren und betreiben#

Zentrale KI-Verwaltung#

Spracheingabe#

Besserer Arbeitsfluss im Chat und in der Kuratur#

Erscheinungsbild#

Verbesserungen und Fehlerbehebungen#

Hinweise zum Update#


Versionshinweis#

Version 0.2.0 ist das erste größere, abwärtskompatible Funktionsupdate nach dem Pilotstand 0.1.0. Bestehende Daten und Konten bleiben beim Update erhalten.

Stand: NETbrain 0.5.9. Fehlt etwas oder stimmt etwas nicht? Schreiben Sie uns.