From 518d381447b61cd4b47c0102d760e4e4260f7b9f Mon Sep 17 00:00:00 2001
From: garronej
+
+ Alg\u00FA ha creat un compte de {2} amb aquesta adre\u00E7a de correu electr\u00F2nic. Si has estat tu, fes clic a l''enlla\u00E7 seg\u00FCent per verificar la teva adre\u00E7a de correu electr\u00F2nic. Aquest enlla\u00E7 expirar\u00E0 en {1} minuts. Si tu no has creat aquest compte, simplement ignora aquest missatge. Alg\u00FA ha demanat de canviar les credencials del teu compte de {2}. Si has estat tu, fes clic a l''enlla\u00E7 seg\u00FCent per a reiniciar-les. Aquest enlla\u00E7 expirar\u00E0 en {1} minuts. Si no vols reiniciar les teves credencials, simplement ignora aquest missatge i no es realitzar\u00E0 cap canvi. L''administrador ha sol\u00B7licitat que actualitzis el teu compte de {2}. Fes clic a l''enlla\u00E7 inferior per iniciar aquest proc\u00E9s. Aquest enlla\u00E7 expirar\u00E0 en {1} minutes. Si no est\u00E0s al tant que l''administrador hagi sol\u00B7licitat aix\u00F2, simplement ignora aquest missatge i no es realitzar\u00E0 cap canvi. S''ha detectat un intent d''acc\u00E9s fallit al teu compte el {0} des de {1}. Si no has estat tu, si us plau contacta amb l''administrador. OTP s''ha eliminat del teu compte el {0} des de {1}. Si no has estat tu, si us plau contacta amb l''administrador. P>
+eventUpdatePasswordSubject=Actualitzaci\u00F3 de contrasenya
+eventUpdatePasswordBody=La teva contrasenya s''ha actualitzat el {0} des de {1}. Si no has estat tu, si us plau contacta amb l''administrador.
+eventUpdatePasswordBodyHtml= La teva contrasenya s''ha actualitzat el {0} des de {1}. Si no has estat tu, si us plau contacta amb l''administrador. OTP s''ha actualitzat al teu compte el {0} des de {1}. Si no has estat tu, si us plau contacta amb l''administrador. Někdo vytvořil účet {2} s touto e-mailovou adresou. Pokud jste to vy, klikněte na níže uvedený odkaz a ověřte svou e-mailovou adresu. Odkaz na ověření e-mailové adresy Platnost odkazu vyprší za {3}. Pokud jste tento účet nevytvořili, tuto zprávu ignorujte. Toto je testovací zpráva Někdo chce propojit váš účet {1} s účtem {0} uživatele {2}. Pokud jste to vy, klikněte na níže uvedený odkaz a propojte účty. Platnost tohoto odkazu je {5}. Pokud nechcete propojit účet, tuto zprávu ignorujte. Pokud propojíte účty, budete se moci přihlásit jako {1} pomocí {0}. Někdo právě požádal o změnu pověření vašeho účtu {2}. Pokud jste to vy, klikněte na odkaz níže, abyste je resetovali. Platnost tohoto odkazu vyprší během {3}. Pokud nechcete obnovit vaše pověření, ignorujte tuto zprávu a nic se nezmění. Váš administrátor vás požádal o provedení následujících akcí u účtu {2}: {3}. Začněte kliknutím na níže uvedený odkaz. Platnost tohoto odkazu je {4}. Pokud si nejste jisti, zda je tento požadavek v pořádku, ignorujte tuto zprávu. Někdo se neúspěšně pokusil přihlásit k účtu {0} z {1}. Pokud jste to nebyli vy, kontaktujte administrátora. V účtu {0} bylo odebráno nastavení OTP z {1}. Pokud jste to nebyli vy, kontaktujte administrátora. V účtu {0} bylo změněno heslo z {1}. Pokud jste to nebyli vy, kontaktujte administrátora. V účtu {0} bylo změněno nastavení OTP z {1}. Pokud jste to nebyli vy, kontaktujte administrátora. Ověřte prosím svou e-mailovou adresu zadáním následujícího kódu. {0} Nogen har oprettet en {2} konto med denne email adresse. Hvis dette var dig, bedes du trykke på forbindet herunder for at verificere din email adresse Dette link vil udløbe inden for {3}. Hvis det var dig der har oprettet denne konto, bedes du se bort fra denne mail. Dette er en test besked Someone wants to link your {1} account with {0} account of user {2} . Hvis dette var dig, bedes du klikke på forbindet herunder for at forbinde de to konti Dette link vil udløbe efter {5}. nHvis du ikke vil forbinde disse konti, kan du bare ignore denne besked. Hvis du vælger at forbinde de to konti, kan du logge ind som {1} via {0}.
+passwordResetSubject=Gendan adgangskode
+passwordResetBody=Nogen har forsøgt at nulstille adgangskoden til {2}. Hvis dette var dig, bedes du klikke på linket herunder for at nulstille adgangskoden.\n\n{0}\n\nDette link og kode vil udløbe efter {3}.\n\nHvis du ikke ønsker at nulstille din adgangskode, kan du se bort fra denne besked.
+passwordResetBodyHtml= Nogen har forsøgt at nulstille adgangskoden til {2}. Hvis dette var dig, bedes du klikke på linket herunder for at nulstille adgangskoden. Dette link og kode vil udløbe efter {3}. Hvis du ikke ønsker at nulstille din adgangskode, kan du se bort fra denne besked. Din administrator beder dig opdatere din {2} konto ved at udføre følgende handling(er): {3}. Klik på linket herunder for at starte processen. Dette link udløber efter {4}. Hvis du ikke mener at din administrator har efterspurgt dette, kan du blot se bort fra denne besked. Et fejlet logind forsøg er blevet registreret på din konto d. {0} fra {1}. Hvis dette ikke var dig, bedes du kontakte din administrator omgående. OTP er blevet fjernet fra din konto d. {0} fra {1}. Hvis dette ikke var dig, bedes du kontakte din administrator omgående. Din adgangskode er blevet opdateret d. {0} fra {1}. Hvis dette ikke var dig, bedes du kontakte din administrator omgående. OTP blev opdateret på din konto d. {0} fra {1}. Hvis dette ikke var dig, bedes du kontakte din administrator omgående. Verificer din email adresse ved at indtaste følgende kode. {0} Jemand hat ein {2} Konto mit dieser E-Mail-Adresse erstellt. Falls das Sie waren, klicken Sie auf den Link, um die E-Mail-Adresse zu verifizieren. Link zur Best\u00E4tigung der E-Mail-Adresse Dieser Link wird in {1} Minuten ablaufen. Falls Sie dieses Konto nicht erstellt haben, dann k\u00F6nnen sie diese Nachricht ignorieren. Es wurde beantragt Ihren Account {1} mit dem Account {0} von Benutzer {2} zu verlinken. Sollten Sie dies beantragt haben, klicken Sie auf den unten stehenden Link. Link zur Best\u00E4tigung der Kontoverkn\u00FCpfung Die G\u00FCltigkeit des Links wird in {4} Minuten verfallen. Sollten Sie Ihren Account nicht verlinken wollen, ignorieren Sie diese Nachricht. Wenn Sie die Accounts verlinken wird ein Login auf {1} \u00FCber {0} erm\u00F6glicht. Es wurde eine \u00C4nderung der Anmeldeinformationen f\u00FCr Ihren Account {2} angefordert. Wenn Sie diese \u00C4nderung beantragt haben, klicken Sie auf den unten stehenden Link. Link zum Zur\u00FCcksetzen von Anmeldeinformationen Die G\u00FCltigkeit des Links wird in {1} Minuten verfallen. Sollten Sie keine \u00C4nderung vollziehen wollen k\u00F6nnen Sie diese Nachricht ignorieren und an Ihrem Account wird nichts ge\u00E4ndert. Ihr Administrator hat Sie aufgefordert Ihren Account {2} zu aktualisieren. Klicken Sie auf den unten stehenden Link um den Prozess zu starten. Die G\u00FCltigkeit des Links wird in {1} Minuten verfallen. Sollten Sie sich dieser Aufforderung nicht bewusst sein, ignorieren Sie diese Nachricht und Ihr Account bleibt unver\u00E4ndert. Jemand hat um {0} von {1} versucht, sich mit Ihrem Konto anzumelden. Falls das nicht Sie waren, dann kontaktieren Sie bitte Ihren Admin. OTP wurde von Ihrem Konto am {0} von {1} entfernt. Falls das nicht Sie waren, dann kontaktieren Sie bitte Ihren Admin. Ihr Passwort wurde am {0} von {1} ge\u00E4ndert. Falls das nicht Sie waren, dann kontaktieren Sie bitte Ihren Admin. OTP wurde am {0} von {1} ge\u00E4ndert. Falls das nicht Sie waren, dann kontaktieren Sie bitte Ihren Admin. Bitte verifizieren Sie Ihre E-Mail-Adresse, indem Sie den folgenden Code eingeben. {0} Someone has created a {2} account with this email address. If this was you, click the link below to verify your email address Link to e-mail address verification This link will expire within {3}. If you didn''t create this account, just ignore this message. To update your {2} account with email address {1}, click the link below This link will expire within {3}. If you don''t want to proceed with this modification, just ignore this message. This is a test message Someone wants to link your {1} account with {0} account of user {2}. If this was you, click the link below to link accounts Link to confirm account linking This link will expire within {5}. If you don''t want to link account, just ignore this message. If you link accounts, you will be able to login to {1} through {0}. Someone just requested to change your {2} account''s credentials. If this was you, click on the link below to reset them. This link will expire within {3}. If you don''t want to reset your credentials, just ignore this message and nothing will be changed. Your administrator has just requested that you update your {2} account by performing the following action(s): {3}. Click on the link below to start this process. This link will expire within {4}. If you are unaware that your administrator has requested this, just ignore this message and nothing will be changed. A failed login attempt was detected to your account on {0} from {1}. If this was not you, please contact an administrator. OTP was removed from your account on {0} from {1}. If this was not you, please contact an administrator. Your password was changed on {0} from {1}. If this was not you, please contact an administrator. OTP was updated for your account on {0} from {1}. If this was not you, please contact an administrator. Please verify your email address by entering in the following code. {0} Alguien ha creado una cuenta de {2} con esta direcci\u00F3n de email. Si has sido t\u00FA, haz click en el enlace siguiente para verificar tu direcci\u00F3n de email. Enlace de verficaci\u00F3n de direcci\u00F3n de email Este enlace expirar\u00E1 en {1} minutos. Si t\u00FA no has creado esta cuenta, simplemente ignora este mensaje. Alguien ha solicitado cambiar las credenciales de tu cuenta de {2}. Si has sido t\u00FA, haz clic en el enlace siguiente para reiniciarlas. Este enlace expirar\u00E1 en {1} minutos. Si no quieres reiniciar tus credenciales, simplemente ignora este mensaje y no se realizar\u00E1 ning\u00FAn cambio. El administrador ha solicitado que actualices tu cuenta de {2}. Haz clic en el enlace inferior para iniciar este proceso. Este enlace expirar\u00E1 en {1} minutos. Si no est\u00E1s al tanto de que el administrador haya solicitado esto, simplemente ignora este mensaje y no se realizar\u00E1 ning\u00FAn cambio. Se ha detectado un intento de acceso fallido a tu cuenta el {0} desde {1}. Si no has sido t\u00FA, por favor contacta con el administrador. OTP fue eliminado de tu cuenta el {0} desde {1}. Si no has sido t\u00FA, por favor contacta con el administrador. Tu contrase\u00F1a se ha actualizado el {0} desde {1}. Si no has sido t\u00FA, por favor contacta con el administrador. OTP se ha actualizado en tu cuenta el {0} desde {1}. Si no has sido t\u00FA, por favor contacta con el administrador. Tällä sähköpostiosoitteella on luotu {2}-tili. Jos loit tilin itse, klikkaa alla olevaa linkkiä vahvistaaksesi sähköpostiosoitteesi Linkin vanhenemisaika: {3}. Jos et luonut tätä tiliä, jätä viesti huomiotta. Tämä on testiviesti Saimme pyynnön linkittää {1}-tilin {0}-tiliin käyttäjälle {2}. Jos teit tämän pyynnön, klikkaa alla olevaa linkkiä tilien linkittämiseksi Linkin vanhenemisaika: {5}. Jos et halua linkittää tilejä, jätä tämä viesti huomiotta. Jos linkität tilit, voit jatkossa kirjautua tilille {1}, tilin {0} kautta. Saimme pyynnön vaihtaa {2}-tilisi salasanan. Jos pyysit itse salasanan vaihtoa, pääset tästä linkistä vaihtamaan salasanasi: Linkin vanhenemisaika: {3}. Jos et halua vaihtaa salasanaasi tai et ole pyytänyt salasanan vaihtoa itse, jätä tämän viesti huomiotta. Järjestelmänvalvoja on pyytänyt sinua päivittämään {2}-tilisi tekemällä seuraavat toimenpiteet: {3}. Aloita prosessi klikkaamalla alla olevaa linkkiä. Linkin vanhenemisaika: {4}. Jos et ole tietoinen tästä järjestelmänvalvojan pyynnöstä, jätä tämän viesti huomiotta. Tilillänne on havaittu epäonnistunut kirjautumisyritys {0} osoitteesta {1}. Jos et itse yrittänyt kirjautua tilillesi, ota yhteyttä järjestelmänvalvojaan. OTP on poistettu tililtäsi {0} osoitteesta {1}. Jos et itse tehnyt tätä, ota yhteyttä järjestelmänvalvojaan. Tilisi salasana on vaihdettu {0} osoitteesta {1}. Jos et itse tehnyt tätä, ota yhteyttä järjestelmänvalvojaan. OTP on päivitetty tilillesi {0} osoitteesta {1}. Jos et itse tehnyt tätä, ota yhteyttä järjestelmänvalvojaan. Ole hyvä ja vahvista sähköpostiosoitteesi alla olevalla koodilla. {0} Quelqu''un vient de cr\u00e9er un compte "{2}" avec votre courriel. Si vous \u00eates \u00e0 l''origine de cette requ\u00eate, veuillez cliquer sur le lien ci-dessous afin de v\u00e9rifier votre adresse de courriel Ce lien expire dans {3}. Sinon, veuillez ignorer ce message. Afin d''utiliser le courriel {1} dans votre compte {2}, cliquez sur le lien ci-dessous Ce lien expirera dans {3}. Sinon, veuillez ignorer ce message. Quelqu''un souhaite lier votre compte {1} au compte {0} de l''utilisateur {2}. Si vous \u00eates \u00e0 l''origine de cette requ\u00eate, veuillez cliquer sur le lien ci-dessous pour lier les comptes Lien pour confirmer la liaison des comptes Ce lien expire dans {5}. Sinon, veuillez ignorer ce message ; aucun changement ne sera effectu\u00e9 sur votre compte. Si vous liez les comptes, vous pourrez vous connecter \u00e0 {1} via {0}. Quelqu''un vient de demander une r\u00e9initialisation de mot de passe pour votre compte {2}. Si vous \u00eates \u00e0 l''origine de cette requ\u00eate, veuillez cliquer sur le lien ci-dessous pour le mettre \u00e0 jour. Lien pour r\u00e9initialiser votre mot de passe Ce lien expire dans {3}. Sinon, veuillez ignorer ce message ; aucun changement ne sera effectu\u00e9 sur votre compte. Votre administrateur vient de demander une mise \u00e0 jour de votre compte {2} pour r\u00e9aliser les actions suivantes : {3}. Veuillez cliquer sur le lien ci-dessous afin de commencer le processus. Ce lien expire dans {4}. Si vous n''\u00eates pas \u00e0 l''origine de cette requ\u00eate, veuillez ignorer ce message ; aucun changement ne sera effectu\u00e9 sur votre compte. Une tentative de connexion a \u00e9t\u00e9 d\u00e9tect\u00e9e sur votre compte {0} depuis {1}. Si vous n''\u00eates pas \u00e0 l''origine de cette requ\u00eate, veuillez contacter votre administrateur. Le OTP a \u00e9t\u00e9 supprim\u00e9 de votre compte {0} depuis {1}. Si vous n''\u00e9tiez pas \u00e0 l''origine de cette requ\u00eate, veuillez contacter votre administrateur. Votre mot de passe pour votre compte {0} a \u00e9t\u00e9 modifi\u00e9 depuis {1}. Si vous n''\u00e9tiez pas \u00e0 l''origine de cette requ\u00eate, veuillez contacter votre administrateur. Le OTP a \u00e9t\u00e9 mis \u00e0 jour pour votre compte {0} depuis {1}. Si vous n''\u00e9tiez pas \u00e0 l''origine de cette requ\u00eate, veuillez contacter votre administrateur. Veuillez v\u00e9rifier votre adresse de courriel en saisissant le code suivant. {0} Ezzel az email címmel valaki létrehozott egy {2} tartomány felhasználói fiókot. Amennyiben a fiókot Ön hozta létre, kérem kattintson a lenti hivatkozásra, hogy megerősítse fiókját és ezt az email címet. Hivatkozás a fiók és az email cím megerősítéséhez A hivatkozás érvényét veszti {3} múlva. Ha nem ön hozta létre a felhasználói fiókot, akkor kérem hagyja figyelmen kívül ezt az üzenetet. Ez egy KEYCLOAK teszt üzenet. Valaki össze kívánja kötni az Ön {1} tartomány fiókját a(z) {0} személyazonosság-kezelő {2} felhasználói fiókjával. Amennyiben az összekötést Ön kezdeményezte kérem kattintson a lenti hivatkozásra, hogy összekösse fiókjait. Hivatkozás a fiók összekötés megerősítéshez A hivatkozás érvényét veszti {5} múlva. Ha nem ön kezdeményezte a felhasználói fiókok összekötését, akkor kérem hagyja figyelmen kívül ezt az üzenetet. Ha összeköti a fiókjait, akkor beléphet a(z) {1} tartományba a(z) {0} szolgáltatón keresztül. Valaki vissza kívánja állítani az Ön "{2}" tartományi fiókjának jelszavát. Amennyiben a jelszó visszaállítást Ön kezdeményezte, kérem kattintson a lenti hivatkozásra a jelszava megváltoztatásához. Hivatkozás a jelszó visszaállításhoz A hivatkozás érvényét veszti {3} múlva. Ha nem ön kérte a jelszó visszaállítást, akkor kérem hagyja figyelmen kívül ezt az üzenetet, a jelszava nem fog megváltozni. Az alkalmazás adminisztrátora kezdeményezte az Ön "{2}" tartományi felhasználói fiók adatainak módosítását a következő műveletekkel: {3}. Kérem kattintson a lenti hivatkozásra, hogy megkezdhesse a kért módosításokat. Hivatkozás a felhasználói fiók adatok módosításához A hivatkozás érvényét veszti {4} múlva. Ha nincs tudomása arról, hogy az adminisztrátora módosításokat kért Öntől, akkor kérem hagyja figyelmen kívül ezt az üzenetet, az adatai nem fognak megváltozni. Sikertelen belépési kísérlet történt {0} időpontban a(z) {1} címről. Kérem lépjen kapcsolatba az alkalmazás adminisztrátorral amennyiben nem ön próbált meg belépni. Az egyszer használatos jelszó (OTP) funkciót {0} időpontban a(z) {1} címről érkező kérés értelmében eltávolítottuk a fiókjáról. Kérem haladéktalanul lépjen kapcsolatba az alkalmazás adminisztrátorral amennyiben nem ön igényelte az OTP eltávolítását. Jelszavát {0} időpontban a(z) {1} címről érkező kérés értelmében lecseréltük. Kérem haladéktalanul lépjen kapcsolatba az alkalmazás adminisztrátorral amennyiben nem ön igényelte a jelszó cserét. Az egyszer használatos jelszó (OTP) beállításait {0} időpontban a(z) {1} címről érkező kérés értelmében módosítottuk a fiókján. Kérem haladéktalanul lépjen kapcsolatba az alkalmazás adminisztrátorral amennyiben nem ön igényelte az OTP beállítások módosítását. Kérem erősítse meg az email címét a következő kód megadásával. {0} Qualcuno ha creato un account {2} con questo indirizzo email. Se sei stato tu, fai clic sul link seguente per verificare il tuo indirizzo email Link per verificare l''indirizzo email Questo link scadr\u00e0 in {3}. Se non sei stato tu a creare questo account, ignora questo messaggio. Questo \u00e8 un messaggio di test Qualcuno vuole associare il tuo account {1} con l''account {0} dell''utente {2}. Se sei stato tu, fai clic sul link seguente per associare gli account Questo link scadr\u00e0 in {5}. Se non vuoi associare l''account, ignora questo messaggio. Se associ gli account, potrai accedere a {1} attraverso {0}. Qualcuno ha appena richiesto di cambiare le credenziali di accesso al tuo account {2}. Se sei stato tu, fai clic sul link seguente per reimpostarle. Questo link scadr\u00e0 in {3}. Se non vuoi reimpostare le tue credenziali di accesso, ignora questo messaggio e non verr\u00e0 effettuato nessun cambio. Il tuo amministratore ha appena richiesto un aggiornamento del tuo account {2} ed \u00e8 necessario che tu esegua la/le seguente/i azione/i: {3}. Fai clic sul link seguente per iniziare questo processo. Questo link scadr\u00e0 in {4}. Se non sei a conoscenza della richiesta del tuo amministratore, ignora questo messaggio e non verr\u00e0 effettuato nessun cambio. \u00c8 stato rilevato un tentativo fallito di accesso al tuo account il {0} da {1}. Se non sei stato tu, per favore contatta l''amministratore. La OTP (password temporanea valida una volta sola) \u00e8 stata rimossa dal tuo account il {0} da {1}. Se non sei stato tu, per favore contatta l''amministratore. La tua password \u00e8 stata cambiata il {0} da {1}. Se non sei stato tu, per favore contatta l''amministratore. La OTP (password temporanea valida una volta sola) \u00e8 stata aggiornata per il tuo account il {0} da {1}. Se non sei stato tu, per favore contatta l''amministratore. Per favore verifica il tuo indirizzo email inserendo il codice seguente. {0} このメールアドレスで{2}アカウントが作成されました。以下のリンクをクリックしてメールアドレスの確認を完了してください。 このリンクは{3}だけ有効です。 もしこのアカウントの作成に心当たりがない場合は、このメールを無視してください。 これはテストメッセージです あなたの{1}アカウントと{2}ユーザーの{0}アカウントのリンクが要求されました。以下のリンクをクリックしてアカウントのリンクを行ってください。 このリンクは{5}だけ有効です。 もしアカウントのリンクを行わない場合は、このメッセージを無視してください。アカウントのリンクを行うことで、{0}経由で{1}にログインすることができるようになります。 あなたの{2}アカウントのパスワードの変更が要求されています。以下のリンクをクリックしてパスワードのリセットを行ってください。 このリンクは{3}だけ有効です。 もしパスワードのリセットを行わない場合は、このメッセージを無視してください。何も変更されません。 次のアクションを実行することにより、管理者よりあなたの{2}アカウントの更新が要求されています: {3}。以下のリンクをクリックしてこのプロセスを開始してください。 このリンクは{4}だけ有効です。 管理者からのこの変更要求についてご存知ない場合は、このメッセージを無視してください。何も変更されません。 {0}に{1}からのログイン失敗があなたのアカウントで検出されました。心当たりがない場合は管理者に連絡してください。 {0}に{1}からの操作でOTPが削除されました。心当たりがない場合は、管理者に連絡してください。 {0}に{1}からの操作であなたのパスワードが変更されました。心当たりがない場合は、管理者に連絡してください。 {0}に{1}からの操作でOTPが更新されました。心当たりがない場合は、管理者に連絡してください。 次のコードを入力してメールアドレスを確認してください。 {0} Paskyra {2} sukurta naudojant šį el. pašto adresą. Jei tao buvote Jūs, tuomet paspauskite žemiau esančią nuorodą Ši nuoroda galioja {1} min. nJei paskyros nekūrėte, tuomet ignuoruokite šį laišką. žas pageidauja susieti Jūsų {1} paskyrą su {0} {2} naudotojo paskyrą. Jei tai buvote Jūs, tuomet paspauskite žemiau esančią nuorodą norėdami susieti paskyras Ši nuoroda galioja {4} min. Jei paskyrų susieti nenorite, tuomet ignoruokite šį laišką. Jei paskyras susiesite, tuomet prie {1} galėsiste prisijungti per {0}. Kažkas pageidauja pakeisti Jūsų paskyros {2} slaptažodį. Jei tai buvote Jūs, tuomet paspauskite žemiau esančią nuorodą slaptažodžio pakeitimui. Ši nuoroda ir kodas galioja {1} min. Jei nepageidajate keisti slaptažodžio, tuomet ignoruokite šį laišką ir niekas nebus pakeista. Sistemos administratorius pageidauja, kad Jūs atnaujintumėte savo {2} paskyrą. Paspauskite žemiau esančią nuorodą paskyros duomenų atnaujinimui. Ši nuoroda galioja {1} min. Jei Jūs neasate tikri, kad tai administratoriaus pageidavimas, tuomet ignoruokite šį laišką ir niekas nebus pakeista. Bandymas prisijungti prie jūsų paskyros {0} iš {1} nesėkmingas. Jei tai nebuvote jūs, tuomet susisiekite su administratoriumi Kažkas pageidauja atsieti TOPT Jūsų {1} paskyroje su {0}. Jei tai nebuvote Jūs, tuomet susisiekite su administratoriumi {1} paskyroje {0} pakeisas jūsų slaptažodis. Jei Jūs nekeitėte, tuomet susisiekite su administratoriumi OTP Jūsų {1} paskyroje su {0} buvo atnaujintas. Jei tai nebuvote Jūs, tuomet susisiekite su administratoriumi Iemand heeft een {2} account aangemaakt met dit e-mailadres. Als u dit was, klikt u op de onderstaande koppeling om uw e-mailadres te bevestigen Koppeling naar e-mailadres bevestiging Deze koppeling zal binnen {3} vervallen.
Dit is een testbericht
+identityProviderLinkSubject=Koppel {0} +identityProviderLinkBody=Iemand wil uw "{1}" account koppelen met "{0}" account van gebruiker {2}. Als u dit was, klik dan op de onderstaande link om de accounts te koppelen\n\n{3}\n\nDeze link zal over {5} vervallen.\n\nAls u de accounts niet wilt koppelen, negeer dan dit bericht. Als u accounts koppelt, dan kunt u bij {1} inloggen via {0}. +identityProviderLinkBodyHtml=Iemand wil uw "{1}" account koppelen met "{0}" account van gebruiker {2}. Als u dit was, klik dan op de onderstaande link om de accounts te koppelen
Deze link zal over {5} vervallen.
Als u de accounts niet wilt koppelen, negeer dan dit bericht. Als u accounts koppelt, dan kunt u bij {1} inloggen via {0}.
+passwordResetSubject=Wijzig wachtwoord +passwordResetBody=Iemand verzocht de aanmeldgegevens van uw {2} account te wijzigen. Als u dit was, klik dan op de onderstaande koppeling om ze te wijzigen.\n\n{0}\n\nDe link en de code zullen binnen {3} vervallen.\n\nAls u uw aanmeldgegevens niet wilt wijzigen, negeer dan dit bericht en er zal niets gewijzigd worden. +passwordResetBodyHtml=Iemand verzocht de aanmeldgegevens van uw {2} account te wijzigen. Als u dit was, klik dan op de onderstaande koppeling om ze te wijzigen.
De link en de code zullen binnen {3} vervallen.
Als u uw aanmeldgegevens niet wilt wijzigen, negeer dan dit bericht en er zal niets gewijzigd worden.
+executeActionsSubject=Wijzig uw account +executeActionsBody=Uw beheerder heeft u verzocht uw {2} account te wijzigen. Klik op de onderstaande koppeling om dit proces te starten. \n\n{0}\n\nDeze link zal over {4} vervallen. \n\nAls u niet over dit verzoek op de hoogte was, negeer dan dit bericht om uw account ongewijzigd te laten. +executeActionsBodyHtml=Uw beheerder heeft u verzocht uw {2} account te wijzigen. Klik op de onderstaande koppeling om dit proces te starten.
Deze link zal over {4} vervallen.
Als u niet over dit verzoek op de hoogte was, negeer dan dit bericht om uw account ongewijzigd te laten.
+eventLoginErrorSubject=Inlogfout +eventLoginErrorBody=Er is een foutieve inlogpoging gedetecteerd op uw account om {0} vanuit {1}. Als u dit niet was, neem dan contact op met de beheerder. +eventLoginErrorBodyHtml=Er is een foutieve inlogpoging gedetecteerd op uw account om {0} vanuit {1}. Als u dit niet was, neem dan contact op met de beheerder.
+eventRemoveTotpSubject=OTP verwijderd +eventRemoveTotpBody=OTP is verwijderd van uw account om {0} vanuit {1}. Als u dit niet was, neem dan contact op met uw beheerder. +eventRemoveTotpBodyHtml=OTP is verwijderd van uw account om {0} vanuit {1}. Als u dit niet was, neem dan contact op met uw beheerder.
+eventUpdatePasswordSubject=Wachtwoord gewijzigd +eventUpdatePasswordBody=Uw wachtwoord is gewijzigd om {0} door {1}. Als u dit niet was, neem dan contact op met uw beheerder. +eventUpdatePasswordBodyHtml=Uw wachtwoord is gewijzigd om {0} door {1}. Als u dit niet was, neem dan contact op met uw beheerder.
+eventUpdateTotpSubject=OTP gewijzigd +eventUpdateTotpBody=OTP is gewijzigd voor uw account om {0} door {1}. Als u dit niet was, neem dan contact op met uw beheerder. +eventUpdateTotpBodyHtml=OTP is gewijzigd voor uw account om {0} door {1}. Als u dit niet was, neem dan contact op met uw beheerder.
+ + +# units for link expiration timeout formatting +linkExpirationFormatter.timePeriodUnit.seconds=seconden +linkExpirationFormatter.timePeriodUnit.seconds.1=seconde +linkExpirationFormatter.timePeriodUnit.minutes=minuten +linkExpirationFormatter.timePeriodUnit.minutes.1=minuut +linkExpirationFormatter.timePeriodUnit.hours=uur +linkExpirationFormatter.timePeriodUnit.hours.1=uur +linkExpirationFormatter.timePeriodUnit.days=dagen +linkExpirationFormatter.timePeriodUnit.days.1=dag diff --git a/keycloak_email/messages/messages_no.properties b/keycloak_email/messages/messages_no.properties new file mode 100644 index 0000000..32334e9 --- /dev/null +++ b/keycloak_email/messages/messages_no.properties @@ -0,0 +1,24 @@ +emailVerificationSubject=Bekreft e-postadresse +emailVerificationBody=Noen har opprettet en {2} konto med denne e-postadressen. Hvis dette var deg, klikk p\u00E5 lenken nedenfor for \u00E5 bekrefte e-postadressen din\n\n{0}\n\nDenne lenken vil utl\u00F8pe om {1} minutter.\n\nHvis du ikke opprettet denne kontoen, vennligst ignorer denne meldingen. +emailVerificationBodyHtml=Noen har opprettet en {2} konto med denne e-postadressen. Hvis dette var deg, klikk p\u00E5 lenken nedenfor for \u00E5 bekrefte e-postadressen din
Denne lenken vil utl\u00F8pe om {1} minutter.
Hvis du ikke opprettet denne kontoen, vennligst ignorer denne meldingen.
+identityProviderLinkSubject=Lenke {0} +identityProviderLinkBody=Noen vil koble din {1} konto med {0} konto til bruker {2}. Hvis dette var deg, klikk p\u00E5 lenken nedenfor for \u00E5 koble kontoene\n\n{3}\n\nDenne lenken vil utl\u00F8pe om {4} minutter\n\nHvis du ikke vil koble kontoene, vennligst ignorer denne meldingen. Hvis du kobler kontoene sammen vil du kunne logge inn til {1} gjennom {0}. +identityProviderLinkBodyHtml=Noen vil koble din {1} konto med {0} konto til bruker {2}. Hvis dette var deg, klikk p\u00E5 lenken nedenfor for \u00E5 koble kontoene.
Denne lenken vil utl\u00F8pe om {4} minutter.
Hvis du ikke vil koble kontoene, vennligst ignorer denne meldingen. Hvis du kobler kontoene sammen vil du kunne logge inn til {1} gjennom {0}.
+passwordResetSubject=Tilbakestill passord +passwordResetBody=Noen har bedt om \u00E5 endre innloggingsdetaljene til din konto {2}. Hvis dette var deg, klikk p\u00E5 lenken nedenfor for \u00E5 tilbakestille dem.\n\n{0}\n\nDenne lenken vil utl\u00F8pe om {1} minutter.\n\nHvis du ikke vil tilbakestille din innloggingsdata, vennligst ignorer denne meldingen og ingenting vil bli endret. +passwordResetBodyHtml=Noen har bedt om \u00E5 endre innloggingsdetaljene til din konto {2}. Hvis dette var deg, klikk p\u00E5 lenken nedenfor for \u00E5 tilbakestille dem.
Denne lenken vil utl\u00F8pe om {1} minutter.
Hvis du ikke vil tilbakestille din innloggingsdata, vennligst ignorer denne meldingen og ingenting vil bli endret.
+executeActionsSubject=Oppdater kontoen din +executeActionsBody=Administrator har anmodet at du oppdaterer din {2} konto. Klikk p\u00E5 lenken nedenfor for \u00E5 starte denne prosessen\n\n{0}\n\nDenne lenken vil utl\u00F8pe om {1} minutter.\n\nHvis du ikke var klar over at administrator har bedt om dette, vennligst ignorer denne meldingen og ingenting vil bli endret. +executeActionsBodyHtml=Administrator har anmodet at du oppdaterer din {2} konto. Klikk p\u00E5 linken nedenfor for \u00E5 starte denne prosessen.
Denne lenken vil utl\u00F8pe om {1} minutter.
Hvis du ikke var klar over at administrator har bedt om dette, ignorer denne meldingen og ingenting vil bli endret.
+eventLoginErrorSubject=Innlogging feilet +eventLoginErrorBody=Et mislykket innloggingsfors\u00F8k ble oppdaget p\u00E5 din konto p\u00E5 {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator. +eventLoginErrorBodyHtml=Et mislykket innloggingsfors\u00F8k ble oppdaget p\u00E5 din konto p\u00E5 {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator.
+eventRemoveTotpSubject=Fjern engangskode +eventRemoveTotpBody=Engangskode ble fjernet fra kontoen din p\u00E5 {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator. +eventRemoveTotpBodyHtml=Engangskode ble fjernet fra kontoen din p\u00E5 {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator.
+eventUpdatePasswordSubject=Oppdater passord +eventUpdatePasswordBody=Ditt passord ble endret i {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator. +eventUpdatePasswordBodyHtml=Ditt passord ble endret i {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator.
+eventUpdateTotpSubject=Oppdater engangskode +eventUpdateTotpBody=Engangskode ble oppdatert for kontoen din p\u00E5 {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator. +eventUpdateTotpBodyHtml=Engangskode ble oppdatert for kontoen din p\u00E5 {0} fra {1}. Hvis dette ikke var deg, vennligst kontakt administrator.
diff --git a/keycloak_email/messages/messages_pl.properties b/keycloak_email/messages/messages_pl.properties new file mode 100644 index 0000000..757f1bd --- /dev/null +++ b/keycloak_email/messages/messages_pl.properties @@ -0,0 +1,56 @@ +# encoding: UTF-8 +emailVerificationSubject=Zweryfikuj email +emailVerificationBody=Ktoś utworzył już konto {2} z tym adresem e-mail. Jeśli to Ty, kliknij poniższy link, aby zweryfikować swój adres e-mail \n\n{0}\n\nLink ten wygaśnie w ciągu {3}.\n\nJeśli nie utworzyłeś tego konta, po prostu zignoruj tę wiadomość. +emailVerificationBodyHtml=Ktoś utworzył już konto {2} z tym adresem e-mail. Jeśli to Ty, kliknij ten link aby zweryfikować swój adres e-mail
Link ten wygaśnie w ciągu {3}
Jeśli nie utworzyłeś tego konta, po prostu zignoruj tę wiadomość.
+emailTestSubject=[KEYCLOAK] - wiadomość testowa SMTP +emailTestBody=To jest wiadomość testowa +emailTestBodyHtml=To jest wiadomość testowa
+identityProviderLinkSubject=Link {0} +identityProviderLinkBody=Ktoś chce połączyć Twoje konto "{1}" z kontem "{0}" użytkownika {2}. Jeśli to Ty, kliknij poniższy link by połączyć konta\n\n{3}\n\nTen link wygaśnie w ciągu {5}.\n\nJeśli nie chcesz połączyć konta to zignoruj tę wiadomość. Jeśli połączysz konta, będziesz mógł się zalogować na {1} przez {0}. +identityProviderLinkBodyHtml=Ktoś chce połączyć Twoje konto {1} z kontem {0} użytkownika {2}. Jeśli to Ty, kliknij ten link by połączyć konta.
Ten link wygaśnie w ciągu {5}.
Jeśli nie chcesz połączyć konta to zignoruj tę wiadomość. Jeśli połączysz konta, będziesz mógł się zalogować na {1} przez {0}.
+passwordResetSubject=Zresetuj hasło +passwordResetBody=Ktoś właśnie poprosił o zmianę danych logowania Twojego konta {2}. Jeśli to Ty, kliknij poniższy link, aby je zresetować.\n\n{0}\n\nTen link i kod stracą ważność w ciągu {3}.\n\nJeśli nie chcesz zresetować swoich danych logowania, po prostu zignoruj tę wiadomość i nic się nie zmieni. +passwordResetBodyHtml=Ktoś właśnie poprosił o zmianę poświadczeń Twojego konta {2}. Jeśli to Ty, kliknij poniższy link, aby je zresetować.
Link do resetowania poświadczeń
Ten link wygaśnie w ciągu {3}.
Jeśli nie chcesz resetować swoich poświadczeń, po prostu zignoruj tę wiadomość i nic się nie zmieni.
+executeActionsSubject=Zaktualizuj swoje konto +executeActionsBody=Administrator właśnie zażądał aktualizacji konta {2} poprzez wykonanie następujących działań: {3}. Kliknij poniższy link, aby rozpocząć ten proces.\n\n{0}\n\nTen link wygaśnie w ciągu {4}.\n\nJeśli nie masz pewności, że administrator tego zażądał, po prostu zignoruj tę wiadomość i nic się nie zmieni. +executeActionsBodyHtml=Administrator właśnie zażądał aktualizacji konta {2} poprzez wykonanie następujących działań: {3}. Kliknij ten link, aby rozpocząć proces.
Link ten wygaśnie w ciągu {4}.
Jeśli nie masz pewności, że administrator tego zażądał, po prostu zignoruj tę wiadomość i nic się nie zmieni.
+eventLoginErrorSubject=Błąd logowania +eventLoginErrorBody=Nieudana próba logowania została wykryta na Twoim koncie {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem. +eventLoginErrorBodyHtml=Nieudana próba logowania została wykryta na Twoim koncie {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem.
+eventRemoveTotpSubject=Usuń hasło jednorazowe (OTP) +eventRemoveTotpBody=Hasło jednorazowe (OTP) zostało usunięte z Twojego konta w {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem. +eventRemoveTotpBodyHtml=Hasło jednorazowe (OTP) zostało usunięte z Twojego konta w {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem.
+eventUpdatePasswordSubject=Aktualizuj hasło +eventUpdatePasswordBody=Twoje hasło zostało zmienione {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem. +eventUpdatePasswordBodyHtml=Twoje hasło zostało zmienione {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem.
+eventUpdateTotpSubject=Aktualizuj hasło jednorazowe (OTP) +eventUpdateTotpBody=Hasło jednorazowe (OTP) zostało zaktualizowane na Twoim koncie {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem. +eventUpdateTotpBodyHtml=Hasło jednorazowe (OTP) zostało zaktualizowane na Twoim koncie {0} z {1}. Jeśli to nie Ty, skontaktuj się z administratorem.
+ +requiredAction.CONFIGURE_TOTP=Konfiguracja hasła jednorazowego (OTP) +requiredAction.terms_and_conditions=Regulamin +requiredAction.UPDATE_PASSWORD=Aktualizacja hasła +requiredAction.UPDATE_PROFILE=Aktualizacja profilu +requiredAction.VERIFY_EMAIL=Weryfikacja adresu e-mail + +# units for link expiration timeout formatting +linkExpirationFormatter.timePeriodUnit.seconds=sekund +linkExpirationFormatter.timePeriodUnit.seconds.1=sekunda +linkExpirationFormatter.timePeriodUnit.seconds.2=sekundy +linkExpirationFormatter.timePeriodUnit.seconds.3=sekundy +linkExpirationFormatter.timePeriodUnit.seconds.4=sekundy +linkExpirationFormatter.timePeriodUnit.minutes=minut +linkExpirationFormatter.timePeriodUnit.minutes.1=minuta +linkExpirationFormatter.timePeriodUnit.minutes.2=minuty +linkExpirationFormatter.timePeriodUnit.minutes.3=minuty +linkExpirationFormatter.timePeriodUnit.minutes.4=minuty +linkExpirationFormatter.timePeriodUnit.hours=godzin +linkExpirationFormatter.timePeriodUnit.hours.1=godzina +linkExpirationFormatter.timePeriodUnit.hours.2=godziny +linkExpirationFormatter.timePeriodUnit.hours.3=godziny +linkExpirationFormatter.timePeriodUnit.hours.4=godziny +linkExpirationFormatter.timePeriodUnit.days=dni +linkExpirationFormatter.timePeriodUnit.days.1=dzień + +emailVerificationBodyCode=Potwierdź swój adres e-mail wprowadzając następujący kod.\n\n{0}\n\n. +emailVerificationBodyCodeHtml=Potwierdź swój adres e-mail, wprowadzając następujący kod.
{0}
diff --git a/keycloak_email/messages/messages_pt_BR.properties b/keycloak_email/messages/messages_pt_BR.properties new file mode 100644 index 0000000..d8fa214 --- /dev/null +++ b/keycloak_email/messages/messages_pt_BR.properties @@ -0,0 +1,51 @@ +emailVerificationSubject=Verifica\u00E7\u00E3o de endere\u00e7o de e-mail +emailVerificationBody=Algu\u00E9m criou uma conta {2} com este endere\u00E7o de e-mail. Se foi voc\u00EA, clique no link abaixo para verificar o seu endere\u00E7o de email.\n\n{0}\n\nEste link ir\u00E1 expirar dentro de {3}.\n\nSe n\u00E3o foi voc\u00EA quem criou esta conta, basta ignorar esta mensagem. +emailVerificationBodyHtml=Algu\u00E9m criou uma conta {2} com este endere\u00E7o de e-mail. Se foi voc\u00EA, clique no link abaixo para verificar o seu endere\u00E7o de email.
Link para verifica\u00e7\u00e3o de endere\u00e7o de e-mail
Este link ir\u00E1 expirar dentro de {3}.
Se n\u00E3o foi voc\u00EA quem criou esta conta, basta ignorar esta mensagem.
+emailTestSubject=[KEYCLOAK] - Mensagem de teste SMTP +emailTestBody=Esta \u00E9 uma mensagem de teste +emailTestBodyHtml=Esta \u00E9 uma mensagem de teste
+identityProviderLinkSubject=Vincular {0} +identityProviderLinkBody=Algu\u00E9m quer vincular a sua conta "{1}" com a conta "{0}" do usu\u00E1rio {2} . Se foi voc\u00EA, clique no link abaixo para vincular as contas.\n\n{3}\n\nEste link ir\u00E1 expirar em {5}.\n\nSe voc\u00EA n\u00E3o quer vincular a conta, apenas ignore esta mensagem. Se voc\u00EA vincular as contas, voc\u00EA ser\u00E1 capaz de logar em {1} fazendo login em {0}. +identityProviderLinkBodyHtml=Algu\u00E9m quer vincular a sua conta {1} com a conta {0} do usu\u00E1rio {2} . Se foi voc\u00EA, clique no link abaixo para vincular as contas.
Link para confirmar vincula\u00e7\u00e3o de contas
Este link ir\u00E1 expirar em {5}.
Se voc\u00EA n\u00E3o quer vincular a conta, apenas ignore esta mensagem. Se voc\u00EA vincular as contas, voc\u00EA ser\u00E1 capaz de logar em {1} fazendo login em {0}.
+passwordResetSubject=Redefini\u00E7\u00E3o de senha +passwordResetBody=Algu\u00E9m solicitou uma altera\u00E7\u00E3o de senha da sua conta {2}. Se foi voc\u00EA, clique no link abaixo para redefini-la.\n\n{0}\n\nEste link e c\u00F3digo expiram em {3}.\n\nSe voc\u00EA n\u00E3o deseja redefinir sua senha, apenas ignore esta mensagem e nada ser\u00E1 alterado. +passwordResetBodyHtml=Algu\u00E9m solicitou uma altera\u00E7\u00E3o de senha da sua conta {2}. Se foi voc\u00EA, clique no link abaixo para redefini-la.
Este link ir\u00E1 expirar em {3}.
Se voc\u00EA n\u00E3o deseja redefinir sua senha, apenas ignore esta mensagem e nada ser\u00E1 alterado.
+executeActionsSubject=Atualiza\u00E7\u00E3o de conta +executeActionsBody=Um administrador solicitou que voc\u00EA atualize sua conta {2} com a(s) seguinte(s) etapa(s): {3}. Clique no link abaixo para iniciar o processo.\n\n{0}\n\nEste link ir\u00E1 expirar em {4}.\n\nSe voc\u00EA n\u00E3o tem conhecimento de que o administrador solicitou isso, basta ignorar esta mensagem e nada ser\u00E1 alterado. +executeActionsBodyHtml=Um administrador solicitou que voc\u00EA atualize sua conta {2} com a(s) seguinte(s) etapa(s): {3}. Clique no link abaixo para iniciar o processo.
Este link ir\u00E1 expirar em {4}.
Se voc\u00EA n\u00E3o tem conhecimento de que o administrador solicitou isso, basta ignorar esta mensagem e nada ser\u00E1 alterado.
+eventLoginErrorSubject=Erro de login +eventLoginErrorBody=Uma tentativa de login malsucedida da sua conta foi detectada em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador. +eventLoginErrorBodyHtml=Uma tentativa de login malsucedida da sua conta foi detectada em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador.
+eventRemoveTotpSubject=Remover autentica\u00e7\u00e3o de dois fatores +eventRemoveTotpBody=A autentica\u00e7\u00e3o de dois fatores foi removida da sua conta em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador. +eventRemoveTotpBodyHtml=A autentica\u00e7\u00e3o de dois fatores foi removida da sua conta em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador.
+eventUpdatePasswordSubject=Atualiza\u00E7\u00E3o de senha +eventUpdatePasswordBody=Sua senha foi alterada em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador. +eventUpdatePasswordBodyHtml=Sua senha foi alterada em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador.
+eventUpdateTotpSubject=Atualiza\u00E7\u00E3o de autentica\u00e7\u00e3o de dois fatores +eventUpdateTotpBody=A autentica\u00e7\u00e3o de dois fatores foi atualizada para a sua conta em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador. +eventUpdateTotpBodyHtml=A autentica\u00e7\u00e3o de dois fatores foi atualizada para a sua conta em {0} de {1}. Se n\u00E3o foi voc\u00EA, por favor, entre em contato com um administrador.
+ +requiredAction.CONFIGURE_TOTP=Configurar Autentica\u00e7\u00e3o de Dois Fatores +requiredAction.terms_and_conditions=Termos e Condi\u00E7\u00F5es +requiredAction.UPDATE_PASSWORD=Atualizar Senha +requiredAction.UPDATE_PROFILE=Atualizar Perfil +requiredAction.VERIFY_EMAIL=Verificar Endere\u00e7o de E-mail + +# units for link expiration timeout formatting +linkExpirationFormatter.timePeriodUnit.seconds=segundos +linkExpirationFormatter.timePeriodUnit.seconds.1=segundo +linkExpirationFormatter.timePeriodUnit.minutes=minutos +linkExpirationFormatter.timePeriodUnit.minutes.1=minuto +#for language which have more unit plural forms depending on the value (eg. Czech and other Slavic langs) you can override unit text for some other values like this: +#linkExpirationFormatter.timePeriodUnit.minutes.2=minuty +#linkExpirationFormatter.timePeriodUnit.minutes.3=minuty +#linkExpirationFormatter.timePeriodUnit.minutes.4=minuty +linkExpirationFormatter.timePeriodUnit.hours=horas +linkExpirationFormatter.timePeriodUnit.hours.1=hora +linkExpirationFormatter.timePeriodUnit.days=dias +linkExpirationFormatter.timePeriodUnit.days.1=dia + +emailVerificationBodyCode=Verifique o seu endere\u00E7o de e-mail inserindo o seguinte c\u00F3digo.\n\n{0}\n\n. +emailVerificationBodyCodeHtml=Verifique o seu endere\u00E7o de e-mail inserindo o seguinte c\u00F3digo.
{0}
+ diff --git a/keycloak_email/messages/messages_ru.properties b/keycloak_email/messages/messages_ru.properties new file mode 100644 index 0000000..7f6886b --- /dev/null +++ b/keycloak_email/messages/messages_ru.properties @@ -0,0 +1,25 @@ +# encoding: utf-8 +emailVerificationSubject=Подтверждение E-mail +emailVerificationBody=Кто-то создал учетную запись {2} с этим E-mail. Если это были Вы, нажмите на следующую ссылку для подтверждения вашего email\n\n{0}\n\nЭта ссылка устареет через {1} минут.\n\nЕсли Вы не создавали учетную запись, просто проигнорируйте это письмо. +emailVerificationBodyHtml=Кто-то создал учетную запись {2} с этим E-mail. Если это были Вы, нажмите по ссылке для подтверждения вашего E-mail
Эта ссылка устареет через {1} минут.
Если Вы не создавали учетную запись, просто проигнорируйте это письмо.
+identityProviderLinkSubject=Ссылка {0} +identityProviderLinkBody=Кто-то хочет связать вашу учетную запись "{1}" с "{0}" учетной записью пользователя {2} . Если это были Вы, нажмите по следующей ссылке, чтобы связать учетные записи\n\n{3}\n\nЭта ссылка устареет через {4} минут.\n\nЕсли это не хотите объединять учетные записи, просто проигнориуйте это письмо. После объединения учетных записей Вы можете войти в {1} через {0}. +identityProviderLinkBodyHtml=Кто-то хочет связать вашу учетную запись {1} с {0} учетной записью пользователя {2} . Если это были Вы, нажмите по следующей ссылке, чтобы связать учетные записи
Эта ссылка устареет через {4} минут.
Если это не хотите объединять учетные записи, просто проигнориуйте это письмо. После объединения учетных записей Вы можете войти в {1} через {0}.
+passwordResetSubject=Сброс пароля +passwordResetBody=Кто-то только что запросил изменение пароля от Вашей учетной записи {2}. Если это были Вы, нажмите на следующую ссылку, чтобы сбросить его.\n\n{0}\n\nЭта ссылка устареет через {1} минут.\n\nЕсли Вы не хотите сбрасывать пароль, просто проигнорируйте это письмо. +passwordResetBodyHtml=Кто-то только что запросил изменение пароля от Вашей учетной записи {2}. Если это были Вы, нажмите на следующую ссылку, чтобы сбросить его.
Эта ссылка устареет через {1} минут.
Если Вы не хотите сбрасывать пароль, просто проигнорируйте это письмо и ничего не изменится.
+executeActionsSubject=Обновление Вашей учетной записи +executeActionsBody=Администратор просит Вас обновить данные Вашей учетной записи {2}. Нажмите по следующей ссылке чтобы начать этот процесс.\n\n{0}\n\nЭта ссылка устареет через {1} минут.\n\nЕсли у вас есть подозрения, что администратор не мог сделать такой запрос, просто проигнорируйте это письмо. +executeActionsBodyHtml=Администратор просит Вас обновить данные Вашей учетной записи {2}. Нажмите по следующей ссылке чтобы начать этот процесс.
Эта ссылка устареет через {1} минут.
Если у вас есть подозрения, что администратор не мог сделать такой запрос, просто проигнорируйте это письмо.
+eventLoginErrorSubject=Ошибка входа +eventLoginErrorBody=Была зафиксирована неудачная попытка входа в Вашу учетную запись {0} с {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором. +eventLoginErrorBodyHtml=Была зафиксирована неудачная попытка входа в Вашу учетную запись {0} с {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором.
+eventRemoveTotpSubject=Удалить OTP +eventRemoveTotpBody=OTP был удален из вашей учетной записи {0} c {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором. +eventRemoveTotpBodyHtml=OTP был удален из вашей учетной записи {0} c {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором.
+eventUpdatePasswordSubject=Обновление пароля +eventUpdatePasswordBody=Ваш пароль был изменен в {0} с {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором. +eventUpdatePasswordBodyHtml=Ваш пароль был изменен в {0} с {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором.
+eventUpdateTotpSubject=Обновление OTP +eventUpdateTotpBody=OTP был обновлен в вашей учетной записи {0} с {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором. +eventUpdateTotpBodyHtml=OTP был обновлен в вашей учетной записи {0} с {1}. Если это были не Вы, пожалуйста, свяжитесь с администратором.
diff --git a/keycloak_email/messages/messages_sk.properties b/keycloak_email/messages/messages_sk.properties new file mode 100644 index 0000000..a87972c --- /dev/null +++ b/keycloak_email/messages/messages_sk.properties @@ -0,0 +1,48 @@ +# encoding: utf-8 +emailVerificationSubject=Overenie e-mailu +emailVerificationBody=Niekto vytvoril účet {2} s touto e-mailovou adresou. Ak ste to vy, kliknite na nižšie uvedený odkaz a overte svoju e-mailovú adresu \n\n{0}\n\nTento odkaz uplynie do {1} minút.\n\nAk ste tento účet nevytvorili, ignorujte túto správu. +emailVerificationBodyHtml=Niekto vytvoril účet {2} s touto e-mailovou adresou. Ak ste to vy, kliknite na nižšie uvedený odkaz na overenie svojej e-mailovej adresy.
Odkaz na overenie e-mailovej adresy
Platnosť odkazu vyprší za {1} minút.
Ak ste tento účet nevytvorili, ignorujte túto správu.
+emailTestSubject=[KEYCLOAK] - Testovacia správa SMTP +emailTestBody=Toto je skúšobná správa +emailTestBodyHtml=Toto je skúšobná správa
+identityProviderLinkSubject=Odkaz {0} +identityProviderLinkBody=Niekto chce prepojiť váš účet "{1}" s účtom {0}"používateľa {2}. Ak ste to vy, kliknutím na odkaz nižšie prepojte účty. \n\n{3}\n\nTento odkaz uplynie do {4} minút.\n\nAk nechcete prepojiť účet, jednoducho ignorujte túto správu , Ak prepájate účty, budete sa môcť prihlásiť do {1} až {0}. +identityProviderLinkBodyHtml=Niekto chce prepojiť váš účet {1} s účtom {0} používateľa {2}. Ak ste to vy, kliknutím na odkaz nižšie prepojte účty
Odkaz na potvrdenie prepojenia účtu
Platnosť tohto odkazu vyprší v rámci {4} minút.
Ak nechcete prepojiť účet, ignorujte túto správu. Ak prepojujete účty, budete sa môcť prihlásiť do {1} až {0}.
+passwordResetSubject=Obnovenie hesla +passwordResetBody=Niekto požiadal, aby ste zmenili svoje poverenia účtu {2}. Ak ste to vy, kliknite na odkaz uvedený nižšie, aby ste ich vynulovali.\n\n{0}\n\nTento odkaz a kód uplynie do {1} minút.\n\nAk nechcete obnoviť svoje poverenia , ignorujte túto správu a nič sa nezmení. +passwordResetBodyHtml=Niekto požiadal, aby ste zmenili svoje poverenia účtu {2}. Ak ste to vy, kliknutím na odkaz nižšie ich resetujte.
Platnosť tohto odkazu vyprší v priebehu {1} minút.
Ak nechcete obnoviť svoje poverenia, ignorujte túto správu a nič sa nezmení.
+executeActionsSubject=Aktualizujte svoj účet +executeActionsBody=Váš administrátor práve požiadal o aktualizáciu vášho účtu {2} vykonaním nasledujúcich akcií: {3}. Kliknutím na odkaz uvedený nižšie spustíte tento proces.\n\n{0}\n\nTento odkaz vyprší za {1} minúty.\n\nAk si nie ste vedomý, že váš adminstrátor o toto požiadal, ignorujte túto správu a nič bude zmenené. +executeActionsBodyHtml=Váš správca práve požiadal o aktualizáciu vášho účtu {2} vykonaním nasledujúcich akcií: {3}. Kliknutím na odkaz uvedený nižšie spustíte tento proces.
Platnosť tohto odkazu uplynie do {1} minúty.
Ak si nie ste vedomí, že váš adminstrátor o toto požiadal, ignorujte túto správu a nič sa nezmení.
+eventLoginErrorSubject=Chyba prihlásenia +eventLoginErrorBody=Bol zistený neúspešný pokus o prihlásenie do vášho účtu v {0} z {1}. Ak ste to neboli vy, obráťte sa na administrátora. +eventLoginErrorBodyHtml=Bol zistený neúspešný pokus o prihlásenie vášho účtu na {0} z {1}. Ak ste to neboli vy, kontaktujte administrátora.
+eventRemoveTotpSubject=Odstrániť TOTP +eventRemoveTotpBody=OTP bol odstránený z vášho účtu dňa {0} z {1}. Ak ste to neboli vy, obráťte sa na administrátora. +eventRemoveTotpBodyHtml=OTP bol odstránený z vášho účtu dňa {0} z {1}. Ak ste to neboli vy, kontaktujte administrátora.
+eventUpdatePasswordSubject=Aktualizovať heslo +eventUpdatePasswordBody=Vaše heslo bolo zmenené na {0} z {1}. Ak ste to neboli vy, obráťte sa na administrátora. +eventUpdatePasswordBodyHtml=Vaše heslo bolo zmenené na {0} z {1}. Ak ste to neboli vy, kontaktujte administrátora.
+eventUpdateTotpSubject=Aktualizácia TOTP +eventUpdateTotpBody=TOTP bol aktualizovaný pre váš účet na {0} z {1}. Ak ste to neboli vy, obráťte sa na administrátora. +eventUpdateTotpBodyHtml=TOTP bol aktualizovaný pre váš účet dňa {0} z {1}. Ak ste to neboli vy, kontaktujte administrátora.
+ +requiredAction.CONFIGURE_TOTP=Konfigurácia OTP +requiredAction.terms_and_conditions=Zmluvné podmienky +requiredAction.UPDATE_PASSWORD=Aktualizovať heslo +requiredAction.UPDATE_PROFILE=Aktualizovať profil +requiredAction.VERIFY_EMAIL=Overiť e-mail + +# units for link expiration timeout formatting +linkExpirationFormatter.timePeriodUnit.seconds=sekundy +linkExpirationFormatter.timePeriodUnit.seconds.1=sekunda +linkExpirationFormatter.timePeriodUnit.minutes=minuty +linkExpirationFormatter.timePeriodUnit.minutes.1=minúta +#for language which have more unit plural forms depending on the value (eg. Czech and other Slavic langs) you can override unit text for some other values like this: +#linkExpirationFormatter.timePeriodUnit.minutes.2=minuty +#linkExpirationFormatter.timePeriodUnit.minutes.3=minuty +#linkExpirationFormatter.timePeriodUnit.minutes.4=minutu +linkExpirationFormatter.timePeriodUnit.hours=hodiny +linkExpirationFormatter.timePeriodUnit.hours.1=hodina +linkExpirationFormatter.timePeriodUnit.days=dni +linkExpirationFormatter.timePeriodUnit.days.1=deň diff --git a/keycloak_email/messages/messages_sv.properties b/keycloak_email/messages/messages_sv.properties new file mode 100644 index 0000000..15199c1 --- /dev/null +++ b/keycloak_email/messages/messages_sv.properties @@ -0,0 +1,25 @@ +# encoding: utf-8 +emailVerificationSubject=Verifiera e-post +emailVerificationBody=Någon har skapat ett {2} konto med den här e-postadressen. Om det var du, klicka då på länken nedan för att verifiera din e-postadress\n\n{0}\n\nDen här länken kommer att upphöra inom {1} minuter.\n\nOm det inte var du som skapade det här kontot, ignorera i så fall det här meddelandet. +emailVerificationBodyHtml=Någon har skapat ett {2} konto med den här e-postadressen. Om det var du, klicka då på länken nedan för att verifiera din e-postadress
Den här länken kommer att upphöra inom {1} minuter.
Om det inte var du som skapade det här kontot, ignorera i så fall det här meddelandet.
+identityProviderLinkSubject=Länk {0} +identityProviderLinkBody=Någon vill länka ditt "{1}" konto med "{0}" kontot tillhörande användaren {2} . Om det var du, klicka då på länken nedan för att länka kontona\n\n{3}\n\nDen här länken kommer att upphöra inom {4} minuter.\n\nOm du inte vill länka kontot, ignorera i så fall det här meddelandet. Om du länkar kontona, så kan du logga in till {1} genom {0}. +identityProviderLinkBodyHtml=Någon vill länka ditt {1} konto med {0} kontot tillhörande användaren {2} . Om det var du, klicka då på länken nedan för att länka kontona
Den här länken kommer att upphöra inom {4} minuter.
Om du inte vill länka kontot, ignorera i så fall det här meddelandet. Om du länkar kontona, så kan du logga in till {1} genom {0}.
+passwordResetSubject=Återställ lösenord +passwordResetBody=Någon har precis bett om att ändra användaruppgifter för ditt konto {2}. Om det var du, klicka då på länken nedan för att återställa dem.\n\n{0}\n\nDen här länken och koden kommer att upphöra inom {1} minuter.\n\nOm du inte vill återställa dina kontouppgifter, ignorera i så fall det här meddelandet så kommer inget att ändras. +passwordResetBodyHtml=Någon har precis bett om att ändra användaruppgifter för ditt konto {2}. Om det var du, klicka då på länken nedan för att återställa dem.
Den här länken och koden kommer att upphöra inom {1} minuter.
Om du inte vill återställa dina kontouppgifter, ignorera i så fall det här meddelandet så kommer inget att ändras.
+executeActionsSubject=Uppdatera ditt konto +executeActionsBody=Din administratör har precis bett om att du skall uppdatera ditt {2} konto. Klicka på länken för att påbörja processen.\n\n{0}\n\nDen här länken kommer att upphöra inom {1} minuter.\n\nOm du är omedveten om att din administratör har bett om detta, ignorera i så fall det här meddelandet så kommer inget att ändras. +executeActionsBodyHtml=Din administratör har precis bett om att du skall uppdatera ditt {2} konto. Klicka på länken för att påbörja processen.
Den här länken kommer att upphöra inom {1} minuter.
Om du är omedveten om att din administratör har bett om detta, ignorera i så fall det här meddelandet så kommer inget att ändras.
+eventLoginErrorSubject=Inloggningsfel +eventLoginErrorBody=Ett misslyckat inloggningsförsök har upptäckts på ditt konto på {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör. +eventLoginErrorBodyHtml=Ett misslyckat inloggningsförsök har upptäckts på ditt konto den {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör.
+eventRemoveTotpSubject=Ta bort OTP +eventRemoveTotpBody=OTP togs bort från ditt konto den {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör. +eventRemoveTotpBodyHtml=OTP togs bort från ditt konto den {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör.
+eventUpdatePasswordSubject=Uppdatera lösenord +eventUpdatePasswordBody=Ditt lösenord ändrades den {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör. +eventUpdatePasswordBodyHtml=Ditt lösenord ändrades den {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör.
+eventUpdateTotpSubject=Uppdatera OTP +eventUpdateTotpBody=OTP uppdaterades för ditt konto den {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör. +eventUpdateTotpBodyHtml=OTP uppdaterades för ditt konto den {0} från {1}. Om det inte var du, vänligen kontakta i så fall en administratör.
\ No newline at end of file diff --git a/keycloak_email/messages/messages_tr.properties b/keycloak_email/messages/messages_tr.properties new file mode 100644 index 0000000..a260ef1 --- /dev/null +++ b/keycloak_email/messages/messages_tr.properties @@ -0,0 +1,51 @@ +emailVerificationSubject=E-postay\u0131 do\u011Frula +emailVerificationBody=Birisi bu e-posta adresiyle bir {2} hesap olu\u015Fturdu. Bu sizseniz, e-posta adresinizi do\u011Frulamak i\u00E7in a\u015Fa\u011F\u0131daki ba\u011Flant\u0131ya t\u0131klay\u0131n\n\n{0}\n\nBu ba\u011Flant\u0131 {3} i\u00E7inde sona erecek.\n\nBu hesab\u0131 olu\u015Fturmad\u0131ysan\u0131z, sadece bu iletiyi yoksay\u0131n\u0131z. +emailVerificationBodyHtml=Birisi bu e-posta adresiyle bir {2} hesap olu\u015Fturdu. Bu sizseniz, e-posta adresinizi do\u011Frulamak i\u00E7in a\u015Fa\u011F\u0131daki ba\u011Flant\u0131y\u0131 t\u0131klay\u0131n.
E-posta adresi do\u011Frulama adresi
Bu ba\u011Flant\u0131n\u0131n s\u00FCresi {3} i\u00E7erisinde sona erecek.
Bu hesab\u0131 siz olu\u015Fturmad\u0131ysan\u0131z, bu mesaj\u0131 g\u00F6z ard\u0131 edin.
+emailTestSubject=[KEYCLOAK] - SMTP test mesaj\u0131 +emailTestBody=Bu bir test mesaj\u0131 +emailTestBodyHtml=Bu bir test mesaj\u0131
+identityProviderLinkSubject=Link {0} +identityProviderLinkBody=Birisi "{1}" hesab\u0131n\u0131z\u0131 "{0}" kullan\u0131c\u0131 hesab\u0131 {2} ile ba\u011Flamak istiyor. Bu sizseniz, hesaplar\u0131 ba\u011Flamak i\u00E7in a\u015Fa\u011F\u0131daki ba\u011Flant\u0131y\u0131 t\u0131klay\u0131n:\n\n{3}\n\nBu ba\u011Flant\u0131 {5} i\u00E7inde sona erecek.\n\nHesab\u0131n\u0131z\u0131 ba\u011Flamak istemiyorsan\u0131z bu mesaj\u0131 g\u00F6z ard\u0131 edin. Hesaplar\u0131 ba\u011Flarsan\u0131z, {1} ile {0} aras\u0131nda oturum a\u00E7abilirsiniz. +identityProviderLinkBodyHtml=Birisi {1} b> hesab\u0131n\u0131z\u0131 {2} kullan\u0131c\u0131s\u0131 {0} b> hesab\u0131na ba\u011Flamak istiyor. Bu sizseniz, ba\u011Flant\u0131 vermek i\u00E7in a\u015Fa\u011F\u0131daki ba\u011Flant\u0131y\u0131 t\u0131klay\u0131n
Hesap ba\u011Flant\u0131s\u0131n\u0131 onaylamak i\u00E7in ba\u011Flant\u0131
Bu ba\u011Flant\u0131n\u0131n s\u00FCresi {5} i\u00E7erisinde sona erecek.
Hesab\u0131 ba\u011Flamak istemiyorsan\u0131z, bu mesaj\u0131 g\u00F6z ard\u0131 edin. Hesaplar\u0131 ba\u011Flarsan\u0131z, {1} ile {0} aras\u0131nda oturum a\u00E7abilirsiniz.
+passwordResetSubject=\u015Eifreyi s\u0131f\u0131rla +passwordResetBody=Birisi, {2} hesab\u0131n\u0131z\u0131n kimlik bilgilerini de\u011Fi\u015Ftirmeyi istedi.Bu sizseniz, s\u0131f\u0131rlamak i\u00E7in a\u015Fa\u011F\u0131daki ba\u011Flant\u0131y\u0131 t\u0131klay\u0131n.\n\n{0}\n\nBu ba\u011Flant\u0131 ve kod {3} i\u00E7inde sona erecek.\n\nFakat bilgilerinizi s\u0131f\u0131rlamak istemiyorsan\u0131z, Sadece bu mesaj\u0131 g\u00F6rmezden gelin ve hi\u00E7bir \u015Fey de\u011Fi\u015Fmeyecek. +passwordResetBodyHtml=Birisi, {2} hesab\u0131n\u0131z\u0131n kimlik bilgilerini de\u011Fi\u015Ftirmeyi istedi. Sizseniz, s\u0131f\u0131rlamak i\u00E7in a\u015Fa\u011F\u0131daki linke t\u0131klay\u0131n\u0131z.
Kimlik bilgilerini s\u0131f\u0131rlamak i\u00E7in ba\u011Flant\u0131
Bu ba\u011Flant\u0131n\u0131n s\u00FCresi {3} i\u00E7erisinde sona erecek.
Kimlik bilgilerinizi s\u0131f\u0131rlamak istemiyorsan\u0131z, bu mesaj\u0131 g\u00F6z ard\u0131 edin.
+executeActionsSubject=Hesab\u0131n\u0131z\u0131 G\u00FCncelleyin +executeActionsBody=Y\u00F6neticiniz a\u015Fa\u011F\u0131daki i\u015Flemleri ger\u00E7ekle\u015Ftirerek {2} hesab\u0131n\u0131z\u0131 g\u00FCncelledi: {3}. Bu i\u015Flemi ba\u015Flatmak i\u00E7in a\u015Fa\u011F\u0131daki linke t\u0131klay\u0131n.\n\n{0}\n\nBu ba\u011Flant\u0131n\u0131n s\u00FCresi {4} i\u00E7erisinde sona erecek.\n\nY\u00F6neticinizin bunu istedi\u011Finden habersizseniz, bu mesaj\u0131 g\u00F6z ard\u0131 edin ve hi\u00E7bir \u015Fey de\u011Fi\u015Fmez. +executeActionsBodyHtml=Y\u00F6neticiniz a\u015Fa\u011F\u0131daki i\u015Flemleri ger\u00E7ekle\u015Ftirerek {2} hesab\u0131n\u0131z\u0131 g\u00FCncelledi: {3}. Bu i\u015Flemi ba\u015Flatmak i\u00E7in a\u015Fa\u011F\u0131daki linke t\u0131klay\u0131n.
Hesap g\u00FCncelleme ba\u011Flant\u0131s\u0131
Bu ba\u011Flant\u0131n\u0131n s\u00FCresi {4} i\u00E7erisinde sona erecek.
Y\u00F6neticinizin bunu istedi\u011Finden habersizseniz, bu mesaj\u0131 g\u00F6z ard\u0131 edin ve hi\u00E7bir \u015Fey de\u011Fi\u015Fmez.
+eventLoginErrorSubject=Giri\u015F hatas\u0131 +eventLoginErrorBody={1} ''den {0} tarihinde ba\u015Far\u0131s\u0131z bir giri\u015F denemesi yap\u0131ld\u0131. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in. +eventLoginErrorBodyHtml={1} ''den {0} tarihinde ba\u015Far\u0131s\u0131z bir giri\u015F denemesi yap\u0131ld\u0131. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in.
+eventRemoveTotpSubject=OTP''yi kald\u0131r +eventRemoveTotpBody=OTP, {0} tarihinden {1} tarihinde hesab\u0131n\u0131zdan kald\u0131r\u0131ld\u0131. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in. +eventRemoveTotpBodyHtml=OTP, {0} tarihinden {1} tarihinde hesab\u0131n\u0131zdan kald\u0131r\u0131ld\u0131. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in.
+eventUpdatePasswordSubject=\u015Eifreyi g\u00FCncelle +eventUpdatePasswordBody=\u015Eifreniz {0} tarihinde {0} tarihinde de\u011Fi\u015Ftirildi. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in. +eventUpdatePasswordBodyHtml=\u015Eifreniz {0} tarihinde {0} tarihinde de\u011Fi\u015Ftirildi. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in.
+eventUpdateTotpSubject=OTP''yi G\u00FCncelle +eventUpdateTotpBody=OTP, {0} tarihinden {1} tarihinde hesab\u0131n\u0131z i\u00E7in g\u00FCncellendi. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in. +eventUpdateTotpBodyHtml=OTP, {0} tarihinden {1} tarihinde hesab\u0131n\u0131z i\u00E7in g\u00FCncellendi. Bu siz de\u011Filseniz, l\u00FCtfen y\u00F6neticiyle ileti\u015Fime ge\u00E7in.
+ +requiredAction.CONFIGURE_TOTP=OTP''yi yap\u0131land\u0131r +requiredAction.terms_and_conditions=\u015Eartlar ve Ko\u015Fullar +requiredAction.UPDATE_PASSWORD=\u015Eifre G\u00FCncelleme +requiredAction.UPDATE_PROFILE=Profilleri g\u00FCncelle +requiredAction.VERIFY_EMAIL=E-mail do\u011Frula + +# units for link expiration timeout formatting +linkExpirationFormatter.timePeriodUnit.seconds=saniye +linkExpirationFormatter.timePeriodUnit.seconds.1=saniye +linkExpirationFormatter.timePeriodUnit.minutes=dakika +linkExpirationFormatter.timePeriodUnit.minutes.1=dakika +#for language which have more unit plural forms depending on the value (eg. Czech and other Slavic langs) you can override unit text for some other values like this: +#linkExpirationFormatter.timePeriodUnit.minutes.2=minuty +#linkExpirationFormatter.timePeriodUnit.minutes.3=minuty +#linkExpirationFormatter.timePeriodUnit.minutes.4=minuty +linkExpirationFormatter.timePeriodUnit.hours=saat +linkExpirationFormatter.timePeriodUnit.hours.1=saat +linkExpirationFormatter.timePeriodUnit.days=g\u00FCn +linkExpirationFormatter.timePeriodUnit.days.1=g\u00FCn + +emailVerificationBodyCode=L\u00FCtfen a\u015Fa\u011F\u0131daki kodu girerek e-posta adresinizi do\u011Frulay\u0131n.\n\n{0}\n\n. +emailVerificationBodyCodeHtml=L\u00FCtfen a\u015Fa\u011F\u0131daki kodu girerek e-posta adresinizi do\u011Frulay\u0131n.
{0}
+ diff --git a/keycloak_email/messages/messages_zh_CN.properties b/keycloak_email/messages/messages_zh_CN.properties new file mode 100644 index 0000000..42f59f8 --- /dev/null +++ b/keycloak_email/messages/messages_zh_CN.properties @@ -0,0 +1,25 @@ +# encoding: utf-8 +emailVerificationSubject=验证电子邮件 +emailVerificationBody=用户使用当前电子邮件注册 {2} 账户。如是本人操作,请点击以下链接完成邮箱验证\n\n{0}\n\n这个链接会在 {1} 分钟后过期.\n\n如果您没有注册用户,请忽略这条消息。 +emailVerificationBodyHtml=用户使用当前电子邮件注册 {2} 账户。如是本人操作,请点击以下链接完成邮箱验证
这个链接会在 {1} 分钟后过期.
如果您没有注册用户,请忽略这条消息。
+identityProviderLinkSubject=链接 {0} +identityProviderLinkBody=有用户想要将账户 "{1}" 与用户{2}的账户"{0}" 做链接 . 如果是本人操作,请点击以下链接完成链接请求\n\n{3}\n\n这个链接会在 {4} 分钟后过期.\n\n如非本人操作,请忽略这条消息。如果您链接账户,您将可以通过{0}登录账户 {1}. +identityProviderLinkBodyHtml=有用户想要将账户 {1} 与用户{2} 的账户{0} 做链接 . 如果是本人操作,请点击以下链接完成链接请求
这个链接会在 {4} 分钟后过期。
如非本人操作,请忽略这条消息。如果您链接账户,您将可以通过{0}登录账户 {1}.
+passwordResetSubject=重置密码 +passwordResetBody=有用户要求修改账户 {2} 的密码.如是本人操作,请点击下面链接进行重置.\n\n{0}\n\n这个链接会在 {1} 分钟后过期.\n\n如果您不想重置您的密码,请忽略这条消息,密码不会改变。 +passwordResetBodyHtml=有用户要求修改账户 {2} 的密码如是本人操作,请点击下面链接进行重置.
这个链接会在 {1} 分钟后过期
如果您不想重置您的密码,请忽略这条消息,密码不会改变。
+executeActionsSubject=更新您的账户 +executeActionsBody=您的管理员要求您更新账户 {2}. 点击以下链接开始更新\n\n{0}\n\n这个链接会在 {1} 分钟后失效.\n\n如果您不知道管理员要求更新账户信息,请忽略这条消息。账户信息不会修改。 +executeActionsBodyHtml=您的管理员要求您更新账户{2}. 点击以下链接开始更新.
这个链接会在 {1} 分钟后失效.
如果您不知道管理员要求更新账户信息,请忽略这条消息。账户信息不会修改。
+eventLoginErrorSubject=登录错误 +eventLoginErrorBody=在{0} 由 {1}使用您的账户登录失败. 如果这不是您本人操作,请联系管理员. +eventLoginErrorBodyHtml=在{0} 由 {1}使用您的账户登录失败. 如果这不是您本人操作,请联系管理员.
+eventRemoveTotpSubject=删除 OTP +eventRemoveTotpBody=OTP在 {0} 由{1} 从您的账户中删除.如果这不是您本人操作,请联系管理员 +eventRemoveTotpBodyHtml=OTP在 {0} 由{1} 从您的账户中删除.如果这不是您本人操作,请联系管理员。
+eventUpdatePasswordSubject=更新密码 +eventUpdatePasswordBody=您的密码在{0} 由 {1}更改. 如非本人操作,请联系管理员 +eventUpdatePasswordBodyHtml=您的密码在{0} 由 {1}更改. 如非本人操作,请联系管理员
+eventUpdateTotpSubject=更新 OTP +eventUpdateTotpBody=您账户的OTP 配置在{0} 由 {1}更改. 如非本人操作,请联系管理员。 +eventUpdateTotpBodyHtml=您账户的OTP 配置在{0} 由 {1}更改. 如非本人操作,请联系管理员。
diff --git a/keycloak_email/text/email-test.ftl b/keycloak_email/text/email-test.ftl new file mode 100644 index 0000000..f1becdd --- /dev/null +++ b/keycloak_email/text/email-test.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("emailTestBody", realmName)} \ No newline at end of file diff --git a/keycloak_email/text/email-update-confirmation.ftl b/keycloak_email/text/email-update-confirmation.ftl new file mode 100644 index 0000000..335d9a8 --- /dev/null +++ b/keycloak_email/text/email-update-confirmation.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("emailUpdateConfirmationBody",link, newEmail, realmName, linkExpirationFormatter(linkExpiration))} diff --git a/keycloak_email/text/email-verification-with-code.ftl b/keycloak_email/text/email-verification-with-code.ftl new file mode 100644 index 0000000..4ffb7d8 --- /dev/null +++ b/keycloak_email/text/email-verification-with-code.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("emailVerificationBodyCode",code)} \ No newline at end of file diff --git a/keycloak_email/text/email-verification.ftl b/keycloak_email/text/email-verification.ftl new file mode 100644 index 0000000..9e39696 --- /dev/null +++ b/keycloak_email/text/email-verification.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("emailVerificationBody",link, linkExpiration, realmName, linkExpirationFormatter(linkExpiration))} \ No newline at end of file diff --git a/keycloak_email/text/event-login_error.ftl b/keycloak_email/text/event-login_error.ftl new file mode 100644 index 0000000..bfb4036 --- /dev/null +++ b/keycloak_email/text/event-login_error.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("eventLoginErrorBody",event.date,event.ipAddress)} \ No newline at end of file diff --git a/keycloak_email/text/event-remove_totp.ftl b/keycloak_email/text/event-remove_totp.ftl new file mode 100644 index 0000000..a7e3b68 --- /dev/null +++ b/keycloak_email/text/event-remove_totp.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("eventRemoveTotpBody",event.date, event.ipAddress)} \ No newline at end of file diff --git a/keycloak_email/text/event-update_password.ftl b/keycloak_email/text/event-update_password.ftl new file mode 100644 index 0000000..2ec7ea0 --- /dev/null +++ b/keycloak_email/text/event-update_password.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("eventUpdatePasswordBody",event.date, event.ipAddress)} \ No newline at end of file diff --git a/keycloak_email/text/event-update_totp.ftl b/keycloak_email/text/event-update_totp.ftl new file mode 100644 index 0000000..14778b5 --- /dev/null +++ b/keycloak_email/text/event-update_totp.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("eventUpdateTotpBody",event.date, event.ipAddress)} \ No newline at end of file diff --git a/keycloak_email/text/executeActions.ftl b/keycloak_email/text/executeActions.ftl new file mode 100644 index 0000000..6610c7a --- /dev/null +++ b/keycloak_email/text/executeActions.ftl @@ -0,0 +1,4 @@ +<#ftl output_format="plainText"> +<#assign requiredActionsText><#if requiredActions??><#list requiredActions><#items as reqActionItem>${msg("requiredAction.${reqActionItem}")}<#sep>, #items>#list><#else>#if>#assign> + +${msg("executeActionsBody",link, linkExpiration, realmName, requiredActionsText, linkExpirationFormatter(linkExpiration))} \ No newline at end of file diff --git a/keycloak_email/text/identity-provider-link.ftl b/keycloak_email/text/identity-provider-link.ftl new file mode 100644 index 0000000..ed9d246 --- /dev/null +++ b/keycloak_email/text/identity-provider-link.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("identityProviderLinkBody", identityProviderAlias, realmName, identityProviderContext.username, link, linkExpiration, linkExpirationFormatter(linkExpiration))} \ No newline at end of file diff --git a/keycloak_email/text/password-reset.ftl b/keycloak_email/text/password-reset.ftl new file mode 100644 index 0000000..27405c9 --- /dev/null +++ b/keycloak_email/text/password-reset.ftl @@ -0,0 +1,2 @@ +<#ftl output_format="plainText"> +${msg("passwordResetBody",link, linkExpiration, realmName, linkExpirationFormatter(linkExpiration))} \ No newline at end of file diff --git a/keycloak_email/theme.properties b/keycloak_email/theme.properties new file mode 100644 index 0000000..d8b7627 --- /dev/null +++ b/keycloak_email/theme.properties @@ -0,0 +1 @@ +locales=ca,cs,da,de,en,es,fr,fi,hu,it,ja,lt,nl,no,pl,pt-BR,ru,sk,sv,tr,zh-CN diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 0000000..aad7ab3 --- /dev/null +++ b/nginx.conf @@ -0,0 +1,42 @@ +server { + listen 80; + + gzip on; + gzip_vary on; + gzip_min_length 1024; + gzip_proxied expired no-cache no-store private auth; + gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/javascript application/xml; + gzip_disable "MSIE [1-6]\."; + + root /usr/share/nginx/html; + index index.html; + + try_files $uri $uri/ /index.html; + + # Any route containing a file extension (e.g. /devicesfile.js) + location ~ ^.+\..+$ { + try_files $uri =404; + + location ~* \.(?:html|json|txt)$ { + expires -1; + } + + # CRA generates filenames with hashes so we can + # tell the browser to keep in cache the resources. + location ~* \.(?:css|js|md|woff2?|eot|ttf|xml)$ { + expires 1y; + access_log off; + add_header Cache-Control "public"; + + # Allow fonts and scripts to be downloaded from pages + # served by Keycloak (CORS for --external-request) + # We allow .md for beeing able to fetch the terms of service. + location ~* \.(?:js|woff2?|eot|ttf|xml|md)$ { + add_header Access-Control-Allow-Origin *; + } + + } + + } + +} diff --git a/package.json b/package.json new file mode 100755 index 0000000..76ef019 --- /dev/null +++ b/package.json @@ -0,0 +1,50 @@ +{ + "name": "keycloakify-starter", + "homepage": "https://demo-app.keycloakify.dev", + "version": "1.0.2", + "description": "A starter/demo project for keycloakify", + "repository": { + "type": "git", + "url": "git://github.com/garronej/keycloakify-starter.git" + }, + "scripts": { + "start": "react-scripts start", + "build": "react-scripts build", + "keycloak": "yarn build && keycloakify", + "download-builtin-keycloak-theme": "download-builtin-keycloak-theme 15.0.2" + }, + "author": "u/garronej", + "license": "MIT", + "keywords": [], + "dependencies": { + "@emotion/react": "^11.9.0", + "keycloakify": "^6.0.0", + "react": "18.1.0", + "react-dom": "18.1.0" + }, + "devDependencies": { + "@types/node": "^15.3.1", + "@types/react": "18.0.9", + "@types/react-dom": "18.0.4", + "react-scripts": "5.0.0", + "typescript": "^4.7.3" + }, + "eslintConfig": { + "extends": [ + "react-app", + "react-app/jest" + ] + }, + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + } +} diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..a11777cc471a4344702741ab1c8a588998b1311a GIT binary patch literal 3870 zcma);c{J4h9>;%nil|2-o+rCuEF-(I%-F}ijC~o(k~HKAkr0)!FCj~d>`RtpD?8b; zXOC1OD!V*IsqUwzbMF1)-gEDD=A573Z-&G7^LoAC9|WO7Xc0Cx1g^Zu0u_SjAPB3vGa^W|sj)80f#V0@M_CAZTIO(t--xg= z!sii`1giyH7EKL_+Wi0ab<)&E_0KD!3Rp2^HNB*K2@PHCs4PWSA32*-^7d{9nH2_E zmC{C*N*)(vEF1_aMamw2A{ZH5aIDqiabnFdJ|y0%aS|64E$`s2ccV~3lR!u<){eS` z#^Mx6o(iP1Ix%^x1<}HIpHPK!~xxZ#TY%OLdZBg#{Ta4;!V>Wv1ySF3@QU_5p2oIHTfQmEd0 z5~>&oJpb_RVH{CmnsDKNk>n|rMAD9G5eC92DR@qIMFDx{^(RCGDm?3ut+3dlzu_Fq zH?)PcoNrU*dSnyku&~ynh4dd*$reJnG8Ruq6_-+|pgBsBDqmO0rBsf7HCLssm&O%q z`(sfje1I!!h;5a!UaSYzZF{9Yyk6A3HLjfJ V-ylS9Ye=DH|J0CJKv{A%s}RrWR;xv~dHO1nEfvtL zWGI-O)vyQ~zY+=ZYH>55lSL4T3vL29sJA6yl+HM`-W8DkJk>5WVX4*!RFjIpbj%i% z*N(LqgL3Yj)FOZgXF*06u}pmzO~V%HOqMgB#{VRj)5jacEu+B7TT$I6nJ$-IIMvyw z)b^kD7(hoKtK6Sr3<>vi=>Kt152i J}S)E#iTdBWp~sX(`R445lDbsuC%0NOCKa zQOQ!GwG^OTjXf`Wsz?RrX6b2zQtCDJ0@2jywGj5?f-qrU6Fw| 5hZ z5zwBDJ_%Fin|gLs+GCDEX<`kwF5ExCo1=2S$!zlF+)NtS7R?5;gW`s>a}=8Uwa+|^ z(sqa#OFIm4Z&N^&!q&WwBW3Z!WRpKLgWg4AZ67%mO=N^q3%FZO6gt%%8J1ZJZ7BM! zYEJR3#t_sSuvyWxl+sc)_nja(jNmx4_Pofp>$ldsAHX9VRU1sd?b{PJ_Vg&(nC{I+ zy`Ywo HmXd(s0JyaQLv+475z|(P?)~RG1i6oZ+DXnS6J4g3M>w6iCh|W&73sHN7p#b zxPfCr7CE|kx^|(-eOSzb{5Z~=K#y`v{hB6otgYdYVIN_jR8uur$k8fIt7~E;8=9dB zn}#C^ogQo!GQVq981RNEC36Sh?eMGrw6#R=b$aO2O8=VruAkvbc*GWP^f3{C z;aY3?DxP99G1C7j{)jWshMThS@IW)fY7pOqAKgT`GEU!fepTy$sNuvXD+)8U#(cQ= zNv!A$TlfljZ-9!QXD0$SB5-caj26ip^+8v;ZYiY>rGlz?R!-(LgoR&YnY90vFHFRS zmSJz+!*4Gz1C!Nyp76J5SQ52VpEoijT&qM+Az;~E-To^xkh-FNmT^U?I&OS@v=c;0 z3ui#@t_Gtr5SLDYXtmm8j(EV80`jy7@(FHo32Q)nGcuR%VG&g ?R~6qb&xtOW=5y0}mCo $0&bZ2Ts;?w<0`Dww@Y+G3an`rEurw1 zl&rrcX;PJl@(p|RVrL*S13V<)z{IA9fsd<=lFwjzRe5gdP;Q36)tI0yW=IQWUJm4+ zhzR*)J =x!2C5Gc>IScoc@g7Yu?TH*WDd&ujoalw zkMtU+2 U~*mh zc}}U2C=q(t8 (`J#2z~o#Vjo>t38>5@b zxkBr LH$rC;)Gp~L3Mvt>bO<<>;r?|*;~d*8@)X< 3m{#Msm$)jBJnWXZq*_@g?~HfiGs4(CvL9edmMd zgRk8rx{PU%7xiGBVr;^CFZCn!wrm|+KgEIV!C_D mkC{*g=z&Vd~y7S#c%Mjqz?qO)XPc(pJc&Ns2R{G@I*8Wvm#TKB?;#v#hjl5m|3M zwU(b*jcBQ--DAejg7bymf?d5clS;SE)8I-;4POn;4T{ubvy9v)EJ$U8sbCp;P_-`x zBZVg&E+Ul^xD=&3BXFJ(gY1m0DnMrq3RACV;gI?13{hLtMdfXVyuB?iLZ&cT{gzDQ zO;KvY`0 *q==h1`+f`7(iPzkW|STz1k_UDX`u$j*clb4%<=52*#+X8e1>SOGAIynrR!y zxI?6rDSn>`XLTLKN2_BaV1;HQ^szr<%Wf)9eK-%+QCN!NDM +zLXM&Nf~S3~Nmc zNOoUsUZycZU0`u4Nmx2^_{&` %S@>OJp%_evO}{<<2()MI>C8vM7I>7L{e zY=Iw19`ZQtdyile`Z;cCqZA8pV%y S43U`xaXhRDO~*36#z*X(;3Q?(nA$|kM1Jxi8D}9SWzDSWnn5$eRrmc! zGg?O17X^YVDFcSG;07?%w+y*R{1Y;gIW^`hYi3%~UN!YX%DqE|#34?5_i9uOCX*%S z-)J^}f27p8V{WC2+1YFrwb;=-N^RWj(LzX?l`{~#p%H*|SKCSKWN=wHy~9~0I7n>& z+QXnWxe^P%w{p@8dQoC$wnJIUaK@IqO;UXAOEs7EH^zgfK3!}|e b*mEx?~LBHzWwj68B{+QKn+H`-ydvJDkxB-|CTF@B6Sjy31;(G z7YQ5*MCA)btw>)0YJ&eMQJ9jKb+VX8dzUPd-^VN5L+p0uy6*Ki3Un`f%A4D6UiV6e zH5{xl>x6w*y-RmjbD6VF*#z^wDk7-&fA)|h@7YTHn5`tE;1 TB^%(s;S0hNfZ!{`$c2bI|3MY;_;Zc*-x# zR9%DOLfCmr9MGpPAfvv}fLwrqTBU7?Dcd*dy~y!MLovdm7{=9gxjFxFw-TR?)=F%} zzpClE7|b;^yRQKk6$JUI*ol070gV2^!hgcynRWfaeNljN`^nZKziI=aI$HYRe4>=| z_D6^F#mjnxZms?^d!g;{3%z$bo8F^;L@zgc+6R(AnephC7^wS!z6e`71nd#N+uz(g zh;n{Pvx822;7&dLy0g>`dxjsL!aS|UDhGv(13P^6K3PxgsN3J3LVqy4e3iFkAh^Fv z>n<~>kLV)x_m+u;gCJ%(Jub00u-Q&@I}M!@MwQ(U(jZ{e`qx3Qr4UBlVx_-Q9s64< zQ7!^-ThCEf?Rxrg85v}2=9Z_BCv_}#rXv#L&Y@`V4w3%$o&9l8{=#E))3^g0ST~z# z{=}A#4e!m;pDtOntJ}jog5W-04rY?B`qlM1NMi9I5DI<)kNG=f!+81qKx?J haxK>*9@?J1^RcWUNusn8iPY& FscQtPzJox}YisqwLyyhUWfILW^M%5%(OryqNuP0x*7 zzZd(5K#!r`gdsqJL<6F9JeBMp5^u^lAyH#Wv2cJ1mCDUXY`Wcm%yr3k+tmt+2POk4 zMbMh-ofCi~DZ yj)>eJ6&LuP43CFVlMQM*B`^n4`c1xT6kt=#B{_ _%AnE_5l8t6}i{*OIe7=7rDW_~kf>j6~coVo*Zw;-*Y|ix =mDS9`ZE&H39P9_d_lqHR5i?3%%i;j%5sjg_$W7&h<=>#&5%%4p< zn{wqbp4R*9nFP~!mzyN-QC#d*H7=oPu1jaur8`-qKEMCy^B%!N4wuXRIRlf$e#Vl5 zf~U*4j?atQ4i&G~eS(Z*@Hl6dF;Tillk4f+tisxQ{R6?!pdIhWZD-ojEpV+r^9X?X z&(m#%-ZU2s9G+i9NcWY1cL=8FH7AW-(0iOsy2CWcl&6>4RS!J$>!IG}XrxUaVu2=% z`u!nfIb@4=DoICbBI7`ggaBoWh1vK%M@`qdGrv!Qn?~BToL@?16ig`8ivLJ>Tq-5h zMN3sS7t_{~13JC!GzQME5x zDMb*|4N0Yvi@StPDhjH_R`Q?0nq40G0CrfHbMA79_CE5BWwXt<=YKPbe_vh6xps4f zn*OV1lmAt-DM|mT* |5tb!wHm$&_ntg&sGhF&X_&qO{|FI&kE0D;-=7hf%XVv47Wn+w`m^>gw6y z!=wDX23^_^F{qVJILtofctj8f#8Jt<%Yrvb+j^IWs*NScQi<1ep*$8Nh#E&EQ>c_Q zRFkSz+lrNo2jXJQS}a@`Os7pW6IITqG?fNkVj_B^&@E=?m>B >n=(&}B}@%5BJ6 zu|iiXSBkRMXIl-ox`D$)&XD)Y2HW}pcz#;fh_8OX-h7mS@P1y=`qY|V-*)c9d)3+0 znTeKlNfX+=Tm$FFBZWul7ZFv J`^uS66E0y@%z888I5A|2SA$ z&j=p8{}Km!{D0h$cY)E1Rb1mgi$HE?j1o>8aWOBjwcAf&)%4Lek2n>Zyz)8&-urJQ zBwR@gl+xw%O0jiht7@~UeD#xIEXE6glYmHTp{K1{YAb{bbnbUq>5(^EQm^7Pb&&Vb zn?ohnd5vvbw6X@?x&o&Sbus1O4s!Hk`&-B`i81!18feUy1zTn;XsUv&U^o@aB@6wz zC{+j>E@$rUFOM_kG^S1yqY%blk&KCHa1oeO8g<6Q8M4*}=pRvoEk 0rHs%&x5C1^Z`kgNSKZDv3(kBXmM}*p*c$ zU9(2hMOv!+A4)b_X{un+(nPcGPILi4oY9!Hn$6}tE;XwCi&`28bu1hd3nq%&qWqp^ z!yq-x19K+{d!ea^=G37V1u1%(VlnxzQ_9z#jJpRod>5YDr>fFO9E}fTxhyP?XS|z3 z2%? l=~07Qti(Xu>dLZnTz{p1Rq3{6W0k(e3)LMpQPS8v`VmNU3T%33v+?D oT5P=keklOWjS}J9rKh#?DjH7{uf+${yY0 zP^?R{yP&cwNr@x9OW(y@Hf*?Ym0p93nm8i{|9SS#_JmgZfJe^NO;WTY$0Xk&+xx;Z z$@JWLJ_M=cPPgojSw`-Bpw!8~8>{4s#Pnwk>5mjJ`M>N8yQn++_(-F##FNYN@+k*d z+|LsG`)LRXroaxQlk63c#STdlh`VBn!?1Z8ELoPoJnXfi&Qo 5-t7UYovid z@IVp-fZl&`mfb&y*MOJrdL*7pFo&|A62xzu`u$S!SuE(SZ7Pj!=rvGZbKqk!Z#XaL z YNIC+@CP^$E!(-(({C5#_3e@cE*wnjkSEHHx%XB_vrqvA+m7t3$V z7{Ia$83-g4=Af61^+v@^1@1yRdjc6~X8EEht=z#xBX76%OwWX|y-O?+_+NRo(W*qo z=(XURx>qgyq-S Mo@|wtbmLxOE|u8q}X_|$_f9W z09TXWM`|~oq_@TnyBSACGoG;BfKa=C=ad_Q!#NQItHeh9%8*wWt(p`XVJg-ghwpn( z9Zfv+NpC5Ke8|=BBBBm)ej`UPW|!U$1M%{rjv~1J0k=Hk&w#B+1aa BuQryTE5 z$FeD8aV>4wbI{Hx?F|sabN$(PeW*A%j@C@S{|LlotESIWmKu1$D6& LjKJbXluFYWH+0pirquKGONubI(*&*gDGbj6G!dV5ehz7te zsBAlZBF)hx;J8$A*NBUU;KMu*iouIjolrB`P9htpJR5&yS7)uc(;sddJN~&J$cRkw z0gURAe9@x-DX7*?)lFR(fV1sWfuFUfc=p)#$6G@xUq2z;n;8|BbPbbQ8qMpSSTw*E z6xdudPkmZjEKyO0j0!|mvRYFntam>yOl= 17a$`kU@JkOmI@4f=PIwFL_ z!>+rVEm_%|a%ppKLtHRFlbZ270kLkca}xK;Ey_*KEkp$G;jLqaPO_=9K2JLxHQ6Ie z;nbL2rD!0WE1wB5i$lMFcg}g!BsY_vzC#Ot@6QP5md9Jkj|_?F$+phPKi1FPhuT{) zkoUwivYs||L`btLeKIM+5!o*pb-B4Kvk|Mf=6>%zuY31jFn*HV;3dZb6(TSEX*a9o zW8dl*r@y7u!WUxcHgnJG46BD&Pwf-MAGnLW<=ahBM!C4%5TrBGxg6sPENQjqa7~C< z4cHqp3B!&$Sae|uwApmnhV{rjg2>v`ns2k`U+?B_!yZ2uge($r&K4e?VY+n=1)a}@ zDgQIJr1cPr63?wxgnXc|jEiaL_?*x#bMR0KP5qmIsrjA4$=0?MeFSevvr~*dDBtEx zByDPF+-0${ZtPY@f3 cNC!I@zh-1q#xz zQ~dm6^>5*}J5vAhJ_R4XZ)ZAx(}-QJAq3dwP{>NA_!8OP^WD-E?^vyeP|~;myA?f~ z&g!vX$piI_g>ahX_{!h_%voIXgz+BJz?fy)C_&_)WS&V=Ld##CNu5i~vT KWzGp %2p-=iD}C|9cgk^^ zdc~$lleRx7=OO?aGu gjBgEd}EA+wa^4I zj`*BHxlhNodt~keJW+}zYMD)8jd7HQ7<0$SsB_4*Cg%x=#8>}X_37OKO~HKVd>3K# zfJUNNt+Y(4LCJ4pCi@a{dD~1F8P>W+tV}ibEdVSumRWDjUS#qY-}ZPX!+XkZ)%9m| z-A}$nW+-WEetVRjj3ibz|D6{k?DVvEew-Coy#h1Xx|ob3QF`PK*O6h?n*pPZ3^i#a z9Uxhxz5+itwQ8vJx$u(js!kPaiMrahGFr*xWhv7rf^B-TDdEd3!>?A}e4ln}P%*cr zx@0%VZJrNT-?5G`F9rG2r*^>k_x+33Ej?7nrbYv2%d04F&f3Q7tZiLLqYeIZcOLXc zbS_miko!rH7jvzU`P6*Y(|Tuv>)PQcN3IRMWSY8L_fA@>Jjw9!Pn7_U)xB#m6Jl zX_y}WP`8E%++#rTi^`w0jaG5dufCc`rFFRvFS{vU< )T*rpNrq!6& zO wVvp6ReLVOp8|Ja%H8jfJ!jOb7J>>`{(PZ)Vi1KG^RB_}e%Wl?b?#jd}`cNu9 zX(9%#Kuss!4e_Pht|iS~{dCZMH_{qvSJTKW{pfFfRBzIT+|YO?o}$c&VpE5V?J@Xd z{tHPmbW?4qwrz+-55 emNA&>HR8&Nt4<$> zuG+eJDU!KLeWKn;CY5sYt^%~fL(RJ;ZW?o*eyx~WXT9<($=IQ~E3x}+f*&u1Oo_>v z$IWNNy`wv@x2a#x(H@PVNSN#5d+yFMIwO4Cr*l`$Yg5`)U?u_-ha0A|x_pci2_N>2 zO?!PrDTxNule8c >uzt>@^mAja^O0j6h5ui=T GwuH7r0(7EW08r!yxka&?8&E- z;NC3%O$`lZ4731WjLgCyPD>r`;+V=Zcx(!)hWUQDOfO$S*UJbTW}Cx&%G5T}r1av! zshV*fxAPR-s0y26tTol~F%zC0IsTg!V|PwK0Fw)2@8tA!Yw5HhU3D}a=;+4e$)hvi z;6e5rhNc0s_#x-Sw`kR>=DxEt5x;L_e{AQA`b+(N&kpA!p<#LLP+48w(wuKwCflZa zgNH_Y$B@2dAWGBw{+W+v|DlCTa|TgbvnSd4Q5DX~>7z*t*YR`*+U%}>(jLB5|3m0r zKfO{WxxZph_kh&1SK5-hHTF6}-S+9dHLyM`#pfg7BUiuyVkF}sZ7-+W(-X5x g`wPA`ag%T6A>@qCZ<6?x%T=YJ?*!ihitylqQ>_HaDs{?hDoO zsLZ&ITG-D@IDT`t&VodG2+Cg44Og;nujI60Rl3t-6PhlmZ5i@8yBKlv=8Y3}3hXSM zGkfU1@XY>UP8pwzsIB7B&bC`vZa2H?S7lZ%vG1#A?~|O|7FRNwD;IkH>yF?nvQ~-H z@0L$-@>dir_|LQA!$XO+TmoadTq;YgUK+b*QKRiiFrVln@9nTJ4P^FSY>2%Z%-UWO z!pV6^{#;S2pIjBj00lovXOs$zB#Zj|nH+5C>rKwRyTd7Y0=3HO5oD^QQ2RX|(TGD* zsRq)aifV;QjSN-X2AA`uVC~*&IF7tkKVhj&NAYNJymEG1K%m{YUrL#%tR722K7Yo1 z6aD&pJ^u)!D}(JG1|&U?Fask36Av^r5h+WBG9!Y;e1S+NFf1~%KcVn(6vq6h;V+{> z@OTgimKdCQPKSc&bnIVl*RZ$lbGze-c>F#L-=BM6kOBx42-}vGh{4doQ0Osa01_L; z{dg#-coGS}M2hef %+M$%r$$*hh!ajH=sQL%P+Poaak>m1?o2DwQ1B z9riBB;lTp-YtDaA%xOUDC?N^$AwwAKVd3`r2;GAqMiCHz)d`7+FhYYQ`k*o6`#DfV zz#7X$qg7c7{PCvE8zNnsEJVq Hm6caV(y_!bamA9!tUr`T z5z!DBuLkN(LT!JTM+F%xly$P1%A}If=ylh6G9^x=cUuzh0s_|JV#0|;HkpDfNrf|m zi7FHu$%+9gLgzGrNs|!eWpc$u&K+2+Wn#-5>E~PxH9eCYN{k6x6eONPmK&qzrS-Cg zF>q4#Om#UN)@aXD>GejFkEtoPOkAC;9c{b~TbS8A5#uTO(`jrOtp9kproyp&yzj7t zQZxioG8kR6KNvplZmE&uHk!D(YSq323=dt*yEA~t4gX#u{@nw~8ryG1UE`l6hhyfy z)4sB;4H>zgxT(k6Jxzy_-pM-swvqHJ+cG*dwqIv5#^#2 1U$4#*T2wlf^zxhwa|qbp1#p z+A(D}q&aWXT7XscY{MF^t#Q#Vt4p-Pbq5NuD;c?AoJg@-rW$@3T?hNA$Cezjb=o>8 zIo>oIqAk`KOJ| c7TG3^Yw%<_%4>n?=C4@lop}lU&gRhCx!FRD<-m-O zDc@n*3_q2+g2s)-O+mTSM0a#CNqn+V8FfkXoO*)?$9g<=W=~dY|B5~ELoN#5WW?1u zByGAlTdhF{ee+Pj;eJy>^f5PyrM__gK*Nnn 0&(;w&q_ge)aI{^{eH zF(6!?dtJ8I%C?cO><$GpJ7L75VH`h1?7Hmfq;0A;QeS(H*{C_!*oCrboSyOhVz5^; zZicav8?nY~a0~n_*}qYAL{L56Hp3$4mNJAgPZA;^O}3{qD#@-fzob^-dc8Zn8Uw*W zll9Z*t@eCau9_ZxyXsGXNOrsWRsp+Lpsy<@1)fqW=%4~b0k?;VCOeKi5NlFOTRo%l z#r^Pr`Uv0meigI*_^dGpVrM#Ys-{bQzShJnS(sgGT(vI;cb_wPgAAW*?@4`gc$I#3 zW@3Mp9XxrJ=G%B`87!&kr)~wigJ>~P4&xYT@+_|EYU+;c^0=G9v4+`rOYv9~eaG5$ zPF0(mxkt)Oj3QvZ?QqSV>^u4@rbnml@87aD-@jgyRyg46R23KOJX<%v)|`Iu#!@5a zjN&92o-cx5v4c@uE+Kfp&Kk79>I8OY*jbX=w%#${=zFlunsj|p`I#J*cA{X|b$T0q zNKT=Vfl3GZ3l&QO;Fih7#nkz2heo3x+v4%rCl17D72g#rdWK7-1z%IL$-(bBjg`QS zx0zdRz#V%5B6kGbb(Dm-RB%l(Y>RMIrQY4(*O`g&U`8*o-g~zoPK_k?_x)-QRa9}0 zC@xX{3RNLgKsz7(Af!qnk|^^2NEGoE2rA1z&&wFM1TC{Sbk=e|LzO|AQ3r+avVUe$ zCBanmWZ7&ZEi|s|I~V!x DaBxn{)if=Y3Kqn5uI1m=vn>Kc=;AZQv)@=GrPVK zD0jA>Hr@WZXW-Bd25Zd+H{UrwLE(^S4A$d0&(k`ou80NvEfa>ny#S0Zy=)+#6Jkr{ zIOsAFewvCXe4Nl2y{}_8UyjSL!WhnN#&NBiu9yDNDl#@m<`70`>W=w90!XcwkDS6k zF8uy@#Si{cO9jHsJj$Ug3A@w_0_6?pB%fp(3jYic9;re$EKpTe*Q?gK{DncK6Do>E zcsi>={y m)xZUshCdOQ#aoB7tRdJ{}*poWlRc5~9lK+h54Q=iKE! zUXrYZ+5FYUJQl-~_*r|mjC4;-U#-|9Pe2Yd4B;23W+SJ&f3dTf0@?Nx9qfCQf~t?L z(6?K@VncnN_t&b`JJzYz7{A4LLMf}XQ=Ef%9q}UU%kP`v!2YxBo5D-R9hQ%fdykKE z?+s#>y}Qo`*jMp2;p^zEw&$Z_cR6OUxD>h6tQ$>zYBr+xbAIgyIp*f8_n+a{qrzI; zubRSMPrhd%U+#pD93y@=gRkMR$#S*Z* wV&S~k-ZszY~GvOSI~5GJ-zpamd4i-YjZwJE0wm=+3~!ro*v gp-}^X1C8u{;(pn(OLaixvT_|6M5K8~v|&?=uqzbt zX~w(I<_R*m?`F#f&zuNsIpv?D)*VbMJfTtaAkBQDvwX5IdBdLbgEv$H!3P2d^6ARr z*LKR!ZLM4g0FC(d?IQGW$o+LR0%CY-{$<|#=}88m|MXQAzPVbpqwEkol mX^wO5 FO2X@J(kPkO~TYieFY*-p)Uz={M~t8B~j6Ea(P0ESK`G)xxsNYP>BLR!C# zHm63W4a5LLpcm8ijIDUXP3C ^*+OAWu@-p@9*4*0 ziFkURjfb&%SVxSr3O5;FFfsCTMgf??;>1IDoU^`8M1J}LFQ3PHG&-JjZaO#sU$OYH z=L0zQw9Q^xA;Ldz&wc^G(ND~KpYzYYFn{^kf1in;X-?dpxHTb9!~g;~54fo(AP3Xg z@jNfBw@Lqi%M`o_1ztrX4q=B1^A^m+#Ds6g&3fi}tYQ&MQ*nk+DN&|MlNN0{m<$ Q$Hn96i#cDTuo#~x2@)j}%OJ5yraW70m2aB@ teE~c~IP5VQHCmwt1B_a$S z8373e4dd; gge5cPtXag26*p`yTzRllBbGq4croG#B}tbeRhnE`vPp?- zSFBKxQnHvU(WqX79okfAXQM1j;~gBrg90JK5I}%2Y?PyP_5gdq=qQU%osbW}11@kD zJp2MaVC?AI7p;h620_Rp BOSAOlKW#+dwB8sh5^ zePrbQ(s)_hA|`lFAE*O!fZXEOt`33R9xQ$XY`g&&9tDH%0u-!k_5C+cW(R9cwF_jI zYp~MNuz1thierO6#E? E*)G8@hT~S!7^qz#lIGw{k&PlwAV5qky7qx-25t<> zhpk;0UI|{pRN5d#vqhuI!jUjWbGJv=gL7peQGSBDQ;WJ2yjKG(iNnqw)_`Sb)6IpL zmB2j~Sf+?-uX#uW5-br|0M;P_83$W#j6S#|zlYb$b7V#I!4vXP2-r??Tw)@av78}h zHHV?O^mbiB85<`r2Rs&)(3FVFB&*W1mQ}vdV#TVRxR)#CLix5Q{qdHfq2q>jEmv67 z(E4iJVD1brbzioqt2eZ+O|5RveRVUJqG&0v8O|uLXRFEC4cSe(PhKj^x#{5Ae5ULb zqM2FGIl64KGmYXS;ZD^+klWdlOs?;PB_9{yWH`bfVqhJo2#5Gx8}I|-NLT2m5f%Y_ zD*aHjG8h;ywZeI;@#QTW^oRcEVYRr#JB}}oC^opbKjjQ%Zr9aNJ`shMW|PWo$Kr@9 z$W 5oTT|!9c z7^FrOaEC>9O1f$xg}$w|C%*w}=M}dY@0jYMZbe3ewsEaLi|B*qj+!EYVb@Pm){?6o zNZGu@B2!a2 5 9UkMPubsr?=b3@LI?iFAQ*}7TFlXPj4scCl&Qqn z*+cI{BR (1bMK6Jub?I z2a3=~lEXF}D% dD7pZN2 ?rSm zdC)b|164dd`uq>*PpVy%LJV6|Hl7iXuEuoguRp7 mXV$Y!JD z{2MTbEAaeLCWYfaOcLE0=L*riba^If24CvCRfRi6T>zwaZUbjI~Oa z0%W< ~ABg9tsUTs?^jX?0!}vH$b&aLPxea~&GvF{&eko)Q zw8Z!lee{ztG%XM`JYt*96~57+q;6?~JmH6B+F&z)6xvHm=ke%X{qIRhoxzYZ =ydVcVuGsG z2}h?r-@Z)AvqT@2PB=JT=!usOZA>Z+7ZC@63yxEN6SCMK6T@TQQ&)itoN$Cd`4WN~ zu2D56OE8QD<*<(|J(Ij!oIID)qsHr#k3NSl!8!gY9y$(@_dv5I_mUFhY_$e)c@2G7 z>vbM6R%6m1xUL6M2?C3c$j?B{`lyJ-t@3k`H8JYc%nj!em7h!_l;qs3;J&lpeIRVc zqXD;ZhB_X-dpCeB#&21Bzg(!pK7?+3R{~mI*O(zln9^N_+X9z7r#-%;WL|_#q6wIo zmrYbS-r#)u`bc<`uTSf A?kn@0hf&C#XreT@>+Y zBtgzf(1&zF^~L6YSjm77B3owE={@<@cc7s@S#8z*Qqg|Y90=Nvy&i9-tYCRR*tEsw zO-xS!C?Oz)o1GPzh7S0m$mWUo^GNzlhu@6tB|hrGYN*C$K-fMM43G7M4LzSS4^s&% zJ3}*(*;}~p)Yf@CQ<;zt*Jpz;9t}9*kHq8BEe}si6YjxzL`%Bsu=JqM`Td5*brH1i zW%wNW@2`&p@pBd|Yg>lvE`=pc`UY#h#-)=j-eu}A4}tCyc6$uOl2X*TE)swpPn^8D z%~0Fct qCie`Qv?Op+d-^K=rF*Jy6EwZ(n-ccy!2Bk_% zii?HVq}3!`Ru;Fc20^4yrsos(@2_{1lb?m}FfwJhml(m4 z%WG9BVLl63*CZrw*bMptSZLyiEC%Y$A*Aqc?cM`F_?6rFg(RhYK{&PIY|3>=Bhn+O zbG)$Gic9Ah?p-CfsO(m;t=e4P!1acWgm`rVrLO+Q%s0J7Z|>!xBPuo5Tc0AymYY|@ zD?E_7jT3SrcYH;sa|Acw>r*^@`!+>l)(&fjv4%}PckNcF&cM5t250+SICqWjKX>p3 zUyPaC7m3&B%xngNJ!X_40m?^ay(Sg6fBmJk>7*Qd_q}YpVvd| zjNLe#VsUi3Ly^MjF9@XFHBXcSc^R>2(pgKfw~YA7s>mQSKyjby?R8tS;kFu@ErTxG z+rxcm8~(j2G(lz1mDKWZ?h?M~enj>IXOytC@N)PxWW7SD&+U1fB{w7OEwT8vd;*5M zG#-H?uFnO;`b(2{0bG*Kt#S$D>&>99(cAVdpLRJvpf7UETQ*}bcVhpn8S^32(_J)Y zL?*QqKn0wd${}a?VV}Dn4APug7fKrr Ypw~_Fm!6mnmtNo2`S)Y=^1@5Pw?|9u z^KWJ6( aLx?S34CGay$PGV{cIeC)miM}v2X8Y&pq-!5kU>M zUAMBpPvqOdB9p-9OUZ_;Eik<#wO$IwF=ZB`DI&l!CdfC)JbntlHwZPA2~z$4HsHuK zPmc|GCKqRJ4oijao7R3W>dl;~K;4s@U*UONa(@A9mXoA>7UYwX9qgCA1>9wD-WsyI zlq5=7aBD)#TEFvros#dVQ!=_Q!*b+v@?>FvpYG=f(yQjbVA}f}J-uns;hn9GxPG@J zwMWqpzxc1e_}qV_9qm87aTw@ PoB(dAGH+sA(OlgzESN2K$T3LN)|#a9MgIVPjvN3qxv<90d3b?K*L2-#!q# zt`6UEcP&^xXAb>*>00+6C=gS#sp7VpHQR^ZqZVG3QL<0hQ-J4Q@cUpXJ^U`nNmr}; zx2-$xwf!EU&n+%X*l@JbW$O!vb$#_NkCe#vd?wHPkYbh;kLkzu%tXQFp<#NsQL1lo zssB;n#Az+Sy(nY+%qaNf_^P7?%76b)3*7m-^K@hA dh$$W`>4+`_hi4-0)$8mGaqopKo|z z<3{b%sk)~&Z0ZM5m-R9}kTRz3mhZwdUnCa1YW*#cvj@_p33{U{FIML=_J!Y!;kA3y z{*Vj4c75#s?4#RQV&%tp-7xkM*+_CG38>v1)J45ghqhaG#T6mX+IHRBR)uQNR+GNw zFjaeXGNsJ;uDHr&h^CrWDJJV(`eL%l1c(fwwHkA|%LNmiKzF3lt#=4N2{~P4v47n^ zfM5^wx75}4w+@`5UfsC_p(^E9DRD2bf7#VMr!N;;;&l4hbONP=B+tB`FZ_sC;OU9v zP722xpx7|fFt@3^yuY@get#xC{D+CeY<9c;Fe4A%y*Blxulh9}DBe>#pO9jRK2T{u zj2QdADR>T^vYwmB_C|^=u2`44#N93`fmh-d;mZ-OS?|s76!13h-pPN*tKlJHqpfU) z5!i>QZ#}f e+|W+y)0cKUHt47 zFnw+)yx+Ui8{g^M?+ctAs_QviIGhrEb{_`3%9B%1O|5zv_z+EufCCVIwHRoJe%h2u zV>`Ec;TMLgy?Of11x3m`?@$xSL!3J=Q1?kl3Z{5AP!_$vQVboV_IOE^Nwe|(ElLm5 z(pIn%NMEO3|F3#wHE2 8c5axX {DP8#njt)4{vMg8nA*~CzKgzLVy zhX=y!vH!>StTWo^FuD5Ba;?$qaN9b4D^;>UR14Z;jt!PuY <*9okuUSJoHiRsMG9nTZo_C(X_3xr ze~=bsWxK3A_SN0|4BZPG$y|YgV!y4lc-_dPiz4I+Uiw28cf6AA-@AYZzDZa4*msl` zHwjI8xhTs5IrM6`LJNt1`w5z(MQTi}S%N1ih8#`U^^MSUCSwM`uL& o#dtC{K)79j3 zc87wl9_uKMdqYjJSg^^fCe-4n%_@ozN+AEY?&t2xrv#(WT7!;M2qO-=FiJ`~@rsh9 zr(m)T4)Kjdhtt^;45|qmaMOQX?Ck3(40pFVT&{}ZueX-bw}|m``rCXyE+5wrYEhZP zDhgt9l`kyK1=i{Al;F-RDRIuQ&LXZ-=`(#VNUNN5j95SO$!NJ{26Kt8)VREzqH&`~ zE27nAk)M?5bZ!~lEpsGNm3!mvWqC0uUN6o7g>+KVlYMPYoTvrsEQiUi6>fhCq$L!h zh{G<9x)pjeX1gC|eg+VK%DDYzHuT~P)8&5@e2iPPyU@Ji>cEe990zEv8j&(KRZGaz z#MV!RDPy)yCD%eGEkw49u)dyvMdJTzM*fdd>6 ZgN!0^psAk_lc6Dt|j5s8K}6-4jFKZT7_E;WLs70@{IwiZqeG^QL)}sDlvp% zh%O2fkfDeyRQaHEFc-oE%+K>C#m>|7;K;{srH^sOG@MnY W@k1!aKzzdO=L%(SH>mZot`Pbx<%FN$(TPes)35JjF9$kUs6334XJ z!g7aaoq>_#{RP}9=o*jfYL7xkXgysh3!|CXO!rbu bpr8!rDziGBoAgR5z!ZSq&oOm_DU<#WH1x-C-xmF~%RrlC$% z5xv9sQen>i(%Jd$DK6X~RiQD7-P>SYipVEYR?;HD{@mP;SIjHGCognRYl(6pSg-{4 z8TnzQO_q$=Pz{oED;H(FFR? Gg_zKCu|OA#erJ7CL%D{udu8i0dHi=`g7N772A9yL>I&JM^zl9BbLoY>;PQf=X (n!CdfzhDE*oU|Y^~mh P;y9S`sZkIo9aZT7X9tjW{5scyqW9wwN&b18q!`uRr42u=kOvGM>ND>J){4ixL^ zJCbMI@SNhX$#g`aI5O5A2AuTH@}naoso2@I)Y#G*(&%;+%`Pp4iKRyRUl-v0ucwb6 zJFQ&vW43#G<2mz(#4regYu!sb0_BCY!tQm$Sg>roCqTN&QkvAFdYZkJL#bT$zEz8R z{V7i*lNsMpz&O3EB9!M2NS@n@u?>p QRNvPfSVOa;D~&$3y{8+2gCQN#`a2oE>x@5OtMI(}VTVhGbyU#fb1 M5TodF`)0#%ZF~Zc1J7UViGFAhw~n(x9(~^o7A25jH^f z82zl>8V~;-VzA3$nUczFu&1V_jXm_VH@^t2)0?Uh*qp4_6XC8>>-M^t=+>SR%q@rb z4v8oM6-hD54a->ffq3X!DpcD1lKOIIXr}4ondd{1^T&b9Zm3GC_nGt>->H-yzo^S* z54S2k?lvVTn-h)=r|j4H45lWXkh;7!%&gPmW~)_ctqwKYrfG3jOeks`4H`AUY7_}$ z-{wHFC)^dYZm*wd-P&0a4)szjw_o~j=TgXkNyNTsZAj|4)Ul^u@a75OI-NOQj2UYi zOr($S_;7m(hG_kEBy&QAK bWfF@R^D3oSF&=ozlui?3*6JX$#SEKu+VTPctaSJmL;h7E zH-tGks1*2{2!@*K8$yjivl|=gi%VNHN>4U5r#b$Y3n;wlT1Wgng`FDd`r488%^qOk z( {kJl^`pJ9IE2%?A<5~LThfBZM|%Ay-7i_T`Ow}R)!5z?;Vtik|dEPa;C zuSJ*&r%!c%h8f%>671*jE=$IyL9Ut!V?^^g92bw w~kha#F`s7!H7ceGURMDi)wzx!EVG`fC10vFH}Rs8?Fpz2B4d$z$933FQ>l*p&Y- z0e=zxNK-wgs3=irbg(F6Pm`Y~xIR-jcKnzWXF-wd(|nOVfFfqm(|q2DC?C~i@?HQ* zzRKdmZtq>2+Lmf-F6c(VnWu=)qT{+4Dg9@KhKR%CjyeoQXZuq!N?1Cd1vc;(FqsSa z{Dn;B48C0QC7bi5MEt;De+iC^mqc4@5pjh_sW*FN8L)nww!9}9f1vEJb}sXd$qEk)XlG4#m~*wjHnijM4&v)2UxQwUur~|>WYi-HJYYE$ zqJUnKVp4!~W#M_zOXr`LgM)_(9#8xZjOk>C)729U!nBT)20wRA8fE%m+EwdLG*r3d zF|Sf1Y@#=l`Tus{kf5^sG 2f$l|RPk)oB-j?@8oe>2fxBqlmcrLa6&Dg2 zEYVgy73oLCD5O -9eKMnJ*#mWLs=993uT@WHoLb^I zOPw{JZ3AxUU9#14`xmY1vUoTU{gR@XM`?J!???L)ybtZO*mH26`j`A7w*}vVy}be7 z0NmYvrk%ZL@B6dS*? 3X^tVansPz5v^`-byY8}4r z5Xau_{yu@4d`@oS0eJP++SzdEmuROy(;NG&^f=6>D5ULOyD0=ku=FOEi|K^a8R`x> zNiW{k$CjZ!Si#jUYW8e?kz~u~PkzIes)*#chh>5n;M81Zu8Z2 pFr?6cV5Vx64l6^~)kIw7kBGk}SQXFYVQb-(j*>ycyY5dHl<@A5vN zzNG-G=9_ybi46{RS%Z1N64y`q;6RRhQr7a5!vOOo>JD}L^1}m6n72Q#O3g#NUfp#X zge?4)`Zn*KjU(SQ@@Bxhg#@<`W#{K~G~_d`2Yur_OTEs*ocRrTlX-yUI!&Jr@Ef^$ zwb%N5gB?7q3$c}*Z(2vd#SRI|mzF>i=y{k(*F}|j(eGXGH+Zgh$j1fCo{gg&G@I45 z39W{tCjJodpEh6+35^3RcAHTsGPE7}r;$$(qjv=~J@I(W?C~oqYI@^-jqCgR5EWFH z4DtuB=BN2WoT#iT9+z;vecLepPtVdi@ZwxzhrOf2z9Ufs?d$E?=Sn6vIqKW=Yy2>; z$?A5C#3r$=yi}_;__gvfo24-6aEB#Y@vV(rdG#cP7x2 AL^VV%I&WplOQB-%1y4gLMcpg$Hr z?`{ZK{SpbKH%PpGF?gbSa%bYj0``KxHspI?@tXp*!CftZh&JuC&tCQlbP%ByWqlSi zuFZop+?E&lyjzIqmA}g}Y_EKX(`pp;XypZ2u>-tTT$Co{JsfsRMtZAr*`FWU&2&$4 zdbDZ-RVxEKD2= !e{lZ@`DZGeJv-RQiM5;biiNcSI1cw?o}WNj=a zlBm5zC*S?v=%V3(?RI*%jS}c=1213}XO&4}|K7>mUbm%j&XK*Pe81;8N@s1C-4zJU zB`#NV`OA?an$M?;BH-4Lm+&4kO*K95#rKYnq1C~gy3ozlDdS^u+*^j8nweV7KLw`3 zTAxhr(P-pepH!=(q;fCQ9!jQ#6m#T?*$VlJVYQXu@FDmyWce8Edbk8%GFIB~HY_)s z5vbKgNg&c&DvM!jRhP~o&kEvR{NK;gvveg;c#j%^Yes +uIU+Rg@!r9Qu(=}27 zTJ9jhAhJ`0Q->werKtea6c!9J8Zp>n!QtaV9O~ruaX5Y4!}mt;+ZFlYdjeMd%TG_s zjRcCv!W`7dtbb#8YF;D&dfQPq3beu*($~xI*FnPe{aQ$&K~W?3mr2qa_i|Z!J|hZ- z_o>klHAu;>fcHYty$`KO=Y_zom)=0@K>A1E?bureFbj|Z03=WZdBO6Gc}59T(*2k) z!T}zGBMM9fL822C59+aqfTYrCfk+Nio>2mobdxXvnqNBt^4d{ob%&uw6sD)$LXe8~ z$pRY^h<2+$+f@*RpK8}cP_5!S@Qg~(@lYwkAgnP8XY{Uc;KMoqJfj3E=_cV)03@IL zdHbvtuu~))W!P O z&5e!(jVlPs_M<2233 K~gFYSH^4^ zsir-(GnYEus*%cNGN4 (k6yI;oL b|F&guHrohYANPnNtrD^&ckYkBE=3DnW%m!m-{|tD9$l@;DyN<>U2N z?^`u<6XW&^P5ArV0T$hXzSCte`3X@OA^sQpwU-{>B6ftl#IJonH}}`WITPQFmaq5% zl;;${#y@`QMvD&Q%gDBa(G_4lB_7!-Fkg;cQ-r+s%o+G&U9ysQy{cNJ 0eL!f6goqJzggO4b=lFHcm?p`x`GD0hotCKE!0&i;ixE2hmQJA?mkEvm%2Ad zL}C*5AIeWdBe(|jgnR+7r;VO{m04G*v{hlffioY)0&R#*xW1YiVqmjpBwhivFI@iv z@18kK&a;wJT~ (s!_DB*-$y)lQ1I2FnnZY(-Ao=82W z<19A`5v7(KH8eO?yBIivf+ej}gXN48M(bU@kkHDAQz4S!#t>VL$J8FoL~-y=Hd`D3 zfKGZ2nup9Mce7~ONQ}b@zHicUZQ(z0{-%oKOv*e~cZ!K$)7Sa2?q4$4+rXmp!p4R@ za954Qi%8&NuEUwrKgRWzBZEI>JX1oz9@*&0Vls~0J*8{5U^q2>-STUy>LholVQyhp zz#XpjbrFzbxym(k94O~!eNH5#er3t8uC=x&gS? R>I)s(RzGK;i09^~tW9R?wx{((DBAM>ASig*7zt+Nq%@BpGv7)N`#Z zry<4(s89Ud0rrLe)wYheRW=gKRi;_DyD>^~q}iL1Oho}Zn0{H8d#$dXI#w6!eoZyK zX4N8EVcXFzx37Z<_%#E;Aa$^1P%(Hpm>-Lb)sCGWIuFx_cZM?~?UDJ&W#l_rJ4zX~ zj82T6jouow$R*#9mYG(R)*##zl#A<2Nn?!cBY!KN7w?L%#h+sN(&=RjeGvKt^m!SP z8J(Jjm3L1Z)P9W_FzIj%ac0jHuhjFVL`+GZBArsAKO?o? ^CI(O=2y%IS_*4E>kK=Utz<7@|6^D=o48}S3hq<9OkRk$h_{BfmG?I9 zdLdCbqwqU^grDTM^XKrF@;CB#^AGT! k=h9ic%#$nTR(;CxT=Bef)v(Aj0tIVs- zL*{+vcg&xgAG9Z0be48Y_z!ZMxm|m{b_Cvnm1~t-O;&{G=ausscyoBGc?G;mcASNu z7I!}~3>fHps|=HS+xmMjz99_5aKVSz{XZ@GwPVbjX7FR<8?x(c{@*1GXbgc(5S2gX zxsM4~zccgLK0Z4+35OqV6T}zT8o}lNX_i&x$$L|M4^ZjKs`n=ln8yKTW2GH$C_D-O z&M5!;L|_3DjEb^)+-c<=bUH9Ecz@Tkei}ez!{3O75QZKdMrP0~Gh{xnG=-r3zRf?2 zw1V^x*WQd@ZC ^*o^0R9wAv+R zdlt201mBl&aa zLiCEz$;z*gyj=e}RDmYN79)w25ua70hn?y^Z2w)IH3@71%wvxw*(qHDEtNVfvZ606 zf@}nkSIut^+(#Qw&yTc6520=%QRK~}d^zTsCcC1Y9pF)BQQ=pr+C&wOC)-d@XOz3t zsw8`Fj}{vF@Y{h4ss@;9I}&&DeKM0qas~CU#U9bFe <0>p(4ttFw*^+Q8&k9;eCBTlNM_hZN8hKUb8L$>iEnj9V l0 o?{f>1;X-Zk=fVGm&~;B3+kPLY>Z_FI>ZOVcB>?A~0? zisJuI{Hpe_8-i}o<9J!ofy5~WeHXvMHMbq$R?1j33}M}+ tQ#RKF*ho`sa7 UuYatj5%cRA1FvOU?LR;DxRgPOP>F+UCVa-)*$R< z2!8-n%VE#@AZG-VeOjvM@o()+me$7@ET2wb0=Jqh_I06XQoeKfT-A~XZlRE1uX*`A z7y%z6jgp0XbN@S+8UI=JlI$Q{;`>^!JYY$=rpW?HmX>^dx6X0$g%D`VCY K`v(IULZ6m!PAwEGbwp zLP0GYe~$2UY5hch1`n=E1-RA%u**fA+kG}P0zupHk_;trNF82ALCTpnipMfwxWE}{ zijf@$$jb+#B=a;m?%VJ&Bu4U5vT+!}s|%JopZrn(A?55I2G5}kgFuY3STs+=HTn=F zz1eOCkiWiZ8bmc 0Ad$v>XMpE3 z@wtauXO&umb{rUac%?7jKgbaf=k?ev4#^*usV7)j>%PmsFA#YEVq3bO1v~7yv5wa&7epild(_a +oqdcR$L*N1)Gbd9XEBu*_+KeBTNIEDt8P ~l?>R~^R>8rpPK)W zK6eXag_8<6d9X>nzn~b~s-_ZM4yCbrzlnY&E$iELOyVBhfp36b=dPPbBs4+qDBT)k zNw>UKv;8T@JmlN%Eb j8C%Zp(vwG+{Om7g=8);vlRv-d3(!ow{pi)UlL@XhQZjv`F7FfHBcu_yuhT3;^ zSCSZFh||RuAGN+!YVvCHeKQr!$P`9dW~a3N_;!&V7 SlZ*2nPqq%^RXET5?^(u9(;meiZ +qS;tpL|Ny z7Qw$@!^cDKv}tDdpLy~h3P*SW?EgM7yC%UUu$k}&2++almBoesRqi}}bZ${mxLv3~ zg<_!8kYUcj?xk`?=f6cae}#4I&pK}EIacs#;DrjSfc54lKAW^j>-#uRK>B@wXkR`5 zjkj&~;gOmDy8$1ezz5hAYOY#pRCO;-fff%+)87x8Rgd#O0LtWu7ZyX|I$#B60Cuwr zGAla&fcsmIr(yNWp2Z~;j-dbz(An_w%8xb3c{%T~4Wvb?+)-{M4W^{N$;5|>!NawC zmU1qXHuEGmwE%$dJiGD*G`+J#WmBXj%d;zjP^o}AaBDWZMv9*p42B>ux}mC4=`vrH zN%G|iaQvbty*JLMT $MGNrA{PO;0-2Mg$(yjDer=p-8 z_U~qhk|M_EhpbMrc04C4>zUk;2nP?d--P-NprCHM_DIU^{+^x=j1jae9sj-ROSB#2 zB-#VQt^DceB$$#qm_Az5!sq-Py`&f`26OV|mZ$MGawqS<$1;r LEMhp6ZSlezRhtp(O~{{wZ2l8&85b#L_!a&Q%$!)Es+; zj8=>6xtu_(H0)|iP{UZI sf)$2cQbncQfIA zP~*QiJ`*! ;MUWL2J?<+I{zFC(C`o~JRU^tiF2nPZva=l`+%>Sy^4eK6q{KaJhg zmkN&kXkk_p+Txm_zuGmFJi~#WQn7Jo-KZqf^)<0U+3hrbFp1o({c?VJ5HZ&I>+u?^ z2gSH?97Nf0IRe1rLT7hzo&e5ofj(d~JS7AS$*DE-zwBYQI4b(dA$GNHk~og7fem?R zo>QYY$$8u}jWWG&_X7#(&Ur;PR7_QQb3F_W$P;xJKYw$bxiw%3Y%`h5gn{;ye?Lhi zqB77PNdv;KDR!6i{s=D0$OxF?xb`AX8bHXDSmvsG$e7$X@FqC~ZCST2k!OD*@2_ NijagGU|og@zV3NN6zaN|k6M$T_m-d!P(O zpRa^6TuNT=B0a%O7`peqHCfQ sIKx_GxReuggO_qO)4=nZ4_njj+uW5f#r#Q_o z_W3!!LC}msP;XF2j?&Ha=$jSz>Zm|YyfZ=P{p_S%Uq_YJ8pict!A1XYUSHp1;wf;> z{a#a3aI!DBAl=R`4+=w|lcW7p2+Kr?Q@ub$3fUjsqy`5*(ttvBZ%|*-*=EjI!bkUZ zH1AAkZ@#g=rfy+%hj=J+<2>d9J?zlo6g{?5lN2JUfT6Q-9$fLnEoG0md(?U4CbMQU zONO}TE 1|+&AK)!xrh=~!?gG~Gm&Y(kyNU-n9O7v?-87qEOuf#)lwjx zUkcK^XdU}1stYqDQlopWmTQ;(rhW=!o^A$Jq4I1lR8iIeOKBq91|abFa=rBSdQ_}f zXJGYWnR48cnc(1{;wHb0sy-<&^-P%4*_aIS0o3Zgm~odn#!hknesO ?9(U766yiRqi)+Gy6<>AV T+kDW)5 z#obo3hhvTx09IGYrFC*?aA-D~wq|;@!ApIxJ|-O93Q=JoN5!j^UPX;`zo#0(eXlK5 zv?B&HlKs{%qo0iB#&}$8x-!B{piGjb4j+<*aWpPztBUY2vs)rL6Gyif4G*W*H5e6% zr!m@vfx#~u9 16vYT)xgydlo{y-0u@L{u$k_d5i^oevLTWNb*jMdNH-K_f?zD$ zwpsc)PP$vr0zu`xC6xmyuIcMapir^`qa?EwO4>Lv1aX~5KD4l`$?^(sx&lVInX$5L z$~_AQx_+!nCB?d+&O_2dZq*ze)0iNDa50vQ;jZcMbOO1`$HwXL_Ri947ul6?n+HZO zVk( e#+l=8sY-+z{(f_#MXV~t{a-VVhl{dA+mF}M&4)^GHx(YK{hRnArpr1@@}} `JFaV~mN b z2 2Vh9f4p#cN4=*}2h2gLjJStuzUd`oqTGR52&X&VA zugR=J(bdVG*igv)rg9erMxn%cx8jX(eNla@uB0S@w9WVkIXFT~ne3si_LMi|fAiAs zCu2U>A e*t0Kvxtx8abId)oa|LOZ2Wz;no z13JKnm;}e^A~5}ID!3AN@Vef(pYW&&3|Gp$VMyGj(u9uE@xV~f>khFI }HIy2A_awrDOE%U{^E%0_TgXhc2bk)mpE;A}? R)-yXJ(@{hJt1ta6(T zWJ$UF{q#z(CO(pH9Vy%N;yX%N$-P;vA{g3g+zr)BiYU%!uU HtZ?(}KY?-Puoh-#2h&3ENU4gP+?NGChK%H8HCdiw1d)XEu<<^EhD4w4KL z03~?3C9pfCEbj5kPEn3l3O{K{NwpftnuB>_btgZh9?6Nu(sfPMzz8;gY>5_gIMTFv zNtu(KfI6-aJ&V<_2$Q&0Rs*LS5Q4DGvJt|!ea_KHky00L=28@3s$u|;H3_tWhY-$2 zGmBxrk#>|vu<6BWX3TXr*9R%PkYpHkyLY})dUwX$)5tphBE-vmYZKqYAVO)U8)Hf9 zv)iwJpSu|QyUdZ@ShE|` P6=j+psMJmaN~9#M}0^xd)vqXO*pd0 z44QV}iA~SClM~`l 0?6z-NXVjcd!G9YqlMwv{+tuu|Euqn2gbCK#dv zinMGb&JaTe7~amTRuLsqHIUIvtga<6P1_wyP^4{AsI4<_A)`F7joK(DtB@9HIhz$l zqIcjG*}@itD}x2PnAYsa3`!dt9ytha&yBB|#C#3ipAq8pRCx``eK%ATy(8?U^wu7Z z6-9q*oCQV9gGN(Gul5}3-hYP=zaN%z5tfO&$!(e>+*(7hlypCwaHiXB(&=>( OM? HPgQTEtcS9u!6PTZ1Z(sKSCE&$o9EM-cjaU)$;5Ki59m&-Qt4$9uPLx9 z4QB#5dGzF-d{RgkKoJmE`5N0XY*_#^KGsAepc33^y?K+Ntz4~^N`j{0%? VhE^I#H$JUxUe!}pZW#d=*-uuv-Oh8j3-r1Sv~3XhW|V_`B!gmYeA zKvjf1kgidsBd2u?AR7_+aXNTYzdI9S*yBD|J`fH GiG}e%?;3KdKIA>O+G}}|Gq 3*~uH! Vj?XKeoK?2M(qui5Hu<+`a&q_3 zav8lj*8&mN-cA?NaG9JCNbqI$+q+OyFh06-YP5X%8&YZzhOuNkkN_k2v%6h3khi|W zgKRWV|N6S{G&BPyWZ-hAV}5EKOl33rf_ >3YJSs;INI zA-@EvMVEVo-70*IT6Cq}3C^myz4l_vt2RotSpobpP6F~+gxzx$mT00hOusra+ufiK zB20;Nu@?}?j3?o9I$>t5Oa}=o}u+;=}_mb6p||uFkiqlC}n){F5Bi2|-$wXMnn7 zlCnxCqvc-6;vh(yqo0v cCB<`!Ml041Rwov(gWXM|=kK6J}8p@(UL*3E}X$2rL@;r7@O<*^84$Y(+G_C>B z@CcRYt6V!CNTZd}?NuwpSK|_Y3*LxD!O(Tx@>9Fk*lDujPF_iAL%`+ky{uBa;_$X? zH Sk1;`5V%1aSfb !R6zaH!A5GBiJDF01@{$dBOxH{zUZ_4)@CRNBm=HOMYG z`M1+&YfpZsa2||&m>Mb%l~am3Lg{~Zr |jM|d{sPDvhzD5bK+?a3wzgaVI;JjXA~h8bOlcV(W9>PbszTHsTrp)59#qv)pP z=jTTbRmY`6>(U)>B9{i0jB3@7G$7)Ef^>_l>%fN(lJY{eDe@~nOoMHxoKj6Ru5 zm0ge9tMzp|U9EYFgli1=1T W zGxiJ_*1^$1u(c?1%;(IVN%kgUXSK?aX0@7%3g8Uah)Pg|eHL#!{q0x?&W8`b$-eSy zxv!k>?HOH*DL{p}B2mtl+o)VY5mafxCv6B7O6BXmP^Zn95N ^lwYZ>qThmGf?UWq z=+AFLpxW>Ilm96M17<^gI1VZZzKc`3@72!S-2R0BZDQt_4Z5(xXanDXZw9P;pg}$; z*>_BVvcON%|Dag-Ul&-0)uP!zAE1v3LA?kl{M_iN5RcuD;%}CVmp*vAu=21DQUpf zsiJ)01i?7B4rGQlLZL_KSC&@2J3$8u) }FcW= z5AlV> zdm&Klu1lxD6%=Ohnc)v zlh*O(^uJs5d1Q5Pcu7eVY#&S_9IolEH~myiPM=6#iyKW^6O!#Xt61-D()$_rcj%k5 zrh{=?Q}iG|u`35)@mUar !Zn|1-u1qF`^6pEIA~3HvsNkW zyIjt2rI=~NTisul#$=XQEJ;{LABrmoU2tSI zjP6^io@@r|ILf-UtNt)Hef3tk4i+~9qN6>e+p0aY09%vsx^D^M3Uj=))N_AlZdbf% z`lf#?;0Hb;!|j0Rj6PdakrOJ| 5$b4rao#mEf;jlS?Q zG9~lK*xi(>?BX-Q#dB2wS2}`xdvJ%xM_k3+Dg>2+;dLJhM*^ZP=GHcbuB`6mkOL1X z@NB+^PKSAA*7Kq%Up)arb_&f5w2t_e!V#n*qO9u%MQwM-#gA!m=%x}Ouu2M$wWxSe zu5k=7w)ZHrcHbgF^BpT`uy~er*;gHA)XGqg6DddA)3|%i9izR>?)1AfjBfI%JrR0H zOMzNz);EfK<72*^&Fzj85sL-`Bw`8mBpnzj8cjH_EeA2^I%uBPWL0Mr-S9YDWmh{2 zRz$Q(L>~&DS;9?joUrtX6p!N-jsE5%?VHjDea)#I-2 fa-c`Fp3XW5x(*-|L{|_*I(Oe0)}b4n%kE~NTr6yMvfLViyLBx+ z4Nk^{-SBRw08*nD#NzOl*0eA)OO?wgoD7Ta=~1pwfoLcu0i&9jurB|*OymOW?KKW{ zKLK$En+A0mh~=~4pu-yjlcl3P{^lWQ!qH9$dwasO=AoCCe ~Em4p{fypVApzrAh z0pUFBhHR~!A6R|*@(rDbt)aiGm9|fSp4PgdU`@PAU=KUY4zkGCWtQlruZ_!>E}i*N zmyKAz^HKo=DEi7e<;>#u8laL>o(`o-Fm>C;30WxQb6E`M6H&dj)6gV&yjuKF%lA+1 zvvOqzMN)CS4F{!B^`u;t=kn7L4uC(3ez**m>DkdIZNnFC8WW~7nJ~>z>3#9a1SR@1 zd= 80H<2#cV}J{F zyPfQmv!JRFQ^AZ{_9Z@4^#Lk5ah1p#N}K5zkzJZ9lyO!s_WC?Al|PT8>=kCW645vk z#atA5{fi59G}-GN`0yecs!XnfvEcfhjwyOgG7y0m>UOus^!6t~ltNDWtYDbiIF>)| zZs(z ^^98J8*jkKs%)LEB-xC1F2cZ8t4dBsu1?Z>IY1_u*mtQ YFdvDra_JTK#p=> zYk}-}rz)GZwXPBRSKOMB{-%bLJHclhGk!OAB-u6hdg17(ADu~CU}tj|&ob<|pt-^L zu6glVC2P5D#Ik473OR_*bi%<~^?FxV!La?Z``eZD)aCLI*>z}HxJGTe5L2_!dy^VT z^mda3WGhrkd0U#q3?NF4O8@>-NbicM$Ms$5wyvDc^mp>oyctqqjy6!xZVd1_XqPkw zETMa{kZj{yrNaY>j&gC|H^9=J8mLWhT3DkpJx7nO3;z%o4d_?|TA+#4EL*A!Xi=2o z_~PQVYmVXSYECF+W>W}+K(Lry@z3f {K?S>TpcCzbUT-4Qgx|b$U8-^6)?AP)xG52`ky^zx!purBMp5{O z=V5zRGQbXzMZMCutmf>+ps-`T9)TQhEECKfMg!o365(WpAF>=ftPTbv$@t5m(Z-&h zFJp!|yxU{&$0C30A940mLNWiz86WUXtwoRaT4n^f`=zD6u|zm4n_epVj)TS`(B#@h z-YcJKVng;V1>vcT?mN^1V;~F%A)?u^3UO+ac0qPhDa )jlZt{bvL;uwgB+e2AZ8#0c)3}(Nh$2 z@TKNK(Hd(wgaWYME_K}w5Q(R>E{R^j)5Xa|4Ej)TH0IEFR>Qng&qfnOcJ!4!&CNk& zlN1ClrNHE_G`osP8uOf5njCGn&hr{;B(gL @ydJb z5xix3vslGB1HR9O42O^A5nF9a*Xr-189eRP3yubtYsiX;;zcdt!S&(E?sg8+;03c) zB*t9Zqw-XkDE)Lce?x#}$r);jVBO~2J+y>6d4G-b|49 GP!1B6UMvq $!f|z zsQLCdAFF0MxC5ljlq;Zo= +AcLZ*}A_fn%V%sUvvNV~m zq{j=D)?^czQ${$^3`mOTUSU a z%d|_}tJ85XPGN0W92W{?fN}x4RZZll;6YhgU_K;m;u4VmzD~)gXakx9DndwALr-y* zyq(xdD5UX>vg MHtLVuh|ow^0(EEm0`4p1 zUbZOVJLz&!!K^+H;!-*)Lljq(&38pXOs1`OYG-Hy%+Z?axh$j_WhUih!JJ$3*jfUK z*2rvSG?xCS6>|92X7QZ^Lta5+sD= v~69S302iCSh2w>-_VH8pjI^p0*^Yk-yFT)AVSV>rZ;_`@3MU zLyo#@8yY$nK%m9x(FQ3fQbyjAl5Ib}(T`=UXszq*{TlJrofwSFEi@7)Eqn|boN5zx zBJSetHrA<;2%|V72 b-0%K zj@O6*<^%WmRBAIcIwpx1+x)B&Zq$9h(I}7(Nn=rcy<(u8 9?su_0v(SJ?ri zLSvwEf+1L+?g*k{mdat3Or3FyY(6?O2fR?w+<|&mvd>eRpeB(gfy7QAouia_`W)^K zq|49nz;7139(aLG(bXF8KSY+7r;!!q^e~F20cltk48Wl`wKZw$EJ0|;cX~ 7_V=^YyTynO3uEW)ss)WEKXF_s# z*R;W2K3|#K$hWW=3`gD*Iu_nIoAOM(-n#8StlH@Hx}8q50isEuCn#3+C3x$a70$y~ z$QgJ$oCzhRGZf1*Xjet}03@8^7|=^=O&pytE6Fxq(ga3|rfZ^Y${e?2$_Ti$7*uY8 z=TLwt0OkU1-^*i^)*S_@ROlhqw5^23Qfu5xLr96v{e5PWCyH3P(pkOU+W;{M+1^Zq zoD-9+dXxLix+KOUyE!eFfEXyT0gPBST(Ni^qcnv(Zm)+pg%U_Y`f4RnFkEk*Ce~>q z=)gX&gqd?)!pXvXNz(vRg>bwu9FpX`hAebI@|!EzGcYn(Q2~}Ma8-NXKh>`29@4<4 zp~ Yh- zBSkZ6K$PyHoS`9^3dhN8TxxD`rGmIHQ_#oB 1`u&&6X!kR)EQoiJc@mKX&UQqZv3zK|(rR1H`r za3)qQ4IZ^*SxzE}G8Ygj(1wo3J}FiktsOvMvNWbc-)n&(j<6!`F%PiX2?QbWK@u{g zKXN2D;1P!vJhK+~$c}U4r?z|)PD5aux?tMY_V>c!{Unrxy}8C};EcwYATlZaYSH50 zf0@_M=biyNb9H}l9k)a*OkfS#Nijt6+d0>TGcgkk+F)^&{OpyIkU2WBI66bCwFZJQ z)&SLj1h+|eZTCh+&$N8Ra0j@lDUdCsnmcxDlIJ}K+mR_4?uO=L)KFn__;wdZnFhfx z 55;920)|u9HT9Uzc4lxe#yLp8!^qb$Tm=UEh|U8I1y3oUnT)3bUo54K8ls<2 z;OUzIhqQYzWwYVGTL#PQGkTcG)7HU%c>@l}CQ%Wf93T?oQ? 3t)AU*fFUl )KeMLN&`c5DLeun=36Ec zk25Qx!s*|Xi4$$QCGWH|uknOJFTbl15Q)s*UK7|~2a?IM&OF#2# A+XZ!BdYtf#nX1=(UEbA=N-+U zK4Ino{^Ra6G8|syL8rQRzi8rh !0QFl^!1@MM9kfBbjsd!$cCmk`3ffv3 z!C+5qHq$TbN+?6SE2EtvGT65CneGGb-Hb%ri^z=kDFR-(K|xpS&4apha~ zqwaFr$L``55=T_VN&-$GcQO?}FFo}kkO8@euDIrOHWqR^>nG&&9M8cWB-7n)nvG_X z?A)5*vkWvRNgwN3h=AhE8@#)xUaq75?%DwZkmOfd_%I2lo$9(o_{Lb~^*eBzIq3rc zKO}~o5U)6&Ms*uy2}0?7hK?QtTCSng-pg(Mb#FO<2W0rLG^X9(wC$Uk!Az|ud48WD zRm%~HY2!2@I4;AvKF~HNIyDz6>Lx#Ei^bZu9kE%gurqdTx=O9KCCEN7zN|Bgu6;wm z^t)}>nYo7#?{povC^9Es{PJC*`3Fc}`TUw}d858Z$d(P%CDV(tC>;C5`|lq@+)t_a zoSXg>4Z%0xXjIUkWEHSO-xx0A<(7XyeOzc5{AwQiWg%wsGr&&%gMpu%2c#*`8#HYA zCUpOgKPrn~p|k%{#1AeCC@OEE$tR =&d<&R4=g!U z64x&c?kL6N$T$o~FmS2YH6%7Z!e>GrUyiZJlcuJ@QxRGAvCxQuVjqa^ZA0pLufN3z zW9n?a!STVJM3wRoU_dRnt8V#@=-(P3qq{Rlgc0mHA#Hn`S%PJ@#dg$G)R5@e?m4q| z20X_xerVM5^^^oQUK;7CNCJzxMVX9x9Q zNA)aCzNjkV8Y!=WMUKm$*+|zA0?=31h@NDg{ j{(+`Im0PICO8cU2j8hXVxXLw; zd6V-yf61?MW*U}T>2Jzj6aT0^fEL!Hx-S`HVnFf;mC5o^myaeA8}}*i-VV3u8)xN* zhPOfAzC~ZkY}AE$B(m5yp)f6PFv;l$tu)<^&coa>ux;16TW+K6GW_|#u6id zSx5{JmhH!?=cc@OaIb{W%?oQSIr6)b*PiV7r{}U~tLL4x&`#F}2Q}!%YN%#SHbtxK zT%2NB7J(%ri&7+oonuf#4zG1^6-r&jf7b=0Yyz?~wMDFyhh|epw*`*0`zVo!I@$C) zzCtcmNF>gSj+fQ)NSz}kuV}yC%1Td4poTQo9#gb2ue!ZGro1W_c0@t6*ORBWRkFfL z|4~g4#x@|MyV@@`wuhnBsg~%r8r2r>j3i #xcob^-_LnO(iNf>`C{KT)+8NuGnG}%fYMipcg)1%!+r0tAhs&O$@`nM=9La z2IAkLfJ5+QhB5Rhz<9Cd|KsoNZ6)8+hm8GF?p0bpMeZ{roeQvEyQz^%qOp)Higg1J z%ByVKx tbh_dFmeJK`YO nTYtqYkSw#`;+Q@U+of0X<(`Trp*OZH8Bljd>L{nCb&s+!@=%GJ zqK0qd(TZx<@32f3qb ;>QXn}%+Ar3%6x*=pupnUH7zrbNGl zBx^FT))p(b>N}&9*Oqap*?3sdO}J(E1}d9=Em=dS2#EnRYPsU^H*p4oPXBVOd(_%l zF0nugfTneY(%^W_Ny_}@;&mmr`hWY)6L_^6se)b bLrlnk`j59KVBz=nocQeg2 z-))~W9)NcA7Co%(9%AK-w|tT|3>ZqH)&n}483i2F#sYq3HG75Tc0+mPHyrfIQ6Z!h z*vo<`K=OA!BN-K70!+RKnDzL#`u{Q}P3}L)+a43p=?c(T3bKGmvl|I?S8P6zPnQMK z VVvag zBop!xNKugFt!v5{(`+OxUk+5^V?o$Nn?ns7yOC}N+wX1%dx{Ixm<)Ro&4cC@b5D$R z19?>NWOdqWbEk#M+tsCFjW(lJ%46sB{-{}nu@gf!GP!awpa6IP$A!n1p&ax8e~{eU zCX}b^r(IFR#cd(I+h{)`L*Tb zE25hoZ5<|0EC)@=RW_xWDwEUsR!lKkE9!Xel}ImFP$f?F#z@+ZA}kfJS5|4BR4`U_ zo$3}s!7H@IyV;EnvVaBSwDb4gh<$4xk&WM{QF{+8Y)&la$Z~l6A~wn5RtIMJj>j6& z4Qgi43&ngmLDXERO|&Mq%di|;V4lX3Rl+%5 Er+9_DHchzjPISrzj5o7=dD{)s>5xZYXek@3+9yClAezB%Jvwbq}~e)ZGq zOM$ixE?)1PJaG4xfsFmqo;n8F{DQa6K4kV>or9i};`dT$GLr(x-;O(qstRQHB%cH5 z6;&tZR6FS; cO(A=SpFN95Dtj+`T38z|99Pv;UtUKTL!UB+EK$NNRe&C+~iA0`6mj zY@a{|Z;txj?u);|{;EVggBP=GhP3lrtuK~{P_DtvKiQeX$E) Zlked{eB8fB0RX$WGC;B%N=b+@tg#vDDpuAIZa3m&v{M~A#~OL_PHJSS#6!J zovcp2Uij4H(L}sy8j(cV%B1QgRHw|oP9Uv%*DsgSo2az5*5PhP?nAW&7fvZ(D5wqe z0SnL<(8HQTQX)=DN{c)zigdK}i+lTGoFbA)qo}&(-!V0Npc1AMM-{ea-lq}GfM4RQ zq$Q$pw9(pl07V)>J264o5`1qEKJM}Fm;x=aW7*k>-L9;@?lupY@gbAH*y&sH5Kt#q zbmHm_@UKLQ%%nw)W_6OQc=sPZBRF*6l}5IX(#BR*Z)wEDuH*_Td`nU>)U{yXyU zmMHq5#s>*rWvk;>xagyexnynL?iBJG845^?dax>rIKI=2wKH-5E$CKCBBf=(dnJLl zo6Zw2NT9F$F2~(9O`1=3!k|_@_%cqPyr2KU?o`_1{q3tCkjx$9xe|qa_K~&kZ%gBG zi!!_aC$#-4f?MU~#h>qP2VdXLuMPg{0T2H0uk~+tf GQHXeTF7Vo;29wTm%iMW<0LY4WKk5O}~bH0e4k)Y#!FuBjNsUT8OljWt)J zqm!t)_mOQ%;9yq~r3;KUG}E0Pl4e1tqaKr4jmRR^!+_I*M3N$;xpuYQx#x#AZQ3^U z *8>Lk_>snd>9?v#nr=U~omzXnbd)S#7X%mhV^ zEy~PFG!as){s*fg8Z4=Pi-VmZbJ5#VjTi9SY;Of7+oKi+m7 Wks{2vIR_{GBk<9)q{Q$qDLDjp|pN>bDY#2dAU-r;j9|oC`~bGqG6eaO$p8n zXI1rKArv;JMS706T5IcErn;i=G-meHhSrj^npiTf-WXJG5kOx!kMYyQ2roPgFLHpm zBnblNJbXV*m-3P8)m55}q9>E?NVZd@ }~Z}IB&EMmRHp+)==Ibj>`2mO34vR!3nZ@ z-4i`Q