diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index c2f88c5..ce774d8 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -65,6 +65,7 @@
     <protected-broadcast android:name= "com.android.internal.telephony.CARRIER_SIGNAL_PCO_VALUE" />
     <protected-broadcast android:name= "com.android.internal.telephony.CARRIER_SIGNAL_RESET" />
     <protected-broadcast android:name= "com.android.internal.telephony.CARRIER_SIGNAL_DEFAULT_NETWORK_AVAILABLE" />
+    <protected-broadcast android:name= "com.android.internal.telephony.ACTION_LINE1_NUMBER_ERROR_DETECTED" />
     <protected-broadcast android:name= "com.android.internal.provider.action.VOICEMAIL_SMS_RECEIVED" />
     <protected-broadcast android:name= "com.android.intent.isim_refresh" />
     <protected-broadcast android:name= "com.android.ims.ACTION_RCS_SERVICE_AVAILABLE" />
@@ -90,6 +91,7 @@
     <protected-broadcast android:name= "android.telephony.action.SIM_APPLICATION_STATE_CHANGED" />
     <protected-broadcast android:name= "android.telephony.action.SIM_SLOT_STATUS_CHANGED" />
     <protected-broadcast android:name= "android.telephony.action.SUBSCRIPTION_CARRIER_IDENTITY_CHANGED" />
+    <protected-broadcast android:name= "android.telephony.action.SUBSCRIPTION_PRECISE_CARRIER_IDENTITY_CHANGED" />
 
     <uses-permission android:name="android.permission.BROADCAST_STICKY" />
     <uses-permission android:name="android.permission.CALL_PHONE" />
diff --git a/assets/eri_311220.xml b/assets/eri_311220.xml
new file mode 100644
index 0000000..f32bc4e
--- /dev/null
+++ b/assets/eri_311220.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** 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.
+*/
+-->
+
+<!-- Note that IconMode can be only 0, ON or 1, FLASHING
+     The icon is turned OFF if then IconIndex = 1 -->
+
+<EriFile VersionNumber="1"
+         NumberOfEriEntries="3"
+         EriFileType="2">
+
+         <CallPromptId Id="0"
+                       CallPromptText="CallPromptId0"/>
+
+         <CallPromptId Id="1"
+                       CallPromptText="CallPromptId1"/>
+
+         <CallPromptId Id="2"
+                       CallPromptText="CallPromptId2"/>
+
+         <EriInfo RoamingIndicator="0"
+                  IconIndex="0"
+                  IconMode="0"
+                  EriText="Extended"
+                  CallPromptId="0"
+                  AlertId="0"
+                  DataServiceSupport="1"/>
+
+         <EriInfo RoamingIndicator="1"
+                  IconIndex="1"
+                  IconMode="0"
+                  EriText="Extended"
+                  CallPromptId="0"
+                  AlertId="0"
+                  DataServiceSupport="1"/>
+
+         <EriInfo RoamingIndicator="2"
+                  IconIndex="2"
+                  IconMode="1"
+                  EriText="Extended"
+                  CallPromptId="0"
+                  AlertId="0"
+                  DataServiceSupport="1"/>
+
+</EriFile>
diff --git a/ecc/input/eccdata.txt b/ecc/input/eccdata.txt
index 54be16b..403cad7 100644
--- a/ecc/input/eccdata.txt
+++ b/ecc/input/eccdata.txt
@@ -808,7 +808,7 @@
 countries {
   iso_code: "GB"
   eccs {
-    phone_number: "112"
+    phone_number: "999"
     types: POLICE
     types: AMBULANCE
     types: FIRE
diff --git a/ecc/output/eccdata b/ecc/output/eccdata
index 2d0165a..679bc36 100644
--- a/ecc/output/eccdata
+++ b/ecc/output/eccdata
Binary files differ
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index c8a463c..7b14c16 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Verbeterde 4G LTE-modus"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Gebruik LTE-dienste om stem- en ander kommunikasie te verbeter (aanbeveel)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Gebruik 4G-dienste om stem- en ander kommunikasie te verbeter (aanbeveel)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data geaktiveer"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Laat datagebruik toe"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Aandag"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Aangestuurde oproep."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Sluit tans by konferensieoproep aan."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Oproep wat aangehou is, is weer aktief."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Kan nie \'n oproep maak nie, aangesien die toestel tans opgestel word."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Kan nie \'n oproep maak nie, aangesien \'n ander uitgaande oproep reeds besig is om te skakel."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Kan nie \'n oproep maak nie, aangesien daar \'n onbeantwoorde inkomende oproep is. Beantwoord of weier die inkomende oproep voordat jy \'n nuwe oproep plaas."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Kan nie \'n oproep maak nie, aangesien oproepmaking gedeaktiveer is deur die ro.telephony.disable-belstelseleienskap te gebruik."</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 8808a1a..bac323b 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"የተሻሻለ የ4ጂ LTE ሁነታ"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"የድምፅ እና ሌሎች የመልዕክት ልውውጦችን ለማሻሻል LTE አገልግሎቶችን ይጠቀሙ (የሚመከር)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"የድምፅ እና ሌሎች ግንኙነቶችን ለማሻሻል 4G አገልግሎቶችን ይጠቀሙ (የሚመከር)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ውሂብ ነቅቷል"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"የውሂብ አጠቃቀም ፍቀድ"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ትኩረት"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"የተላለፈ ጥሪ።"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"የጉባዔ ጥሪን በመቀላቀል ላይ።"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"የተያዘ ጥሪ ተለቅቋል።"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"መሳሪያው አሁን እየቀረበ በመሆኑ ጥሪ ማድረግ አይቻልም።"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ሊላ ወጪ ጥሪ እየደወለ ስለሆነ ጥሪ ማድረግ አይቻልም።"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ያልተመለሰ ገቢ ጥሪ ስላለ ጥሪ ማድረግ አይቻልም። አዲስ ጥሪ ከማድረግዎ በፊት ገቢውን ጥሪ ይመልሱ ወይም ይዝጉ።"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ጥሪ ማድረግ አይቻልም ምክንያቱም ጥሪ ማድረግ በ ro.telephony.disable-call የስርዓት ባህሪ ተሰናክልሏል።"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 09294a1..013863b 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"‏وضع 4G LTE المحسّن"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"‏استخدام خدمات LTE لتحسين الصوت والاتصالات الأخرى (مستحسن)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"‏استخدام خدمات 4G لتحسين الصوت والاتصالات الأخرى (مُستحسَن)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"تم تفعيل البيانات"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"السماح باستخدام البيانات"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"تنبيه"</string>
@@ -770,6 +774,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"تمت إعادة توجيه المكالمة."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"الانضمام إلى مكالمة جماعية."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"تم إلغاء تعليق المكالمة المعلقة."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"لا يمكن إجراء مكالمة لأنّنا نتحقَّق حاليًا من إمكانية عمل الخدمة على جهازك."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"لا يمكن إجراء مكالمة لأنّ هناك مكالمة صادرة أخرى تجري بالفعل."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"لا يمكن إجراء مكالمة لأنّ هناك مكالمة واردة لم يتم الرد عليها. يُرجى الرد على المكالمة الواردة أو رفضها قبل إجراء مكالمة جديدة."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"‏لا يمكن إجراء مكالمة لأنّه قد تم إيقاف وظيفة الاتصال باستخدام ميزة النظام ro.telephony.disable-call."</string>
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index fe122b8..bd7b086 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"পৰিৱৰ্ধিত 4G এলটিই ম’ড"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ধ্বনি আৰু অইন যোগাযোগ উন্নত কৰিবলৈ এলটিই সেৱা ব্যৱহাৰ কৰক (অনুমোদিত)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ভইচ কল আৰু অন্য যোগাযোগৰ সুবিধাসমূহ উন্নত কৰিবলৈ 4G সেৱাসমূহ ব্যৱহাৰ কৰক (চুপাৰিছ কৰা)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ডেটা সক্ষম কৰা হ\'ল"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ডেটাৰ ব্যৱহাৰৰ অনুমতি দিয়ক"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"মন কৰিব"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ফৰৱাৰ্ড কৰা কল।"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"কনফাৰেঞ্চ কলত অংশ গ্ৰহণ কৰিবলৈ লোৱা হৈছে।"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"হ\'ল্ড কৰি থোৱা কলটো মুকলি কৰি দিয়া হ\'ল।"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ডিভাইচটোত বৰ্তমান তৃতীয় পক্ষৰ পৰিচালনাৰ সুবিধা সক্ষম থকাৰ বাবে কল কৰিব নোৱাৰি।"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"অইন এটা বহিৰ্গামী কল ডায়েল কৰি থকাৰ কাৰণে বেলেগ কল কৰিব নোৱাৰি।"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"বেলেগ কল কৰিব নোৱাৰি, কাৰণ এটা অন্তৰ্গামী কল এতিয়াও সক্ৰিয় হৈ আছে যাৰ উত্তৰ দিয়া হোৱা নাই। নতুন কল এটা কৰাৰ আগেয়ে সেই কলটোৰ উত্তৰ দিয়ক বা কলটো প্ৰত্যাখ্যান কৰক।"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"কোনো কল কৰিব নোৱাৰি কাৰণ ro.telephony.disable-call ছিষ্টেম প্ৰ’পাৰ্টি ব্যৱহাৰ কৰি কল কৰাৰ সুবিধা অক্ষম কৰা হৈছে।"</string>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index 7aec355..db6e9aa 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Təkmil 4G LTE Rejimi"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Səs və digər kommunikasiyaları təkmilləşdirmək üçün LTE xidmətlərindən istifadə edin (tövsiyə olunur)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Səs və digər kommunikasiyaları təkmilləşdirmək üçün 4G xidmətlərindən istifadə edin (tövsiyə olunur)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data aktivdir"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Data istifadəsinə icazə verin"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Diqqət"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Yönləndirilmiş zəng."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Konfrans zənginə qoşulursunuz."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Gözləmədə olan zəngin bağlantısı kəsildi."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Hazırda cihaz təmin edildiyindən zəng etmək mümkün deyil."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Başqa gedən zəngin nömrəsi yığıldığına görə zəng etmək mümkün deyil."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Cavabsız gələn zəng olduğuna görə zəng etmək mümkün deyil. Yeni zəng etməzdən əvvəl gələn zəngə cavab verin və ya imtina edin."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Zəng ro.telephony.disable-call sistem funksiyası ilə deaktiv edildiyinə görə zəng etmək mümkün deyil."</string>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 28447d0..a2b5dec 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Poboljšani 4G LTE režim"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Korišćenje LTE usluga za poboljšanje glasovnih i drugih komunikacija (preporučeno)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Koristi 4G usluge za poboljšanje glasovne i druge komunikacije (preporučeno)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Podaci su omogućeni"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Omogućavanje potrošnje podataka"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Pažnja"</string>
@@ -764,6 +768,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Prosleđen poziv."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Ulazite u konferencijski poziv."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Poziv više nije na čekanju."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Trenutno ne možete da uputite poziv zato što se uređaju dodeljuje usluga."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Ne možete da pozovete jer se već upućuje drugi odlazni poziv."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Ne možete da pozovete jer imate dolazni poziv na koji niste odgovorili. Odgovorite na dolazni poziv ili ga odbijte pre upućivanja novog poziva."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Ne možete da pozovete jer je pozivanje onemogućeno preko svojstva sistema ro.telephony.disable-call."</string>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index 2d303c0..458dce8 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Удасканалены рэжым 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Карыстайцеся службамі LTE, каб палепшыць галасавую і іншую сувязь (рэкаменд.)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Карыстайцеся службамі 4G, каб палепшыць галасавую і іншую сувязь (рэкамендавана)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Дадзеныя ўключаныя"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Дазволіць выкарыстанне даных"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Увага"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Пераадрасаваны выклік."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Ідзе далучэнне да канферэнц-выкліку."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Утрыманы выклік быў завершаны."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Немагчыма зрабіць выклік, паколькі зараз збіраецца інфармацыя аб забеспячэнні прылады."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Немагчыма зрабіць выклік, паколькі зараз ідзе выходны выклік."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Нельга зрабіць выклік, паколькі ёсць уваходны выклік без адказу. Адкажыце на ўваходны выклік або адхіліце яго, каб зрабіць новы."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Немагчыма зрабіць выклік, паколькі выклікі адключаны ў сістэмных наладах ro.telephony.disable-call."</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index fde8d45..59bc227 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Подобрен режим с 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Ползване на LTE услуги за подобряване на гласовите и др. комуникации (препоръч.)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Използване на 4G услуги за подобряване на гласовите и други комуникации (препоръчително)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Данните са активирани"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Разрешаване на преноса на данни"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Внимание"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Пренасочено обаждане."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Присъединявате се към конферентно обаждане."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Задържаното обаждане бе освободено."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Не може да се извърши обаждане, тъй като в момента устройството се обезпечава."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Не може да се извърши обаждане, тъй като в момента се набира друго изходящо обаждане."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Не може да се извърши обаждане, тъй като има неотговорено входящо обаждане. Отговорете му или го отхвърлете, преди да извършите ново обаждане."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Не може да се извърши обаждане, тъй като обажданията са деактивирани чрез системното свойство ro.telephony.disable-call."</string>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 35b431b..e1bc579 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"উন্নত 4G LTE মোড"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ভয়েস এবং অন্যান্য যোগাযোগব্যবস্থা উন্নত করতে LTE পরিষেবা ব্যবহার করুন (প্রস্তাবিত)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ভয়েস এবং অন্যান্য যোগাযোগ ব্যবস্থা (সাজেস্ট করা হয়েছে) আরও ভাল করতে 4G পরিষেবা ব্যবহার করুন"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ডেটা সক্ষম করা হয়েছে"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ডেটা ব্যবহারের অনুমতি দিন"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"খেয়াল করুন"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ফরওয়ার্ড করা কল।"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"কনফারেন্স কলে যোগ দেওয়া হচ্ছে।"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"হোল্ডে থাকা কলটি রিলিজ করা রয়েছে।"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"কল করা যাবে না কারণ ডিভাইসটি বর্তমানে প্রভিশনিং করা হচ্ছে।"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"আপনি আগেই আউটগোয়িং কল ডায়াল করেছেন তাই অন্য কল করা যাবে না।"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"কল করতে পারবেন না কারণ এমন একটি ইনকামিং কল আছে যার উত্তর দেওয়া হয়নি। নতুন কল করতে বর্তমান কলটির উত্তর দিন অথবা প্রত্যাখান করুন।"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"\'ro.telephony কল বন্ধ করা সিস্টেম প্রপার্টি\' ব্যবহার করে কল বন্ধ করা হয়েছে তাই কল করা যাবে না।"</string>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 7898b16..01cea66 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Poboljšani 4G LTE način rada"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Koristi LTE usluge za poboljšanje glasovne i drugih komunikacija (preporučeno)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Koristi 4G usluge za poboljšanje glasovne i drugih komunikacija (preporučeno)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Podaci su omogućeni"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Dozvoli korištenje podataka"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Pažnja"</string>
@@ -764,6 +768,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Poziv je proslijeđen."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Pridruživanje konferencijskom pozivu."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Čekanje poziva na čekanju je prekinuto."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Nije moguće uputiti poziv jer se usluge dodjeljuju uređaju."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nije moguće uputiti poziv zbog uspostavljanja drugog odlaznog poziva."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Nije moguće uputiti poziv zbog neodgovorenog dolaznog poziva. Odgovorite ili odbijte dolazni poziv prije upućivanja novog poziva."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Nije moguće uputiti poziv zbog onemogućenog pozivanja putem sistemske funkcije ro.telephony.disable-call."</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index b600e7d..f19ea37 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Mode 4G LTE millorat"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Utilitza els serveis LTE per millorar la veu i la comunicació (opció recomanada)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Utilitza els serveis 4G per millorar la veu i la comunicació (opció recomanada)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Dades activades"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Permet l\'ús de dades"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Atenció"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"S\'ha desviat la trucada."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"T\'estàs unint a la conferència."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"S\'ha desconnectat la trucada en espera."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"No es pot fer la trucada perquè s\'està duent a terme el proveïment del dispositiu."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"No es pot fer la trucada perquè ja hi ha una trucada sortint en curs."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"No es pot fer la trucada perquè hi ha una trucada entrant sense resposta. Respon-hi o rebutja-la abans de fer més trucades."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"No es pot fer la trucada perquè l\'opció de trucar s\'ha desactivat mitjançant la propietat del sistema ro.telephony.disable-call."</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 68dd7dd..e2b2ba1 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Vylepšený režim 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Používat ke zlepšení hlasové a další komunikace služby LTE (doporučeno)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Používat ke zlepšení hlasové a další komunikace služby 4G (doporučeno)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Dat. přenosy aktivovány"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Povolit používání dat"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Pozor"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Přesměrovaný hovor."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Připojování ke konferenčnímu hovoru."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Podržený hovor byl odpojen."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Nemůžete provést hovor, protože zařízení se právě zajišťuje."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nemůžete provést hovor, když už se jeden odchozí hovor vytáčí."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Nemůžete provést hovor, protože máte nepřijatý příchozí hovor. Přijměte nebo odmítněte příchozí hovor, než provedete nový."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Nemůžete provést hovor, protože volání bylo zakázáno systémovým příkazem ro.telephony.disable-call."</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index de4cdb8..02eecde 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Udvidet 4G LTE-tilstand"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Anvend LTE-tjenester til at forbedre tale og anden kommunikation (anbefalet)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Anvend 4G-tjenester til at forbedre tale og anden kommunikation (anbefalet)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data aktiveret"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Tillad dataforbrug"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Bemærk!"</string>
@@ -249,14 +253,14 @@
     <string name="roaming_warning" msgid="1603164667540144353">"Du kan risikere at skulle betale høje gebyrer."</string>
     <string name="roaming_check_price_warning" msgid="7497570906830902550">"Kontakt din netværksudbyder for at få oplyst priser."</string>
     <string name="roaming_alert_title" msgid="3654815360303826008">"Vil du tillade dataroaming?"</string>
-    <string name="data_usage_title" msgid="4042209259808900283">"Appens dataforbrug"</string>
+    <string name="data_usage_title" msgid="4042209259808900283">"Dataforbrug fra apps"</string>
     <string name="data_usage_template" msgid="8526428824844656364">"<xliff:g id="ID_1">%1$s</xliff:g> mobildata er brugt i perioden <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="advanced_options_title" msgid="8074895510265488035">"Avanceret"</string>
     <string name="carrier_settings_euicc" msgid="6714062862127226405">"Mobilselskab"</string>
     <string name="keywords_carrier_settings_euicc" msgid="6861505396475991277">"mobilselskab, esim, sim-kort, euicc, skift mobilselskab, tilføj mobilselskab"</string>
     <string name="carrier_settings_euicc_summary" msgid="5115001942761995457">"<xliff:g id="CARRIER_NAME">%1$s</xliff:g> – <xliff:g id="PHONE_NUMBER">%2$s</xliff:g>"</string>
     <string name="mobile_data_settings_title" msgid="4661165467914727157">"Mobildata"</string>
-    <string name="mobile_data_settings_summary" msgid="5087255915840576895">"Få adgang til data via mobilnetværk"</string>
+    <string name="mobile_data_settings_summary" msgid="5087255915840576895">"Brug data via mobilnetværk"</string>
     <string name="data_usage_disable_mobile" msgid="3577275288809667615">"Vil du deaktivere mobildata?"</string>
     <string name="sim_selection_required_pref" msgid="7049424902961844236">"Du har ikke valgt endnu"</string>
     <string name="sim_change_data_title" msgid="5332425991853799280">"Skift SIM-kortet til data?"</string>
@@ -511,7 +515,7 @@
     <string name="incall_error_supp_service_hold" msgid="7967020511232222078">"Opkald kan ikke sættes i venteposition."</string>
     <string name="incall_error_wfc_only_no_wireless_network" msgid="1782466780452640089">"Opret forbindelse til et trådløst netværk for at foretage et opkald."</string>
     <string name="incall_error_promote_wfc" msgid="106510757624022064">"Aktivér Wi-Fi-opkald for at foretage et opkald."</string>
-    <string name="emergency_information_hint" msgid="399011533038204351">"Oplysninger i nødsituationer"</string>
+    <string name="emergency_information_hint" msgid="399011533038204351">"Info til nødsituationer"</string>
     <string name="emergency_information_owner_hint" msgid="688331472291637149">"Ejer"</string>
     <string name="emergency_information_confirm_hint" msgid="4039012670779853030">"Tryk igen for at se oplysninger"</string>
     <string name="emergency_enable_radio_dialog_title" msgid="4627849966634578257">"Nødopkald"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Videresendt opkald."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Du deltager i konferenceopkaldet."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Det parkerede opkald er blevet frigivet."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Opkaldet kan ikke foretages, fordi enheden pt. provisioneres."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Der kan ikke foretages et opkald, fordi et udgående opkald allerede ringer."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Der kan ikke foretages et opkald, fordi et indgående opkald ringer. Besvar eller afvis det indgående opkald, før du foretager et nyt opkald."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Der kan ikke foretages et opkald, fordi foretagelse af opkald er blevet deaktiveret ved hjælp af systemegenskaben ro.telephony.disable-call."</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 53c5263..17fb0b3 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Erweiterter 4G LTE-Modus"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Zur Verbesserung von Sprache und Kommunikation LTE-Dienste verwenden (empfohlen)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Zur Verbesserung von Sprache und Kommunikation 4G-Dienste verwenden (empfohlen)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Daten aktiviert"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Datennutzung zulassen"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Achtung"</string>
@@ -525,7 +529,7 @@
     <string name="dial_emergency_calling_not_available" msgid="5675557523782491826">"Notruf nicht verfügbar"</string>
     <string name="police_type_description" msgid="5324410799919829693">"Polizei"</string>
     <string name="ambulance_type_description" msgid="4114815025408089866">"Krankenwagen"</string>
-    <string name="fire_type_description" msgid="7145996705197064710">"Feuer"</string>
+    <string name="fire_type_description" msgid="7145996705197064710">"Feuerwehr"</string>
     <string name="description_concat_format" msgid="7141070875487870177">"%1$s, %2$s"</string>
     <string name="dialerKeyboardHintText" msgid="9192914825413747792">"Zum Wählen Tastatur verwenden"</string>
     <string name="onscreenHoldText" msgid="2285258239691145872">"Halten"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Anruf weitergeleitet."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"An Telefonkonferenz teilnehmen."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Gehaltener Anruf wurde beendet."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Der Anruf kann nicht getätigt werden, da das Gerät gerade bereitgestellt wird."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Anruf nicht möglich, da bereits ein anderer ausgehender Anruf aufgebaut wird."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Anruf nicht möglich, da ein nicht angenommener eingehender Anruf vorhanden ist. Nimm den eingehenden Anruf an oder lehne ihn ab, bevor du einen neuen Anruf startest."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Anruf nicht möglich, weil Anrufe über die Systemeigenschaft \"ro.telephony.disable-call\" deaktiviert wurden."</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index f35d22c..8ad9dbb 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Βελτιωμένη λειτουργία 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Χρήση υπηρεσιών LTE για τη βελτίωση της φωνητικής επικοινωνίας και άλλου είδους επικοινωνιών (συνιστάται)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Χρήση υπηρεσιών 4G για τη βελτίωση της φωνητικής επικοινωνίας και άλλου είδους επικοινωνιών (συνιστάται)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Ενεργοποίηση δεδομένων"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Επιτρέπεται η χρήση δεδομένων"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Προσοχή"</string>
@@ -250,7 +254,7 @@
     <string name="roaming_check_price_warning" msgid="7497570906830902550">"Επικοινωνήστε με τον πάροχο του δικτύου για τις τιμές."</string>
     <string name="roaming_alert_title" msgid="3654815360303826008">"Να επιτρέπεται η περιαγωγή δεδομένων;"</string>
     <string name="data_usage_title" msgid="4042209259808900283">"Χρήση δεδομένων εφαρμογής"</string>
-    <string name="data_usage_template" msgid="8526428824844656364">"<xliff:g id="ID_1">%1$s</xliff:g> δεδομένα κινητής τηλεφωνίας σε χρήση μεταξύ <xliff:g id="ID_2">%2$s</xliff:g>"</string>
+    <string name="data_usage_template" msgid="8526428824844656364">"<xliff:g id="ID_1">%1$s</xliff:g> δεδομένων κινητής τηλεφωνίας χρησιμοποιήθηκαν μεταξύ <xliff:g id="ID_2">%2$s</xliff:g>"</string>
     <string name="advanced_options_title" msgid="8074895510265488035">"Σύνθετες ρυθμίσεις"</string>
     <string name="carrier_settings_euicc" msgid="6714062862127226405">"Εταιρεία κινητής τηλεφωνίας"</string>
     <string name="keywords_carrier_settings_euicc" msgid="6861505396475991277">"εταιρεία κινητής τηλεφωνίας, esim, sim, euicc, αλλαγή εταιρείας κινητής τηλεφωνίας, προσθήκη εταιρείας κινητής τηλεφωνίας"</string>
@@ -521,7 +525,7 @@
     <string name="dial_emergency_calling_not_available" msgid="5675557523782491826">"Η δυνατότητα κλήσεων έκτακτης ανάγκης δεν είναι διαθέσιμη"</string>
     <string name="police_type_description" msgid="5324410799919829693">"Αστυνομία"</string>
     <string name="ambulance_type_description" msgid="4114815025408089866">"Ασθενοφόρο"</string>
-    <string name="fire_type_description" msgid="7145996705197064710">"Πυρκαγιά"</string>
+    <string name="fire_type_description" msgid="7145996705197064710">"Πυροσβεστική"</string>
     <string name="description_concat_format" msgid="7141070875487870177">"%1$s, %2$s"</string>
     <string name="dialerKeyboardHintText" msgid="9192914825413747792">"Χρησιμοποιήστε το πληκτρολόγιο για να πραγματοποιήσετε καλέσετε έναν αριθμό"</string>
     <string name="onscreenHoldText" msgid="2285258239691145872">"Αναμονή"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Έγινε προώθηση της κλήσης."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Συμμετοχή σε κλήση διάσκεψης."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Έγινε αποδέσμευση της κλήσης σε κράτηση."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Δεν είναι δυνατή η πραγματοποίηση κλήσης, καθώς εκτελείται παροχή υπηρεσιών στη συσκευή αυτήν τη στιγμή."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Δεν είναι δυνατή η πραγματοποίηση της κλήσης, επειδή βρίσκεται ήδη σε εξέλιξη εξερχόμενη κλήση."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Δεν είναι δυνατή η πραγματοποίηση κλήσης, επειδή υπάρχει αναπάντητη εισερχόμενη κλήση. Απαντήστε ή απορρίψτε την εισερχόμενη κλήση, προτού πραγματοποιήσετε μια νέα κλήση."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Δεν είναι δυνατή η πραγματοποίηση κλήσης επειδή η κλήση έχει απενεργοποιηθεί μέσω της ιδιότητας συστήματος ro.telephony.disable-call."</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index b8349d0..d7ca3cd 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Enhanced 4G LTE Mode"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Use LTE services to improve voice and other communications (recommended)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Use 4G services to improve voice and other communications (recommended)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data enabled"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Allow data usage"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Attention"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Forwarded call."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Joining conference call."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Held call has been released."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Cannot place a call as the device is currently being provisioned."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Cannot place a call as another outgoing call is already dialling."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Cannot place a call as there is an unanswered incoming call. Answer or reject the incoming call prior to placing a new call."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Cannot place a call as calling has been disabled using the ro.telephony.disable-call system property."</string>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index b8349d0..d7ca3cd 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Enhanced 4G LTE Mode"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Use LTE services to improve voice and other communications (recommended)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Use 4G services to improve voice and other communications (recommended)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data enabled"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Allow data usage"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Attention"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Forwarded call."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Joining conference call."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Held call has been released."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Cannot place a call as the device is currently being provisioned."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Cannot place a call as another outgoing call is already dialling."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Cannot place a call as there is an unanswered incoming call. Answer or reject the incoming call prior to placing a new call."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Cannot place a call as calling has been disabled using the ro.telephony.disable-call system property."</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index b8349d0..d7ca3cd 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Enhanced 4G LTE Mode"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Use LTE services to improve voice and other communications (recommended)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Use 4G services to improve voice and other communications (recommended)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data enabled"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Allow data usage"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Attention"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Forwarded call."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Joining conference call."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Held call has been released."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Cannot place a call as the device is currently being provisioned."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Cannot place a call as another outgoing call is already dialling."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Cannot place a call as there is an unanswered incoming call. Answer or reject the incoming call prior to placing a new call."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Cannot place a call as calling has been disabled using the ro.telephony.disable-call system property."</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index b8349d0..d7ca3cd 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Enhanced 4G LTE Mode"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Use LTE services to improve voice and other communications (recommended)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Use 4G services to improve voice and other communications (recommended)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data enabled"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Allow data usage"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Attention"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Forwarded call."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Joining conference call."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Held call has been released."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Cannot place a call as the device is currently being provisioned."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Cannot place a call as another outgoing call is already dialling."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Cannot place a call as there is an unanswered incoming call. Answer or reject the incoming call prior to placing a new call."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Cannot place a call as calling has been disabled using the ro.telephony.disable-call system property."</string>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index 506c554..1d58bbb 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‎‏‏‏‏‏‎‎‏‏‏‏‏‏‎‎‏‏‎‎‏‎‏‎‎‎‏‎‏‎‎‎‎‎‏‎‎‎‎‎‏‏‏‎‏‏‎‎‏‏‎‎‎‎‎‎‎‎‎‎‏‏‎Enhanced 4G LTE Mode‎‏‎‎‏‎"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‎‏‎‎‎‎‎‎‏‎‏‏‏‎‏‏‎‎‎‏‏‎‎‏‏‎‏‏‏‏‎‏‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‎‎‏‎‏‏‏‎‎‎‎‏‏‎‏‎‎Use LTE services to improve voice and other communications (recommended)‎‏‎‎‏‎"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‎‏‎‎‎‏‎‎‎‏‏‏‏‏‏‎‏‏‎‏‏‏‏‎‏‎‎‎‎‎‏‏‏‎‎‎‎‏‏‏‎‏‎‏‎‏‎‏‎‎‏‎‏‎‏‎‏‎‎‏‏‎‎‎Use 4G services to improve voice and other communications (recommended)‎‏‎‎‏‎"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‏‏‎‏‎‎‏‎‏‏‏‎‎‎‏‎‏‎‏‏‏‎‎‎‎‏‎‎‎‏‎‏‎‏‎‎‏‎‎‏‎‏‎‎‏‏‎‎‏‎‏‎‏‏‏‎‎‏‏‎‎‏‏‎‎Data enabled‎‏‎‎‏‎"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‎‏‎‎‎‎‏‎‎‎‏‎‎‎‏‎‏‏‎‎‏‏‎‎‏‎‎‏‏‎‎‏‎‎‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‏‏‎‏‏‏‎‎‏‎‎‎‏‏‎Allow data usage‎‏‎‎‏‎"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‏‏‎‏‏‏‎‏‏‎‏‏‎‎‎‏‏‎‎‏‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‎‏‎‎‎‏‏‏‎‏‏‏‏‎‏‏‏‎‏‏‎‎‏‎‏‎‎‎Attention‎‏‎‎‏‎"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‎‏‏‏‏‏‎‏‎‎‏‎‏‏‎‏‎‏‎‏‎‏‏‎‎‏‏‏‎‎‏‏‏‎‎‏‏‏‏‏‏‎‎‏‎‎‏‎‎‎‏‏‏‎‎‏‎‏‏‏‎‏‏‎Forwarded call.‎‏‎‎‏‎"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‎‏‏‏‏‎‏‏‎‏‏‏‏‎‎‏‎‏‎‏‎‎‏‎‎‎‎‎‎‏‏‎‏‏‎‎‏‏‎‎‏‏‏‏‎‎‏‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎Joining conference call.‎‏‎‎‏‎"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‎‏‏‏‏‎‎‎‎‏‎‏‏‏‎‎‏‏‎‏‎‏‎‏‎‏‏‏‎‎‏‎‎‎‎‏‏‏‎‏‎‏‏‎‎‎‏‏‏‏‏‎‏‎‎‎‎‎‏‎‎‏‏‎Held call has been released.‎‏‎‎‏‎"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‏‏‎‏‏‎‎‎‎‏‎‎‏‎‎‏‏‎‎‏‏‎‏‏‎‎‎‎‎‎‎‎‏‏‎‏‎‎‏‏‎‏‎‎‎‏‎‏‎‏‏‎‏‏‏‎‏‏‎‎‎‏‏‎‎Cannot place a call as the device is currently being provisioned.‎‏‎‎‏‎"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‏‎‎‏‏‏‏‎‎‏‏‏‏‎‎‏‏‎‏‎‏‏‎‎‏‎‎‏‏‎‎‎‎‎‎‎‏‏‎‏‎‏‎‏‏‎‎‎‏‎‎Cannot place a call as another outgoing call is already dialing.‎‏‎‎‏‎"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‎‎‎‎‏‎‏‎‎‏‏‎‎‏‏‏‏‎‎‏‏‏‏‏‏‎‎‏‏‎‎‎‏‎‏‏‎‏‏‎‏‎‎‎‏‎‏‏‎‏‏‏‏‏‏‎Cannot place a call as there is an unanswered incoming call. Answer or reject the incoming call prior to placing a new call.‎‏‎‎‏‎"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‏‏‏‏‎‎‏‎‎‏‎‏‏‎‏‏‎‏‎‏‏‎‎‏‎‎‏‏‏‏‎‎‎‎‏‎‏‏‏‏‏‎‏‎‏‎‏‏‎‎‏‏‎‎‏‎‎‎‏‎‎‏‏‎‏‎Cannot place a call as calling has been disabled using the ro.telephony.disable-call system property.‎‏‎‎‏‎"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index ec85d69..b715d77 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Modo 4G LTE mejorado"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Usa servicios de LTE para mejorar comunicaciones de voz y otras (recomendado)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Usa servicios de 4G para mejorar la comunicación por voz y otros medios (recomendado)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Usar paquete de datos"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Permitir el uso de datos"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Atención"</string>
@@ -521,7 +525,7 @@
     <string name="dial_emergency_calling_not_available" msgid="5675557523782491826">"Las llamadas de emergencia no están disponibles"</string>
     <string name="police_type_description" msgid="5324410799919829693">"Policía"</string>
     <string name="ambulance_type_description" msgid="4114815025408089866">"Ambulancia"</string>
-    <string name="fire_type_description" msgid="7145996705197064710">"Fuego"</string>
+    <string name="fire_type_description" msgid="7145996705197064710">"Bomberos"</string>
     <string name="description_concat_format" msgid="7141070875487870177">"%1$s, %2$s"</string>
     <string name="dialerKeyboardHintText" msgid="9192914825413747792">"Utilizar teclado para marcar"</string>
     <string name="onscreenHoldText" msgid="2285258239691145872">"Retener"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Llamada desviada."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Uniéndose a la conferencia."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Se desconectó la llamada en espera."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"No puedes realizar llamadas porque estamos verificando qué servicios están disponibles para el dispositivo."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"No puedes realizar la llamada porque ya estás marcando otra llamada saliente."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"No puedes realizar la llamada porque tienes una llamada entrante que no respondiste. Respóndela o recházala antes de realizar una nueva."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"No puedes realizar la llamada porque se desactivaron las llamadas con la propiedad ro.telephony.disable-call del sistema."</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index ae183d4..1f346b4 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Modo 4G LTE mejorado"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Usar servicios LTE para mejorar la voz y otras comunicaciones (recomendado)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Usar servicios 4G para mejorar la voz y otras comunicaciones (recomendado)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Habilitar datos"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Permitir uso de datos"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Atención"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Se ha desviado la llamada."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Te estás uniendo a la conferencia."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Se ha desconectado la llamada retenida."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"No se puede llamar porque el dispositivo se está aprovisionando actualmente."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"No se puede llamar porque ya se está realizando otra llamada."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"No se puede llamar porque hay una llamada entrante sin responder. Contéstala o recházala para poder llamar de nuevo."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"No se puede llamar porque se han inhabilitado las llamadas mediante la propiedad del sistema ro.telephony.disable-call."</string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index 7ead212..df00586 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Tõhustatud 4G LTE režiim"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Kasutage hääl- ja muu suhtluse täiustamiseks LTE-teenuseid (soovitatav)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Kasutage hääl- ja muu suhtluse täiustamiseks 4G-teenuseid (soovitatav)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Andmeside lubatud"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Luba andmekasutus"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Tähelepanu"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Edasisuunatud kõne."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Konverentskõnega liitumine."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Ootel olnud kõne vabastati."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Kõnet ei saa teha, kuna seadet valmistatakse praegu ette."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Kõnet ei saa teha, kuna teist väljuvat kõnet juba valitakse."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Kõnet ei saa teha, kuna telefonis on sissetulev vastamata kõne. Enne uue kõne tegemist vastake kõnele või katkestage see."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Kõnet ei saa teha, kuna helistamine on süsteemi atribuudiga ro.telephony.disable-call keelatud."</string>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index fc1c07b..25ba398 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"4G LTE modu hobetua"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Erabili LTE zerbitzuak ahotsa eta bestelako komunikazioak hobetzeko (gomendatua)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Erabili 4G zerbitzuak ahotsa eta bestelako komunikazioak hobetzeko (gomendatua)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Datuak gaituta"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Onartu datuak erabiltzea"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Erne"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Desbideratu da deia."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Konferentzia-deian sartzen."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Askatu da zain utzitako deia."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Ezin da egin deia, une honetan gailua hornitzen ari delako."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Ezin da egin deia, beste dei bat abian delako."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Ezin da egin deia, oraindik erantzun ez diozun dei bat jasotzen ari zarelako. Beste dei bat egin aurretik, erantzun deiari edo bazter ezazu."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Ezin da egin deia, deiak egiteko aukera desgaitu egin delako sistemaren ro.telephony.disable-call propietatea erabilita."</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index d648361..d1a8bef 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"‏حالت پیشرفته 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"‏استفاده از سرویس‌های LTE جهت بهبود ارتباطات صوتی و سایر ارتباطات (توصیه می‌شود)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"‏استفاده از سرویس‌های 4G برای بهبود صدا و سایر ارتباطات (توصیه می‌شود)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"داده‌ها فعال شدند"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"استفاده از داده مجاز است"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"توجه"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"تماس بازارسال شده است."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"درحال پیوستن به تماس کنفرانسی."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"تماس نگه‌داشته‌شده آزاد شده است."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"نمی‌توانید تماسی برقرار کنید، چون دستگاه درحال‌حاضر درحال تأیید خدمات دردسترس برای کاربران است."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"نمی‌توانید تماسی برقرار کنید، چون تماس خروجی دیگری درحال شماره‌گیری است."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"نمی‌توانید تماسی برقرار کنید، چون تماس ورودی بی‌پاسخی درحال شماره‌گیری است. قبل از برقراری تماس جدید، به آن پاسخ دهید یا آن را رد کنید."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"‏نمی‌توانید تماسی برقرار کنید چون برقراری تماس تلفنی با استفاده از مشخصه سیستم ro.telephony.disable-call غیرفعال شده است."</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 4080b14..1e31bb9 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Enhanced 4G LTE -tila"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Käytä LTE-palveluita puheviestinnän ja muiden viestintätapojen parantamiseen (suositeltu)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Käytä 4G-palveluita puheviestinnän ja muiden viestintätapojen parantamiseen (suositeltu)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Datayhteys käytössä"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Salli tiedonsiirto"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Huomio"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Siirretty puhelu."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Liitytään puhelinneuvotteluun."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Pidossa ollut puhelu on vapautettu."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Puhelua ei voida soittaa, koska laitetta valmistellaan parhaillaan."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Puhelua ei voida soittaa, koska toisen lähtevän puhelun soittaminen on kesken."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Puhelua ei voida soittaa, koska saapuvaan puheluun ei ole vielä vastattu. Vastaa saapuvaan puheluun tai hylkää se, ennen kuin soitat uuden puhelun."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Puhelua ei voida soittaa, koska soittaminen on poistettu käytöstä ro.telephony.disable-call-järjestelmätoiminnolla."</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index ceb83c5..a315e38 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Mode LTE 4G avancé"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Utiliser les services LTE pour améliorer les communications vocales et autres (recommandé)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Utiliser les services 4G pour améliorer les communications vocales et autres (recommandé)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Données activées"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Autoriser l\'utilisation des données"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Attention"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Appel transféré."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Connexion à la conférence téléphonique en cours…"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"L\'appel en attente a été déconnecté."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Impossible de passer un appel, car l\'appareil est en cours d\'approvisionnement."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Impossible de passer un appel, car un autre appel sortant est déjà en cours de composition."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Impossible de passer un appel, car il y a un appel entrant sans réponse. Répondez à l\'appel entrant ou refusez-le avant de passer un nouvel appel."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Impossible de passer un appel, car la fonction d\'appel a été désactivée à l\'aide de la propriété système ro.telephony.disable-call."</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 0a7031e..dc5d768 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Mode LTE 4G avancé"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Utiliser les services LTE pour améliorer les communications vocales et autres (recommandé)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Utiliser les services 4G pour améliorer les communications vocales et autres (recommandé)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Données activées"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Autoriser la consommation des données"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Avertissement"</string>
@@ -521,7 +525,7 @@
     <string name="dial_emergency_calling_not_available" msgid="5675557523782491826">"Appels d\'urgence non disponibles"</string>
     <string name="police_type_description" msgid="5324410799919829693">"Police"</string>
     <string name="ambulance_type_description" msgid="4114815025408089866">"Ambulance"</string>
-    <string name="fire_type_description" msgid="7145996705197064710">"Feu"</string>
+    <string name="fire_type_description" msgid="7145996705197064710">"Pompiers"</string>
     <string name="description_concat_format" msgid="7141070875487870177">"%1$s, %2$s"</string>
     <string name="dialerKeyboardHintText" msgid="9192914825413747792">"Utilisez le clavier pour composer un numéro."</string>
     <string name="onscreenHoldText" msgid="2285258239691145872">"En attente"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Appel transféré."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Connexion en cours à la conférence téléphonique."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"L\'appel en attente a été interrompu."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Impossible de passer un appel, car l\'appareil est en cours de préparation."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Impossible de passer un appel lorsqu\'un appel sortant est déjà en cours."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Impossible de passer un appel lorsqu\'un appel entrant attend une réponse. Répondez à cet appel ou refusez-le avant de passer un nouvel appel."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Impossible de passer un appel, car la fonction d\'appel a été désactivée à l\'aide de la propriété système ro.telephony.disable-call."</string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index dd3ada4..6b0122c 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Modo LTE 4G mellorado"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Usa os servizos LTE para mellorar a comunicación por voz e outras (recomendado)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Usa os servizos 4G para mellorar a comunicación por voz e outras (recomendado)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Datos activados"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Permitir o uso de datos"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Atención"</string>
@@ -251,7 +255,7 @@
     <string name="roaming_alert_title" msgid="3654815360303826008">"Permitir a itinerancia de datos?"</string>
     <string name="data_usage_title" msgid="4042209259808900283">"Uso de datos da aplicación"</string>
     <string name="data_usage_template" msgid="8526428824844656364">"Datos móbiles usados no período do <xliff:g id="ID_2">%2$s</xliff:g>: <xliff:g id="ID_1">%1$s</xliff:g>"</string>
-    <string name="advanced_options_title" msgid="8074895510265488035">"Avanzado"</string>
+    <string name="advanced_options_title" msgid="8074895510265488035">"Configuración avanzada"</string>
     <string name="carrier_settings_euicc" msgid="6714062862127226405">"Operador"</string>
     <string name="keywords_carrier_settings_euicc" msgid="6861505396475991277">"operador, esim, sim, euicc, cambiar operadores, engadir operador"</string>
     <string name="carrier_settings_euicc_summary" msgid="5115001942761995457">"<xliff:g id="CARRIER_NAME">%1$s</xliff:g>: <xliff:g id="PHONE_NUMBER">%2$s</xliff:g>"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Chamada desviada."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Entrando na conferencia telefónica."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Desconectouse a chamada retida."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Non puideches chamar porque se está realizando o aprovisionamento do dispositivo."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Non podes facer unha chamada porque xa hai outra en curso."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Non podes chamar porque te están chamando nestes momentos. Para poder facer unha chamada, primeiro tes que responder á outra ou rexeitala."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Non podes realizar unha chamada porque se desactivou esa función a través da propiedade do sistema ro.telephony.disable-call."</string>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 4d16c24..41c8dc3 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"વિસ્તૃત 4G LTE મોડ"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"વૉઇસ અને અન્ય સંચારોને બહેતર બનાવવા માટે LTE સેવાઓનો ઉપયોગ કરો (ભલામણ કરેલ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"વૉઇસ અને અન્ય સંચારોને વધુ સારા બનાવવા માટે 4G સેવાઓનો ઉપયોગ કરો (ભલામણ કરેલ)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ડેટા સક્ષમ કરેલ છે"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ડેટા વપરાશની મંજૂરી આપો"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ધ્યાન આપો"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"કૉલ ફોર્વર્ડ કર્યો."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"કૉન્ફરન્સ કૉલમાં જોડાઈ રહ્યાં છીએ."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"હોલ્ડ કરેલ કૉલ રિલીઝ કર્યો."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"હાલમાં, આ ડિવાઇસ પર સેવાઓની જોગવાઈ કરવામાં આવી રહી હોવાના કારણે કૉલ કરી શકાતો નથી."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"કૉલ કરી શકાતો નથી કારણ કે બીજો આઉટગોઇંગ કૉલ પહેલાંથી ડાયલ કરવામાં આવી રહ્યો છે."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"કૉલ કરી શકાતો નથી કારણ કે ઇનકમિંગ કૉલનો જવાબ આપવામાં આવી રહ્યો નથી. નવો કૉલ કરતા પૂર્વે ઇનકમિંગ કૉલનો જવાબ આપો અથવા નકારો."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"કૉલ કરી શકાતો નથી કેમકે કૉલિંગની સુવિધા ro.telephony.disable-call સિસ્ટમ પ્રોપર્ટીનો ઉપયોગ કરીને બંધ કરવામાં આવી છે."</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 094fe98..1182d7d 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"उन्नत 4G LTE मोड"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ध्‍वनि और अन्‍य संचारों को बेहतर बनाने हेतु LTE सेवाओं का उपयोग करें (अनुशंसित)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ध्वनि और दूसरे संचारों को बेहतर बनाने के लिए 4G सेवाओं का इस्तेमाल करें (सुझाया गया)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"डेटा सक्षम किया गया"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"डेटा उपयोग करने दें"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ध्यान दें"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"दूसरे नंबर पर भेजा गया कॉल."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"कॉन्फ़्रेंस कॉल में शामिल हो रहे/रही हैं."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"होल्ड किए गए कॉल को होल्ड से हटा दिया गया है."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"कॉल नहीं किया जा सकता क्योंकि इस समय डिवाइस का प्रावधान किया जा रहा है."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"कॉल नहीं किया जा सकता, क्योंकि कोई दूसरा किया गया कॉल (आउटगोइंग) पहले से ही डायल हो रहा है."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"कॉल नहीं किया जा सकता, क्योंकि एक आने वाले कॉल (इनकमिंग) का जवाब नहीं दिया जा रहा है. नया कॉल करने से पहले आने वाले कॉल (इनकमिंग) का जवाब दें या उसे अस्वीकार करें."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"कॉल नहीं किया जा सकता क्योंकि कॉलिंग की सुविधा को ROS.टेलीफ़ोनी की कॉल बंद करें सिस्टम प्रॉपर्टी का उपयोग करके बंद कर दिया गया है."</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 71ed66e..3cb11d1 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Poboljšan 4G LTE način"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Upotreba LTE usluga za poboljšanje glasovne i drugih komunikacija (preporučeno)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Upotreba 4G usluga za poboljšanje glasovne i drugih komunikacija (preporučeno)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Podaci su omogućeni"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Dopusti upotrebu podataka"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Pažnja"</string>
@@ -521,7 +525,7 @@
     <string name="dial_emergency_calling_not_available" msgid="5675557523782491826">"Hitni pozivi nisu dostupni"</string>
     <string name="police_type_description" msgid="5324410799919829693">"Policija"</string>
     <string name="ambulance_type_description" msgid="4114815025408089866">"Hitna pomoć"</string>
-    <string name="fire_type_description" msgid="7145996705197064710">"Vatra"</string>
+    <string name="fire_type_description" msgid="7145996705197064710">"Vatrogasci"</string>
     <string name="description_concat_format" msgid="7141070875487870177">"%1$s, %2$s"</string>
     <string name="dialerKeyboardHintText" msgid="9192914825413747792">"Birajte pomoću tipkovnice"</string>
     <string name="onscreenHoldText" msgid="2285258239691145872">"Na čekanju"</string>
@@ -764,6 +768,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Poziv preusmjeren."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Pridruživanje konferencijskom pozivu."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Poziv na čekanju je završen."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Poziv se ne može uspostaviti jer se uređaj trenutačno priprema."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nije moguće uputiti poziv jer se odlazni poziv već upućuje."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Poziv se ne može uputiti jer postoji neodgovoreni dolazni poziv. Odgovorite ili odbijte dolazni poziv prije upućivanja novog poziva."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Poziv se ne može uputiti jer je pozivanje onemogućeno pomoću entiteta sustava ro.telephony.disable-call."</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 6f59621..92581f4 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Javított 4G LTE mód"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"LTE-szolgáltatások használata hang- és egyéb kommunikáció javításához (ajánlott)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"4G-szolgáltatások használata hang- és egyéb kommunikáció javításához (ajánlott)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Adatok engedélyezése"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Adatforgalom engedélyezése"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Figyelem"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Átirányított hívás."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Csatlakozás konferenciahíváshoz."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Várakoztatott hívás feloldva."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Nem indítható hívás, mivel az eszköz kiépítés alatt áll."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nem kezdeményezhet hívást, mert folyamatban van egy másik kimenő hívás indítása."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Nem kezdeményezhet hívást, mert folyamatban van egy megválaszolatlan bejövő hívás. Mielőtt új hívást indítana, vegye fel, vagy utasítsa el a bejövő hívást."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Nem kezdeményezhet hívást, mivel a hívás le van tiltva ro.telephony.disable-call rendszertulajdonsággal."</string>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index 74c695e..7d42fd3 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Ընդլայնված 4G LTE ռեժիմ"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Ձայնի և կապի որակը բարելավելու համար օգտվեք LTE ծառայություններից (հանձնարարելի)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Ձայնի և կապի որակը լավացնելու համար օգտվեք 4G ծառայություններից (խորհուրդ է տրվում)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Տվյալները միացված են"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Թույլատրել տվյալների օգտագործումը"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Ուշադրություն"</string>
@@ -276,11 +280,11 @@
     <!-- String.format failed for translation -->
     <!-- no translation found for throttle_data_usage_subtext (6029276011123694701) -->
     <skip />
-    <string name="throttle_data_rate_reduced_subtext" msgid="7492763592720107737">"<xliff:g id="USED_0">%1$s</xliff:g> առավելագույնը գերազանցվել է\nՏվյալների արժեքը նվազել է մինչև <xliff:g id="USED_1">%2$d</xliff:g> կբիթ/վ"</string>
+    <string name="throttle_data_rate_reduced_subtext" msgid="7492763592720107737">"<xliff:g id="USED_0">%1$s</xliff:g> առավելագույնը գերազանցվել է\nՏվյալների արժեքը նվազել է մինչև <xliff:g id="USED_1">%2$d</xliff:g> Կբիթ/վ"</string>
     <!-- String.format failed for translation -->
     <!-- no translation found for throttle_time_frame_subtext (7732763021560399960) -->
     <skip />
-    <string name="throttle_rate_subtext" msgid="2149102656120726855">"Տվյալների ծավալը կնվազի մինչև <xliff:g id="USED">%1$d</xliff:g> կբիթ/վ, եթե տվյալների օգտագործման սահմանաչափը գերազանցվի"</string>
+    <string name="throttle_rate_subtext" msgid="2149102656120726855">"Տվյալների ծավալը կնվազի մինչև <xliff:g id="USED">%1$d</xliff:g> Կբիթ/վ, եթե տվյալների օգտագործման սահմանաչափը գերազանցվի"</string>
     <string name="throttle_help_subtext" msgid="5217706521499010816">"Լրացուցիչ տեղեկություններ ձեր սպասարկողի բջջային ցանցի տվյալների օգտագործման քաղաքականության մասին"</string>
     <string name="cell_broadcast_sms" msgid="5584192824053625842">"Բջջային հեռարձակման SMS"</string>
     <string name="enable_disable_cell_bc_sms" msgid="4851147873691392255">"Բջջային հեռարձակման SMS"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Վերահասցեավորված զանգ"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Միացում կոնֆերանս զանգի"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Զանգը հանվեց սպասման ռեժիմից:"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Հնարավոր չէ զանգել, քանի որ սարքը ներկայումս նախապատրաստման փուլում է:"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Հնարավոր չէ զանգել, քանի որ տվյալ պահին մեկ այլ ելքային զանգ է կատարվում:"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Հնարավոր չէ զանգել, քանի որ անպատասխան մուտքային զանգ կա: Նախքան նոր զանգ կատարելը պատասխանեք մուտքային զանգին կամ մերժեք այն:"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Հնարավոր չէ զանգել, քանի որ զանգելու գործառույթը զանգերի համակարգի ro.telephony.disable կարգավորման միջոցով կասեցվել է:"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index f9b7ddc..9cf0810 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Mode LTE 4G yang Ditingkatkan"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Gunakan layanan LTE untuk menyempurnakan suara dan komunikasi lainnya (disarankan)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Gunakan layanan 4G untuk menyempurnakan suara dan komunikasi lainnya (disarankan)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data diaktifkan"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Izinkan penggunaan data"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Perhatian"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Panggilan diteruskan."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Bergabung ke panggilan konferensi."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Panggilan yang ditahan telah terputus."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Tidak dapat melakukan panggilan karena saat ini perangkat dalam proses penyediaan."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Tidak dapat melakukan panggilan karena panggilan keluar lainnya sedang berlangsung."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Tidak dapat melakukan panggilan karena ada panggilan masuk yang belum terjawab. Jawab atau tolak panggilan masuk sebelum melakukan panggilan."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Tidak dapat melakukan panggilan karena panggilan telah dinonaktifkan menggunakan properti sistem ro.telephony.disable-call"</string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index dd89261..678b05f 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"endurbætt 4G LTE-stilling"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Nota LTE-þjónustu til að bæta talsamband og önnur samskipti (ráðlagt)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Nota 4G-þjónustu til að bæta talsamband og önnur samskipti (ráðlagt)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Kveikt á gagnaaðgangi"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Leyfa gagnanotkun"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Athugaðu"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Framsent símtal."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Tekur þátt í símafundi."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Símtal í bið heldur áfram."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Ekki er hægt að hringja símtal þar sem verið er að úthluta tækinu."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Ekki er hægt að hringja símtal þar sem þegar er verið að hringja annað símtal."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Ekki er hægt að hringja símtal þar sem ósvarað símtal er að berast. Svaraðu eða hafnaðu símtalinu áður en þú hringir nýtt símtal."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Ekki er hægt að hringja símtal þar sem símtöl hafa verið gerð óvirk með því að nota kerfiseiginleikann ro.telephony.disable-call."</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index d8e125b..a4d1af1 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Modalità 4G LTE avanzata"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Usa i servizi LTE per migliorare la voce e le altre comunicazioni (consigliato)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Usa i servizi 4G per migliorare la voce e le altre comunicazioni (consigliato)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Dati attivati"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Consenti l\'utilizzo dei dati"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Attenzione"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Trasferimento di chiamata."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Accesso all\'audioconferenza."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"La chiamata in attesa è stata chiusa."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Impossibile effettuare una chiamata perché il dispositivo è attualmente in fase di provisioning."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Impossibile effettuare una chiamata perché è già presente un\'altra chiamata in uscita in composizione."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Impossibile effettuare una chiamata perché è presente una chiamata in arrivo senza risposta. Rispondi o rifiuta la chiamata in arrivo prima di effettuare una nuova chiamata."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Impossibile effettuare una chiamata perché le chiamate sono state disattivate utilizzando la proprietà di sistema ro.telephony.disable-call."</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index b8efb2d..3052a3f 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"‏מצב 4G LTE משופר"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"‏השתמש בשירותי LTE כדי לשפר את הקול ודרכי תקשורת אחרות (מומלץ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"‏שימוש בשירותי 4G כדי לשפר את הקול ודרכי תקשורת אחרות (מומלץ)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"נתונים מופעלים"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"התר שימוש בנתונים"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"זהירות"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"השיחה הועברה."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"אנחנו מצרפים אותך לשיחת הוועידה."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"השיחה שוחררה מהמתנה."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"אי אפשר להתקשר כי הקצאת המכשיר לא הסתיימה."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"אי אפשר להתקשר כי יש שיחה יוצאת אחרת."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"אי אפשר להתקשר כי יש שיחה נכנסת אחרת. צריך לענות לשיחה או לדחות אותה ורק אז לנסות להתקשר למספר אחר."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"‏אי אפשר להתקשר כי השיחות הושבתו באמצעות מאפיין המערכת ro.telephony.disable-call."</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index cecebad..3b274cb 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"4G LTE拡張モード"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"LTEサービスを使用して音声などの通信を改善する（推奨）"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"4G サービスを使用して、音声やその他の通話の品質を改善する（推奨）"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"データ通信を有効にする"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"データ使用を許可"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"注意"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"転送されてきた電話。"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"グループ通話に参加しようとしています。"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"通話の保留が解除されました。"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"現在この端末のプロビジョニングを行っているため、通話を発信することはできません。"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"すでに別の通話を発信中のため、新しく通話を発信することはできません。"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"通話を着信中のため、新しく通話を発信することはできません。着信中の通話に応答するか、通話を拒否すると、新しく通話を発信できるようになります。"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call システム プロパティを使用して通話機能が無効に設定されているため、通話を発信することはできません。"</string>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index 45d5d9d..21312d2 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"გაუმჯობესებული 4G LTE რეჟიმი"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ხმოვანი და სხვა სახის კომუნიკაციებიგამოიყენეთ LTE მომსახურება გაუმჯობესება ხმა და სხვა კომუნიკაციები (რეკომენდირებულია)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"გამოიყენეთ 4G სერვისები ხმისა და სხვა კომუნიკაციების გასაუმჯობესებლად (რეკომენდებული)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"მონაცემთა გადაცემა ჩართულია჻"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"მონაცემების გამოყენება"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ყურადღება"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ზარი გადამისამართდა."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"მიმდინარეობს საკონფერენციო ზართან შეერთება."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ზარი გათავისუფლდა მოცდის რეჟიმიდან."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ზარის განთავსება შეუძლებელია, რადგან მიმდინარეობს მოწყობილობის მიერ სერვისების უზრუნველყოფის დადასტურება."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ზარის განხორციელება შეუძლებელია, რადგან სხვა გამავალი ზარი უკვე იკრიფება."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ზარის განხორციელება შეუძლებელია, რადგან გაქვთ უპასუხო შემომავალი ზარი. უპასუხეთ ან უარყავით შემომავალი ზარი ახალი ზარის განხორციელებამდე."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ზარის განხორციელება შეუძლებელია, რადგან დარეკვა გამორთულია ro.telephony.disable-call სისტემის თვისების გამოყენებით."</string>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index b0f9681..efeeb0c 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Жақсартылған 4G LTE режимі"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Дауыстық және басқа байланыстарды жақсарту үшін LTE қызметтерін пайдалану (ұсынылады)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Дауыстық және басқа байланыстарды жақсарту үшін 4G қызметтерін пайдалану (ұсынылады)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Дерекқор қосылған"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Деректерді пайдалануға рұқсат ету"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Назар аударыңыз"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Қоңырау басқа нөмірге бағытталды."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Мәжіліс қоңырауына қосылуда."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Күтудегі қоңырау жалғанды."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Қоңырау шалу мүмкін емес, себебі қазіргі уақытта құрылғыға қолжетімді қызметтер тексерілуде."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Қоңырау шалу мүмкін емес, себебі басқа шығыс қоңырау орындалуда."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Қоңырау шалу мүмкін емес, себебі жауап берілмеген кіріс қоңырау бар. Кіріс қоңырауға жауап беріңіз немесе оны өшіріңіз."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Қоңырау шалу мүмкін емес, себебі қоңырау шалу функциясы ro.telephony.disable-call жүйелік параметрі арқылы өшірілген."</string>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index a7ba033..5445d5f 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"​របៀប 4G LTE ធ្វើឲ្យ​ប្រសើរ​ឡើង"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ប្រើសេវាកម្ម LTE ដើម្បីធ្វើឲ្យសម្លេង និងការទំនាក់ទំនងផ្សេងទៀតប្រសើរឡើង (បានណែនាំ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ប្រើប្រាស់​សេវាកម្ម 4G ដើម្បីកែលម្អ​សំឡេង និង​ការ​ប្រាស្រ័យ​ទាក់ទង​ផ្សេងៗ (បានណែនាំ)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"បាន​បើក​ទិន្នន័យ"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"អនុញ្ញាត​​ឲ្យ​​ប្រើ​ប្រាស់​ទិន្នន័យ"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ប្រយ័ត្ន"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"បាន​បញ្ជូនបន្តការហៅទូរសព្ទ។"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"កំពុង​ចូលរួម​ការហៅ​ជា​ក្រុម។"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ការហៅ​ដែល​បាន​រង់ចាំត្រូវបាន​ផ្ដាច់។"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"មិន​អាច​ធ្វើ​ការ​ហៅ​ទូរសព្ទ​បាន​ទេ ដោយសារ​​ឧបករណ៍​កំពុង​​ទទួល​សេវាកម្មនៅពេល​នេះ។"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"មិន​អាច​ធ្វើ​ការ​ហៅ​ទូរសព្ទ​បាន​ទេ ដោយ​សារ​​មាន​គេ​​កំពុង​ហៅ​ទូរសព្ទ​ចេញ​រួច​ហើយ​។"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"មិន​អាច​ធ្វើ​ការ​ហៅ​ទូរសព្ទ​បាន​ទេ ដោយសារ​​​មាន​ការ​ហៅ​ទូរសព្ទ​ចូល​​មួយ​មិន​បាន​ឆ្លើយ។ ឆ្លើយតប ឬ​បដិសេធ​ការ​ហៅ​ទូរសព្ទចូល​ មុន​ពេល​ធ្វើ​ការ​ហៅ​ទូរសព្ទ​ថ្មី​មួយ​ទៀត។"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"មិន​អាច​ធ្វើ​ការ​ហៅ​ទូរសព្ទ​បាន​ទេ ដោយសារ​មាន​​ការ​ហៅ​ទូរសព្ទ​​មួយ​ត្រូវ​បាន​បិទ​​តាមរយៈ​ការប្រើ​ប្រាស់​លក្ខណៈ​ប្រព័ន្ធ ro.telephony.disable-call ។"</string>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index 7f3c061..f4fd48c 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"ವರ್ಧಿಸಲಾದ 4G LTE ಮೋಡ್"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ಧ್ವನಿ ಮತ್ತು ಇತರ ಸಂವಹನಗಳನ್ನು ಸುಧಾರಿಸಲು LTE ಸೇವೆಗಳನ್ನು ಬಳಸಿ (ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ಧ್ವನಿ ಮತ್ತು ಇತರ ಸಂವಹನಗಳನ್ನು ಸುಧಾರಿಸಲು 4G ಸೇವೆಗಳನ್ನು ಬಳಸಿ (ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ಡೇಟಾ ಸಕ್ರಿಯಗೊಂಡಿದೆ"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ಡೇಟಾ ಬಳಕೆಯನ್ನು ಅನುಮತಿಸಿ"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ಎಚ್ಚರಿಕೆ"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ಫಾರ್ವರ್ಡ್ ಮಾಡಲಾದ ಕರೆ."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"ಕಾನ್ಫರೆನ್ಸ್ ಕರೆಗೆ ಸೇರಿಕೊಳ್ಳುತ್ತಿದ್ದಾರೆ."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ಹೋಲ್ಡ್‌ ಮಾಡಿದ ಕರೆಯನ್ನು ಕಡಿತಗೊಳಿಸಲಾಗಿದೆ."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ಪ್ರಸ್ತುತವಾಗಿ ಸಾಧನಕ್ಕೆ ಸೇವೆಯನ್ನು ಒದಗಿಸುತ್ತಿರುವುದರಿಂದ ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ಹೊಸ ಕರೆಯನ್ನು ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ ಏಕೆಂದರೆ ಮತ್ತೊಂದು ಕರೆಯನ್ನು ಈಗಾಗಲೇ ಮಾಡಲಾಗುತ್ತಿದೆ."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ಉತ್ತರಿಸದೇ ಒಳಬರುವ ಕರೆ ಬರುತ್ತಿರುವುದರಿಂದ ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ಹೊಸ ಕರೆಯನ್ನು ಮಾಡುವ ಮೊದಲು ಕರೆಗೆ ಉತ್ತರ ನೀಡಿ ಅಥವಾ ತಿರಸ್ಕರಿಸಿ."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ಕರೆ ವೈಶಿಷ್ಟ್ಯವನ್ನು ro.telephony.disable-call ಸಿಸ್ಟಂ ಗುಣಲಕ್ಷಣದಿಂದ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿರುತ್ತದೆ, ಆದ್ದರಿಂದ ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 02c571e..8af20b0 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -131,7 +131,7 @@
     <string name="stk_cc_ss_to_ussd_error" msgid="6095812685884176176">"SS 요청이 USSD 요청으로 변경됨"</string>
     <string name="stk_cc_ss_to_ss_error" msgid="7920654012697945858">"새 SS 요청으로 변경됨"</string>
     <string name="stk_cc_ss_to_dial_video_error" msgid="3873905132181743781">"SS 요청이 화상 통화로 변경됨"</string>
-    <string name="fdn_check_failure" msgid="18200614306525434">"휴대전화 앱의 발신 제한 번호 설정을 사용하기 때문에 일부 통화 관련 기능이 작동되지 않습니다."</string>
+    <string name="fdn_check_failure" msgid="18200614306525434">"전화 앱의 발신 제한 번호 설정을 사용하기 때문에 일부 통화 관련 기능이 작동되지 않습니다."</string>
     <string name="radio_off_error" msgid="2304459933248513376">"이러한 설정을 보려면 무선을 사용해야 합니다."</string>
     <string name="close_dialog" msgid="2365884406356986917">"확인"</string>
     <string name="enable" msgid="7248657275000173526">"사용"</string>
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"향상된 4G LTE 모드"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"LTE 서비스를 사용하여 음성 및 기타 통신을 개선할 수 있습니다(권장)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"4G 서비스를 사용하여 음성 및 기타 통신을 개선할 수 있습니다(권장)."</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"데이터 사용"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"데이터 사용 허용"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"주의"</string>
@@ -484,7 +488,7 @@
     <string name="notification_voicemail_no_vm_number" msgid="760963466895609716">"알 수 없는 음성사서함 번호"</string>
     <string name="notification_network_selection_title" msgid="4224455487793492772">"서비스 불가"</string>
     <string name="notification_network_selection_text" msgid="7550380440576731104">"선택한 네트워크(<xliff:g id="OPERATOR_NAME">%s</xliff:g>)를 사용할 수 없음"</string>
-    <string name="incall_error_power_off" product="watch" msgid="2007450435656211658">"전화를 걸려면 모바일 네트워크를 사용 설정하고 비행기 모드 또는 배터리 세이버 모드를 사용 중지하세요."</string>
+    <string name="incall_error_power_off" product="watch" msgid="2007450435656211658">"전화를 걸려면 모바일 네트워크를 사용 설정하고 비행기 모드 또는 절전 모드를 사용 중지하세요."</string>
     <string name="incall_error_power_off" product="default" msgid="2947938060513306698">"전화를 걸려면 비행기 모드를 사용 중지하세요."</string>
     <string name="incall_error_power_off_wfc" msgid="8711428920632416575">"전화를 걸려면 비행기 모드를 사용 중지하거나 무선 네트워크에 연결하세요."</string>
     <string name="incall_error_ecm_emergency_only" msgid="738708660612388692">"일반 전화를 걸려면 긴급 콜백 모드를 해제하세요."</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"착신전환된 통화입니다."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"다자간 통화에 참여합니다."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"통화 보류가 해제되었습니다."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"현재 기기를 프로비저닝하는 중이므로 전화를 걸 수 없습니다."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"이미 다른 발신 전화에서 다이얼 중이므로 전화를 걸 수 없습니다."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"받지 않은 수신 전화가 있으므로 전화를 걸 수 없습니다. 새로 전화를 걸기 전에 수신 전화를 받거나 거절하세요."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call 시스템 속성을 사용하여 통화 기능이 사용 중지되었으므로 전화를 걸 수 없습니다."</string>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 15531ed..bc51f2f 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -239,6 +239,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Жакшыртылган 4G LTE режими"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Үн жана башка байлнштрд жакшыртуу үчүн LTE кызматтарын пайдаланыңыз (сунушталат)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Үн жана башка байланыштарды жакшыртуу үчүн 4G кызматтарын пайдаланыңыз (сунушталат)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Дайындар иштетилсин"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Дайындарды пайдаланууга уруксат берүү"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Көңүл буруңуз"</string>
@@ -765,6 +769,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Чалуу башка номерден багытталды."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Конференц-чалууга кошулуу."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Чалуу күтүү режиминен чыгарылды."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Чалуу аткарылбайт, анткени түзмөк учурда даярдалып жатат."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Чалуу аткарылбайт, анткени башка чыгуучу чалуу терилүүдө."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Чалуу аткарылбайт, анткени кирүүчү чалууга жооп берилген жок. Жаңы чалуу аткаруудан мурун кирүүчү чалууга жооп берип же четке кагыңыз."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Чалуу аткарылбайт, анткени чалуу ro.telephony.disable-call тутуму аркылуу өчүрүлгөн."</string>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index 684681e..a4ff73e 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"ໂໝດ Enhanced 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ໃຊ້​ການ​ບໍ​ລິ​ການ LTE ເພື່ອ​ປັບ​ປຸງ​ສຽງ ແລະ​ການ​ບໍ​ລິ​ການ​ອື່ນໆ (ແນະ​ນຳ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ໃຊ້​ການ​ບໍ​ລິ​ການ 4G ເພື່ອ​ປັບ​ປຸງ​ສຽງ ແລະ​ ການ​ສື່ສານອື່ນໆ (ແນະ​ນຳ)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ເປີດໃຊ້ເດຕາ"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"​ອະ​ນຸ​ຍາດ​ໃຫ້​ໃຊ້​ຂໍ້​ມູນ"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ກະລຸນາຮັບຊາບ"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ໂອນສາຍແລ້ວ."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"ກຳລັງເຂົ້າຮ່ວມການປະຊຸມສາຍ."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ວາງສາຍທີ່ພັກໄວ້ແລ້ວ."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ບໍ່ສາມາດໂທໄດ້ເນື່ອງຈາກຕອນນີ້ອຸປະກອນກຳລັງຖືກຈັດຫາມາຢູ່."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ບໍ່ສາມາດໂທອອກໄດ້ເນື່ອງຈາກກຳລັງມີສາຍໂທອອກຢູ່ກ່ອນແລ້ວ."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ບໍ່ສາມາດໂທອອກໄດ້ເນື່ອງຈາກມີສາຍທີ່ກຳລັງໂທເຂົ້າມາທີ່ຍັງບໍ່ໄດ້ຮັບຢູ່. ກະລຸນາຮັບສາຍ ຫຼື ວາງສາຍທີ່ກຳລັງໂທເຂົ້າມາກ່ອນຈະໂທໃໝ່."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ບໍ່ສາມາດໂທໄດ້ເນື່ອງຈາກມີການປິດການໂທໂດຍໃຊ້ຄຸນສົມບັດລະບົບ ro.telephony.disable-call."</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 80c05cd..b83c898 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Patobulintas 4G LTE režimas"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Naudoti LTE paslaugas „Voice“ ir kitiems ryšiams patobulinti (rekomenduojama)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Naudoti 4G paslaugas „Voice“ ir kitiems ryšiams patobulinti (rekomenduojama)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Duomenys įgalinti"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Leisti naudoti duomenis"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Dėmesio"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Peradresuotas skambutis."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Prisijungiama prie konferencinio skambučio."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Sulaikytas skambutis nutrauktas."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Negalite skambinti, nes įrenginys šiuo metu yra rengiamas naudoti."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Negalite skambinti, nes šiuo metu vykdomas kitas siunčiamasis skambutis."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Negalite skambinti, nes yra neatsakytas gaunamasis skambutis. Atsiliepkite arba atmeskite gaunamąjį skambutį prieš pradėdami naują."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Negalite skambinti, nes skambinimo funkcija išjungta naudojant sistemos ypatybę „ro.telephony.disable-call“."</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 906a4b8..af8a651 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Uzlabota 4G LTE režīms"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Lietojiet LTE pakalpojumus, lai uzlabotu balss un cita veida saziņu (ieteicams)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Lietojiet 4G pakalpojumus, lai uzlabotu balss un cita veida saziņu (ieteicams)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Dati ir iespējoti."</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Atļaut datu izmantošanu"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Uzmanību!"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Pāradresēts zvans."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Notiek pievienošanās konferences zvanam."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Tika atvienots aizturēts zvans."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Nevar veikt zvanu, jo pašlaik tiek veikts ierīces nodrošināšanas process."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nevar veikt zvanu, jo jau tiek sastādīts numurs citam izejošajam zvanam."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Nevar veikt zvanu, jo ir neatbildēts ienākošais zvans. Pirms jauna zvana veikšanas atbildiet uz ienākošo zvanu vai noraidiet to."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Nevar veikt zvanu, jo zvanīšana ir atspējota, izmantojot sistēmas rekvizītu ro.telephony.disable-call."</string>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index c494809..dcc61e5 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Режим на подобрени 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Користете ги услугите на LTE за да ја подобрите гласовната и другите видови комуникација (препорачано)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Користете ги услугите 4G за да ја подобрите гласовната и другите видови комуникација (препорачано)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Податоците се овозможени"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Дозволи користење интернет"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Внимание"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Проследен повик."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Се придружувате на конференциски повик."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Повикот на чекање е прекинат."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Не може да се воспостави повик затоа што уредот се подготвува во моментов."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Не може да се воспостави повик затоа што веќе се бира друг појдовен повик."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Не може да се воспостави повик затоа што има неодговорен дојдовен повик. Одговорете или одбијте го дојдовниот повик пред воспоставувањето на новиот повик."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Не може да се воспостави повик затоа што повикувањето е оневозможено со системското својство ro.telephony.disable-call."</string>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 56aaf61..81bc9e1 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"മെച്ചപ്പെടുത്തിയ 4G LTE മോഡ്"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"വോയ്‌സ്, മറ്റ് ആശയവിനിമയങ്ങൾ (ശുപാർശിതം) എന്നിവ മികച്ചതാക്കുന്നതിന് LTE സേവനങ്ങൾ ഉപയോഗിക്കുക"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"വോയ്‌സ്, മറ്റ് ആശയവിനിമയങ്ങൾ (നിർദ്ദേശിതം) എന്നിവ മികച്ചതാക്കുന്നതിന് 4G സേവനങ്ങൾ ഉപയോഗിക്കുക"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ഡാറ്റ പ്രവർത്തനക്ഷമമാക്കി"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ഡാറ്റ ഉപയോഗം അനുവദിക്കുക"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ശ്രദ്ധിക്കുക"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"കൈമാറിയ കോൾ."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"കോൺഫറൻസ് കോളിൽ ചേരുന്നു."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ഹോൾഡ് ചെയ്‌ത കോൾ സ്വതന്ത്രമാക്കി."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ഉപകരണം നിലവിൽ പ്രൊവിഷൻ ചെയ്‌തുകൊണ്ടിരിക്കുന്നതിനാൽ, ഒരു കോൾ നടത്താനാവില്ല."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"മറ്റൊരു ഔട്ട്ഗോയിംഗ് കോൾ മുമ്പേ തന്നെ ഡയൽ ചെയ്യുന്നതിനാൽ, ഒരു കോൾ നടത്താനാവില്ല."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"മറുപടി ലഭിക്കാത്ത ഒരു ഇൻ‌കമിംഗ് കോൾ ഉള്ളതിനാൽ, ഒരു കോൾ നടത്താനാവില്ല. ഒരു പുതിയ കോൾ നടത്തുന്നതിന് മുൻപായി ഇൻകമിംഗ് കോളിന് മറുപടി നൽകുക അല്ലെങ്കിൽ നിരസിക്കുക."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-കോൾ സിസ്‌റ്റം പ്രോപ്പർട്ടി ഉപയോഗിച്ച് കോൾ ചെയ്യൽ പ്രവർത്തനരഹിതമാക്കിയതിനാൽ ഒരു കോൾ നടത്താനാവില്ല."</string>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 0dd25c5..25fe090 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Сайжруулсан 4G LTE горим"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"LTE-г ашиглан дуут болон бусад төрлийн харилцаа холбооны хэрэгслийг сайжруул (зөвлөхүйц)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"4G үйлчилгээг дуу хоолой болон бусад харилцаа холбоог (санал болгосон) сайжруулахад ашиглах"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Өгөгдөл идэвхжсэн"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Дата ашиглалтыг зөвшөөрөх"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Анхааруулга"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Дамжуулсан дуудлага."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Хурлын дуудлагад нэгдэж байна."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Хүлээлгэсэн дуудлагыг холбосон."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Одоогоор төхөөрөмжийг бэлдэж байгаа тул дуудлага хийх боломжгүй байна."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Өөр залгасан дугаар руу аль хэдийн залгаж байх үед дуудлага хийх боломжгүй."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Хариулаагүй ирсэн дуудлага байх үед дуудлага хийх боломжгүй. Шинэ дуудлага хийхийн өмнө ирсэн дуудлагад хариулах эсвэл татгалзана уу."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call системийн өмчийг ашиглан дуудлагыг цуцалсан бол дуудлага хийх боломжгүй."</string>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 5cf0ded..f9ab34c 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"वर्धित 4G LTE मोड"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"व्‍हॉइस आणि इतर संप्रेषणे (शिफारस केलेली) सुधारित करण्‍यासाठी LTE सेवांचा वापर करा"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"व्‍हॉइस आणि इतर संभाषणे (शिफारस केलेली) सुधारित करण्‍यासाठी LTE सेवांचा वापर करा"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"डेटा सक्षम केला"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"डेटा वापरास अनुमती द्या"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"लक्ष द्या"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"कॉल फॉरवर्ड केला."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"कॉन्‍फरन्‍स कॉलमध्‍ये सामील होत आहे."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"घेतलेला कॉल बंद केला."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"सध्या डिव्हाइसची तरतूद केली जात असल्यामुळे कॉल करू शकत नाही."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"दुसरा आउटगोइंग कॉल आधीच डायल होत असल्यामुळे कॉल करू शकत नाही."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"अनुत्तरित इनकमिंग कॉल असल्यामुळे कॉल करू शकत नाही. नवीन कॉल करण्याआधी इनकमिंग कॉलला उत्तर द्या किंवा तो नाकारा."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call सिस्टम प्रॉपर्टी वापरून कॉल करणे बंद केले गेल्यामुळे कॉल करू शकत नाही."</string>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index 593173f..5fd6b3d 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Mod 4G LTE Dipertingkat"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Gunakan perkhidmatan LTE untuk memperbaik suara dan komunikasi lain (disyorkan)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Gunakan perkhidmatan 4G untuk memperbaik suara dan komunikasi lain (disyorkan)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data didayakan"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Benarkan penggunaan data"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Perhatian"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Panggilan dimajukan."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Menyertai panggilan sidang."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Panggilan yang ditunda telah dilepaskan."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Tidak dapat membuat panggilan kerana peranti sedang diperuntukkan."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Tidak dapat membuat panggilan kerana panggilan keluar lain sudah pun mendail."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Tidak dapat membuat panggilan kerana terdapat panggilan masuk yang tidak dijawab. Jawab atau tolak panggilan masuk itu sebelum membuat panggilan baharu."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Tidak dapat membuat panggilan kerana panggilan telah dilumpuhkan menggunakan sifat sistem ro.telephony.disable-call."</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 177f205..1298b06 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"မြှင့်တင်ထား 4G LTE မုဒ်"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"အသံခေါ်ဆိုမှုနှင့် အခြားဆက်သွယ်ရေးများ တိုးတက်စေရန် LTE ဝန်ဆောင်မှုများ ကိုအသုံးပြုမည် (အကြံပြုထား)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"အသံခေါ်ဆိုမှုနှင့် အခြားဆက်သွယ်ရေးများ ပိုမိုကောင်းမွန်စေရန် 4G ဝန်ဆောင်မှုများ အသုံးပြုပါ (အကြံပြုထားသည်)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ဒေတာ ဖွင့်ထားပြီး"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ဒေတာ သုံးစွဲမှု ခွင့်ပြုရန်"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"သတိပြုရန်"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ထပ်ဆင့်ပို့ထားသော ခေါ်ဆိုမှု။"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"အစည်းအဝေးခေါ်ဆိုမှုကို ချိတ်ဆက်နေပါသည်။"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ကိုင်ထားသော ဖုန်းကို ချလိုက်ပါပြီ။"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ကိရိယာကို လတ်တလော ပြင်ဆင်နေသဖြင့် ဖုန်းခေါ်၍ မရနိုင်ပါ။"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"အထွက်ခေါ်ဆိုမှု ပြုလုပ်ထားသဖြင့် ဖုန်းထပ်ခေါ်၍ မရနိုင်ပါ။"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"မဖြေကြားရသေးသော အဝင်ခေါ်ဆိုမှု ရှိနေသဖြင့် ဖုန်းခေါ်၍ မရနိုင်ပါ။ ဖုန်းခေါ်ဆိုမှုအသစ် မပြုလုပ်မီ ဖုန်းကိုင်ပါ (သို့) ငြင်းပယ်ပါ။"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call စနစ် မူပိုင်ခွင့် အသုံးပြုပြီး ခေါ်ဆိုခြင်းကို ပိတ်ထားသဖြင့် ဖုန်းခေါ်၍ မရနိုင်ပါ။"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index a00b110..f972585 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Forbedret 4G LTE-modus"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Bruk LTE-tjenester for å forbedre stemme- og andre typer kommunikasjon (anbefalt)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Bruk 4G-tjenester for å forbedre stemmekommunikasjon og andre typer kommunikasjon (anbefalt)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data aktivert"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Tillat databruk"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Obs!"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Viderekoblet anrop."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Blir med i konferansesamtalen."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Anropet som var på vent, er frigitt."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Kan ikke foreta et anrop fordi enheten er i ferd med å bli klargjort for administrering."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Du kan ikke ringe fordi telefonen allerede slår nummeret for et annet utgående anrop."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Du kan ikke ringe fordi du ikke har svart på et innkommende anrop. Svar på eller avvis det innkommende anropet før du ringer på nytt."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Du kan ikke ringe fordi anrop er deaktivert ved hjelp av systemegenskapen ro.telephony.disable-call."</string>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 94960f8..d26274b 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Enhanced 4G LTE Mode"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"आवाज र अन्य सञ्चार सुधार गर्न LTE सेवाहरूको प्रयोग गर्नुहोस् (सिफारिस गरिएको)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"आवाज र अन्य सञ्चार सुधार गर्न 4G सेवाहरूको प्रयोग गर्नुहोस् (सिफारिस गरिएको)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"डेटा सक्षम भयो"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"डेटा उपयोगलाई अनुमति दिनुहोस्"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ध्यानाकर्षण"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"कल फर्वार्ड गरियो।"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"सम्मेलन कलमा सामेल हुँदै छ।"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"होल्डमा राखिएको कललाई विच्छेद गरियो।"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"यन्त्रमा हाल सेवाहरूको व्यवस्था गरिँदै हुनाले कल गर्न सकिँदैन।"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"अर्को बहिर्गमन कल पहिले नै डायल भएका हुनाले कल गर्न सकिँदैन।"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"जवाफ नदिइएको आगमन कल जारी रहेकाले नयाँ कल गर्न सकिँदैन। कुनै नयाँ कल गर्नुअघि आगमन कलको जवाफ दिनुहोस् वा त्यसलाई अस्वीकार गर्नुहोस्।"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call प्रणालीको गुण प्रयोग गरेर कल गर्ने सुविधा असक्षम पारिएको हुनाले कल गर्न सकिँदैन।"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index b59276a..690d24e 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Geoptimaliseerde 4G LTE-modus"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"LTE-services gebruiken voor betere spraak- en andere communicatie (aanbevolen)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"4G-services gebruiken voor betere gesproken en andere communicatie (aanbevolen)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Gegevenstoegang aan"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Gegevensgebruik toestaan"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Let op"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Doorgeschakeld gesprek."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Deelnemen aan telefonische vergadering…"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"In de wacht gezette gesprek is vrijgegeven."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Kan geen gesprek plaatsen omdat het apparaat momenteel wordt geregistreerd."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Kan gesprek niet plaatsen omdat er al een uitgaand gesprek is gestart."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Kan gesprek niet plaatsen omdat er een niet-beantwoord inkomend gesprek is. Beantwoord of weiger het inkomende gesprek voordat je een nieuw gesprek plaatst."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Kan gesprek niet plaatsen omdat bellen is uitgeschakeld via de systeemeigenschap ro.telephony.disable-call."</string>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index 7545865..2875f12 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"ଉନ୍ନତ 4G LTE ମୋଡ୍‍"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ଭଏସ୍ ଓ ଅନ୍ୟାନ୍ୟ ଯୋଗାଯୋଗ(ପରାମର୍ଶିତ)କୁ ଉନ୍ନତ କରିବା ପାଇଁ LTE ସେବା ବ୍ୟବହାର କରନ୍ତୁ"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ଭଏସ୍ ଓ ଅନ୍ୟାନ୍ୟ ଯୋଗାଯୋଗ(ପରାମର୍ଶିତ)କୁ ଉନ୍ନତ କରିବା ପାଇଁ 4G ସେବା ବ୍ୟବହାର କରନ୍ତୁ"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ଡାଟା ସକ୍ଷମ ହୋ‌ଇଛି"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ଡାଟାର ବ୍ୟବହାରକୁ ଅନୁମତି ଦିଅନ୍ତୁ"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ଧ୍ୟାନଦିଅନ୍ତୁ"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ଫରୱାର୍ଡ କରାଯାଇଥିବା କଲ୍।"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"କନଫରେନ୍ସ କଲ୍‌ରେ ଯୋଗ ଦେବା।"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ହୋଲ୍ଡ କରାଯାଇଥିବା କଲ୍‌ରୁ ହୋଲ୍ଡ ହଟାଇଦିଆଗଲା।"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ଡିଭାଇସ୍‍ଟି ବର୍ତ୍ତମାନ ବ୍ୟବସ୍ଥିତ ହେଉଥିବା ଯୋଗୁଁ ଡିଭାଇସ୍‍ଭାବରେ ଏକ କଲ୍‍ କରି ହେବ ନାହିଁ।"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ପୂର୍ବରୁ ଅନ୍ୟ ଏକ ଆଉଟ୍‌ଗୋଇଂ କଲ୍ ଡାଏଲ୍ କରାଯାଉଥିବା ଯୋଗୁଁ ଏକ କଲ୍ କରିପାରିବେ ନାହିଁ।"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ଗୋଟିଏ ଉତ୍ତର ଦିଆଯାଇନଥିବା ଇନ୍‌କମିଂ କଲ୍ ଯୋଗୁଁ ଅନ୍ୟ ଏକ କଲ୍ କରିପାରିବେ ନାହିଁ । ଏକ ନୂତନ କଲ୍ କରିବା ପୂର୍ବରୁ ଇନ୍‌କମିଂ କଲ୍‌ଟିର ଉତ୍ତର ଦିଅନ୍ତୁ କିମ୍ବା ଏହାକୁ ଅଗ୍ରାହ୍ୟ କରନ୍ତୁ।"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call ସିଷ୍ଟମ୍ ଗୁଣର ପ୍ରୟୋଗ କରି କଲ୍ କରିବାର ସୁବିଧାକୁ ଅକ୍ଷମ କରାଯାଇଥିବା ଯୋଗୁଁ ଏକ କଲ୍ କରାଯାଇପାରିବ ନାହିଁ।"</string>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index 6b5a7b2..c303982 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"ਵਿਸਤ੍ਰਿਤ 4G LTE ਮੋਡ"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ਵੌਇਸ ਅਤੇ ਹੋਰ ਸੰਚਾਰ ਬਿਹਤਰ ਬਣਾਉਣ ਲਈ  LTE ਸੇਵਾਵਾਂ ਵਰਤੋ ( ਸਿਫ਼ਾਰਸ਼  ਕੀਤਾ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ਅਵਾਜ਼ ਅਤੇ ਹੋਰ ਸੰਚਾਰਾਂ (ਸਿਫ਼ਾਰਸ਼ ਕੀਤੇ) ਨੂੰ ਬਿਹਤਰ ਬਣਾਉਣ ਲਈ 4G ਸੇਵਾਵਾਂ ਵਰਤੋ"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ਡਾਟਾ ਸਮਰਥਿਤ"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ਡਾਟਾ ਵਰਤੋਂ ਦੀ ਆਗਿਆ ਦਿਓ"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"ਸਾਵਧਾਨ"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"ਕਾਲ ਅੱਗੇ ਭੇਜੀ ਗਈ।"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"ਕਾਨਫਰੰਸ ਕਾਲ ਵਿੱਚ ਸ਼ਾਮਲ ਹੋਇਆ ਜਾ ਰਿਹਾ ਹੈ।"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ਰੋਕ ਕੇ ਰੱਖੀ ਕਾਲ ਮੁੜ-ਸ਼ੁਰੂ ਹੋਈ।"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ਕਾਲ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਕਿਉਂਕਿ ਇਸ ਵੇਲੇ ਡੀਵਾਈਸ ਦਾ ਪ੍ਰਬੰਧਨ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ।"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ਕਾਲ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਕਿਉਂਕਿ ਇੱਕ ਹੋਰ ਆਊਟਗੋਇੰਗ ਕਾਲ ਪਹਿਲਾਂ ਹੀ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ।"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ਕਾਲ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਕਿਉਂਕਿ ਇੱਕ ਜਵਾਬ ਨਾ ਦਿੱਤੀ ਗਈ ਇਨਕਮਿੰਗ ਕਾਲ ਪਹਿਲਾਂ ਤੋਂ ਹੀ ਆ ਰਹੀ ਹੈ। ਨਵੀਂ ਕਾਲ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਇਨਕਮਿੰਗ ਕਾਲ ਦਾ ਜਵਾਬ ਦਿਓ ਜਾਂ ਅਸਵੀਕਾਰ ਕਰੋ।"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ਕਾਲ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ ਕਿਉਂਕਿ ਕਾਲਿੰਗ ਨੂੰ ro.telephony.disable-call ਸਿਸਟਮ ਪ੍ਰਾਪਰਟੀ ਵਰਤ ਕੇ ਬੰਦ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ।"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index a889f3f..5ac8293 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Tryb rozszerzonego 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Użyj usług LTE, by poprawić łączność głosową i inną (zalecane)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Użyj usług 4G, by poprawić łączność głosową i inną (zalecane)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Włączone przesyłanie danych"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Zezwalaj na użycie danych"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Uwaga"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Połączenie przekierowane."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Dołączam do połączenia konferencyjnego."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Wstrzymane połączenie zostało wznowione."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Nie można nawiązać połączenia, ponieważ urządzenie jest w tej chwili rejestrowane."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nie można nawiązać połączenia, ponieważ inne połączenie jest już nawiązywane."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Nie można nawiązać połączenia, ponieważ masz nieodebrane połączenie przychodzące. Odbierz je lub odrzuć przed nawiązaniem nowego."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Nie można nawiązać połączenia, ponieważ ta funkcja została wyłączona przy użyciu właściwości systemowej ro.telephony.disable-call."</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 42649cf..59fc18d 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Modo 4G LTE avançado"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Utilizar os serviços LTE para melhorar a voz e outras comunicações (recomendado)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Utilizar os serviços 4G para melhorar a voz e outras comunicações (recomendado)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Dados ativados"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Permitir a utilização de dados"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Atenção"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"A chamada foi reencaminhada."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Está a participar na conferência."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"A chamada em espera foi desligada."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Não é possível efetuar uma chamada porque o dispositivo está atualmente a ser aprovisionado."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Não é possível efetuar uma chamada porque já está a ser efetuada outra chamada."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Não pode efetuar uma chamada porque há uma chamada recebida não atendida. Atenda ou rejeite a chamada recebida antes de efetuar uma nova chamada."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Não pode efetuar uma chamada porque as chamadas foram desativadas através da propriedade de sistema ro.telephony.disable-call."</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index b11edfa..e4e2764 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Modo 4G LTE avançado"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Usar serviços de LTE para melhorar a voz e outras comunicações (recomendado)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Usar os serviços 4G para melhorar a voz e outras comunicações (recomendado)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Dados ativados"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Permitir o uso de dados"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Atenção"</string>
@@ -549,8 +553,8 @@
   <string-array name="tty_mode_entries">
     <item msgid="512950011423868021">"TTY desativado"</item>
     <item msgid="3971695875449640648">"TTY completo"</item>
-    <item msgid="1937509904407445684">"TTY HCO"</item>
-    <item msgid="5644925873488772224">"TTY VCO"</item>
+    <item msgid="1937509904407445684">"TTD HCO"</item>
+    <item msgid="5644925873488772224">"TTD VCO"</item>
   </string-array>
     <string name="dtmf_tones_title" msgid="5163153771291340803">"Tons DTMF"</string>
     <string name="dtmf_tones_summary" msgid="3351820372864020331">"Definir duração dos tons DTMF"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"A chamada foi encaminhada."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Participando da teleconferência."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"A chamada em espera foi desconectada."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Não é possível ligar porque o dispositivo está sendo provisionado no momento,"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Não é possível ligar porque há outra chamada sendo realizada."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Não é possível ligar porque há uma chamada recebida que não foi atendida. Atenda ou rejeite essa chamada antes de fazer outra."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Não é possível ligar porque as chamadas foram desativadas pela propriedade \"ro.telephony.disable-call system\"."</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 586fcef..80bef46 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Mod 4G LTE îmbunătățit"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Folosiți servicii LTE pt. a îmbunătăți comunicări vocale și altele (recomandat)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Folosiți servicii 4G pentru a îmbunătăți comunicările vocale și altele (recomandat)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Date activate"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Permiteți utilizarea datelor"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Atenție"</string>
@@ -764,6 +768,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Apel redirecționat"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Vă conectați la conferința telefonică."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Apelul în așteptare a fost deconectat."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Nu se poate iniția un apel, deoarece, momentan, are loc provizionarea dispozitivului."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nu se poate iniția un apel când se efectuează deja alt apel."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Nu se poate iniția un apel când primiți un apel la care nu ați răspuns. Răspundeți sau respingeți apelul primit înainte de a iniția un apel nou."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Nu se poate iniția un apel deoarece apelarea a fost dezactivată folosindu-se funcția de sistem ro.telephony.disable-call."</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 6b675bb..2a650fc 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Режим 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Использовать сервисы LTE, чтобы улучшить качество связи (рекомендуется)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Использовать сервисы 4G, чтобы улучшить качество связи (рекомендуется)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Передача данных"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Разрешить использование данных"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Внимание!"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Переадресация вызова."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Присоединение к конференц-вызову…"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Вызов снят с удержания."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Невозможно позвонить: выполняется подготовка устройства"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Невозможно позвонить, поскольку ещё не завершен другой исходящий вызов."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Невозможно позвонить, поскольку вы не ответили на входящий вызов. Примите или отклоните текущий звонок."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Невозможно позвонить, поскольку вызовы запрещены системным свойством ro.telephony.disable-call."</string>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index 8e6b080..d3002f3 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"දියුණු කරන ලද 4G LTE මෝඩය"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"හඬ සහ වෙනත් සන්නිවේදනයන් දියුණු කිරීමට LTE සේවාව භාවිතා කරන්න (නිර්දේශ කළ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"හඬ සහ වෙනත් සන්නිවේදන දියුණු කිරීමට 4G සේවා භාවිත කරන්න (නිර්දේශිත)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"දත්ත සබලයි"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"දත්ත භාවිතයට ඉඩ දෙන්න"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"අවධානය යොමු කරන්න"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"යොමු කළ ඇමතුම."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"සම්මන්ත්‍රණ ඇමතුමට එක් වෙමින්."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"රඳවා ගත් ඇමතුම නිදහස් කර ඇත."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"උපාංගය දැනට සුදානම් කරමින් පවතින නිසා ඇමතුමක් ගැනීමට නොහැකිය."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"තවත් යන ඇමතුමක් දැනටමත් ඩයල් කරමින් පවතින නිසා අැමතුමක් ගැනීමට නොහැකිය."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"පිළිතුරු නොදුන් එන ඇමතුමක් තිබෙන නිසා අැමතුමක් ගැනීමට නොහැකිය. නව ඇමතුමක් ගැනීමට පෙර එන අැමතුමට පිළිතුරු දෙන්න නැතහොත් ප්‍රතික්ෂේප කරන්න."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ඇමතුම ro.telephony.disable-call පද්ධති ගුණාංගය භාවිතයෙන් ඇමතුම අබල කර ඇති නිසා ඇමතුමක් ගැනීමට නොහැකිය."</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 60e7359..303961e 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Zlepšený režim 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Použiť služby LTE na vylepšenie hlasu a ďalších komunikácií (odporúčané)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Používať na zlepšovanie hlasovej a ďalšej komunikácie služby 4G (odporúčané)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Povoliť dát. prenosy"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Povoliť využívanie dát"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Pozor"</string>
@@ -520,8 +524,8 @@
     <string name="dial_emergency_empty_error" msgid="9130194953830414638">"Hovor nie je možné uskutočniť. Vytočte číslo tiesňového volania."</string>
     <string name="dial_emergency_calling_not_available" msgid="5675557523782491826">"Tiesňové volania nie sú k dispozícii"</string>
     <string name="police_type_description" msgid="5324410799919829693">"Polícia"</string>
-    <string name="ambulance_type_description" msgid="4114815025408089866">"Sanitka"</string>
-    <string name="fire_type_description" msgid="7145996705197064710">"Požiar"</string>
+    <string name="ambulance_type_description" msgid="4114815025408089866">"Záchranka"</string>
+    <string name="fire_type_description" msgid="7145996705197064710">"Hasiči"</string>
     <string name="description_concat_format" msgid="7141070875487870177">"%1$s, %2$s"</string>
     <string name="dialerKeyboardHintText" msgid="9192914825413747792">"Číslo vytočíte pomocou klávesnice."</string>
     <string name="onscreenHoldText" msgid="2285258239691145872">"Podržať"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Presmerovaný hovor."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Pripájate sa ku konferenčnému hovoru."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Podržaný hovor bol odpojený."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Nie je možné uskutočniť hovor, pretože práve prebieha komunikácia zariadenia s operátorom."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Hovor sa nedá uskutočniť, pretože sa už vytáča iný odchádzajúci hovor."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Hovor sa nedá uskutočniť, pretože máte neprijatý prichádzajúci hovor. Prijmite alebo odmietnite prichádzajúci hovor a až potom uskutočnite nový hovor."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Hovor sa nedá uskutočniť, pretože hovory boli zakázané systémovým príkazom ro.telephony.disable-call."</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index 3263b15..6665728 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Izboljšan način 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Uporaba storitev LTE za izboljšanje glas. in drugih komunikacij (priporočeno)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Uporaba storitev 4G za izboljšanje glasovne in druge komunikacije (priporočeno)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Podatki omogočeni"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Dovoli prenos podatkov"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Opozorilo"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Preusmerjeni klic."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Pridruževanje konferenčnemu klicu."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Zadržani klici so sproščeni."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Klica ni mogoče opraviti, ker trenutno poteka priprava naprave za uporabo."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Klica ni mogoče opraviti, ker že poteka vzpostavljanje drugega odhodnega klica."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Klica ni mogoče opraviti, ker imate dohodni klic, na katerega še niste odgovorili. Preden začnete z opravljanjem novega klica, sprejmite ali zavrnite dohodni klic."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Klica ni mogoče opraviti, ker je klicanje onemogočeno zaradi sistemske lastnosti ro.telephony.disable-call."</string>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index aacd687..677f3bb 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Modaliteti i përparuar 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Përdor shërbimet LTE për të përmirësuar komunikimet zanore dhe të tjera (rekomandohet)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Përdor shërbimet 4G për të përmirësuar komunikimet zanore dhe të tjera (rekomandohet)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Të dhënat janë të aktivizuara"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Lejo përdorimin e të dhënave"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Kujdes!"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Telefonatë e transferuar."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Po bashkohesh në një telefonatë konferencë."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Telefonata në pritje u shkëput."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Telefonata nuk mund të kryhet sepse pajisja po përgatitet aktualisht."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Nuk mund të kryhet një telefonatë pasi një telefonatë tjetër dalëse është duke u kryer tashmë."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Nuk mund të kryhet një telefonatë sepse është një telefonatë hyrëse që nuk ka marrë përgjigje. Përgjigju ose refuzoje telefonatën hyrëse para se të kryesh një telefonatë të re."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Nuk mund të kryhet një telefonatë sepse telefonata është çaktivizuar duke përdorur vetinë e sistemit ro.telephony.disable-call."</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index b3488c0..acd8231 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Побољшани 4G LTE режим"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Коришћење LTE услуга за побољшање гласовних и других комуникација (препоручено)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Користи 4G услуге за побољшање гласовне и друге комуникације (препоручено)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Подаци су омогућени"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Омогућавање потрошње података"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Пажња"</string>
@@ -764,6 +768,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Прослеђен позив."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Улазите у конференцијски позив."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Позив више није на чекању."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Тренутно не можете да упутите позив зато што се уређају додељује услуга."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Не можете да позовете јер се већ упућује други одлазни позив."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Не можете да позовете јер имате долазни позив на који нисте одговорили. Одговорите на долазни позив или га одбијте пре упућивања новог позива."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Не можете да позовете јер је позивање онемогућено преко својства система ro.telephony.disable-call."</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 70eb83a..2d4f2f4 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Förbättrat 4G LTE-läge"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Använd LTE-tjänster för att förbättra bl.a. röstkommunikation (rekommenderas)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Använd 4G-tjänster för att förbättra bl.a. röstkommunikation (rekommenderas)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data är aktiverat"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Tillåt dataanvändning"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Obs!"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Vidarekopplat samtal."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Ansluter till konferenssamtal."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Parkerat samtal återupptaget."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Det går inte att ringa ett samtal eftersom enheten för närvarande tillhandahålls."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Det går inte att ringa ett samtal eftersom ett annat utgående samtal ringer upp."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Det går inte att ringa eftersom det finns ett obesvarat inkommande samtal. Svara eller avvisa det innan du ringer ett nytt samtal."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Det går inte att ringa eftersom uppringning har inaktiverats med systemegenskapen ro.telephony.disable-call."</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index b29d4e4..47afb90 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Hali Iliyoimarishwa ya 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Tumia huduma za LTE ili uboreshe sauti na mawasiliano mengine (inapendekezwa)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Tumia huduma za 4G ili uboreshe sauti na mawasiliano mengine (inapendekezwa)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Data imewashwa"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Ruhusu matumizi ya data"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Ilani"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Simu iliyosambazwa."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Unajiunga kwenye simu ya mkutano."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Simu iliyositishwa imekatwa."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Haiwezi kupiga simu kwa sababu tayari kifaa kinaratibiwa kutoa huduma mpya kwa wateja kwa sasa."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Haiwezi kupiga simu kwa sababu tayari unapiga simu nyingine."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Haiwezi kupiga simu kwa sababu kuna simu inayoingia ambayo hujajibu. Jibu au ukatae simu hiyo inayoingia kabla ya kupiga simu mpya."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Haiwezi kupiga simu kwa sababu upigaji simu umezuiwa kupitia kipengele cha mfumo cha ro.telephony.disable-call."</string>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index f733471..e703875 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"மேம்பட்ட 4G LTE பயன்முறை"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"குரல் மற்றும் பிற தொடர்புமுறைகளை மேம்படுத்த, LTE சேவைகளைப் பயன்படுத்தவும் (பரிந்துரைக்கப்பட்டது)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"குரல் மற்றும் பிற தகவல்தொடர்புகளை மேம்படுத்த, 4G சேவைகளைப் பயன்படுத்தவும் (பரிந்துரைக்கப்பட்டது)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"தரவு இயக்கப்பட்டது"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"டேட்டா உபயோகத்தை அனுமதி"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"கவனம் தேவை"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"பகிரப்பட்ட அழைப்பு."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"குழு அழைப்பில் சேர்கிறீர்கள்."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ஹோல்டில் இருந்த அழைப்புத் துண்டிக்கப்பட்டது."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"தற்போது சாதனத்தை அமைத்துக் கொண்டிருப்பதால், அழைப்பை மேற்கொள்ள முடியாது."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ஏற்கனவே ஒரு அழைப்பு டயல் ஆகிக்கொண்டிருப்பதால், இந்த அழைப்பைச் செய்ய முடியாது."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"உள்வரும் அழைப்பிற்கு இன்னும் பதிலளிக்காததால், இந்த அழைப்பைச் செய்ய முடியாது. புதிதாக ஒரு அழைப்பைச் செய்வதற்கு முன்னர், உள்வரும் அழைப்பிற்குப் பதிலளிக்கவும் அல்லது நிராகரிக்கவும்."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call எனும் சிஸ்டம் பிராப்பர்ட்டியைப் பயன்படுத்தி அழைப்பதற்கான வசதி முடக்கப்பட்டுள்ளதால், இந்த அழைப்பைச் செய்ய முடியாது."</string>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 8cc2d18..c66ba7e 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"మెరుగుపరిచిన 4G LTE మోడ్"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"వాయిస్, ఇతర కమ్యూనికే. మెరుగుపరచడానికి LTE సేవలను ఉపయోగించు (సిఫార్సు చేయబడింది)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"వాయిస్, ఇతర కమ్యూనికేషన్‌లను మెరుగుపరచడానికి 4G సేవలను ఉపయోగించండి (సిఫార్సు చేయబడింది)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"డేటా ప్రారంభించబడింది"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"డేటా వినియోగాన్ని అనుమతించు"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"హెచ్చరిక"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"కాల్ ఫార్వార్డ్ చేయబడింది."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"కాన్ఫరెన్స్ కాల్‌లో చేరుతున్నారు"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"హోల్డ్‌లో ఉంచిన కాల్ ప్రారంభించబడింది."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"వినియోగదారుకు ప్రస్తుతం ఏ సేవలు అందుబాటులో ఉన్నాయనే విచారణ పనిలో పరికరం ఉన్నందున కాల్ చేయడం సాధ్యం కాదు."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ఇంకొక అవుట్‌గోయింగ్ కాల్ ఇప్పటికే చేస్తున్నందున మరో కాల్ చేయడం సాధ్యపడదు."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"మాట్లాడాల్సిన ఇన్‌కమింగ్ కాల్ వస్తున్నందున బయటికి కాల్ చేయడం సాధ్యపడదు. కొత్త కాల్ చేయడం కంటే ముందుగా ఇన్‌కమింగ్ కాల్‌కి జవాబివ్వండి లేదా కాల్ నిరాకరించండి."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ro.telephony.disable-call సిస్టమ్ లక్షణాన్ని ఉపయోగించి కాలింగ్‌ని నిలిపివేసినందున, ఇప్పుడు కాల్ చేయలేరు."</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 0ccfccf..899ed97 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"โหมด 4G LTE ที่ปรับปรุงแล้ว"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"ใช้บริการ LTE เพื่อปรับปรุงเสียงและการติดต่อสื่อสารด้วยวิธีอื่นๆ (แนะนำ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"ใช้บริการ 4G เพื่อปรับปรุงเสียงและการติดต่อสื่อสารด้วยวิธีอื่นๆ (แนะนำ)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"เปิดใช้งานข้อมูลแล้ว"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"อนุญาตการใช้ข้อมูล"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"โปรดทราบ"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"สายโอน"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"กำลังเข้าร่วมการประชุมสาย"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"สายที่พักไว้หลุดไปแล้ว"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"ไม่สามารถโทรออกได้เนื่องจากอุปกรณ์กำลังมีการจัดสรรอยู่"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"ไม่สามารถโทรออกได้เนื่องจากมีสายโทรออกอยู่แล้ว"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ไม่สามารถโทรออกได้เนื่องจากมีสายเรียกเข้าที่ยังไม่ได้รับ รับหรือปฏิเสธสายเรียกเข้าก่อนโทรออกใหม่"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"ไม่สามารถโทรออกได้เนื่องจากมีการปิดใช้การโทรโดยใช้คุณสมบัติของระบบ ro.telephony.disable-call"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 49ef7c8..869ea4e 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Enhanced 4G LTE Mode"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Gamitin ang LTE upang pahusayin ang voice at ibang komunikasyon (inirerekomenda)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Gamitin ang mga serbisyo ng 4G para pahusayin ang mga tawag at iba pang komunikasyon (inirerekomenda)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Pinagana ang data"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Payagan ang paggamit ng data"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Bigyang-pansin"</string>
@@ -521,7 +525,7 @@
     <string name="dial_emergency_calling_not_available" msgid="5675557523782491826">"Hindi available ang emergency na pagtawag"</string>
     <string name="police_type_description" msgid="5324410799919829693">"Pulis"</string>
     <string name="ambulance_type_description" msgid="4114815025408089866">"Ambulansya"</string>
-    <string name="fire_type_description" msgid="7145996705197064710">"Apoy"</string>
+    <string name="fire_type_description" msgid="7145996705197064710">"Sunog"</string>
     <string name="description_concat_format" msgid="7141070875487870177">"%1$s, %2$s"</string>
     <string name="dialerKeyboardHintText" msgid="9192914825413747792">"Gamitin ang keyboard upang mag-dial"</string>
     <string name="onscreenHoldText" msgid="2285258239691145872">"I-hold"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Ipinasa ang tawag."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Sumasali sa conference call."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Inalis ang pag-hold sa tawag."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Hindi maaaring tumawag dahil kasalukuyang pino-provision ang device."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Hindi maaaring tumawag dahil mayroon nang dina-dial na isa pang papalabas na tawag."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Hindi maaaring tumawag dahil mayroong hindi nasagot na papasok na tawag. Sagutin o tanggihan ang papasok na tawag bago gumawa ng bagong pagtawag."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Hindi maaaring tumawag dahil na-disable ang pagtawag gamit ang ro.telephony.disable-call na system property."</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 5675592..196f20c 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Geliştirilmiş 4G LTE Modu"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Sesi ve diğer iletişimleri iyileştirmek için LTE hizmetlerini kullanın (önerilir)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Sesi ve diğer iletişimleri iyileştirmek için 4G hizmetlerini kullanın (önerilir)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Veri etkin"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Veri kullanımına izin ver"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Dikkat"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Yönlendirilmiş çağrı."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Konferans çağrısına katılınıyor."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Beklemedeki çağrı serbest bırakıldı."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Şu anda cihazın temel hazırlığı yapılmakta olduğu için arama yapılamıyor."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Zaten aranmakta olan bir numara olduğu için arama yapılamıyor."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Cevaplanmamış bir gelen arama olduğu için arama yapılamıyor. Yeni bir arama yapmadan önce gelen aramayı cevaplayın veya reddedin."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Telefon etme ro.telephony.disable-call sistem özelliği kullanılarak devre dışı bırakıldığı için arama yapılamıyor."</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 99abfc6..e8d4c76 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Розширений режим 4G LTE"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Використ. служби LTE для покращення голосового й інших типів зв’язку (рекоменд.)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Використовувати служби 4G для покращення голосового й інших типів зв’язку (рекомендовано)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Передавання даних"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Дозволити використання даних"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Увага"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Переадресований виклик."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Приєднання до конференц-виклику."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Утримуваний виклик скасовано."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Неможливо здійснити виклик, оскільки наразі збирається інформація про доступність послуги."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Неможливо здійснити виклик, оскільки ви вже телефонуєте на інший номер."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Неможливо здійснити виклик. Прийміть або відхиліть вхідний виклик, перш ніж здійснювати новий."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Неможливо здійснити виклик, оскільки дзвінки вимкнено за допомогою системного параметра ro.telephony.disable-call."</string>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index b7e365d..10e09e9 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"‏Enhanced 4G LTE وضع"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"‏صوتی اور دیگر مواصلات کو بہتر بنانے کیلئے LTE سروسز استعمال کریں (تجویز کردہ)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"‏صوتی اور دیگر مواصلات کو بہتر بنانے کے لیے 4G سروسز استعمال کریں (تجویز کردہ)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"ڈیٹا فعال ہوگیا"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"ڈیٹا کے استعمال کی اجازت دیں"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"توجہ دیں"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"کال کو آگے منتقل کیا گیا۔"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"کانفرنس کال میں شمولیت ہو رہی ہے۔"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"ہولڈ پر رکھی کال جاری ہو گئی۔"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"کال نہیں کی جا سکتی کیوںکہ فی الحال آلہ فراہم کیا جا رہا ہے۔"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"کال نہیں کی جا سکتی کیونکہ باہر جانے والی دوسری کال پہلے سے ڈائل کی جا رہی ہے۔"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"ایک جواب نہ ملنے والی موصول ہونے والی کال کی وجہ سے کال نہیں کی جا سکتی۔ نئی کال کرنے کے لیے پہلے موصول ہونے والی کال کا جواب دیں یا مسترد کریں۔"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"‏ro.telephony.disable-call سسٹم کی خصوصیت کے ذریعے کال کرنے کو غیر فعال کر دیے جانے کی وجہ سے کال نہیں کی جا سکتی۔"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 3541325..668ad12 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Kuchaytirilgan 4G LTE rejimi"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Ovozli va boshqa aloqalarni yaxshilash uchun LTE xizmatlaridan foydalaning"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Ovozli va boshqa aloqalar sifatini yaxshilash uchun 4G xizmatlaridan foydalaning (tavsiya etiladi)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Internet yoqildi"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Mobil internetdan foydalanishga ruxsat"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Diqqat"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Uzatilgan kiruvchi chaqiruv."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Konferens-aloqaga qo‘shilmoqda…"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Chaqiruv kutish rejimidan chiqarildi."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Telefon qilish imkonsiz: qurilma tayyorlanmoqda"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Telefon qilish imkonsiz, chunki siz allaqachon boshqa raqamga telefon qilmoqdasiz."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Telefon qilish imkonsiz. Telefon qilish uchun avval kiruvchi chaqiruvni qabul qiling yoki rad eting."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Telefon qilish imkonsiz, chunki chaqiruvlar ro.telephony.disable-call tizim parametrida faolsizlantirilgan."</string>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index efb5ce9..8c58b58 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Chế độ 4G LTE tăng cường"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Sử dụng dịch vụ LTE để cải tiến tính năng thoại và các phương thức giao tiếp khác (khuyến nghị)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Sử dụng dịch vụ 4G để cải tiến tính năng thoại và các phương thức giao tiếp khác (đề xuất)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Đã bật dữ liệu"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Cho phép sử dụng dữ liệu"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Chú ý"</string>
@@ -386,7 +390,7 @@
   </string-array>
     <string name="cdma_activate_device" msgid="3793805892364814518">"Kích hoạt thiết bị"</string>
     <string name="cdma_lte_data_service" msgid="4255018217292548962">"Thiết lập dịch vụ dữ liệu"</string>
-    <string name="carrier_settings_title" msgid="9028166176523012300">"Cài đặt nhà cung cấp dịch vụ"</string>
+    <string name="carrier_settings_title" msgid="9028166176523012300">"Cài đặt nhà mạng"</string>
     <string name="fdn" msgid="7878832555095183202">"Số gọi định sẵn"</string>
     <string name="fdn_with_label" msgid="187084204115493366">"Số gọi định sẵn (<xliff:g id="SUBSCRIPTIONLABEL">%s</xliff:g>)"</string>
     <string name="manage_fdn_list" msgid="8777755791892122369">"Danh sách FDN"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Cuộc gọi đã được chuyển tiếp."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Đang tham gia cuộc gọi nhiều bên."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Đã ngắt kết nối cuộc gọi chờ."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Không thể thực hiện cuộc gọi vì thiết bị hiện đang trong quá trình xác nhận dịch vụ."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Không thể thực hiện cuộc gọi vì đang gọi đi số khác."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Không thể thực hiện cuộc gọi vì chưa trả lời cuộc gọi đến. Hãy trả lời hoặc từ chối cuộc gọi đến trước khi thực hiện cuộc gọi mới."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Không thể thực hiện cuộc gọi vì tính năng gọi điện đã bị tắt bằng cách sử dụng thuộc tính hệ thống ro.telephony.disable-call."</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 669d33d..a25b794 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"增强型 4G LTE 模式"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"使用 LTE 服务改进语音和其他通信功能（推荐）"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"使用 4G 服务改善语音和其他通讯方式的质量（推荐）"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"启用移动数据网络"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"允许使用数据流量"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"注意"</string>
@@ -762,6 +766,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"已转接来电。"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"正在加入电话会议。"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"保持的通话已中断。"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"由于设备正在配置中，因此无法拨打电话。"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"由于已在拨打另一个电话，因此无法拨打新电话。"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"由于有未接来电，因此无法拨打电话。请先接听或拒绝来电，然后才能拨打新电话。"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"通话功能已经由 ro.telephony.disable-call 系统属性停用，因此无法拨打电话。"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 333fab7..526680c 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"強化 4G LTE 模式"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"使用 LTE 服務改善語音及其他通訊 (建議)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"使用 4G 服務改善語音及其他通訊 (建議)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"啟用流動數據"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"允許使用數據"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"注意"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"來電已轉駁。"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"正在加入電話會議。"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"通話已取消保留。"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"目前正在佈建裝置，無法撥打電話。"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"系統正在撥打另一通電話，因此無法撥打電話。"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"由於目前有尚未接聽的來電，因此無法撥打電話。請先接聽或拒絕來電，然後再撥打電話。"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"通話功能已由 ro.telephony.disable-call 系統屬性停用，因此無法撥打電話。"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 31f8d1e..79bc421 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"加強型 4G LTE 模式"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"使用 LTE 服務提升語音通訊和其他通訊的效能 (建議)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"使用 4G 服務改善語音和其他通訊的品質 (建議)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"啟用行動數據服務"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"允許使用行動數據"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"敬請注意"</string>
@@ -768,6 +772,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"來電轉駁。"</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"正在加入會議通話。"</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"保留中的通話已斷線。"</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"裝置目前正在佈建服務，因此無法撥打電話。"</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"你正在撥出其他電話，因此無法再撥號。"</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"你尚未接聽來電，因此無法撥打電話。你必須先決定接聽或拒接來電，才能再撥打電話。"</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"通話功能已透過 ro.telephony.disable-call system 屬性停用，因此無法撥打電話。"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 580b480..221558e 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -238,6 +238,10 @@
     <string name="enhanced_4g_lte_mode_title" msgid="522191650223239171">"Imodi ye-4G LTE ethuthukisiwe"</string>
     <!-- no translation found for enhanced_4g_lte_mode_title_variant:0 (4447454259719947406) -->
     <string name="enhanced_4g_lte_mode_summary" msgid="2332175070522125850">"Sebenzisa amasevisi we-LTE ukuze uthuthukise izwi nokunye ukuxhumana (kunconyiwe)"</string>
+    <string name="enhanced_4g_lte_mode_summary_o2" msgid="2467813449068614988">"Sebenzisa amasevisi we-G4 ukuze uthuthukise izwi nokunye ukuxhumana (kunconyiwe)"</string>
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:0 (2602242047481988063) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:1 (989876442920201921) -->
+    <!-- no translation found for enhanced_4g_lte_mode_sumary_variant:2 (8852017734075358040) -->
     <string name="data_enabled" msgid="5972538663568715366">"Idatha ivunyelwe"</string>
     <string name="data_enable_summary" msgid="2382798156640007971">"Vumela ukusetshenziswa kwedatha"</string>
     <string name="dialog_alert_title" msgid="6751344986194435476">"Qaphela"</string>
@@ -766,6 +770,7 @@
     <string name="supp_service_forwarded_call" msgid="4509980341645679803">"Ikholi edluliselwe phambili."</string>
     <string name="supp_service_conference_call" msgid="4448616364004466832">"Ijoyina ikholi yengqungquthela."</string>
     <string name="supp_service_held_call_released" msgid="2030677825038709779">"Ikholi ebanjiwe ikhululiwe."</string>
+    <string name="callFailed_otasp_provisioning_in_process" msgid="6361786376484384454">"Ayikwazi ukubeka ikholi njengoba idivayisi okwamanje iyanikezwa."</string>
     <string name="callFailed_already_dialing" msgid="4652915396769232226">"Ayikwazi ukubeka ikholi njengoba enye ikholi ephumayo isivele iyadayela."</string>
     <string name="callFailed_already_ringing" msgid="7747655701540586943">"Ayikwazi ukubeka ikholi njengoba kunekholi engenayo engaphenduliwe. Phendula noma nqaba ikholi engenayo ngaphambi kokubeka ikholi entsha."</string>
     <string name="callFailed_calling_disabled" msgid="7257184079619449933">"Ayikwazi ukubeka ikholi njengoba ukushaya kukhutshaziwe kusetshenziswa isistimu ye-ro.telephony.disable-call."</string>
diff --git a/res/values/config.xml b/res/values/config.xml
index 5ad369f..38a0b18 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -247,4 +247,7 @@
          When this is true, the Telephony stack is able to add additional audio to the outgoing
          audio stream which the remote party will be able to hear. -->
     <bool name="config_support_telephony_audio_device">false</bool>
+
+    <!-- Intent action to launch target emergency app. -->
+    <string name="config_emergency_app_intent"></string>
 </resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index f206322..f40c6b8 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -530,6 +530,16 @@
 
     <!-- Mobile network 4G summary [CHAR LIMIT=80] -->
     <string name="enhanced_4g_lte_mode_summary">Use LTE services to improve voice and other communications (recommended)</string>
+    <string name="enhanced_4g_lte_mode_summary_o2">Use 4G services to improve voice and other communications (recommended)</string>
+    <!-- Carrier variant of Enhaced 4G LTE Mode summary.  [CHAR LIMIT=80] -->
+    <string-array name="enhanced_4g_lte_mode_sumary_variant">
+        <!-- 0: Default -->
+        <item>@string/enhanced_4g_lte_mode_summary</item>
+        <!-- 1: Verizon -->
+        <item>@string/enhanced_4g_lte_mode_summary</item>
+        <!-- 2: O2 UK -->
+        <item>@string/enhanced_4g_lte_mode_summary_o2</item>
+    </string-array>
 
     <!-- Mobile network settings screen, data enabling checkbox name -->
     <string name="data_enabled">Data enabled</string>
diff --git a/res/xml/carrier_ss_string.xml b/res/xml/carrier_ss_string.xml
new file mode 100644
index 0000000..96bcfa4
--- /dev/null
+++ b/res/xml/carrier_ss_string.xml
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 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.
+-->
+<!-- This xml is the command's structure about supplementary service by ussd command.
+     It defines the feature (e.g. call forwarding , caller id), command, parameter, result,
+     response ,and response's value definition.
+     Developer can use the CarrierXmlParser.java to load this xml structure and use function to
+     make ussd command by structure and analyze the ussd response.
+
+     If developer need to define ussd command by specific carrier, developer can add new xml and
+     xml is named carrier_ss_string_carrierId.xml. The carrierId is a number and is defined in
+     <a href="https://android.googlesource.com/platform/packages/providers/TelephonyProvider/+/master/assets/carrier_list.textpb">here</a>
+     For example: carrier_ss_string_850.xml
+
+     The tags define as below:
+     <regular_parser> : It is a regular expression for response massage.
+     <feature name="callforwarding"> : It defines feature about call forwarding.
+     <command name="query"> : The command which is named "query" in feature.
+     <service_code> : The command's service code. The value defines by carrier.
+     <action_code> : From TS 22.030 6.5.2, the procedure always starts with *, #, **, ## or *#.
+     <parameter number="1"> : The parameter is supplementary Information. The number defines the
+                              number of entries.
+     <entry position="1">1</entry> :
+        This defines the entry and entry's position and entry's text.
+        The 'position' is the parameter's position.
+        For example: #120*parameter1*parameter2*parameter3*parameter4#
+            parameter1 position=1
+            parameter2 position=2
+            parameter3 position=3
+            parameter4 position=4
+        The entry's text is define the parameter's value. If developer want to dynamic input,
+        text can use string witch start with "tag_" and define in CarrierXmlParser.java.
+        e.g. "tag_number","tag_time"
+     <response_format number ="3"> : This defines the response message format. The number means
+     the number of parameters.
+     <entry position="6" key="status_code"/> :
+         It defines response message's parameter.
+         The 'position' is the index of parser result which is by <regular_parser>.
+         The 'key' is the variable's name which is defined in CarrierXmlParser.java. Developer can
+         get response value by key's name.
+         For example:
+             120*1*7*number*time*1*0*0# parse by <regular_parser>
+             120    position= 2
+             1      position= 4
+             7      position= 6
+             number position= 8
+             time   position= 10
+     <command_result number="3"> :
+         It defines the meaning for 'key' of 'response_format'.
+         The 'number' means the number of entries.
+     <entry key="status_code" definition="activate">7</entry> :
+         The 'key' is the same as 'key' of <response_format>.
+         The 'definition' is meaning for 'key' when response value is the same as text.
+         For example:
+         If response command is 120*1*7*1# and entry is
+         <entry key="status_code" definition="activate">7</entry>
+         After message parse, the result is that key="status_code" and value is 7.
+         After mapping <command_result>, this means that status_code is activate, when key's value
+         is 7 from response message.
+-->
+
+<resources>
+    <!-- This is a parser format by Regular Expression.
+         "response_format"'s position follow below index.
+         ((\\d{2,3})(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*))?)?)?)?)?)?)?#)
+         1 2        3   4       5   6       7   8       9   10      11  12      13  14      15  16
+    -->
+    <regular_parser>((\\d{2,3})(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*))?)?)?)?)?)?)?#)</regular_parser>
+    <feature name="callforwarding">
+        <command name="query"><!--For example: *#120*1#-->
+            <service_code>120</service_code>
+            <action_code>*#</action_code>
+            <parameter number="1">
+                <entry position="1">1</entry>
+            </parameter>
+            <response_format number ="3"><!--For example: 120*1*7*number*time*1*0*0#-->
+                <entry position="6" key="status_code"/>
+                <entry position="8" key="number"/>
+                <entry position="10" key="time" />
+            </response_format>
+        </command>
+        <command name="activate"><!--For example: *120*1*number*time#-->
+            <service_code>120</service_code>
+            <action_code>*</action_code>
+            <parameter number="3">
+                <entry position="1">1</entry>
+                <entry position="2">tag_number</entry>
+                <entry position="3">tag_time</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 120*1*7*1#-->
+                <entry position="6" key="status_code"/>
+            </response_format>
+        </command>
+        <command name="deactivate"><!--For example: #120*1#-->
+            <service_code>120</service_code>
+            <action_code>#</action_code>
+            <parameter number="1">
+                <entry position="1">1</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 120*1*6*2#-->
+                <entry position="6" key="status_code"/>
+            </response_format>
+        </command>
+        <command_result number="3">
+            <entry key="status_code" definition="activate">7</entry>
+            <entry key="status_code" definition="deactivate">6</entry>
+            <entry key="status_code" definition="unregister">4</entry>
+        </command_result>
+    </feature>
+    <feature name="callerid">
+        <command name="activate"><!--For example: *148*2*password#-->
+            <service_code>148</service_code>
+            <action_code>*</action_code>
+            <parameter number="2">
+                <entry position="1">2</entry>
+                <entry position="2">tag_password</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 148*7#-->
+                <entry position="4" key="status_code"/>
+            </response_format>
+        </command>
+        <command name="deactivate"><!--For example: *148*1*password#-->
+            <service_code>148</service_code>
+            <action_code>*</action_code>
+            <parameter number="2">
+                <entry position="1">1</entry>
+                <entry position="2">tag_password</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 148*7#-->
+                <entry position="4" key="status_code"/>
+            </response_format>
+        </command>
+        <command_result number="1">
+            <entry key="status_code" definition="ok">7</entry>
+        </command_result>
+    </feature>
+</resources>
diff --git a/res/xml/carrier_ss_string_850.xml b/res/xml/carrier_ss_string_850.xml
new file mode 100644
index 0000000..53611d4
--- /dev/null
+++ b/res/xml/carrier_ss_string_850.xml
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 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.
+-->
+<!-- This xml is the command's structure about supplementary service by ussd command for
+     carrier id 850.
+     <a href="https://android.googlesource.com/platform/packages/providers/TelephonyProvider/+/master/assets/carrier_list.textpb">here</a>
+     The introduction is same as carrier_ss_string.xml. @see carrier_ss_string_carrierId.xml
+-->
+
+<resources>
+    <!-- This is a parser format by Regular Expression.
+         "response_format"'s position follow below index.
+         ((\\d{2,3})(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*))?)?)?)?)?)?)?#)
+         1 2        3   4       5   6       7   8       9   10      11  12      13  14      15  16
+    -->
+    <regular_parser>((\\d{2,3})(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*)(\\*([^*#]*))?)?)?)?)?)?)?#)</regular_parser>
+    <feature name="callforwarding">
+        <command name="query"><!--For example: *#120*1#-->
+            <service_code>120</service_code>
+            <action_code>*#</action_code>
+            <parameter number="1">
+                <entry position="1">1</entry>
+            </parameter>
+            <response_format number ="3"><!--For example: 120*1*7*number*time*1*0*0#-->
+                <entry position="6" key="status_code"/>
+                <entry position="8" key="number"/>
+                <entry position="10" key="time" />
+            </response_format>
+        </command>
+        <command name="activate"><!--For example: *120*1*number*time#-->
+            <service_code>120</service_code>
+            <action_code>*</action_code>
+            <parameter number="3">
+                <entry position="1">1</entry>
+                <entry position="2">tag_number</entry>
+                <entry position="3">tag_time</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 120*1*7*1#-->
+                <entry position="6" key="status_code"/>
+            </response_format>
+        </command>
+        <command name="deactivate"><!--For example: #120*1#-->
+            <service_code>120</service_code>
+            <action_code>#</action_code>
+            <parameter number="1">
+                <entry position="1">1</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 120*1*6*2#-->
+                <entry position="6" key="status_code"/>
+            </response_format>
+        </command>
+        <command_result number="3">
+            <entry key="status_code" definition="activate">7</entry>
+            <entry key="status_code" definition="deactivate">6</entry>
+            <entry key="status_code" definition="unregister">4</entry>
+        </command_result>
+    </feature>
+    <feature name="callerid">
+        <command name="activate"><!--For example: *148*2*password#-->
+            <service_code>148</service_code>
+            <action_code>*</action_code>
+            <parameter number="2">
+                <entry position="1">2</entry>
+                <entry position="2">tag_password</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 148*7#-->
+                <entry position="4" key="status_code"/>
+            </response_format>
+        </command>
+        <command name="deactivate"><!--For example: *148*1*password#-->
+            <service_code>148</service_code>
+            <action_code>*</action_code>
+            <parameter number="2">
+                <entry position="1">1</entry>
+                <entry position="2">tag_password</entry>
+            </parameter>
+            <response_format number="1"><!--For example: 148*7#-->
+                <entry position="4" key="status_code"/>
+            </response_format>
+        </command>
+        <command_result number="1">
+            <entry key="status_code" definition="ok">7</entry>
+        </command_result>
+    </feature>
+</resources>
diff --git a/src/com/android/phone/CallFeaturesSetting.java b/src/com/android/phone/CallFeaturesSetting.java
index 5c744a7..c328155 100644
--- a/src/com/android/phone/CallFeaturesSetting.java
+++ b/src/com/android/phone/CallFeaturesSetting.java
@@ -35,6 +35,7 @@
 import android.provider.Settings;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
+import android.telephony.AccessNetworkConstants.TransportType;
 import android.telephony.CarrierConfigManager;
 import android.telephony.PhoneStateListener;
 import android.telephony.TelephonyManager;
@@ -335,7 +336,7 @@
         if (mImsMgr.isVtEnabledByPlatform() && mImsMgr.isVtProvisionedOnDevice()
                 && (carrierConfig.getBoolean(
                         CarrierConfigManager.KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS)
-                || mPhone.mDcTracker.isDataEnabled())) {
+                || mPhone.getDcTracker(TransportType.WWAN).isDataEnabled())) {
             boolean currentValue =
                     mImsMgr.isEnhanced4gLteModeSettingEnabledByUser()
                     ? mImsMgr.isVtEnabledByUser() : false;
diff --git a/src/com/android/phone/CallForwardEditPreference.java b/src/com/android/phone/CallForwardEditPreference.java
index bdffb26..76f17b1 100644
--- a/src/com/android/phone/CallForwardEditPreference.java
+++ b/src/com/android/phone/CallForwardEditPreference.java
@@ -27,6 +27,8 @@
 import com.android.internal.telephony.CommandsInterface;
 import com.android.internal.telephony.Phone;
 
+import java.util.HashMap;
+
 public class CallForwardEditPreference extends EditPhoneNumberPreference {
     private static final String LOG_TAG = "CallForwardEditPreference";
 
@@ -48,6 +50,14 @@
     private TimeConsumingPreferenceListener mTcpListener;
     // Should we replace CF queries containing an invalid number with "Voicemail"
     private boolean mReplaceInvalidCFNumber = false;
+    private boolean mCallForwardByUssd = false;
+    private CarrierXmlParser mCarrierXmlParser;
+    private int mPreviousCommand = MyHandler.MESSAGE_GET_CF;
+    private Object mCommandException;
+    private CarrierXmlParser.SsEntry.SSAction mSsAction =
+            CarrierXmlParser.SsEntry.SSAction.UNKNOWN;
+    private int mAction;
+    private HashMap<String, String> mCfInfo;
 
     public CallForwardEditPreference(Context context, AttributeSet attrs) {
         super(context, attrs);
@@ -70,10 +80,21 @@
     }
 
     void init(TimeConsumingPreferenceListener listener, Phone phone,
-            boolean replaceInvalidCFNumber) {
+            boolean replaceInvalidCFNumber, boolean callForwardByUssd) {
         mPhone = phone;
         mTcpListener = listener;
         mReplaceInvalidCFNumber = replaceInvalidCFNumber;
+        mCallForwardByUssd = callForwardByUssd;
+        Log.d(LOG_TAG,
+                "init :mReplaceInvalidCFNumber " + mReplaceInvalidCFNumber + ", mCallForwardByUssd "
+                        + mCallForwardByUssd);
+        if (mCallForwardByUssd) {
+            mCfInfo = new HashMap<String, String>();
+            TelephonyManager telephonyManager = new TelephonyManager(getContext(),
+                    phone.getSubId());
+            mCarrierXmlParser = new CarrierXmlParser(getContext(),
+                    telephonyManager.getSimCarrierId());
+        }
     }
 
     void restoreCallForwardInfo(CallForwardInfo cf) {
@@ -132,17 +153,26 @@
                 // Display no forwarding number while we're waiting for
                 // confirmation
                 setSummaryOn("");
-
-                // the interface of Phone.setCallForwardingOption has error:
-                // should be action, reason...
-                mPhone.setCallForwardingOption(action,
-                        reason,
-                        number,
-                        time,
-                        mHandler.obtainMessage(MyHandler.MESSAGE_SET_CF,
-                                action,
-                                MyHandler.MESSAGE_SET_CF));
-
+                if (!mCallForwardByUssd) {
+                    // the interface of Phone.setCallForwardingOption has error:
+                    // should be action, reason...
+                    mPhone.setCallForwardingOption(action,
+                            reason,
+                            number,
+                            time,
+                            mHandler.obtainMessage(MyHandler.MESSAGE_SET_CF,
+                                    action,
+                                    MyHandler.MESSAGE_SET_CF));
+                } else {
+                    if (action == CommandsInterface.CF_ACTION_REGISTRATION) {
+                        mCfInfo.put(CarrierXmlParser.TAG_ENTRY_NUMBER, number);
+                        mCfInfo.put(CarrierXmlParser.TAG_ENTRY_TIME, Integer.toString(time));
+                    } else {
+                        mCfInfo.clear();
+                    }
+                    mHandler.sendMessage(mHandler.obtainMessage(mHandler.MESSAGE_SET_CF_USSD,
+                            action, MyHandler.MESSAGE_SET_CF));
+                }
                 if (mTcpListener != null) {
                     mTcpListener.onStarted(this, false);
                 }
@@ -185,11 +215,17 @@
      * {@link TimeConsumingPreferenceListener#onError} if an error has occurred.
      */
     void startCallForwardOptionsQuery() {
-        mPhone.getCallForwardingOption(reason,
-                mHandler.obtainMessage(MyHandler.MESSAGE_GET_CF,
-                        // unused in this case
-                        CommandsInterface.CF_ACTION_DISABLE,
-                        MyHandler.MESSAGE_GET_CF, null));
+        if (!mCallForwardByUssd) {
+            mPhone.getCallForwardingOption(reason,
+                    mHandler.obtainMessage(MyHandler.MESSAGE_GET_CF,
+                            // unused in this case
+                            CommandsInterface.CF_ACTION_DISABLE,
+                            MyHandler.MESSAGE_GET_CF, null));
+        } else {
+            mHandler.sendMessage(mHandler.obtainMessage(mHandler.MESSAGE_GET_CF_USSD,
+                    // unused in this case
+                    CommandsInterface.CF_ACTION_DISABLE, MyHandler.MESSAGE_GET_CF, null));
+        }
         if (mTcpListener != null) {
             mTcpListener.onStarted(this, true);
         }
@@ -238,6 +274,47 @@
     private class MyHandler extends Handler {
         static final int MESSAGE_GET_CF = 0;
         static final int MESSAGE_SET_CF = 1;
+        static final int MESSAGE_GET_CF_USSD = 2;
+        static final int MESSAGE_SET_CF_USSD = 3;
+
+        TelephonyManager.UssdResponseCallback mUssdCallback =
+                new TelephonyManager.UssdResponseCallback() {
+                    @Override
+                    public void onReceiveUssdResponse(final TelephonyManager telephonyManager,
+                            String request, CharSequence response) {
+                        if (mSsAction == CarrierXmlParser.SsEntry.SSAction.UNKNOWN) {
+                            return;
+                        }
+
+                        HashMap<String, String> analysisResult = mCarrierXmlParser.getFeature(
+                                CarrierXmlParser.FEATURE_CALL_FORWARDING)
+                                .getResponseSet(mSsAction,
+                                        response.toString());
+
+                        Throwable throwableException = null;
+                        if (analysisResult.get(CarrierXmlParser.TAG_RESPONSE_STATUS_ERROR)
+                                != null) {
+                            throwableException = new CommandException(
+                                    CommandException.Error.GENERIC_FAILURE);
+                        }
+
+                        Object obj = null;
+                        if (mSsAction == CarrierXmlParser.SsEntry.SSAction.QUERY) {
+                            obj = makeCallForwardInfo(analysisResult);
+                        }
+
+                        sendCfMessage(obj, throwableException);
+                    }
+
+                    @Override
+                    public void onReceiveUssdResponseFailed(final TelephonyManager telephonyManager,
+                            String request, int failureCode) {
+                        Log.d(LOG_TAG, "receive the ussd result failed");
+                        Throwable throwableException = new CommandException(
+                                CommandException.Error.GENERIC_FAILURE);
+                        sendCfMessage(null, throwableException);
+                    }
+                };
 
         @Override
         public void handleMessage(Message msg) {
@@ -248,6 +325,12 @@
                 case MESSAGE_SET_CF:
                     handleSetCFResponse(msg);
                     break;
+                case MESSAGE_GET_CF_USSD:
+                    prepareUssdCommand(msg, CarrierXmlParser.SsEntry.SSAction.QUERY);
+                    break;
+                case MESSAGE_SET_CF_USSD:
+                    prepareUssdCommand(msg, CarrierXmlParser.SsEntry.SSAction.UNKNOWN);
+                    break;
             }
         }
 
@@ -334,14 +417,116 @@
 
         private void handleSetCFResponse(Message msg) {
             AsyncResult ar = (AsyncResult) msg.obj;
-
             if (ar.exception != null) {
                 Log.d(LOG_TAG, "handleSetCFResponse: ar.exception=" + ar.exception);
                 // setEnabled(false);
             }
             Log.d(LOG_TAG, "handleSetCFResponse: re get");
-            mPhone.getCallForwardingOption(reason,
-                    obtainMessage(MESSAGE_GET_CF, msg.arg1, MESSAGE_SET_CF, ar.exception));
+            if (!mCallForwardByUssd) {
+                mPhone.getCallForwardingOption(reason,
+                        obtainMessage(MESSAGE_GET_CF, msg.arg1, MESSAGE_SET_CF, ar.exception));
+            } else {
+                mHandler.sendMessage(mHandler.obtainMessage(mHandler.MESSAGE_GET_CF_USSD,
+                        msg.arg1, MyHandler.MESSAGE_SET_CF, ar.exception));
+            }
+        }
+
+        private void prepareUssdCommand(Message msg,
+                CarrierXmlParser.SsEntry.SSAction inputSsAction) {
+            mAction = msg.arg1;
+            mPreviousCommand = msg.arg2;
+            mCommandException = msg.obj;
+            mSsAction = inputSsAction;
+
+            if (mSsAction != CarrierXmlParser.SsEntry.SSAction.QUERY) {
+                if (mAction == CommandsInterface.CF_ACTION_REGISTRATION) {
+                    mSsAction = CarrierXmlParser.SsEntry.SSAction.UPDATE_ACTIVATE;
+                } else {
+                    mSsAction = CarrierXmlParser.SsEntry.SSAction.UPDATE_DEACTIVATE;
+                }
+            }
+
+            new Thread(new Runnable() {
+                @Override
+                public void run() {
+                    sendUssdCommand(mUssdCallback, mSsAction, mCfInfo.isEmpty() ? null : mCfInfo);
+                }
+            }).start();
+        }
+
+        private void sendUssdCommand(TelephonyManager.UssdResponseCallback inputCallback,
+                CarrierXmlParser.SsEntry.SSAction inputAction,
+                HashMap<String, String> inputCfInfo) {
+            String newUssdCommand = mCarrierXmlParser.getFeature(
+                    CarrierXmlParser.FEATURE_CALL_FORWARDING)
+                    .makeCommand(inputAction, inputCfInfo);
+            TelephonyManager telephonyManager =
+                    (TelephonyManager) getContext().getSystemService(Context.TELEPHONY_SERVICE);
+            telephonyManager.sendUssdRequest(newUssdCommand, inputCallback, mHandler);
+        }
+
+        private Message makeGetCfMessage(int inputMsgWhat, int inputMsgArg2, Object inputMsgObj) {
+            return mHandler.obtainMessage(inputMsgWhat,
+                    mAction,
+                    inputMsgArg2,
+                    inputMsgObj);
+        }
+
+        private Message makeSetCfMessage(int inputMsgWhat, int inputMsgArg2) {
+            return mHandler.obtainMessage(inputMsgWhat,
+                    mAction,
+                    inputMsgArg2);
+        }
+
+        private void sendCfMessage(Object inputArObj, Throwable inputThrowableException) {
+            Message message;
+            if (mSsAction == CarrierXmlParser.SsEntry.SSAction.UNKNOWN) {
+                return;
+            }
+            if (mSsAction == CarrierXmlParser.SsEntry.SSAction.QUERY) {
+                message = makeGetCfMessage(MyHandler.MESSAGE_GET_CF, mPreviousCommand,
+                        mCommandException);
+            } else {
+                message = makeSetCfMessage(MyHandler.MESSAGE_SET_CF, MyHandler.MESSAGE_SET_CF);
+            }
+            AsyncResult.forMessage(message, inputArObj, inputThrowableException);
+            message.sendToTarget();
+        }
+
+        private CallForwardInfo[] makeCallForwardInfo(HashMap<String, String> inputInfo) {
+            int tmpStatus = 0;
+            String tmpNumberStr = "";
+            int tmpTime = 0;
+            if (inputInfo != null && inputInfo.size() != 0) {
+                String tmpStatusStr = inputInfo.get(CarrierXmlParser.TAG_RESPONSE_STATUS);
+
+                String tmpTimeStr = inputInfo.get(CarrierXmlParser.TAG_RESPONSE_TIME);
+                if (!TextUtils.isEmpty(tmpStatusStr)) {
+                    if (tmpStatusStr.equals(
+                            CarrierXmlParser.TAG_COMMAND_RESULT_DEFINITION_ACTIVATE)) {
+                        tmpStatus = 1;
+                    } else if (tmpStatusStr.equals(
+                            CarrierXmlParser.TAG_COMMAND_RESULT_DEFINITION_DEACTIVATE)
+                            || tmpStatusStr.equals(
+                            CarrierXmlParser.TAG_COMMAND_RESULT_DEFINITION_UNREGISTER)) {
+                        tmpStatus = 0;
+                    }
+                }
+
+                tmpNumberStr = inputInfo.get(CarrierXmlParser.TAG_RESPONSE_NUMBER);
+                if (!TextUtils.isEmpty(tmpTimeStr)) {
+                    tmpTime = Integer.valueOf(inputInfo.get(CarrierXmlParser.TAG_RESPONSE_TIME));
+                }
+            }
+
+            CallForwardInfo[] newCallForwardInfo = new CallForwardInfo[1];
+            newCallForwardInfo[0] = new CallForwardInfo();
+            newCallForwardInfo[0].status = tmpStatus;
+            newCallForwardInfo[0].reason = reason;
+            newCallForwardInfo[0].serviceClass = mServiceClass;
+            newCallForwardInfo[0].number = tmpNumberStr;
+            newCallForwardInfo[0].timeSeconds = tmpTime;
+            return newCallForwardInfo;
         }
     }
 
diff --git a/src/com/android/phone/CarrierConfigLoader.java b/src/com/android/phone/CarrierConfigLoader.java
index bddfd5f..15c5780 100644
--- a/src/com/android/phone/CarrierConfigLoader.java
+++ b/src/com/android/phone/CarrierConfigLoader.java
@@ -70,7 +70,6 @@
 import java.io.FilenameFilter;
 import java.io.IOException;
 import java.io.PrintWriter;
-import java.lang.Math;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -138,9 +137,6 @@
 
     private static final int BIND_TIMEOUT_MILLIS = 30000;
 
-    // Length limit of gid1 for naming config file.
-    private static final int GID1_LENGTH_LIMIT = 20;
-
     // Tags used for saving and restoring XML documents.
     private static final String TAG_DOCUMENT = "carrier_config";
     private static final String TAG_VERSION = "package_version";
@@ -221,10 +217,8 @@
 
                 case EVENT_DO_FETCH_DEFAULT:
                 {
-                    final String iccid = getIccIdForPhoneId(phoneId);
-                    final String gid1 = getGid1ForPhoneId(phoneId);
                     final PersistableBundle config =
-                            restoreConfigFromXml(mPlatformCarrierConfigPackage, iccid, gid1);
+                            restoreConfigFromXml(mPlatformCarrierConfigPackage, phoneId);
                     if (config != null) {
                         log(
                                 "Loaded config from XML. package="
@@ -263,9 +257,7 @@
                         mContext.unbindService(conn);
                         break;
                     }
-                    final CarrierIdentifier carrierId = getCarrierIdForPhoneId(phoneId);
-                    final String iccid = getIccIdForPhoneId(phoneId);
-                    final String gid1 = getGid1ForPhoneId(phoneId);
+                    final CarrierIdentifier carrierId = getCarrierIdentifierForPhoneId(phoneId);
                     // ResultReceiver callback will execute in this Handler's thread.
                     final ResultReceiver resultReceiver =
                             new ResultReceiver(this) {
@@ -286,8 +278,8 @@
                                     }
                                     PersistableBundle config =
                                             resultData.getParcelable(KEY_CONFIG_BUNDLE);
-                                    saveConfigToXml(mPlatformCarrierConfigPackage,
-                                            iccid, gid1, config);
+                                    saveConfigToXml(
+                                            mPlatformCarrierConfigPackage, phoneId, config);
                                     mConfigFromDefaultApp[phoneId] = config;
                                     sendMessage(
                                             obtainMessage(
@@ -342,10 +334,8 @@
                 case EVENT_DO_FETCH_CARRIER:
                 {
                     final String carrierPackageName = getCarrierPackageForPhoneId(phoneId);
-                    final String iccid = getIccIdForPhoneId(phoneId);
-                    final String gid1 = getGid1ForPhoneId(phoneId);
                     final PersistableBundle config =
-                            restoreConfigFromXml(carrierPackageName, iccid, gid1);
+                            restoreConfigFromXml(carrierPackageName, phoneId);
                     if (config != null) {
                         log(
                                 "Loaded config from XML. package="
@@ -383,9 +373,7 @@
                         mContext.unbindService(conn);
                         break;
                     }
-                    final CarrierIdentifier carrierId = getCarrierIdForPhoneId(phoneId);
-                    final String iccid = getIccIdForPhoneId(phoneId);
-                    final String gid1 = getGid1ForPhoneId(phoneId);
+                    final CarrierIdentifier carrierId = getCarrierIdentifierForPhoneId(phoneId);
                     // ResultReceiver callback will execute in this Handler's thread.
                     final ResultReceiver resultReceiver =
                             new ResultReceiver(this) {
@@ -406,8 +394,8 @@
                                     }
                                     PersistableBundle config =
                                             resultData.getParcelable(KEY_CONFIG_BUNDLE);
-                                    saveConfigToXml(getCarrierPackageForPhoneId(phoneId),
-                                            iccid, gid1, config);
+                                    saveConfigToXml(
+                                            getCarrierPackageForPhoneId(phoneId), phoneId, config);
                                     mConfigFromCarrierApp[phoneId] = config;
                                     sendMessage(
                                             obtainMessage(
@@ -546,6 +534,9 @@
             SubscriptionManager.putPhoneIdAndSubIdExtra(intent, phoneId);
         }
         intent.putExtra(CarrierConfigManager.EXTRA_SLOT_INDEX, phoneId);
+        intent.putExtra(TelephonyManager.EXTRA_PRECISE_CARRIER_ID,
+                getPreciseCarrierIdForPhoneId(phoneId));
+        intent.putExtra(TelephonyManager.EXTRA_CARRIER_ID, getCarrierIdForPhoneId(phoneId));
         ActivityManager.broadcastStickyIntent(intent, UserHandle.USER_ALL);
         mHasSentConfigChange[phoneId] = true;
     }
@@ -564,7 +555,7 @@
         }
     }
 
-    private CarrierIdentifier getCarrierIdForPhoneId(int phoneId) {
+    private CarrierIdentifier getCarrierIdentifierForPhoneId(int phoneId) {
         String mcc = "";
         String mnc = "";
         String imsi = "";
@@ -572,6 +563,8 @@
         String gid2 = "";
         String spn = TelephonyManager.from(mContext).getSimOperatorNameForPhone(phoneId);
         String simOperator = TelephonyManager.from(mContext).getSimOperatorNumericForPhone(phoneId);
+        int carrierId = TelephonyManager.UNKNOWN_CARRIER_ID;
+        int preciseCarrierId = TelephonyManager.UNKNOWN_CARRIER_ID;
         // A valid simOperator should be 5 or 6 digits, depending on the length of the MNC.
         if (simOperator != null && simOperator.length() >= 3) {
             mcc = simOperator.substring(0, 3);
@@ -582,9 +575,10 @@
             imsi = phone.getSubscriberId();
             gid1 = phone.getGroupIdLevel1();
             gid2 = phone.getGroupIdLevel2();
+            carrierId = phone.getCarrierId();
+            preciseCarrierId = phone.getPreciseCarrierId();
         }
-
-        return new CarrierIdentifier(mcc, mnc, spn, imsi, gid1, gid2);
+        return new CarrierIdentifier(mcc, mnc, spn, imsi, gid1, gid2, carrierId, preciseCarrierId);
     }
 
     /** Returns the package name of a priveleged carrier app, or null if there is none. */
@@ -610,38 +604,62 @@
         return phone.getIccSerialNumber();
     }
 
-    private String getGid1ForPhoneId(int phoneId) {
+    /**
+     * Get the sim precise carrier id {@link TelephonyManager#getSimPreciseCarrierId()}
+     */
+    private int getPreciseCarrierIdForPhoneId(int phoneId) {
         if (!SubscriptionManager.isValidPhoneId(phoneId)) {
-            return null;
+            return TelephonyManager.UNKNOWN_CARRIER_ID;
         }
         Phone phone = PhoneFactory.getPhone(phoneId);
         if (phone == null) {
-            return null;
+            return TelephonyManager.UNKNOWN_CARRIER_ID;
         }
-        String gid1 = phone.getGroupIdLevel1();
-        if (gid1 == null) {
-            return null;
+        return phone.getPreciseCarrierId();
+    }
+
+    /**
+     * Get the sim carrier id {@link TelephonyManager#getSimCarrierId() }
+     */
+    private int getCarrierIdForPhoneId(int phoneId) {
+        if (!SubscriptionManager.isValidPhoneId(phoneId)) {
+            return TelephonyManager.UNKNOWN_CARRIER_ID;
         }
-        return gid1.substring(0, Math.min(gid1.length(), GID1_LENGTH_LIMIT));
+        Phone phone = PhoneFactory.getPhone(phoneId);
+        if (phone == null) {
+            return TelephonyManager.UNKNOWN_CARRIER_ID;
+        }
+        return phone.getCarrierId();
     }
 
     /**
      * Writes a bundle to an XML file.
      *
-     * The bundle will be written to a file named after the package name and ICCID, so that it can
-     * be restored later with {@link @restoreConfigFromXml}. The XML output will include the bundle
-     * and the current version of the specified package.
+     * The bundle will be written to a file named after the package name, ICCID and
+     * precise carrier id {@link TelephonyManager#getSimPreciseCarrierId()}. the same carrier
+     * should have a single copy of XML file named after carrier id. However, it's still possible
+     * that platform doesn't recognize the current sim carrier, we will use iccid + carrierid as
+     * the canonical file name. carrierid can also handle the cases SIM OTA resolves to different
+     * carrier while iccid remains the same.
+     *
+     * The file can be restored later with {@link @restoreConfigFromXml}. The XML output will
+     * include the bundle and the current version of the specified package.
      *
      * In case of errors or invalid input, no file will be written.
      *
      * @param packageName the name of the package from which we fetched this bundle.
-     * @param iccid the ICCID of the subscription for which this bundle was fetched.
-     * @param extras First 20 characters of gid1 of the subscription for which the bundle
-     *               was fetched.
+     * @param phoneId the phone ID.
      * @param config the bundle to be written. Null will be treated as an empty bundle.
      */
-    private void saveConfigToXml(String packageName, String iccid, String extras,
-            PersistableBundle config) {
+    private void saveConfigToXml(String packageName, int phoneId, PersistableBundle config) {
+        if (SubscriptionManager.getSimStateForSlotIndex(phoneId)
+                != TelephonyManager.SIM_STATE_LOADED) {
+            log("Skip save config because SIM records are not loaded.");
+            return;
+        }
+
+        final String iccid = getIccIdForPhoneId(phoneId);
+        final int cid = getPreciseCarrierIdForPhoneId(phoneId);
         if (packageName == null || iccid == null) {
             loge("Cannot save config with null packageName or iccid.");
             return;
@@ -664,8 +682,8 @@
         FileOutputStream outFile = null;
         try {
             outFile = new FileOutputStream(
-                    new File(mContext.getFilesDir(), getFilenameForConfig(packageName,
-                            iccid, extras)));
+                    new File(mContext.getFilesDir(),
+                            getFilenameForConfig(packageName, iccid, cid)));
             FastXmlSerializer out = new FastXmlSerializer();
             out.setOutput(outFile, "utf-8");
             out.startDocument("utf-8", true);
@@ -693,25 +711,30 @@
      * Reads a bundle from an XML file.
      *
      * This restores a bundle that was written with {@link #saveConfigToXml}. This returns the saved
-     * config bundle for the given package and ICCID.
+     * config bundle for the given package and phone ID.
      *
      * In case of errors, or if the saved config is from a different package version than the
      * current version, then null will be returned.
      *
      * @param packageName the name of the package from which we fetched this bundle.
-     * @param iccid the ICCID of the subscription for which this bundle was fetched.
-     * @param extras First 20 characters of gid1 of the subscription for which the bundle
-     *               was fetched.
+     * @param phoneId the phone ID.
      * @return the bundle from the XML file. Returns null if there is no saved config, the saved
      *         version does not match, or reading config fails.
      */
-    private PersistableBundle restoreConfigFromXml(String packageName, String iccid,
-            String extras) {
+    private PersistableBundle restoreConfigFromXml(String packageName, int phoneId) {
         final String version = getPackageVersion(packageName);
         if (version == null) {
             loge("Failed to get package version for: " + packageName);
             return null;
         }
+        if (SubscriptionManager.getSimStateForSlotIndex(phoneId)
+                != TelephonyManager.SIM_STATE_LOADED) {
+            log("Skip restoring config because SIM records are not yet loaded.");
+            return null;
+        }
+
+        final String iccid = getIccIdForPhoneId(phoneId);
+        final int cid = getPreciseCarrierIdForPhoneId(phoneId);
         if (packageName == null || iccid == null) {
             loge("Cannot restore config with null packageName or iccid.");
             return null;
@@ -721,8 +744,8 @@
         FileInputStream inFile = null;
         try {
             inFile = new FileInputStream(
-                    new File(mContext.getFilesDir(), getFilenameForConfig(packageName, iccid,
-                            extras)));
+                    new File(mContext.getFilesDir(),
+                            getFilenameForConfig(packageName, iccid, cid)));
             XmlPullParser parser = XmlPullParserFactory.newInstance().newPullParser();
             parser.setInput(inFile, "utf-8");
 
@@ -786,11 +809,12 @@
 
     /** Builds a canonical file name for a config file. */
     private String getFilenameForConfig(@NonNull String packageName, @NonNull String iccid,
-            String extras) {
-        if (extras != null) {
-            return "carrierconfig-" + packageName + "-" + iccid + "-" + extras + ".xml";
-        }
-        return "carrierconfig-" + packageName + "-" + iccid + ".xml";
+                                        int cid) {
+        // the same carrier should have a single copy of XML file named after carrier id.
+        // However, it's still possible that platform doesn't recognize the current sim carrier,
+        // we will use iccid + carrierid as the canonical file name. carrierid can also handle the
+        // cases SIM OTA resolves to different carrier while iccid remains the same.
+        return "carrierconfig-" + packageName + "-" + iccid + "-" + cid + ".xml";
     }
 
     /** Return the current version code of a package, or null if the name is not found. */
diff --git a/src/com/android/phone/CarrierXmlParser.java b/src/com/android/phone/CarrierXmlParser.java
new file mode 100644
index 0000000..2497348
--- /dev/null
+++ b/src/com/android/phone/CarrierXmlParser.java
@@ -0,0 +1,674 @@
+/*
+ * Copyright (C) 2018 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.phone;
+
+import android.content.Context;
+import android.content.res.XmlResourceParser;
+import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import android.util.Log;
+
+import org.xmlpull.v1.XmlPullParser;
+import org.xmlpull.v1.XmlPullParserException;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Vector;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * CarrierXmlParser is a xml parser. It parses the carrier's ussd format from carrier_ss_string.xml.
+ * The carrier_ss_string.xml defines carrier's ussd structure and meaning in res/xml folder.
+ * Some carrier has specific ussd structure ,developer can add new xml and xml is named
+ * carrier_ss_string_carrierId.xml. The carrierId is a number and is defined in
+ * <a href="https://android.googlesource.com/platform/packages/providers/TelephonyProvider/+/master/assets/carrier_list.textpb">here</a>
+ * For example: carrier_ss_string_850.xml
+ * <p>
+ * How do use CarrierXmlParser?
+ * For example:
+ * @see CallForwardEditPreference
+ *     TelephonyManager telephonyManager = new TelephonyManager(getContext(),phone.getSubId());
+ *     CarrierXmlParser  = new CarrierXmlParser(getContext(), telephonyManager.getSimCarrierId());
+ *
+ *     //make a ussd command
+ *     String newUssdCommand = mCarrierXmlParser.getFeature(
+ *             CarrierXmlParser.FEATURE_CALL_FORWARDING).makeCommand(inputAction, inputCfInfo);
+ *     //analyze ussd result
+ *     HashMap<String, String> analysisResult = mCarrierXmlParser.getFeature(
+ *             CarrierXmlParser.FEATURE_CALL_FORWARDING)
+ *             .getResponseSet(mSsAction, response.toString());
+ */
+public class CarrierXmlParser {
+    public static final String LOG_TAG = "CarrierXmlParser";
+    private static final boolean DEBUG = true;
+
+    private static final String STAR_SIGN = "*";
+    private static final String POUND_SIGN = "#";
+
+    private static final String TAG_SIGN = "tag_";
+
+    // To define feature's item name in xml
+    public static final String FEATURE_CALL_FORWARDING = "callforwarding";
+    public static final String FEATURE_CALLER_ID = "callerid";
+
+    // COMMAND_NAME is xml's command name.
+    public static final String TAG_COMMAND_NAME_QUERY = "query";
+    public static final String TAG_COMMAND_NAME_ACTIVATE = "activate";
+    public static final String TAG_COMMAND_NAME_DEACTIVATE = "deactivate";
+
+    // To define string level in xml.
+    // level 1
+    private static final String TAG_FEATURE = "feature";
+    private static final String TAG_REGULAR_PARSER = "regular_parser";
+    // level 2
+    private static final String TAG_COMMAND = "command";
+    // level 3
+    private static final String TAG_SERVICE_CODE = "service_code";
+    private static final String TAG_ACTION_CODE = "action_code";
+    private static final String TAG_PARAMETER = "parameter";
+    private static final String TAG_RESPONSE_FORMAT = "response_format";
+    private static final String TAG_COMMAND_RESULT = "command_result";
+    // level 4
+    private static final String TAG_ENTRY = "entry";
+
+    private static final String ATTR_NAME = "name";
+    private static final String ATTR_PARAMETER_NUM = "number";
+    private static final String ATTR_POSITION = "position";
+    private static final String ATTR_RESULT_KEY = "key";
+    private static final String ATTR_DEFINITION_KEY = "definition";
+
+    HashMap<String, SsFeature> mFeatureMaps;
+    private static String sParserFormat = "";
+
+    // TAG_ENTRY_NUMBER and TAG_ENTRY_TIME is xml's entry value.
+    // This is mapping user's input value. For example: number,time ...
+    // When UI makes command ,it will map the value and insert this value at position location.
+    // How to use it?
+    //      The UI calls CarrierXmlParser's makeCommand function and inputs the hashmap which
+    //      includes tag_name and user's input value.
+    //      For example: User calls CarrierXmlParser's makeCommand in call forwarding , and inputs
+    //      the hashmap {<TAG_ENTRY_NUMBER,0123456789>,<TAG_ENTRY_TIME,20>}
+    // If developer wants to add new one, xml string should the same as hashmap's name.
+    public static final String TAG_ENTRY_NUMBER = "tag_number";
+    public static final String TAG_ENTRY_TIME = "tag_time";
+
+    // "response_format" key
+    // The key of "response_format" should define as below in xml.
+    // The UI will use it to define value from the response command
+    // and use the data show the screen.
+    public static final String TAG_RESPONSE_STATUS = "status_code";
+    public static final String TAG_RESPONSE_STATUS_ERROR = "RESPONSE_ERROR";
+    public static final String TAG_RESPONSE_NUMBER = "number";
+    public static final String TAG_RESPONSE_TIME = "time";
+
+    // This is the definition for the entry's key in response_format.
+    // Xml's COMMAND_RESULT_DEFINITION should same as below.
+    public static final String TAG_COMMAND_RESULT_DEFINITION_ACTIVATE = "activate";
+    public static final String TAG_COMMAND_RESULT_DEFINITION_DEACTIVATE = "deactivate";
+    public static final String TAG_COMMAND_RESULT_DEFINITION_UNREGISTER = "unregister";
+    public static final String TAG_COMMAND_RESULT_DEFINITION_OK = "ok";
+    public static final String TAG_COMMAND_RESULT_DEFINITION_FAIL = "fail";
+
+    /**
+     * UssdParser is a string parser. It parses the USSD response message.
+     */
+    public static class UssdParser {
+        private Vector<String> mParserStr = new Vector<String>();
+        private Pattern mPatternSuppServiceResponse;
+
+        public UssdParser(String inputParserFormat) {
+            mPatternSuppServiceResponse = Pattern.compile(inputParserFormat);
+        }
+
+        /**
+         * This function is a parser and analyzes the USSD responses message.
+         *
+         * @param responseString The USSD responses message.
+         */
+        public void newFromResponseString(String responseString) {
+            Matcher m;
+            m = mPatternSuppServiceResponse.matcher(responseString);
+            if (m.matches()) {
+                mParserStr.clear();
+                int groupSize = m.groupCount();
+                for (int i = 0; i <= groupSize; i++) {
+                    if (!TextUtils.isEmpty(m.group(i))) {
+                        mParserStr.add(m.group(i));
+                    }
+                }
+            }
+        }
+
+        /**
+         * To get the UssdParser result.
+         */
+        public Vector<String> getResult() {
+            return mParserStr;
+        }
+    }
+
+    /**
+     * CarrierXmlParser parses command from xml and saves in SsEntry class.
+     */
+    public static class SsEntry {
+        public enum SSAction {
+            UNKNOWN,
+            QUERY,
+            UPDATE_ACTIVATE,
+            UPDATE_DEACTIVATE
+        }
+
+        public String serviceCode;
+        public SSAction ssAction = SSAction.UNKNOWN;
+        public String actionCode;
+        public HashMap<Integer, String> commandParameter = new HashMap<Integer, String>();
+        public HashMap<Integer, String> responseFormat = new HashMap<Integer, String>();
+
+        public SsEntry(String action) {
+            if (action.equals(TAG_COMMAND_NAME_QUERY)) {
+                ssAction = SSAction.QUERY;
+            } else if (action.equals(TAG_COMMAND_NAME_ACTIVATE)) {
+                ssAction = SSAction.UPDATE_ACTIVATE;
+            } else if (action.equals(TAG_COMMAND_NAME_DEACTIVATE)) {
+                ssAction = SSAction.UPDATE_DEACTIVATE;
+            }
+        }
+
+        @Override
+        public String toString() {
+            return "SsEntry serviceCode:" + serviceCode
+                    + ", ssAction:" + ssAction
+                    + ", actionCode:" + actionCode
+                    + ", commandParameter:" + commandParameter.toString()
+                    + ", responseFormat:" + responseFormat.toString();
+        }
+
+        /**
+         * To get the caller id command by xml's structure.
+         */
+        public String getCommandStructure() {
+            String result = actionCode + serviceCode;
+            int mapSize = commandParameter.size();
+            int parameterIndex = 0;
+            while (parameterIndex < mapSize) {
+                parameterIndex++;
+                if (commandParameter.containsKey(parameterIndex)) {
+                    if (commandParameter.get(parameterIndex) != null) {
+                        result = result + STAR_SIGN + commandParameter.get(parameterIndex);
+                    }
+                }
+            }
+            result = result + POUND_SIGN;
+            Log.d(LOG_TAG, "getCommandStructure result:" + result);
+            return result;
+        }
+
+        /**
+         * To make ussd command by xml's structure.
+         *
+         * @param inputInformationSet This is a map which includes parameters from UI.
+         *                            The name of map is mapping parameter's key of entry in xml.
+         */
+        public String makeCommand(Map<String, String> inputInformationSet) {
+            String result = actionCode + serviceCode;
+            int mapSize = commandParameter.size();
+            int parameterIndex = 0;
+            int counter = 1;
+            Map<String, String> informationSet = inputInformationSet;
+            while (parameterIndex < mapSize) {
+                if (commandParameter.containsKey(counter)) {
+                    String getInputValue = "";
+                    // need to handle tag_XXXX
+                    if (informationSet != null && informationSet.size() > 0
+                            && informationSet.containsKey(commandParameter.get(counter))) {
+                        getInputValue = informationSet.get(commandParameter.get(counter));
+                    }
+                    if (TextUtils.isEmpty(getInputValue)) {
+                        result = result + STAR_SIGN + commandParameter.get(counter);
+                    } else {
+                        result = result + STAR_SIGN + informationSet.get(
+                                commandParameter.get(counter));
+                    }
+                    parameterIndex++;
+                } else {
+                    result = result + STAR_SIGN;
+                }
+                counter++;
+            }
+            result = result + POUND_SIGN;
+            return result;
+        }
+
+        /**
+         * To parse the specific key and value from response message.
+         *
+         * @param inputResponse  This is a ussd response message from network.
+         * @param responseDefine This is the definition for "command_result" in xml.
+         */
+        public HashMap<String, String> getResponseSet(String inputResponse,
+                HashMap<String, ArrayList<SsResultEntry>> responseDefine) {
+            HashMap<String, String> responseSet = new HashMap<String, String>();
+            if (TextUtils.isEmpty(sParserFormat)) {
+                return responseSet;
+            }
+            UssdParser parserResult = new UssdParser(sParserFormat);
+            parserResult.newFromResponseString(inputResponse);
+            if (parserResult == null) {
+                return responseSet;
+            }
+
+            Vector<String> result = parserResult.getResult();
+
+            if (result == null) {
+                return responseSet;
+            }
+            for (int i = 0; i < result.size(); i++) {
+                if (responseFormat.containsKey(i)) {
+                    String defineString = "";
+                    if (responseDefine.containsKey(responseFormat.get(i))) {
+                        for (int x = 0; x < responseDefine.get(responseFormat.get(i)).size(); x++) {
+                            defineString = ((SsResultEntry) responseDefine.get(
+                                    responseFormat.get(i)).get(x)).getDefinitionByCompareValue(
+                                    result.get(i));
+                            if (!TextUtils.isEmpty(defineString)) {
+                                break;
+                            }
+                        }
+                        // if status_code do not match definition value, we will set command error.
+                        if (TAG_RESPONSE_STATUS.equals(responseFormat.get(i))) {
+                            if (TextUtils.isEmpty(defineString)) {
+                                responseSet.put(TAG_RESPONSE_STATUS_ERROR,
+                                        TAG_RESPONSE_STATUS_ERROR);
+                            }
+                        }
+                    }
+                    if (TextUtils.isEmpty(defineString)) {
+                        responseSet.put(responseFormat.get(i), result.get(i));
+                    } else {
+                        responseSet.put(responseFormat.get(i), defineString);
+                    }
+                }
+            }
+            return responseSet;
+        }
+    }
+
+    /**
+     * CarrierXmlParser parses command_result from xml and saves in SsResultEntry class.
+     */
+    public static class SsResultEntry {
+        String mDefinition;
+        String mCompareValue;
+
+        public SsResultEntry() {
+        }
+
+        @Override
+        public String toString() {
+            return "SsResultEntry mDefinition:" + mDefinition
+                    + ", mCompareValue:" + mCompareValue;
+        }
+
+        /**
+         * If mCompareValue item is the same as compare value,it will return the mDefinition.
+         *
+         * @param inputValue This is the entry of response command's value.
+         * @return mDefinition or null.
+         */
+        public String getDefinitionByCompareValue(String inputValue) {
+            if (mCompareValue.equals(inputValue)) {
+                return mDefinition;
+            }
+            return null;
+        }
+    }
+
+    /**
+     * CarrierXmlParser parses feature from xml and saves in SsFeature class.
+     */
+    public class SsFeature {
+        public HashMap<SsEntry.SSAction, SsEntry> ssEntryHashMap =
+                new HashMap<SsEntry.SSAction, SsEntry>();
+        public HashMap<String, ArrayList<SsResultEntry>> responseCode =
+                new HashMap<String, ArrayList<SsResultEntry>>();
+
+        public SsFeature() {
+        }
+
+        private String getResponseCodeString() {
+            String result = "";
+            for (Map.Entry<String, ArrayList<SsResultEntry>> entry : responseCode.entrySet()) {
+                ArrayList<SsResultEntry> values = entry.getValue();
+                for (int i = 0; i < values.size(); i++) {
+                    result += "value of i is " + ((SsResultEntry) values.get(i)).toString();
+                }
+            }
+            return result;
+        }
+
+        @Override
+        public String toString() {
+            return getResponseCodeString();
+        }
+
+        /**
+         * To get the caller id command by xml's structure.
+         *
+         * @param inputAction This is action_code of command item from xml.
+         */
+        public String getCommandStructure(SsEntry.SSAction inputAction) {
+            SsEntry entry = ssEntryHashMap.get(inputAction);
+            return entry.getCommandStructure();
+        }
+
+        /**
+         * To make the ussd command by xml structure
+         *
+         * @param inputAction         This is action_code of command item from xml.
+         * @param inputInformationSet This is for parameter of command.
+         * @return The ussd command string.
+         */
+        public String makeCommand(SsEntry.SSAction inputAction,
+                Map<String, String> inputInformationSet) {
+            SsEntry entry = ssEntryHashMap.get(inputAction);
+            return entry.makeCommand(inputInformationSet);
+        }
+
+        /**
+         * To parse the special key and value from response message.
+         *
+         * @param inputAction   This is action_code of command item from xml.
+         * @param inputResponse This is response message from network.
+         * @return The set includes specific key and value.
+         */
+        public HashMap<String, String> getResponseSet(SsEntry.SSAction inputAction,
+                String inputResponse) {
+            SsEntry entry = ssEntryHashMap.get(inputAction);
+            return entry.getResponseSet(inputResponse, responseCode);
+        }
+    }
+
+    /**
+     * @param context context to get res's xml
+     * @param carrierId carrier id of the current subscription. The carrier ID is an Android
+     * platform-wide identifier for a carrier. AOSP maintains carrier ID assignments in
+     * <a href="https://android.googlesource.com/platform/packages/providers/TelephonyProvider/+/master/assets/carrier_list.textpb">here</a>
+     */
+    public CarrierXmlParser(Context context, int carrierId) {
+        try {
+            int xmlResId = 0;
+            if (carrierId != TelephonyManager.UNKNOWN_CARRIER_ID) {
+                String xmlResIdName = "carrier_ss_string" + "_" + carrierId;
+                xmlResId = context.getResources().getIdentifier(xmlResIdName, "xml",
+                        context.getPackageName());
+            }
+            if (xmlResId == 0) {
+                xmlResId = R.xml.carrier_ss_string;
+            }
+            Log.d(LOG_TAG, "carrierId: " + carrierId);
+
+            XmlResourceParser parser = context.getResources().getXml(xmlResId);
+            mFeatureMaps = parseXml(parser);
+        } catch (Exception e) {
+            Log.d(LOG_TAG, "Error parsing XML " + e.toString());
+        }
+    }
+
+    private HashMap<String, SsFeature> parseXml(XmlResourceParser parser) throws IOException {
+        HashMap<String, SsFeature> features = new HashMap<String, SsFeature>();
+        try {
+            int eventType = parser.getEventType();
+            while (eventType != XmlPullParser.END_DOCUMENT) {
+                if (eventType == XmlPullParser.START_TAG) {
+                    if (TAG_REGULAR_PARSER.equals(parser.getName())) {
+                        sParserFormat = readText(parser);
+                        Log.d(LOG_TAG, "sParserFormat " + sParserFormat);
+                    } else if (TAG_FEATURE.equals(parser.getName())) {
+                        String featureName = getSpecificAttributeValue(parser, ATTR_NAME);
+                        if (!TextUtils.isEmpty(featureName)) {
+                            SsFeature feature = generateFeatureList(parser);
+                            features.put(featureName, feature);
+                            Log.d(LOG_TAG, "add " + featureName + " to map:" + feature.toString());
+                        }
+                    }
+                }
+                parser.next();
+                eventType = parser.getEventType();
+            }
+        } catch (XmlPullParserException e) {
+            e.printStackTrace();
+        }
+        return features;
+    }
+
+    private SsFeature generateFeatureList(XmlResourceParser parser)
+            throws XmlPullParserException, IOException {
+        SsFeature ssfeature = new SsFeature();
+        int outerDepth = parser.getDepth();
+
+        Log.d(LOG_TAG, "generateFeatureList outerDepth" + outerDepth);
+
+        while (parser.next() != XmlPullParser.END_DOCUMENT) {
+            Log.d(LOG_TAG, "generateFeatureList parser.getDepth()" + parser.getDepth());
+
+            int eventType = parser.getEventType();
+            if (eventType == XmlPullParser.END_TAG
+                    && outerDepth == parser.getDepth()) {
+                break;
+            }
+
+            if (eventType != XmlPullParser.START_TAG) {
+                continue;
+            }
+            String name = parser.getName();
+            // Starts by looking for the command tag.
+            if (TAG_COMMAND.equals(name)) {
+                SsEntry entry = readCommandEntry(parser);
+                ssfeature.ssEntryHashMap.put(entry.ssAction, entry);
+            } else if (TAG_COMMAND_RESULT.equals(name)) {
+                readCommandResultEntry(parser, ssfeature);
+            }
+        }
+        return ssfeature;
+    }
+
+    private void readCommandResultEntry(XmlResourceParser parser, SsFeature ssFeature)
+            throws XmlPullParserException, IOException {
+        while (parser.next() != XmlPullParser.END_DOCUMENT) {
+            int eventType = parser.getEventType();
+            if (eventType == XmlPullParser.END_TAG
+                    && TAG_COMMAND_RESULT.equals(parser.getName())) {
+                break;
+            }
+            if (eventType == XmlPullParser.START_TAG
+                    && TAG_ENTRY.equals(parser.getName())) {
+                String key = getSpecificAttributeValue(parser, ATTR_RESULT_KEY);
+                if (!TextUtils.isEmpty(key)) {
+                    SsResultEntry entry = new SsResultEntry();
+                    entry.mDefinition = getSpecificAttributeValue(parser, ATTR_DEFINITION_KEY);
+                    entry.mCompareValue = readText(parser);
+                    if (ssFeature.responseCode.containsKey(key)) {
+                        ssFeature.responseCode.get(key).add(entry);
+                    } else {
+                        ArrayList<SsResultEntry> arrayList = new ArrayList<>();
+                        arrayList.add(entry);
+                        ssFeature.responseCode.put(key, arrayList);
+                    }
+                }
+            }
+        }
+    }
+
+    private SsEntry readCommandEntry(XmlResourceParser parser)
+            throws XmlPullParserException, IOException {
+        int outerDepth = parser.getDepth();
+        String command_action = getSpecificAttributeValue(parser, ATTR_NAME);
+        SsEntry entry = new SsEntry(command_action);
+
+        while (parser.next() != XmlPullParser.END_DOCUMENT) {
+            int eventType = parser.getEventType();
+            if (eventType == XmlPullParser.END_TAG
+                    && outerDepth == parser.getDepth()) {
+                break;
+            }
+
+            if (eventType != XmlPullParser.START_TAG) {
+                continue;
+            }
+
+            String name = parser.getName();
+            if (TAG_SERVICE_CODE.equals(name)) {
+                entry.serviceCode = readText(parser);
+            } else if (TAG_ACTION_CODE.equals(name)) {
+                entry.actionCode = readText(parser);
+            } else if (TAG_PARAMETER.equals(name)) {
+                String number = getSpecificAttributeValue(parser, ATTR_PARAMETER_NUM);
+                if (!TextUtils.isEmpty(number)) {
+                    readParameters(parser, entry, Integer.valueOf(number), TAG_PARAMETER);
+                }
+            } else if (TAG_RESPONSE_FORMAT.equals(name)) {
+                String number = getSpecificAttributeValue(parser, ATTR_PARAMETER_NUM);
+                if (!TextUtils.isEmpty(number)) {
+                    readParameters(parser, entry, Integer.valueOf(number), TAG_RESPONSE_FORMAT);
+                }
+            }
+        }
+        Log.d(LOG_TAG, "ssEntry:" + entry.toString());
+        return entry;
+    }
+
+    private void readParameters(XmlResourceParser parser, SsEntry entry, int num, String parentTag)
+            throws IOException, XmlPullParserException {
+        Log.d(LOG_TAG, "readParameters() nume:" + num);
+        int i = 0;
+        while (i < num) {
+            if (parser.next() == XmlPullParser.START_TAG) {
+                String name = parser.getName();
+                if (TAG_ENTRY.equals(name)) {
+                    String position = getSpecificAttributeValue(parser, ATTR_POSITION);
+                    if (!TextUtils.isEmpty(position)) {
+                        if (TAG_PARAMETER.equals(parentTag)) {
+                            String value = readText(parser);
+                            if (!TextUtils.isEmpty(value)) {
+                                entry.commandParameter.put(Integer.valueOf(position), value);
+                            }
+                        } else if (TAG_RESPONSE_FORMAT.equals(parentTag)) {
+                            String key = getSpecificAttributeValue(parser, ATTR_RESULT_KEY);
+                            if (!TextUtils.isEmpty(key)) {
+                                entry.responseFormat.put(Integer.valueOf(position), key);
+                            }
+                        }
+                        i++;
+                    }
+                }
+            }
+        }
+    }
+
+    private String getSpecificAttributeValue(XmlResourceParser parser, String attrTag) {
+        String value = "";
+        for (int i = 0; i < parser.getAttributeCount(); i++) {
+            if (attrTag.equals(parser.getAttributeName(i))) {
+                value = parser.getAttributeValue(i);
+            }
+        }
+        return value;
+    }
+
+    private String readText(XmlResourceParser parser) throws IOException, XmlPullParserException {
+        String result = "";
+        if (parser.next() == XmlPullParser.TEXT) {
+            result = parser.getText();
+            parser.nextTag();
+        }
+        return result;
+    }
+
+    /**
+     * CarrierXmlParser parses the xml and saves in mFeatureMap.
+     * To use this function get feature from the mFeatureMaps.
+     *
+     * @param inputFeatureName This is feature's name from xml.
+     */
+    public SsFeature getFeature(String inputFeatureName) {
+        return mFeatureMaps.get(inputFeatureName);
+    }
+
+    /**
+     * To check the command which is dialed by user is caller id command.
+     * <p>
+     * If it is a caller id command which sets to activate, return the {@code
+     * SsEntry.SSAction.UPDATE_ACTIVATE}.
+     * If it is a caller id command which sets to deactivate, return the {@code
+     * SsEntry.SSAction.UPDATE_DEACTIVATE}.
+     * If it is not a caller id command, return the {@code SsEntry.SSAction.UNKNOWN}.
+     *
+     * @param inputCommand This is caller id's ussd command which is dialed by user.
+     * @return {@link SsEntry.SSAction}
+     */
+    public SsEntry.SSAction getCallerIdUssdCommandAction(String inputCommand) {
+        if (isCallerIdActivate(inputCommand)) {
+            return SsEntry.SSAction.UPDATE_ACTIVATE;
+        }
+        if (isCallerIdDeactivate(inputCommand)) {
+            return SsEntry.SSAction.UPDATE_DEACTIVATE;
+        }
+        return SsEntry.SSAction.UNKNOWN;
+    }
+
+    private String getCallerIdActivateCommandFromXml() {
+        return getFeature(FEATURE_CALLER_ID).getCommandStructure(SsEntry.SSAction.UPDATE_ACTIVATE);
+    }
+
+    private String getCallerIdDeactivateCommandFromXml() {
+        return getFeature(FEATURE_CALLER_ID).getCommandStructure(
+                SsEntry.SSAction.UPDATE_DEACTIVATE);
+    }
+
+    private boolean isCallerIdActivate(String inputStr) {
+        String activateStr = getCallerIdActivateCommandFromXml();
+        return compareCommand(activateStr, inputStr);
+    }
+
+    private boolean isCallerIdDeactivate(String inputStr) {
+        String activateStr = getCallerIdDeactivateCommandFromXml();
+        return compareCommand(activateStr, inputStr);
+    }
+
+    private boolean compareCommand(String activateStr, String inputStr) {
+        String[] activateArray = activateStr.split("\\" + STAR_SIGN);
+        String[] inputArray = inputStr.split("\\" + STAR_SIGN);
+
+        if (activateArray.length == 0 || inputArray.length == 0) {
+            return false;
+        }
+        for (int i = 0; i < activateArray.length; i++) {
+            if (activateArray[i].startsWith(TAG_SIGN)) {
+                continue;
+            }
+            if (!activateArray[i].equals(inputArray[i])) {
+                Log.d(LOG_TAG, "compare fails:" + activateStr + "," + inputStr);
+                return false;
+            }
+        }
+        Log.d(LOG_TAG, "compare success");
+        return true;
+    }
+}
diff --git a/src/com/android/phone/EmergencyActionGroup.java b/src/com/android/phone/EmergencyActionGroup.java
index d72c265..4f9121a 100644
--- a/src/com/android/phone/EmergencyActionGroup.java
+++ b/src/com/android/phone/EmergencyActionGroup.java
@@ -143,7 +143,7 @@
                 ComponentName name = EmergencyAssistanceHelper.getComponentName(info);
 
                 button.setTag(R.id.tag_intent,
-                        new Intent(TelephonyManager.ACTION_EMERGENCY_ASSISTANCE)
+                        new Intent(EmergencyAssistanceHelper.getIntentAction(getContext()))
                                 .setComponent(name));
                 button.setText(info.loadLabel(getContext().getPackageManager()));
                 visible = true;
diff --git a/src/com/android/phone/EmergencyAssistanceHelper.java b/src/com/android/phone/EmergencyAssistanceHelper.java
index 3053125..9e1ac21 100644
--- a/src/com/android/phone/EmergencyAssistanceHelper.java
+++ b/src/com/android/phone/EmergencyAssistanceHelper.java
@@ -26,6 +26,7 @@
 import android.provider.Settings;
 import android.telephony.TelephonyManager;
 import android.text.TextUtils;
+import android.util.FeatureFlagUtils;
 
 import java.util.List;
 
@@ -35,6 +36,24 @@
 public class EmergencyAssistanceHelper {
 
     /**
+     * Get intent action of target emergency app.
+     *
+     * @param context The context of the application.
+     * @return A string of intent action to launch target emergency app by feature flag, it will be
+     * used for team food.
+     */
+    public static String getIntentAction(Context context) {
+        if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SAFETY_HUB)) {
+            String action = context.getResources().getString(R.string.config_emergency_app_intent);
+            if (!action.isEmpty()) {
+                return action;
+            }
+        }
+
+        return TelephonyManager.ACTION_EMERGENCY_ASSISTANCE;
+    }
+
+    /**
      * Query activities of emergency assistance.
      *
      * @param context The context of the application.
@@ -46,7 +65,7 @@
 
         if (infos == null || infos.isEmpty()) {
             PackageManager packageManager = context.getPackageManager();
-            Intent queryIntent = new Intent(TelephonyManager.ACTION_EMERGENCY_ASSISTANCE);
+            Intent queryIntent = new Intent(getIntentAction(context));
             infos = packageManager.queryIntentActivities(queryIntent, 0);
 
             PackageInfo bestMatch = null;
@@ -93,7 +112,7 @@
         List<ResolveInfo> infos = null;
 
         if (!TextUtils.isEmpty(assistPackage)) {
-            Intent queryIntent = new Intent(TelephonyManager.ACTION_EMERGENCY_ASSISTANCE)
+            Intent queryIntent = new Intent(getIntentAction(context))
                     .setPackage(assistPackage);
             infos = context.getPackageManager().queryIntentActivities(queryIntent, 0);
         }
diff --git a/src/com/android/phone/EmergencyDialer.java b/src/com/android/phone/EmergencyDialer.java
index 1619aa1..cb12cbb 100644
--- a/src/com/android/phone/EmergencyDialer.java
+++ b/src/com/android/phone/EmergencyDialer.java
@@ -357,10 +357,14 @@
                 CarrierConfigManager.KEY_SUPPORT_EMERGENCY_DIALER_SHORTCUT_BOOL);
         Log.d(LOG_TAG, "Is the carrier supported: " + isSupport);
         TelephonyManager tm = getSystemService(TelephonyManager.class);
-        if (isSupport && !TextUtils.isEmpty(tm.getNetworkCountryIso())) {
-            mAreEmergencyDialerShortcutsEnabled = true;
-        } else {
-            mAreEmergencyDialerShortcutsEnabled = false;
+        String countryIso = tm.getNetworkCountryIso();
+        mAreEmergencyDialerShortcutsEnabled = false;
+        if (isSupport && !TextUtils.isEmpty(countryIso)) {
+            if (EccInfoHelper.isCountryEccInfoAvailable(this, countryIso)) {
+                mAreEmergencyDialerShortcutsEnabled = true;
+            } else {
+                Log.d(LOG_TAG, "ECC info is unavailable. Disable emergency dialer shortcut.");
+            }
         }
         Log.d(LOG_TAG, "Enable emergency dialer shortcut: "
                 + mAreEmergencyDialerShortcutsEnabled);
@@ -458,7 +462,7 @@
         mEmergencyInfoGroup = (EmergencyInfoGroup) findViewById(R.id.emergency_info_button);
 
         if (mAreEmergencyDialerShortcutsEnabled) {
-            mEccInfoHelper = new EccInfoHelper(new IsoToEccProtobufRepository());
+            mEccInfoHelper = new EccInfoHelper(IsoToEccProtobufRepository.getInstance());
             setupEmergencyShortcutsView();
         }
     }
@@ -928,7 +932,7 @@
         AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
         int ringerMode = audioManager.getRingerMode();
         if ((ringerMode == AudioManager.RINGER_MODE_SILENT)
-            || (ringerMode == AudioManager.RINGER_MODE_VIBRATE)) {
+                || (ringerMode == AudioManager.RINGER_MODE_VIBRATE)) {
             return;
         }
 
@@ -1054,8 +1058,8 @@
                 boolean isCellAvailable =
                         ss.getRilVoiceRadioTechnology() != RIL_RADIO_TECHNOLOGY_UNKNOWN;
                 Log.i(LOG_TAG, "showWfcWarningTask: isWfcAvailable=" + isWfcAvailable
-                                + " isCellAvailable=" + isCellAvailable
-                                + "(rat=" + ss.getRilVoiceRadioTechnology() + ")");
+                        + " isCellAvailable=" + isCellAvailable
+                        + "(rat=" + ss.getRilVoiceRadioTechnology() + ")");
                 return isWfcAvailable && !isCellAvailable;
             }
 
diff --git a/src/com/android/phone/EmergencyInfoGroup.java b/src/com/android/phone/EmergencyInfoGroup.java
index 8a7ac31..7f01412 100644
--- a/src/com/android/phone/EmergencyInfoGroup.java
+++ b/src/com/android/phone/EmergencyInfoGroup.java
@@ -126,7 +126,8 @@
 
         if (infos != null && infos.size() > 0) {
             final String packageName = infos.get(0).activityInfo.packageName;
-            final Intent intent = new Intent(TelephonyManager.ACTION_EMERGENCY_ASSISTANCE)
+            final Intent intent = new Intent(
+                    EmergencyAssistanceHelper.getIntentAction(getContext()))
                     .setPackage(packageName);
             setTag(R.id.tag_intent, intent);
             setUserIcon();
diff --git a/src/com/android/phone/GsmUmtsCallForwardOptions.java b/src/com/android/phone/GsmUmtsCallForwardOptions.java
index 6d80621..b8ea8fd 100644
--- a/src/com/android/phone/GsmUmtsCallForwardOptions.java
+++ b/src/com/android/phone/GsmUmtsCallForwardOptions.java
@@ -4,6 +4,7 @@
 import android.content.Intent;
 import android.database.Cursor;
 import android.os.Bundle;
+import android.os.PersistableBundle;
 import android.preference.Preference;
 import android.preference.PreferenceScreen;
 import android.telephony.CarrierConfigManager;
@@ -47,6 +48,7 @@
     private Phone mPhone;
     private SubscriptionInfoHelper mSubscriptionInfoHelper;
     private boolean mReplaceInvalidCFNumbers;
+    private boolean mCallForwardByUssd;
 
     @Override
     protected void onCreate(Bundle icicle) {
@@ -59,11 +61,18 @@
                 getActionBar(), getResources(), R.string.call_forwarding_settings_with_label);
         mPhone = mSubscriptionInfoHelper.getPhone();
 
-        CarrierConfigManager carrierConfig = (CarrierConfigManager)
-                getSystemService(CARRIER_CONFIG_SERVICE);
-        if (carrierConfig != null) {
-            mReplaceInvalidCFNumbers = carrierConfig.getConfig().getBoolean(
+        PersistableBundle b = null;
+        if (mSubscriptionInfoHelper.hasSubId()) {
+            b = PhoneGlobals.getInstance().getCarrierConfigForSubId(
+                    mSubscriptionInfoHelper.getSubId());
+        } else {
+            b = PhoneGlobals.getInstance().getCarrierConfig();
+        }
+        if (b != null) {
+            mReplaceInvalidCFNumbers = b.getBoolean(
                     CarrierConfigManager.KEY_CALL_FORWARDING_MAP_NON_NUMBER_TO_VOICEMAIL_BOOL);
+            mCallForwardByUssd = b.getBoolean(
+                    CarrierConfigManager.KEY_USE_CALL_FORWARDING_USSD_BOOL);
         }
 
         PreferenceScreen prefSet = getPreferenceScreen();
@@ -82,6 +91,18 @@
         mPreferences.add(mButtonCFNRy);
         mPreferences.add(mButtonCFNRc);
 
+        if (mCallForwardByUssd) {
+            //the call forwarding ussd command's behavior is similar to the call forwarding when
+            //unanswered,so only display the call forwarding when unanswered item.
+            prefSet.removePreference(mButtonCFU);
+            prefSet.removePreference(mButtonCFB);
+            prefSet.removePreference(mButtonCFNRc);
+            mPreferences.remove(mButtonCFU);
+            mPreferences.remove(mButtonCFB);
+            mPreferences.remove(mButtonCFNRc);
+            mButtonCFNRy.setDependency(null);
+        }
+
         // we wait to do the initialization until onResume so that the
         // TimeConsumingPreferenceActivity dialog can display as it
         // relies on onResume / onPause to maintain its foreground state.
@@ -104,7 +125,7 @@
             if (mIcicle == null) {
                 Log.d(LOG_TAG, "start to init ");
                 CallForwardEditPreference pref = mPreferences.get(mInitIndex);
-                pref.init(this, mPhone, mReplaceInvalidCFNumbers);
+                pref.init(this, mPhone, mReplaceInvalidCFNumbers, mCallForwardByUssd);
                 pref.startCallForwardOptionsQuery();
 
             } else {
@@ -117,7 +138,7 @@
                     CallForwardInfo cf = new CallForwardInfo();
                     cf.number = bundle.getString(KEY_NUMBER);
                     cf.status = bundle.getInt(KEY_STATUS);
-                    pref.init(this, mPhone, mReplaceInvalidCFNumbers);
+                    pref.init(this, mPhone, mReplaceInvalidCFNumbers, mCallForwardByUssd);
                     pref.restoreCallForwardInfo(cf);
                 }
             }
@@ -147,7 +168,7 @@
         if (mInitIndex < mPreferences.size()-1 && !isFinishing()) {
             mInitIndex++;
             CallForwardEditPreference pref = mPreferences.get(mInitIndex);
-            pref.init(this, mPhone, mReplaceInvalidCFNumbers);
+            pref.init(this, mPhone, mReplaceInvalidCFNumbers, mCallForwardByUssd);
             pref.startCallForwardOptionsQuery();
         }
 
diff --git a/src/com/android/phone/MobileNetworkSettings.java b/src/com/android/phone/MobileNetworkSettings.java
index 2a41724..27404e7 100644
--- a/src/com/android/phone/MobileNetworkSettings.java
+++ b/src/com/android/phone/MobileNetworkSettings.java
@@ -1149,15 +1149,22 @@
                     CarrierConfigManager.KEY_ENHANCED_4G_LTE_TITLE_VARIANT_INT);
             CharSequence[] variantTitles = getContext().getResources()
                     .getTextArray(R.array.enhanced_4g_lte_mode_title_variant);
-            // Default index 0 indicates the default title string
+            CharSequence[] variantSumaries = getContext().getResources()
+                    .getTextArray(R.array.enhanced_4g_lte_mode_sumary_variant);
+            // Default index 0 indicates the default title/sumary string
             CharSequence enhanced4glteModeTitle = variantTitles[0];
+            CharSequence enhanced4glteModeSummary = variantSumaries[0];
             if (variant4glteTitleIndex >= 0 && variant4glteTitleIndex < variantTitles.length) {
                 enhanced4glteModeTitle = variantTitles[variant4glteTitleIndex];
             }
+            if (variant4glteTitleIndex >= 0 && variant4glteTitleIndex < variantSumaries.length) {
+                enhanced4glteModeSummary = variantSumaries[variant4glteTitleIndex];
+            }
 
             mOnlyAutoSelectInHomeNW = carrierConfig.getBoolean(
                     CarrierConfigManager.KEY_ONLY_AUTO_SELECT_IN_HOME_NETWORK_BOOL);
             mButton4glte.setTitle(enhanced4glteModeTitle);
+            mButton4glte.setSummary(enhanced4glteModeSummary);
             mLteDataServicePref.setEnabled(hasActiveSubscriptions);
             Preference ps;
             ps = findPreference(BUTTON_CELL_BROADCAST_SETTINGS);
diff --git a/src/com/android/phone/PhoneApp.java b/src/com/android/phone/PhoneApp.java
index df151bf..333e0ec 100644
--- a/src/com/android/phone/PhoneApp.java
+++ b/src/com/android/phone/PhoneApp.java
@@ -19,6 +19,7 @@
 import android.app.Application;
 import android.os.UserHandle;
 
+import com.android.phone.ecc.IsoToEccProtobufRepository;
 import com.android.services.telephony.TelecomAccountRegistry;
 
 /**
@@ -40,5 +41,10 @@
 
             TelecomAccountRegistry.getInstance(this).setupOnBoot();
         }
+
+        new Thread(() -> {
+            // Preload ECC table in background.
+            IsoToEccProtobufRepository.getInstance().loadMappingTable(PhoneApp.this);
+        }).start();
     }
 }
diff --git a/src/com/android/phone/PhoneGlobals.java b/src/com/android/phone/PhoneGlobals.java
index 5282b29..5009bfe 100644
--- a/src/com/android/phone/PhoneGlobals.java
+++ b/src/com/android/phone/PhoneGlobals.java
@@ -46,6 +46,7 @@
 import android.telephony.ServiceState;
 import android.telephony.SubscriptionManager;
 import android.telephony.TelephonyManager;
+import android.telephony.data.ApnSetting;
 import android.util.LocalLog;
 import android.util.Log;
 import android.widget.Toast;
@@ -712,7 +713,7 @@
         }
 
         DataConnectionReasons reasons = new DataConnectionReasons();
-        boolean dataAllowed = phone.isDataAllowed(reasons);
+        boolean dataAllowed = phone.isDataAllowed(ApnSetting.TYPE_DEFAULT, reasons);
         mDataRoamingNotifLog.log("dataAllowed=" + dataAllowed + ", reasons=" + reasons);
         if (VDBG) Log.v(LOG_TAG, "dataAllowed=" + dataAllowed + ", reasons=" + reasons);
         if (!mNoDataDueToRoaming
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 8cdb4b9..f76720d 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -54,13 +54,13 @@
 import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
-import android.telephony.emergency.EmergencyNumber;
 import android.telephony.CarrierConfigManager;
 import android.telephony.CellInfo;
 import android.telephony.CellInfoGsm;
 import android.telephony.CellInfoWcdma;
 import android.telephony.CellLocation;
 import android.telephony.ClientRequestStats;
+import android.telephony.ICellInfoCallback;
 import android.telephony.IccOpenLogicalChannelResponse;
 import android.telephony.LocationAccessPolicy;
 import android.telephony.ModemActivityInfo;
@@ -79,9 +79,12 @@
 import android.telephony.UssdResponse;
 import android.telephony.VisualVoicemailSmsFilterSettings;
 import android.telephony.cdma.CdmaCellLocation;
+import android.telephony.data.ApnSetting;
+import android.telephony.emergency.EmergencyNumber;
 import android.telephony.gsm.GsmCellLocation;
 import android.telephony.ims.aidl.IImsCapabilityCallback;
 import android.telephony.ims.aidl.IImsConfig;
+import android.telephony.ims.aidl.IImsConfigCallback;
 import android.telephony.ims.aidl.IImsMmTelFeature;
 import android.telephony.ims.aidl.IImsRcsFeature;
 import android.telephony.ims.aidl.IImsRegistration;
@@ -99,6 +102,7 @@
 import com.android.internal.telephony.CallManager;
 import com.android.internal.telephony.CallStateException;
 import com.android.internal.telephony.CarrierInfoManager;
+import com.android.internal.telephony.CarrierResolver;
 import com.android.internal.telephony.CellNetworkScanResult;
 import com.android.internal.telephony.CommandException;
 import com.android.internal.telephony.DefaultPhoneNotifier;
@@ -217,6 +221,8 @@
     private static final int EVENT_GET_CELL_LOCATION_DONE = 63;
     private static final int CMD_MODEM_REBOOT = 64;
     private static final int EVENT_CMD_MODEM_REBOOT_DONE = 65;
+    private static final int CMD_REQUEST_CELL_INFO_UPDATE = 66;
+    private static final int EVENT_REQUEST_CELL_INFO_UPDATE_DONE = 67;
 
     // Parameters of select command.
     private static final int SELECT_COMMAND = 0xA4;
@@ -1000,13 +1006,11 @@
                     request.result = ar.exception == null;
                     notifyRequester(request);
                     break;
-
                 case CMD_GET_ALL_CELL_INFO:
                     request = (MainThreadRequest) msg.obj;
                     onCompleted = obtainMessage(EVENT_GET_ALL_CELL_INFO_DONE, request);
                     request.phone.requestCellInfoUpdate(request.workSource, onCompleted);
                     break;
-
                 case EVENT_GET_ALL_CELL_INFO_DONE:
                     ar = (AsyncResult) msg.obj;
                     request = (MainThreadRequest) ar.userObj;
@@ -1017,22 +1021,45 @@
                         request.notifyAll();
                     }
                     break;
-
-                case CMD_GET_CELL_LOCATION: {
+                case CMD_REQUEST_CELL_INFO_UPDATE:
+                    request = (MainThreadRequest) msg.obj;
+                    request.phone.requestCellInfoUpdate(request.workSource,
+                            obtainMessage(EVENT_REQUEST_CELL_INFO_UPDATE_DONE, request));
+                    break;
+                case EVENT_REQUEST_CELL_INFO_UPDATE_DONE:
+                    ar = (AsyncResult) msg.obj;
+                    request = (MainThreadRequest) ar.userObj;
+                    ICellInfoCallback cb = (ICellInfoCallback) request.argument;
+                    try {
+                        if (ar.exception != null) {
+                            // something went wrong... the response is null
+                            Log.e(LOG_TAG, "Exception retrieving CellInfo=" + ar.exception);
+                            cb.onCellInfo(null);
+                        } else if (ar.result == null) {
+                            // timeout occurred, so force the result to non-null "empty"
+                            Log.w(LOG_TAG, "Timeout Waiting for CellInfo!");
+                            cb.onCellInfo(new ArrayList<CellInfo>());
+                        } else {
+                            // use the result as returned
+                            cb.onCellInfo((List<CellInfo>) ar.result);
+                        }
+                    } catch (RemoteException re) {
+                        Log.w(LOG_TAG, "Discarded CellInfo due to Callback RemoteException");
+                    }
+                    break;
+                case CMD_GET_CELL_LOCATION:
                     request = (MainThreadRequest) msg.obj;
                     WorkSource ws = (WorkSource) request.argument;
                     Phone phone = getPhoneFromRequest(request);
                     phone.getCellLocation(ws, obtainMessage(EVENT_GET_CELL_LOCATION_DONE, request));
                     break;
-                }
-
-                case EVENT_GET_CELL_LOCATION_DONE: {
+                case EVENT_GET_CELL_LOCATION_DONE:
                     ar = (AsyncResult) msg.obj;
                     request = (MainThreadRequest) ar.userObj;
                     if (ar.exception == null) {
                         request.result = ar.result;
                     } else {
-                        Phone phone = getPhoneFromRequest(request);
+                        phone = getPhoneFromRequest(request);
                         request.result = (phone.getPhoneType() == PhoneConstants.PHONE_TYPE_CDMA)
                                 ? new CdmaCellLocation() : new GsmCellLocation();
                     }
@@ -1041,18 +1068,14 @@
                         request.notifyAll();
                     }
                     break;
-                }
-
                 case CMD_MODEM_REBOOT:
                     request = (MainThreadRequest) msg.obj;
                     onCompleted = obtainMessage(EVENT_RESET_MODEM_CONFIG_DONE, request);
                     mPhone.rebootModem(onCompleted);
                     break;
-
                 case EVENT_CMD_MODEM_REBOOT_DONE:
                     handleNullReturnEvent(msg, "rebootModem");
                     break;
-
                 default:
                     Log.w(LOG_TAG, "MainThreadHandler: unexpected message code: " + msg.what);
                     break;
@@ -1178,10 +1201,19 @@
 
     /**
      * Same as {@link #sendRequestAsync(int)} except it takes an argument.
-     * @see {@link #sendRequest(int,Object)}
+     * @see {@link #sendRequest(int)}
      */
     private void sendRequestAsync(int command, Object argument) {
-        MainThreadRequest request = new MainThreadRequest(argument);
+        sendRequestAsync(command, argument, null, null);
+    }
+
+    /**
+     * Same as {@link #sendRequestAsync(int,Object)} except it takes a Phone and WorkSource.
+     * @see {@link #sendRequest(int,Object)}
+     */
+    private void sendRequestAsync(
+            int command, Object argument, Phone phone, WorkSource workSource) {
+        MainThreadRequest request = new MainThreadRequest(argument, phone, workSource);
         Message msg = mMainThreadHandler.obtainMessage(command, request);
         msg.sendToTarget();
     }
@@ -1684,7 +1716,7 @@
         try {
             final Phone phone = getPhone(subId);
             if (phone != null) {
-                return phone.isDataAllowed();
+                return phone.isDataAllowed(ApnSetting.TYPE_DEFAULT);
             } else {
                 return false;
             }
@@ -1915,6 +1947,14 @@
         return (neighbors.size()) > 0 ? neighbors : null;
     }
 
+    private List<CellInfo> getCachedCellInfo() {
+        List<CellInfo> cellInfos = new ArrayList<CellInfo>();
+        for (Phone phone : PhoneFactory.getPhones()) {
+            List<CellInfo> info = phone.getAllCellInfo();
+            if (info != null) cellInfos.addAll(info);
+        }
+        return cellInfos;
+    }
 
     @Override
     public List<CellInfo> getAllCellInfo(String callingPackage) {
@@ -1925,6 +1965,11 @@
             return null;
         }
 
+        final int targetSdk = getTargetSdk(callingPackage);
+        if (targetSdk >= android.os.Build.VERSION_CODES.Q) {
+            return getCachedCellInfo();
+        }
+
         if (DBG_LOC) log("getAllCellInfo: is active user");
         WorkSource workSource = getWorkSource(Binder.getCallingUid());
         final long identity = Binder.clearCallingIdentity();
@@ -1942,6 +1987,34 @@
     }
 
     @Override
+    public void requestCellInfoUpdate(int subId, ICellInfoCallback cb, String callingPackage) {
+        requestCellInfoUpdateInternal(
+                subId, cb, callingPackage, getWorkSource(Binder.getCallingUid()));
+    }
+
+    @Override
+    public void requestCellInfoUpdateWithWorkSource(
+            int subId, ICellInfoCallback cb, String callingPackage, WorkSource workSource) {
+        enforceModifyPermission();
+        requestCellInfoUpdateInternal(subId, cb, callingPackage, workSource);
+    }
+
+    private void requestCellInfoUpdateInternal(
+            int subId, ICellInfoCallback cb, String callingPackage, WorkSource workSource) {
+        mPhone.getContext().getSystemService(AppOpsManager.class)
+                .checkPackage(Binder.getCallingUid(), callingPackage);
+        if (!LocationAccessPolicy.canAccessCellLocation(mPhone.getContext(),
+                callingPackage, Binder.getCallingUid(), Binder.getCallingPid(), true)) {
+            return;
+        }
+
+        final Phone phone = getPhone(subId);
+        if (phone == null) throw new IllegalArgumentException("Invalid Subscription Id: " + subId);
+
+        sendRequestAsync(CMD_REQUEST_CELL_INFO_UPDATE, cb, phone, workSource);
+    }
+
+    @Override
     public void setCellInfoListRate(int rateInMillis) {
         enforceModifyPermission();
         WorkSource workSource = getWorkSource(Binder.getCallingUid());
@@ -2069,6 +2142,43 @@
         }
     }
 
+    @Override
+    public int getSubscriptionPreciseCarrierId(int subId) {
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            final Phone phone = getPhone(subId);
+            return phone == null ? TelephonyManager.UNKNOWN_CARRIER_ID
+                    : phone.getPreciseCarrierId();
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    @Override
+    public String getSubscriptionPreciseCarrierName(int subId) {
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            final Phone phone = getPhone(subId);
+            return phone == null ? null : phone.getPreciseCarrierName();
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    @Override
+    public int getCarrierIdFromMccMnc(int slotIndex, String mccmnc) {
+        final Phone phone = PhoneFactory.getPhone(slotIndex);
+        if (phone == null) {
+            return TelephonyManager.UNKNOWN_CARRIER_ID;
+        }
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            return CarrierResolver.getCarrierIdFromMccMnc(phone.getContext(), mccmnc);
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
     //
     // Internal helper methods.
     //
@@ -2490,17 +2600,14 @@
     }
 
     /**
-     * Returns the unread count of voicemails
-     */
-    public int getVoiceMessageCount() {
-        return getVoiceMessageCountForSubscriber(getDefaultSubscription());
-    }
-
-    /**
      * Returns the unread count of voicemails for a subId
      */
     @Override
-    public int getVoiceMessageCountForSubscriber( int subId) {
+    public int getVoiceMessageCountForSubscriber(int subId, String callingPackage) {
+        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(
+                mApp, subId, callingPackage, "getVoiceMessageCountForSubscriber")) {
+            return 0;
+        }
         final long identity = Binder.clearCallingIdentity();
         try {
             final Phone phone = getPhone(subId);
@@ -2582,12 +2689,9 @@
     }
 
     @Override
-    public void addImsRegistrationCallback(int subId, IImsRegistrationCallback c,
-            String callingPackage) throws RemoteException {
-        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, subId, callingPackage,
-                "addImsRegistrationCallback")) {
-            return;
-        }
+    public void registerImsRegistrationCallback(int subId, IImsRegistrationCallback c)
+            throws RemoteException {
+        enforceReadPrivilegedPermission("registerImsRegistrationCallback");
         // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
         final long token = Binder.clearCallingIdentity();
         try {
@@ -2599,12 +2703,8 @@
     }
 
     @Override
-    public void removeImsRegistrationCallback(int subId, IImsRegistrationCallback c,
-            String callingPackage) {
-        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, subId, callingPackage,
-                "removeImsRegistrationCallback")) {
-            return;
-        }
+    public void unregisterImsRegistrationCallback(int subId, IImsRegistrationCallback c) {
+        enforceReadPrivilegedPermission("unregisterImsRegistrationCallback");
         // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
         Binder.withCleanCallingIdentity(() ->
                 ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
@@ -2612,12 +2712,9 @@
     }
 
     @Override
-    public void addMmTelCapabilityCallback(int subId, IImsCapabilityCallback c,
-            String callingPackage) throws RemoteException {
-        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, subId, callingPackage,
-                "addMmTelCapabilityCallback")) {
-            return;
-        }
+    public void registerMmTelCapabilityCallback(int subId, IImsCapabilityCallback c)
+            throws RemoteException {
+        enforceReadPrivilegedPermission("registerMmTelCapabilityCallback");
         // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
         final long token = Binder.clearCallingIdentity();
         try {
@@ -2629,12 +2726,8 @@
     }
 
     @Override
-    public void removeMmTelCapabilityCallback(int subId, IImsCapabilityCallback c,
-            String callingPackage) {
-        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, subId, callingPackage,
-                "removeMmTelCapabilityCallback")) {
-            return;
-        }
+    public void unregisterMmTelCapabilityCallback(int subId, IImsCapabilityCallback c) {
+        enforceReadPrivilegedPermission("unregisterMmTelCapabilityCallback");
         // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
         Binder.withCleanCallingIdentity(() ->
                 ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
@@ -2642,11 +2735,8 @@
     }
 
     @Override
-    public boolean isCapable(int subId, int capability, int regTech, String callingPackage) {
-        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, subId, callingPackage,
-                "isCapable")) {
-            return false;
-        }
+    public boolean isCapable(int subId, int capability, int regTech) {
+        enforceReadPrivilegedPermission("isCapable");
         // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
         final long token = Binder.clearCallingIdentity();
         try {
@@ -2661,11 +2751,8 @@
     }
 
     @Override
-    public boolean isAvailable(int subId, int capability, int regTech, String callingPackage) {
-        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, subId, callingPackage,
-                "isAvailable")) {
-            return false;
-        }
+    public boolean isAvailable(int subId, int capability, int regTech) {
+        enforceReadPrivilegedPermission("isAvailable");
         final long token = Binder.clearCallingIdentity();
         try {
             Phone phone = getPhone(subId);
@@ -2704,11 +2791,8 @@
     }
 
     @Override
-    public boolean isVtSettingEnabled(int subId, String callingPackage) {
-        if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, subId, callingPackage,
-                "isVtSettingEnabled")) {
-            return false;
-        }
+    public boolean isVtSettingEnabled(int subId) {
+        enforceReadPrivilegedPermission("isVtSettingEnabled");
         final long identity = Binder.clearCallingIdentity();
         try {
             // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
@@ -2882,6 +2966,98 @@
         }
     }
 
+    @Override
+    public void registerImsProvisioningChangedCallback(int subId, IImsConfigCallback callback) {
+        enforceReadPrivilegedPermission("registerImsProvisioningChangedCallback");
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
+            ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
+                    .getConfigInterface().addConfigCallback(callback);
+        } catch (ImsException e) {
+            throw new IllegalArgumentException(e.getMessage());
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    @Override
+    public void unregisterImsProvisioningChangedCallback(int subId, IImsConfigCallback callback) {
+        enforceReadPrivilegedPermission("unregisterImsProvisioningChangedCallback");
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
+            ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
+                    .getConfigInterface().removeConfigCallback(callback);
+        } catch (ImsException e) {
+            throw new IllegalArgumentException(e.getMessage());
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    @Override
+    public int getImsProvisioningInt(int subId, int key) {
+        enforceReadPrivilegedPermission("getImsProvisioningInt");
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
+            return ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
+                    .getConfigInterface().getConfigInt(key);
+        } catch (ImsException e) {
+            throw new IllegalArgumentException(e.getMessage());
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    @Override
+    public String getImsProvisioningString(int subId, int key) {
+        enforceReadPrivilegedPermission("getImsProvisioningString");
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
+            return ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
+                    .getConfigInterface().getConfigString(key);
+        } catch (ImsException e) {
+            throw new IllegalArgumentException(e.getMessage());
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    @Override
+    public int setImsProvisioningInt(int subId, int key, int value) {
+        TelephonyPermissions.enforceCallingOrSelfModifyPermissionOrCarrierPrivilege(mApp, subId,
+                "setImsProvisioningInt");
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
+            return ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
+                    .getConfigInterface().setConfig(key, value);
+        } catch (ImsException e) {
+            throw new IllegalArgumentException(e.getMessage());
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    @Override
+    public int setImsProvisioningString(int subId, int key, String value) {
+        TelephonyPermissions.enforceCallingOrSelfModifyPermissionOrCarrierPrivilege(mApp, subId,
+                "setImsProvisioningString");
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            // TODO: Refactor to remove ImsManager dependence and query through ImsPhone directly.
+            return ImsManager.getInstance(mPhone.getContext(), getSlotIndexOrException(subId))
+                    .getConfigInterface().setConfig(key, value);
+        } catch (ImsException e) {
+            throw new IllegalArgumentException(e.getMessage());
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
     private int getSlotIndexOrException(int subId) throws IllegalArgumentException {
         int slotId = SubscriptionManager.getSlotIndex(subId);
         if (!SubscriptionManager.isValidSlotIndex(slotId)) {
diff --git a/src/com/android/phone/PhoneUtils.java b/src/com/android/phone/PhoneUtils.java
index 3306d4b..9b118ff 100644
--- a/src/com/android/phone/PhoneUtils.java
+++ b/src/com/android/phone/PhoneUtils.java
@@ -19,16 +19,17 @@
 import android.app.AlertDialog;
 import android.app.Dialog;
 import android.app.ProgressDialog;
-import android.content.ActivityNotFoundException;
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.DialogInterface;
 import android.net.Uri;
 import android.os.Handler;
 import android.os.Message;
+import android.os.PersistableBundle;
 import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.VideoProfile;
+import android.telephony.CarrierConfigManager;
 import android.telephony.PhoneNumberUtils;
 import android.telephony.SubscriptionManager;
 import android.text.TextUtils;
@@ -54,6 +55,7 @@
 import com.android.internal.telephony.PhoneFactory;
 import com.android.internal.telephony.TelephonyCapabilities;
 import com.android.phone.CallGatewayManager.RawGatewayInfo;
+import com.android.phone.settings.SuppServicesUiUtil;
 
 import java.util.Arrays;
 import java.util.List;
@@ -384,6 +386,22 @@
                 text = null;
                 break;
             case COMPLETE:
+                PersistableBundle b = null;
+                if (SubscriptionManager.isValidSubscriptionId(phone.getSubId())) {
+                    b = app.getCarrierConfigForSubId(
+                            phone.getSubId());
+                } else {
+                    b = app.getCarrierConfig();
+                }
+
+                if (b.getBoolean(CarrierConfigManager.KEY_USE_CALLER_ID_USSD_BOOL)) {
+                    text = SuppServicesUiUtil.handleCallerIdUssdResponse(app, context, phone,
+                            mmiCode);
+                    if (mmiCode.getMessage() != null && !text.equals(mmiCode.getMessage())) {
+                        break;
+                    }
+                }
+
                 if (app.getPUKEntryActivity() != null) {
                     // if an attempt to unPUK the device was made, we specify
                     // the title and the message here.
@@ -560,7 +578,15 @@
         }
     }
 
-    private static void createUssdDialog(PhoneGlobals app, Context context, CharSequence text,
+    /**
+     * It displays the message dialog for user about the mmi code result message.
+     *
+     * @param app This is {@link PhoneGlobals}
+     * @param context Context to get strings.
+     * @param text This is message's result.
+     * @param windowType The new window type. {@link WindowManager.LayoutParams}.
+     */
+    public static void createUssdDialog(PhoneGlobals app, Context context, CharSequence text,
             int windowType) {
         log("displayMMIComplete: MMI code has finished running.");
 
diff --git a/src/com/android/phone/ecc/EccInfoHelper.java b/src/com/android/phone/ecc/EccInfoHelper.java
index cd47dde..c471c4b 100644
--- a/src/com/android/phone/ecc/EccInfoHelper.java
+++ b/src/com/android/phone/ecc/EccInfoHelper.java
@@ -50,6 +50,32 @@
     private static final boolean DBG = false;
     private static final String LOG_TAG = "EccInfoHelper";
 
+    /**
+     * Check if current CountryEccInfo is available for current environment.
+     */
+    public static boolean isCountryEccInfoAvailable(Context context, String countryIso) {
+        CountryEccInfo countryEccInfo;
+        try {
+            countryEccInfo = IsoToEccProtobufRepository.getInstance()
+                    .getCountryEccInfo(context, countryIso);
+        } catch (IOException e) {
+            Log.e(LOG_TAG, "Failed to retrieve ECC: ", e);
+            return false;
+        }
+
+        if (countryEccInfo == null) {
+            return false;
+        }
+        for (EccInfo entry : countryEccInfo.getEccInfoList()) {
+            if (!PhoneNumberUtils.isEmergencyNumber(entry.getNumber())) {
+                // The CountryEccInfo is unavailable if any ecc number in the local table was
+                // declined.
+                return false;
+            }
+        }
+        return true;
+    }
+
     // country ISO to ECC list data source
     private IsoToEccRepository mEccRepo;
 
@@ -136,7 +162,8 @@
         }.execute();
     }
 
-    private @NonNull CountryEccInfo getDialableCountryEccInfo(CountryEccInfo countryEccInfo) {
+    @NonNull
+    private CountryEccInfo getDialableCountryEccInfo(CountryEccInfo countryEccInfo) {
         ArrayList<EccInfo> dialableECCList = new ArrayList<>();
         String dialableFallback = null;
 
@@ -155,7 +182,8 @@
         return new CountryEccInfo(dialableFallback, dialableECCList);
     }
 
-    private @Nullable String getCurrentCountryIso(@NonNull Context context) {
+    @Nullable
+    private String getCurrentCountryIso(@NonNull Context context) {
         // Do not detect country ISO if airplane mode is on
         int airplaneMode = Settings.System.getInt(context.getContentResolver(),
                 Settings.Global.AIRPLANE_MODE_ON, 0);
@@ -185,7 +213,8 @@
     // XXX: According to ServiceStateTracker implementation, to actually get current cell info,
     // this method must be called in a separate thread from ServiceStateTracker, which is the
     // main thread of Telephony service.
-    private @Nullable String getCurrentMccFromCellInfo(@NonNull Context context) {
+    @Nullable
+    private String getCurrentMccFromCellInfo(@NonNull Context context) {
         // retrieve mcc info from base station even no SIM present.
         TelephonyManager tm = (TelephonyManager) context.getSystemService(
                 Context.TELEPHONY_SERVICE);
diff --git a/src/com/android/phone/ecc/IsoToEccProtobufRepository.java b/src/com/android/phone/ecc/IsoToEccProtobufRepository.java
index 817ff1d..0cd3108 100644
--- a/src/com/android/phone/ecc/IsoToEccProtobufRepository.java
+++ b/src/com/android/phone/ecc/IsoToEccProtobufRepository.java
@@ -40,7 +40,22 @@
 public class IsoToEccProtobufRepository implements IsoToEccRepository {
     private static final String LOG_TAG = "EccRepository";
 
-    private Map<String, CountryEccInfo> mEccTable = null;
+    private static IsoToEccProtobufRepository sInstance;
+
+    /**
+     * Returns the singleton instance of IsoToEccProtobufRepository
+     */
+    public static synchronized IsoToEccProtobufRepository getInstance() {
+        if (sInstance == null) {
+            sInstance = new IsoToEccProtobufRepository();
+        }
+        return sInstance;
+    }
+
+    private final Map<String, CountryEccInfo> mEccTable = new HashMap<>();
+
+    private IsoToEccProtobufRepository() {
+    }
 
     @Override
     @Nullable
@@ -50,24 +65,28 @@
             return null;
         }
 
-        if (mEccTable == null) {
-            mEccTable = initMappingTable(context);
+        synchronized (mEccTable) {
+            return mEccTable.get(iso.toUpperCase());
         }
-        return mEccTable.get(iso.toUpperCase());
     }
 
-    private Map<String, CountryEccInfo> initMappingTable(@NonNull Context context)
-            throws IOException {
+    /**
+     * Loads the mapping table.
+     */
+    public void loadMappingTable(@NonNull Context context) {
         ProtobufEccData.AllInfo allEccData = null;
 
         long startTime = SystemClock.uptimeMillis();
-        allEccData = parseEccData(new BufferedInputStream(
-                context.getAssets().open("eccdata")));
+        try {
+            allEccData = parseEccData(new BufferedInputStream(
+                    context.getAssets().open("eccdata")));
+        } catch (IOException e) {
+            Log.e(LOG_TAG, "Failed to retrieve ECC: ", e);
+        }
         long endTime = SystemClock.uptimeMillis();
 
         if (allEccData == null) {
-            // Returns an empty table.
-            return new HashMap<>();
+            return;
         }
 
         if (Log.isLoggable(LOG_TAG, Log.DEBUG)) {
@@ -77,16 +96,17 @@
         }
 
         // Converts to run-time data from Protobuf data.
-        Map<String, CountryEccInfo> table = new HashMap<>();
-        for (ProtobufEccData.CountryInfo countryData : allEccData.getCountriesList()) {
-            if (countryData.hasIsoCode()) {
-                CountryEccInfo countryInfo = loadCountryEccInfo(countryData);
-                if (countryInfo != null) {
-                    table.put(countryData.getIsoCode().toUpperCase(), countryInfo);
+        synchronized (mEccTable) {
+            mEccTable.clear();
+            for (ProtobufEccData.CountryInfo countryData : allEccData.getCountriesList()) {
+                if (countryData.hasIsoCode()) {
+                    CountryEccInfo countryInfo = loadCountryEccInfo(countryData);
+                    if (countryInfo != null) {
+                        mEccTable.put(countryData.getIsoCode().toUpperCase(), countryInfo);
+                    }
                 }
             }
         }
-        return table;
     }
 
     private ProtobufEccData.AllInfo parseEccData(InputStream input) throws IOException {
diff --git a/src/com/android/phone/settings/SuppServicesUiUtil.java b/src/com/android/phone/settings/SuppServicesUiUtil.java
index 7c647f4..8cb37a5 100644
--- a/src/com/android/phone/settings/SuppServicesUiUtil.java
+++ b/src/com/android/phone/settings/SuppServicesUiUtil.java
@@ -22,23 +22,35 @@
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.WindowManager;
 
+import com.android.internal.telephony.MmiCode;
 import com.android.internal.telephony.Phone;
+import com.android.phone.CarrierXmlParser;
 import com.android.phone.GsmUmtsAdditionalCallOptions;
 import com.android.phone.GsmUmtsCallOptions;
+import com.android.phone.PhoneGlobals;
+import com.android.phone.PhoneUtils;
 import com.android.phone.R;
 
+import java.util.HashMap;
+
 /**
  * Utility class to help supplementary service functions and UI.
  */
 public class SuppServicesUiUtil {
     static final String LOG_TAG = "SuppServicesUiUtil";
 
+    private static final String CLIR_ACTIVATE = "#31#";
+    private static final String CLIR_DEACTIVATE = "*31#";
+
     /**
      * show dialog for supplementary services over ut precaution.
      *
-     * @param context The context.
-     * @param phone   The Phone object.
+     * @param context       The context.
+     * @param phone         The Phone object.
      * @param preferenceKey The preference's key.
      */
     public static Dialog showBlockingSuppServicesDialog(Context context, Phone phone,
@@ -140,4 +152,88 @@
         return telephonyManager.isNetworkRoaming(phone.getSubId())
                 && !phone.getDataRoamingEnabled();
     }
+
+    /**
+     * To handle caller id's ussd response message which sets caller id activate or deactivate,
+     * and then sync caller id's ussd value to ss value if this command successful.
+     *
+     * @param context context to get strings.
+     * @param mmiCode MMI result.
+     * @return Text from response message is displayed on dialog .
+     * @hide
+     */
+    public static CharSequence handleCallerIdUssdResponse(PhoneGlobals app, Context context,
+            Phone phone, MmiCode mmiCode) {
+        if (TextUtils.isEmpty(mmiCode.getDialString())) {
+            return mmiCode.getMessage();
+        }
+
+        TelephonyManager telephonyManager = new TelephonyManager(context, phone.getSubId());
+        int carrierId = telephonyManager.getSimCarrierId();
+        if (carrierId == TelephonyManager.UNKNOWN_CARRIER_ID) {
+            return mmiCode.getMessage();
+        }
+
+        CarrierXmlParser carrierXmlParser = new CarrierXmlParser(context, carrierId);
+        CarrierXmlParser.SsEntry.SSAction ssAction = carrierXmlParser.getCallerIdUssdCommandAction(
+                mmiCode.getDialString());
+        Log.d(LOG_TAG, "handleCallerIdUssdResponse: ssAction =" + ssAction);
+
+        if (ssAction == CarrierXmlParser.SsEntry.SSAction.UNKNOWN) {
+            return mmiCode.getMessage();
+        }
+
+        HashMap<String, String> analysisResult = carrierXmlParser.getFeature(
+                CarrierXmlParser.FEATURE_CALLER_ID)
+                .getResponseSet(ssAction,
+                        mmiCode.getMessage().toString());
+        Log.d(LOG_TAG, "handleCallerIdUssdResponse: analysisResult =" + analysisResult);
+        if (analysisResult.get(CarrierXmlParser.TAG_RESPONSE_STATUS).equals(
+                CarrierXmlParser.TAG_COMMAND_RESULT_DEFINITION_OK)) {
+
+            new Thread(new Runnable() {
+                @Override
+                public void run() {
+                    TelephonyManager.UssdResponseCallback ussdCallback =
+                            new TelephonyManager.UssdResponseCallback() {
+                                @Override
+                                public void onReceiveUssdResponse(
+                                        final TelephonyManager telephonyManager,
+                                        String request, CharSequence response) {
+                                    Log.d(LOG_TAG, "handleCallerIdUssdResponse: response ="
+                                            + response.toString());
+                                    PhoneUtils.createUssdDialog(app, context, response.toString(),
+                                            WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
+                                }
+
+                                @Override
+                                public void onReceiveUssdResponseFailed(
+                                        final TelephonyManager telephonyManager,
+                                        String request, int failureCode) {
+                                    Log.d(LOG_TAG, "handleCallerIdUssdResponse: failureCode ="
+                                            + failureCode);
+                                    PhoneUtils.createUssdDialog(app, context,
+                                            context.getText(R.string.response_error),
+                                            WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
+                                }
+                            };
+
+                    String clir = "";
+                    if (ssAction == CarrierXmlParser.SsEntry.SSAction.UPDATE_ACTIVATE) {
+                        clir = CLIR_ACTIVATE;
+                    } else {
+                        clir = CLIR_DEACTIVATE;
+                    }
+                    TelephonyManager telephonyManager =
+                            (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
+                    telephonyManager.sendUssdRequest(clir, ussdCallback, null);
+                }
+            }).start();
+
+            return "";
+        } else {
+            return context.getText(
+                    com.android.internal.R.string.mmiError);
+        }
+    }
 }
diff --git a/src/com/android/services/telephony/DisconnectCauseUtil.java b/src/com/android/services/telephony/DisconnectCauseUtil.java
index 9ed34e7..a92dea7 100644
--- a/src/com/android/services/telephony/DisconnectCauseUtil.java
+++ b/src/com/android/services/telephony/DisconnectCauseUtil.java
@@ -311,6 +311,10 @@
                 resourceId = R.string.callFailed_unobtainable_number;
                 break;
 
+            case android.telephony.DisconnectCause.VOICEMAIL_NUMBER_MISSING:
+                resourceId = R.string.incall_error_missing_voicemail_number;
+                break;
+
             case android.telephony.DisconnectCause.CALL_PULLED:
                 resourceId = R.string.callEnded_pulled;
                 break;
@@ -666,8 +670,6 @@
                 break;
 
             case android.telephony.DisconnectCause.VOICEMAIL_NUMBER_MISSING:
-                // TODO: Need to bring up the "Missing Voicemail Number" dialog, which
-                // will ultimately take us to the Call Settings.
                 resourceId = R.string.incall_error_missing_voicemail_number;
                 break;
 
diff --git a/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsCallingActivity.java b/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsCallingActivity.java
index ae5b39e..fea2bf8 100644
--- a/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsCallingActivity.java
+++ b/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsCallingActivity.java
@@ -165,7 +165,7 @@
             mImsManager = ImsMmTelManager.createForSubscriptionId(this,
                     SubscriptionManager.getDefaultVoiceSubscriptionId());
             Log.i("ImsCallingActivity", "onResume");
-            mImsManager.addMmTelCapabilityCallback(getMainExecutor(), mCapabilityCallback);
+            mImsManager.registerMmTelCapabilityCallback(getMainExecutor(), mCapabilityCallback);
         } catch (IllegalArgumentException e) {
             Log.w("ImsCallingActivity", "illegal subscription ID.");
         }
@@ -174,7 +174,7 @@
     @Override
     protected void onPause() {
         super.onPause();
-        mImsManager.removeMmTelCapabilityCallback(mCapabilityCallback);
+        mImsManager.unregisterMmTelCapabilityCallback(mCapabilityCallback);
         mImsManager = null;
     }
 
diff --git a/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsRegistrationActivity.java b/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsRegistrationActivity.java
index bca8eba..3317ff1 100644
--- a/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsRegistrationActivity.java
+++ b/testapps/ImsTestService/src/com/android/phone/testapps/imstestapp/ImsRegistrationActivity.java
@@ -179,7 +179,7 @@
         try {
             mImsManager = ImsMmTelManager.createForSubscriptionId(this,
                     SubscriptionManager.getDefaultVoiceSubscriptionId());
-            mImsManager.addImsRegistrationCallback(getMainExecutor(), mRegistrationCallback);
+            mImsManager.registerImsRegistrationCallback(getMainExecutor(), mRegistrationCallback);
         } catch (IllegalArgumentException e) {
             Log.w("ImsCallingActivity", "illegal subscription ID.");
         }
@@ -219,7 +219,7 @@
     @Override
     protected void onPause() {
         super.onPause();
-        mImsManager.removeImsRegistrationCallback(mRegistrationCallback);
+        mImsManager.unregisterImsRegistrationCallback(mRegistrationCallback);
         mImsManager = null;
     }
 
diff --git a/testapps/TelephonyRegistryTestApp/AndroidManifest.xml b/testapps/TelephonyRegistryTestApp/AndroidManifest.xml
index 5f19509..708ea66 100644
--- a/testapps/TelephonyRegistryTestApp/AndroidManifest.xml
+++ b/testapps/TelephonyRegistryTestApp/AndroidManifest.xml
@@ -18,6 +18,7 @@
           package="com.android.phone.testapps.telephonyregistry">
     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
     <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
+    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"/>
     <application android:label="TelephonyRegistryTestApp">
         <activity
             android:name=".TelephonyRegistryTestApp"
diff --git a/testapps/TelephonyRegistryTestApp/src/com/android/phone/testapps/telephonyregistry/TelephonyRegistryTestApp.java b/testapps/TelephonyRegistryTestApp/src/com/android/phone/testapps/telephonyregistry/TelephonyRegistryTestApp.java
index 8593245..74cafcd 100644
--- a/testapps/TelephonyRegistryTestApp/src/com/android/phone/testapps/telephonyregistry/TelephonyRegistryTestApp.java
+++ b/testapps/TelephonyRegistryTestApp/src/com/android/phone/testapps/telephonyregistry/TelephonyRegistryTestApp.java
@@ -54,7 +54,7 @@
         put(PhoneStateListener.LISTEN_PRECISE_CALL_STATE, "PRECISE_CALL_STATE");
         put(PhoneStateListener.LISTEN_PRECISE_DATA_CONNECTION_STATE,
                 "PRECISE_DATA_CONNECTION_STATE");
-        put(PhoneStateListener.LISTEN_VOLTE_STATE, "VOLTE_STATE");
+        put(PhoneStateListener.LISTEN_SRVCC_STATE_CHANGED, "SRVCC_STATE");
         put(PhoneStateListener.LISTEN_CARRIER_NETWORK_CHANGE, "CARRIER_NETWORK_CHANGE");
         put(PhoneStateListener.LISTEN_VOICE_ACTIVATION_STATE, "VOICE_ACTIVATION_STATE");
         put(PhoneStateListener.LISTEN_DATA_ACTIVATION_STATE, "DATA_ACTIVATION_STATE");
@@ -71,6 +71,11 @@
             notify("onCellInfoChanged", cellInfo);
         }
 
+        @Override
+        public void onSrvccStateChanged(int srvccState) {
+            notify("onSrvccStateChanged", srvccState);
+        }
+
         private void notify(String method, Object data) {
             Notification.Builder builder = new Notification.Builder(TelephonyRegistryTestApp.this,
                     NOTIFICATION_CHANNEL);
