diff --git a/Android.mk b/Android.mk
index a03d671..c42434f 100644
--- a/Android.mk
+++ b/Android.mk
@@ -12,7 +12,7 @@
 endif
 
 src_dirs := src src-bind $(phone_common_dir)/src
-res_dirs := res res-aosp res-icons $(phone_common_dir)/res
+res_dirs := res res-aosp res-bind res-icons $(phone_common_dir)/res
 asset_dirs := assets
 
 LOCAL_SRC_FILES := $(call all-java-files-under, $(src_dirs))
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 84aadf7..6c97227 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -16,8 +16,8 @@
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.android.contacts"
-    android:versionCode="10611"
-    android:versionName="1.6.11">
+    android:versionCode="10605"
+    android:versionName="1.6.5">
 
     <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="25" />
 
diff --git a/res-bind/layout/navigation_view.xml b/res-bind/layout/navigation_view.xml
new file mode 100644
index 0000000..d553768
--- /dev/null
+++ b/res-bind/layout/navigation_view.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<android.support.design.widget.NavigationView
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/nav_view"
+    android:theme="@style/NavigationDrawerMenuItemTextAppearance"
+    android:layout_width="wrap_content"
+    android:layout_height="match_parent"
+    android:layout_gravity="start"
+    android:fitsSystemWindows="true"
+    android:background="@android:color/white"
+    app:itemBackground="@drawable/drawer_item_background"
+    app:headerLayout="@layout/nav_header_main"
+    app:menu="@menu/activity_main_drawer"/>
diff --git a/res/layout/contacts_drawer_activity.xml b/res/layout/contacts_drawer_activity.xml
index 0e77058..2135903 100644
--- a/res/layout/contacts_drawer_activity.xml
+++ b/res/layout/contacts_drawer_activity.xml
@@ -17,7 +17,6 @@
 
 <android.support.v4.widget.DrawerLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:id="@+id/drawer_layout"
     android:layout_width="match_parent"
@@ -25,32 +24,7 @@
     android:fitsSystemWindows="true"
     tools:openDrawer="start">
 
-    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-        android:id="@+id/fragment_container"
-        android:orientation="vertical"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent">
+    <include layout="@layout/contacts_main_content"/>
 
-        <include
-            layout="@layout/people_activity_toolbar"
-            android:id="@+id/toolbar_parent" />
-
-        <FrameLayout
-            android:id="@+id/content_frame"
-            android:layout_width="match_parent"
-            android:layout_height="fill_parent"
-            android:background="?android:attr/windowBackground" />
-    </LinearLayout>
-
-    <android.support.design.widget.NavigationView
-        android:id="@+id/nav_view"
-        android:theme="@style/NavigationDrawerMenuItemTextAppearance"
-        android:layout_width="wrap_content"
-        android:layout_height="match_parent"
-        android:layout_gravity="start"
-        android:fitsSystemWindows="true"
-        app:itemBackground="@drawable/drawer_item_background"
-        app:headerLayout="@layout/nav_header_main"
-        app:menu="@menu/activity_main_drawer"/>
-
-</android.support.v4.widget.DrawerLayout>
\ No newline at end of file
+    <include layout="@layout/navigation_view"/>
+</android.support.v4.widget.DrawerLayout>
diff --git a/res/layout/contacts_main_content.xml b/res/layout/contacts_main_content.xml
new file mode 100644
index 0000000..748bdbb
--- /dev/null
+++ b/res/layout/contacts_main_content.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2016 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/fragment_container"
+    android:orientation="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+    <include
+        layout="@layout/people_activity_toolbar"
+        android:id="@+id/toolbar_parent" />
+
+    <FrameLayout
+        android:id="@+id/content_frame"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="?android:attr/windowBackground" />
+</LinearLayout>
\ No newline at end of file
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index eb06e46..0528535 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM-kontak ingevoer</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Kon nie SIM-kontakte invoer nie"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Kon nie aanmeld nie"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Kies kontakte om in te voer"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Kanselleer invoer"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Outo-sinkronisering is af. Tik om aan te skakel."</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 04d752e..3da2d04 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> የሲም እውቂያዎች መጥተዋል</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"የሲም እውቂያዎችን ማምጣት አልተሳካም"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"መግባት አልተሳካም"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"ለማምጣት ዕውቂያዎችን ምረጥ"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"ማምጣት ይቅር"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ራስሰር-አስምር ጠፍቷል። ለማብራት መታ ያድርጉ።"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 552ff62..3f7fba9 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -685,6 +685,7 @@
       <item quantity="one">‏تم استيراد جهة اتصال واحدة من شريحة SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"‏فشل استيراد جهات الاتصال من شريحة SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"أخفق تسجيل الدخول"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"حدد جهات اتصال لاستيرادها"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"إلغاء الاستيراد"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"المزامنة التلقائية متوقفة. انقر للتشغيل."</string>
diff --git a/res/values-az-rAZ/strings.xml b/res/values-az-rAZ/strings.xml
index aa56691..2931c8d 100644
--- a/res/values-az-rAZ/strings.xml
+++ b/res/values-az-rAZ/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM kontakt</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM kontaktları import etmək olmadı"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Hesaba daxil olmaq olmadı"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"İmport üçün kontaktlar seçin"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"İmportu ləğv edin"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Avto-sinxronizasiya deaktivdir. Aktiv etmək üçün toxunun."</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 14ba2ab..94cb638 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 контакт в SIM картата бе импортиран</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Импортирането на контактите в SIM картата не бе успешно"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Влизането в профила не бе възможно"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Избиране на контакти за импортиране"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Анулиране на импортирането"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Автоматичното синхронизиране е изключено. Докоснете, за да включите."</string>
diff --git a/res/values-bn-rBD/strings.xml b/res/values-bn-rBD/strings.xml
index f3d14bb..908991a 100644
--- a/res/values-bn-rBD/strings.xml
+++ b/res/values-bn-rBD/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other">SIM কার্ডে থাকা <xliff:g id="COUNT">%d</xliff:g>টি পরিচিতি আমদানি করা হয়েছে</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM কার্ডে থাকা পরিচিতিগুলি আমদানি করা গেল না"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"সাইন ইন করা গেল না"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"আমদানি করতে পরিচিতিগুলি নির্বাচন করুন"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"আমদানি বাতিল করুন"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"স্বতঃ-সিঙ্ক বন্ধ আছে৷ চালু করতে আলতো চাপ দিন৷"</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index d202306..ba6f4d5 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">S\'ha importat 1 contacte de la SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"No s\'han pogut importar els contactes de la SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"No s\'ha pogut iniciar la sessió"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Selecciona contactes per importar-los"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancel·la la importació"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"La sincronització automàtica està desactivada. Toca per activar-la."</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 3af16f1..caa8bb5 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="one">Byl importován 1 kontakt ze SIM karty</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Kontakty ze SIM karty se nepodařilo importovat"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Přihlášení se nezdařilo"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Vyberte kontakty na import"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Zrušit import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatická synchronizace je vypnutá. Zapnete ji klepnutím."</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 8146d5f..632bfa3 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> kontaktpersoner på SIM-kortet blev importeret</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Kontaktpersonerne på SIM-kortet kan ikke importeres"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Der kan ikke logges ind"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Vælg kontakter, der skal importeres"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Annuller import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatisk synkronisering er slået fra. Tryk for at slå funktionen til."</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index f9bdc99..36a303f 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM-Kontakt importiert</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Fehler beim Importieren von SIM-Kontakten"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Fehler bei der Anmeldung"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Kontakte für Import auswählen"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Import abbrechen"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Die automatische Synchronisierung ist deaktiviert. Zum Aktivieren hier tippen."</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 1cef46e..2ed8bac 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">Έγινε εισαγωγή 1 επαφής από τη SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Απέτυχε η εισαγωγή των επαφών από τη SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Αποτυχία σύνδεσης"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Επιλέξτε επαφές για εισαγωγή"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Ακύρωση εισαγωγής"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Ο αυτόματος συγχρονισμός είναι ανενεργός. Πατήστε για να τον ενεργοποιήσετε."</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 8fb072e..6556e6b 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM contact imported</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Failed to import SIM contacts"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Failed to sign in"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Select contacts to import"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancel import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Auto-sync is off. Tap to turn on."</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 8fb072e..6556e6b 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM contact imported</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Failed to import SIM contacts"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Failed to sign in"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Select contacts to import"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancel import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Auto-sync is off. Tap to turn on."</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 8fb072e..6556e6b 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM contact imported</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Failed to import SIM contacts"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Failed to sign in"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Select contacts to import"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancel import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Auto-sync is off. Tap to turn on."</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index eb7081f..7c16230 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">Se importó 1 contacto de la SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"No se pudieron importar los contactos de la SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"No se pudo acceder"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Seleccionar contactos para importar"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancelar importación"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"La sincronización automática está desactivada. Presiona para activarla."</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 3fccda1..8882a58 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">Se ha importado 1 contacto de la SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"No se han podido importar los contactos de la SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"No se ha podido iniciar sesión"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Seleccionar contactos para importarlos"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancelar importación"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"La sincronización automática está desactivada. Toca para activarla."</string>
diff --git a/res/values-et-rEE/strings.xml b/res/values-et-rEE/strings.xml
index 05004b8..2c71b20 100644
--- a/res/values-et-rEE/strings.xml
+++ b/res/values-et-rEE/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM-kaardi kontakt imporditi</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM-kaardi kontaktide importimine ebaõnnestus"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Sisselogimine ebaõnnestus"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Valige imporditavad kontaktid"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Impordi tühistamine"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automaatne sünkroonimine on välja lülitatud. Puudutage sisselülitamiseks."</string>
diff --git a/res/values-eu-rES/strings.xml b/res/values-eu-rES/strings.xml
index 3df6abd..add8578 100644
--- a/res/values-eu-rES/strings.xml
+++ b/res/values-eu-rES/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">SIM txarteleko 1 kontaktu inportatu da</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Ezin izan dira inportatu SIM txarteleko kontaktuak"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Ezin izan da hasi saioa"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Hautatu inportatu beharreko kontaktuak"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Utzi inportazioa bertan behera"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Desaktibatuta dago sinkronizazio automatikoa. Sakatu aktibatzeko."</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 422b1b0..6309aaa 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> مخاطب سیم کارت وارد شد</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"مخاطبین سیم کارت وارد نشدند"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"وارد سیستم نشدید"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"انتخاب مخاطبین برای وارد کردن"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"لغو وارد کردن"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"همگام‌سازی خودکار غیرفعال است. برای فعال کردن ضربه بزنید."</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index fcb84c7..58fc6d1 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">Yksi SIM-yhteystieto tuotiin.</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM-yhteystietojen tuonti epäonnistui."</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Kirjautuminen epäonnistui"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Valitse tuotavat yhteystiedot"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Peruuta tuonti"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automaattinen synkronointi ei ole käytössä. Ota toiminto käyttöön napauttamalla."</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 16c4217..fe4727d 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> contacts importés de la carte SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Échec de l\'importation des contacts de la carte SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Échec de la connexion"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Sélectionner les contacts à importer"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Annuler l\'importation"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"La synchronisation automatique est désactivée. Touchez ici pour l\'activer."</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index f582f20..da05503 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> contacts importés depuis la carte SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Impossible d\'importer les contacts de la carte SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Connexion impossible"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Sélectionner les contacts à importer"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Annuler l\'importation"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"La synchronisation automatique est désactivée. Appuyez pour l\'activer."</string>
diff --git a/res/values-gl-rES/strings.xml b/res/values-gl-rES/strings.xml
index 375fd99..0e4c69c 100644
--- a/res/values-gl-rES/strings.xml
+++ b/res/values-gl-rES/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">Importouse 1 contacto da SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Produciuse un erro ao importar contactos da SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Produciuse un erro ao iniciar sesión"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Seleccionar contactos para importar"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancelar importación"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"A sincronización automática está desactivada. Toca para activala."</string>
diff --git a/res/values-gu-rIN/strings.xml b/res/values-gu-rIN/strings.xml
index 41856ce..e9261ef 100644
--- a/res/values-gu-rIN/strings.xml
+++ b/res/values-gu-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> SIM સંપર્કો આયાત કર્યાં</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM સંપર્કો આયાત કરવામાં નિષ્ફળ થયાં"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"સાઇન ઇન કરવામાં નિષ્ફળ થયાં"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"આયાત કરવા માટે સંપર્કો પસંદ કરો"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"આયાત કરવાનું રદ કરો"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"સ્વતઃ સમન્વયન બંધ છે. ચાલુ કરવા માટે ટૅપ કરો."</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 847bed4..1375632 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> सिम संपर्क आयात किए गए</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"सिम संपर्कों को आयात करने में विफल रहा"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"प्रवेश करने में विफल रहे"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"आयात करने के लिए संपर्कों को चुनें"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"आयात रद्द करें"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"स्वतः समन्वयन बंद है. चालू करने के लिए टैप करें."</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index d65b7a0..40a379b 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -640,6 +640,7 @@
       <item quantity="other">Uvezeno je <xliff:g id="COUNT">%d</xliff:g> kontakata sa SIM-a</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Uvoz kontakata sa SIM kartice nije uspio"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Prijava nije uspjela"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Odabir kontakata za uvoz"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Otkazivanje uvoza"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatska sinkronizacija je isključena. Dodirnite da biste je uključili."</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 6738752..cb82c1b 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM-névjegy importálva</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Nem sikerült importálni a SIM-névjegyeket."</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Sikertelen bejelentkezés"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Válassza ki az importálni kívánt névjegyeket"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Importálás leállítása"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Az automatikus szinkronizálás ki van kapcsolva. Koppintson a bekapcsolásához."</string>
diff --git a/res/values-hy-rAM/strings.xml b/res/values-hy-rAM/strings.xml
index ce5258c..701c5de 100644
--- a/res/values-hy-rAM/strings.xml
+++ b/res/values-hy-rAM/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> կոնտակտ SIM քարտից ներմուծվեց</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM քարտից չհաջողվեց ներմուծել կոնտակտները"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Չհաջողվեց մուտք գործել"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Ընտրեք կոնտակտներ ներմուծման համար"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Չեղարկել ներմուծումը"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Հպեք՝ հաշվի ինքնահամաժամեցումը միացնելու համար:"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 83eddf0..ded2937 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 kontak SIM yang diimpor</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Gagal mengimpor kontak SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Gagal masuk"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Pilih kontak untuk diimpor"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Batalkan impor"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Sinkronisasi otomatis tidak aktif. Tap untuk mengaktifkan."</string>
diff --git a/res/values-is-rIS/strings.xml b/res/values-is-rIS/strings.xml
index 9fa21fb..1dcb9e8 100644
--- a/res/values-is-rIS/strings.xml
+++ b/res/values-is-rIS/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> SIM-tengiliðir fluttir inn</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Ekki tókst að flytja inn SIM-tengiliðina"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Innskráning tókst ekki"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Veldu tengiliði til að flytja inn"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Hætta við innflutning"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Slökkt er á sjálfvirkri samstillingu. Ýttu til að kveikja á henni."</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 9b19f80..158562c 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 contatto della SIM importato</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Impossibile importare i contatti della SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Impossibile accedere"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Seleziona contatti da importare"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Annulla importazione"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"La sincronizzazione automatica è disattivata. Tocca per attivarla."</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 7b0ae92..d2cce86 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="one">‏איש קשר אחד יובא מכרטיס ה-SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"‏לא ניתן היה לייבא את אנשי הקשר מכרטיס ה-SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"לא ניתן היה להיכנס לחשבון"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"בחר אנשי קשר לייבוא"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"בטל את הייבוא"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"הסינכרון האוטומטי מושבת. הקש כדי להפעיל אותו."</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index c0cfe25..cea13d6 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 件の SIM の連絡先をインポートしました</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM の連絡先をインポートできませんでした"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"ログインできませんでした"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"インポートする連絡先の選択"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"インポートをキャンセル"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"自動同期が OFF になっています。タップすると ON になります。"</string>
diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml
index 3ad1005..48c85c4 100644
--- a/res/values-ka-rGE/strings.xml
+++ b/res/values-ka-rGE/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">იმპორტირებულია 1 SIM კონტაქტი</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM კონტაქტების იმპორტირება ვერ მოხერხდა"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"შესვლა ვერ მოხერხდა"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"აირჩიეთ კონტაქტი იმპორტისათვის"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"იმპორტის გაუქმება"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ავტო-სინქ. გამორთულია. შეეხეთ ჩასართავად."</string>
diff --git a/res/values-kk-rKZ/strings.xml b/res/values-kk-rKZ/strings.xml
index 9bfe503..20e3de4 100644
--- a/res/values-kk-rKZ/strings.xml
+++ b/res/values-kk-rKZ/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM контактісі импортталды</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM контактілері импортталмады"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Жүйеге кіру мүмкін болмады"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Импортталатын контактілерді таңдау"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Импорттауды тоқтату"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Автоматты синхрондау өшірулі. Қосу үшін түртіңіз."</string>
diff --git a/res/values-km-rKH/strings.xml b/res/values-km-rKH/strings.xml
index 5a3592e..0107f5f 100644
--- a/res/values-km-rKH/strings.xml
+++ b/res/values-km-rKH/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">បាន​នាំចូល​ទំនាក់ទំនង SIM 1</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"មិន​អាច​នាំចូល​ទំនាក់ទំនង​ពី SIM បាន​ទេ"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"មិន​អាច​ចូល​បាន​ទេ"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"ជ្រើស​ទំនាក់​ទំនង ដើម្បី​នាំចូល"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"បោះបង់ការ​នាំចូល"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ការធ្វើសមកាលស្វ័យប្រវត្តិ​ត្រូវ​បានបិទ។ ចុច ដើម្បីបើក។"</string>
diff --git a/res/values-kn-rIN/strings.xml b/res/values-kn-rIN/strings.xml
index 918d9e5..4d2fb63 100644
--- a/res/values-kn-rIN/strings.xml
+++ b/res/values-kn-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ಸಿಮ್ ಸಂಪರ್ಕಗಳನ್ನು ಆಮದು ಮಾಡಲಾಗಿದೆ</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"ಸಿಮ್ ಸಂಪರ್ಕಗಳನ್ನು ಆಮದು ಮಾಡಲು ವಿಫಲವಾಗಿದೆ"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"ಸೈನ್ ಇನ್ ಮಾಡಲು ವಿಫಲವಾಗಿದೆ"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"ಆಮದು ಮಾಡಲು ಸಂಪರ್ಕಗಳನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"ಆಮದು ರದ್ದುಮಾಡಿ"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ಸ್ವಯಂಚಾಲಿತ ಸಿಂಕ್ ಆಫ್‌ ಆಗಿದೆ. ಆನ್ ಮಾಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 8b6579e..8e82dbf 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">SIM 연락처 1개를 가져옴</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM 연락처를 가져오지 못했습니다."</string>
+    <string name="connection_failed" msgid="7558253972301525402">"로그인하지 못했습니다."</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"가져올 주소록 선택"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"가져오기 취소"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"자동 동기화가 사용 중지되어 있습니다. 사용 설정하려면 탭하세요."</string>
diff --git a/res/values-ky-rKG/strings.xml b/res/values-ky-rKG/strings.xml
index d59da2d..29b2e4c 100644
--- a/res/values-ky-rKG/strings.xml
+++ b/res/values-ky-rKG/strings.xml
@@ -733,6 +733,7 @@
       <item quantity="one">SIM-картадан 1 байланыш өткөрүлүп алынды</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM-картадагы байланыштар өткөрүлүп алынган жок"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Кире алган жоксуз"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Импорттоло турган байланыштарды тандаңыз"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Импорттоону жокко чыгаруу"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Түзмөктүн авто шайкештештирүү функциясы өчүрүлгөн. Күйгүзүү үчүн тийип коюңуз."</string>
diff --git a/res/values-lo-rLA/strings.xml b/res/values-lo-rLA/strings.xml
index ef298d8..de5689c 100644
--- a/res/values-lo-rLA/strings.xml
+++ b/res/values-lo-rLA/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">ນຳເຂົ້າ 1 ລາຍຊື່ຜູ້ຕິດຕໍ່ຊິມແລ້ວ</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"ນຳເຂົ້າລາຍຊື່ຜູ້ຕິດຕໍ່ຈາກຊິມກາດບໍ່ສຳເລັດ"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"ເຂົ້າສູ່ລະບົບບໍ່ສຳເລັດ"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"ເລືອກລາຍຊື່ເພື່ອນຳເຂົ້າ"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"ຍົກເລີກການນຳເຂົ້າ"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ການຊິ້ງຂໍ້ມູນອັດຕະໂນມັດຖືກປິດໄວ້. ແຕະເພື່ອເປີດໃຊ້."</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 07b280f..c22f910 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="other">Importuota <xliff:g id="COUNT">%d</xliff:g> SIM kortelės kontaktų</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Nepavyko importuoti SIM kortelės kontaktų"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Nepavyko prisijungti"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Pasirinkti importuojamus kontaktus"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Atšaukti importavimą"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatinis sinchronizavimas išjungtas. Jei norite įjungti, palieskite."</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 15e5701..e7d7315 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -640,6 +640,7 @@
       <item quantity="other">Importētas <xliff:g id="COUNT">%d</xliff:g> SIM kartes kontaktpersonas</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Neizdevās importēt SIM kartes kontaktpersonas."</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Neizdevās pierakstīties"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Importējamo kontaktpersonu atlase"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Atcelt importēšanu"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automātiskā sinhronizācija ir izslēgta. Pieskarieties, lai to ieslēgtu."</string>
diff --git a/res/values-mk-rMK/strings.xml b/res/values-mk-rMK/strings.xml
index aebbc17..ab7640f 100644
--- a/res/values-mk-rMK/strings.xml
+++ b/res/values-mk-rMK/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other">Увезени се <xliff:g id="COUNT">%d</xliff:g> контакти од SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Не успеа увезувањето контакти од SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Не успеа да се најави"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Изберете контакти за увоз"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Откажете го увозот"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Автоматското синхронизирање е исклучено. Допрете за да го вклучите."</string>
diff --git a/res/values-ml-rIN/strings.xml b/res/values-ml-rIN/strings.xml
index 0aea50f..a8fb692 100644
--- a/res/values-ml-rIN/strings.xml
+++ b/res/values-ml-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">ഒരു സിം കോൺടാക്‌റ്റ് ഇമ്പോർട്ടുചെയ്‌തു</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"സിം കോൺടാക്‌റ്റുകൾ ഇമ്പോർട്ടുചെയ്യാനായില്ല"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"സൈൻ ഇൻ ചെയ്യാനായില്ല"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"ഇമ്പോർട്ടുചെയ്യാനുള്ളവ തിരഞ്ഞെടുക്കൂ"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"ഇറക്കുമതി റദ്ദാക്കുക"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"സ്വയ സമന്വയം ഓഫാണ്. ഓണാക്കാൻ ടാപ്പുചെയ്യുക."</string>
diff --git a/res/values-mn-rMN/strings.xml b/res/values-mn-rMN/strings.xml
index 328afd6..779fb71 100644
--- a/res/values-mn-rMN/strings.xml
+++ b/res/values-mn-rMN/strings.xml
@@ -627,6 +627,7 @@
       <item quantity="one">1 SIM-н харилцагчийг импорт хийсэн</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM-н харилцагчдыг импортолж чадсангүй"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Нэвтэрч чадсангүй"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Импорт хийх харилцагчдыг сонгоно уу"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Импорт хийхийг цуцлах"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Автомат синк идэвхгүй байна. Идэвхжүүлэх бол товшино уу."</string>
diff --git a/res/values-mr-rIN/strings.xml b/res/values-mr-rIN/strings.xml
index 37709ad..51f30ec 100644
--- a/res/values-mr-rIN/strings.xml
+++ b/res/values-mr-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> सिम संपर्क आयात केले</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"सिम संपर्क आयात करण्यात अयशस्वी"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"साइन इन करण्यात अयशस्वी झाले"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"आयात करण्यासाठी संपर्क निवडा"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"आयात रद्द करा"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"स्वयं-संकालन बंद आहे. चालू करण्यासाठी टॅप करा."</string>
diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml
index 18e3632..edcc37e 100644
--- a/res/values-ms-rMY/strings.xml
+++ b/res/values-ms-rMY/strings.xml
@@ -627,6 +627,7 @@
       <item quantity="one">1 kenalan SIM diimport</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Gagal mengimport kenalan SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Gagal log masuk"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Pilih kenalan untuk diimport"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Batalkan import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Auto segerak dimatikan. Ketik untuk menghidupkannya."</string>
diff --git a/res/values-my-rMM/strings.xml b/res/values-my-rMM/strings.xml
index afc7462..e0d04b3 100644
--- a/res/values-my-rMM/strings.xml
+++ b/res/values-my-rMM/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">ဆင်းမ်အဆက်အသွယ် ၁ ခုကို တင်သွင်းပြီးပါပြီ</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"ဆင်းမ်အဆက်အသွယ်များကို တင်သွင်း၍မရပါ"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"အကောင့် ဝင်၍မရပါ"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"တင်သွင်းရန် လိပ်စာများကို ရွေးပါ"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"တင်သွင်းမှု ပယ်ဖျက်ရန်"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"အလိုအလျောက်စင့်ခ်လုပ်ခြင်းကို ပိတ်ထားသည်။ ဖွင့်ရန်အတွက် တို့ပါ။"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 5f0e871..1d437ff 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">Én SIM-kontakt ble importert</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Kunne ikke importere SIM-kontakter"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Kunne ikke logge på"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Velg kontaktene du vil importere"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Avbryt import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatisk synkronisering er slått av. Trykk for å slå det på."</string>
diff --git a/res/values-ne-rNP/strings.xml b/res/values-ne-rNP/strings.xml
index af9ae6c..1da88f6 100644
--- a/res/values-ne-rNP/strings.xml
+++ b/res/values-ne-rNP/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">SIM को १ सम्पर्क आयात गरियो</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM को सम्पर्कहरू आयात गर्न सकिएन"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"साइन इन गर्न सकिएन"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"आयात गर्न सम्पर्कहरू चयन गर्नुहोस्"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"आयात रद्द गर्नुहोस्"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"स्वत:सिङ्क गर्ने सेवा निष्क्रिय छ। सक्रिय गर्न ट्याप गर्नुहोस्।"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index c1f34ea..e092054 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 contact op simkaart geïmporteerd</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Kan contacten op simkaart niet importeren"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Inloggen is mislukt"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Contacten selecteren om te importeren"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Importeren annuleren"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatisch synchroniseren is uitgeschakeld. Tik om in te schakelen."</string>
diff --git a/res/values-pa-rIN/strings.xml b/res/values-pa-rIN/strings.xml
index bbf4467..a188110 100644
--- a/res/values-pa-rIN/strings.xml
+++ b/res/values-pa-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> SIM ਸੰਪਰਕ ਆਯਾਤ ਕੀਤੇ ਗਏ</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM ਸੰਪਰਕਾਂ ਨੂੰ ਆਯਾਤ ਕਰਨਾ ਅਸਫਲ ਰਿਹਾ"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"ਸਾਈਨ ਇਨ ਕਰਨਾ ਅਸਫਲ ਰਿਹਾ"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"ਆਯਾਤ ਕਰਨ ਲਈ ਸੰਪਰਕ ਚੁਣੋ"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"ਆਯਾਤ ਰੱਦ ਕਰੋ"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ਸਵੈ-ਸਮਕਾਲੀਕਰਨ ਬੰਦ ਹੈ। ਚਾਲੂ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 67367d0..39198fc 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="one">Zaimportowano 1 kontakt z karty SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Nie udało się zaimportować kontaktów z karty SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Nie udało się zalogować"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Wybierz kontakty do importowania"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Anuluj importowanie"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatyczna synchronizacja jest wyłączona. Kliknij, by ją włączyć."</string>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 62d04b4..fadd7eb 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> contatos importados do SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Falha ao importar contatos do SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Falha ao fazer login"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Selecione os contatos a serem importados"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancelar importação"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"A sincronização automática está desativada. Toque para ativar."</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index e5e2883..e738f57 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 contacto do cartão SIM importado</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Ocorreu uma falha ao importar os contactos do cartão SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Ocorreu uma falha ao iniciar sessão"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Selecione os contactos a importar"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancelar importação"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"A sincronização automática está desativada. Toque para ativar."</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 62d04b4..fadd7eb 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> contatos importados do SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Falha ao importar contatos do SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Falha ao fazer login"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Selecione os contatos a serem importados"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Cancelar importação"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"A sincronização automática está desativada. Toque para ativar."</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index aa4a17e..7efd740 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -640,6 +640,7 @@
       <item quantity="one">A fost importată o persoană de contact de pe SIM.</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Nu s-au importat persoanele de contact de pe SIM."</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Nu v-ați conectat."</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Selectați persoane de contact pentru import"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Anulați importul"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Sincronizarea automată este dezactivată. Atingeți pentru a o activa."</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 12b7245..9665a35 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="other">Импортировано <xliff:g id="COUNT">%d</xliff:g> контакта с SIM-карты</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Не удалось импортировать контакты с SIM-карты"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Не удалось войти в систему"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Выберите контакты для импорта"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Отменить импорт"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Автосинхронизация отключена. Нажмите, чтобы ее включить."</string>
diff --git a/res/values-si-rLK/strings.xml b/res/values-si-rLK/strings.xml
index d369b9d..8536430 100644
--- a/res/values-si-rLK/strings.xml
+++ b/res/values-si-rLK/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other">SIM සම්බන්ධතා <xliff:g id="COUNT">%d</xliff:g>ක් ආයාත කරන ලදී</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM සම්බන්ධතා ආයාත කිරීමට අසමත් විය"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"පිරීමට අසමත් විය"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"ආයාත කිරීමට සම්බන්ධතා තෝරන්න"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"ආයාත කිරීම අවලංගු කරන්න"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ස්වයංක්‍රිය සමමුහුර්ත කිරීම ක්‍රියාවිරහිතයි. ක්‍රියාත්මක කිරීමට තට්ටු කරන්න."</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 0f502ef..4cb9461 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="one">Importoval sa 1 kontakt na SIM karte</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Import kontaktov na SIM karte zlyhal"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Prihlásenie zlyhalo"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Výber kontaktov na import"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Zrušiť import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatická synchronizácia je vypnutá. Zapnete ju klepnutím."</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index e23af10..5a2bf92 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="other">S kartice SIM je uvoženih <xliff:g id="COUNT">%d</xliff:g> stikov</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Stikov s kartice SIM ni bilo mogoče uvoziti"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Prijava ni uspela"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Izberite stike za uvoz"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Prekliči uvoz"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Samodejna sinhronizacija je izklopljena. Dotaknite se, da jo vklopite."</string>
diff --git a/res/values-sq-rAL/strings.xml b/res/values-sq-rAL/strings.xml
index ad11330..3bd4467 100644
--- a/res/values-sq-rAL/strings.xml
+++ b/res/values-sq-rAL/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 kontakt i kartës SIM u importua</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Importimi i kontakteve të kartës SIM dështoi"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Identifikimi dështoi"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Zgjidh kontaktet për importim"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Anulo importimin"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Sinkronizimi automatik është joaktiv. Trokit për ta aktivizuar."</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 46f5fee..0642197 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -640,6 +640,7 @@
       <item quantity="other">Увезено је <xliff:g id="COUNT">%d</xliff:g> контаката са SIM картице</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Увоз контаката са SIM картице није успео"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Пријављивање није успело"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Изаберите контакте за увоз"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Откажите увоз"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Аутоматска синхронизација је искључена. Додирните да бисте је укључили."</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 341dbc2..15c4728 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">En SIM-kontakt importerad</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Det gick inte att importera SIM-kontakter"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Det gick inte att logga in"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Välj kontakter att importera"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Avbryt import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Automatisk synkronisering har inaktiverats. Aktivera genom att trycka."</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 23e8cf8..c47c34b 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -627,6 +627,7 @@
       <item quantity="one">Anwani 1 iliyokuwa kwenye SIM imeletwa</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Imeshindwa kuleta anwani zilizo kwenye SIM kadi"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Imeshindwa kuingia katika akaunti"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Chagua anwani za kuleta"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Ghairi uletaji"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Usawazishaji wa kiotomatiki umezimwa. Gonga ili uuwashe."</string>
diff --git a/res/values-ta-rIN/strings.xml b/res/values-ta-rIN/strings.xml
index 8c1c85d..c3813b0 100644
--- a/res/values-ta-rIN/strings.xml
+++ b/res/values-ta-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 சிம் தொடர்பு இறக்கப்பட்டது</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"சிம் தொடர்புகளை இறக்க முடியவில்லை"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"உள்நுழைய முடியவில்லை"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"இறக்க வேண்டிய தொடர்புகளைத் தேர்ந்தெடுக்கவும்"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"இறக்குவதை ரத்துசெய்வதற்கான ஐகான்"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"தானாக ஒத்திசை எனும் அம்சம் முடக்கப்பட்டுள்ளது. இயக்க, தட்டவும்."</string>
diff --git a/res/values-te-rIN/strings.xml b/res/values-te-rIN/strings.xml
index 236f6fc..2057a92 100644
--- a/res/values-te-rIN/strings.xml
+++ b/res/values-te-rIN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM పరిచయం దిగుమతి చేయబడింది</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM పరిచయాలను దిగుమతి చేయడంలో విఫలమైంది"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"సైన్ ఇన్ చేయడంలో విఫలమైంది"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"దిగుమతి చేయాల్సిన పరిచయాలను ఎంచుకోండి"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"దిగుమతిని రద్దు చేస్తుంది"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"స్వీయ-సమకాలీకరణ ఆఫ్‌లో ఉంది. ఆన్ చేయడానికి నొక్కండి."</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 2951539..9361d95 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">นำเข้าผู้ติดต่อ 1 รายจากซิมแล้ว</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"นำเข้าผู้ติดต่อจากซิมไม่สำเร็จ"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"ไม่สามารถลงชื่อเข้าใช้ได้"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"เลือกผู้ติดต่อที่จะนำเข้า"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"ยกเลิกการนำเข้า"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"ซิงค์อัตโนมัติปิดอยู่ แตะเพื่อเปิด"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 7a243e8..acdbe5f 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> na contact sa SIM ang na-import</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Hindi na-import ang mga contact sa SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Hindi nakapag-sign in"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Piliin ang mga contact na ii-import"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Kanselahin ang pag-import"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Naka-off ang auto-sync. I-tap upang i-on."</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index b8b34e6..a475d9e 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 SIM kişisi içe aktarıldı</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"SIM kişileri içe aktarılamadı"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Oturum açılamadı"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"İçe aktarılacak kişileri seçin"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"İçe aktarma iptal edilir"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Otomatik senkronizasyon kapalı. Açmak için dokunun."</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index bdf521f..0984e0d 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -655,6 +655,7 @@
       <item quantity="other">Імпортовано <xliff:g id="COUNT">%d</xliff:g> контакта із SIM-карти</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Не вдалось імпортувати контакти із SIM-карти"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Помилка входу"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Виберіть контакти для імпорту"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Скасувати імпорт"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Автоматичну синхронізацію вимкнено. Торкніться, щоб увімкнути."</string>
diff --git a/res/values-ur-rPK/strings.xml b/res/values-ur-rPK/strings.xml
index de6b5ef..9ad7278 100644
--- a/res/values-ur-rPK/strings.xml
+++ b/res/values-ur-rPK/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">‏1 SIM رابطہ درآمد ہو گیا</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"‏SIM رابطے درآمد کرنے میں ناکام"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"سائن ان کرنے میں ناکام"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"درآمد کیلئے رابطے چنیں"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"برآمد منسوخ کریں"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"خودکار مطابقت پذیری آف ہے۔ آن کرنے کیلئے تھپتھپائیں۔"</string>
diff --git a/res/values-uz-rUZ/strings.xml b/res/values-uz-rUZ/strings.xml
index 4a282d9..d37f78c 100644
--- a/res/values-uz-rUZ/strings.xml
+++ b/res/values-uz-rUZ/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">1 ta kontakt SIM kartadan import qilindi</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Kontaktlarni SIM kartadan import qilib bo‘lmadi"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Tizimga kirib bo‘lmadi"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Import qilish uchun kontaktlarni tanlang"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Import qilishni bekor qilish"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Avto-sinxronlash o‘chiq. Uni yoqish uchun bosing."</string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index aa87924..4179f92 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">Đã nhập 1 liên hệ trên SIM</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Không nhập được liên hệ trên SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Không đăng nhập được"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Chọn danh bạ để nhập"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Hủy nhập"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Tự động đồng bộ hóa đang tắt. Hãy nhấn để bật."</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 7de54a3..23bae57 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">已导入 1 位 SIM 卡联系人</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"无法导入 SIM 卡联系人"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"无法登录"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"选择要导入的联系人"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"取消导入"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"自动同步功能已关闭。点按即可开启。"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 2d6c287..8d31d75 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">已匯入 1 位 SIM 聯絡人</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"無法匯入 SIM 聯絡人"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"無法登入"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"選取要匯入的聯絡人"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"取消匯入"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"自動同步已關閉。輕按以開啟。"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 807ee33..0d37adc 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="one">已匯入 1 位 SIM 卡聯絡人</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"無法匯入 SIM 卡聯絡人"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"無法登入"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"選取要匯入的聯絡人"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"取消匯入"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"自動同步功能已關閉。輕觸即可開啟。"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index a8eaebd..c0be9ec 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -625,6 +625,7 @@
       <item quantity="other"><xliff:g id="COUNT">%d</xliff:g> oxhumana nabo be-SIM bangenisiwe</item>
     </plurals>
     <string name="sim_import_failed_toast" msgid="5559267299793622705">"Yehlulekile ukungenisa oxhumana nabo be-SIM"</string>
+    <string name="connection_failed" msgid="7558253972301525402">"Yehlulekile ukungena ngemvume"</string>
     <string name="sim_import_dialog_title" msgid="6699935401502172530">"Khetha othintana nabo ozobangenisa"</string>
     <string name="sim_import_cancel_content_description" msgid="2388362519166414488">"Khansela ukungenisa"</string>
     <string name="auto_sync_off" msgid="2180147284456026587">"Ukuvumelanisa okuzenzekelelayo kuvaliwe.Thepha ukuze uvule."</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 6980f23..de283bb 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1870,6 +1870,8 @@
     <!-- Toast shown on settings screen when importing from SIM completes with an error -->
     <string name="sim_import_failed_toast">Failed to import SIM contacts</string>
 
+    <!-- Error message displayed to user when they started the app, but could not sign in to Google's servers. [CHAR LIMIT=50]-->
+    <string name="connection_failed">Failed to sign in</string>
     <!-- Title of SIM import dialog for accessibility; this isn't displayed but is announced
      by talkback when the window is shown -->
     <string name="sim_import_dialog_title">Select contacts to import</string>
diff --git a/src-bind/com/android/contactsbind/ObjectFactory.java b/src-bind/com/android/contactsbind/ObjectFactory.java
index af11c90..1b4fc62 100644
--- a/src-bind/com/android/contactsbind/ObjectFactory.java
+++ b/src-bind/com/android/contactsbind/ObjectFactory.java
@@ -13,7 +13,9 @@
  */
 package com.android.contactsbind;
 
+import com.android.contacts.ContactsDrawerActivity;
 import com.android.contacts.common.logging.Logger;
+import com.android.contacts.common.util.NavigationDrawer;
 import com.android.contactsbind.search.AutocompleteHelper;
 import com.android.contacts.common.util.DeviceLocalAccountTypeFactory;
 
@@ -46,4 +48,8 @@
     public static Intent getContactSheetIntent(Context context, Uri contactLookupUri) {
         return null;
     }
+
+    public static NavigationDrawer getNavigationDrawer(ContactsDrawerActivity activity) {
+        return new NavigationDrawer.Default(activity);
+    }
 }
diff --git a/src/com/android/contacts/ContactsDrawerActivity.java b/src/com/android/contacts/ContactsDrawerActivity.java
index 325ecbe..770298e 100644
--- a/src/com/android/contacts/ContactsDrawerActivity.java
+++ b/src/com/android/contacts/ContactsDrawerActivity.java
@@ -26,6 +26,7 @@
 import android.os.Bundle;
 import android.provider.ContactsContract.Intents;
 import android.support.annotation.LayoutRes;
+import android.support.annotation.NonNull;
 import android.support.design.widget.NavigationView;
 import android.support.v4.view.GravityCompat;
 import android.support.v4.view.MenuItemCompat;
@@ -33,6 +34,7 @@
 import android.support.v7.app.ActionBarDrawerToggle;
 import android.support.v7.app.AppCompatActivity;
 import android.support.v7.widget.Toolbar;
+import android.text.TextUtils;
 import android.util.Log;
 import android.view.Gravity;
 import android.view.LayoutInflater;
@@ -47,6 +49,7 @@
 
 import com.android.contacts.activities.ActionBarAdapter;
 import com.android.contacts.common.ContactsUtils;
+import com.android.contacts.common.Experiments;
 import com.android.contacts.common.compat.CompatUtils;
 import com.android.contacts.common.list.AccountFilterActivity;
 import com.android.contacts.common.list.ContactListFilter;
@@ -60,6 +63,7 @@
 import com.android.contacts.common.util.AccountsListAdapter.AccountListFilter;
 import com.android.contacts.common.util.ImplicitIntentsUtil;
 import com.android.contacts.common.util.MaterialColorMapUtils;
+import com.android.contacts.common.util.NavigationDrawer;
 import com.android.contacts.common.util.ViewUtil;
 import com.android.contacts.editor.ContactEditorFragment;
 import com.android.contacts.editor.SelectAccountDialogFragment;
@@ -77,7 +81,9 @@
 import com.android.contacts.util.SharedPreferenceUtil;
 import com.android.contactsbind.HelpUtils;
 import com.android.contactsbind.ObjectFactory;
+import com.android.contactsbind.experiments.Flags;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
@@ -143,7 +149,7 @@
 
         private void stopSearchAndSelection() {
             final MultiSelectContactsListFragment listFragment;
-            if (isAllContactsView() || isAccountView()) {
+            if (isAccountView()) {
                 listFragment = getAllFragment();
             } else if (isGroupView()) {
                 listFragment = getGroupFragment();
@@ -190,7 +196,7 @@
     }
 
     protected ContactListFilterController mContactListFilterController;
-    protected DrawerLayout mDrawer;
+    protected DrawerLayout mDrawerLayout;
     protected ContactsActionBarDrawerToggle mToggle;
     protected Toolbar mToolbar;
     protected NavigationView mNavigationView;
@@ -200,6 +206,8 @@
     // The account the new group will be created under.
     private AccountWithDataSet mNewGroupAccount;
 
+    private NavigationDrawer mNavigationDrawer;
+
     // Recycle badge if possible
     private TextView mAssistantNewBadge;
 
@@ -210,10 +218,18 @@
     protected Map<ContactListFilter, MenuItem> mFilterMenuMap = new HashMap<>();
     protected Map<Integer, MenuItem> mIdMenuMap = new HashMap<>();
 
+    private List<GroupListItem> mGroupListItems;
+    private List<ContactListFilter> mAccountFilterItems;
+    private AccountWithDataSet mCurrentAccount;
+
+    protected boolean mShouldShowAccountSwitcher;
+
     @Override
     protected void onCreate(Bundle savedState) {
         super.onCreate(savedState);
 
+        mShouldShowAccountSwitcher = Flags.getInstance().getBoolean(Experiments.ACCOUNT_SWITCHER);
+
         mContactListFilterController = ContactListFilterController.getInstance(this);
         mContactListFilterController.checkFilterValidity(false);
 
@@ -227,11 +243,12 @@
         ViewUtil.addRectangularOutlineProvider(findViewById(R.id.toolbar_parent), getResources());
 
         // Set up hamburger button.
-        mDrawer = (DrawerLayout) findViewById(R.id.drawer_layout);
-        mToggle = new ContactsActionBarDrawerToggle(this, mDrawer, mToolbar,
+        mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
+        mToggle = new ContactsActionBarDrawerToggle(this, mDrawerLayout, mToolbar,
                 R.string.navigation_drawer_open, R.string.navigation_drawer_close);
+        mDrawerLayout.setDrawerListener(mToggle);
+        mToggle.syncState();
 
-        mDrawer.setDrawerListener(mToggle);
         // Set fallback handler for when drawer is disabled.
         mToggle.setToolbarNavigationClickListener(new View.OnClickListener() {
             @Override
@@ -244,21 +261,27 @@
         if (savedState != null) {
             mCurrentView = ContactsView.values()[savedState.getInt(KEY_CONTACTS_VIEW)];
         } else {
-            mCurrentView = ContactsView.ALL_CONTACTS;
+            resetContactsView();
         }
 
-        // Set up hamburger menu items.
-        mNavigationView = (NavigationView) findViewById(R.id.nav_view);
-        mNavigationView.setNavigationItemSelectedListener(this);
-        setUpMenu();
-
-        initializeAssistantNewBadge();
         loadGroupsAndFilters();
 
         if (savedState != null && savedState.containsKey(KEY_NEW_GROUP_ACCOUNT)) {
             mNewGroupAccount = AccountWithDataSet.unstringify(
                     savedState.getString(KEY_NEW_GROUP_ACCOUNT));
         }
+
+        mNavigationDrawer = ObjectFactory.getNavigationDrawer(this);
+
+        mNavigationView = mNavigationDrawer.getNavigationView();
+        mNavigationView.setNavigationItemSelectedListener(this);
+        setUpMenu();
+        initializeAssistantNewBadge();
+    }
+
+    protected void resetContactsView() {
+        mCurrentView = mShouldShowAccountSwitcher
+                ? ContactsView.ACCOUNT_VIEW : ContactsView.ALL_CONTACTS;
     }
 
     private void initializeAssistantNewBadge() {
@@ -282,7 +305,7 @@
 
     public void setDrawerLockMode(boolean enabled) {
         // Prevent drawer from being opened by sliding from the start of screen.
-        mDrawer.setDrawerLockMode(enabled ? DrawerLayout.LOCK_MODE_UNLOCKED
+        mDrawerLayout.setDrawerLockMode(enabled ? DrawerLayout.LOCK_MODE_UNLOCKED
                 : DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
 
         // Order of these statements matter.
@@ -314,10 +337,14 @@
             menu.removeItem(R.id.nav_help);
         }
 
-        final MenuItem allContactsMenu = menu.findItem(R.id.nav_all_contacts);
-        mIdMenuMap.put(R.id.nav_all_contacts, allContactsMenu);
-        if (isAllContactsView()) {
-            updateMenuSelection(allContactsMenu);
+        if (!mShouldShowAccountSwitcher) {
+            final MenuItem allContactsMenu = menu.findItem(R.id.nav_all_contacts);
+            mIdMenuMap.put(R.id.nav_all_contacts, allContactsMenu);
+            if (isAllContactsView()) {
+                updateMenuSelection(allContactsMenu);
+            }
+        } else {
+            menu.removeItem(R.id.nav_all_contacts);
         }
     }
 
@@ -337,9 +364,11 @@
     @Override
     protected void onResume() {
         super.onResume();
-        if (mDrawer.isDrawerOpen(GravityCompat.START)) {
+        if (mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
             updateStatusBarBackground();
         }
+        // Restoring recent accounts.
+        mNavigationDrawer.onResume();
     }
 
     public void updateStatusBarBackground() {
@@ -349,11 +378,12 @@
     public void updateStatusBarBackground(int color) {
         if (!CompatUtils.isLollipopCompatible()) return;
         if (color == -1) {
-            mDrawer.setStatusBarBackgroundColor(MaterialColorMapUtils.getStatusBarColor(this));
+            mDrawerLayout.setStatusBarBackgroundColor(
+                    MaterialColorMapUtils.getStatusBarColor(this));
         } else {
-            mDrawer.setStatusBarBackgroundColor(color);
+            mDrawerLayout.setStatusBarBackgroundColor(color);
         }
-        mDrawer.invalidate();
+        mDrawerLayout.invalidate();
         getWindow().setStatusBarColor(Color.TRANSPARENT);
     }
 
@@ -369,6 +399,24 @@
         mToggle.onConfigurationChanged(newConfig);
     }
 
+    @Override
+    protected void onStart() {
+        super.onStart();
+        mNavigationDrawer.onStart();
+    }
+
+    @Override
+    protected void onPause() {
+        mNavigationDrawer.onPause();
+        super.onPause();
+    }
+
+    @Override
+    protected void onStop() {
+        mNavigationDrawer.onStop();
+        super.onStop();
+    }
+
     // Set up fragment manager to load groups and filters.
     protected void loadGroupsAndFilters() {
         final FragmentManager fragmentManager = getFragmentManager();
@@ -409,15 +457,39 @@
     public void onGroupsLoaded(List<GroupListItem> groupListItems) {
         final Menu menu = mNavigationView.getMenu();
         final MenuItem groupsMenuItem = menu.findItem(R.id.nav_groups);
+        if (groupsMenuItem == null) {
+            return;
+        }
+        final SubMenu subMenu = groupsMenuItem.getSubMenu();
+        subMenu.removeGroup(R.id.nav_groups_items);
+
+        mGroupListItems = groupListItems;
+
+        if (mShouldShowAccountSwitcher && mCurrentAccount != null) {
+            updateGroupMenuForAccount(mCurrentAccount);
+        } else {
+            updateGroupMenuForAccount(null);
+        }
+    }
+
+    /**
+     * Update menu items in group section of navigation drawer based on {@link AccountWithDataSet}.
+     * If {@link AccountWithDataSet} is null, then we show groups in all accounts.
+     */
+    public void updateGroupMenuForAccount(AccountWithDataSet account) {
+        mCurrentAccount = account;
+
+        final Menu menu = mNavigationView.getMenu();
+        final MenuItem groupsMenuItem = menu.findItem(R.id.nav_groups);
         final SubMenu subMenu = groupsMenuItem.getSubMenu();
         subMenu.removeGroup(R.id.nav_groups_items);
         mGroupMenuMap = new HashMap<>();
 
         final GroupMetaData groupMetaData = getGroupMetaData();
 
-        if (groupListItems != null) {
+        if (mGroupListItems != null ) {
             // Add each group
-            for (final GroupListItem groupListItem : groupListItems) {
+            for (final GroupListItem groupListItem : getGroupsForCurrentAccount(mCurrentAccount)) {
                 if (GroupUtil.isEmptyFFCGroup(groupListItem)) {
                     continue;
                 }
@@ -441,7 +513,7 @@
                                 updateMenuSelection(menuItem);
                             }
                         });
-                        mDrawer.closeDrawer(GravityCompat.START);
+                        mDrawerLayout.closeDrawer(GravityCompat.START);
                         return true;
                     }
                 });
@@ -466,17 +538,33 @@
                         onCreateGroupMenuItemClicked();
                     }
                 });
-                mDrawer.closeDrawer(GravityCompat.START);
+                mDrawerLayout.closeDrawer(GravityCompat.START);
                 return true;
             }
         });
 
         if (isGroupView() && groupMetaData != null) {
-            updateGroupMenu(groupMetaData);
+            updateGroupMenuCheckedStatus(groupMetaData);
         }
     }
 
-    public void updateGroupMenu(GroupMetaData groupMetaData) {
+    private List<GroupListItem> getGroupsForCurrentAccount(AccountWithDataSet account) {
+        final List<GroupListItem> desiredGroupItems = new ArrayList<>();
+        if (account == null) {
+            desiredGroupItems.addAll(mGroupListItems);
+        } else {
+            for (GroupListItem group : mGroupListItems) {
+                if (TextUtils.equals(mCurrentAccount.name, group.getAccountName())
+                        && TextUtils.equals(mCurrentAccount.type, group.getAccountType())
+                        && TextUtils.equals(mCurrentAccount.dataSet, group.getDataSet())) {
+                    desiredGroupItems.add(group);
+                }
+            }
+        }
+        return desiredGroupItems;
+    }
+
+    public void updateGroupMenuCheckedStatus(GroupMetaData groupMetaData) {
         clearCheckedMenus();
         if (groupMetaData != null && mGroupMenuMap != null
                 && mGroupMenuMap.get(groupMetaData.groupId) != null) {
@@ -516,7 +604,12 @@
         final Account account = extras == null ? null :
                 (Account) extras.getParcelable(Intents.Insert.EXTRA_ACCOUNT);
         if (account == null) {
-            selectAccountForNewGroup();
+            if (mShouldShowAccountSwitcher && mCurrentAccount != null) {
+                // Create a new group in current account.
+                onAccountChosen(mCurrentAccount, /* extraArgs */ null);
+            } else {
+                selectAccountForNewGroup();
+            }
         } else {
             final String dataSet = extras == null
                     ? null : extras.getString(Intents.Insert.EXTRA_DATA_SET);
@@ -528,6 +621,11 @@
 
     @Override
     public void onFiltersLoaded(List<ContactListFilter> accountFilterItems) {
+        mAccountFilterItems = accountFilterItems;
+
+        // Don't show accounts in menu if we enable account switcher.
+        if (mShouldShowAccountSwitcher) return;
+
         final AccountDisplayInfoFactory accountDisplayFactory = AccountDisplayInfoFactory.
                 fromListFilters(this, accountFilterItems);
 
@@ -541,7 +639,6 @@
             return;
         }
 
-
         for (int i = 0; i < accountFilterItems.size(); i++) {
             final ContactListFilter filter = accountFilterItems.get(i);
             final AccountDisplayInfo displayableAccount =
@@ -565,7 +662,7 @@
                             updateMenuSelection(menuItem);
                         }
                     });
-                    mDrawer.closeDrawer(GravityCompat.START);
+                    mDrawerLayout.closeDrawer(GravityCompat.START);
                     return true;
                 }
             });
@@ -607,8 +704,21 @@
                 AppCompatActivity.RESULT_OK, intent);
     }
 
+    public void changeFilter(AccountWithDataSet account) {
+        for (ContactListFilter filter : mAccountFilterItems) {
+            if (account.equals(filter.toAccountWithDataSet())) {
+                final Intent intent = new Intent();
+                intent.putExtra(AccountFilterActivity.EXTRA_CONTACT_LIST_FILTER, filter);
+                AccountFilterUtil.handleAccountFilterResult(mContactListFilterController,
+                        AppCompatActivity.RESULT_OK, intent);
+                clearCheckedMenus();
+                break;
+            }
+        }
+    }
+
     @Override
-    public boolean onNavigationItemSelected(final MenuItem item) {
+    public boolean onNavigationItemSelected(@NonNull final MenuItem item) {
         final int id = item.getItemId();
         mToggle.runWhenIdle(new Runnable() {
             @Override
@@ -633,10 +743,14 @@
             }
         });
 
-        mDrawer.closeDrawer(GravityCompat.START);
+        mDrawerLayout.closeDrawer(GravityCompat.START);
         return true;
     }
 
+    public void closeDrawer() {
+        mDrawerLayout.closeDrawer(GravityCompat.START);
+    }
+
     private Intent createPreferenceIntent() {
         final Intent intent = new Intent(this, ContactsPreferenceActivity.class);
         intent.putExtra(ContactsPreferenceActivity.EXTRA_NEW_LOCAL_PROFILE,
@@ -645,12 +759,15 @@
     }
 
     public void switchToAllContacts() {
-        resetFilter();
+        if (mShouldShowAccountSwitcher) {
+            clearCheckedMenus();
+        } else {
+            resetFilter();
 
-        final Menu menu = mNavigationView.getMenu();
-        final MenuItem allContacts = menu.findItem(R.id.nav_all_contacts);
-        updateMenuSelection(allContacts);
-
+            final Menu menu = mNavigationView.getMenu();
+            final MenuItem allContacts = menu.findItem(R.id.nav_all_contacts);
+            updateMenuSelection(allContacts);
+        }
         setTitle(getString(R.string.contactsList));
     }
 
@@ -685,6 +802,9 @@
     }
 
     private void setMenuChecked(MenuItem menuItem, boolean checked) {
+        if (menuItem == null) {
+            return;
+        }
         menuItem.setCheckable(checked);
         menuItem.setChecked(checked);
     }
@@ -710,6 +830,7 @@
 
     @Override
     public void onAccountChosen(AccountWithDataSet account, Bundle extraArgs) {
+        if (account == null) return;
         mNewGroupAccount = account;
         GroupNameEditDialogFragment.newInstanceForCreation(
                 mNewGroupAccount, GroupUtil.ACTION_CREATE_GROUP)
diff --git a/src/com/android/contacts/activities/PeopleActivity.java b/src/com/android/contacts/activities/PeopleActivity.java
index c2198bb..47fc2a3 100644
--- a/src/com/android/contacts/activities/PeopleActivity.java
+++ b/src/com/android/contacts/activities/PeopleActivity.java
@@ -268,8 +268,8 @@
 
         if (isGroupDeleteAction(action)) {
             popSecondLevel();
+            resetContactsView();
             mMembersFragment.toastForSaveAction(action);
-            mCurrentView = ContactsView.ALL_CONTACTS;
             showFabWithAnimation(/* showFab */ true);
             return;
         }
@@ -519,6 +519,9 @@
         final int providerStatus = mProviderStatusWatcher.getProviderStatus();
         final Menu menu = mNavigationView.getMenu();
         final MenuItem groupsMenuItem = menu.findItem(R.id.nav_groups);
+        if (groupsMenuItem == null) {
+            return;
+        }
         final SubMenu subMenu = groupsMenuItem.getSubMenu();
 
         // Reload groups and filters if provider status changes to "normal" and there's no groups
@@ -622,8 +625,8 @@
         }
 
         // Handle the back event in drawer first.
-        if (mDrawer.isDrawerOpen(GravityCompat.START)) {
-            mDrawer.closeDrawer(GravityCompat.START);
+        if (mDrawerLayout.isDrawerOpen(GravityCompat.START)) {
+            mDrawerLayout.closeDrawer(GravityCompat.START);
             return;
         }
 
@@ -690,7 +693,8 @@
             return true;
         }
 
-        if (!AccountFilterUtil.isAllContactsFilter(mContactListFilterController.getFilter())
+        if (!mShouldShowAccountSwitcher
+                && !AccountFilterUtil.isAllContactsFilter(mContactListFilterController.getFilter())
                 && !mAllFragment.isHidden()) {
             // If mAllFragment is hidden, then mContactsUnavailableFragment is visible so we
             // don't need to switch to all contacts.
@@ -785,6 +789,17 @@
         super.onFilterMenuItemClicked(intent);
     }
 
+    @Override
+    public void changeFilter(AccountWithDataSet account) {
+        super.changeFilter(account);
+        // We must pop second level first to "restart" mAllFragment, before changing filter.
+        if (isInSecondLevel()) {
+            popSecondLevel();
+            showFabWithAnimation(/* showFab */ true);
+        }
+        mCurrentView = ContactsView.ACCOUNT_VIEW;
+    }
+
     private void switchToOrUpdateGroupView(String action) {
         // If group fragment is active and visible, we simply update it.
         if (mMembersFragment != null && !mMembersFragment.isInactive()) {
@@ -829,7 +844,7 @@
             popSecondLevel();
         }
         mShouldSwitchToAllContacts = false;
-        mCurrentView = ContactsView.ALL_CONTACTS;
+        resetContactsView();
         showFabWithAnimation(/* showFab */ true);
         mAllFragment.scrollToTop();
 
diff --git a/src/com/android/contacts/common/Experiments.java b/src/com/android/contacts/common/Experiments.java
index b182491..1a7fe2e 100644
--- a/src/com/android/contacts/common/Experiments.java
+++ b/src/com/android/contacts/common/Experiments.java
@@ -21,6 +21,11 @@
 public final class Experiments {
 
     /**
+     * Experiment to enable account switcher
+     */
+    public static final String ACCOUNT_SWITCHER = "Account__account_switcher_enable";
+
+    /**
      * Whether to open contact sheet (aka smart profile) instead of our own QuickContact.
      */
     public static final String CONTACT_SHEET = "QuickContact__contact_sheet";
diff --git a/src/com/android/contacts/common/list/ContactListFilter.java b/src/com/android/contacts/common/list/ContactListFilter.java
index 5b7472d..f3bac38 100644
--- a/src/com/android/contacts/common/list/ContactListFilter.java
+++ b/src/com/android/contacts/common/list/ContactListFilter.java
@@ -394,7 +394,7 @@
 
     /**
      * Returns true if this ContactListFilter contains at least one Google account.
-     * (see {@link #isGoogleAccountType)
+     * (see {@link #isGoogleAccountType )
      */
     public boolean isSyncable(List<AccountWithDataSet> accounts) {
         if (isGoogleAccountType() && filterType == ContactListFilter.FILTER_TYPE_ACCOUNT) {
@@ -410,8 +410,7 @@
                 // If we're showing all contacts and there is any Google account on the device then
                 // we're syncable.
                 for (AccountWithDataSet account : accounts) {
-                    if (GoogleAccountType.ACCOUNT_TYPE.equals(account.type)
-                            && account.dataSet == null) {
+                    if (account.isWritableGoogleAccount()) {
                         return true;
                     }
                 }
@@ -421,7 +420,7 @@
     }
 
     /**
-     * Returns the Google accounts (see {@link #isGoogleAccountType) for this ContactListFilter.
+     * Returns the Google accounts (see {@link #isGoogleAccountType ) for this ContactListFilter.
      */
     public List<Account> getSyncableAccounts(List<AccountWithDataSet> accounts) {
         final List<Account> syncableAccounts = new ArrayList<>();
@@ -433,8 +432,7 @@
                 || filterType == ContactListFilter.FILTER_TYPE_DEFAULT) {
             if (accounts != null && accounts.size() > 0) {
                 for (AccountWithDataSet account : accounts) {
-                    if (GoogleAccountType.ACCOUNT_TYPE.equals(account.type)
-                            && account.dataSet == null) {
+                    if (account.isWritableGoogleAccount()) {
                         syncableAccounts.add(new Account(account.name, account.type));
                     }
                 }
diff --git a/src/com/android/contacts/common/list/ContactListFilterController.java b/src/com/android/contacts/common/list/ContactListFilterController.java
index 4d3d6ad..5ceef18 100644
--- a/src/com/android/contacts/common/list/ContactListFilterController.java
+++ b/src/com/android/contacts/common/list/ContactListFilterController.java
@@ -81,6 +81,8 @@
      * which case, we should switch to the last saved filter in {@link SharedPreferences}.
      */
     public abstract void checkFilterValidity(boolean notifyListeners);
+
+    public abstract Context getContext();
 }
 
 /**
@@ -196,4 +198,9 @@
                 mFilter.accountName, mFilter.accountType, mFilter.dataSet);
         return accountTypeManager.contains(filterAccount, /* contactWritableOnly */ false);
     }
+
+    @Override
+    public Context getContext() {
+        return mContext;
+    }
 }
diff --git a/src/com/android/contacts/common/model/AccountTypeManager.java b/src/com/android/contacts/common/model/AccountTypeManager.java
index 15c9771..8d01892 100644
--- a/src/com/android/contacts/common/model/AccountTypeManager.java
+++ b/src/com/android/contacts/common/model/AccountTypeManager.java
@@ -313,13 +313,13 @@
             return -1;
         } else if (a.name == null || a.type == null) {
             return 1;
-        } else if (isWritableGoogleAccount(a) && a.equals(mDefaultAccount)) {
+        } else if (a.isWritableGoogleAccount() && a.equals(mDefaultAccount)) {
             return -1;
-        } else if (isWritableGoogleAccount(b) && b.equals(mDefaultAccount)) {
+        } else if (b.isWritableGoogleAccount() && b.equals(mDefaultAccount)) {
             return 1;
-        } else if (isWritableGoogleAccount(a) && !isWritableGoogleAccount(b)) {
+        } else if (a.isWritableGoogleAccount() && !b.isWritableGoogleAccount()) {
             return -1;
-        } else if (isWritableGoogleAccount(b) && !isWritableGoogleAccount(a)) {
+        } else if (b.isWritableGoogleAccount() && !a.isWritableGoogleAccount()) {
             return 1;
         } else {
             int diff = a.name.compareToIgnoreCase(b.name);
@@ -339,10 +339,6 @@
             }
         }
     }
-
-    private static boolean isWritableGoogleAccount(AccountWithDataSet account) {
-        return GoogleAccountType.ACCOUNT_TYPE.equals(account.type) && account.dataSet == null;
-    }
 }
 
 class AccountTypeManagerImpl extends AccountTypeManager
diff --git a/src/com/android/contacts/common/model/account/AccountDisplayInfo.java b/src/com/android/contacts/common/model/account/AccountDisplayInfo.java
index f68fdd5..c5463d6 100644
--- a/src/com/android/contacts/common/model/account/AccountDisplayInfo.java
+++ b/src/com/android/contacts/common/model/account/AccountDisplayInfo.java
@@ -65,7 +65,7 @@
     }
 
     public boolean isGoogleAccount() {
-        return GoogleAccountType.ACCOUNT_TYPE.equals(mSource.type) && mSource.dataSet == null;
+        return mSource.isWritableGoogleAccount();
     }
 
     public boolean isDeviceAccount() {
diff --git a/src/com/android/contacts/common/model/account/AccountWithDataSet.java b/src/com/android/contacts/common/model/account/AccountWithDataSet.java
index 3ee0aab..4917abc 100644
--- a/src/com/android/contacts/common/model/account/AccountWithDataSet.java
+++ b/src/com/android/contacts/common/model/account/AccountWithDataSet.java
@@ -79,6 +79,10 @@
         mAccountTypeWithDataSet = AccountTypeWithDataSet.get(type, dataSet);
     }
 
+    public boolean isWritableGoogleAccount() {
+        return GoogleAccountType.ACCOUNT_TYPE.equals(type) && dataSet == null;
+    }
+
     public boolean isNullAccount() {
         return name == null && type == null && dataSet == null;
     }
diff --git a/src/com/android/contacts/common/preference/ContactsPreferences.java b/src/com/android/contacts/common/preference/ContactsPreferences.java
index ac7b0e0..5a79877 100644
--- a/src/com/android/contacts/common/preference/ContactsPreferences.java
+++ b/src/com/android/contacts/common/preference/ContactsPreferences.java
@@ -20,6 +20,7 @@
 import android.content.SharedPreferences;
 import android.content.SharedPreferences.Editor;
 import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
+import android.os.Bundle;
 import android.os.Handler;
 import android.os.Looper;
 import android.preference.PreferenceManager;
@@ -67,6 +68,10 @@
 
     public static final boolean PREF_DISPLAY_ONLY_PHONES_DEFAULT = false;
 
+    private static final String NAV_DRAWER_FIRST_RECENT = "NavigationDrawer_first_recent";
+
+    private static final String NAV_DRAWER_SECOND_RECENT = "NavigationDrawer_second_recent";
+
     /**
      * Value to use when a preference is unassigned and needs to be read from the shared preferences
      */
@@ -233,6 +238,26 @@
         return false;
     }
 
+    public void setRecentAccounts(@NonNull List<String> recentAccounts) {
+        final int size = recentAccounts.size();
+        final Editor editor = mPreferences.edit();
+        editor.putString(NAV_DRAWER_FIRST_RECENT, size > 0 ? recentAccounts.get(0) : null);
+        editor.putString(NAV_DRAWER_SECOND_RECENT, size > 1 ? recentAccounts.get(1) : null);
+        editor.commit();
+    }
+
+    public void getRecentAccounts(List<String> recentAccounts) {
+        recentAccounts.clear();
+        String recent = mPreferences.getString(NAV_DRAWER_FIRST_RECENT, null);
+        if (recent != null) {
+            recentAccounts.add(recent);
+        }
+        recent = mPreferences.getString(NAV_DRAWER_SECOND_RECENT, null);
+        if (recent != null) {
+            recentAccounts.add(recent);
+        }
+    }
+
     public void registerChangeListener(ChangeListener listener) {
         if (mListener != null) unregisterChangeListener();
 
diff --git a/src/com/android/contacts/common/util/AccountFilterUtil.java b/src/com/android/contacts/common/util/AccountFilterUtil.java
index 96c5113..ed72f67 100644
--- a/src/com/android/contacts/common/util/AccountFilterUtil.java
+++ b/src/com/android/contacts/common/util/AccountFilterUtil.java
@@ -32,6 +32,7 @@
 
 import com.android.contacts.R;
 import com.android.contacts.activities.ContactEditorActivity;
+import com.android.contacts.common.Experiments;
 import com.android.contacts.common.list.AccountFilterActivity;
 import com.android.contacts.common.list.ContactListFilter;
 import com.android.contacts.common.list.ContactListFilterController;
@@ -42,6 +43,7 @@
 import com.android.contacts.common.model.account.AccountWithDataSet;
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contactsbind.ObjectFactory;
+import com.android.contactsbind.experiments.Flags;
 
 import com.google.common.collect.Lists;
 
@@ -89,8 +91,7 @@
             if (filter.filterType == ContactListFilter.FILTER_TYPE_CUSTOM) {
                 filterController.selectCustomFilter();
             } else {
-                filterController.setContactListFilter(filter, /* persistent */
-                        filter.filterType == ContactListFilter.FILTER_TYPE_ALL_ACCOUNTS);
+                filterController.setContactListFilter(filter, shouldPersistFilter(filter));
             }
         }
     }
@@ -132,6 +133,7 @@
     private static List<ContactListFilter> loadAccountFilters(Context context,
             DeviceLocalAccountTypeFactory deviceAccountTypeFactory) {
         final ArrayList<ContactListFilter> accountFilters = Lists.newArrayList();
+
         final AccountTypeManager accountTypeManager = AccountTypeManager.getInstance(context);
         final List<AccountWithDataSet> accounts = accountTypeManager.getSortedAccounts(
                 /* defaultAccount */ getDefaultAccount(context), /* contactWritableOnly */ true);
@@ -236,4 +238,11 @@
         return account.withFormattedName(context, R.string.title_from_other_accounts)
                 .getNameLabel().toString();
     }
+
+    public static boolean shouldPersistFilter(ContactListFilter filter) {
+        if (Flags.getInstance().getBoolean(Experiments.ACCOUNT_SWITCHER)) {
+            return true;
+        }
+        return filter != null && filter.isContactsFilterType();
+    }
 }
diff --git a/src/com/android/contacts/common/util/DeviceLocalAccountTypeFactory.java b/src/com/android/contacts/common/util/DeviceLocalAccountTypeFactory.java
index 040a6b4..e54b31f 100644
--- a/src/com/android/contacts/common/util/DeviceLocalAccountTypeFactory.java
+++ b/src/com/android/contacts/common/util/DeviceLocalAccountTypeFactory.java
@@ -52,7 +52,6 @@
 
         public static boolean isLocalAccountType(DeviceLocalAccountTypeFactory factory,
                 String type) {
-
             return isLocalAccountType(factory.classifyAccount(type));
         }
     }
diff --git a/src/com/android/contacts/common/util/NavigationDrawer.java b/src/com/android/contacts/common/util/NavigationDrawer.java
new file mode 100644
index 0000000..c60f029
--- /dev/null
+++ b/src/com/android/contacts/common/util/NavigationDrawer.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.contacts.common.util;
+
+import android.support.design.widget.NavigationView;
+import android.support.v7.app.AppCompatActivity;
+
+import com.android.contacts.R;
+
+public interface NavigationDrawer {
+    void onStart();
+    void onResume();
+    void onPause();
+    void onStop();
+    NavigationView getNavigationView();
+
+    class Default implements NavigationDrawer {
+
+        AppCompatActivity mActivity;
+
+        public Default(AppCompatActivity activity) {
+            mActivity = activity;
+        }
+
+        @Override
+        public void onStart() {}
+
+        @Override
+        public void onResume() {}
+
+        @Override
+        public void onPause() {}
+
+        @Override
+        public void onStop() {}
+
+        @Override
+        public NavigationView getNavigationView() {
+            return (NavigationView) mActivity.findViewById(R.id.nav_view);
+        }
+    }
+}
diff --git a/src/com/android/contacts/group/GroupMembersFragment.java b/src/com/android/contacts/group/GroupMembersFragment.java
index 44bda74..bd333fc 100644
--- a/src/com/android/contacts/group/GroupMembersFragment.java
+++ b/src/com/android/contacts/group/GroupMembersFragment.java
@@ -731,7 +731,7 @@
         maybeAttachCheckBoxListener();
 
         mActivity.setTitle(mGroupMetaData.groupName);
-        mActivity.updateGroupMenu(mGroupMetaData);
+        mActivity.updateGroupMenuCheckedStatus(mGroupMetaData);
         mActivity.invalidateOptionsMenu();
 
         // Start loading the group members
diff --git a/src/com/android/contacts/list/DefaultContactBrowseListFragment.java b/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
index f7ae30d..a4bfdd1 100644
--- a/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
+++ b/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
@@ -29,6 +29,7 @@
 import android.content.res.Resources;
 import android.database.Cursor;
 import android.graphics.Rect;
+import android.graphics.drawable.Drawable;
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.Handler;
@@ -72,8 +73,13 @@
 import com.android.contacts.common.logging.Logger;
 import com.android.contacts.common.logging.ScreenEvent;
 import com.android.contacts.common.model.AccountTypeManager;
+import com.android.contacts.common.model.account.AccountDisplayInfo;
+import com.android.contacts.common.model.account.AccountDisplayInfoFactory;
+import com.android.contacts.common.model.account.AccountType;
 import com.android.contacts.common.model.account.AccountWithDataSet;
+import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.AccountFilterUtil;
+import com.android.contacts.common.util.DeviceLocalAccountTypeFactory;
 import com.android.contacts.common.util.ImplicitIntentsUtil;
 import com.android.contacts.interactions.ContactDeletionInteraction;
 import com.android.contacts.interactions.ContactMultiDeletionInteraction;
@@ -83,6 +89,7 @@
 import com.android.contacts.util.SyncUtil;
 import com.android.contactsbind.experiments.Flags;
 import com.android.contactsbind.FeatureHighlightHelper;
+import com.android.contactsbind.ObjectFactory;
 
 import java.util.List;
 import java.util.Locale;
@@ -156,6 +163,7 @@
     private ContactsDrawerActivity mActivity;
     private ContactsRequest mContactsRequest;
     private ContactListFilterController mContactListFilterController;
+    private DeviceLocalAccountTypeFactory mDeviceLocalFactory;
 
     private final ActionBarAdapter.Listener mActionBarListener = new ActionBarAdapter.Listener() {
         @Override
@@ -449,13 +457,14 @@
         mIsRecreatedInstance = (savedState != null);
         mContactListFilterController = ContactListFilterController.getInstance(getContext());
         mContactListFilterController.checkFilterValidity(false);
-        // Use FILTER_TYPE_ALL_ACCOUNTS filter if the instance is not a re-created one.
-        // This is useful when user upgrades app while an account filter was
-        // stored in sharedPreference in a previous version of Contacts app.
-        final ContactListFilter filter = mIsRecreatedInstance
-                ? getFilter()
-                : AccountFilterUtil.createContactsFilter(getContext());
-        setContactListFilter(filter);
+        mDeviceLocalFactory = ObjectFactory.getDeviceLocalAccountTypeFactory(getContext());
+        if (!Flags.getInstance().getBoolean(Experiments.ACCOUNT_SWITCHER)
+                && !mIsRecreatedInstance) {
+            // Use FILTER_TYPE_ALL_ACCOUNTS filter if the instance is not a re-created one.
+            // This is useful when user upgrades app while an account filter was
+            // stored in sharedPreference in a previous version of Contacts app.
+            setContactListFilter(AccountFilterUtil.createContactsFilter(getContext()));
+        }
     }
 
     @Override
@@ -951,7 +960,7 @@
      */
     private void setContactListFilter(ContactListFilter filter) {
         mContactListFilterController.setContactListFilter(filter,
-                /* persistent */ isAllContactsFilter(filter));
+                AccountFilterUtil.shouldPersistFilter(filter));
     }
 
     @Override
