diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
new file mode 100644
index 0000000..2673862
--- /dev/null
+++ b/res/values-af/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Programinligting"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Toeganklikheid"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fisieke sleutelbord"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Bestuur sleutelborde"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Instellingsvoorstelle"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Vee geskiedenis uit"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Geen resultate nie"</string>
+</resources>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
new file mode 100644
index 0000000..247603a
--- /dev/null
+++ b/res/values-am/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"የመተግበሪያ መረጃ"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ተደራሽነት"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"አካላዊ ቁልፍ ሰሌዳ"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"የቁልፍ ሰሌዳዎችን አቀናብር"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"የቅንብሮች አስተያየት ጥቆማ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ታሪክን አጽዳ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ምንም ውጤቶች የሉም"</string>
+</resources>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
new file mode 100644
index 0000000..f2db24e
--- /dev/null
+++ b/res/values-ar/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"معلومات التطبيق"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"تسهيل الاستخدام"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"لوحة المفاتيح الخارجية"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"إدارة لوحات المفاتيح"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"تطبيق Settings Suggestions"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"محو السجلّ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ما مِن نتائج."</string>
+</resources>
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
new file mode 100644
index 0000000..25d2ba7
--- /dev/null
+++ b/res/values-as/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"এপৰ তথ্য"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"সাধ্য সুবিধা"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"কায়িক কীব’ৰ্ড"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"কীব’ৰ্ড পৰিচালনা কৰক"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ছেটিঙৰ পৰামৰ্শ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ইতিহাস মচক"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"কোনো ফলাফল নাই"</string>
+</resources>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
new file mode 100644
index 0000000..b66bd62
--- /dev/null
+++ b/res/values-az/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Tətbiq haqqında"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Əlçatımlılıq"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fiziki klaviatura"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Klaviaturaları idarə edin"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Ayar Təklifi"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Tarixçəni silin"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nəticə yoxdur"</string>
+</resources>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..d95dda6
--- /dev/null
+++ b/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informacije o aplikaciji"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Pristupačnost"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fizička tastatura"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Upravljajte tastaturama"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Predlozi za podešavanja"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Obriši istoriju"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nema rezultata"</string>
+</resources>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
new file mode 100644
index 0000000..db9af8b
--- /dev/null
+++ b/res/values-be/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Інфармацыя пра праграму"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Спецыяльныя магчымасці"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Фізічная клавіятура"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Кіраваць клавіятурамі"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Прапановы налад"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Ачысціць гісторыю"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Вынікаў няма"</string>
+</resources>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
new file mode 100644
index 0000000..ef91ddf
--- /dev/null
+++ b/res/values-bg/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Информация за приложенията"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Достъпност"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Физическа клавиатура"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Управление на клавиатурите"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Предложения за настройки"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Изчистване на историята"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Няма резултати"</string>
+</resources>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
new file mode 100644
index 0000000..98e4d5e
--- /dev/null
+++ b/res/values-bn/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"অ্যাপ সংক্রান্ত তথ্য"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"অ্যাক্সেসিবিলিটি"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ফিজিক্যাল কীবোর্ড"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"কীবোর্ড ম্যানেজ করুন"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"সেটিংস সংক্রান্ত সাজেশন"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ইতিহাস মুছুন"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"কোন ফলাফল নেই"</string>
+</resources>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
new file mode 100644
index 0000000..13a66ea
--- /dev/null
+++ b/res/values-bs/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informacije o aplikaciji"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Pristupačnost"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fizička tastatura"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Upravljajte tastaturama"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Prijedlozi postavki"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Obriši historiju"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nema rezultata"</string>
+</resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
new file mode 100644
index 0000000..7b1a2aa
--- /dev/null
+++ b/res/values-ca/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informació de les aplicacions"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibilitat"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Teclat físic"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gestiona els teclats"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Suggeriments de configuració"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Esborra l\'historial"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"No hi ha cap resultat"</string>
+</resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
new file mode 100644
index 0000000..64a4f1d
--- /dev/null
+++ b/res/values-cs/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informace o aplikaci"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Přístupnost"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fyzická klávesnice"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Spravovat klávesnice"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Návrhy nastavení"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Vymazání historie"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Žádné výsledky"</string>
+</resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
new file mode 100644
index 0000000..6c2dbcc
--- /dev/null
+++ b/res/values-da/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Appinfo"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Hjælpefunktioner"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fysisk tastatur"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Administrer tastaturer"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Forslag til indstillinger"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Ryd historik"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Ingen resultater"</string>
+</resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
new file mode 100644
index 0000000..5add710
--- /dev/null
+++ b/res/values-de/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"App-Info"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Bedienungshilfen"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Physische Tastatur"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Tastaturen verwalten"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Einstellungsempfehlungen"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Verlauf löschen"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Keine Ergebnisse"</string>
+</resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
new file mode 100644
index 0000000..940feb8
--- /dev/null
+++ b/res/values-el/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Πληροφορίες εφαρμογής"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Προσβασιμότητα"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Φυσικό πληκτρολόγιο"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Διαχείριση πληκτρολογίων"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Προτάσεις ρυθμίσεων"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Διαγραφή ιστορικού"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Κανένα αποτέλεσμα"</string>
+</resources>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
new file mode 100644
index 0000000..54f3bc6
--- /dev/null
+++ b/res/values-en-rAU/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"App info"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibility"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Physical keyboard"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Manage keyboards"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Settings suggestions"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Clear history"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"No results"</string>
+</resources>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
new file mode 100644
index 0000000..54f3bc6
--- /dev/null
+++ b/res/values-en-rCA/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"App info"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibility"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Physical keyboard"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Manage keyboards"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Settings suggestions"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Clear history"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"No results"</string>
+</resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000..54f3bc6
--- /dev/null
+++ b/res/values-en-rGB/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"App info"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibility"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Physical keyboard"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Manage keyboards"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Settings suggestions"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Clear history"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"No results"</string>
+</resources>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
new file mode 100644
index 0000000..54f3bc6
--- /dev/null
+++ b/res/values-en-rIN/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"App info"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibility"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Physical keyboard"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Manage keyboards"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Settings suggestions"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Clear history"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"No results"</string>
+</resources>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
new file mode 100644
index 0000000..316095d
--- /dev/null
+++ b/res/values-en-rXC/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‏‎‏‎‏‏‏‏‏‏‎‏‎‏‎‏‎‏‎‎‎‏‎‎‏‎‏‏‎‏‏‎‎‎‏‎‎‎‎‏‎‎‏‎‏‏‏‎‎‏‎‏‏‎‎‎‎‎‎‎‏‎‏‎‎App info‎‏‎‎‏‎"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‎‎‏‏‎‏‏‎‎‎‎‎‏‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‏‎‎‏‎‎‏‎‏‏‏‏‎‏‏‎‏‏‎‏‏‏‏‏‏‎‏‏‎‏‎‏‎‏‎com.android.settings.accessibility.AccessibilitySettings‎‏‎‎‏‎"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‎‏‏‎‏‎‎‏‎‏‎‏‎‎‏‏‏‏‏‏‎‏‏‏‏‎‏‎‎‏‎‎‎‏‏‎‎‎‏‏‏‎‏‏‎‎‎‎‎‏‎‎‏‏‎‏‎‎‎‎‏‎‎‎Accessibility‎‏‎‎‏‎"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‏‎‏‏‎‏‏‎‏‏‏‎‎‎‏‏‎‎‏‏‏‏‎‏‎‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‎‎‎‎‏‏‏‎‎‎‎‎‏‎‎‏‎‏‎‏‎‎‎‎Physical keyboard‎‏‎‎‏‎"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‎‏‏‏‏‏‏‎‎‎‏‎‎‎‎‎‎‏‎‎‏‎‎‎‏‎‎‎‏‎‎‎‎‏‏‏‎‎‏‏‏‏‎‎‎‏‏‎‏‎‏‏‏‏‎‎‎‏‏‎‏‏‎Manage keyboards‎‏‎‎‏‎"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‏‏‏‏‏‏‎‎‎‏‏‎‎‎‎‏‎‏‏‎‎‎‏‏‎‎‏‎‏‎‏‎‏‎‏‏‏‎‎‏‏‏‎‎‎‎‏‏‏‏‎‏‏‎‎‎‎‎‎‎‎‏‏‎‏‎Settings Suggestions‎‏‎‎‏‎"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‏‏‏‎‏‎‏‏‎‎‏‏‏‏‏‎‎‏‏‏‎‏‏‎‏‎‎‎‏‏‏‏‎‎‏‎‏‎‏‏‏‎‎‎‏‏‎‏‎‎‏‎‎‏‏‏‎‏‎‏‏‏‏‏‏‎Clear history‎‏‎‎‏‎"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‏‎‎‎‏‎‎‏‎‏‏‏‏‏‏‏‎‏‏‏‏‏‎‎‏‎‎‎‏‎‎‎‏‏‎‎‎‏‎‏‏‏‎‎‎‏‎‏‎‎‏‎‏‏‎‏‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‎‏‏‎‏‏‎No results‎‏‎‎‏‎"</string>
+</resources>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
new file mode 100644
index 0000000..8d9bf4b
--- /dev/null
+++ b/res/values-es-rUS/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Información de apps"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accesibilidad"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Teclado físico"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Administrar teclados"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Sugerencias de Configuración"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Borrar historial"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Sin resultados"</string>
+</resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
new file mode 100644
index 0000000..71a9d7d
--- /dev/null
+++ b/res/values-es/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Información de las aplicaciones"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accesibilidad"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Teclado físico"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gestionar teclados"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Sugerencias de ajustes"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Borrar historial"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Sin resultados"</string>
+</resources>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
new file mode 100644
index 0000000..fc3aff4
--- /dev/null
+++ b/res/values-et/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Rakenduse teave"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Juurdepääsetavus"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Füüsiline klaviatuur"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Klaviatuuride haldamine"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Seadete soovitused"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Kustuta ajalugu"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Tulemusi pole"</string>
+</resources>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
new file mode 100644
index 0000000..c41b45f
--- /dev/null
+++ b/res/values-eu/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Aplikazioen informazioa"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Erabilerraztasuna"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Teklatu fisikoa"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Kudeatu teklatuak"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Iradokitako ezarpenak"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Garbitu historia"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Ez dago emaitzarik"</string>
+</resources>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
new file mode 100644
index 0000000..69bf86b
--- /dev/null
+++ b/res/values-fa/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"اطلاعات برنامه"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"دسترس‌پذیری"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"صفحه‌کلید فیزیکی"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"مدیریت صفحه‌کلیدها"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"پیشنهادهای تنظیمات"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"پاک کردن سابقه"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"نتیجه‌ای پیدا نشد"</string>
+</resources>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
new file mode 100644
index 0000000..aa21ed9
--- /dev/null
+++ b/res/values-fi/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Sovelluksen tiedot"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Esteettömyys"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fyysinen näppäimistö"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Muuta näppäimistöasetuksia"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Asetusehdotukset"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Tyhjennä historia"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Ei tuloksia"</string>
+</resources>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
new file mode 100644
index 0000000..80253db
--- /dev/null
+++ b/res/values-fr-rCA/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Détails de l\'application"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibilité"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Clavier physique"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gérer les claviers"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Suggestions de paramètres"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Effacer l\'historique"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Aucun résultat"</string>
+</resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
new file mode 100644
index 0000000..8fe1b91
--- /dev/null
+++ b/res/values-fr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informations sur les applications"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibilité"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Clavier physique"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gérer les claviers"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Suggestions de paramètres"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Effacer l\'historique"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Aucun résultat"</string>
+</resources>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
new file mode 100644
index 0000000..b681253
--- /dev/null
+++ b/res/values-gl/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Información da aplicación"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accesibilidade"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Teclado físico"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Xestionar teclados"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Suxestións de configuración"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Borrar historial"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Sen resultados"</string>
+</resources>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
new file mode 100644
index 0000000..4dc2244
--- /dev/null
+++ b/res/values-gu/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ઍપની માહિતી"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ઍક્સેસિબિલિટી"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ભૌતિક કીબોર્ડ"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"કીબોર્ડ મેનેજ કરો"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"સેટિંગના સૂચનો"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ઇતિહાસ સાફ કરો"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"કોઈ પરિણામ નથી"</string>
+</resources>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
new file mode 100644
index 0000000..634f7ff
--- /dev/null
+++ b/res/values-hi/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ऐप्लिकेशन की जानकारी"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"सुलभता"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"सामान्य कीबोर्ड"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"कीबोर्ड मैनेज करें"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"सेटिंग से जुड़े सुझाव"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"इतिहास मिटाएं"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"कोई नतीजा नहीं मिला"</string>
+</resources>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
new file mode 100644
index 0000000..118c445
--- /dev/null
+++ b/res/values-hr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informacije o aplikaciji"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Pristupačnost"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fizička tipkovnica"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Upravljanje tipkovnicama"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Prijedlozi za postavke"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Izbriši povijest"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nema rezultata"</string>
+</resources>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
new file mode 100644
index 0000000..6b3a213
--- /dev/null
+++ b/res/values-hu/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Alkalmazásadatok"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Kisegítő lehetőségek"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fizikai billentyűzet"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Billentyűzetek kezelése"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Beállítási javaslatok"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Előzmények törlése"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nincs találat"</string>
+</resources>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
new file mode 100644
index 0000000..3a476f4
--- /dev/null
+++ b/res/values-hy/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Հավելվածի մասին"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Հատուկ գործառույթներ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Ֆիզիկական ստեղնաշար"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Կառավարել ստեղնաշարերը"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Առաջարկվող կարգավորումներ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Ջնջել պատմությունը"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Ոչինչ չի գտնվել"</string>
+</resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
new file mode 100644
index 0000000..a4656b6
--- /dev/null
+++ b/res/values-in/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Info aplikasi"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Aksesibilitas"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Keyboard fisik"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Kelola keyboard"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Saran Setelan"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Hapus histori"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Tidak ada hasil"</string>
+</resources>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
new file mode 100644
index 0000000..a0d361b
--- /dev/null
+++ b/res/values-is/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Upplýsingar um forrit"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Aðgengi"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Vélbúnaðarlyklaborð"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Stjórna lyklaborðum"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Stillingatillögur"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Hreinsa feril"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Engar niðurstöður"</string>
+</resources>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
new file mode 100644
index 0000000..3ca46f1
--- /dev/null
+++ b/res/values-it/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informazioni app"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibilità"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Tastiera fisica"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gestisci tastiere"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Suggerimenti per impostazioni"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Cancella cronologia"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nessun risultato"</string>
+</resources>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
new file mode 100644
index 0000000..6927d93
--- /dev/null
+++ b/res/values-iw/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"פרטי האפליקציה"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"נגישות"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"מקלדת פיזית"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"ניהול המקלדות"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"הצעות להגדרות"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ניקוי ההיסטוריה"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"אין תוצאות"</string>
+</resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
new file mode 100644
index 0000000..8039dec
--- /dev/null
+++ b/res/values-ja/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"アプリ情報"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ユーザー補助"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"物理キーボード"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"キーボードの管理"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"推奨設定"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"履歴を削除"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"結果がありません"</string>
+</resources>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
new file mode 100644
index 0000000..1e229c6
--- /dev/null
+++ b/res/values-ka/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"აპის ინფო"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"მარტივი წვდომა"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ფიზიკური კლავიატურა"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"კლავიატურების მართვა"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"პარამეტრების შემოთავაზება"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ისტორიის გასუფთავება"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"შედეგები არ არის"</string>
+</resources>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
new file mode 100644
index 0000000..1e89294
--- /dev/null
+++ b/res/values-kk/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Қолданба туралы ақпарат"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Арнайы мүмкіндіктер"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Физикалық пернетақта"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Пернетақталарды басқару"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Settings Suggestions"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Тарихты өшіру"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Нәтижелер жоқ"</string>
+</resources>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
new file mode 100644
index 0000000..7503c03
--- /dev/null
+++ b/res/values-km/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ព័ត៌មានកម្មវិធី"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ភាពងាយស្រួល"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ក្ដារចុច​រូបវន្ត"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"គ្រប់គ្រងក្តារចុច"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ការណែនាំ​អំពីការ​កំណត់"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"សម្អាត​ប្រវត្តិ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"គ្មានលទ្ធផលទេ"</string>
+</resources>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
new file mode 100644
index 0000000..6e32a6a
--- /dev/null
+++ b/res/values-kn/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ಆ್ಯಪ್ ಮಾಹಿತಿ"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ಪ್ರವೇಶಿಸುವಿಕೆ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ಭೌತಿಕ ಕೀಬೋರ್ಡ್"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"ಕೀಬೋರ್ಡ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಿ"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ಸೆಟ್ಟಿಂಗ್‌ಗಳ ಸೂಚನೆಗಳು"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ಇತಿಹಾಸ ತೆರವುಗೊಳಿಸಿ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ಯಾವುದೇ ಫಲಿತಾಂಶಗಳಿಲ್ಲ"</string>
+</resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
new file mode 100644
index 0000000..3b86252
--- /dev/null
+++ b/res/values-ko/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"앱 정보"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"접근성"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"물리적 키보드"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"키보드 관리"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"설정 추천"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"기록 삭제"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"결과 없음"</string>
+</resources>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
new file mode 100644
index 0000000..89cf318
--- /dev/null
+++ b/res/values-ky/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Колдонмо тууралуу"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Атайын мүмкүнчүлүктөр"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Аппараттык баскычтоп"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Баскычтопторду башкаруу"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Жөндөөлөрдү сунуштоо"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Таржымалды тазалоо"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Бир да натыйжа жок"</string>
+</resources>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
new file mode 100644
index 0000000..b209564
--- /dev/null
+++ b/res/values-lo/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ຂໍ້ມູນແອັບ"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ການຊ່ວຍເຂົ້າເຖິງ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ແປ້ນພິມແທ້"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"ຈັດການແປ້ນພິມ"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ການແນະນຳການຕັ້ງຄ່າ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ລຶບລ້າງປະຫວັດ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ບໍ່ມີຜົນການຊອກຫາ"</string>
+</resources>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
new file mode 100644
index 0000000..9f543eb
--- /dev/null
+++ b/res/values-lt/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Programos informacija"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Pritaikomumas"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fizinė klaviatūra"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Tvarkyti klaviatūras"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Nustatymų pasiūlymai"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Išvalyti istoriją"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nėra jokių rezultatų"</string>
+</resources>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
new file mode 100644
index 0000000..b5b1816
--- /dev/null
+++ b/res/values-lv/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informācija par lietotnēm"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Pieejamība"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fiziskā tastatūra"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Pārvaldīt tastatūras"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Iestatījumu ieteikumi"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Notīrīt vēsturi"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nav rezultātu"</string>
+</resources>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
new file mode 100644
index 0000000..46847e0
--- /dev/null
+++ b/res/values-mk/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Податоци за апликациите"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Пристапност"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Физичка тастатура"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Управувајте со тастатурите"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Предлози за поставки"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Избришете ја историјата"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Нема резултати"</string>
+</resources>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
new file mode 100644
index 0000000..54e7c34
--- /dev/null
+++ b/res/values-ml/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ആപ്പ് വിവരങ്ങൾ"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ഉപയോഗസഹായി"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ഫിസിക്കൽ കീബോഡ്"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"കീബോഡുകൾ മാനേജ് ചെയ്യുക"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ക്രമീകരണ നിർദ്ദേശങ്ങൾ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ചരിത്രം മായ്‌ക്കുക"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ഫലങ്ങളൊന്നുമില്ല"</string>
+</resources>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
new file mode 100644
index 0000000..38627d8
--- /dev/null
+++ b/res/values-mn/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Аппын мэдээлэл"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Хандалт"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Биет гар"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Гарыг удирдах"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Тохиргооны зөвлөмжүүд"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Түүхийг арилгах"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Илэрц алга"</string>
+</resources>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
new file mode 100644
index 0000000..18a22c3
--- /dev/null
+++ b/res/values-mr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"अ‍ॅप माहिती"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"अ‍ॅक्सेसिबिलिटी"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"वास्तविक कीबोर्ड"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"कीबोर्ड व्यवस्थापित करा"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"सेटिंग्‍ज सूचना"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"इतिहास साफ करा"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"कोणतेही परिणाम नाहीत"</string>
+</resources>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
new file mode 100644
index 0000000..5cbb067
--- /dev/null
+++ b/res/values-ms/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Maklumat apl"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Kebolehaksesan"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Papan kekunci fizikal"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Urus papan kekunci"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Cadangan Tetapan"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Kosongkan sejarah"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Tiada hasil"</string>
+</resources>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
new file mode 100644
index 0000000..a4f4cb7
--- /dev/null
+++ b/res/values-my/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"အက်ပ်အချက်အလက်များ"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"အများသုံးစွဲနိုင်မှု"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ကီးဘုတ် ခလုတ်ခုံ"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"ကီးဘုတ်များ စီမံခန့်ခွဲရန်"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ဆက်တင် အကြံပြုချက်များ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"မှတ်တမ်းကို ရှင်းလင်းရန်"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ရလဒ်များ မရှိပါ"</string>
+</resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
new file mode 100644
index 0000000..7c3023a
--- /dev/null
+++ b/res/values-nb/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"App-info"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Tilgjengelighet"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fysisk tastatur"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Administrer tastaturer"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Innstillingsforslag"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Tøm loggen"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Ingen resultater"</string>
+</resources>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
new file mode 100644
index 0000000..761d091
--- /dev/null
+++ b/res/values-ne/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"एपसम्बन्धी जानकारी"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"सर्वसुलभता"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"भौतिक किबोर्ड"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"किबोर्डहरूको व्यवस्थापन गर्नुहोस्"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"सेटिङसम्बन्धी सुझावहरू"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"इतिहास मेटाउनुहोस्"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"कुनै पनि परिणाम भेटिएन"</string>
+</resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
new file mode 100644
index 0000000..e054ba8
--- /dev/null
+++ b/res/values-nl/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"App-info"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Toegankelijkheid"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fysiek toetsenbord"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Toetsenborden beheren"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Suggesties voor instellingen"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Geschiedenis wissen"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Geen resultaten"</string>
+</resources>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
new file mode 100644
index 0000000..bcd8c22
--- /dev/null
+++ b/res/values-or/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ଆପ୍ ସୂଚନା"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ଆକ୍ସେସିବିଲିଟୀ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ଫିଜିକଲ୍ କୀବୋର୍ଡ"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"କୀବୋର୍ଡଗୁଡ଼ିକୁ ପରିଚାଳନା କରନ୍ତୁ"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ସେଟିଂସ ପରାମର୍ଶ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ଇତିହାସ ଖାଲି କରନ୍ତୁ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"କୌଣସି ଫଳାଫଳ ନାହିଁ"</string>
+</resources>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
new file mode 100644
index 0000000..302afcf
--- /dev/null
+++ b/res/values-pa/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ਐਪ ਜਾਣਕਾਰੀ"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ਪਹੁੰਚਯੋਗਤਾ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ਭੌਤਿਕ ਕੀ-ਬੋਰਡ"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"ਕੀ-ਬੋਰਡਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ਸੈਟਿੰਗਾਂ ਦੇ ਸੁਝਾਅ"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ਇਤਿਹਾਸ ਕਲੀਅਰ ਕਰੋ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ਕੋਈ ਨਤੀਜਾ ਨਹੀਂ"</string>
+</resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
new file mode 100644
index 0000000..ead417c
--- /dev/null
+++ b/res/values-pl/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"O aplikacji"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Ułatwienia dostępu"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Klawiatura fizyczna"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Zarządzaj klawiaturami"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Sugestie ustawień"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Wyczyść historię"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Brak wyników"</string>
+</resources>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
new file mode 100644
index 0000000..b91858f
--- /dev/null
+++ b/res/values-pt-rPT/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informações de apps"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Acessibilidade"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Teclado físico"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gerir teclados"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Sugestões de definições"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Limpar histórico"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nenhum resultado"</string>
+</resources>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
new file mode 100644
index 0000000..e975fd5
--- /dev/null
+++ b/res/values-pt/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informações do app"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Acessibilidade"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Teclado físico"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gerenciar teclados"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Configurações recomendadas"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Limpar o histórico"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Nenhum resultado"</string>
+</resources>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
new file mode 100644
index 0000000..61f1404
--- /dev/null
+++ b/res/values-ro/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informații despre aplicație"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accesibilitate"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Tastatură fizică"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Gestionați tastaturile"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Sugestii de setări"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Ștergeți istoricul"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Niciun rezultat"</string>
+</resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
new file mode 100644
index 0000000..a8565da
--- /dev/null
+++ b/res/values-ru/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Сведения о приложениях"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Специальные возможности"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Физическая клавиатура"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Управление клавиатурами"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Рекомендуемые настройки"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Очистить историю"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Результатов нет"</string>
+</resources>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
new file mode 100644
index 0000000..81cea6d
--- /dev/null
+++ b/res/values-si/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"යෙදුම් තතු"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ප්‍රවේශ්‍යතාව"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"භෞතික යතුරු පුවරුව"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"යතුරු පුවරු කළමනාකරණය කරන්න"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"සැකසීම් යෝජනා"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ඉතිහාසය හිස් කරන්න"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ප්‍රතිඵල නැත"</string>
+</resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
new file mode 100644
index 0000000..7b39b18
--- /dev/null
+++ b/res/values-sk/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informácie o aplikácii"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Dostupnosť"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fyzická klávesnica"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Spravovať klávesnice"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Návrhy nastavení"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Vymazať históriu"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Žiadne výsledky"</string>
+</resources>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
new file mode 100644
index 0000000..6fb1855
--- /dev/null
+++ b/res/values-sl/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Podatki o aplikacijah"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Funkcije za ljudi s posebnimi potrebami"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fizična tipkovnica"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Upravljanje tipkovnic"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Predlogi nastavitev"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Počisti zgodovino"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Ni rezultatov"</string>
+</resources>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
new file mode 100644
index 0000000..70d96a2
--- /dev/null
+++ b/res/values-sq/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Informacione mbi aplikacionin"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Qasshmëria"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Tastiera fizike"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Menaxho tastierat"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Sugjerimet e cilësimeve"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Pastro historikun"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Asnjë rezultat"</string>
+</resources>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
new file mode 100644
index 0000000..477d81c
--- /dev/null
+++ b/res/values-sr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Информације о апликацији"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Приступачност"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Физичка тастатура"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Управљајте тастатурама"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Предлози за подешавања"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Обриши историју"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Нема резултата"</string>
+</resources>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
new file mode 100644
index 0000000..b480621
--- /dev/null
+++ b/res/values-sv/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Appinformation"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Tillgänglighet"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fysiskt tangentbord"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Hantera tangentbord"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Inställningsförslag"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Rensa historik"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Inga resultat"</string>
+</resources>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
new file mode 100644
index 0000000..dff9512
--- /dev/null
+++ b/res/values-sw/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Maelezo ya programu"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Ufikivu"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Kibodi halisi"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Dhibiti kibodi"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Mapendekezo ya Mipangilio"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Futa historia"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Hakuna matokeo"</string>
+</resources>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
new file mode 100644
index 0000000..1ff858f
--- /dev/null
+++ b/res/values-ta/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ஆப்ஸ் தகவல்கள்"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"அணுகல்தன்மை"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"கீபோர்டு"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"கீபோர்டுகளை நிர்வகியுங்கள்"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Settings Suggestions"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"இதுவரை தேடியவற்றை அழி"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"முடிவுகள் இல்லை"</string>
+</resources>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
new file mode 100644
index 0000000..61215c7
--- /dev/null
+++ b/res/values-te/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"యాప్ సమాచారం"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"యాక్సెసిబిలిటీ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"ఫిజికల్ కీబోర్డ్"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"కీబోర్డ్‌లను మేనేజ్ చేయండి"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"సెట్టింగ్‌ల సూచనలు"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"హిస్టరీని క్లియర్ చేయండి"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ఫలితాలు ఏవీ లేవు"</string>
+</resources>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
new file mode 100644
index 0000000..964cb05
--- /dev/null
+++ b/res/values-th/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ข้อมูลแอป"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"การช่วยเหลือพิเศษ"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"แป้นพิมพ์จริง"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"จัดการแป้นพิมพ์"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"คำแนะนำการตั้งค่า"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"ล้างประวัติ"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"ไม่มีผลการค้นหา"</string>
+</resources>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
new file mode 100644
index 0000000..f08e41a
--- /dev/null
+++ b/res/values-tl/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Impormasyon ng app"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Accessibility"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Pisikal na keyboard"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Pamahalaan ang mga keyboard"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Mga Suhestyon sa Mga Setting"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"I-clear ang history"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Walang resulta"</string>
+</resources>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
new file mode 100644
index 0000000..2ff16cb
--- /dev/null
+++ b/res/values-tr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Uygulama bilgileri"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Erişilebilirlik"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Fiziksel klavye"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Klavyeleri yönet"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Ayar Önerileri"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Geçmişi temizle"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Sonuç yok"</string>
+</resources>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
new file mode 100644
index 0000000..6793b3a
--- /dev/null
+++ b/res/values-uk/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Про додаток"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Спеціальні можливості"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Фізична клавіатура"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Керувати клавіатурами"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Пропозиції налаштувань"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Очистити історію"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Немає результатів"</string>
+</resources>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
new file mode 100644
index 0000000..1a18d34
--- /dev/null
+++ b/res/values-ur/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"ایپ کی معلومات"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"ایکسیسبیلٹی"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"فزیکل کی بورڈ"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"کی بورڈز کا نظم کریں"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"ترتیبات کی تجاویز"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"سرگزشت صاف کریں"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"کوئی نتیجہ نہیں"</string>
+</resources>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
new file mode 100644
index 0000000..4cb53a0
--- /dev/null
+++ b/res/values-uz/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Ilova haqida"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Maxsus imkoniyatlar"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Tashqi klaviatura"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Klaviaturalarni boshqarish"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Tavsiya etiladigan sozlamalar"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Tarixni tozalash"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Hech narsa topilmadi"</string>
+</resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
new file mode 100644
index 0000000..2ee2948
--- /dev/null
+++ b/res/values-vi/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Thông tin ứng dụng"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Hỗ trợ tiếp cận"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Bàn phím thực"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Quản lý bàn phím"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Đề xuất tùy chọn cài đặt"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Xóa nhật ký"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Không có kết quả nào"</string>
+</resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..65a8284
--- /dev/null
+++ b/res/values-zh-rCN/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"应用信息"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"无障碍"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"实体键盘"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"管理键盘"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"设置建议"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"清除历史记录"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"没有结果"</string>
+</resources>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
new file mode 100644
index 0000000..46adc2f
--- /dev/null
+++ b/res/values-zh-rHK/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"應用程式資料"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"無障礙功能"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"實體鍵盤"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"管理鍵盤"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"設定建議"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"清除記錄"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"沒有結果"</string>
+</resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..49feb5d
--- /dev/null
+++ b/res/values-zh-rTW/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"應用程式資訊"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"無障礙設定"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"實體鍵盤"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"管理鍵盤"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"設定建議"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"清除記錄"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"沒有相符的結果"</string>
+</resources>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
new file mode 100644
index 0000000..6d87083
--- /dev/null
+++ b/res/values-zu/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  Copyright (C) 2017 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.
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="applications_settings" msgid="3446736638853404682">"Ulwazi lohlelo lokusebenza"</string>
+    <string name="accessibility_settings_classname" msgid="973410590374198997">"com.android.settings.accessibility.AccessibilitySettings"</string>
+    <string name="accessibility_settings" msgid="1488998032020612740">"Ukufinyeleleka"</string>
+    <string name="physical_keyboard_title" msgid="3955072245281785000">"Ikhibhodi ephathekayo"</string>
+    <string name="add_virtual_keyboard" msgid="542703692821933851">"Phatha amakhibhodi"</string>
+    <string name="app_name_settings_intelligence" msgid="8701735500346011661">"Iziphakamiso Zamasethingi"</string>
+    <string name="search_clear_history" msgid="6232116698940067519">"Sula umlando"</string>
+    <string name="search_no_results" msgid="6855095945475439835">"Akukho miphumela"</string>
+</resources>
