diff --git a/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestForAPIFragment.kt b/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestForAPIFragment.kt
index 748a74ba2e2526c8dac164ee15ce902c5c929618..5c20d3a4671bf218c084817bb904ab240d9b13b1 100644
--- a/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestForAPIFragment.kt
+++ b/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestForAPIFragment.kt
@@ -30,6 +30,7 @@ import com.google.zxing.BarcodeFormat
 import com.google.zxing.integration.android.IntentIntegrator
 import com.google.zxing.integration.android.IntentResult
 import com.google.zxing.qrcode.QRCodeWriter
+import de.rki.coronawarnapp.CoronaWarnApplication
 import de.rki.coronawarnapp.R
 import de.rki.coronawarnapp.databinding.FragmentTestForAPIBinding
 import de.rki.coronawarnapp.exception.ExceptionCategory
@@ -53,6 +54,7 @@ import de.rki.coronawarnapp.ui.viewmodel.TracingViewModel
 import de.rki.coronawarnapp.util.KeyFileHelper
 import kotlinx.android.synthetic.deviceForTesters.fragment_test_for_a_p_i.*
 import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.async
 import kotlinx.coroutines.launch
 import kotlinx.coroutines.withContext
 import org.joda.time.DateTime
@@ -246,6 +248,51 @@ class TestForAPIFragment : Fragment(), InternalExposureNotificationPermissionHel
                 showToast(TimeVariables.getActiveTracingDaysInRetentionPeriod().toString())
             }
         }
+
+        binding.testLogfileToggle.isChecked = CoronaWarnApplication.fileLogger?.isLogging ?: false
+        binding.testLogfileToggle.setOnClickListener { buttonView ->
+            CoronaWarnApplication.fileLogger?.let {
+                if (binding.testLogfileToggle.isChecked) {
+                    it.start()
+                } else {
+                    it.stop()
+                }
+            }
+        }
+
+        binding.testLogfileShare.setOnClickListener {
+            CoronaWarnApplication.fileLogger?.let {
+                lifecycleScope.launch {
+                    val targetPath = withContext(Dispatchers.IO) {
+                        async {
+                            if (!it.logFile.exists()) return@async null
+
+                            val externalPath = File(
+                                requireContext().getExternalFilesDir(null),
+                                "LogFile-${System.currentTimeMillis()}.log"
+                            )
+
+                            it.logFile.copyTo(externalPath)
+
+                            return@async externalPath
+                        }
+                    }.await()
+                    if (targetPath != null) {
+                        Toast.makeText(
+                            requireActivity(),
+                            "Logfile copied to $targetPath",
+                            Toast.LENGTH_SHORT
+                        ).show()
+                    } else {
+                        Toast.makeText(
+                            requireActivity(),
+                            "No log file available",
+                            Toast.LENGTH_SHORT
+                        ).show()
+                    }
+                }
+            }
+        }
     }
 
     override fun onResume() {
diff --git a/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestRiskLevelCalculationFragment.kt b/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestRiskLevelCalculationFragment.kt
index d5de4bcac8c8d9235e7c7d46b3d2dc7404aba6fb..6172b4f2fbfbe2571a64909528b7fd75e7c91064 100644
--- a/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestRiskLevelCalculationFragment.kt
+++ b/Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/TestRiskLevelCalculationFragment.kt
@@ -155,7 +155,7 @@ class TestRiskLevelCalculationFragment : Fragment() {
         try {
             RetrieveDiagnosisKeysTransaction.start()
             calculateRiskLevel()
-        } catch (e: TransactionException) {
+        } catch (e: Exception) {
             e.report(ExceptionCategory.INTERNAL)
         }
     }
diff --git a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml
index a90a271a9127bf29b0fffd2ed1ddf66677aa90a5..f8b9d4a5dfa12a8090744d093d356ec1b4605c59 100644
--- a/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml
+++ b/Corona-Warn-App/src/deviceForTesters/res/layout/fragment_test_for_a_p_i.xml
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
-<layout xmlns:android="http://schemas.android.com/apk/res/android">
+<layout xmlns:tools="http://schemas.android.com/tools"
+    tools:ignore="HardcodedText"
+    xmlns:android="http://schemas.android.com/apk/res/android">
 
     <data>
 
@@ -30,6 +32,7 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content" />
 
+
             <Switch
                 android:id="@+id/test_api_switch_last_three_hours_from_server"
                 style="@style/body1"
@@ -46,6 +49,27 @@
                 android:text="@string/test_api_switch_background_notifications"
                 android:theme="@style/switchBase" />
 
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:orientation="horizontal"
+                android:layout_height="wrap_content">
+
+                <Switch
+                    android:id="@+id/test_logfile_toggle"
+                    style="@style/body1"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="Logfile enabled"
+                    android:theme="@style/switchBase" />
+
+                <Button
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:id="@+id/test_logfile_share"
+                    android:text="Share log" />
+
+            </LinearLayout>
+
             <TextView
                 android:id="@+id/label_exposure_summary"
                 style="@style/headline6"
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/CoronaWarnApplication.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/CoronaWarnApplication.kt
index 9369e2914894cdf8b15bc3ac7f84691c90165bbe..7e3f60900750e5188b2ca9ba11499cf908b68242 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/CoronaWarnApplication.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/CoronaWarnApplication.kt
@@ -27,6 +27,7 @@ import de.rki.coronawarnapp.storage.LocalData
 import de.rki.coronawarnapp.transaction.RetrieveDiagnosisKeysTransaction
 import de.rki.coronawarnapp.util.CWADebug
 import de.rki.coronawarnapp.util.ConnectivityHelper
+import de.rki.coronawarnapp.util.debug.FileLogger
 import de.rki.coronawarnapp.util.di.AppInjector
 import de.rki.coronawarnapp.util.di.ApplicationComponent
 import de.rki.coronawarnapp.worker.BackgroundWorkHelper
@@ -56,6 +57,7 @@ class CoronaWarnApplication : Application(), LifecycleObserver,
             instance.applicationContext
 
         const val TEN_MINUTE_TIMEOUT_IN_MS = 10 * 60 * 1000L
+        var fileLogger: FileLogger? = null
     }
 
     private lateinit var errorReceiver: ErrorReportReceiver
@@ -88,6 +90,9 @@ class CoronaWarnApplication : Application(), LifecycleObserver,
         if (BuildConfig.DEBUG) {
             Timber.plant(Timber.DebugTree())
         }
+        if ((BuildConfig.FLAVOR == "deviceForTesters" || BuildConfig.DEBUG)) {
+            fileLogger = FileLogger(this)
+        }
 
         // notification to test the WakeUpService from Google when the app
         // was force stopped
@@ -99,27 +104,9 @@ class CoronaWarnApplication : Application(), LifecycleObserver,
             ProcessLifecycleOwner.get().lifecycleScope.launch {
                 // we want a wakelock as the OS does not handle this for us like in the background
                 // job execution
-                val wakeLock: PowerManager.WakeLock =
-                    (getSystemService(Context.POWER_SERVICE) as PowerManager).run {
-                        newWakeLock(
-                            PowerManager.PARTIAL_WAKE_LOCK,
-                            TAG + "-WAKE-" + UUID.randomUUID().toString()
-                        ).apply {
-                            acquire(TEN_MINUTE_TIMEOUT_IN_MS)
-                        }
-                    }
-
+                val wakeLock = createWakeLock()
                 // we keep a wifi lock to wake up the wifi connection in case the device is dozing
-                val wifiLock: WifiManager.WifiLock =
-                    (getSystemService(Context.WIFI_SERVICE) as WifiManager).run {
-                        createWifiLock(
-                            WifiManager.WIFI_MODE_FULL_HIGH_PERF,
-                            TAG + "-WIFI-" + UUID.randomUUID().toString()
-                        ).apply {
-                            acquire()
-                        }
-                    }
-
+                val wifiLock = createWifiLock()
                 try {
                     BackgroundWorkHelper.sendDebugNotification(
                         "Automatic mode is on", "Check if we have downloaded keys already today"
@@ -146,6 +133,28 @@ class CoronaWarnApplication : Application(), LifecycleObserver,
         }
     }
 
+    private fun createWakeLock(): PowerManager.WakeLock =
+        (getSystemService(Context.POWER_SERVICE) as PowerManager)
+            .run {
+                newWakeLock(
+                    PowerManager.PARTIAL_WAKE_LOCK,
+                    TAG + "-WAKE-" + UUID.randomUUID().toString()
+                ).apply {
+                    acquire(TEN_MINUTE_TIMEOUT_IN_MS)
+                }
+            }
+
+    private fun createWifiLock(): WifiManager.WifiLock =
+        (getSystemService(Context.WIFI_SERVICE) as WifiManager)
+            .run {
+                createWifiLock(
+                    WifiManager.WIFI_MODE_FULL_HIGH_PERF,
+                    TAG + "-WIFI-" + UUID.randomUUID().toString()
+                ).apply {
+                    acquire()
+                }
+            }
+
     /**
      * Callback when the app is open but backgrounded
      */
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/GoogleQuotaCalculator.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/GoogleQuotaCalculator.kt
index e7aace190ed9a6217487d3f76b6356c07c6aa267..e686eec758b341013155ff014eec6f094323b62c 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/GoogleQuotaCalculator.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/GoogleQuotaCalculator.kt
@@ -6,6 +6,7 @@ import org.joda.time.DateTime
 import org.joda.time.DateTimeZone
 import org.joda.time.Duration
 import org.joda.time.Instant
+import timber.log.Timber
 
 /**
  * This Calculator class takes multiple parameters to check if the Google API
@@ -28,34 +29,58 @@ class GoogleQuotaCalculator(
     override var hasExceededQuota: Boolean = false
 
     override fun calculateQuota(): Boolean {
-        if (Instant.now().isAfter(LocalData.nextTimeRateLimitingUnlocks)) {
+        val oldQuota = LocalData.googleAPIProvideDiagnosisKeysCallCount
+        var currentQuota = oldQuota
+
+        val now = Instant.now()
+        val nextUnlock = LocalData.nextTimeRateLimitingUnlocks
+
+        Timber.v(
+            "calculateQuota() start! (currentQuota=%s, timeNow=%s, timeReset=%s)",
+            oldQuota, now, nextUnlock
+        )
+        if (now.isAfter(nextUnlock)) {
             LocalData.nextTimeRateLimitingUnlocks = DateTime
                 .now(quotaTimeZone)
                 .withChronology(quotaChronology)
                 .plus(quotaResetPeriod)
                 .withTimeAtStartOfDay()
                 .toInstant()
-            LocalData.googleAPIProvideDiagnosisKeysCallCount = 0
+            Timber.d("calculateQuota() quota reset to 0.")
+            currentQuota = 0
+        } else {
+            Timber.v("calculateQuota() can't be reset yet.")
         }
 
-        if (LocalData.googleAPIProvideDiagnosisKeysCallCount <= quotaLimit) {
-            LocalData.googleAPIProvideDiagnosisKeysCallCount += incrementByAmount
+        if (currentQuota <= quotaLimit) {
+            currentQuota += incrementByAmount
         }
 
-        hasExceededQuota = LocalData.googleAPIProvideDiagnosisKeysCallCount > quotaLimit
+        if (currentQuota != oldQuota) {
+            LocalData.googleAPIProvideDiagnosisKeysCallCount = currentQuota
+        }
 
-        return hasExceededQuota
+        return (currentQuota > quotaLimit).also {
+            hasExceededQuota = it
+            Timber.v(
+                "calculateQuota() done! -> oldQuota=%d, currentQuotaHm=%d, quotaLimit=%d, EXCEEDED=%b",
+                oldQuota, currentQuota, quotaLimit, it
+            )
+        }
     }
 
     override fun resetProgressTowardsQuota(newProgress: Int) {
         if (newProgress > quotaLimit) {
-            throw IllegalArgumentException("cannot reset progress to a value higher than the quota limit")
+            Timber.w("cannot reset progress to a value higher than the quota limit")
+            return
         }
         if (newProgress % incrementByAmount != 0) {
-            throw IllegalArgumentException("supplied progress is no multiple of $incrementByAmount")
+            Timber.e("supplied progress is no multiple of $incrementByAmount")
+            return
         }
         LocalData.googleAPIProvideDiagnosisKeysCallCount = newProgress
         hasExceededQuota = false
+        Timber.d("resetProgressTowardsQuota(newProgress=%d) done", newProgress)
     }
 
     override fun getProgressTowardsQuota(): Int = LocalData.googleAPIProvideDiagnosisKeysCallCount
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/debug/FileLogger.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/debug/FileLogger.kt
new file mode 100644
index 0000000000000000000000000000000000000000..eb3b29093e4a6c772d65dd7167ecbeda941588e0
--- /dev/null
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/debug/FileLogger.kt
@@ -0,0 +1,40 @@
+package de.rki.coronawarnapp.util.debug
+
+import android.content.Context
+import timber.log.Timber
+import java.io.File
+
+class FileLogger constructor(private val context: Context) {
+
+    val logFile = File(context.cacheDir, "FileLoggerTree.log")
+    val triggerFile = File(context.filesDir, "FileLoggerTree.trigger")
+    private var loggerTree: FileLoggerTree? = null
+
+    val isLogging: Boolean
+        get() = loggerTree != null
+
+    init {
+        if (triggerFile.exists()) {
+            start()
+        }
+    }
+
+    fun start() {
+        if (loggerTree != null) return
+
+        loggerTree = FileLoggerTree(logFile).also {
+            Timber.plant(it)
+            it.start()
+            triggerFile.createNewFile()
+        }
+    }
+
+    fun stop() {
+        loggerTree?.let {
+            it.stop()
+            logFile.delete()
+            triggerFile.delete()
+            loggerTree = null
+        }
+    }
+}
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/debug/FileLoggerTree.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/debug/FileLoggerTree.kt
new file mode 100644
index 0000000000000000000000000000000000000000..84bd21ad68562197d35c5e136283ccd22ef73f7f
--- /dev/null
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/debug/FileLoggerTree.kt
@@ -0,0 +1,86 @@
+package de.rki.coronawarnapp.util.debug
+
+import android.annotation.SuppressLint
+import android.util.Log
+import timber.log.Timber
+import java.io.File
+import java.io.FileOutputStream
+import java.io.IOException
+import java.io.OutputStreamWriter
+
+@SuppressLint("LogNotTimber")
+class FileLoggerTree(private val logFile: File) : Timber.DebugTree() {
+    private var logWriter: OutputStreamWriter? = null
+
+    @SuppressLint("SetWorldReadable")
+    @Synchronized
+    fun start() {
+        if (logWriter != null) return
+
+        logFile.parentFile.mkdirs()
+        if (logFile.createNewFile()) {
+            Log.i(TAG, "File logger writing to " + logFile.path)
+        }
+        if (logFile.setReadable(true, false)) {
+            Log.i(TAG, "Debug run log read permission set")
+        }
+
+        try {
+            logWriter = OutputStreamWriter(FileOutputStream(logFile, true))
+            logWriter!!.write("=== BEGIN ===\n")
+            logWriter!!.write("Logfile: $logFile\n")
+            logWriter!!.flush()
+            Log.i(TAG, "File logger started.")
+        } catch (e: IOException) {
+            e.printStackTrace()
+
+            logFile.delete()
+            if (logWriter != null) logWriter!!.close()
+        }
+    }
+
+    @Synchronized
+    fun stop() {
+        logWriter?.let {
+            logWriter = null
+            try {
+                it.write("=== END ===\n")
+                it.close()
+            } catch (ignore: IOException) {
+            }
+            Log.i(TAG, "File logger stopped.")
+        }
+    }
+
+    override fun log(priority: Int, tag: String?, message: String, t: Throwable?) {
+        logWriter?.let {
+            try {
+                it.write("${System.currentTimeMillis()}  ${priorityToString(priority)}/$tag: $message\n")
+                it.flush()
+            } catch (e: IOException) {
+                Timber.tag(TAG).e(e)
+                try {
+                    it.close()
+                } catch (ignore: Exception) {
+                }
+                logWriter = null
+            }
+        }
+    }
+
+    override fun toString(): String {
+        return "FileLoggerTree(file=$logFile)"
+    }
+
+    companion object {
+        private const val TAG = "FileLoggerTree"
+        private fun priorityToString(priority: Int): String = when (priority) {
+            Log.ERROR -> "E"
+            Log.WARN -> "W"
+            Log.INFO -> "I"
+            Log.DEBUG -> "D"
+            Log.VERBOSE -> "V"
+            else -> priority.toString()
+        }
+    }
+}
diff --git a/Corona-Warn-App/src/main/res/navigation/nav_graph.xml b/Corona-Warn-App/src/main/res/navigation/nav_graph.xml
index 3b45032bbf05060f911a72a8e04f8293928a6f6d..a79c1468ea8408fb94e8ade6046afebceba1c4f6 100644
--- a/Corona-Warn-App/src/main/res/navigation/nav_graph.xml
+++ b/Corona-Warn-App/src/main/res/navigation/nav_graph.xml
@@ -236,6 +236,11 @@
         android:name="de.rki.coronawarnapp.ui.submission.SubmissionTanFragment"
         android:label="fragment_submission_tan"
         tools:layout="@layout/fragment_submission_tan">
+        <action
+            android:id="@+id/action_submissionTanFragment_to_submissionDispatcherFragment"
+            app:destination="@id/submissionDispatcherFragment"
+            app:popUpTo="@id/submissionDispatcherFragment"
+            app:popUpToInclusive="true" />
         <action
             android:id="@+id/action_submissionTanFragment_to_submissionResultFragment"
             app:destination="@id/submissionResultFragment"
diff --git a/Corona-Warn-App/src/main/res/values-en/strings.xml b/Corona-Warn-App/src/main/res/values-en/strings.xml
index 1cea318c8050ccf66aef881f190c159ee1ba8cca..7b72be394abafefafa075c96922714666b6d64bc 100644
--- a/Corona-Warn-App/src/main/res/values-en/strings.xml
+++ b/Corona-Warn-App/src/main/res/values-en/strings.xml
@@ -276,7 +276,7 @@
     <!-- XHED: App overview subtitle for glossary contact  -->
     <string name="main_overview_subtitle_glossary_contact">"Exposures"</string>
     <!-- YTXT: App overview body for glossary contact -->
-    <string name="main_overview_body_glossary_contact">"Encounters over an extended period and in close proximity to a person diagnosed with COVID-19."</string>
+    <string name="main_overview_body_glossary_contact">"Encounters over a longer duration and close proximity to people diagnosed with COVID-19."</string>
     <!-- XHED: App overview subtitle for glossary notifications -->
     <string name="main_overview_subtitle_glossary_notification">"Exposure Notification"</string>
     <!-- YTXT: App overview body for glossary notifications -->
diff --git a/Corona-Warn-App/src/main/res/values-ro/strings.xml b/Corona-Warn-App/src/main/res/values-ro/strings.xml
index a38d1fc6e6e39a509c0ffce0a13855905460cd66..e3608014234833462fc5e739bbf57decc10ed196 100644
--- a/Corona-Warn-App/src/main/res/values-ro/strings.xml
+++ b/Corona-Warn-App/src/main/res/values-ro/strings.xml
@@ -276,7 +276,7 @@
     <!-- XHED: App overview subtitle for glossary contact  -->
     <string name="main_overview_subtitle_glossary_contact">"Expuneri"</string>
     <!-- YTXT: App overview body for glossary contact -->
-    <string name="main_overview_body_glossary_contact">"Întâlniri de o durată lungă și în strânsă proximitate cu o persoană diagnosticată cu COVID-19."</string>
+    <string name="main_overview_body_glossary_contact">"Întâlniri de o durată mai lungă și în strânsă proximitate cu persoane diagnosticate cu COVID-19."</string>
     <!-- XHED: App overview subtitle for glossary notifications -->
     <string name="main_overview_subtitle_glossary_notification">"Notificarea de expunere"</string>
     <!-- YTXT: App overview body for glossary notifications -->
@@ -441,7 +441,7 @@
     <!-- YMSI: onboarding(tracing) - dialog about background jobs -->
     <string name="onboarding_background_fetch_dialog_body">"Ați dezactivat actualizările în fundal pentru aplicația Corona-Warn. Activați actualizările în fundal pentru a utiliza înregistrarea automată în jurnal a expunerilor. Dacă nu activați actualizările în fundal, puteți porni doar manual din aplicație înregistrarea în jurnal a expunerilor. Puteți activa actualizările în fundal pentru aplicație din setările dispozitivului dvs."</string>
     <!-- XBUT: onboarding(tracing) - dialog about background jobs, open device settings -->
-    <string name="onboarding_background_fetch_dialog_button_positive">"Deschideți setările dispozitivului"</string>
+    <string name="onboarding_background_fetch_dialog_button_positive">"Deschideți Setările dispozitivului"</string>
     <!-- XBUT: onboarding(tracing) - dialog about background jobs, continue in app -->
     <string name="onboarding_background_fetch_dialog_button_negative">"Porniți manual înregistrarea în jurnal a expunerilor"</string>
     <!-- XACT: onboarding(tracing) - dialog about energy optimized header text -->
@@ -465,7 +465,7 @@
     <!-- XTXT: onboarding(tracing) - location explanation for bluetooth body text -->
     <string name="onboarding_tracing_location_body">"Locația dvs. nu poate fi accesată. Google și/sau Android necesită acces la locația dispozitivului dvs. pentru a utiliza Bluetooth-ul."</string>
     <!-- XBUT: onboarding(tracing) - button enable tracing -->
-    <string name="onboarding_tracing_location_button">"Deschideți setările dispozitivului"</string>
+    <string name="onboarding_tracing_location_button">"Deschideți Setările dispozitivului"</string>
     <!-- XACT: Onboarding (test) page title -->
     <string name="onboarding_test_accessibility_title">"Pagina de înregistrare 4 din 5: Dacă sunteți diagnosticat cu COVID-19…"</string>
     <!-- XHED: onboarding(test) - about positive tests -->
@@ -535,21 +535,21 @@
     <!--XHED : settings(tracing) - headline on card about the current status and what to do -->
     <string name="settings_tracing_status_bluetooth_headline">"Activați Bluetooth-ul"</string>
     <!-- XTXT: settings(tracing) - explains user what to do on card if bluetooth is disabled -->
-    <string name="settings_tracing_status_bluetooth_body">"Bluetooth-ul trebuie să fie activat pentru ca înregistrarea în jurnal a expunerilor să funcționeze. Activați Bluetooth-ul în setările dispozitivului."</string>
+    <string name="settings_tracing_status_bluetooth_body">"Bluetooth-ul trebuie să fie pornit pentru ca înregistrarea în jurnal a expunerilor să funcționeze. Porniți Bluetooth-ul în setările dispozitivului."</string>
     <!-- XBUT: settings(tracing) - go to operating system settings button on card -->
-    <string name="settings_tracing_status_bluetooth_button">"Deschideți setările dispozitivului"</string>
+    <string name="settings_tracing_status_bluetooth_button">"Deschideți Setările dispozitivului"</string>
     <!--XHED : settings(tracing) - headline on card about the current status and what to do -->
     <string name="settings_tracing_status_location_headline">"Permiteți accesul la locație"</string>
     <!-- XTXT: settings(tracing) - explains user what to do on card if location is disabled -->
     <string name="settings_tracing_status_location_body">"Locația dvs. nu poate fi accesată. Google și/sau Android necesită acces la locația dispozitivului dvs. pentru a utiliza Bluetooth-ul."</string>
     <!-- XBUT: settings(tracing) - go to operating system settings button on card - location -->
-    <string name="settings_tracing_status_location_button">"Deschideți setările dispozitivului"</string>
+    <string name="settings_tracing_status_location_button">"Deschideți Setările dispozitivului"</string>
     <!--XHED : settings(tracing) - headline on card about the current status and what to do -->
     <string name="settings_tracing_status_connection_headline">"Deschideți conexiunea la internet"</string>
     <!-- XTXT: settings(tracing) - explains user what to do on card if connection is disabled -->
     <string name="settings_tracing_status_connection_body">"Înregistrarea în jurnal a expunerilor necesită conexiunea la internet pentru a calcula expunerile. Porniți rețeaua Wi-Fi sau datele mobile din setările dispozitivului dvs."</string>
     <!-- XBUT: settings(tracing) - go to operating system settings button on card -->
-    <string name="settings_tracing_status_connection_button">"Deschideți setările dispozitivului"</string>
+    <string name="settings_tracing_status_connection_button">"Deschideți Setările dispozitivului"</string>
     <!-- XTXT: settings(tracing) - explains the circle progress indicator to the right with the current value -->
     <plurals name="settings_tracing_status_body_active">
         <item quantity="one">"Înregistrarea în jurnal a expunerilor a fost activă o zi.\nO verificare a expunerii poate fi de încredere doar dacă înregistrarea în jurnal a expunerilor este activată permanent."</item>
@@ -591,7 +591,7 @@
     <!-- XTXT: settings(notification) - next to a switch -->
     <string name="settings_notifications_subtitle_update_test">"Starea testului COVID-19"</string>
     <!-- XBUT: settings(notification) - go to operating settings -->
-    <string name="settings_notifications_button_open_settings">"Deschideți setările dispozitivului"</string>
+    <string name="settings_notifications_button_open_settings">"Deschideți Setările dispozitivului"</string>
     <!-- XACT: main (overview) - illustraction description, explanation image, displays notificatin status, active -->
     <string name="settings_notifications_illustration_description_active">"O femeie primește o notificare de la Corona-Warn-App."</string>
     <!-- XACT: main (overview) - illustraction description, explanation image, displays notificatin status, inactive -->
@@ -635,7 +635,7 @@
     <!-- XTXT: settings(background priority) - explains user what to do on card if background priority is enabled -->
     <string name="settings_background_priority_card_body">"Dacă doriți să dezactivați activitatea în fundal cu prioritate, vă rugăm să faceți acest lucru din setările dispozitivului."</string>
     <!-- XBUT: settings(background priority) - go to operating system settings button on card -->
-    <string name="settings_background_priority_card_button">"Deschideți setările dispozitivului"</string>
+    <string name="settings_background_priority_card_button">"Deschideți Setările dispozitivului"</string>
     <!-- XHED : settings(background priority) - headline on card about the current status and what to do -->
     <string name="settings_background_priority_card_headline">"Dezactivați activitatea în fundal cu prioritate"</string>
 
diff --git a/Corona-Warn-App/src/main/res/values/strings.xml b/Corona-Warn-App/src/main/res/values/strings.xml
index b168dfbe7b2f4e09f4c4a125a840057e2b981e37..cbbf2355601dd9a69b9381672f3953fd5a05e618 100644
--- a/Corona-Warn-App/src/main/res/values/strings.xml
+++ b/Corona-Warn-App/src/main/res/values/strings.xml
@@ -278,7 +278,7 @@
     <!-- XHED: App overview subtitle for glossary contact  -->
     <string name="main_overview_subtitle_glossary_contact">"Exposures"</string>
     <!-- YTXT: App overview body for glossary contact -->
-    <string name="main_overview_body_glossary_contact">"Encounters over an extended period and in close proximity to a person diagnosed with COVID-19."</string>
+    <string name="main_overview_body_glossary_contact">"Encounters over a longer duration and close proximity to people diagnosed with COVID-19."</string>
     <!-- XHED: App overview subtitle for glossary notifications -->
     <string name="main_overview_subtitle_glossary_notification">"Exposure Notification"</string>
     <!-- YTXT: App overview body for glossary notifications -->
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/GoogleQuotaCalculatorTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/GoogleQuotaCalculatorTest.kt
index 995ed675179badf7985d26df0104a4593f192d00..693e3187134d8ab3cf386ff3db761d9ff57da2b9 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/GoogleQuotaCalculatorTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/util/GoogleQuotaCalculatorTest.kt
@@ -148,9 +148,7 @@ internal class GoogleQuotaCalculatorTest : BaseTest() {
             }
         }
 
-        assertThrows<IllegalArgumentException> {
-            classUnderTest.resetProgressTowardsQuota(defaultIncrementByAmountInTest + 1)
-        }
+        classUnderTest.resetProgressTowardsQuota(defaultIncrementByAmountInTest + 1)
     }
 
     @Test
@@ -207,9 +205,7 @@ internal class GoogleQuotaCalculatorTest : BaseTest() {
         }
 
         val newProgressAfterReset = defaultQuotaLimitInTest + 1
-        assertThrows<IllegalArgumentException> {
-            classUnderTest.resetProgressTowardsQuota(newProgressAfterReset)
-        }
+        classUnderTest.resetProgressTowardsQuota(newProgressAfterReset)
         assertEquals(true, classUnderTest.hasExceededQuota)
         assertEquals(
             (progressBeforeReset