mps.agency

Datenschutzerklärung

Wir freuen uns über Ihren Besuch auf unserer Internetseite mps-agency.de und Ihr Interesse an unserem Unternehmen.

Der Schutz Ihrer personenbezogenen Daten, wie z.B. Geburtsdatum, Name, Telefonnummer, Anschrift etc., ist uns ein wichtiges Anliegen.

Der Zweck dieser Datenschutzerklärung besteht darin, Sie über die Verarbeitung Ihrer personenbezogenen Daten zu informieren, die wir bei einem Seitenbesuch von Ihnen sammeln. Unsere Datenschutzpraxis steht im Einklang mit den gesetzlichen Regelungen der Datenschutzgrundverordnung der EU (DSGVO) und dem Bundesdatenschutzgesetz (BDSG). Die nachfolgende Datenschutzerklärung dient der Erfüllung der sich aus der DSGVO ergebenden Informationspflichten. Diese finden sich z.B. in Art. 13 und Art. 14 ff. DSGVO.

Verantwortlicher

Verantwortlicher im Sinne des Art. 4 Nr. 7 DSGVO ist derjenige, der allein oder gemeinsam mit anderen über die Zwecke und Mittel der Verarbeitung von personenbezogenen Daten entscheidet.

Im Hinblick auf unsere Internetseite ist der Verantwortliche:

mps.agency e.K.
Eisenbahnstr. 3
66424 Homburg
Deutschland
E-Mail: info@mps-agency.de
Tel.: 06841-1877324

Bereitstellung der Website und Erstellung von Logfiles

Bei jedem Aufruf unserer Internetseite erfasst unser System automatisiert Daten und Informationen des jeweils abrufenden Gerätes (z.B. Computer, Mobiltelefon, Tablet, etc.).

Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

(1) Informationen über den Browsertyp und die verwendete Version;
(2) Das Betriebssystem des Abrufgerätes;
(3) Hostname des zugreifenden Rechners;
(4) Die IP-Adresse des Abrufgerätes;
(5) Datum und Uhrzeit des Zugriffs;
(6) Websites und Ressourcen (Bilder, Dateien, weitere Seiteninhalte), die auf unserer Internetseite aufgerufen wurden;
(7) Websites, von denen das System des Nutzers auf unsere Internetseite gelangte (Referrer-Tracking);
(8) Meldung, ob der Abruf erfolgreich war;
(9) Übertragene Datenmenge

Diese Daten werden in den Logfiles unseres Systems gespeichert. Eine Speicherung dieser Daten zusammen mit personenbezogenen Daten eines konkreten Nutzers findet nicht statt, so dass eine Identifizierung einzelner Seitenbesucher nicht erfolgt.

Rechtsgrundlage für die Verarbeitung personenbezogener Daten

Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse). Unser berechtigtes Interesse besteht darin, die Erreichung des nachfolgend geschilderten Zwecks zu gewährleisten.

Zweck der Datenverarbeitung

Die vorübergehende (automatisierte) Speicherung der Daten ist für den Ablauf eines Websitebesuchs erforderlich, um eine Auslieferung der Website zu ermöglichen. Die Speicherung und Verarbeitung der personenbezogenen Daten erfolgt zudem zur Erhaltung der Kompatibilität unserer Internetseite für möglichst alle Besucher und zur Missbrauchsbekämpfung und Störungsbeseitigung. Hierfür ist es notwendig, die technischen Daten des abrufenden Rechners zu loggen, um so frühestmöglich auf Darstellungsfehler, Angriffe auf unsere IT-Systeme und/oder Fehler der Funktionalität unserer Internetseite reagieren zu können. Zudem dienen uns die Daten zur Optimierung der Website und zur generellen Sicherstellung der Sicherheit unserer informationstechnischen Systeme.

Dauer der Speicherung

Die Löschung der vorgenannten technischen Daten erfolgt, sobald sie nicht mehr benötigt werden, um die Kompatibilität der Internetseite für alle Besucher zu gewährleisten, spätestens aber 3 Monate nach Abruf unserer Internetseite.

Widerspruchs- und Löschungsmöglichkeit

Sie können der Verarbeitung jederzeit gem. Art. 21 DSGVO widersprechen und eine Löschung von Daten gem. Art. 17 DSGVO verlangen. Welche Rechte Ihnen zustehen und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

Besondere Funktionen der Internetseite

Unsere Seite bietet Ihnen verschiedene Funktionen, bei deren Nutzung von uns personenbezogene Daten erhoben, verarbeitet und gespeichert werden. Nachfolgend erklären wir, was mit diesen Daten geschieht:

Bestellformular

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen in die Formularfelder eingegebenen Daten wie z.B. Adresse, Name, Vorname, etc. werden von uns zur Erfüllung des unten genannten Zwecks verarbeitet.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. b DSGVO (Durchführung (vor)vertraglicher Maßnahmen)

  • Zweck der Datenverarbeitung

    Der Zweck der Datenverarbeitung besteht in der Bearbeitung Ihrer Bestellung, damit wir potentielle Vertragsverhältnisse mit Ihnen abwickeln bzw. vorvertragliche Maßnahmen durchführen können.

  • Dauer der Speicherung

    Die Löschung der Daten erfolgt, sobald diese für die Bearbeitung der Bestellung nicht mehr benötigt werden und keine gesetzlichen Aufbewahrungspflichten mehr bestehen. Dies wird in der Regel nach 10 Jahren sein (vgl. § 147 Abs. 3 i. V. m. Abs. 1 Nr. 1, 4 und 4a AO, § 14b Abs. 1 UStG).

  • Widerspruchs- und Löschungsmöglichkeit

    Welche Rechte Ihnen zustehen und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Angaben im Bestellformular sind weder vertraglich noch gesetzlich vorgeschrieben, jedoch zum Abschluss eines Vertrages erforderlich. Sofern Sie die vorhandenen Pflichtfelder nicht oder nicht vollständig ausfüllen, kann die von Ihnen gewünschte Bestellung nicht abgeschlossen werden.

Bewerbungsformular

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen in die Formularfelder des Bewerbungsformulars eingegebenen und ggf. hochgeladenen Daten werden vollständig zur Erfüllung des unten genannten Zwecks verarbeitet.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Als Rechtsgrundlage für die Erhebung und Verarbeitung von Bewerberdaten dient Art. 6 Abs. 1 lit. b (Vertragsanbahnung), Art. 88 Abs. 1 DSGVO i.V.m. § 26 BDSG. Soweit besondere Kategorien personenbezogener Daten erfasst werden, die zur Erfüllung von rechtlichen Pflichten aus dem Arbeitsrecht, dem Recht der sozialen Sicherheit und dem Sozialschutz nach Art. 9 Abs. 2 b DSGVO i.V.m. § 26 Abs. 3 BDSG erforderlich sind, erfolgt die Verarbeitung auf dieser Rechtsgrundlage. Soweit darüber hinaus besondere Kategorien personenbezogener Daten verarbeitet werden sollen, werden wir hierfür eine Einwilligung gemäß Art. 9 Abs. 2 lit. a DSGVO einholen.

  • Zweck der Datenverarbeitung

    Der Zweck der Datenverarbeitung besteht in der Prüfung und Bearbeitung der von Ihnen über das Formular hochgeladenen Bewerbungsunterlagen.

  • Dauer der Speicherung

    Die Löschung der Daten erfolgt, sobald die Bewerbung bearbeitet wurde und kein berechtigtes Interesse an der Speicherung der Bewerbungsdaten mehr besteht. Ihre Bewerbungsunterlagen werden daher, falls es nicht zu einem Arbeitsverhältnis kommt, nach spätestens 6 Monaten gelöscht.

  • Widerspruchs- und Löschungsmöglichkeit

    Welche Rechte ihnen zustehen, und wie Sie diese geltend machen finden Sie im unteren Bereich dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Angaben im Bewerbungsformular sind weder vertraglich noch gesetzlich vorgeschrieben, jedoch zum Absenden und zur Bearbeitung der Bewerbung notwendig. Sofern Sie die vorhandenen Pflichtfelder nicht oder nicht vollständig ausfüllen, kann die von Ihnen gewünschte Bewerbung nicht abgesendet oder bearbeitet werden.

Buchungsanfrage-Formular

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen in unser Buchungsanfrage-Formular (Datum, Personenanzahl, etc.) eingegebenen Daten werden wir zur Erfüllung des nachfolgenden Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. b DSGVO (Durchführung (vor)vertraglicher Maßnahmen)

  • Zweck der Datenverarbeitung

    Der vorvertragliche Informationsaustausch ist notwendig, um Ihre Buchung zu prüfen, damit wir einen möglichen späteren Vertragsabschluss vorbereiten können.

  • Dauer der Speicherung

    Die Löschung der Daten erfolgt, sobald diese für die Bearbeitung der Buchung nicht mehr benötigt werden und keine gesetzlichen Aufbewahrungspflichten mehr bestehen.

  • Widerspruchs- und Löschungsmöglichkeit

    Welche Rechte Ihnen zustehen und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Angaben im Buchungsanfrageformular sind weder vertraglich noch gesetzlich vorgeschrieben, jedoch erforderlich, um Ihre Buchung ordnungsgemäß bearbeiten zu können. Sofern Sie die vorhandenen Pflichtfelder nicht oder nicht vollständig ausfüllen, kann die von Ihnen gewünschte Buchungsanfrage nicht durch uns bearbeitet werden.

Callback-Service

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen in unser Callback-Formular eingegebenen Daten, wie z.B. Telefonnummer und Name, werden wir zur Erfüllung des nachfolgenden Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung durch eindeutige bestätigende Handlung bzw. Verhaltensweise oder ausdrückliche Einwilligung)

  • Zweck der Datenverarbeitung

    Der Zweck der Datenverarbeitung besteht in der Bereitstellung und Durchführung des Rückruf-Services bzw. der Erfüllung der Rückrufbitte.

  • Dauer der Speicherung

    Die Löschung der Daten erfolgt, sobald diese für die Bearbeitung Ihres Rückrufwunsches nicht mehr erforderlich sind.

  • Widerrufs- und Löschungsmöglichkeit

    Sie können Ihre Einwilligung zur Kontaktaufnahme jederzeit gemäß Art. 7 Abs. 3 DSGVO widerrufen. Die bis zum Zeitpunkt des Widerrufs erfolgte Verarbeitung bleibt hiervon jedoch unberührt. Im Hinblick auf die weiteren Rechte verweisen wir auf die Übersicht am Ende dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Alle von Ihnen in unser Callback-Formular eingegebenen Daten, insbesondere den von Ihnen verfassten Eintrag und weiteren Angaben wie z.B. ihren Namen / ihr Pseudonym oder ihre E-Mail Adresse, werden wir zur Erfüllung des unten genannten Zwecks verarbeiten.

Kontaktformular(e)

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen in unsere Kontaktformulare eingegebenen Daten, die Sie in die Eingabemaske des Kontaktformulars eingetragen haben, werden wir zur Erfüllung des unten genannten Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung durch eindeutige bestätigende Handlung bzw. Verhaltensweise oder ausdrückliche Einwilligung)

  • Zweck der Datenverarbeitung

    Die über unser Kontaktformular bzw. über unsere Kontaktformulare aufgenommenen Daten werden wir nur für die Bearbeitung der konkreten Kontaktanfrage verwenden, die durch das Kontaktformular eingeht.

  • Dauer der Speicherung

    Nach Bearbeitung Ihrer Anfrage werden die erhobenen Daten unverzüglich gelöscht, soweit keine gesetzlichen Aufbewahrungsfristen bestehen.

  • Widerrufs- und Löschungsmöglichkeit

    Die Widerrufs- und Löschungsmöglichkeiten richten sich nach den nachfolgend in dieser Datenschutzerklärung geschilderten generellen Regelungen zum datenschutzrechtlichen Widerrufsrecht und Löschungsanspruch.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Nutzung der Kontaktformulare erfolgt auf freiwilliger Basis und ist weder vertraglich noch gesetzlich vorgeschrieben. Sie sind nicht verpflichtet mit uns über das Kontaktformular Kontakt aufzunehmen, sondern können auch die weiteren auf unserer Seite angegebenen Kontaktmöglichkeiten nutzen. Sofern Sie unser Kontaktformular nutzen möchten, müssen Sie die als Pflichtangaben gekennzeichneten Felder ausfüllen. Sofern Sie die notwendigen Angaben des Kontaktformulars nicht mit Inhalt befüllen, können Sie entweder die Anfrage nicht absenden, oder wir können Ihre Anfrage leider nicht bearbeiten.

Live-Chat-Funktion

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen in unserem Live-Chat eingegebenen Daten wie z.B. Name und Inhalte werden wir zur Erfüllung des unten genannten Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung durch eindeutige bestätigende Handlung bzw. Verhaltensweise oder ausdrückliche Einwilligung)

  • Zweck der Datenverarbeitung

    Die über unseren Live-Chat aufgenommenen Daten werden wir nur für die Bearbeitung von Anfragen, die durch unseren Live-Chat eingehen, verwenden.

  • Dauer der Speicherung

    Nach Bearbeitung Ihrer Anfrage, die bei uns in unserem Live-Chat eingegangen ist, werden die erhobenen Daten unverzüglich gelöscht, soweit keine gesetzlichen Aufbewahrungsfristen bestehen.

  • Widerrufs- und Löschungsmöglichkeit

    Sie können Ihre Einwilligung zur Kontaktaufnahme jederzeit gemäß Art. 7 Abs. 3 DSGVO widerrufen. Die bis zum Zeitpunkt des Widerrufs erfolgte Verarbeitung bleibt hiervon jedoch unberührt. Im Hinblick auf die weiteren Rechte verweisen wir auf die Übersicht am Ende dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Nutzung des Live-Chats erfolgt auf freiwilliger Basis und ist weder vertraglich noch gesetzlich vorgeschrieben. Sie sind nicht verpflichtet mit uns über den Chat Kontakt aufzunehmen. Sofern Sie die notwendigen Angaben nicht mit Inhalt befüllen, können Sie unseren Live-Chat nicht nutzen.

Login-Bereich

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen bei uns eingegebenen Registrierungs- und Login-Daten werden wir zur Erfüllung des unten genannten Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. b DSGVO (Durchführung (vor)vertraglicher Maßnahmen)

  • Zweck der Datenverarbeitung

    Sie haben auf unserer Internetseite die Möglichkeit einen separaten Login-Bereich zu nutzen. Damit wir ihre Berechtigung zur Nutzung des geschützten Bereich bzw. der geschützten Dokumente prüfen können, müssen Sie ihre Login Daten (E-Mail bzw. Nutzername und Passwort) in das entsprechende Formular eingeben.

  • Dauer der Speicherung

    Die erhobenen Daten werden so lange gespeichert, wie Sie ein Benutzerkonto bei uns unterhalten.

  • Widerspruchs- und Löschungsmöglichkeit

    Welche Rechte ihnen zustehen, und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Nutzung des Login-Bereichs auf unserer Seite ist zur Nutzung des geschützten Bereiches vertraglich vorgeschrieben. Die Nutzung des durch den Login-Bereich geschützten Inhalts ist ohne die Eingabe der personenbezogenen Daten nicht möglich. Sofern Sie unseren Login-Bereich nutzen möchten, müssen Sie die als Pflichtangaben gekennzeichneten Felder (Benutzername und Passwort) ausfüllen. Die Eingabe der Daten setzt das Bestehen eines Nutzerkontos voraus. Eine Anmeldung ist nicht möglich, wenn die von Ihnen eingegebenen Daten falsch sind. Sofern die Daten von Ihnen falsch oder nicht eingegeben werden, kann der geschützte Bereich nicht genutzt werden. Der Rest der Seite ist jedoch weiterhin ohne Login nutzbar.

Formular zur Newsletter-Anmeldung

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Durch die Anmeldung zum Newsletter auf unserer Website erhalten wir die im Anmeldefeld durch Sie eingegebene E-Mailadresse und ggf. weitere Kontaktdaten, sofern Sie uns diese über das Newsletter-Anmeldeformular mitteilen.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung durch eindeutige bestätigende Handlung bzw. Verhaltensweise oder ausdrückliche Einwilligung)

  • Zweck der Datenverarbeitung

    Die in der Anmeldemaske unseres Newsletters aufgenommenen Daten werden von uns ausschließlich für den Versand unseres Newsletters verwendet, in dem wir über alle unsere Leistungen und unsere Neuigkeiten informieren. Wir werden Ihnen nach der Anmeldung eine Bestätigungs-E-Mail senden, in der ein Link enthalten ist, den Sie anklicken müssen, um die Anmeldung zu unserem Newsletter abzuschließen (Double-Opt-In).

  • Dauer der Speicherung

    Unser Newsletter kann jederzeit durch Anklicken des Abmelde-Links, der auch in jedem Newsletter enthalten ist, abbestellt werden. Ihre Daten werden unverzüglich nach der Abmeldung von uns gelöscht. Ebenso werden Ihre Daten im Falle einer nicht abgeschlossenen Anmeldung unverzüglich von uns gelöscht. Wir behalten uns die Löschung ohne Angaben von Gründen und ohne vorherige oder nachträgliche Information vor.

  • Widerrufs- und Beseitigungsmöglichkeit

    Sie können Ihre Einwilligung gemäß Art. 7 Abs. 3 DSGVO jederzeit widerrufen. Die bis zum Zeitpunkt des Widerrufs erfolgte Verarbeitung bleibt hiervon jedoch unberührt. Im Hinblick auf die weiteren Rechte verweisen wir auf die Übersicht am Ende dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Sofern Sie unseren Newsletter nutzen möchten, müssen Sie die als Pflichtangaben gekennzeichneten Felder ausfüllen, und uns die E-Mail Adresse durch anklicken des Double-Opt In Links bestätigen. Die Angaben zur Newsletteranmeldung sind weder notwendig, um einen Vertrag mit uns einzugehen, noch gesetzlich verpflichtend. Sie dienen ausschließlich der Versendung unseres Newsletters. Sofern Sie die notwendigen Angaben nicht mit Inhalt befüllen, können wir ihnen unseren Newsletterservice leider nicht zur Verfügung stellen.

Terminbuchungsformular

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen im Rahmen unseres Terminbuchungsformulars eingegebenen Daten werden wir zur Erfüllung des unten genannten Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. b DSGVO (Durchführung (vor)vertraglicher Maßnahmen)

  • Zweck der Datenverarbeitung

    Die über unser Terminbuchungsformular aufgenommenen Daten werden wir nur für die Bearbeitung von Terminanfragen, die durch das Terminbuchungsformular eingehen, verwenden.

  • Dauer der Speicherung

    Ihre Terminbuchung wird bei uns unverzüglich nach Ablauf von 12 Monaten, nachdem der Termin angesetzt war, gelöscht, soweit keine gesetzlichen Aufbewahrungspflichten bestehen. Wir behalten uns die Löschung ohne Angaben von Gründen und ohne vorherige oder nachträgliche Information vor.

  • Widerspruchs- und Löschungsmöglichkeit

    Welche Rechte Ihnen zustehen und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Nutzung unseres Terminbuchungsformulars ist zwar weder vertraglich noch gesetzlich vorgeschrieben, jedoch notwendig sofern Sie online einen Termin bei uns buchen möchten. Zur Online-Buchung müssen Sie gewisse Pflichtangaben machen. Sofern Sie die Pflichtangaben nicht vollständig ausfüllen, kann Ihre Terminbuchung nicht angenommen oder bearbeitet werden.

Whatsapp-Newsletter

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Die von Ihnen bei der Bestellung des Whats-App-Newsletters eingegebenen Daten werden wir zur Erfüllung des unten genannten Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung durch eindeutige bestätigende Handlung bzw. Verhaltensweise oder ausdrückliche Einwilligung)

  • Zweck der Datenverarbeitung

    Die von Ihnen im Rahmen der Anmeldung des WhatsApp Newsletter aufgenommenen Daten werden von uns ausschließlich für die Aufnahme in unsere Broadcastliste, die der Versendung regelmäßiger Informationen dient, genutzt. Die von Ihnen zur Verfügung gestellte Handynummer wird hierbei nicht an Dritte weitergegeben, sondern lediglich im Rahmen unseres WhatsApp-Newsletters verwendet, in dem wir über alle unsere Leistungen informieren.

    Die zur Verfügung gestellte Nummer wird hierbei ausdrücklich nicht zu Werbeanrufen verwendet. Andere Abonnenten des WhatsApp-Newsletters haben über diese Funktion keinen Zugriff auf Ihre Handynummer.

    Bei dem WhatsApp-Newsletter handelt es sich um die Verwendung der Broadcastfunktion von WhatsApp, die aber nicht mit der Gruppen-Funktion identisch ist. Im Rahmen des WhatsApp-Newsletters wird die von uns generierte Nachricht an alle Empfänger der Broadcastliste per WhatsApp versandt.

    Um am Newsletter teilzunehmen, ist es erforderlich, dass Sie die von uns angegebene Nummer in Ihre WhatsApp-Kontaktliste eintragen und uns zusätzlich über unser „WhatsApp-Newsletter Formular“ Ihre Handynummer mitteilen.

  • Dauer der Speicherung

    Ihre Handynummer und alle weiteren von Ihnen bei der Bestellung unseres WhatsApp-Newsletters angegebenen personenbezogenen Daten werden von uns für die Dauer des Abonnements gespeichert. Wir behalten uns die Löschung ohne Angaben von Gründen und ohne vorherige oder nachträgliche Information vor.

  • Widerrufs- und Beseitigungsmöglichkeit

    Unser WhatsApp Newsletter kann jederzeit durch Anklicken des Abmelde-Links oder Übersendung einer entsprechenden Abmeldenachricht an uns abbestellt werden. Lediglich die Löschung unserer Nummer aus Ihrer Kontaktliste ist hierfür nicht ausreichend. Ihre Daten werden unverzüglich nach der Abmeldung von uns gelöscht. Ebenso werden Ihre Daten im Falle einer nicht abgeschlossenen Anmeldung innerhalb von sechs Monaten von uns gelöscht. Sie können Ihre Einwilligung gemäß Art. 7 Abs. 3 DSGVO jederzeit widerrufen. Die bis zum Zeitpunkt des Widerrufs erfolgte Verarbeitung bleibt hiervon jedoch unberührt. Im Hinblick auf die weiteren Rechte verweisen wir auf die Übersicht am Ende dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Angabe ihrer Telefonnummer ist zwar weder vertraglich noch gesetzlich vorgeschrieben, jedoch notwendig damit wir Ihnen unseren Whatsapp Newsletterservice zur Verfügung stellen können. Ohne die entsprechende Angabe erhalten Sie keinen Newsletter. Auch kann es sein, dass Sie unseren Newsletter nicht erhalten, wenn Sie die von uns angegebene Telefonnummer nicht in ihre Kontaktliste eintragen.

Online-Widerrufsformular

  • Umfang der Verarbeitung personenbezogener Daten und erhobene personenbezogene Daten

    Die von Ihnen in die Formularfelder des Online-Widerrufsformulars eingegebenen Daten wie z.B. Namen, Adresse, etc. werden wir zur Erfüllung des nachfolgend geschilderten Zwecks verarbeiten.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Art. 6 Abs. 1 lit. b DSGVO (Durchführung (vor)vertraglicher Maßnahmen)

  • Zweck der Datenverarbeitung

    Die Erhebung der Daten ist notwendig, um Ihnen die Möglichkeit zu bieten ihren Widerruf online zu erklären. Durch die Eingabe der Daten können Sie ihr gesetzliches Widerrufsrecht direkt und unmittelbar online wahrnehmen.

  • Dauer der Speicherung

    Die im Rahmen unseres Online-Widerrufformulars erhobenen Daten werden unverzüglich nach Abschluss der Bearbeitung des Widerrufs gelöscht, es sei denn, es bestehen gesetzliche Aufbewahrungspflichten.

  • Widerspruchs- und Löschungsmöglichkeit

    Welche Rechte Ihnen zustehen, und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

  • Erforderlichkeit der Angabe personenbezogener Daten

    Die Angabe Ihrer Daten im Rahmen des Online-Widerrufsformulars ist im Hinblick auf die Pflichtangaben zur Ausübung des Widerrufs über das ausfüllbare Formular rechtlich notwendig. Selbstverständlich können Sie auch jederzeit das Muster-Widerrufsformular oder andere gesetzlich zulässige Möglichkeiten des Widerrufs nutzen. Sofern Sie nicht alle Angaben ordnungsgemäß ausfüllen, kann es sein, dass Ihr über das Online-Widerrufsformular erklärter Widerruf uns gegenüber nicht wirksam wird.

Automatisierte Bonitätsprüfung / Scoring

Wenn Sie mit uns einen Vertrag abschließen möchten, behalten wir uns vor, eine ausschließlich automatisierte Verarbeitung Ihrer personenbezogenen Daten vorzunehmen, um Ihre Bonität zu überprüfen. Zu einer solchen automatisierten Entscheidung sind wir gem. Art. 22 Abs. 2 a DSGVO auch berechtigt. Ob der Vertrag abgeschlossen werden kann oder nicht hängt hierbei vom Ergebnis der automatisierten Bonitätsprüfung ab. Bei einer Bonitätsprüfung werden statistische Wahrscheinlichkeiten eines Zahlungsausfalls berechnet. Die Bonitätsauskunft kann Wahrscheinlichkeitswerte (Score-Werte) beinhalten, die auf Basis wissenschaftlich anerkannter mathematisch-statistischer Verfahren berechnet werden. Dabei wird mittels einer Vielzahl von Merkmalen, wie beispielsweise Einkommen, Anschriftendaten, Beruf, Familienstand und bisherigem Zahlungsverhalten, auf das zukünftige Zahlungsausfallrisiko des Kunden geschlossen. Das Ergebnis wird in Form eines Zahlungswertes (sog. Score) ausgedrückt. Die so erhaltenen Informationen sind Basis unserer Entscheidung über die Begründung, Durchführung oder Beendigung eines Vertragsverhältnisses. Sofern Sie glauben, dass Sie aufgrund der Bonitätsprüfung zu Unrecht vom Vertragsabschluss ausgeschlossen worden sind, können Sie uns gerne per Mail Ihren Standpunkt erläutern. Wir werden die automatisierte Entscheidung dann gem. Art. 22 Abs. 3 DSGVO im konkreten Einzelfall nachprüfen. Um die Bonitätsprüfung durchführen zu können dürfen wir gem. Art. 6 Abs. 1 lit. b DSGVO Ihre personenbezogenen Daten speichern und verarbeiten.

Wir übermitteln aufgrund des sich anbahnenden Vertrages Ihre Daten in den nachfolgend aufgeführten Fällen an den/die nachfolgende(n) Anbieter:

  • Creditreform Saarbrücken Pirmasens Dr. Uthoff KG :

    Unser Unternehmen prüft regelmäßig bei Vertragsabschlüssen und in bestimmten Fällen, in denen ein berechtigtes Interesse vorliegt, auch bei Bestandskunden Ihre Bonität. Dazu arbeiten wir mit der Creditreform Saarbrücken Pirmasens Dr. Uthoff KG , Karcherstr. 10, 66111 Saarbrücken, Deutschland (https://www.creditreform.de/saarbruecken) zusammen, von der wir die dazu benötigten Daten erhalten. Im Auftrage von Creditreform Saarbrücken Pirmasens Dr. Uthoff KG teilen wir Ihnen bereits vorab dazu folgende Informationen gem. Art. 14 EU-DSGVO mit:

    Die Creditreform Saarbrücken Pirmasens Dr. Uthoff KG ist eine Konsumentenauskunftei. Sie betreibt eine Datenbank, in der Bonitätsinformationen über Privatpersonen gespeichert werden.

    Auf dieser Basis erteilt Creditreform Saarbrücken Pirmasens Dr. Uthoff KG Bonitätsauskünfte an ihre Kunden. Zu den Kunden gehören beispielsweise Kreditinstitute, Leasinggesellschaften, Versicherungen, Telekommunikationsunternehmen, Unternehmen des Forderungsmanagements, Versand-, Groß- und Einzelhandelsfirmen sowie andere Unternehmen, die Waren oder Dienstleistungen liefern bzw. erbringen. Im Rahmen der gesetzlichen Bestimmungen wird ein Teil der in der Auskunftsdatenbank vorhandenen Daten auch für die Belieferung anderer Firmendatenbanken, u. a. zur Verwendung für Adress-Handelszwecke genutzt.

    In der Datenbank von Creditreform Saarbrücken Pirmasens Dr. Uthoff KG werden insbesondere Angaben gespeichert über den Namen, die Anschrift, das Geburtsdatum, ggf. die E-Mailadresse, das Zahlungsverhalten und die Beteiligungsverhältnisse von Personen. Zweck der Verarbeitung der gespeicherten Daten ist die Erteilung von Auskünften über die Kreditwürdigkeit der angefragten Person. Rechtsgrundlage für die Verarbeitung ist Art. 6 Abs. 1f EU-DSGVO. Auskünfte über diese Daten dürfen danach nur erteilt werden, wenn ein Kunde ein berechtigtes Interesse an der Kenntnis dieser Informationen glaubhaft darlegt. Sofern Daten in Staaten außerhalb der EU übermittelt werden, erfolgt dies auf Basis der sog. „Standardvertragsklauseln“, die Sie unter folgendem Link:

    http://eur-lex.europa.eu/legal-content/DE/TXT/PDF/?uri=CELEX:32001D0497&from=DE

    einsehen oder sich von dort zusenden lassen können.

    Die Daten werden solange gespeichert, wie ihre Kenntnis für die Erfüllung des Zwecks der Speicherung notwendig ist. Notwendig ist die Kenntnis in der Regel für eine Speicherdauer von zunächst drei Jahren. Nach Ablauf wird geprüft, ob eine Speicherung weiterhin notwendig ist, andernfalls werden die Daten taggenau gelöscht. Im Falle der Erledigung eines Sachverhalts werden die Daten drei Jahre nach Erledigung taggenau gelöscht. Eintragungen im Schuldnerverzeichnis werden gemäß § 882e ZPO nach Ablauf von drei Jahren seit dem Tag der Eintragungsanordnung taggenau gelöscht.

    Berechtigte Interessen im Sinne des Art. 6 Abs. 1f EU-DSGVO können sein: Kreditentscheidung, Geschäftsanbahnung, Beteiligungsverhältnisse, Forderung, Bonitätsprüfung, Versicherungsvertrag, Vollstreckungsauskunft. Sie haben gegenüber der Creditreform Saarbrücken Pirmasens Dr. Uthoff KG ein Recht auf Auskunft über die dort zu Ihrer Person gespeicherten Daten. Soweit die über Sie gespeicherten Daten falsch sein sollten, haben Sie einen Anspruch auf Berichtigung oder Löschung. Kann nicht sofort festgestellt werden, ob die Daten falsch oder richtig sind, haben Sie bis zur Klärung einen Anspruch auf Sperrung der jeweiligen Daten. Sind Ihre Daten unvollständig, so können Sie deren Vervollständigung verlangen.

    Sofern Sie Ihre Einwilligung zur Verarbeitung der bei Creditreform Saarbrücken Pirmasens Dr. Uthoff KG gespeicherten Daten gegeben haben, haben Sie das Recht, diese Einwilligung jederzeit zu widerrufen. Durch den Widerruf wird die Rechtmäßigkeit der aufgrund Ihrer Einwilligung bis zu einem etwaigen Widerruf erfolgten Verarbeitung Ihrer Daten nicht berührt.

    Sollten Sie Einwände, Wünsche oder Beschwerden zum Datenschutz haben, können Sie sich jederzeit an den Datenschutzbeauftragten der Creditreform Saarbrücken Pirmasens Dr. Uthoff KG wenden. Dieser wird Ihnen schnell und vertrauensvoll in allen Fragen des Datenschutzes weiterhelfen. Sie können sich auch über die Verarbeitung der Daten durch Creditreform Saarbrücken Pirmasens Dr. Uthoff KG bei dem für Ihr Bundesland zuständigen Landesbeauftragten für Datenschutz beschweren.

    Die Daten, die Creditreform Saarbrücken Pirmasens Dr. Uthoff KG zu Ihnen gespeichert hat, stammen aus öffentlich zugänglichen Quellen, von Inkassounternehmen und von deren Kunden.

    Um Ihre Bonität zu beschreiben, bildet Creditreform Saarbrücken Pirmasens Dr. Uthoff KG zu Ihren Daten einen Scorewert. In den Scorewert fließen Daten zu Alter und Geschlecht, Adressdaten und teilweise Zahlungserfahrungsdaten ein. Diese Daten fließen mit unterschiedlicher Gewichtung in die Scorewertberechnung ein. Die Creditreform Saarbrücken Pirmasens Dr. Uthoff KG Kunden nutzen die Scorewerte als Hilfsmittel bei der Durchführung eigener Kreditentscheidungen.

    Widerspruchsrecht:

    Die Verarbeitung der bei Creditreform Saarbrücken Pirmasens Dr. Uthoff KG gespeicherten Daten erfolgt aus zwingenden schutzwürdigen Gründen des Gläubiger- und Kreditschutzes, die Ihre Interessen, Rechte und Freiheiten regelmäßig überwiegen oder dient der Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen. Nur bei Gründen, die sich aus einer bei Ihnen vorliegenden besonderen Situation ergeben und nachgewiesen werden müssen, können Sie der Verarbeitung Ihrer Daten widersprechen. Liegen solche besonderen Gründe nachweislich vor, werden die Daten nicht mehr verarbeitet. Wenn Sie der Verarbeitung Ihrer Daten für Werbe- und Marketingzwecke widersprechen, werden die Daten für diese Zwecke nicht mehr verarbeitet.

    Verantwortlich im Sinne des Art. 4 Nr. 7 EU-DSGVO ist die Creditreform Saarbrücken Pirmasens Dr. Uthoff KG , Karcherstr. 10, 66111 Saarbrücken, Deutschland (https://www.creditreform.de/saarbruecken). Sie erreichen Creditreform Saarbrücken Pirmasens Dr. Uthoff KG hinsichtlich aller Fragen unter folgenden Kontaktdaten Tel.: +49 (0) 681 / 30 12 - 0, Fax: +49 (0) 681 / 30 12 - 60, E-Mail: info@saarbruecken.creditreform.de

    Den zuständigen Datenschutzbeauftragten erreichen Sie unter folgenden Kontaktdaten: Creditreform Saarbrücken Pirmasens Dr. Uthoff KG , Datenschutzbeauftragter, Karcherstr. 10, 66111 Saarbrücken, Deutschland, https://www.creditreform.de/saarbruecken.

  • Automatische Identitäts- und Bonitätsprüfung bei der Auswahl von Klarna-Zahlungsarten

    • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

      Wenn Sie sich für die Zahlungsart Kauf auf Rechnung mit Klarna-Rechnungskauf oder die Zahlungsart Ratenkauf über Klarna-Ratenkauf oder Klarna Sofort entscheiden, werden Sie im Bestellprozess gebeten, in die Übermittlung der für die Abwicklung der Zahlung und eine Identitäts- und Bonitätsprüfung erforderlichen Daten an die Klarna AB, Sveavägen 46, 11134 Stockholm, Schweden (nachfolgend: Klarna) einzuwilligen. Sofern Sie Ihre Einwilligung erteilen, erhält Klarna von uns folgende Daten: Vor- und Nachname, Straße, Hausnummer, Postleitzahl, Ort, Geburtsdatum, Telefonnummer sowie die Daten, die im Zusammenhang mit Ihrer Bestellung stehen.

    • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

      Art. 6 Abs. 1 lit. b DSGVO (Durchführung (vor)vertraglicher Maßnahmen)

    • Zweck der Datenverarbeitung

      Zum Zwecke der Identitäts- und Bonitätsprüfung übermittelt Klarna Daten an Wirtschaftsauskunfteien (Auskunfteien) und erhält von diesen Auskünfte sowie ggf. Bonitätsinformationen auf Basis mathematisch-statistischer Verfahren, in deren Berechnung unter anderem Anschriftendaten einfließen (sog. Score-Werte). Dadurch erhält Klarna Informationen über die statistische Wahrscheinlichkeit eines Zahlungsausfalls, welche Basis der Entscheidung über die Begründung, Durchführung oder Beendigung des Vertragsverhältnisses sind. Die Auswahlmöglichkeit einer der angebotenen Zahlungsarten vor Vertragsschluss ist jedoch nicht abhängig von derartigen Informationen.

      Bei den Auskunfteien handelt es sich um die nachfolgenden Unternehmen:

      • Bürgel Wirtschaftsinformationen GmbH & Co. KG, Postfach 5001 66, 22701 Hamburg
      • Creditreform Boniversum GmbH, Hellersbergstraße 11 41460 Neuss
      • Deltavista GmbH, Freisinger Landstr. 74, 80939 München
      • Arvato Infoscore Consumer Data GmbH / Infoscore Consumer Data GmbH, Rheinstraße 99, 76532 Baden-Baden
      • SCHUFA Holding AG, Kormoranweg 5, 65201 Wiesbaden

      Detaillierte Informationen können Sie den Datenschutzbestimmungen (https://cdn.klarna.com/1.0/shared/content/policy/data/de_de/data_protection.pdf) sowie den Nutzungsbedingungen (https://klarna.com/de/AGB) von Klarna entnehmen.

    • Dauer der Speicherung

      Wir werden die relevanten Daten für die Abwicklung der Zahlung solange speichern, wie es für die Durchführung der Transaktion notwendig ist. Soweit die Daten gesetzlichen Aufbewahrungspflichten unterfallen, erfolgt die Löschung nach Ablauf der Aufbewahrungspflicht. Die Dauer der Speicherung der Daten durch Klarna ergibt sich aus der Datenschutzerklärung von Klarna: https://cdn.klarna.com/1.0/shared/content/policy/data/de_de/data_protection.pdf

    • Widerspruchs- und Löschungsmöglichkeit

      Sie können der Verarbeitung jederzeit gem. Art. 21 DSGVO widersprechen und eine Löschung der Daten gem. Art. 17 DSGVO verlangen. Welche Rechte Ihnen zustehen und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

  • Automatische Identitäts- und Bonitätsprüfung bei Auswahl der Zahlungsart "PayPal"

    • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

      Falls Sie als Zahlungsart "PayPal" ausgewählt haben, leiten wir Ihre im Rahmen der Bestellung erhobenen personenbezogenen Kundendaten im Rahmen der Zahlungsabwicklung an die Firma PayPal (Europe) S.à r.l. et Cie, S.C.A., 22-24 Boulevard Royal, L-2449 Luxembourg (nachfolgend "PayPal"), weiter. Sofern Sie Ihre Einwilligung erteilen, sind die nachfolgenden Daten von der Datenübertragung betroffen: Vor- und Nachname, Straße, Hausnummer, Postleitzahl, Ort, Geburtsdatum, Telefonnummer sowie die Daten, die in Zusammenhang mit Ihrer Bestellung stehen.

    • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

      Art. 6 Abs. 1 lit. b DSGVO (Durchführung (vor)vertraglicher Maßnahmen)

    • Zweck der Datenverarbeitung

      PayPal führt bei Auswahl der Zahlungsmethode "PayPal" eine Bonitätsprüfung durch. Dabei werden mathematisch-statistische Verfahren eingesetzt, um ein Rating hinsichtlich der Wahrscheinlichkeit eines Zahlungsausfalles zu berechnen (sog. Berechnung eines Scoring-Wertes). PayPal legt den berechneten Scoring-Wert seiner Entscheidung über die Bereitstellung der jeweiligen Zahlungsmethoden zu Grunde. Die Berechnung eines Scoring-Wertes erfolgt nach anerkannten wissenschaftlichen Verfahren. Auf die Datenschutzerklärung von PayPal wird ergänzend verwiesen: https://www.paypal.com/de/webapps/mpp/ua/privacy-full

    • Dauer der Speicherung

      Wir werden die relevanten Daten für die Abwicklung der Zahlung solange speichern, wie es für die Durchführung der Transaktion notwendig ist. Soweit die Daten gesetzlichen Aufbewahrungspflichten unterfallen, erfolgt die Löschung nach Ablauf der Aufbewahrungspflicht. Die Dauer der Speicherung der Daten durch PayPal ergibt sich aus der Datenschutzerklärung von PayPal: https://www.paypal.com/de/webapps/mpp/ua/privacy-full

    • Widerspruchs- und Löschungsmöglichkeit

      Sie können der Verarbeitung jederzeit gem. Art. 21 DSGVO widersprechen und eine Löschung der Daten gem. Art. 17 DSGVO verlangen. Welche Rechte Ihnen zustehen und wie Sie diese geltend machen, finden Sie im unteren Bereich dieser Datenschutzerklärung.

Statistische Auswertung der Besuche dieser Internetseite - Webtracker

Wir erheben, verarbeiten und speichern bei dem Aufruf dieser Internetseite oder einzelner Dateien der Internetseite folgende Daten: IP-Adresse, Webseite, von der aus die Datei abgerufen wurde, Name der Datei, Datum und Uhrzeit des Abrufs, übertragene Datenmenge und Meldung über den Erfolg des Abrufs (sog. Web-Log). Diese Zugriffsdaten verwenden wir ausschließlich in nicht personalisierter Form für die stetige Verbesserung unseres Internetangebots und zu statistischen Zwecken. Wir setzen zur Auswertung der Besuche dieser Internetseite zudem noch folgende Webtracker ein:

  • Custom Audiences

    Wir verwenden auf unserer Seite den Dienst Custom Audiences des Unternehmens Meta Platforms Ireland Ltd., Merrion Road, D04 X2K5 Dublin 4, Irland, E-Mail: impressum-support@support.facebook.com, Website: http://facebook.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Bei Facebook Custom Audience handelt es sich um ein Werbetool der Firma Facebook, mit dem gezielt Werbekampagnen an Seitenbesucher vorgenommen werden können.

    Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://www.facebook.com/privacy/policy/.

    Der Anbieter bietet unter https://www.facebook.com/privacy/policy/ zusätzlich eine Opt-Out Möglichkeit an.

  • Facebook Connect

    Wir verwenden auf unserer Seite den Dienst Facebook Connect des Unternehmens Meta Platforms Ireland Ltd., Merrion Road, D04 X2K5 Dublin 4, Irland, E-Mail: impressum-support@support.facebook.com, Website: http://www.facebook.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Über Facebook Connect können Nutzer ihr Facebook-Profil zur vereinfachten Anmeldung bei anderen Webdiensten nutzen.

    Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://www.facebook.com/privacy/policy/.

    Der Anbieter bietet unter https://www.facebook.com/privacy/policy/ zusätzlich eine Opt-Out Möglichkeit an.

  • Google

    Wir verwenden auf unserer Seite den Dienst Google des Unternehmens Google Ireland Limited, Gordon House, Barrow Street, 4 Dublin, Irland, E-Mail: support-deutschland@google.com, Website: https://www.google.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Wir verwenden Google um auf der Internetseite weitere Dienste von Google nachladen zu können. Der Dienst wird dazu verwendet weitere Google-Dienste bereitstellen zu können, wie z.B. der benötigten Datenverarbeitung bei der Bereitstellung von Streams und Schriftarten und relevante Inhalte der Google-Suche. Er wird technisch benötigt, um die bereits Google vorliegenden Informationen des Seitenbesuchers zwischen den Google-Diensten austauschen zu können und dem Seitenbesucher angepasst an sein Google-Konto individuelle Inhalte bereitstellen zu können.

    Zur Verarbeitung selbst erhebt der Dienst bzw. wir folgende Daten: Hintergrunddaten, die im Google-Benutzerkonto oder bei anderen Google-Diensten über den Seitenbesucher gespeichert sind, Hintergrunddaten zur Bereitstellung von Google-Diensten wie z.B. Streamingdaten oder Werbedaten, Daten über den Umgang des Seitennutzers mit der Google-Suche, Angaben zum verwendeten Endgerät, zur IP-Adresse und zum Browser des Users und weitere Daten von Google-Diensten zur Bereitstellung der Google-Dienste bezogen auf unsere Webseite.

    Sofern der Dienst auf unserer Website aktiv geschaltet ist, stellt unsere Website eine Verbindung zu den Servern des Unternehmens Google Ireland Limited her und überträgt die benötigten Daten. Im Rahmen der Auftragsverarbeitung kann es auch zu einer Übermittlung von personenbezogenen Daten an die Server des Unternehmens Google LLC, 1600 Amphitheatre Parkway, 94043 Mountain View, Vereinigte Staaten kommen. Beim Einsatz des Google-Dienstes auf unserer Website werden von Google gegebenenfalls Informationen von weiteren Google-Diensten übermittelt und verarbeitet, um Hintergrunddienste für die Anzeige und Datenverarbeitung der von Google bereitgestellten Dienste zu erbringen. Hierzu erfolgt gegebenenfalls auch eine Datenübertragung an die Google-Dienste Google Apis, Doubleclick, Google Cloud, und Google Ads und Google Fonts gemäß der Google-Datenschutzerklärung. Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://policies.google.com/privacy.

    Der Anbieter bietet unter https://support.google.com/My-Ad-Center-Help/answer/12155451?hl=de zusätzlich eine Opt-Out Möglichkeit an.

  • Google Ads

    Wir verwenden auf unserer Seite den Dienst Google Ads des Unternehmens Google Ireland Limited, Gordon House, Barrow Street, 4 Dublin, Irland, E-Mail: support-deutschland@google.com, Website: https://www.google.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Google Ads ist ein Werbesystem, mit dem wir im Internet auf externen Webseiten Werbeanzeigen schalten können, um unsere Kunden über unsere Leistungen zu informieren. Google Ads zeigt nach von uns eingestellten Parametern auf externen Webseiten individuell auf unseren Kundenkreis zugeschnittene Werbung an, die zu unserer Webseite führt. Sofern der Seitenbesucher auf die Google Ads-Werbung klickt, gelangt er auf unsere Webseite. Um die Google Ads-Werbeanzeigen hinsichtlich ihres Erfolges und der Vergütung messen zu können, führt Google Ads beim Aufruf unserer Webseite eine Messung über den Erfolg der Werbemaßnahme durch. unsere Webseite verarbeitet die von Google Ads bereitgestellten Daten, um unsere Werbemaßnahmen analysieren und verbessern zu können, sowie um eine ggf. anfallende Vergütung zu berechnen. Eventuell werden ihre Daten bei entsprechender Einwilligung auch zum Zwecke des Remarketing eingesetzt.

    Zur Verarbeitung selbst erhebt der Dienst bzw. wir folgende Daten: Daten zu Werbeinteressen der Seitenbesucher, Interaktionen von Seitenbesuchern mit Werbung in Bezug auf unsere Webseite, Daten über den Aufruf unserer Webseite durch Seitenbesucher, die zuvor auf Google Ads-Werbung geklickt haben und zu unserer Webseite gelangt sind, Daten zum verwendeten Endgerät, zur IP-Adresse und zum Browser des Users und weitere Daten von Google-Diensten zur Bereitstellung und Verfeinerung der Google-Werbung bezogen auf unsere Webseite.

    Sofern der Dienst auf unserer Website aktiv geschaltet ist, stellt unsere Website eine Verbindung zu den Servern des Unternehmens Google Ireland Limited her und überträgt die benötigten Daten. Im Rahmen der Auftragsverarbeitung kann es auch zu einer Übermittlung von personenbezogenen Daten an die Server des Unternehmens Google LLC, 1600 Amphitheatre Parkway, 94043 Mountain View, Vereinigte Staaten kommen. Beim Einsatz von Google Ads auf unserer Website werden von Google gegebenenfalls Informationen von weiteren Google-Diensten übermittelt und verarbeitet, um Hintergrunddienste für die Verbesserung und Individualisierung von Google-Werbung bereitzustellen. Hierzu erfolgt gegebenenfalls auch eine Datenverarbeitung durch weitere Google-Dienste wie Google Apis, Google Cloud, Google Ads, Google Analytics, Google Tag Manager, Google Marketing Plattform und Google Fonts gemäß der Google-Datenschutzerklärung in eigener datenschutzrechtlicher Verantwortung von Google. Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen. Weitere Informationen zum Verantwortungsvollen Umgang mit Geschäftsdaten finden Sie unter https://business.safety.google/privacy/.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://policies.google.com/privacy.

    Der Anbieter bietet unter https://support.google.com/My-Ad-Center-Help/answer/12155451?hl=de zusätzlich eine Opt-Out Möglichkeit an.

  • Google Analytics

    Wir verwenden auf unserer Seite den Dienst Google Analytics des Unternehmens Google Ireland Ltd., Gordon House, Barrow Street, 4 Dublin, Irland, E-Mail: support-deutschland@google.com, Website: https://www.google.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Google Analytics ist ein Webtracker, der das Verhalten von Seitenbesuchern und deren Interaktionen mit unserer Website analysiert und uns Auswertungen und Prognosen über die Inhalte und Produkte unserer Webseite und deren Beliebtheit zur Verfügung stellt (sogenanntes Tracking). Wir haben Google Analytics eingebunden, damit der Dienst eine Analyse des Surfverhaltens der Seitennutzer zusammenstellen kann. Hierzu sammelt Google die Seiteninteraktionen von Seitenbesuchern mit unserer Website und ggf. bestehende Informationen die sich aus dem Auslesen von Cookies oder weiterer Speichertechnologien ergeben und bereitet es für uns statistisch auf. Google Analytics setzt Datenverarbeitungstechnologien ein, die eine Verfolgbarkeit von einzelnen Seitenbesuchern und deren Interaktion mit anderen Google-Diensten wie zu Beispiel dem Werbenetzwerk Google Ads ermöglichen. Daten aus weiteren Google-Diensten werden ebenfalls dazu eingesetzt um mittels maschineller Lerntechnologien, modellierter Statistiken und Prognosefunktionen Datenlücken zu schließen und umfangreiche Statistiken zu den Inhalten unserer Webseite zu erstellen. Sofern Google Analytics auf unserer Website aktiv geschaltet ist, werden die von Google Analytics ermittelten Daten an Server des Unternehmens Google Ireland Limited übertragen. Im Rahmen der Auftragsverarbeitung kann es auch zu einer Übermittlung von personenbezogenen Daten an die Server des Mutterkonzerns Google LLC, 1600 Amphitheatre Parkway, 94043 Mountain View, Vereinigte Staaten kommen. Wir führen die Analyse durch Google Analytics durch, um unser Internetangebot ständig zu optimieren und besser verfügbar zu machen. Es handelt sich hierbei um eine sog. Reichweitenmessung.

    Zur Verarbeitung selbst erhebt der Dienst bzw. wir folgende Daten: Daten zu den Interaktionen der Seitenbesucher mit den Inhalten der Website, Daten zum Umgang der auf unserer Website dargestellten Leistungen, Daten von externen Google-Diensten, sofern sie mit unserer Website interagieren wie z.B. Werbedaten oder Daten zum Verhalten in Bezug auf Werbung, Daten zur groben geographischen Herkunft, dem verwendeten Browser, Betriebssystem sowie weiteren Informationen zum verwendeten Endgerät.

    Google Analytics wird die für die Bereitstellung des Webtracking relevanten Daten solange speichern, wie es notwendig ist, um den gebuchten Webservice zu erfüllen. Die Datenerhebung und Speicherung erfolgt anonymisiert. Soweit durch individuelle Interaktionen von Seitenbesuchern die Möglichkeit besteht, zu konkreten Handlungen nachträglich einen Personenbezug herzustellen werden wir die erhobenen Daten dann löschen, wenn der Zweck erreicht ist. Die Daten werden spätestens dann gelöscht, wenn diese keinen gesetzlichen Aufbewahrungspflichten unterfallen. Im Regelfall werden wir diese Daten spätestens nach 12 Monaten löschen. Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://policies.google.com/privacy.

    Der Anbieter bietet unter https://tools.google.com/dlpage/gaoptout?hl=de zusätzlich eine Opt-Out Möglichkeit an.

  • Google Analytics (Google Signals)

    Wir verwenden auf unserer Seite den Dienst Google Analytics (Google Signals) des Unternehmens Google Ireland Ltd., Gordon House, Barrow Street, 4 Dublin, Irland, E-Mail: support-deutschland@google.com, Website: https://www.google.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Google Analytics ist ein Webtracker, der das Verhalten von Seitenbesuchern und deren Interaktionen mit unserer Website analysiert und uns Auswertungen und Prognosen über die Inhalte und Produkte unserer Webseite und deren Beliebtheit zur Verfügung stellt (sogenanntes Tracking). Wir haben Google Analytics eingebunden, damit der Dienst eine Analyse des Surfverhaltens der Seitennutzer zusammenstellen kann. Hierzu sammelt Google die Seiteninteraktionen von Seitenbesuchern mit unserer Website und ggf. bestehende Informationen die sich aus dem Auslesen von Cookies oder weiterer Speichertechnologien ergeben und bereitet es für uns statistisch auf. Google Analytics setzt Datenverarbeitungstechnologien ein, die eine Verfolgbarkeit von einzelnen Seitenbesuchern und deren Interaktion geräteübergreifend und sitzungsunabhängig mit anderen Google-Diensten wie zu Beispiel dem Werbenetzwerk Google Ads ermöglichen. Daten aus weiteren Google-Diensten werden ebenfalls dazu eingesetzt um mittels maschineller Lerntechnologien, modellierter Statistiken und Prognosefunktionen Datenlücken zu schließen und umfangreiche Statistiken zu den Inhalten unserer Webseite zu erstellen. Sofern Google Analytics auf unserer Website aktiv geschaltet ist, werden die von Google Analytics ermittelten Daten an Server des Unternehmens Google Ireland Limited übertragen. Im Rahmen der Auftragsverarbeitung kann es auch zu einer Übermittlung von personenbezogenen Daten an die Server des Mutterkonzerns Google LLC, 1600 Amphitheatre Parkway, 94043 Mountain View, Vereinigte Staaten kommen. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Wir führen die Analyse durch Google Analytics durch, um unser Internetangebot ständig zu optimieren und besser verfügbar zu machen. Es handelt sich hierbei um eine sog. Reichweitenmessung.

    Zur Verarbeitung selbst erhebt der Dienst bzw. wir folgende Daten: Daten zu den Interaktionen der Seitenbesucher mit den Inhalten der Website, Daten zum Umgang der auf unserer Website dargestellten Leistungen, Daten von externen Google-Diensten, sofern sie mit unserer Website interagieren wie z.B. Werbedaten oder Daten zum Verhalten in Bezug auf Werbung, Daten zur groben geographischen Herkunft, dem verwendeten Browser, Betriebssystem sowie weiteren Informationen zum verwendeten Endgerät gegebenenfalls geräteübergreifend und sitzungsunabhängig.

    Google Analytics wird die für die Bereitstellung des Webtracking relevanten Daten solange speichern, wie es notwendig ist, um den gebuchten Webservice zu erfüllen. Die Datenerhebung und Speicherung erfolgt anonymisiert. Soweit durch individuelle Interaktionen von Seitenbesuchern die Möglichkeit besteht, zu konkreten Handlungen nachträglich einen Personenbezug herzustellen, werden wir die erhobenen Daten dann löschen, wenn der Zweck erreicht ist. Die Daten werden spätestens dann gelöscht, wenn diese keinen gesetzlichen Aufbewahrungspflichten unterfallen. Im Regelfall werden wir diese Daten spätestens nach 12 Monaten löschen. Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://policies.google.com/privacy.

    Der Anbieter bietet unter https://tools.google.com/dlpage/gaoptout?hl=de zusätzlich eine Opt-Out Möglichkeit an.

  • Google Tag Manager

    Wir verwenden auf unserer Seite den Dienst Google Tag Manager des Unternehmens Google Ireland Ltd., Gordon House, Barrow Street, 4 Dublin, Irland, E-Mail: support-deutschland@google.com, Website: https://www.google.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Google Tag Manager bietet eine technische Plattform um andere Webtools und Webtracking-Programme mittels sogenannter „Tags“ auszuführen und gebündelt steuern zu können. Google Tag Manager speichert in diesem Zusammenhang Cookies auf Ihrem Computer und analysiert, soweit Webtracking-Tools mittels Google Tag Manager ausgeführt werden, Ihr Surfverhalten (sogenanntes „tracken“). Die von den „Tags“ erzeugten Daten werden von Google Tag Manager unter einer einheitlichen Benutzeroberfläche zusammengeführt, gespeichert und verarbeitet. Alle eingebundenen „Tags“ werden in dieser Datenschutzerklärung nochmals gesondert aufgeführt. Im Rahmen der Benutzung unserer Webseite bei aktivierter Einbindung von „Tags“ von Google-Tag-Manager werden dabei Daten, wie insbesondere Ihre IP-Adresse und Ihre Nutzeraktivitäten an Server des Unternehmens Google übertragen. Die in Google Tag Manager verwendeten Tracking-Tools stellen durch eine IP-Anonymisierung des Quellcodes sicher, dass die IP-Adresse von Google Tag Manager vor der Übertragung anonymisiert wird. Mit Tag Manager lassen sich auf Basis der so genannten Tag-Verwaltung Messwerte verschiedener Dienstanbieter (Google und Drittanbieter) miteinander verknüpfen und auswerten. Google Tag Manager hilft uns Reports über die Websiteaktivitäten zusammenzustellen und die Webtools unserer Internetseite zu steuern.

    Zur Verarbeitung selbst erhebt der Dienst bzw. wir folgende Daten: Cookies, Webtracking-Daten, ausgehende oder eingehende Links, Informationen, die bei der Integration und Aktivierung von JavaScript-Code auf der Website entstehen von Google Tag Manager und der von Google Tag Manager ausgelösten Webtools.

    Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://policies.google.com/privacy.

    Der Anbieter bietet unter https://policies.google.com/privacy zusätzlich eine Opt-Out Möglichkeit an.

  • Gstatic

    Wir verwenden auf unserer Seite den Dienst Gstatic des Unternehmens Google Ireland Limited, Gordon House, Barrow Street, 4 Dublin, Irland, E-Mail: support-deutschland@google.com, Website: https://www.google.com/. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Gstatic ist ein von Google verwendeter Hintergrunddienst zum Abrufen statischer Inhalte, um die Bandbreitennutzung zu reduzieren und benötigte Katalogdateien bereits vorab zu laden. Der Dienst lädt insbesondere Hintergrunddaten zu Google Fonts und Google Maps.

    Im Rahmen der Auftragsverarbeitung kann es auch zu einer Übermittlung von personenbezogenen Daten an die Server des Unternehmens Google LLC, 1600 Amphitheatre Parkway, 94043 Mountain View, Vereinigte Staaten kommen. Die Zertifizierung des Anbieters im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://policies.google.com/privacy.

    Der Anbieter bietet unter https://support.google.com/My-Ad-Center-Help/answer/12155451?hl=de zusätzlich eine Opt-Out Möglichkeit an.

  • Microsoft Clarity

    Wir verwenden auf unserer Seite den Dienst Microsoft Clarity des Unternehmens Microsoft Ireland Operations Limited, One Microsoft Place, South County Business Park, Leopardstown, 18 Dublin , Irland, E-Mail: kunden@microsoft.com, Website: https://www.microsoft.com/de-de. Die Übermittlung personenbezogener Daten erfolgt auch in die USA. Im Hinblick auf die Übermittlung personenbezogener Daten in die USA besteht ein Angemessenheitsbeschlusses zum EU-US Data Privacy Framework der EU Kommission im Sinne des Art. 45 DSGVO (nachfolgend: DPF - https://commission.europa.eu/document/fa09cbad-dd7d-4684-ae60-be03fcb0fddf_en ). Der Betreiber des Dienstes ist im Rahmen des DPF zertifiziert, so dass für die Übermittlung das übliche Schutzniveau der DSGVO gilt.

    Rechtsgrundlage für die Verarbeitung der personenbezogenen Daten stellt Ihre Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO dar, die Sie auf unserer Internetseite getätigt haben.

    Der Dienst ermöglicht uns die Analyse des Nutzerverhaltens. Dadurch können wir unsere Website attraktiver gestalten und das Nutzungserlebnis verbessern.

    Die Zertifizierung des Mutterkonzerns Microsoft im Rahmen des EU-US Data Privacy Frameworks können Sie unter https://www.dataprivacyframework.gov/list abrufen.

    Ihre Einwilligung können Sie jederzeit widerrufen. Nähere Informationen zum Widerruf Ihrer Einwilligung finden Sie entweder bei der Einwilligung selbst oder am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://privacy.microsoft.com/de-de/privacystatement.

Einbindung externer Webservices und Verarbeitung von Daten außerhalb der EU

Auf unserer Internetseite verwenden wir aktive Inhalte von externen Anbietern, sog. Webservices. Durch Aufruf unserer Internetseite erhalten diese externen Anbieter ggf. personenbezogene Informationen über Ihren Besuch auf unserer Internetseite. Hierbei ist ggf. eine Verarbeitung von Daten außerhalb der EU möglich. Sie können dies verhindern, indem Sie ein entsprechendes Browser-Plugin installieren oder das Ausführen von Scripten in Ihrem Browser deaktivieren. Hierdurch kann es zu Funktionseinschränkungen auf Internetseiten kommen, die Sie besuchen.

Wir verwenden folgende externe Webservices:

  • COOKIEFIRST

    Wir verwenden auf unserer Seite den Dienst COOKIEFIRST des Unternehmens CookieFirst by Digital Data Solutions B.V., Plantage Middenlaan 42a, 1018DH Amsterdam, Niederlande, E-Mail: legal@cookiefirst.com, Website: https://cookiefirst.com/. Die Übermittlung personenbezogener Daten erfolgt ausschließlich an Server in der europäischen Union.

    Rechtsgrundlage für die Verarbeitung stellt Art. 6 Abs. 1 lit. c DSGVO dar. Der Einsatz des Dienstes unterstützt uns dabei unseren rechtlichen Verpflichtungen nachzukommen.

    Durch die Einbindung von COOKIEFIRST erfüllen wir unsere rechtliche Verpflichtung im Hinblick auf das für Cookies notwendige Einwilligungsmanagement.

    Welche Rechte Ihnen im Hinblick auf die Verarbeitung zustehen, finden Sie am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://cookiefirst.com/legal/privacy-policy/.

  • Rechtstextsnippet und Module

    Wir verwenden auf unserer Seite den Dienst Rechtstextsnippet und Module des Unternehmens Website-Check GmbH, Beethovenstraße 24, 66111 Saarbrücken, Deutschland, E-Mail: support@website-check.de, Website: https://www.website-check.de/. Die Übermittlung personenbezogener Daten erfolgt ausschließlich an Server in der europäischen Union.

    Rechtsgrundlage für die Verarbeitung stellt Art. 6 Abs. 1 lit. c DSGVO dar. Der Einsatz des Dienstes unterstützt uns dabei unseren rechtlichen Verpflichtungen nachzukommen.

    Mit Hilfe des Dienstes werden auf unserer Internetseite Inhalte unserer Rechtstexte nachgeladen. Über die vorgenommene Einbindung auf unserer Seite werden die jeweils aktuellen Rechtstexte nachgeladen. Über diese Einbindung können ggf. auch weitere technische Module im Hinblick auf die rechtlichen Texte oder rechtlich notwendigen Elemente nachgeladen werden.

    Welche Rechte Ihnen im Hinblick auf die Verarbeitung zustehen, finden Sie am Ende dieser Datenschutzerklärung.

    Weitere Informationen zum Handling der übertragenen Daten finden Sie in der Datenschutzerklärung des Anbieters unter https://www.website-check.de/datenschutzerklaerung/.

  • Social Plug-In – „Facebook by META“

    • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

      Auf unserer Website haben wir ein Social Plug-In des sozialen Netzwerkes „Facebook by META“ eingebunden, das von der Meta Platforms Ireland Ltd., Merrion Road, D04 X2K5 Dublin 4, Irland, E-Mail: impressum-support@support.facebook.com, Website: http://www.facebook.com/ („Facebook by META“) betrieben wird. Wenn Sie eine Seite aufrufen, die ein solches Plug-In enthält, stellt Ihr Browser automatisch eine Hintergrund-Verbindung zu den Servern von Facebook by META her. Der Inhalt des Plug-Ins wird von Facebook by META direkt an Ihren Browser übermittelt und nur in unsere Seite eingebunden. Durch diese Einbindung erhält Facebook by META die Information, dass Ihr Browser eine konkrete Seite unseres Internetauftritts geladen hat. Dies gilt auch, wenn Sie kein Facebook by META-Profil besitzen oder gerade nicht bei Facebook by META eingeloggt sind. Diese Information (einschließlich Ihrer IP-Adresse) wird von Ihrem Browser direkt an einen Server von Facebook by META in Irland übermittelt und dort gespeichert. Sind Sie bei Facebook by META eingeloggt, kann Facebook by META den Besuch unserer Website Ihrem Facebook by META-Profil unmittelbar zuordnen. Wenn Sie mit den Plug-Ins interagieren, zum Beispiel den „Gefällt mir“-Button betätigen oder einen Kommentar abgeben, wird diese Information ebenfalls direkt an einen Server von Facebook by META übermittelt und dort gespeichert. Die Informationen werden außerdem auf Ihrem Facebook by META-Profil veröffentlicht und Ihren Facebook by META-Kontakten, die Sie hierfür freigeschaltet haben, angezeigt.

    • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

      Art. 6 Abs. 1 lit. a DSGVO (soweit Sie sich bei „Facebook by META“ registriert haben) und Art. 6 Abs. 1 lit. f DSGVO (falls Sie sich nicht bei Facebook by META registriert haben). Soweit die Verarbeitung auf Basis des Art. 6 Abs. 1 S. 1 lit. f DSGVO erfolgt, besteht das berechtigte Interesse des Seitenbetreibers darin, eine Interaktion der Nutzer mit den Inhalten des Seitenbetreibers bei Facebook by META zu ermöglichen.

    • Zweck der Datenverarbeitung

      Der primäre Zweck der Datenerhebung besteht darin, Ihnen eine mit Facebook by META vernetzte Möglichkeit der sozialen Interaktion zu bieten und unseren Internetauftritt somit interaktiv zu gestalten. Den Umfang der Datenerhebung und die weitere Verarbeitung und Nutzung der von Ihnen hinterlassenen Daten durch Facebook by META sowie Ihre diesbezüglichen Rechte und Einstellungsmöglichkeiten zum Schutz Ihrer Privatsphäre können Sie den Datenschutzhinweisen von Facebook by META entnehmen: https://www.facebook.com/privacy/policy/

    • Dauer der Speicherung

      Facebook by META wird die für die Bereitstellung des Webservices relevanten Daten solange speichern, wie es notwendig ist. Soweit die Daten gesetzlichen Aufbewahrungspflichten unterfallen, erfolgt die Löschung nach Ablauf der Aufbewahrungspflicht.

    • Widerspruchs- und Löschungsmöglichkeit

      Wenn Sie nicht möchten, dass das Social-Plug-In von Facebook by META ausgeführt wird, können Sie die Ausführung durch die Installation eines entsprechenden Addons oder Script-Blocker auch verhindern. Wenn Sie nicht möchten, dass Facebook by META die über unsere Website gesammelten Daten Ihrem Facebook by META-Profil zuordnet, müssen Sie sich vor Ihrem Besuch unserer Website bei Facebook by META ausloggen. Die Widerspruchs- und Beseitigungsmöglichkeiten richten sich im Übrigen nach den nachfolgend in dieser Datenschutzerklärung geschilderten generellen Regelungen zum datenschutzrechtlichen Widerspruchsrecht und Löschungsanspruch.

Unterrichtung über die Nutzung von Cookies

  • Welche personenbezogenen Daten werden erhoben und in welchem Umfang werden diese verarbeitet?

    Auf verschiedenen Seiten integrieren und verwenden wir Cookies, um bestimmte Funktionen unserer Website zu ermöglichen und externe Webservices zu integrieren. Bei den sogenannten "Cookies" handelt es sich um kleine Textdateien, die Ihr Browser auf Ihrem Zugangsgerät speichern kann. Diese Textdateien enthalten eine charakteristische Zeichenkette, die den Browser eindeutig identifiziert, wenn Sie zu unserer Website zurückkehren. Der Prozess des Speicherns einer Cookie-Datei wird auch als "Setzen eines Cookies" bezeichnet. Cookies können hierbei sowohl von der Website selbst als auch von externen Webservices gesetzt werden. Die Cookies werden von unserer Website bzw. den externen Webservices gesetzt, um die volle Funktionalität unserer Website zu erhalten, die Benutzerfreundlichkeit zu verbessern oder um den mit Ihrer Einwilligung angegebenen Zweck zu verfolgen. Die Cookie-Technologie ermöglicht es uns auch, einzelne Besucher anhand von Pseudonymen, z.B. einer individuellen oder zufälligen IDs, zu erkennen, sodass wir mehr individuelle Dienstleistungen anbieten können. Details sind in der folgenden Tabelle aufgeführt.

  • Rechtsgrundlage für die Verarbeitung personenbezogener Daten

    Soweit die Cookies auf Basis einer Einwilligung gemäß Art. 6 Abs. 1 lit. a DSGVO verarbeitet werden, gilt diese Einwilligung auch als Einwilligung im Sinne des § 25 Abs. 1 TDDDG für das Setzen des Cookies auf dem Endgerät des Nutzers. Soweit eine andere Rechtsgrundlage nach der DSGVO genannt wird (z.B. zur Vertragserfüllung oder zur Erfüllung gesetzlicher Pflichten), erfolgt die Speicherung bzw. das Setzen auf Basis einer Ausnahme gemäß § 25 Abs. 2 TDDDG. Diese liegt dann vor, „wenn der alleinige Zweck der Speicherung von Informationen in der Endeinrichtung des Endnutzers oder der alleinige Zweck des Zugriffs auf bereits in der Endeinrichtung des Endnutzers gespeicherte Informationen die Durchführung der Übertragung einer Nachricht über ein öffentliches Telekommunikationsnetz ist“ oder „wenn die Speicherung von Informationen in der Endeinrichtung des Endnutzers oder der Zugriff auf bereits in der Endeinrichtung des Endnutzers gespeicherte Informationen unbedingt erforderlich ist, damit der Anbieter eines digitalen Dienstes einen vom Nutzer ausdrücklich gewünschten digitalen Dienst zur Verfügung stellen kann“. Welche Rechtsgrundlage einschlägig ist, ergibt sich aus der später in diesem Punkt aufgeführten Cookie-Tabelle.

  • Zweck der Datenverarbeitung

    Die Cookies werden von unserer Website bzw. den externen Webservices gesetzt, um die volle Funktionalität unserer Website zu erhalten, die Benutzerfreundlichkeit zu verbessern oder um den mit Ihrer Einwilligung angegebenen Zweck zu verfolgen. Die Cookie-Technologie ermöglicht es uns auch, einzelne Besucher anhand von Pseudonymen, z.B. einer individuellen oder zufälligen IDs, zu erkennen, so dass wir mehr individuelle Dienstleistungen anbieten können. Details sind in der folgenden Tabelle aufgeführt.

  • Dauer der Speicherung

    Die Speicherung unserer Cookies erfolgt bis zur Löschung in Ihrem Browser oder, wenn es sich um einen Session-Cookie handelt, bis die Session abgelaufen ist. Details sind in der folgenden Tabelle aufgeführt.

  • Widerspruchs- und Beseitigungsmöglichkeit

    Sie können Ihren Browser nach Ihren Wünschen so einstellen, dass das Setzen von Cookies generell verhindert wird. Sie können dann von Fall zu Fall über die Annahme von Cookies entscheiden oder Cookies grundsätzlich akzeptieren. Cookies können für verschiedene Zwecke verwendet werden, z.B. um zu erkennen, dass Ihr Zugangsgerät bereits mit unserer Website verbunden ist (permanente Cookies) oder um zuletzt angesehene Angebote zu speichern (Session-Cookies). Wenn Sie uns ausdrücklich die Erlaubnis erteilt haben, Ihre personenbezogenen Daten zu verarbeiten können Sie diese Einwilligung jederzeit widerrufen. Bitte beachten Sie, dass die Rechtmäßigkeit der auf der Grundlage der Einwilligung bis zum Widerruf vorgenommenen Verarbeitung davon nicht berührt wird.

Cookie-Name Server Anbieter Zweck Rechtsgrundlage Speicherdauer Typ
PHPSESSID mps-agency.de Webseitenbetreiber Wir setzen das Cookie "PHPSESSID" ein, um die Benutzersitzung auf unserer Website zu verwalten. Dieses Cookie hat den Zweck, eine eindeutige Kennung für die Sitzung eines Benutzers bereitzustellen, während er unsere Website besucht. Dadurch können wir den Zustand der Sitzung verfolgen und sicherstellen, dass der Server den Benutzer korrekt identifizieren kann, um eine reibungslose Interaktion mit der Website zu gewährleisten. Das Cookie enthält normalerweise eine zufällige Zeichenfolge, die als Session-ID fungiert. Nach Beendigung der Sitzung, z. B. wenn der Benutzer den Browser schließt, wird das Cookie in der Regel gelöscht. Art. 6 Abs. 1 lit. f DSGVO (berechtigte Interessen) Sitzung Komfort
_fbp .mps-agency.de, .de Facebook Connect Facebook verwendet dieses Cookie, um Werbeprodukte anzeigen zu lassen und Werbeclicks einem User zuzuordnen. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung) ca. 3 Monate Marketing
_ga mps-agency.de Google Analytics Dieser Cookie ordnet einem User eine ID zu, damit der Webtracker die Aktionen des Nutzers unter diese ID zusammenfassen kann. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung) ca. 24 Monate Analytics
_ga_ mps-agency.de Google Analytics Dieses Cookie speichert im Zusammenhang mit Google Analytics bzw. Google Tag Manager eine eindeutige ID für einen Website-Besucher und verfolgt, wie der Besucher die Website nutzt. Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO (Einwilligung) ca. 24 Monate Analytics
cookiefirst-consent mps-agency.de COOKIEFIRST Im Rahmen dieses Cookies werden wir ihre Einwilligung oder Ablehnung zu den von uns verwendeten Cookies speichern. Art. 6 Abs. 1 lit. c DSGVO (Erfüllung rechtlicher Verpflichtung) ca. 12 Monate Cookie-Banner

Datensicherheit und Datenschutz, Kommunikation per E-Mail

Ihre personenbezogenen Daten werden durch technische und organisatorische Maßnahmen so bei der Erhebung, Speicherung und Verarbeitung geschützt, dass sie für Dritte nicht zugänglich sind. Bei einer unverschlüsselten Kommunikation per E-Mail kann die vollständige Datensicherheit auf dem Übertragungsweg zu unseren IT-Systemen von uns nicht gewährleistet werden, sodass wir bei Informationen mit hohem Geheimhaltungsbedürfnis eine verschlüsselte Kommunikation oder den Postweg empfehlen.

Auskunftsanspruch und Berichtigungswünsche – Löschung & Einschränkung von Daten - Widerruf von Einwilligungen – Widerspruchsrecht

Auskunftsanspruch

Sie haben das Recht, eine Bestätigung darüber zu verlangen, ob wir personenbezogene Daten von Ihnen verarbeiten. Sofern dies der Fall ist, haben Sie ein Recht auf Auskunft über die in Art. 15 Abs. 1 DSGVO benannten Informationen, soweit nicht die Rechte und Freiheiten anderer Personen beeinträchtigt werden (vgl. Art. 15 Abs. 4 DSGVO). Gerne stellen wir Ihnen auch eine Kopie der Daten zur Verfügung.

Berichtigungsanspruch

Sie haben gem. Art. 16 DSGVO das Recht, bei uns ggf. falsch hinterlegte personenbezogene Daten (wie z.B. Adresse, Name, etc.) jederzeit korrigieren zu lassen. Auch können Sie jederzeit eine Vervollständigung der bei uns gespeicherten Daten verlangen. Eine entsprechende Anpassung erfolgt unverzüglich.

Recht auf Löschung

Sie haben gem. Art. 17 Abs. Abs. 1 DSGVO das Recht darauf, dass wir die über Sie erhobenen personenbezogenen Daten löschen, wenn

  • die Daten entweder nicht mehr benötigt werden;
  • aufgrund des Widerrufs Ihrer Einwilligung die Rechtsgrundlage der Verarbeitung ersatzlos entfallen ist;
  • Sie Widerspruch gegen die Verarbeitung eingelegt haben und keine berechtigten Gründe für die Verarbeitung vorliegen;
  • Ihre Daten unrechtmäßig verarbeitet werden;
  • eine rechtliche Verpflichtung dies erfordert oder eine Erhebung gem. Art. 8 Abs. 1 DSGVO stattgefunden hat.

Das Recht besteht gem. Art. 17 Abs. 3 DSGVO dann nicht, wenn

  • die Verarbeitung zur Ausübung des Rechtes auf freie Meinungsäußerung und Information erforderlich ist;
  • Ihre Daten auf Grundlage einer rechtlichen Verpflichtung erhoben worden sind;
  • die Verarbeitung aus Gründen des öffentlichen Interesses erforderlich ist;
  • die Daten zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen erforderlich sind.

Recht auf Einschränkung der Verarbeitung

Gem. Art. 18 Abs. 1 DSGVO haben Sie in einzelnen Fällen das Recht, die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen.

Dies ist dann der Fall, wenn

  • die Richtigkeit der personenbezogenen Daten von Ihnen bestritten wird;
  • die Verarbeitung unrechtmäßig ist und Sie einer Löschung nicht zustimmen;
  • die Daten nicht länger für den Verarbeitungszweck benötigt werden, aber die erhobenen Daten der Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen dienen;
  • ein Widerspruch gegen die Verarbeitung gem. Art. 21 Abs. 1 DSGVO eingelegt worden ist und noch unklar ist, welche Interessen überwiegen.

Recht auf Widerruf

Sofern Sie uns eine ausdrückliche Einwilligung in die Verarbeitung Ihrer personenbezogenen Daten erteilt haben (Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO) können Sie diese jederzeit widerrufen. Bitte beachten Sie, dass die Rechtmäßigkeit der aufgrund der Einwilligung bis zum Widerruf erfolgten Verarbeitung hierdurch nicht berührt wird.

Recht auf Widerspruch

Sie haben gem. Art. 21 DSGVO das Recht, jederzeit gegen die Verarbeitung Sie betreffender personenbezogener Daten, die aufgrund von Art. 6 Abs. 1 lit. f (im Rahmen eines berechtigten Interesses) erhoben worden sind, Widerspruch einzulegen. Das Recht steht Ihnen nur zu, wenn gegen die Speicherung und Verarbeitung besondere Umstände sprechen.

Wie nehmen Sie Ihre Rechte wahr?

Ihre Rechte können Sie jederzeit wahrnehmen, indem Sie sich an die unten stehenden Kontaktdaten wenden:

mps.agency e.K.
Eisenbahnstr. 3
66424 Homburg
Deutschland
E-Mail: info@mps-agency.de
Tel.: 06841-1877324

Recht auf Datenübertragbarkeit

Sie haben gem. Art. 20 DSGVO einen Anspruch auf Übermittlung der Sie betreffenden personenbezogenen Daten. Die Daten werden von uns in einem strukturierten, gängigen und maschinenlesbaren Format zur Verfügung gestellt. Die Daten können hierbei wahlweise an Sie selbst oder an einen von Ihnen benannten Verantwortlichen übersendet werden.

Wir stellen Ihnen auf Anfrage gem. Art. 20 Abs. 1 DSGVO folgende Daten bereit:

  • Daten, die aufgrund einer ausdrücklichen Einwilligung gem. Art. 6 Abs. 1 lit. a DSGVO oder Art. 9 Abs. 2 lit. a DSGVO erhoben wurden;
  • Daten, die wir gemäß gem. Art. 6 Abs. 1 lit. b DSGVO im Rahmen bestehender Verträge von Ihnen erhalten haben;
  • Daten, die im Rahmen eines automatisierten Verfahrens verarbeitet worden sind.

Die Übertragung der personenbezogenen Daten direkt an einen von Ihnen gewünschten Verantwortlichen werden wir vornehmen, soweit dies technisch machbar ist. Bitte beachten Sie, dass wir Daten, die in die Freiheiten und Rechte anderer Personen eingreifen gem. Art. 20 Abs. 4 DSGVO nicht übertragen dürfen.

Beschwerderecht bei der Aufsichtsbehörde gem. Art. 77 Abs. 1 DSGVO

Sofern Sie den Verdacht haben, dass auf unserer Seite Ihre Daten rechtswidrig verarbeitet werden, können Sie selbstverständlich jederzeit eine gerichtliche Klärung der Problematik herbeiführen. Zudem steht Ihnen jede andere rechtliche Möglichkeit offen. Unabhängig davon steht Ihnen gem. Art. 77 Abs. 1 DSGVO die Möglichkeit zur Verfügung, sich an eine Aufsichtsbehörde zu wenden. Das Beschwerderecht gem. Art. 77 DSGVO steht Ihnen in dem EU-Mitgliedstaat Ihres Aufenthaltsortes, Ihres Arbeitsplatzes und/oder des Ortes des vermeintlichen Verstoßes zu, d.h. Sie können die Aufsichtsbehörde, an die Sie sich wenden, aus den oben genannten Orten wählen. Die Aufsichtsbehörde, bei der die Beschwerde eingereicht wurde, unterrichtet Sie dann über den Stand und die Ergebnisse Ihrer Eingabe, einschließlich der Möglichkeit eines gerichtlichen Rechtsbehelfs gem. Art. 78 DSGVO.

Erstellt durch:

© DURY LEGAL Rechtsanwälte – www.dury.de

© Website-Check GmbH – www.website-check.de

<script nonce="MDZFNk9GYW5hVk1ESnMxamdKVnhUZVRqeEdMV21wR252YnNzYUJockRYdWFMVTlIc045Q3E=" > const backlink = "" </script><script nonce="MDZFNk9GYW5hVk1ESnMxamdKVnhUZVRqeEdMV21wR252YnNzYUJockRYdWFMVTlIc045Q3E=" > "use strict"; let nonce=document.currentScript.nonce?document.currentScript.nonce:document.currentScript.getAttribute('nonce');const reloginRequest=(originalRequest)=>{let form=document.getElementById('reloginForm');if(!form.checkValidity()){form.classList.add('was-validated');return;} let request=new Request('user/relogin');let relogin_username=document.getElementById('relogin_username');let relogin_password=document.getElementById('relogin_password');request.success((response)=>{nonce=response.nonce;bootstrap.Modal.getOrCreateInstance(document.getElementById('reloginModal')).hide();relogin_username.value='';relogin_username.password='';originalRequest.resend();request.data=undefined;relogin_password.value='';});request.send({username:relogin_username.value,password:relogin_password.value,});};class Request{xmlhttp=undefined;constructor(action){this.action=action;this._init();} _init(){this.xhttp=new XMLHttpRequest();} _open(method,data=null){let href=window.location.protocol+'//'+ window.location.host+ window.location.pathname;if(!href.endsWith('/')){href+='/';} this.xhttp.onreadystatechange=this.onreadystatechange();let url=href+'common/request.php/'+this.action;if(data){url+='?data=';url+=data;} this.xhttp.open(method,url,true);if(method!='POST'&&method!='GET'){this.xhttp.setRequestHeader('Content-Type','application/json;charset=UTF-8');}} onreadystatechange(){let instance=this;return function(){if(instance.xhttp.readyState==XMLHttpRequest.DONE){let response;if(instance.xhttp.status==200||instance.xhttp.status==500){try{response=JSON.parse(instance.xhttp.responseText);response=response?response:{};if(response.error){if(response.relogin){bootstrap.Modal.getOrCreateInstance(document.getElementById('reloginModal')).show();document.getElementById('reloginRequest').addEventListener('click',()=>{reloginRequest(instance);});} if(instance.errorCallback){instance.errorCallback(response);}} let copyBtn=false;if(response.message){let title='Rückmeldung';if(response.error){title='Fehler!';copyBtn=true;} let message='';if(Array.isArray(response.message)){message=response.message.join('<br/>');}else if(typeof response.message=='object'&&response.message){message='';for(const line of Object.entries(response.message)){message+=line[0]+': '+line[1];}}else{message=response.message;} createMessageModal(title,message,'Ok',copyBtn).show();}else{if(instance.successCallback){instance.successCallback(response);} if(response.redirect){window.location.href=response.redirect;}} if(response.notify&&!response.redirect){showToast(response.notify.title,response.notify.message,response.notify.comment);}else if(response.notify&&response.redirect){window.sessionStorage.setItem('notify',JSON.stringify({title:response.notify.title,message:response.notify.message,comment:response.notify.comment,}));}}catch(exeption){if(instance.failCallback){instance.failCallback(instance.xhttp.status,exeption);}}}else{if(instance.failCallback){instance.failCallback(instance.xhttp.status);}}}};} success(callback){this.successCallback=callback;} fail(callback){this.failCallback=callback;} error(callback){this.errorCallback=callback;} _appendtoFromData(formData,key,value){if(value&&typeof value=='object'&&value.constructor.name!='File'){value=JSON.stringify(value);} if(formData instanceof FormData){formData.append(key,value);}else{formData[key]=value;}} send(data={},method='POST',href=null){this.data=data;let formData;if(method=='POST'){formData=new FormData();}else{formData={};} this._appendtoFromData(formData,'nonce',nonce);if(typeof backlink!='undefined'){this._appendtoFromData(formData,'backlink',backlink);} for(const[key,value]of Object.entries(data)){this._appendtoFromData(formData,key,value);} if(method!='POST'){formData=JSON.stringify(formData);} if(method=='GET'){this._open(method,formData);}else{this._open(method);} this.xhttp.send(formData);} resend(){this._init();if(!this.data){return false;} this.send(this.data);return true;}} </script><script nonce="MDZFNk9GYW5hVk1ESnMxamdKVnhUZVRqeEdMV21wR252YnNzYUJockRYdWFMVTlIc045Q3E=" > /*! * Bootstrap v5.3.2 (https://getbootstrap.com/) * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t=new Map,e={set(e,i,n){t.has(e)||t.set(e,new Map);const s=t.get(e);s.has(i)||0===s.size?s.set(i,n):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`)},get:(e,i)=>t.has(e)&&t.get(e).get(i)||null,remove(e,i){if(!t.has(e))return;const n=t.get(e);n.delete(i),0===n.size&&t.delete(e)}},i="transitionend",n=t=>(t&&window.CSS&&window.CSS.escape&&(t=t.replace(/#([^\s"#']+)/g,((t,e)=>`#${CSS.escape(e)}`))),t),s=t=>{t.dispatchEvent(new Event(i))},o=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),r=t=>o(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(n(t)):null,a=t=>{if(!o(t)||0===t.getClientRects().length)return!1;const e="visible"===getComputedStyle(t).getPropertyValue("visibility"),i=t.closest("details:not([open])");if(!i)return e;if(i!==t){const e=t.closest("summary");if(e&&e.parentNode!==i)return!1;if(null===e)return!1}return e},l=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),c=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?c(t.parentNode):null},h=()=>{},d=t=>{t.offsetHeight},u=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,f=[],p=()=>"rtl"===document.documentElement.dir,m=t=>{var e;e=()=>{const e=u();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(f.length||document.addEventListener("DOMContentLoaded",(()=>{for(const t of f)t()})),f.push(e)):e()},g=(t,e=[],i=t)=>"function"==typeof t?t(...e):i,_=(t,e,n=!0)=>{if(!n)return void g(t);const o=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let r=!1;const a=({target:n})=>{n===e&&(r=!0,e.removeEventListener(i,a),g(t))};e.addEventListener(i,a),setTimeout((()=>{r||s(e)}),o)},b=(t,e,i,n)=>{const s=t.length;let o=t.indexOf(e);return-1===o?!i&&n?t[s-1]:t[0]:(o+=i?1:-1,n&&(o=(o+s)%s),t[Math.max(0,Math.min(o,s-1))])},v=/[^.]*(?=\..*)\.|.*/,y=/\..*/,w=/::\d+$/,A={};let E=1;const T={mouseenter:"mouseover",mouseleave:"mouseout"},C=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function O(t,e){return e&&`${e}::${E++}`||t.uidEvent||E++}function x(t){const e=O(t);return t.uidEvent=e,A[e]=A[e]||{},A[e]}function k(t,e,i=null){return Object.values(t).find((t=>t.callable===e&&t.delegationSelector===i))}function L(t,e,i){const n="string"==typeof e,s=n?i:e||i;let o=I(t);return C.has(o)||(o=t),[n,s,o]}function S(t,e,i,n,s){if("string"!=typeof e||!t)return;let[o,r,a]=L(e,i,n);if(e in T){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};r=t(r)}const l=x(t),c=l[a]||(l[a]={}),h=k(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=O(r,e.replace(v,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(const a of o)if(a===r)return P(s,{delegateTarget:r}),n.oneOff&&N.off(t,s.type,e,i),i.apply(r,[s])}}(t,i,r):function(t,e){return function i(n){return P(n,{delegateTarget:t}),i.oneOff&&N.off(t,n.type,e),e.apply(t,[n])}}(t,r);u.delegationSelector=o?i:null,u.callable=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function D(t,e,i,n,s){const o=k(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function $(t,e,i,n){const s=e[i]||{};for(const[o,r]of Object.entries(s))o.includes(n)&&D(t,e,i,r.callable,r.delegationSelector)}function I(t){return t=t.replace(y,""),T[t]||t}const N={on(t,e,i,n){S(t,e,i,n,!1)},one(t,e,i,n){S(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=L(e,i,n),a=r!==e,l=x(t),c=l[r]||{},h=e.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))$(t,l,i,e.slice(1));for(const[i,n]of Object.entries(c)){const s=i.replace(w,"");a&&!e.includes(s)||D(t,l,r,n.callable,n.delegationSelector)}}else{if(!Object.keys(c).length)return;D(t,l,r,o,s?i:null)}},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=u();let s=null,o=!0,r=!0,a=!1;e!==I(e)&&n&&(s=n.Event(e,i),n(t).trigger(s),o=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),a=s.isDefaultPrevented());const l=P(new Event(e,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),r&&t.dispatchEvent(l),l.defaultPrevented&&s&&s.preventDefault(),l}};function P(t,e={}){for(const[i,n]of Object.entries(e))try{t[i]=n}catch(e){Object.defineProperty(t,i,{configurable:!0,get:()=>n})}return t}function M(t){if("true"===t)return!0;if("false"===t)return!1;if(t===Number(t).toString())return Number(t);if(""===t||"null"===t)return null;if("string"!=typeof t)return t;try{return JSON.parse(decodeURIComponent(t))}catch(e){return t}}function j(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}const F={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${j(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${j(e)}`)},getDataAttributes(t){if(!t)return{};const e={},i=Object.keys(t.dataset).filter((t=>t.startsWith("bs")&&!t.startsWith("bsConfig")));for(const n of i){let i=n.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=M(t.dataset[n])}return e},getDataAttribute:(t,e)=>M(t.getAttribute(`data-bs-${j(e)}`))};class H{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(t){return t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t}_mergeConfigObj(t,e){const i=o(e)?F.getDataAttribute(e,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...o(e)?F.getDataAttributes(e):{},..."object"==typeof t?t:{}}}_typeCheckConfig(t,e=this.constructor.DefaultType){for(const[n,s]of Object.entries(e)){const e=t[n],r=o(e)?"element":null==(i=e)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(s).test(r))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}var i}}class W extends H{constructor(t,i){super(),(t=r(t))&&(this._element=t,this._config=this._getConfig(i),e.set(this._element,this.constructor.DATA_KEY,this))}dispose(){e.remove(this._element,this.constructor.DATA_KEY),N.off(this._element,this.constructor.EVENT_KEY);for(const t of Object.getOwnPropertyNames(this))this[t]=null}_queueCallback(t,e,i=!0){_(t,e,i)}_getConfig(t){return t=this._mergeConfigObj(t,this._element),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}static getInstance(t){return e.get(r(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.3.2"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(t){return`${t}${this.EVENT_KEY}`}}const B=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?n(i.trim()):null}return e},z={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode.closest(e);for(;n;)i.push(n),n=n.parentNode.closest(e);return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(",");return this.find(e,t).filter((t=>!l(t)&&a(t)))},getSelectorFromElement(t){const e=B(t);return e&&z.findOne(e)?e:null},getElementFromSelector(t){const e=B(t);return e?z.findOne(e):null},getMultipleElementsFromSelector(t){const e=B(t);return e?z.find(e):[]}},R=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,n=t.NAME;N.on(document,i,`[data-bs-dismiss="${n}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),l(this))return;const s=z.getElementFromSelector(this)||this.closest(`.${n}`);t.getOrCreateInstance(s)[e]()}))},q=".bs.alert",V=`close${q}`,K=`closed${q}`;class Q extends W{static get NAME(){return"alert"}close(){if(N.trigger(this._element,V).defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),N.trigger(this._element,K),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=Q.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}R(Q,"close"),m(Q);const X='[data-bs-toggle="button"]';class Y extends W{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=Y.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}N.on(document,"click.bs.button.data-api",X,(t=>{t.preventDefault();const e=t.target.closest(X);Y.getOrCreateInstance(e).toggle()})),m(Y);const U=".bs.swipe",G=`touchstart${U}`,J=`touchmove${U}`,Z=`touchend${U}`,tt=`pointerdown${U}`,et=`pointerup${U}`,it={endCallback:null,leftCallback:null,rightCallback:null},nt={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class st extends H{constructor(t,e){super(),this._element=t,t&&st.isSupported()&&(this._config=this._getConfig(e),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return it}static get DefaultType(){return nt}static get NAME(){return"swipe"}dispose(){N.off(this._element,U)}_start(t){this._supportPointerEvents?this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX):this._deltaX=t.touches[0].clientX}_end(t){this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX-this._deltaX),this._handleSwipe(),g(this._config.endCallback)}_move(t){this._deltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this._deltaX}_handleSwipe(){const t=Math.abs(this._deltaX);if(t<=40)return;const e=t/this._deltaX;this._deltaX=0,e&&g(e>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(N.on(this._element,tt,(t=>this._start(t))),N.on(this._element,et,(t=>this._end(t))),this._element.classList.add("pointer-event")):(N.on(this._element,G,(t=>this._start(t))),N.on(this._element,J,(t=>this._move(t))),N.on(this._element,Z,(t=>this._end(t))))}_eventIsPointerPenTouch(t){return this._supportPointerEvents&&("pen"===t.pointerType||"touch"===t.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const ot=".bs.carousel",rt=".data-api",at="next",lt="prev",ct="left",ht="right",dt=`slide${ot}`,ut=`slid${ot}`,ft=`keydown${ot}`,pt=`mouseenter${ot}`,mt=`mouseleave${ot}`,gt=`dragstart${ot}`,_t=`load${ot}${rt}`,bt=`click${ot}${rt}`,vt="carousel",yt="active",wt=".active",At=".carousel-item",Et=wt+At,Tt={ArrowLeft:ht,ArrowRight:ct},Ct={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},Ot={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class xt extends W{constructor(t,e){super(t,e),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=z.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===vt&&this.cycle()}static get Default(){return Ct}static get DefaultType(){return Ot}static get NAME(){return"carousel"}next(){this._slide(at)}nextWhenVisible(){!document.hidden&&a(this._element)&&this.next()}prev(){this._slide(lt)}pause(){this._isSliding&&s(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?N.one(this._element,ut,(()=>this.cycle())):this.cycle())}to(t){const e=this._getItems();if(t>e.length-1||t<0)return;if(this._isSliding)return void N.one(this._element,ut,(()=>this.to(t)));const i=this._getItemIndex(this._getActive());if(i===t)return;const n=t>i?at:lt;this._slide(n,e[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(t){return t.defaultInterval=t.interval,t}_addEventListeners(){this._config.keyboard&&N.on(this._element,ft,(t=>this._keydown(t))),"hover"===this._config.pause&&(N.on(this._element,pt,(()=>this.pause())),N.on(this._element,mt,(()=>this._maybeEnableCycle()))),this._config.touch&&st.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const t of z.find(".carousel-item img",this._element))N.on(t,gt,(t=>t.preventDefault()));const t={leftCallback:()=>this._slide(this._directionToOrder(ct)),rightCallback:()=>this._slide(this._directionToOrder(ht)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new st(this._element,t)}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=Tt[t.key];e&&(t.preventDefault(),this._slide(this._directionToOrder(e)))}_getItemIndex(t){return this._getItems().indexOf(t)}_setActiveIndicatorElement(t){if(!this._indicatorsElement)return;const e=z.findOne(wt,this._indicatorsElement);e.classList.remove(yt),e.removeAttribute("aria-current");const i=z.findOne(`[data-bs-slide-to="${t}"]`,this._indicatorsElement);i&&(i.classList.add(yt),i.setAttribute("aria-current","true"))}_updateInterval(){const t=this._activeElement||this._getActive();if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-interval"),10);this._config.interval=e||this._config.defaultInterval}_slide(t,e=null){if(this._isSliding)return;const i=this._getActive(),n=t===at,s=e||b(this._getItems(),i,n,this._config.wrap);if(s===i)return;const o=this._getItemIndex(s),r=e=>N.trigger(this._element,e,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(i),to:o});if(r(dt).defaultPrevented)return;if(!i||!s)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=s;const l=n?"carousel-item-start":"carousel-item-end",c=n?"carousel-item-next":"carousel-item-prev";s.classList.add(c),d(s),i.classList.add(l),s.classList.add(l),this._queueCallback((()=>{s.classList.remove(l,c),s.classList.add(yt),i.classList.remove(yt,c,l),this._isSliding=!1,r(ut)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return z.findOne(Et,this._element)}_getItems(){return z.find(At,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(t){return p()?t===ct?lt:at:t===ct?at:lt}_orderToDirection(t){return p()?t===lt?ct:ht:t===lt?ht:ct}static jQueryInterface(t){return this.each((function(){const e=xt.getOrCreateInstance(this,t);if("number"!=typeof t){if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}else e.to(t)}))}}N.on(document,bt,"[data-bs-slide], [data-bs-slide-to]",(function(t){const e=z.getElementFromSelector(this);if(!e||!e.classList.contains(vt))return;t.preventDefault();const i=xt.getOrCreateInstance(e),n=this.getAttribute("data-bs-slide-to");return n?(i.to(n),void i._maybeEnableCycle()):"next"===F.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),N.on(window,_t,(()=>{const t=z.find('[data-bs-ride="carousel"]');for(const e of t)xt.getOrCreateInstance(e)})),m(xt);const kt=".bs.collapse",Lt=`show${kt}`,St=`shown${kt}`,Dt=`hide${kt}`,$t=`hidden${kt}`,It=`click${kt}.data-api`,Nt="show",Pt="collapse",Mt="collapsing",jt=`:scope .${Pt} .${Pt}`,Ft='[data-bs-toggle="collapse"]',Ht={parent:null,toggle:!0},Wt={parent:"(null|element)",toggle:"boolean"};class Bt extends W{constructor(t,e){super(t,e),this._isTransitioning=!1,this._triggerArray=[];const i=z.find(Ft);for(const t of i){const e=z.getSelectorFromElement(t),i=z.find(e).filter((t=>t===this._element));null!==e&&i.length&&this._triggerArray.push(t)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Ht}static get DefaultType(){return Wt}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[];if(this._config.parent&&(t=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t=>t!==this._element)).map((t=>Bt.getOrCreateInstance(t,{toggle:!1})))),t.length&&t[0]._isTransitioning)return;if(N.trigger(this._element,Lt).defaultPrevented)return;for(const e of t)e.hide();const e=this._getDimension();this._element.classList.remove(Pt),this._element.classList.add(Mt),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Mt),this._element.classList.add(Pt,Nt),this._element.style[e]="",N.trigger(this._element,St)}),this._element,!0),this._element.style[e]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(N.trigger(this._element,Dt).defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,d(this._element),this._element.classList.add(Mt),this._element.classList.remove(Pt,Nt);for(const t of this._triggerArray){const e=z.getElementFromSelector(t);e&&!this._isShown(e)&&this._addAriaAndCollapsedClass([t],!1)}this._isTransitioning=!0,this._element.style[t]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Mt),this._element.classList.add(Pt),N.trigger(this._element,$t)}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(Nt)}_configAfterMerge(t){return t.toggle=Boolean(t.toggle),t.parent=r(t.parent),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=this._getFirstLevelChildren(Ft);for(const e of t){const t=z.getElementFromSelector(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))}}_getFirstLevelChildren(t){const e=z.find(jt,this._config.parent);return z.find(t,this._config.parent).filter((t=>!e.includes(t)))}_addAriaAndCollapsedClass(t,e){if(t.length)for(const i of t)i.classList.toggle("collapsed",!e),i.setAttribute("aria-expanded",e)}static jQueryInterface(t){const e={};return"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1),this.each((function(){const i=Bt.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}N.on(document,It,Ft,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();for(const t of z.getMultipleElementsFromSelector(this))Bt.getOrCreateInstance(t,{toggle:!1}).toggle()})),m(Bt);var zt="top",Rt="bottom",qt="right",Vt="left",Kt="auto",Qt=[zt,Rt,qt,Vt],Xt="start",Yt="end",Ut="clippingParents",Gt="viewport",Jt="popper",Zt="reference",te=Qt.reduce((function(t,e){return t.concat([e+"-"+Xt,e+"-"+Yt])}),[]),ee=[].concat(Qt,[Kt]).reduce((function(t,e){return t.concat([e,e+"-"+Xt,e+"-"+Yt])}),[]),ie="beforeRead",ne="read",se="afterRead",oe="beforeMain",re="main",ae="afterMain",le="beforeWrite",ce="write",he="afterWrite",de=[ie,ne,se,oe,re,ae,le,ce,he];function ue(t){return t?(t.nodeName||"").toLowerCase():null}function fe(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function pe(t){return t instanceof fe(t).Element||t instanceof Element}function me(t){return t instanceof fe(t).HTMLElement||t instanceof HTMLElement}function ge(t){return"undefined"!=typeof ShadowRoot&&(t instanceof fe(t).ShadowRoot||t instanceof ShadowRoot)}const _e={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];me(s)&&ue(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});me(n)&&ue(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function be(t){return t.split("-")[0]}var ve=Math.max,ye=Math.min,we=Math.round;function Ae(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function Ee(){return!/^((?!chrome|android).)*safari/i.test(Ae())}function Te(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),s=1,o=1;e&&me(t)&&(s=t.offsetWidth>0&&we(n.width)/t.offsetWidth||1,o=t.offsetHeight>0&&we(n.height)/t.offsetHeight||1);var r=(pe(t)?fe(t):window).visualViewport,a=!Ee()&&i,l=(n.left+(a&&r?r.offsetLeft:0))/s,c=(n.top+(a&&r?r.offsetTop:0))/o,h=n.width/s,d=n.height/o;return{width:h,height:d,top:c,right:l+h,bottom:c+d,left:l,x:l,y:c}}function Ce(t){var e=Te(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function Oe(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&ge(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function xe(t){return fe(t).getComputedStyle(t)}function ke(t){return["table","td","th"].indexOf(ue(t))>=0}function Le(t){return((pe(t)?t.ownerDocument:t.document)||window.document).documentElement}function Se(t){return"html"===ue(t)?t:t.assignedSlot||t.parentNode||(ge(t)?t.host:null)||Le(t)}function De(t){return me(t)&&"fixed"!==xe(t).position?t.offsetParent:null}function $e(t){for(var e=fe(t),i=De(t);i&&ke(i)&&"static"===xe(i).position;)i=De(i);return i&&("html"===ue(i)||"body"===ue(i)&&"static"===xe(i).position)?e:i||function(t){var e=/firefox/i.test(Ae());if(/Trident/i.test(Ae())&&me(t)&&"fixed"===xe(t).position)return null;var i=Se(t);for(ge(i)&&(i=i.host);me(i)&&["html","body"].indexOf(ue(i))<0;){var n=xe(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function Ie(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Ne(t,e,i){return ve(t,ye(e,i))}function Pe(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function Me(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const je={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,n=t.name,s=t.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=be(i.placement),l=Ie(a),c=[Vt,qt].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return Pe("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:Me(t,Qt))}(s.padding,i),d=Ce(o),u="y"===l?zt:Vt,f="y"===l?Rt:qt,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=$e(o),_=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=p/2-m/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,A=Ne(v,w,y),E=l;i.modifiersData[n]=((e={})[E]=A,e.centerOffset=A-w,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&Oe(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Fe(t){return t.split("-")[1]}var He={top:"auto",right:"auto",bottom:"auto",left:"auto"};function We(t){var e,i=t.popper,n=t.popperRect,s=t.placement,o=t.variation,r=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,h=t.roundOffsets,d=t.isFixed,u=r.x,f=void 0===u?0:u,p=r.y,m=void 0===p?0:p,g="function"==typeof h?h({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var _=r.hasOwnProperty("x"),b=r.hasOwnProperty("y"),v=Vt,y=zt,w=window;if(c){var A=$e(i),E="clientHeight",T="clientWidth";A===fe(i)&&"static"!==xe(A=Le(i)).position&&"absolute"===a&&(E="scrollHeight",T="scrollWidth"),(s===zt||(s===Vt||s===qt)&&o===Yt)&&(y=Rt,m-=(d&&A===w&&w.visualViewport?w.visualViewport.height:A[E])-n.height,m*=l?1:-1),s!==Vt&&(s!==zt&&s!==Rt||o!==Yt)||(v=qt,f-=(d&&A===w&&w.visualViewport?w.visualViewport.width:A[T])-n.width,f*=l?1:-1)}var C,O=Object.assign({position:a},c&&He),x=!0===h?function(t,e){var i=t.x,n=t.y,s=e.devicePixelRatio||1;return{x:we(i*s)/s||0,y:we(n*s)/s||0}}({x:f,y:m},fe(i)):{x:f,y:m};return f=x.x,m=x.y,l?Object.assign({},O,((C={})[y]=b?"0":"",C[v]=_?"0":"",C.transform=(w.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",C)):Object.assign({},O,((e={})[y]=b?m+"px":"",e[v]=_?f+"px":"",e.transform="",e))}const Be={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:be(e.placement),variation:Fe(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,We(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,We(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var ze={passive:!0};const Re={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=fe(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,ze)})),a&&l.addEventListener("resize",i.update,ze),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,ze)})),a&&l.removeEventListener("resize",i.update,ze)}},data:{}};var qe={left:"right",right:"left",bottom:"top",top:"bottom"};function Ve(t){return t.replace(/left|right|bottom|top/g,(function(t){return qe[t]}))}var Ke={start:"end",end:"start"};function Qe(t){return t.replace(/start|end/g,(function(t){return Ke[t]}))}function Xe(t){var e=fe(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Ye(t){return Te(Le(t)).left+Xe(t).scrollLeft}function Ue(t){var e=xe(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Ge(t){return["html","body","#document"].indexOf(ue(t))>=0?t.ownerDocument.body:me(t)&&Ue(t)?t:Ge(Se(t))}function Je(t,e){var i;void 0===e&&(e=[]);var n=Ge(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=fe(n),r=s?[o].concat(o.visualViewport||[],Ue(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Je(Se(r)))}function Ze(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function ti(t,e,i){return e===Gt?Ze(function(t,e){var i=fe(t),n=Le(t),s=i.visualViewport,o=n.clientWidth,r=n.clientHeight,a=0,l=0;if(s){o=s.width,r=s.height;var c=Ee();(c||!c&&"fixed"===e)&&(a=s.offsetLeft,l=s.offsetTop)}return{width:o,height:r,x:a+Ye(t),y:l}}(t,i)):pe(e)?function(t,e){var i=Te(t,!1,"fixed"===e);return i.top=i.top+t.clientTop,i.left=i.left+t.clientLeft,i.bottom=i.top+t.clientHeight,i.right=i.left+t.clientWidth,i.width=t.clientWidth,i.height=t.clientHeight,i.x=i.left,i.y=i.top,i}(e,i):Ze(function(t){var e,i=Le(t),n=Xe(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=ve(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=ve(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+Ye(t),l=-n.scrollTop;return"rtl"===xe(s||i).direction&&(a+=ve(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Le(t)))}function ei(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?be(s):null,r=s?Fe(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case zt:e={x:a,y:i.y-n.height};break;case Rt:e={x:a,y:i.y+i.height};break;case qt:e={x:i.x+i.width,y:l};break;case Vt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?Ie(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case Xt:e[c]=e[c]-(i[h]/2-n[h]/2);break;case Yt:e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function ii(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=void 0===n?t.placement:n,o=i.strategy,r=void 0===o?t.strategy:o,a=i.boundary,l=void 0===a?Ut:a,c=i.rootBoundary,h=void 0===c?Gt:c,d=i.elementContext,u=void 0===d?Jt:d,f=i.altBoundary,p=void 0!==f&&f,m=i.padding,g=void 0===m?0:m,_=Pe("number"!=typeof g?g:Me(g,Qt)),b=u===Jt?Zt:Jt,v=t.rects.popper,y=t.elements[p?b:u],w=function(t,e,i,n){var s="clippingParents"===e?function(t){var e=Je(Se(t)),i=["absolute","fixed"].indexOf(xe(t).position)>=0&&me(t)?$e(t):t;return pe(i)?e.filter((function(t){return pe(t)&&Oe(t,i)&&"body"!==ue(t)})):[]}(t):[].concat(e),o=[].concat(s,[i]),r=o[0],a=o.reduce((function(e,i){var s=ti(t,i,n);return e.top=ve(s.top,e.top),e.right=ye(s.right,e.right),e.bottom=ye(s.bottom,e.bottom),e.left=ve(s.left,e.left),e}),ti(t,r,n));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(pe(y)?y:y.contextElement||Le(t.elements.popper),l,h,r),A=Te(t.elements.reference),E=ei({reference:A,element:v,strategy:"absolute",placement:s}),T=Ze(Object.assign({},v,E)),C=u===Jt?T:A,O={top:w.top-C.top+_.top,bottom:C.bottom-w.bottom+_.bottom,left:w.left-C.left+_.left,right:C.right-w.right+_.right},x=t.modifiersData.offset;if(u===Jt&&x){var k=x[s];Object.keys(O).forEach((function(t){var e=[qt,Rt].indexOf(t)>=0?1:-1,i=[zt,Rt].indexOf(t)>=0?"y":"x";O[t]+=k[i]*e}))}return O}function ni(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?ee:l,h=Fe(n),d=h?a?te:te.filter((function(t){return Fe(t)===h})):Qt,u=d.filter((function(t){return c.indexOf(t)>=0}));0===u.length&&(u=d);var f=u.reduce((function(e,i){return e[i]=ii(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[be(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}const si={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name;if(!e.modifiersData[n]._skip){for(var s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0===r||r,l=i.fallbackPlacements,c=i.padding,h=i.boundary,d=i.rootBoundary,u=i.altBoundary,f=i.flipVariations,p=void 0===f||f,m=i.allowedAutoPlacements,g=e.options.placement,_=be(g),b=l||(_!==g&&p?function(t){if(be(t)===Kt)return[];var e=Ve(t);return[Qe(t),e,Qe(e)]}(g):[Ve(g)]),v=[g].concat(b).reduce((function(t,i){return t.concat(be(i)===Kt?ni(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=e.rects.reference,w=e.rects.popper,A=new Map,E=!0,T=v[0],C=0;C<v.length;C++){var O=v[C],x=be(O),k=Fe(O)===Xt,L=[zt,Rt].indexOf(x)>=0,S=L?"width":"height",D=ii(e,{placement:O,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),$=L?k?qt:Vt:k?Rt:zt;y[S]>w[S]&&($=Ve($));var I=Ve($),N=[];if(o&&N.push(D[x]<=0),a&&N.push(D[$]<=0,D[I]<=0),N.every((function(t){return t}))){T=O,E=!1;break}A.set(O,N)}if(E)for(var P=function(t){var e=v.find((function(e){var i=A.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return T=e,"break"},M=p?3:1;M>0&&"break"!==P(M);M--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function oi(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function ri(t){return[zt,qt,Rt,Vt].some((function(e){return t[e]>=0}))}const ai={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=ii(e,{elementContext:"reference"}),a=ii(e,{altBoundary:!0}),l=oi(r,n),c=oi(a,s,o),h=ri(l),d=ri(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},li={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.offset,o=void 0===s?[0,0]:s,r=ee.reduce((function(t,i){return t[i]=function(t,e,i){var n=be(t),s=[Vt,zt].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},e,{placement:t})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[Vt,qt].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,e.rects,o),t}),{}),a=r[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[n]=r}},ci={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=ei({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},hi={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0!==r&&r,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,d=i.padding,u=i.tether,f=void 0===u||u,p=i.tetherOffset,m=void 0===p?0:p,g=ii(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=be(e.placement),b=Fe(e.placement),v=!b,y=Ie(_),w="x"===y?"y":"x",A=e.modifiersData.popperOffsets,E=e.rects.reference,T=e.rects.popper,C="function"==typeof m?m(Object.assign({},e.rects,{placement:e.placement})):m,O="number"==typeof C?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),x=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,k={x:0,y:0};if(A){if(o){var L,S="y"===y?zt:Vt,D="y"===y?Rt:qt,$="y"===y?"height":"width",I=A[y],N=I+g[S],P=I-g[D],M=f?-T[$]/2:0,j=b===Xt?E[$]:T[$],F=b===Xt?-T[$]:-E[$],H=e.elements.arrow,W=f&&H?Ce(H):{width:0,height:0},B=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},z=B[S],R=B[D],q=Ne(0,E[$],W[$]),V=v?E[$]/2-M-q-z-O.mainAxis:j-q-z-O.mainAxis,K=v?-E[$]/2+M+q+R+O.mainAxis:F+q+R+O.mainAxis,Q=e.elements.arrow&&$e(e.elements.arrow),X=Q?"y"===y?Q.clientTop||0:Q.clientLeft||0:0,Y=null!=(L=null==x?void 0:x[y])?L:0,U=I+K-Y,G=Ne(f?ye(N,I+V-Y-X):N,I,f?ve(P,U):P);A[y]=G,k[y]=G-I}if(a){var J,Z="x"===y?zt:Vt,tt="x"===y?Rt:qt,et=A[w],it="y"===w?"height":"width",nt=et+g[Z],st=et-g[tt],ot=-1!==[zt,Vt].indexOf(_),rt=null!=(J=null==x?void 0:x[w])?J:0,at=ot?nt:et-E[it]-T[it]-rt+O.altAxis,lt=ot?et+E[it]+T[it]-rt-O.altAxis:st,ct=f&&ot?function(t,e,i){var n=Ne(t,e,i);return n>i?i:n}(at,et,lt):Ne(f?at:nt,et,f?lt:st);A[w]=ct,k[w]=ct-et}e.modifiersData[n]=k}},requiresIfExists:["offset"]};function di(t,e,i){void 0===i&&(i=!1);var n,s,o=me(e),r=me(e)&&function(t){var e=t.getBoundingClientRect(),i=we(e.width)/t.offsetWidth||1,n=we(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=Le(e),l=Te(t,r,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==ue(e)||Ue(a))&&(c=(n=e)!==fe(n)&&me(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:Xe(n)),me(e)?((h=Te(e,!0)).x+=e.clientLeft,h.y+=e.clientTop):a&&(h.x=Ye(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function ui(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var fi={placement:"bottom",modifiers:[],strategy:"absolute"};function pi(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return!e.some((function(t){return!(t&&"function"==typeof t.getBoundingClientRect)}))}function mi(t){void 0===t&&(t={});var e=t,i=e.defaultModifiers,n=void 0===i?[]:i,s=e.defaultOptions,o=void 0===s?fi:s;return function(t,e,i){void 0===i&&(i=o);var s,r,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},fi,o),modifiersData:{},elements:{reference:t,popper:e},attributes:{},styles:{}},l=[],c=!1,h={state:a,setOptions:function(i){var s="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,s),a.scrollParents={reference:pe(t)?Je(t):t.contextElement?Je(t.contextElement):[],popper:Je(e)};var r,c,u=function(t){var e=ui(t);return de.reduce((function(t,i){return t.concat(e.filter((function(t){return t.phase===i})))}),[])}((r=[].concat(n,a.options.modifiers),c=r.reduce((function(t,e){var i=t[e.name];return t[e.name]=i?Object.assign({},i,e,{options:Object.assign({},i.options,e.options),data:Object.assign({},i.data,e.data)}):e,t}),{}),Object.keys(c).map((function(t){return c[t]}))));return a.orderedModifiers=u.filter((function(t){return t.enabled})),a.orderedModifiers.forEach((function(t){var e=t.name,i=t.options,n=void 0===i?{}:i,s=t.effect;if("function"==typeof s){var o=s({state:a,name:e,instance:h,options:n});l.push(o||function(){})}})),h.update()},forceUpdate:function(){if(!c){var t=a.elements,e=t.reference,i=t.popper;if(pi(e,i)){a.rects={reference:di(e,$e(i),"fixed"===a.options.strategy),popper:Ce(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEach((function(t){return a.modifiersData[t.name]=Object.assign({},t.data)}));for(var n=0;n<a.orderedModifiers.length;n++)if(!0!==a.reset){var s=a.orderedModifiers[n],o=s.fn,r=s.options,l=void 0===r?{}:r,d=s.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:h})||a)}else a.reset=!1,n=-1}}},update:(s=function(){return new Promise((function(t){h.forceUpdate(),t(a)}))},function(){return r||(r=new Promise((function(t){Promise.resolve().then((function(){r=void 0,t(s())}))}))),r}),destroy:function(){d(),c=!0}};if(!pi(t,e))return h;function d(){l.forEach((function(t){return t()})),l=[]}return h.setOptions(i).then((function(t){!c&&i.onFirstUpdate&&i.onFirstUpdate(t)})),h}}var gi=mi(),_i=mi({defaultModifiers:[Re,ci,Be,_e]}),bi=mi({defaultModifiers:[Re,ci,Be,_e,li,si,hi,je,ai]});const vi=Object.freeze(Object.defineProperty({__proto__:null,afterMain:ae,afterRead:se,afterWrite:he,applyStyles:_e,arrow:je,auto:Kt,basePlacements:Qt,beforeMain:oe,beforeRead:ie,beforeWrite:le,bottom:Rt,clippingParents:Ut,computeStyles:Be,createPopper:bi,createPopperBase:gi,createPopperLite:_i,detectOverflow:ii,end:Yt,eventListeners:Re,flip:si,hide:ai,left:Vt,main:re,modifierPhases:de,offset:li,placements:ee,popper:Jt,popperGenerator:mi,popperOffsets:ci,preventOverflow:hi,read:ne,reference:Zt,right:qt,start:Xt,top:zt,variationPlacements:te,viewport:Gt,write:ce},Symbol.toStringTag,{value:"Module"})),yi="dropdown",wi=".bs.dropdown",Ai=".data-api",Ei="ArrowUp",Ti="ArrowDown",Ci=`hide${wi}`,Oi=`hidden${wi}`,xi=`show${wi}`,ki=`shown${wi}`,Li=`click${wi}${Ai}`,Si=`keydown${wi}${Ai}`,Di=`keyup${wi}${Ai}`,$i="show",Ii='[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',Ni=`${Ii}.${$i}`,Pi=".dropdown-menu",Mi=p()?"top-end":"top-start",ji=p()?"top-start":"top-end",Fi=p()?"bottom-end":"bottom-start",Hi=p()?"bottom-start":"bottom-end",Wi=p()?"left-start":"right-start",Bi=p()?"right-start":"left-start",zi={autoClose:!0,boundary:"clippingParents",display:"dynamic",offset:[0,2],popperConfig:null,reference:"toggle"},Ri={autoClose:"(boolean|string)",boundary:"(string|element)",display:"string",offset:"(array|string|function)",popperConfig:"(null|object|function)",reference:"(string|element|object)"};class qi extends W{constructor(t,e){super(t,e),this._popper=null,this._parent=this._element.parentNode,this._menu=z.next(this._element,Pi)[0]||z.prev(this._element,Pi)[0]||z.findOne(Pi,this._parent),this._inNavbar=this._detectNavbar()}static get Default(){return zi}static get DefaultType(){return Ri}static get NAME(){return yi}toggle(){return this._isShown()?this.hide():this.show()}show(){if(l(this._element)||this._isShown())return;const t={relatedTarget:this._element};if(!N.trigger(this._element,xi,t).defaultPrevented){if(this._createPopper(),"ontouchstart"in document.documentElement&&!this._parent.closest(".navbar-nav"))for(const t of[].concat(...document.body.children))N.on(t,"mouseover",h);this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add($i),this._element.classList.add($i),N.trigger(this._element,ki,t)}}hide(){if(l(this._element)||!this._isShown())return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(t){if(!N.trigger(this._element,Ci,t).defaultPrevented){if("ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.off(t,"mouseover",h);this._popper&&this._popper.destroy(),this._menu.classList.remove($i),this._element.classList.remove($i),this._element.setAttribute("aria-expanded","false"),F.removeDataAttribute(this._menu,"popper"),N.trigger(this._element,Oi,t)}}_getConfig(t){if("object"==typeof(t=super._getConfig(t)).reference&&!o(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${yi.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(){if(void 0===vi)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;"parent"===this._config.reference?t=this._parent:o(this._config.reference)?t=r(this._config.reference):"object"==typeof this._config.reference&&(t=this._config.reference);const e=this._getPopperConfig();this._popper=bi(t,this._menu,e)}_isShown(){return this._menu.classList.contains($i)}_getPlacement(){const t=this._parent;if(t.classList.contains("dropend"))return Wi;if(t.classList.contains("dropstart"))return Bi;if(t.classList.contains("dropup-center"))return"top";if(t.classList.contains("dropdown-center"))return"bottom";const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ji:Mi:e?Hi:Fi}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(F.setDataAttribute(this._menu,"popper","static"),t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,...g(this._config.popperConfig,[t])}}_selectMenuItem({key:t,target:e}){const i=z.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((t=>a(t)));i.length&&b(i,e,t===Ti,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=qi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(2===t.button||"keyup"===t.type&&"Tab"!==t.key)return;const e=z.find(Ni);for(const i of e){const e=qi.getInstance(i);if(!e||!1===e._config.autoClose)continue;const n=t.composedPath(),s=n.includes(e._menu);if(n.includes(e._element)||"inside"===e._config.autoClose&&!s||"outside"===e._config.autoClose&&s)continue;if(e._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;const o={relatedTarget:e._element};"click"===t.type&&(o.clickEvent=t),e._completeHide(o)}}static dataApiKeydownHandler(t){const e=/input|textarea/i.test(t.target.tagName),i="Escape"===t.key,n=[Ei,Ti].includes(t.key);if(!n&&!i)return;if(e&&!i)return;t.preventDefault();const s=this.matches(Ii)?this:z.prev(this,Ii)[0]||z.next(this,Ii)[0]||z.findOne(Ii,t.delegateTarget.parentNode),o=qi.getOrCreateInstance(s);if(n)return t.stopPropagation(),o.show(),void o._selectMenuItem(t);o._isShown()&&(t.stopPropagation(),o.hide(),s.focus())}}N.on(document,Si,Ii,qi.dataApiKeydownHandler),N.on(document,Si,Pi,qi.dataApiKeydownHandler),N.on(document,Li,qi.clearMenus),N.on(document,Di,qi.clearMenus),N.on(document,Li,Ii,(function(t){t.preventDefault(),qi.getOrCreateInstance(this).toggle()})),m(qi);const Vi="backdrop",Ki="show",Qi=`mousedown.bs.${Vi}`,Xi={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Yi={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class Ui extends H{constructor(t){super(),this._config=this._getConfig(t),this._isAppended=!1,this._element=null}static get Default(){return Xi}static get DefaultType(){return Yi}static get NAME(){return Vi}show(t){if(!this._config.isVisible)return void g(t);this._append();const e=this._getElement();this._config.isAnimated&&d(e),e.classList.add(Ki),this._emulateAnimation((()=>{g(t)}))}hide(t){this._config.isVisible?(this._getElement().classList.remove(Ki),this._emulateAnimation((()=>{this.dispose(),g(t)}))):g(t)}dispose(){this._isAppended&&(N.off(this._element,Qi),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_configAfterMerge(t){return t.rootElement=r(t.rootElement),t}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),N.on(t,Qi,(()=>{g(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(t){_(t,this._getElement(),this._config.isAnimated)}}const Gi=".bs.focustrap",Ji=`focusin${Gi}`,Zi=`keydown.tab${Gi}`,tn="backward",en={autofocus:!0,trapElement:null},nn={autofocus:"boolean",trapElement:"element"};class sn extends H{constructor(t){super(),this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return en}static get DefaultType(){return nn}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),N.off(document,Gi),N.on(document,Ji,(t=>this._handleFocusin(t))),N.on(document,Zi,(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,N.off(document,Gi))}_handleFocusin(t){const{trapElement:e}=this._config;if(t.target===document||t.target===e||e.contains(t.target))return;const i=z.focusableChildren(e);0===i.length?e.focus():this._lastTabNavDirection===tn?i[i.length-1].focus():i[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?tn:"forward")}}const on=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",rn=".sticky-top",an="padding-right",ln="margin-right";class cn{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,an,(e=>e+t)),this._setElementAttributes(on,an,(e=>e+t)),this._setElementAttributes(rn,ln,(e=>e-t))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,an),this._resetElementAttributes(on,an),this._resetElementAttributes(rn,ln)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t).getPropertyValue(e);t.style.setProperty(e,`${i(Number.parseFloat(s))}px`)}))}_saveInitialAttribute(t,e){const i=t.style.getPropertyValue(e);i&&F.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=F.getDataAttribute(t,e);null!==i?(F.removeDataAttribute(t,e),t.style.setProperty(e,i)):t.style.removeProperty(e)}))}_applyManipulationCallback(t,e){if(o(t))e(t);else for(const i of z.find(t,this._element))e(i)}}const hn=".bs.modal",dn=`hide${hn}`,un=`hidePrevented${hn}`,fn=`hidden${hn}`,pn=`show${hn}`,mn=`shown${hn}`,gn=`resize${hn}`,_n=`click.dismiss${hn}`,bn=`mousedown.dismiss${hn}`,vn=`keydown.dismiss${hn}`,yn=`click${hn}.data-api`,wn="modal-open",An="show",En="modal-static",Tn={backdrop:!0,focus:!0,keyboard:!0},Cn={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class On extends W{constructor(t,e){super(t,e),this._dialog=z.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new cn,this._addEventListeners()}static get Default(){return Tn}static get DefaultType(){return Cn}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||N.trigger(this._element,pn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(wn),this._adjustDialog(),this._backdrop.show((()=>this._showElement(t))))}hide(){this._isShown&&!this._isTransitioning&&(N.trigger(this._element,dn).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(An),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated())))}dispose(){N.off(window,hn),N.off(this._dialog,hn),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ui({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_showElement(t){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const e=z.findOne(".modal-body",this._dialog);e&&(e.scrollTop=0),d(this._element),this._element.classList.add(An),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,N.trigger(this._element,mn,{relatedTarget:t})}),this._dialog,this._isAnimated())}_addEventListeners(){N.on(this._element,vn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),N.on(window,gn,(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),N.on(this._element,bn,(t=>{N.one(this._element,_n,(e=>{this._element===t.target&&this._element===e.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())}))}))}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(wn),this._resetAdjustments(),this._scrollBar.reset(),N.trigger(this._element,fn)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(N.trigger(this._element,un).defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._element.style.overflowY;"hidden"===e||this._element.classList.contains(En)||(t||(this._element.style.overflowY="hidden"),this._element.classList.add(En),this._queueCallback((()=>{this._element.classList.remove(En),this._queueCallback((()=>{this._element.style.overflowY=e}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;if(i&&!t){const t=p()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!i&&t){const t=p()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=On.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}N.on(document,yn,'[data-bs-toggle="modal"]',(function(t){const e=z.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),N.one(e,pn,(t=>{t.defaultPrevented||N.one(e,fn,(()=>{a(this)&&this.focus()}))}));const i=z.findOne(".modal.show");i&&On.getInstance(i).hide(),On.getOrCreateInstance(e).toggle(this)})),R(On),m(On);const xn=".bs.offcanvas",kn=".data-api",Ln=`load${xn}${kn}`,Sn="show",Dn="showing",$n="hiding",In=".offcanvas.show",Nn=`show${xn}`,Pn=`shown${xn}`,Mn=`hide${xn}`,jn=`hidePrevented${xn}`,Fn=`hidden${xn}`,Hn=`resize${xn}`,Wn=`click${xn}${kn}`,Bn=`keydown.dismiss${xn}`,zn={backdrop:!0,keyboard:!0,scroll:!1},Rn={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class qn extends W{constructor(t,e){super(t,e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return zn}static get DefaultType(){return Rn}static get NAME(){return"offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||N.trigger(this._element,Nn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new cn).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Dn),this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Sn),this._element.classList.remove(Dn),N.trigger(this._element,Pn,{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(N.trigger(this._element,Mn).defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add($n),this._backdrop.hide(),this._queueCallback((()=>{this._element.classList.remove(Sn,$n),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new cn).reset(),N.trigger(this._element,Fn)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new Ui({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():N.trigger(this._element,jn)}:null})}_initializeFocusTrap(){return new sn({trapElement:this._element})}_addEventListeners(){N.on(this._element,Bn,(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():N.trigger(this._element,jn))}))}static jQueryInterface(t){return this.each((function(){const e=qn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}N.on(document,Wn,'[data-bs-toggle="offcanvas"]',(function(t){const e=z.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this))return;N.one(e,Fn,(()=>{a(this)&&this.focus()}));const i=z.findOne(In);i&&i!==e&&qn.getInstance(i).hide(),qn.getOrCreateInstance(e).toggle(this)})),N.on(window,Ln,(()=>{for(const t of z.find(In))qn.getOrCreateInstance(t).show()})),N.on(window,Hn,(()=>{for(const t of z.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(t).position&&qn.getOrCreateInstance(t).hide()})),R(qn),m(qn);const Vn={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},Kn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Qn=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,Xn=(t,e)=>{const i=t.nodeName.toLowerCase();return e.includes(i)?!Kn.has(i)||Boolean(Qn.test(t.nodeValue)):e.filter((t=>t instanceof RegExp)).some((t=>t.test(i)))},Yn={allowList:Vn,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"<div></div>"},Un={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Gn={entry:"(string|element|function|null)",selector:"(string|element)"};class Jn extends H{constructor(t){super(),this._config=this._getConfig(t)}static get Default(){return Yn}static get DefaultType(){return Un}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((t=>this._resolvePossibleFunction(t))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(t){return this._checkContent(t),this._config.content={...this._config.content,...t},this}toHtml(){const t=document.createElement("div");t.innerHTML=this._maybeSanitize(this._config.template);for(const[e,i]of Object.entries(this._config.content))this._setContent(t,i,e);const e=t.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&e.classList.add(...i.split(" ")),e}_typeCheckConfig(t){super._typeCheckConfig(t),this._checkContent(t.content)}_checkContent(t){for(const[e,i]of Object.entries(t))super._typeCheckConfig({selector:e,entry:i},Gn)}_setContent(t,e,i){const n=z.findOne(i,t);n&&((e=this._resolvePossibleFunction(e))?o(e)?this._putElementInTemplate(r(e),n):this._config.html?n.innerHTML=this._maybeSanitize(e):n.textContent=e:n.remove())}_maybeSanitize(t){return this._config.sanitize?function(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=[].concat(...n.body.querySelectorAll("*"));for(const t of s){const i=t.nodeName.toLowerCase();if(!Object.keys(e).includes(i)){t.remove();continue}const n=[].concat(...t.attributes),s=[].concat(e["*"]||[],e[i]||[]);for(const e of n)Xn(e,s)||t.removeAttribute(e.nodeName)}return n.body.innerHTML}(t,this._config.allowList,this._config.sanitizeFn):t}_resolvePossibleFunction(t){return g(t,[this])}_putElementInTemplate(t,e){if(this._config.html)return e.innerHTML="",void e.append(t);e.textContent=t.textContent}}const Zn=new Set(["sanitize","allowList","sanitizeFn"]),ts="fade",es="show",is=".modal",ns="hide.bs.modal",ss="hover",os="focus",rs={AUTO:"auto",TOP:"top",RIGHT:p()?"left":"right",BOTTOM:"bottom",LEFT:p()?"right":"left"},as={allowList:Vn,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',title:"",trigger:"hover focus"},ls={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class cs extends W{constructor(t,e){if(void 0===vi)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t,e),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return as}static get DefaultType(){return ls}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),N.off(this._element.closest(is),ns,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const t=N.trigger(this._element,this.constructor.eventName("show")),e=(c(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(t.defaultPrevented||!e)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:n}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(n.append(i),N.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.on(t,"mouseover",h);this._queueCallback((()=>{N.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(this._isShown()&&!N.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(es),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))N.off(t,"mouseover",h);this._activeTrigger.click=!1,this._activeTrigger[os]=!1,this._activeTrigger[ss]=!1,this._isHovered=null,this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),N.trigger(this._element,this.constructor.eventName("hidden")))}),this.tip,this._isAnimated())}}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(t){const e=this._getTemplateFactory(t).toHtml();if(!e)return null;e.classList.remove(ts,es),e.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME).toString();return e.setAttribute("id",i),this._isAnimated()&&e.classList.add(ts),e}setContent(t){this._newContent=t,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(t){return this._templateFactory?this._templateFactory.changeContent(t):this._templateFactory=new Jn({...this._config,content:t,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(t){return this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(ts)}_isShown(){return this.tip&&this.tip.classList.contains(es)}_createPopper(t){const e=g(this._config.placement,[this,t,this._element]),i=rs[e.toUpperCase()];return bi(this._element,t,this._getPopperConfig(i))}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return g(t,[this._element])}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:t=>{this._getTipElement().setAttribute("data-popper-placement",t.state.placement)}}]};return{...e,...g(this._config.popperConfig,[e])}}_setListeners(){const t=this._config.trigger.split(" ");for(const e of t)if("click"===e)N.on(this._element,this.constructor.eventName("click"),this._config.selector,(t=>{this._initializeOnDelegatedTarget(t).toggle()}));else if("manual"!==e){const t=e===ss?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=e===ss?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");N.on(this._element,t,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusin"===t.type?os:ss]=!0,e._enter()})),N.on(this._element,i,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusout"===t.type?os:ss]=e._element.contains(t.relatedTarget),e._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},N.on(this._element.closest(is),ns,this._hideModalHandler)}_fixTitle(){const t=this._element.getAttribute("title");t&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",t),this._element.setAttribute("data-bs-original-title",t),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout((()=>{this._isHovered&&this.show()}),this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout((()=>{this._isHovered||this.hide()}),this._config.delay.hide))}_setTimeout(t,e){clearTimeout(this._timeout),this._timeout=setTimeout(t,e)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(t){const e=F.getDataAttributes(this._element);for(const t of Object.keys(e))Zn.has(t)&&delete e[t];return t={...e,..."object"==typeof t&&t?t:{}},t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t.container=!1===t.container?document.body:r(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),t}_getDelegateConfig(){const t={};for(const[e,i]of Object.entries(this._config))this.constructor.Default[e]!==i&&(t[e]=i);return t.selector=!1,t.trigger="manual",t}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(t){return this.each((function(){const e=cs.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(cs);const hs={...cs.Default,content:"",offset:[0,8],placement:"right",template:'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>',trigger:"click"},ds={...cs.DefaultType,content:"(null|string|element|function)"};class us extends cs{static get Default(){return hs}static get DefaultType(){return ds}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(t){return this.each((function(){const e=us.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(us);const fs=".bs.scrollspy",ps=`activate${fs}`,ms=`click${fs}`,gs=`load${fs}.data-api`,_s="active",bs="[href]",vs=".nav-link",ys=`${vs}, .nav-item > ${vs}, .list-group-item`,ws={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},As={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class Es extends W{constructor(t,e){super(t,e),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return ws}static get DefaultType(){return As}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const t of this._observableSections.values())this._observer.observe(t)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(t){return t.target=r(t.target)||document.body,t.rootMargin=t.offset?`${t.offset}px 0px -30%`:t.rootMargin,"string"==typeof t.threshold&&(t.threshold=t.threshold.split(",").map((t=>Number.parseFloat(t)))),t}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(N.off(this._config.target,ms),N.on(this._config.target,ms,bs,(t=>{const e=this._observableSections.get(t.target.hash);if(e){t.preventDefault();const i=this._rootElement||window,n=e.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:n,behavior:"smooth"});i.scrollTop=n}})))}_getNewObserver(){const t={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((t=>this._observerCallback(t)),t)}_observerCallback(t){const e=t=>this._targetLinks.get(`#${t.target.id}`),i=t=>{this._previousScrollData.visibleEntryTop=t.target.offsetTop,this._process(e(t))},n=(this._rootElement||document.documentElement).scrollTop,s=n>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=n;for(const o of t){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(e(o));continue}const t=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(s&&t){if(i(o),!n)return}else s||t||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const t=z.find(bs,this._config.target);for(const e of t){if(!e.hash||l(e))continue;const t=z.findOne(decodeURI(e.hash),this._element);a(t)&&(this._targetLinks.set(decodeURI(e.hash),e),this._observableSections.set(e.hash,t))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(_s),this._activateParents(t),N.trigger(this._element,ps,{relatedTarget:t}))}_activateParents(t){if(t.classList.contains("dropdown-item"))z.findOne(".dropdown-toggle",t.closest(".dropdown")).classList.add(_s);else for(const e of z.parents(t,".nav, .list-group"))for(const t of z.prev(e,ys))t.classList.add(_s)}_clearActiveClass(t){t.classList.remove(_s);const e=z.find(`${bs}.${_s}`,t);for(const t of e)t.classList.remove(_s)}static jQueryInterface(t){return this.each((function(){const e=Es.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}N.on(window,gs,(()=>{for(const t of z.find('[data-bs-spy="scroll"]'))Es.getOrCreateInstance(t)})),m(Es);const Ts=".bs.tab",Cs=`hide${Ts}`,Os=`hidden${Ts}`,xs=`show${Ts}`,ks=`shown${Ts}`,Ls=`click${Ts}`,Ss=`keydown${Ts}`,Ds=`load${Ts}`,$s="ArrowLeft",Is="ArrowRight",Ns="ArrowUp",Ps="ArrowDown",Ms="Home",js="End",Fs="active",Hs="fade",Ws="show",Bs=".dropdown-toggle",zs=`:not(${Bs})`,Rs='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',qs=`.nav-link${zs}, .list-group-item${zs}, [role="tab"]${zs}, ${Rs}`,Vs=`.${Fs}[data-bs-toggle="tab"], .${Fs}[data-bs-toggle="pill"], .${Fs}[data-bs-toggle="list"]`;class Ks extends W{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),N.on(this._element,Ss,(t=>this._keydown(t))))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const e=this._getActiveElem(),i=e?N.trigger(e,Cs,{relatedTarget:t}):null;N.trigger(t,xs,{relatedTarget:e}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(e,t),this._activate(t,e))}_activate(t,e){t&&(t.classList.add(Fs),this._activate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.removeAttribute("tabindex"),t.setAttribute("aria-selected",!0),this._toggleDropDown(t,!0),N.trigger(t,ks,{relatedTarget:e})):t.classList.add(Ws)}),t,t.classList.contains(Hs)))}_deactivate(t,e){t&&(t.classList.remove(Fs),t.blur(),this._deactivate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.setAttribute("aria-selected",!1),t.setAttribute("tabindex","-1"),this._toggleDropDown(t,!1),N.trigger(t,Os,{relatedTarget:e})):t.classList.remove(Ws)}),t,t.classList.contains(Hs)))}_keydown(t){if(![$s,Is,Ns,Ps,Ms,js].includes(t.key))return;t.stopPropagation(),t.preventDefault();const e=this._getChildren().filter((t=>!l(t)));let i;if([Ms,js].includes(t.key))i=e[t.key===Ms?0:e.length-1];else{const n=[Is,Ps].includes(t.key);i=b(e,t.target,n,!0)}i&&(i.focus({preventScroll:!0}),Ks.getOrCreateInstance(i).show())}_getChildren(){return z.find(qs,this._parent)}_getActiveElem(){return this._getChildren().find((t=>this._elemIsActive(t)))||null}_setInitialAttributes(t,e){this._setAttributeIfNotExists(t,"role","tablist");for(const t of e)this._setInitialAttributesOnChild(t)}_setInitialAttributesOnChild(t){t=this._getInnerElement(t);const e=this._elemIsActive(t),i=this._getOuterElement(t);t.setAttribute("aria-selected",e),i!==t&&this._setAttributeIfNotExists(i,"role","presentation"),e||t.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(t,"role","tab"),this._setInitialAttributesOnTargetPanel(t)}_setInitialAttributesOnTargetPanel(t){const e=z.getElementFromSelector(t);e&&(this._setAttributeIfNotExists(e,"role","tabpanel"),t.id&&this._setAttributeIfNotExists(e,"aria-labelledby",`${t.id}`))}_toggleDropDown(t,e){const i=this._getOuterElement(t);if(!i.classList.contains("dropdown"))return;const n=(t,n)=>{const s=z.findOne(t,i);s&&s.classList.toggle(n,e)};n(Bs,Fs),n(".dropdown-menu",Ws),i.setAttribute("aria-expanded",e)}_setAttributeIfNotExists(t,e,i){t.hasAttribute(e)||t.setAttribute(e,i)}_elemIsActive(t){return t.classList.contains(Fs)}_getInnerElement(t){return t.matches(qs)?t:z.findOne(qs,t)}_getOuterElement(t){return t.closest(".nav-item, .list-group-item")||t}static jQueryInterface(t){return this.each((function(){const e=Ks.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}N.on(document,Ls,Rs,(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this)||Ks.getOrCreateInstance(this).show()})),N.on(window,Ds,(()=>{for(const t of z.find(Vs))Ks.getOrCreateInstance(t)})),m(Ks);const Qs=".bs.toast",Xs=`mouseover${Qs}`,Ys=`mouseout${Qs}`,Us=`focusin${Qs}`,Gs=`focusout${Qs}`,Js=`hide${Qs}`,Zs=`hidden${Qs}`,to=`show${Qs}`,eo=`shown${Qs}`,io="hide",no="show",so="showing",oo={animation:"boolean",autohide:"boolean",delay:"number"},ro={animation:!0,autohide:!0,delay:5e3};class ao extends W{constructor(t,e){super(t,e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return ro}static get DefaultType(){return oo}static get NAME(){return"toast"}show(){N.trigger(this._element,to).defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(io),d(this._element),this._element.classList.add(no,so),this._queueCallback((()=>{this._element.classList.remove(so),N.trigger(this._element,eo),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this.isShown()&&(N.trigger(this._element,Js).defaultPrevented||(this._element.classList.add(so),this._queueCallback((()=>{this._element.classList.add(io),this._element.classList.remove(so,no),N.trigger(this._element,Zs)}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(no),super.dispose()}isShown(){return this._element.classList.contains(no)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){N.on(this._element,Xs,(t=>this._onInteraction(t,!0))),N.on(this._element,Ys,(t=>this._onInteraction(t,!1))),N.on(this._element,Us,(t=>this._onInteraction(t,!0))),N.on(this._element,Gs,(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=ao.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return R(ao),m(ao),{Alert:Q,Button:Y,Carousel:xt,Collapse:Bt,Dropdown:qi,Modal:On,Offcanvas:qn,Popover:us,ScrollSpy:Es,Tab:Ks,Toast:ao,Tooltip:cs}})); //# sourceMappingURL=bootstrap.bundle.min.js.map </script><script nonce="MDZFNk9GYW5hVk1ESnMxamdKVnhUZVRqeEdMV21wR252YnNzYUJockRYdWFMVTlIc045Q3E=" > "use strict"; let carousels={};document.querySelectorAll('.carousel-sync').forEach((carousel)=>{let bs_carousel=new bootstrap.Carousel(carousel,{interval:false,pause:carousel.getAttribute('data-bs-pause')||false,});let interval=carousel.getAttribute('data-bs-interval')||1000;if(!carousels[interval]){carousels[interval]=[];} carousels[interval].push(bs_carousel);});for(const interval in carousels){setInterval(function(){carousels[interval].forEach((carousel)=>{carousel.nextWhenVisible();});},interval);} let documentTitle=document.title;document.addEventListener('blur',()=>{document.title='Get back to space! 🚀';});document.addEventListener('focus',()=>{document.title=documentTitle;});let header=document.getElementsByTagName('header')[0];let navbarNav=document.getElementById('navbarNav');navbarNav.addEventListener('show.bs.collapse',()=>{header.classList.add('expanding');});navbarNav.addEventListener('shown.bs.collapse',()=>{header.classList.remove('expanding');header.classList.add('expanded');});navbarNav.addEventListener('hide.bs.collapse',()=>{header.classList.remove('expanded');header.classList.add('shrinking');});navbarNav.addEventListener('hidden.bs.collapse',()=>{header.classList.remove('shrinking');});setTimeout(()=>{document.getElementsByTagName('body')[0].classList.remove('load-fade-in');},1000);document.getScroll=function(){var sx,sy,d=document,r=d.documentElement,b=d.body;sx=r.scrollLeft||b.scrollLeft||0;sy=r.scrollTop||b.scrollTop||0;return{x:sx,y:sy,};};document.addEventListener('scroll',(event)=>{let backgrounds=Array.from(document.getElementsByClassName('shift-background'));let scrollPosition=document.getScroll();backgrounds.forEach((background)=>{background.style.backgroundPositionX=-scrollPosition.y*0.2+'px';});}); </script>