diff --git a/config/cm_audio.mk b/config/cm_audio.mk
index b4aa316..b5ab8b0 100644
--- a/config/cm_audio.mk
+++ b/config/cm_audio.mk
@@ -30,4 +30,6 @@
 	$(RINGTONE_PATH)/Highscore.ogg:system/media/audio/ringtones/Highscore.ogg \
 	$(RINGTONE_PATH)/Lyon.ogg:system/media/audio/ringtones/Lyon.ogg \
 	$(RINGTONE_PATH)/Rockin.ogg:system/media/audio/ringtones/Rockin.ogg \
+	$(RINGTONE_PATH)/Sheep.mp3:system/media/audio/ringtones/Sheep.mp3
+
 
diff --git a/config/common.mk b/config/common.mk
index 1653d4b..b83b994 100644
--- a/config/common.mk
+++ b/config/common.mk
@@ -96,10 +96,6 @@
 PRODUCT_COPY_FILES += \
     vendor/cm/prebuilt/common/etc/init.d/90userinit:system/etc/init.d/90userinit
 
-# SELinux filesystem labels
-PRODUCT_COPY_FILES += \
-    vendor/cm/prebuilt/common/etc/init.d/50selinuxrelabel:system/etc/init.d/50selinuxrelabel
-
 # CM-specific init file
 PRODUCT_COPY_FILES += \
     vendor/cm/prebuilt/common/etc/init.local.rc:root/init.cm.rc
diff --git a/overlay/common/frameworks/base/core/res/res/drawable-hdpi/default_wallpaper.jpg b/overlay/common/frameworks/base/core/res/res/drawable-hdpi/default_wallpaper.jpg
new file mode 100644
index 0000000..0236b61
--- /dev/null
+++ b/overlay/common/frameworks/base/core/res/res/drawable-hdpi/default_wallpaper.jpg
Binary files differ
diff --git a/overlay/common/frameworks/base/core/res/res/drawable-xhdpi/default_wallpaper.jpg b/overlay/common/frameworks/base/core/res/res/drawable-xhdpi/default_wallpaper.jpg
new file mode 100644
index 0000000..0eb5192
--- /dev/null
+++ b/overlay/common/frameworks/base/core/res/res/drawable-xhdpi/default_wallpaper.jpg
Binary files differ
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc120/config.xml b/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc120/config.xml
deleted file mode 100644
index f3a394c..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc120/config.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-
-    <!-- XXXXX NOTE THE FOLLOWING RESOURCES USE THE WRONG NAMING CONVENTION.
-         Please don't copy them, copy anything else. -->
-
-    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
-    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
-         [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH or
-         [1,4,7,9] for TYPE_WIFI, TYPE_MOBILE_DUN, TYPE_BLUETOOTH and TYPE_ETHERNET-->
-    <integer-array translatable="false" name="config_tether_upstream_types">
-        <item>1</item>
-        <item>4</item>
-        <item>7</item>
-        <item>9</item>
-    </integer-array>
-
-    <!-- The VoiceMail default value is displayed to my own number if it is true -->
-    <bool name="config_telephony_use_own_number_for_voicemail">true</bool>
-
-    <!-- sms encoded as octet is decoded by utf8 decoder. if it is true -->
-    <bool name="config_sms_utf8_support">true</bool>
-
-    <!-- The mms content disposition field is supported correctly. if it is true
-         If false, some fields of content disposition do not follow wap-230-wsp-20010705-a.rdf -->
-    <bool name="config_mms_content_disposition_support">false</bool>
-
-    <!-- If this value is true, duplicate Source/Destination port fields
-         in WDP header of some carriers OMADM wap push are supported.
-         ex: MSGTYPE-TotalSegments-CurrentSegment
-             -SourcePortDestPort-SourcePortDestPort-OMADM PDU
-         If false, not supported. -->
-    <bool name="config_duplicate_port_omadm_wappush">true</bool>
-
-    <!-- If Voice Radio Technology is RIL_RADIO_TECHNOLOGY_LTE:14 this is the value
-         that should be used instead. A value of RIL_RADIO_TECHNOLOGY_UNKNOWN:0 means
-         there is no replacement value and VoLTE is assumed to be supported
-
-         For sprint we will use RIL_RADIO_TECHNOLOGY_1xRTT:6 -->
-    <integer name="config_volte_replacement_rat">6</integer>
-
-    <!-- Sometimes, PDU has garbages. So, need to use valid index -->
-    <integer name="config_valid_wappush_index">4</integer>
-
-    <!-- Default network policy warning threshold, in megabytes. -->
-    <integer name="config_networkPolicyDefaultWarning">51200</integer>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc120/strings.xml b/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc120/strings.xml
deleted file mode 100644
index 4c99919..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc120/strings.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/* //device/apps/common/assets/res/any/strings.xml
-**
-** Copyright 2013, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
--->
-
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-
-    <!-- CDMA Roaming Indicator Strings (non ERI)--> <skip />
-    <!-- Default roaming indicator text -->
-    <string name="roamingText0">Digital Roaming</string>
-    <string name="roamingText1">Sprint</string>
-    <string name="roamingText2">Digital Roaming</string>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc260/config.xml b/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc260/config.xml
deleted file mode 100644
index dcbba33..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc310-mnc260/config.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-
-    <!-- Array of ConnectivityManager.TYPE_xxxx values allowable for tethering -->
-    <!-- Common options are [1, 4] for TYPE_WIFI and TYPE_MOBILE_DUN or
-    <!== [0,1,5,7] for TYPE_MOBILE, TYPE_WIFI, TYPE_MOBILE_HIPRI and TYPE_BLUETOOTH -->
-    <integer-array translatable="false" name="config_tether_upstream_types">
-      <item>1</item>
-      <item>4</item>
-      <item>7</item>
-      <item>9</item>
-    </integer-array>
-
-    <!-- String containing the apn value for tethering.  May be overriden by secure settings
-         TETHER_DUN_APN.  Value is a comma separated series of strings:
-         "name,apn,proxy,port,username,password,server,mmsc,mmsproxy,mmsport,mcc,mnc,auth,type"
-         note that empty fields can be ommitted: "name,apn,,,,,,,,,310,260,,DUN" -->
-    <string translatable="false" name="config_tether_apndata">T-Mobile Tethering,pcweb.tmobile.com,,,,,,,,,310,260,,DUN</string>
-
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc220/config.xml b/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc220/config.xml
deleted file mode 100644
index 68f24ce..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc220/config.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-
-    <!-- The mms content disposition field is supported correctly. if it is true
-         If false, some fields of content disposition do not follow wap-230-wsp-20010705-a.rdf -->
-    <bool name="config_mms_content_disposition_support">false</bool>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc225/config.xml b/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc225/config.xml
deleted file mode 100644
index 68f24ce..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc225/config.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-
-    <!-- The mms content disposition field is supported correctly. if it is true
-         If false, some fields of content disposition do not follow wap-230-wsp-20010705-a.rdf -->
-    <bool name="config_mms_content_disposition_support">false</bool>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc490/integers.xml b/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc490/integers.xml
deleted file mode 100644
index 05f45b3..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc490/integers.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <integer name="config_mobile_mtu">1422</integer>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc580/config.xml b/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc580/config.xml
deleted file mode 100644
index 68f24ce..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc580/config.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-
-    <!-- The mms content disposition field is supported correctly. if it is true
-         If false, some fields of content disposition do not follow wap-230-wsp-20010705-a.rdf -->
-    <bool name="config_mms_content_disposition_support">false</bool>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc870/integers.xml b/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc870/integers.xml
deleted file mode 100644
index 05f45b3..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc311-mnc870/integers.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <integer name="config_mobile_mtu">1422</integer>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc440-mnc07/config.xml b/overlay/common/frameworks/base/core/res/res/values-mcc440-mnc07/config.xml
deleted file mode 100644
index 51f1e65..0000000
--- a/overlay/common/frameworks/base/core/res/res/values-mcc440-mnc07/config.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Sometimes, PDU has garbages. So, need to use valid index -->
-    <integer name="config_valid_wappush_index">7</integer>
-</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/values-mcc440-mnc20/config.xml b/overlay/common/frameworks/base/core/res/res/values-mcc440-mnc20/config.xml
new file mode 100644
index 0000000..4eb38e4
--- /dev/null
+++ b/overlay/common/frameworks/base/core/res/res/values-mcc440-mnc20/config.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2013 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.
+-->
+
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds. -->
+<resources>
+    <!-- SoftBank maintains a MMS UserAgent whitelist, we must use one of the white-listed strings to be able to send/receive -->
+    <string name="config_mms_user_agent">Nexus5</string>
+    <string name="config_mms_user_agent_profile_url">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
+</resources>
diff --git a/overlay/common/frameworks/base/core/res/res/xml-mcc310-mnc120/eri.xml b/overlay/common/frameworks/base/core/res/res/xml-mcc310-mnc120/eri.xml
deleted file mode 100644
index 62acd91..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml-mcc310-mnc120/eri.xml
+++ /dev/null
@@ -1,1287 +0,0 @@
-<?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="1358"
-         NumberOfEriEntries="179"
-         EriFileType="1">
-
-         <CallPromptId Id="0"
-                       CallPromptText="CallPromptId0"/>
-
-         <CallPromptId Id="1"
-                       CallPromptText="CallPromptId1"/>
-
-         <CallPromptId Id="2"
-                       CallPromptText="CallPromptId2"/>
-
-         <EriInfo RoamingIndicator="0"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Digital Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="1"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Sprint"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="2"
-                  IconIndex="2"
-                  IconMode="0"
-                  EriText="Digital Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="64"
-                  IconIndex="64"
-                  IconMode="0"
-                  EriText="Preferred System"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="65"
-                  IconIndex="65"
-                  IconMode="0"
-                  EriText="Available System"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="66"
-                  IconIndex="66"
-                  IconMode="0"
-                  EriText="Alliance Partner"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="67"
-                  IconIndex="67"
-                  IconMode="0"
-                  EriText="Premium Partner"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="68"
-                  IconIndex="68"
-                  IconMode="0"
-                  EriText="Full Service Functionality"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="69"
-                  IconIndex="69"
-                  IconMode="0"
-                  EriText="Partial Service Functionality"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="70"
-                  IconIndex="70"
-                  IconMode="0"
-                  EriText="Analog A"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="71"
-                  IconIndex="71"
-                  IconMode="0"
-                  EriText="Analog B"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="72"
-                  IconIndex="72"
-                  IconMode="0"
-                  EriText="CDMA 800 A"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="73"
-                  IconIndex="73"
-                  IconMode="0"
-                  EriText="CDMA 800 B"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="74"
-                  IconIndex="74"
-                  IconMode="0"
-                  EriText="International Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="75"
-                  IconIndex="75"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="76"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Campus"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="77"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="In Building"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="78"
-                  IconIndex="78"
-                  IconMode="0"
-                  EriText="Regional"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="79"
-                  IconIndex="79"
-                  IconMode="0"
-                  EriText="Community"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="80"
-                  IconIndex="80"
-                  IconMode="0"
-                  EriText="Business"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="81"
-                  IconIndex="81"
-                  IconMode="0"
-                  EriText="Zone 1"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="82"
-                  IconIndex="82"
-                  IconMode="0"
-                  EriText="Zone 2"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="83"
-                  IconIndex="83"
-                  IconMode="0"
-                  EriText="National"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="84"
-                  IconIndex="84"
-                  IconMode="0"
-                  EriText="Local"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="85"
-                  IconIndex="85"
-                  IconMode="0"
-                  EriText="City"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="86"
-                  IconIndex="86"
-                  IconMode="0"
-                  EriText="Government"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="87"
-                  IconIndex="87"
-                  IconMode="0"
-                  EriText="USA"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="88"
-                  IconIndex="88"
-                  IconMode="0"
-                  EriText="State"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="89"
-                  IconIndex="89"
-                  IconMode="0"
-                  EriText="Resort"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="90"
-                  IconIndex="90"
-                  IconMode="0"
-                  EriText="Headquarters"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="91"
-                  IconIndex="91"
-                  IconMode="0"
-                  EriText="Personal"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="92"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Home"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="93"
-                  IconIndex="93"
-                  IconMode="0"
-                  EriText="Residential"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="94"
-                  IconIndex="94"
-                  IconMode="0"
-                  EriText="University"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="95"
-                  IconIndex="95"
-                  IconMode="0"
-                  EriText="College"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="96"
-                  IconIndex="96"
-                  IconMode="0"
-                  EriText="Hotel Guest"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="97"
-                  IconIndex="97"
-                  IconMode="0"
-                  EriText="Rental"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="98"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Corporate"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="99"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Sprint"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="100"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Campus"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="101"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="In Building"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="102"
-                  IconIndex="102"
-                  IconMode="0"
-                  EriText="Regional"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="103"
-                  IconIndex="103"
-                  IconMode="0"
-                  EriText="Community"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="104"
-                  IconIndex="104"
-                  IconMode="0"
-                  EriText="Business"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="105"
-                  IconIndex="105"
-                  IconMode="0"
-                  EriText="Zone 1"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="106"
-                  IconIndex="106"
-                  IconMode="0"
-                  EriText="Zone 2"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="107"
-                  IconIndex="107"
-                  IconMode="0"
-                  EriText="National"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="108"
-                  IconIndex="108"
-                  IconMode="0"
-                  EriText="Local"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="109"
-                  IconIndex="109"
-                  IconMode="0"
-                  EriText="City"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="110"
-                  IconIndex="110"
-                  IconMode="0"
-                  EriText="Government"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="111"
-                  IconIndex="111"
-                  IconMode="0"
-                  EriText="USA"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="112"
-                  IconIndex="112"
-                  IconMode="0"
-                  EriText="State"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="113"
-                  IconIndex="113"
-                  IconMode="0"
-                  EriText="Resort"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="114"
-                  IconIndex="114"
-                  IconMode="0"
-                  EriText="Headquarters"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="115"
-                  IconIndex="115"
-                  IconMode="0"
-                  EriText="Personal"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="116"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Home"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="117"
-                  IconIndex="117"
-                  IconMode="0"
-                  EriText="Residential"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="118"
-                  IconIndex="118"
-                  IconMode="0"
-                  EriText="University"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="119"
-                  IconIndex="119"
-                  IconMode="0"
-                  EriText="College"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="120"
-                  IconIndex="120"
-                  IconMode="0"
-                  EriText="Hotel Guest"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="121"
-                  IconIndex="121"
-                  IconMode="0"
-                  EriText="Rental"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="122"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Corporate"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="123"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Sprint"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="124"
-                  IconIndex="124"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="125"
-                  IconIndex="125"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="126"
-                  IconIndex="126"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="127"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Premium Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="128"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Enhanced Service "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="129"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Enhanced Digital"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="130"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Enhanced Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="131"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Alliance Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="132"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Alliance Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="133"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Vision Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="134"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="135"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Expanded Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="136"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Expanded Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="137"
-                  IconIndex="137"
-                  IconMode="0"
-                  EriText="Premium Service "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="138"
-                  IconIndex="138"
-                  IconMode="0"
-                  EriText="Enhanced Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="139"
-                  IconIndex="139"
-                  IconMode="0"
-                  EriText="Enhanced Digital"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="140"
-                  IconIndex="140"
-                  IconMode="0"
-                  EriText="Enhanced Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="141"
-                  IconIndex="141"
-                  IconMode="0"
-                  EriText="Alliance Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="142"
-                  IconIndex="142"
-                  IconMode="0"
-                  EriText="Alliance Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="143"
-                  IconIndex="143"
-                  IconMode="0"
-                  EriText="Vision Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="144"
-                  IconIndex="144"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="145"
-                  IconIndex="145"
-                  IconMode="0"
-                  EriText="Expanded Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="146"
-                  IconIndex="146"
-                  IconMode="0"
-                  EriText="Expanded Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="147"
-                  IconIndex="147"
-                  IconMode="1"
-                  EriText="Premium Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="148"
-                  IconIndex="148"
-                  IconMode="1"
-                  EriText="Enhanced Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="149"
-                  IconIndex="149"
-                  IconMode="1"
-                  EriText="Enhanced Digital"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="150"
-                  IconIndex="150"
-                  IconMode="1"
-                  EriText="Enhanced Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="151"
-                  IconIndex="151"
-                  IconMode="1"
-                  EriText="Alliance Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="152"
-                  IconIndex="152"
-                  IconMode="1"
-                  EriText="Alliance Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="153"
-                  IconIndex="153"
-                  IconMode="1"
-                  EriText="Vision Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="154"
-                  IconIndex="154"
-                  IconMode="1"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="155"
-                  IconIndex="155"
-                  IconMode="1"
-                  EriText="Expanded Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="156"
-                  IconIndex="156"
-                  IconMode="1"
-                  EriText="Expanded Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="157"
-                  IconIndex="157"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="158"
-                  IconIndex="158"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="159"
-                  IconIndex="159"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="160"
-                  IconIndex="160"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="161"
-                  IconIndex="161"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="162"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="163"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="164"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="165"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="166"
-                  IconIndex="166"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="167"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="168"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="169"
-                  IconIndex="169"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="170"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="171"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="172"
-                  IconIndex="172"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="173"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="174"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="175"
-                  IconIndex="175"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="176"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="177"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="178"
-                  IconIndex="178"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="179"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="180"
-                  IconIndex="180"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="181"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="182"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="183"
-                  IconIndex="183"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="184"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="185"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="186"
-                  IconIndex="186"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="187"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="188"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="189"
-                  IconIndex="189"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="190"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="191"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="192"
-                  IconIndex="192"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="193"
-                  IconIndex="193"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="194"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="International Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="195"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="International Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="196"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="197"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="198"
-                  IconIndex="198"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="199"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="200"
-                  IconIndex="200"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="201"
-                  IconIndex="201"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="202"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="203"
-                  IconIndex="203"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="204"
-                  IconIndex="204"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="205"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="206"
-                  IconIndex="206"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="207"
-                  IconIndex="207"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="208"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="209"
-                  IconIndex="209"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="210"
-                  IconIndex="210"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="211"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="212"
-                  IconIndex="212"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="213"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="214"
-                  IconIndex="214"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="215"
-                  IconIndex="215"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="216"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="217"
-                  IconIndex="217"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="218"
-                  IconIndex="218"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="219"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="220"
-                  IconIndex="220"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="221"
-                  IconIndex="221"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="222"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="223"
-                  IconIndex="223"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="224"
-                  IconIndex="224"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="225"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="226"
-                  IconIndex="226"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="227"
-                  IconIndex="227"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="228"
-                  IconIndex="228"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="229"
-                  IconIndex="229"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="230"
-                  IconIndex="230"
-                  IconMode="0"
-                  EriText="International Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="231"
-                  IconIndex="231"
-                  IconMode="0"
-                  EriText="International Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="232"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="233"
-                  IconIndex="233"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="234"
-                  IconIndex="234"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="235"
-                  IconIndex="235"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="236"
-                  IconIndex="236"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="237"
-                  IconIndex="237"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="238"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="239"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=""
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-</EriFile>
diff --git a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc220/eri.xml b/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc220/eri.xml
deleted file mode 100644
index d79b62b..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc220/eri.xml
+++ /dev/null
@@ -1,167 +0,0 @@
-<?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="1357"
-         NumberOfEriEntries="19"
-         EriFileType="1">
-
-         <CallPromptId Id="0"
-                       CallPromptText="CallPromptId0"/>
-
-         <CallPromptId Id="1"
-                       CallPromptText="CallPromptId1"/>
-
-         <CallPromptId Id="2"
-                       CallPromptText="CallPromptId2"/>
-
-         <EriInfo RoamingIndicator="0"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="1"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="2"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="64"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="65"
-                  IconIndex="65"
-                  IconMode="0"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="66"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="67"
-                  IconIndex="67"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="68"
-                  IconIndex="68"
-                  IconMode="0"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="69"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="70"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="71"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="72"
-                  IconIndex="72"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="73"
-                  IconIndex="73"
-                  IconMode="0"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="74"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="75"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="76"
-                  IconIndex="76"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="77"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="78"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="79"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-</EriFile>
diff --git a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc225/eri.xml b/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc225/eri.xml
deleted file mode 100644
index d79b62b..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc225/eri.xml
+++ /dev/null
@@ -1,167 +0,0 @@
-<?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="1357"
-         NumberOfEriEntries="19"
-         EriFileType="1">
-
-         <CallPromptId Id="0"
-                       CallPromptText="CallPromptId0"/>
-
-         <CallPromptId Id="1"
-                       CallPromptText="CallPromptId1"/>
-
-         <CallPromptId Id="2"
-                       CallPromptText="CallPromptId2"/>
-
-         <EriInfo RoamingIndicator="0"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="1"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="2"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="64"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="65"
-                  IconIndex="65"
-                  IconMode="0"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="66"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="67"
-                  IconIndex="67"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="68"
-                  IconIndex="68"
-                  IconMode="0"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="69"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="70"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="71"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="72"
-                  IconIndex="72"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="73"
-                  IconIndex="73"
-                  IconMode="0"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="74"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="75"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="76"
-                  IconIndex="76"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="77"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="78"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="79"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-</EriFile>
diff --git a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc490/eri.xml b/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc490/eri.xml
deleted file mode 100644
index 060c2b5..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc490/eri.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<EriFile VersionNumber="6" NumberOfEriEntries="19" 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="Domestic Roaming" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="1" IconIndex="1" IconMode="0" EriText="Virgin Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="2" IconIndex="2" IconMode="1" EriText="International Roaming" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="64" IconIndex="1" IconMode="0" EriText="Virgin Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="65" IconIndex="3" IconMode="0" EriText="Network Extender" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="66" IconIndex="1" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="67" IconIndex="0" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="68" IconIndex="0" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="69" IconIndex="2" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="70" IconIndex="2" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="71" IconIndex="1" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="72" IconIndex="0" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="73" IconIndex="0" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="74" IconIndex="2" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="75" IconIndex="2" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="76" IconIndex="0" IconMode="0" EriText="Virgin Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="77" IconIndex="2" IconMode="0" EriText="Virgin Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="78" IconIndex="1" IconMode="0" EriText="Network Extender" CallPromptId="0" AlertId="1" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="79" IconIndex="3" IconMode="1" EriText="Network Extender" CallPromptId="0" AlertId="1" DataServiceSupport="1" />
-</EriFile>
diff --git a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc580/eri.xml b/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc580/eri.xml
deleted file mode 100644
index d79b62b..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc580/eri.xml
+++ /dev/null
@@ -1,167 +0,0 @@
-<?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="1357"
-         NumberOfEriEntries="19"
-         EriFileType="1">
-
-         <CallPromptId Id="0"
-                       CallPromptText="CallPromptId0"/>
-
-         <CallPromptId Id="1"
-                       CallPromptText="CallPromptId1"/>
-
-         <CallPromptId Id="2"
-                       CallPromptText="CallPromptId2"/>
-
-         <EriInfo RoamingIndicator="0"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="1"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="2"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="64"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="65"
-                  IconIndex="65"
-                  IconMode="0"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="66"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="67"
-                  IconIndex="67"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="68"
-                  IconIndex="68"
-                  IconMode="0"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="69"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="70"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="71"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="72"
-                  IconIndex="72"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="73"
-                  IconIndex="73"
-                  IconMode="0"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="74"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="75"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="76"
-                  IconIndex="76"
-                  IconMode="0"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="77"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="U.S. Cellular"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="78"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="79"
-                  IconIndex="2"
-                  IconMode="1"
-                  EriText="Network Extender"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-</EriFile>
diff --git a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc870/eri.xml b/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc870/eri.xml
deleted file mode 100644
index e504b3a..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml-mcc311-mnc870/eri.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<EriFile VersionNumber="6" NumberOfEriEntries="19" 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="Domestic Roaming" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="1" IconIndex="1" IconMode="0" EriText="Boost Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="2" IconIndex="2" IconMode="1" EriText="International Roaming" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="64" IconIndex="1" IconMode="0" EriText="Boost Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="65" IconIndex="3" IconMode="0" EriText="Network Extender" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="66" IconIndex="1" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="67" IconIndex="0" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="68" IconIndex="0" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="69" IconIndex="2" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="70" IconIndex="2" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="0" />
-    <EriInfo RoamingIndicator="71" IconIndex="1" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="72" IconIndex="0" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="73" IconIndex="0" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="74" IconIndex="2" IconMode="0" EriText="Extended Network" CallPromptId="0" AlertId="4" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="75" IconIndex="2" IconMode="0" EriText="Roaming" CallPromptId="0" AlertId="5" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="76" IconIndex="0" IconMode="0" EriText="Boost Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="77" IconIndex="2" IconMode="0" EriText="Boost Mobile" CallPromptId="0" AlertId="0" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="78" IconIndex="1" IconMode="0" EriText="Network Extender" CallPromptId="0" AlertId="1" DataServiceSupport="1" />
-    <EriInfo RoamingIndicator="79" IconIndex="3" IconMode="1" EriText="Network Extender" CallPromptId="0" AlertId="1" DataServiceSupport="1" />
-</EriFile>
diff --git a/overlay/common/frameworks/base/core/res/res/xml-mcc440-mnc50/eri.xml b/overlay/common/frameworks/base/core/res/res/xml-mcc440-mnc50/eri.xml
deleted file mode 100644
index 5369db8..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml-mcc440-mnc50/eri.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<EriFile VersionNumber="1357" NumberOfEriEntries="12" EriFileType="1">
-    <CallPromptId Id="0" CallPromptText="CallPromptId0" />
-    <CallPromptId Id="1" CallPromptText="CallPromptId1" />
-    <CallPromptId Id="2" CallPromptText="CallPromptId2" />
-    <EriInfo RoamingIndicator="64" IconIndex="1" IconMode="0" EriText="T-CDMA 64" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="65" IconIndex="65" IconMode="0" EriText="T-CDMA 65" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="66" IconIndex="1" IconMode="0" EriText="T-CDMA Ext 66" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="67" IconIndex="67" IconMode="0" EriText="T-CDMA Ext 67" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="68" IconIndex="68" IconMode="0" EriText="T-CDMA Roam 68" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="69" IconIndex="69" IconMode="1" EriText="T-CDMA Ext 69" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="70" IconIndex="70" IconMode="1" EriText="T-CDMA Roam 70" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="71" IconIndex="1" IconMode="0" EriText="T-CDMA Ext 71" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="72" IconIndex="72" IconMode="0" EriText="T-CDMA Ext 72" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="73" IconIndex="73" IconMode="0" EriText="T-CDMA Roam 73" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="74" IconIndex="74" IconMode="1" EriText="T-CDMA Ext 74" CallPromptId="0" AlertId="0" />
-    <EriInfo RoamingIndicator="75" IconIndex="75" IconMode="1" EriText="T-CDMA Roam 75" CallPromptId="0" AlertId="0" />
-</EriFile>
diff --git a/overlay/common/frameworks/base/core/res/res/xml/eri.xml b/overlay/common/frameworks/base/core/res/res/xml/eri.xml
deleted file mode 100644
index cd32349..0000000
--- a/overlay/common/frameworks/base/core/res/res/xml/eri.xml
+++ /dev/null
@@ -1,1265 +0,0 @@
-<?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="1357"
-         NumberOfEriEntries="176"
-         EriFileType="1">
-
-         <CallPromptId Id="0"
-                       CallPromptText="CallPromptId0"/>
-
-         <CallPromptId Id="1"
-                       CallPromptText="CallPromptId1"/>
-
-         <CallPromptId Id="2"
-                       CallPromptText="CallPromptId2"/>
-
-         <EriInfo RoamingIndicator="64"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Preferred System"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="65"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Available System"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="66"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Alliance Partner"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="67"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Premium Partner"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="68"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Full Service Functionality"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="69"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Partial Service Functionality"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="70"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Analog A"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="71"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Analog B"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="72"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="CDMA 800 A"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="73"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="CDMA 800 B"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="74"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="75"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="76"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Campus"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="77"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="In Building"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="78"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Regional"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="79"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Community"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="80"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Business"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="81"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Zone 1"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="82"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Zone 2"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="83"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="National"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="84"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Local"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="85"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="City"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="86"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Government"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="87"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="USA"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="88"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="State"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="89"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Resort"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="90"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Headquarters"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="91"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Personal"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="92"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Home"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="93"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Residential"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="94"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="University"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="95"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="College"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="96"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Hotel Guest"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="97"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Rental"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="98"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Corporate"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="99"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Sprint"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="100"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Campus"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="101"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="In Building"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="102"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Regional"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="103"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Community"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="104"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Business"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="105"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Zone 1"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="106"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Zone 2"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="107"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="National"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="108"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Local"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="109"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="City"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="110"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Government"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="111"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="USA"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="112"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="State"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="113"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Resort"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="114"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Headquarters"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="115"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Personal"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="116"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Home"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="117"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Residential"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="118"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="University"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="119"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="College"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="120"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Hotel Guest"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="121"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Rental"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="122"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Corporate"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="123"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Sprint"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="124"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="125"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="126"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="127"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Premium Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="128"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Enhanced Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="129"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Enhanced Digital"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="130"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Enhanced Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="131"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Alliance Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="132"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Alliance Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="133"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Vision Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="134"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="135"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Expanded Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="136"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Expanded Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="137"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Premium Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="138"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Enhanced Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="139"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Enhanced Digital"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="140"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Enhanced Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="141"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Alliance Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="142"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Alliance Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="143"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Vision Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="144"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="145"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Expanded Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="146"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Expanded Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="147"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Premium Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="148"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Enhanced Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="149"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Enhanced Digital"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="150"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Enhanced Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="151"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Alliance Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="152"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Alliance Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="153"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Vision Roaming"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="154"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="155"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Expanded Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="156"
-                  IconIndex="0"
-                  IconMode="1"
-                  EriText="Expanded Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="157"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="158"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="159"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="160"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="161"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="162"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="163"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="164"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="165"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="166"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="167"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="168"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="169"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="170"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="171"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="172"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="173"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="174"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="175"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="176"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="177"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="178"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="179"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="180"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="181"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="182"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="183"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="184"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="185"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="186"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="187"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="188"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="189"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="190"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="191"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="192"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="193"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="194"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="International Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="195"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="International Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="196"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="197"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="198"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="199"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="200"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="201"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Ext Voice/Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="202"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="203"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="204"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Broadband"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="205"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="206"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="207"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="208"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="209"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="210"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Data Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="211"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="212"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Network"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="213"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="214"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="215"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Service"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="216"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="217"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="218"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="219"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="220"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="221"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice &amp; Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="222"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="223"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="224"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice Ntwk"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="225"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="226"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="227"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Extended Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="228"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="229"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="230"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International Services"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="231"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="International Voice"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="232"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="233"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="234"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Int'l Voice/Data"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="235"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText="Premium International"
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="236"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="237"
-                  IconIndex="0"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="238"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-
-         <EriInfo RoamingIndicator="239"
-                  IconIndex="1"
-                  IconMode="0"
-                  EriText=" "
-                  CallPromptId="0"
-                  AlertId="0"/>
-</EriFile>
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc202/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc202/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc202/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc204/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc204/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc204/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc206/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc206/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc206/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc208/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc208/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc208/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc214/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc214/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc214/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc216-mnc01/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc216-mnc01/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc216-mnc01/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc216-mnc70/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc216-mnc70/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc216-mnc70/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc222/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc222/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc222/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc226/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc226/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc226/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc228/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc228/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc228/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc230-mnc02/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc230-mnc02/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc230-mnc02/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc230-mnc03/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc230-mnc03/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc230-mnc03/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc01/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc01/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc01/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc02/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc02/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc02/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc06/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc06/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc231-mnc06/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc01/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc01/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc01/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc05/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc05/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc05/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc07/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc07/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc07/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc10/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc10/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc10/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc11/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc11/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc232-mnc11/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc234/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc234/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc234/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc238/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc238/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc238/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc240/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc240/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc240/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc242/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc242/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc242/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc244/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc244/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc244/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc260-mnc02/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc260-mnc02/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc260-mnc02/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc260-mnc03/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc260-mnc03/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc260-mnc03/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc02/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc02/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc02/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc03/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc03/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc03/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc07/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc07/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc262-mnc07/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc01/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc01/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc01/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc03/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc03/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc03/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc06/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc06/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc268-mnc06/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc40/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc40/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc40/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc41/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc41/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc41/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc70/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc70/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc293-mnc70/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc310-mnc010/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc310-mnc010/config.xml
deleted file mode 100644
index 24d5dda..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc310-mnc010/config.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- When true, show 1/2G networks as 3G. -->
-    <bool name="config_showMin3G">true</bool>
-</resources>
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc310-mnc120/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc310-mnc120/config.xml
deleted file mode 100644
index 24d5dda..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc310-mnc120/config.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- When true, show 1/2G networks as 3G. -->
-    <bool name="config_showMin3G">true</bool>
-</resources>
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc311-mnc490/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc311-mnc490/config.xml
deleted file mode 100644
index 24d5dda..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc311-mnc490/config.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- When true, show 1/2G networks as 3G. -->
-    <bool name="config_showMin3G">true</bool>
-</resources>
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc311-mnc870/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc311-mnc870/config.xml
deleted file mode 100644
index 24d5dda..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc311-mnc870/config.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- When true, show 1/2G networks as 3G. -->
-    <bool name="config_showMin3G">true</bool>
-</resources>
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc334-mnc020/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc334-mnc020/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc334-mnc020/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc505/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc505/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc505/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc530/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc530/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc530/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc537-mnc03/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc537-mnc03/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc537-mnc03/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc02/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc02/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc02/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc03/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc03/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc03/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc04/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc04/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc04/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc05/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc05/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc05/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc06/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc06/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc06/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc10/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc10/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc10/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc11/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc11/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc11/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc16/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc16/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc16/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc23/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc23/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc23/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc31/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc31/config.xml
deleted file mode 100644
index 2c8b820..0000000
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values-mcc724-mnc31/config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, 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.
-*/
--->
-
-<!-- These resources are around just to allow their values to be customized
-     for different hardware and product builds. -->
-<resources>
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">true</bool>
-</resources>
-
diff --git a/overlay/common/frameworks/base/packages/SystemUI/res/values/config.xml b/overlay/common/frameworks/base/packages/SystemUI/res/values/config.xml
index 4a1c756..f51e7b6 100644
--- a/overlay/common/frameworks/base/packages/SystemUI/res/values/config.xml
+++ b/overlay/common/frameworks/base/packages/SystemUI/res/values/config.xml
@@ -22,8 +22,5 @@
 <resources>
     <!-- Control whether status bar should distinguish HSPA data icon form UMTS data icon on devices -->
     <bool name="config_hspa_data_distinguishable">true</bool>
-
-    <!-- Should "4G" be shown instead of "LTE" when the network is NETWORK_TYPE_LTE? -->
-    <bool name="config_show4GForLTE">false</bool>
 </resources>
 
diff --git a/overlay/common/packages/apps/Contacts/res/values-mcc310-mnc010/donottranslate_config.xml b/overlay/common/packages/apps/Contacts/res/values-mcc310-mnc010/donottranslate_config.xml
deleted file mode 100644
index 4ddc192..0000000
--- a/overlay/common/packages/apps/Contacts/res/values-mcc310-mnc010/donottranslate_config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
--->
-
-<resources>
-    <!-- If true, enable the "import contacts from SIM" feature if the device
-         has an appropriate SIM or ICC card.
-         Setting this flag to false in a resource overlay allows you to
-         entirely disable SIM import on a per-product basis. -->
-    <bool name="config_allow_sim_import">false</bool>
-</resources>
diff --git a/overlay/common/packages/apps/Contacts/res/values-mcc310-mnc120/donottranslate_config.xml b/overlay/common/packages/apps/Contacts/res/values-mcc310-mnc120/donottranslate_config.xml
deleted file mode 100644
index 4ddc192..0000000
--- a/overlay/common/packages/apps/Contacts/res/values-mcc310-mnc120/donottranslate_config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
--->
-
-<resources>
-    <!-- If true, enable the "import contacts from SIM" feature if the device
-         has an appropriate SIM or ICC card.
-         Setting this flag to false in a resource overlay allows you to
-         entirely disable SIM import on a per-product basis. -->
-    <bool name="config_allow_sim_import">false</bool>
-</resources>
diff --git a/overlay/common/packages/apps/Contacts/res/values-mcc311-mnc490/donottranslate_config.xml b/overlay/common/packages/apps/Contacts/res/values-mcc311-mnc490/donottranslate_config.xml
deleted file mode 100644
index 4ddc192..0000000
--- a/overlay/common/packages/apps/Contacts/res/values-mcc311-mnc490/donottranslate_config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
--->
-
-<resources>
-    <!-- If true, enable the "import contacts from SIM" feature if the device
-         has an appropriate SIM or ICC card.
-         Setting this flag to false in a resource overlay allows you to
-         entirely disable SIM import on a per-product basis. -->
-    <bool name="config_allow_sim_import">false</bool>
-</resources>
diff --git a/overlay/common/packages/apps/Contacts/res/values-mcc311-mnc870/donottranslate_config.xml b/overlay/common/packages/apps/Contacts/res/values-mcc311-mnc870/donottranslate_config.xml
deleted file mode 100644
index 4ddc192..0000000
--- a/overlay/common/packages/apps/Contacts/res/values-mcc311-mnc870/donottranslate_config.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2013, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
--->
-
-<resources>
-    <!-- If true, enable the "import contacts from SIM" feature if the device
-         has an appropriate SIM or ICC card.
-         Setting this flag to false in a resource overlay allows you to
-         entirely disable SIM import on a per-product basis. -->
-    <bool name="config_allow_sim_import">false</bool>
-</resources>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc204-mnc04/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc204-mnc04/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc204-mnc04/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc01/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc01/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc01/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc10/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc10/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc10/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc15/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc15/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc15/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc20/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc20/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc20/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc26/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc26/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc208-mnc26/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc214-mnc03/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc214-mnc03/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc214-mnc03/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc214-mnc07/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc214-mnc07/mms_config.xml
deleted file mode 100644
index 3fd21d0..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc214-mnc07/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">512000</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc218-mnc05/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc218-mnc05/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc218-mnc05/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc222-mnc01/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc222-mnc01/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc222-mnc01/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc222-mnc08/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc222-mnc08/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc222-mnc08/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc238-mnc02/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc238-mnc02/mms_config.xml
deleted file mode 100644
index 207c42b..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc238-mnc02/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">2097152</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc01/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc01/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc01/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc04/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc04/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc04/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc08/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc08/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc08/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc24/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc24/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc240-mnc24/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc242-mnc01/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc242-mnc01/mms_config.xml
deleted file mode 100644
index 207c42b..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc242-mnc01/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">2097152</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc242-mnc02/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc242-mnc02/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc242-mnc02/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc262-mnc07/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc262-mnc07/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc262-mnc07/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc274-mnc02/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc274-mnc02/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc274-mnc02/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc274-mnc03/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc274-mnc03/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc274-mnc03/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc286-mnc01/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc286-mnc01/mms_config.xml
deleted file mode 100644
index 3fd21d0..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc286-mnc01/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">512000</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc286-mnc03/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc286-mnc03/mms_config.xml
deleted file mode 100644
index 3fd21d0..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc286-mnc03/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">512000</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc01/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc01/mms_config.xml
deleted file mode 100644
index 4903fe3..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc01/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">102400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc02/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc02/mms_config.xml
deleted file mode 100644
index 0004735..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc02/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">131072</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc03/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc03/mms_config.xml
deleted file mode 100644
index 3a1f27c..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc294-mnc03/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">256000</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc220/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc220/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc220/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc221/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc221/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc221/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc270/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc270/mms_config.xml
deleted file mode 100644
index fd739a6..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc270/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">819200</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc290/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc290/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc290/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc370/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc370/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc370/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc490/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc490/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc490/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc500/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc500/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc500/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc510/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc510/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc510/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc610/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc610/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc610/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc660/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc660/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc660/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc720/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc720/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc720/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc780/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc780/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc302-mnc780/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc010/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc010/mms_config.xml
deleted file mode 100644
index 3603841..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc010/mms_config.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- If true, The text message over 160 characters will be sent in multi part.
-         If false, The text message over 160 characters will be sent
-         via multi media message. -->
-    <bool name="enableMultipartSMS">false</bool>
-
-    <!-- If true, The mms support slide duration.
-         If false, The mms does not support slide duration and we have to
-         set duration value. -->
-    <bool name="enableSlideDuration">false</bool>
-
-    <!-- Maximum length for message text. Use a value of -1
-         to indicate default value -->
-    <int name="maxMessageTextSize">160</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
-
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc026/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc026/mms_config.xml
deleted file mode 100644
index 1ac6e11..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc026/mms_config.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- T-Mobile U.S. mcc=310, mnc=026 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc090/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc090/mms_config.xml
deleted file mode 100644
index 7e1e21f..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc090/mms_config.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- AT&T U.S. mcc=310, mnc=090 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc120/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc120/mms_config.xml
deleted file mode 100644
index 3603841..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc120/mms_config.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- If true, The text message over 160 characters will be sent in multi part.
-         If false, The text message over 160 characters will be sent
-         via multi media message. -->
-    <bool name="enableMultipartSMS">false</bool>
-
-    <!-- If true, The mms support slide duration.
-         If false, The mms does not support slide duration and we have to
-         set duration value. -->
-    <bool name="enableSlideDuration">false</bool>
-
-    <!-- Maximum length for message text. Use a value of -1
-         to indicate default value -->
-    <int name="maxMessageTextSize">160</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
-
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc150/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc150/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc150/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc170/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc170/mms_config.xml
deleted file mode 100644
index 53985fc..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc170/mms_config.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- T-Mobile U.S. mcc=310, mnc=170 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc260/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc260/mms_config.xml
deleted file mode 100644
index 88ac189..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc260/mms_config.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- T-Mobile U.S. mcc=310, mnc=260 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc380/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc380/mms_config.xml
deleted file mode 100644
index 9b7a06e..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc380/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
--->
-<!-- AT&T U.S. mcc=310, mnc=380 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc410/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc410/mms_config.xml
deleted file mode 100644
index a021a77..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc410/mms_config.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- AT&T U.S. mcc=310, mnc=410 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc420/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc420/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc420/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc450/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc450/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc450/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc490/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc490/mms_config.xml
deleted file mode 100644
index 928299b..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc490/mms_config.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- T-Mobile U.S. mcc=310, mnc=490 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc560/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc560/mms_config.xml
deleted file mode 100644
index 89f70ae..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc560/mms_config.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- AT&T U.S. mcc=310, mnc=560 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc770/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc770/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc770/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc980/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc980/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc980/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc180/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc180/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc180/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc370/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc370/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc370/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc490/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc490/mms_config.xml
deleted file mode 100644
index 3603841..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc490/mms_config.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- If true, The text message over 160 characters will be sent in multi part.
-         If false, The text message over 160 characters will be sent
-         via multi media message. -->
-    <bool name="enableMultipartSMS">false</bool>
-
-    <!-- If true, The mms support slide duration.
-         If false, The mms does not support slide duration and we have to
-         set duration value. -->
-    <bool name="enableSlideDuration">false</bool>
-
-    <!-- Maximum length for message text. Use a value of -1
-         to indicate default value -->
-    <int name="maxMessageTextSize">160</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
-
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc870/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc870/mms_config.xml
deleted file mode 100644
index 3603841..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc311-mnc870/mms_config.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- If true, The text message over 160 characters will be sent in multi part.
-         If false, The text message over 160 characters will be sent
-         via multi media message. -->
-    <bool name="enableMultipartSMS">false</bool>
-
-    <!-- If true, The mms support slide duration.
-         If false, The mms does not support slide duration and we have to
-         set duration value. -->
-    <bool name="enableSlideDuration">false</bool>
-
-    <!-- Maximum length for message text. Use a value of -1
-         to indicate default value -->
-    <int name="maxMessageTextSize">160</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
-
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc334-mnc020/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc334-mnc020/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc334-mnc020/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc05/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc05/mms_config.xml
deleted file mode 100644
index 4903fe3..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc05/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">102400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc20/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc20/mms_config.xml
deleted file mode 100644
index 9efee3f..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc20/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">153600</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc30/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc30/mms_config.xml
deleted file mode 100644
index 9efee3f..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc418-mnc30/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">153600</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc420-mnc04/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc420-mnc04/mms_config.xml
deleted file mode 100644
index e9ae327..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc420-mnc04/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">409600</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc440-mnc10/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc440-mnc10/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc440-mnc10/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc680/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc440-mnc20/mms_config.xml
similarity index 67%
rename from overlay/common/packages/apps/Mms/res/xml-mcc310-mnc680/mms_config.xml
rename to overlay/common/packages/apps/Mms/res/xml-mcc440-mnc20/mms_config.xml
index 766d936..60c1a48 100644
--- a/overlay/common/packages/apps/Mms/res/xml-mcc310-mnc680/mms_config.xml
+++ b/overlay/common/packages/apps/Mms/res/xml-mcc440-mnc20/mms_config.xml
@@ -14,19 +14,10 @@
      limitations under the License.
 -->
 
-<!-- AT&T U.S. mcc=310, mnc=680 -->
-
-<mms_config version="3">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
+<!-- These resources are around just to allow their values to be customized
+     for different hardware and product builds. -->
+<mms_config version="4">
+    <!-- SoftBank maintains a MMS UserAgent whitelist, we must use one of the white-listed strings to be able to send/receive -->
+    <string name="userAgent">Nexus5</string>
     <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
 </mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc00/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc00/mms_config.xml
deleted file mode 100644
index 36dac94..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc00/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc02/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc02/mms_config.xml
deleted file mode 100644
index 6187464..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc02/mms_config.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc05/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc05/mms_config.xml
deleted file mode 100644
index 6187464..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc05/mms_config.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc06/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc06/mms_config.xml
deleted file mode 100644
index 6187464..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc06/mms_config.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc08/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc08/mms_config.xml
deleted file mode 100644
index 6187464..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc450-mnc08/mms_config.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">1048576</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <bool name="enableMMSReadReports">false</bool>
-
-    <bool name="enableSMSDeliveryReports">false</bool>
-
-    <bool name="enableMMSDeliveryReports">false</bool>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc505-mnc01/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc505-mnc01/mms_config.xml
deleted file mode 100644
index 207c42b..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc505-mnc01/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">2097152</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc530-mnc05/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc530-mnc05/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc530-mnc05/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc604-mnc00/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc604-mnc00/mms_config.xml
deleted file mode 100644
index 4903fe3..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc604-mnc00/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">102400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc604-mnc02/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc604-mnc02/mms_config.xml
deleted file mode 100644
index 4903fe3..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc604-mnc02/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">102400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml-mcc647-mnc10/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml-mcc647-mnc10/mms_config.xml
deleted file mode 100644
index fcebefa..0000000
--- a/overlay/common/packages/apps/Mms/res/xml-mcc647-mnc10/mms_config.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">614400</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Mms/res/xml/mms_config.xml b/overlay/common/packages/apps/Mms/res/xml/mms_config.xml
deleted file mode 100644
index 04f4736..0000000
--- a/overlay/common/packages/apps/Mms/res/xml/mms_config.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright 2013 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.
--->
-
-<!-- Version History
-        version 1 - initial version.
-        version 2 - added recipientLimit.
-        version 3 - added min/max recycler values.
-        version 4 - added sms to mms text threshold.
--->
-
-<mms_config version="4">
-    <!-- Flag indicating whether MMS should be enabled -->
-    <bool name="enabledMMS">true</bool>
-
-    <!-- Maximum message size in bytes for a MMS message -->
-    <int name="maxMessageSize">307200</int>
-
-    <!-- Maximum height for an attached image -->
-    <int name="maxImageHeight">1944</int>
-
-    <!-- Maximum width for an attached image -->
-    <int name="maxImageWidth">2592</int>
-
-    <!-- Maximum number of SMS message to save per thread before auto-delete kicks in.
-         This is the default value. -->
-    <int name="defaultSMSMessagesPerThread">10000</int>
-
-    <!-- Maximum number of MMS message to save per thread before auto-delete kicks in.
-         This is the default value. -->
-    <int name="defaultMMSMessagesPerThread">1000</int>
-
-    <!-- Minimum value for the number of messages kept per conversation. The user can never
-         set the limit below this value. -->
-    <int name="minMessageCountPerThread">10</int>
-
-    <!-- Maximum value for the number of messages kept per conversation. The user can never
-         set the limit above this value. -->
-    <int name="maxMessageCountPerThread">5000</int>
-
-    <!-- UAProf URL -->
-    <string name="uaProfUrl">http://www.google.com/oha/rdf/ua-profile-kila.xml</string>
-
-    <!-- Maximum number of recipients allowed per message. Use a value of -1
-         to indicate no limit. -->
-    <int name="recipientLimit">-1</int>
-
-    <!-- If true, The text message over 160 characters will be sent in multi part.
-         If false, The text message over 160 characters will be sent
-         via multi media message. -->
-    <bool name="enableMultipartSMS">true</bool>
-
-    <!-- If true, the text message will be split every 160 characters.
-        If false, the text will never be split before being sent. -->
-    <bool name="enableSplitSMS">false</bool>
-
-    <!-- If enableMultipartSMS is true and smsToMmsTextThreshold > 1, then multi-part SMS messages
-         will be converted into a single mms message. For example, if the mms_config.xml file
-         specifies <int name="smsToMmsTextThreshold">7</int>, then on the 8th sms segment, the
-         message will be converted to an mms. -->
-    <int name="smsToMmsTextThreshold">-1</int>
-
-    <!-- If true, The mms support slide duration.
-         If false, The mms does not support slide duration and we have to
-         set duration value. -->
-    <bool name="enableSlideDuration">true</bool>
-
-    <!-- Maximum length for message text. Use a value of -1
-         to indicate default value -->
-    <int name="maxMessageTextSize">-1</int>
-
-</mms_config>
diff --git a/overlay/common/packages/apps/Phone b/overlay/common/packages/apps/Phone
deleted file mode 120000
index 92808b9..0000000
--- a/overlay/common/packages/apps/Phone
+++ /dev/null
@@ -1 +0,0 @@
-../services/Telephony
\ No newline at end of file
diff --git a/overlay/common/packages/services/Telephony/res/values-mcc310-mnc120/config.xml b/overlay/common/packages/services/Telephony/res/values-mcc310-mnc120/config.xml
deleted file mode 100644
index 94fa1fd..0000000
--- a/overlay/common/packages/services/Telephony/res/values-mcc310-mnc120/config.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2013 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.
--->
-
-<!-- Phone app resources that may need to be customized
-     for different hardware or product builds. -->
-<resources>
-    <!-- Determine whether calls to mute the microphone in PhoneUtils
-         are routed through the android.media.AudioManager class (true) or through
-         the com.android.internal.telephony.Phone interface (false). -->
-    <bool name="send_mic_mute_to_AudioManager">true</bool>
-    <!-- Flag indicating if the tty is enabled -->
-    <bool name="tty_enabled">true</bool>
-    <!-- Configure certain GsmUmtsOptions to be available or not. The
-         default values are in Phone/res/values/config.xml and maybe overridden
-         in operator specific resource directories or device specific overlays. -->
-    <bool name="config_apn_expand" translatable="false">false</bool>
-    <!-- Show enabled lte option for lte device -->
-    <bool name="config_enabled_lte" translatable="false">true</bool>
-    <!-- Show cdma auto network mode in (glabal) roaming -->
-    <bool name="config_show_cdma" translatable="false">true</bool>
-    <!-- CDMA activation goes through HFA [DO NOT TRANSLATE] -->
-    <bool name="config_use_hfa_for_provisioning" translatable="false">true</bool>
-    <!-- Sprint Message Wait Indicator Quirk
-         If true, message wait indicators are hidden by default on this device
-         unless the user enables it in Call Settings. This quirk is necessary
-         for the "Phantom Voicemail" issue where notifications that are
-         impossible to dismiss on the Sprint network. -->
-    <bool name="sprint_mwi_quirk">true</bool>
-</resources>
diff --git a/prebuilt/common/etc/apns-conf.xml b/prebuilt/common/etc/apns-conf.xml
index e618498..03656d8 100644
--- a/prebuilt/common/etc/apns-conf.xml
+++ b/prebuilt/common/etc/apns-conf.xml
@@ -295,7 +295,8 @@
   <apn carrier="Telenor" mcc="242" mnc="01" apn="telenor" proxy="10.10.10.10" port="8080" mmsc="http://mmsc/" mmsproxy="10.10.10.11" mmsport="8080" authenticationtype="PAP" type="default,supl,mms" />
   <apn carrier="Mobitalk" mcc="242" mnc="01" apn="telenor" user="dj" password="dj" proxy="10.10.10.10" port="8080" mmsc="http://mmsc/" mmsproxy="10.10.10.11" mmsport="8080" type="default,supl,mms" />
   <apn carrier="Talkmore" mcc="242" mnc="01" apn="telenor" type="default,supl,mms" />
-  <apn carrier="Netcom Internet" mcc="242" mnc="02" apn="internet.netcom.no" type="default,supl" />
+  <apn carrier="NetCom MMS" mcc="242" mnc="02" apn="mms.netcom.no" mmsc="http://mm/" mmsproxy="212.169.66.4" mmsport="8080" type="mms" />
+  <apn carrier="NetCom Internett" mcc="242" mnc="02" apn="wap" type="default,supl" />
   <apn carrier="Chess MMS" mcc="242" mnc="02" apn="mms.netcom.no" user="chess" password="chess" mmsc="http://mms/" mmsproxy="193.209.134.133" mmsport="8080" type="mms" />
   <apn carrier="Chess Internet" mcc="242" mnc="02" apn="netcom" user="chess" password="chess" proxy="10.254.254.10" port="8080" type="default,supl" />
   <apn carrier="Tele2 NO Internet" mcc="242" mnc="03" apn="internet.tele2.no" type="default,supl" />
@@ -574,17 +575,41 @@
   <apn carrier="Rogers LTE" mcc="302" mnc="720" apn="ltemobile.apn" mmsc="http://mms.gprs.rogers.com" mmsproxy="10.128.1.69" mmsport="80" type="default,supl,mms"/>
   <apn carrier="Sasktel 3G" mcc="302" mnc="780" apn="inet.stm.sk.ca" type="default,supl" />
   <apn carrier="Sasktel MMS" mcc="302" mnc="780" apn="proxy.stm.sk.ca" port="80" mmsc="http://mms.sasktel.com" mmsproxy="mig.sasktel.com" mmsport="80" type="mms" />
-  <apn carrier="MobiPCS" mcc="310" mnc="00" apn="MobiPCS" user="@mobipcs.com" password="mobipcs" mmsc="http://mms.mobipcs.com" authtype="3" type="*" />
+  <apn carrier="Verizon" mcc="310" mnc="00" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6"/>
+  <apn carrier="Verizon Internet" mcc="310" mnc="00" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6"/>
+  <apn carrier="Verizon FOTA" mcc="310" mnc="00" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6"/>
+  <apn carrier="Verizon IMS" mcc="310" mnc="00" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6"/>
+  <apn carrier="Verizon CBS" mcc="310" mnc="00" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6"/>
+  <apn carrier="Verizon" mcc="310" mnc="002" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="002" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="002" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="002" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="002" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="310" mnc="003" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="003" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="003" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="003" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="003" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon" mcc="310" mnc="004" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
   <apn carrier="Verizon Internet" mcc="310" mnc="004" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon FOTA" mcc="310" mnc="004" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon IMS" mcc="310" mnc="004" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon CBS" mcc="310" mnc="004" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="310" mnc="005" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="005" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="005" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="005" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="005" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon" mcc="310" mnc="006" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
   <apn carrier="Verizon Internet" mcc="310" mnc="006" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon FOTA" mcc="310" mnc="006" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon IMS" mcc="310" mnc="006" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Verizon CBS" mcc="310" mnc="006" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="310" mnc="012" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="012" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="012" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="012" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="012" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Cricket" mcc="310" mnc="16" apn="wap.mycricket.com" user="@mycricket.com" password="cricket" mmsc="http://mms.mycricket.com/servlets/mms" mmsproxy="" mmsport="" proxy="wap.mycricket.com" port="8080" authtype="2" type="*" />
   <apn carrier="Cellular South" mcc="310" mnc="023" apn="internet" mmsc="http://pix.cellularsouth.com/servlets/mms" authtype="3" port="" mmsport="" type="mms" />
   <apn carrier="metropcs" mcc="310" mnc="027" apn="wap.metropcs.net" user="MDN@mymetropcs.com" password="metropcs" server="http://mms.metropcs.net/servlets/mmsc" mmsc="http://mms.metropcs.net/mmsc" mmsport="3128" type="default,supl,mms" />
@@ -598,6 +623,11 @@
   <apn carrier="LTE INTERNET" mcc="310" mnc="090" apn="4g.mycricket.com" user="" password="" type="default,dun,mms" authtype="0" mmsc="http://mms.mycricket.com/servlets/mms" protocol="IP" roaming_protocol="IP" bearer="14"/>
   <apn carrier="LTE ADMIN" mcc="310" mnc="090" apn="Apnota.4g.mycricket.com" user="" password="" type="fota" authtype="0" mmsc="http://mms.mycricket.com/servlets/mms" protocol="IP" roaming_protocol="IP" bearer="14"/>
   <apn carrier="LTE DNSADMIN" mcc="310" mnc="090" apn="apndnsota.4g.mycricket.com" user="" password="" type="fota" authtype="0" mmsc="http://mms.mycricket.com/servlets/mms" protocol="IP" roaming_protocol="IP" bearer="14"/>
+  <apn carrier="Verizon" mcc="310" mnc="99" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="99" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="99" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="99" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="99" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="PLAT-OTA-MMS" mcc="310" mnc="100" apn="plateaumms" password="mmsc" mmsc="208.254.124.11:8514" mmsproxy="208.254.124.11" mmsport="8080" type="mms" />
   <apn carrier="PLATWEB" mcc="310" mnc="100" apn="plateauweb" type="default,supl" />
   <apn carrier="Sprint" mcc="310" mnc="120" apn="Sprint" user="Sprint" server="*" type="mms" password="*" mmsc="http://mms.sprintpcs.com" mmsproxy="68.28.31.7" mmsport="80" authtype="3"/>
@@ -639,6 +669,31 @@
   <apn carrier="MediaNet" mcc="310" mnc="470" apn="wap.cingular" user="WAP@CINGULARGPRS.COM" password="CINGULAR1" mmsc="http://mmsc.cingular.com" mmsproxy="66.209.11.32" mmsport="8080" type="default,supl,mms" />
   <apn carrier="DataConnect" mcc="310" mnc="480" apn="isp.cingular" type="default,supl" />
   <apn carrier="MediaNet" mcc="310" mnc="480" apn="wap.cingular" user="WAP@CINGULARGPRS.COM" password="CINGULAR1" mmsc="http://mmsc.cingular.com" mmsproxy="66.209.11.32" mmsport="8080" type="default,supl,mms" />
+  <apn carrier="Verizon" mcc="310" mnc="480" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="480" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="480" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="480" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="480" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="310" mnc="481" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="481" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="481" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="481" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="481" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="310" mnc="483" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="483" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="483" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="483" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="483" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="310" mnc="486" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="486" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="486" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="486" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="486" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="310" mnc="489" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="310" mnc="489" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="310" mnc="489" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="310" mnc="489" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="310" mnc="489" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="T-Mobile US 490" mcc="310" mnc="490" apn="epc.tmobile.com" user="none" password="none" server="*" mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc" type="default,supl,mms" />
   <apn carrier="GoodCall Picture Message" mcc="310" mnc="490" apn="good.call" mmsc="http://mms.suncom.net:8088/mms" mmsproxy="66.150.33.125" mmsport="8080" type="mms" />
   <apn carrier="Suncom MMS" mcc="310" mnc="490" apn="mms" mmsc="http://mms.suncom.net:8088/mms" mmsproxy="66.150.33.125" mmsport="8080" type="mms" />
@@ -673,6 +728,7 @@
   <apn carrier="EHRPD Tethering" mcc="311" mnc="230" apn="tethering.cs4glte.com" type="tethering" user="" password="" mmsc="http://pix.cspire.com/servlets/mms" mmsproxy = "66.175.144.91" mmsport = "80" protocol="IP" roaming_protocol="IP" bearer="13" />
   <apn carrier="GCI Data" mcc="311" mnc="370" apn="web.gci" type="default,supl" />
   <apn carrier="GCI MMS" mcc="311" mnc="370" apn="mms.gci" mmsproxy="209.4.229.92" mmsport="9201" mmsc="http://mmsc.gci.csky.us:6672" type="mms" />
+  <apn carrier="Verizon" mcc="311" mnc="480" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
   <apn carrier="LTE - Verizon Internet" mcc="311" mnc="480" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" bearer="14" />
   <apn carrier="LTE - Verizon FOTA" mcc="311" mnc="480" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" bearer="14" />
   <apn carrier="LTE - Verizon IMS" mcc="311" mnc="480" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" bearer="14" />
@@ -683,6 +739,16 @@
   <apn carrier="EHRPD - Verizon IMS" mcc="311" mnc="480" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" bearer="13" />
   <apn carrier="EHRPD - Verizon CBS" mcc="311" mnc="480" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" bearer="13" />
   <apn carrier="EHRPD - Verizon SUPL" mcc="311" mnc="480" apn="VZW800" type="supl" protocol="IPV4V6" bearer="13" />
+  <apn carrier="Verizon" mcc="311" mnc="482" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="311" mnc="482" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="311" mnc="482" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="311" mnc="482" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="311" mnc="482" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon" mcc="311" mnc="485" apn="internet" type="default,mms,dun" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" />
+  <apn carrier="Verizon Internet" mcc="311" mnc="485" apn="VZWINTERNET" type="default,dun" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon FOTA" mcc="311" mnc="485" apn="VZWADMIN" type="fota" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon IMS" mcc="311" mnc="485" apn="VZWIMS" type="ims" protocol="IPV4V6" roaming_protocol="IPV4V6" />
+  <apn carrier="Verizon CBS" mcc="311" mnc="485" apn="VZWAPP" type="cbs,mms" mmsc="http://mms.vtext.com/servlets/mms" protocol="IPV4V6" roaming_protocol="IPV4V6" />
   <apn carrier="Virgin Mobile US" mcc="311" mnc="490" apn="0" mmsproxy="205.239.233.136" mmsport="81" mmsc="http://mmsc.vmobl.com:8088/mms?" port="" type="mms" />
   <apn carrier="Virgin Mobile CdmaNai" mcc="311" mnc="490" apn="CdmaNai" mmsproxy="68.28.31.2" mmsport="80" mmsc="http://mmsc.vmobl.com:8088" type="mms" carrier_enabled="false" protocol="IPV4V6" roaming_protocol="IPV4V6" bearer="6" />
   <apn carrier="LTE - USCC INTERNET" mcc="311" mnc="580" apn="usccinternet" type="default,dun,mms,fota" mmsc="http://mmsc1.uscc.net/mmsc/MMS" protocol="IPV4V6" roaming_protocol="IPV4V6" bearer="14" />
@@ -1158,7 +1224,7 @@
   <apn carrier="au LTE NET for DATA" mcc="440" mnc="50" apn="au.au-net.ne.jp" user="user@au.au-net.ne.jp" password="au" authtype="2" type="default,mms,supl,hipri" state="readonly" protocol="IPV4V6" roaming_protocol="IP" />
   <apn carrier="SKT3G" mcc="450" mnc="05" apn="web.sktelecom.com" mmsc="http://omms.nate.com:9082/oma_mms" mmsproxy="smart.nate.com" mmsport="9093" type="default,supl,mms" />
   <apn carrier="SK Telecom (Roaming)" mcc="450" mnc="05" apn="roaming.sktelecom.com" server="*" mmsc="vmms.nate.com" mmsport="8082" type="default,supl,mms" />
-  <apn carrier="SKT LTE" mcc="450" mnc="05" apn="lte.sktelecom.com" mmsc="http//omms.nate.com:9082/oma_mms" mmsproxy="smart.nate.com" mmsport="9093" type="defaul,supl,mms" />
+  <apn carrier="SKT LTE" mcc="450" mnc="05" apn="lte.sktelecom.com" mmsc="http//omms.nate.com:9082/oma_mms" mmsproxy="smart.nate.com" mmsport="9093" type="default,supl,mms" />
   <apn carrier="KT-HSDPA" mcc="450" mnc="08" apn="alwayson-r6.ktfwing.com" mmsc="http://mmsc.ktfwing.com:9082" type="default,supl,mms" />
   <apn carrier="KT-LTE" mcc="450" mnc="08" apn="lte.ktfwing.com" mmsc="http://mmsc.ktfwing.com:9082" type="default,supl,mms"/>
   <apn carrier="Mobifone MMS" mcc="452" mnc="01" apn="m-i090" user="wap" password="wap" mmsc="http://203.162.21.114/mmsc" mmsproxy="203.162.21.114" mmsport="8000" type="mms" />
@@ -1460,7 +1526,7 @@
   <apn carrier="Cable and Wireless Panama MMS" mcc="714" mnc="01" apn="apn02.cwpanama.com.pa" mmsc="http://mms.zonamovil.com.pa:80/i.bin" mmsproxy="172.25.3.5" mmsport="8080" type="mms" />
   <apn carrier="Movistar AG" mcc="722" mnc="007" apn="internet.unifon" user="wap" password="password" type="default,supl" />
   <apn carrier="Movistar AG MMS" mcc="722" mnc="007" apn="mms.gprs.unifon.com.ar" user="mms" password="mms" mmsc="http://mms.tmovil.cl/" mmsproxy="200.068.032.239" mmsport="9201" type="mms" />
-  <apn carrier="Movistar AR" mcc="722" mnc="07" apn="wap.gprs.unifon.com.ar" proxy="200.5.86.10" port="80" user="wap" password="wap" authenticationtype="PAP" type="defaul,supl" />
+  <apn carrier="Movistar AR" mcc="722" mnc="07" apn="wap.gprs.unifon.com.ar" proxy="200.5.68.10" port="8080" user="wap" password="wap" authenticationtype="PAP" type="default,supl,dun" />
   <apn carrier="Movistar AR MMS" mcc="722" mnc="07" apn="mms.gprs.unifon.com.ar" user="mms" password="mms" mmsc="http://movistar.com.ar" mmsproxy="200.68.32.239" mmsport="8080" authenticationtype="PAP" type="mms" />
   <apn carrier="Personal" mcc="722" mnc="34" apn="datos.personal.com" user="datos" password="datos" type="default,supl" />
   <apn carrier="Personal MMS" mcc="722" mnc="34" apn="mms" user="mms" password="mms" mmsc="http://mms.personal.com/" mmsproxy="172.025.007.031" mmsport="9201" type="mms" />
diff --git a/prebuilt/common/etc/init.d/50selinuxrelabel b/prebuilt/common/etc/init.d/50selinuxrelabel
deleted file mode 100644
index dfa576d..0000000
--- a/prebuilt/common/etc/init.d/50selinuxrelabel
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/system/bin/sh
-
-L="log -p i -t SELinuxLabel"
-
-# Bail out early if not on a SELinux build
-getprop ro.build.selinux | grep -q 1 || exit
-if [ ! -f /file_contexts ]; then
-  exit
-fi
-
-LABELDATA=0
-LABELDALVIKCACHE=0
-
-# Test /data
-ls -Zd /data/system | grep -q unlabeled
-if [ $? -eq 0 ]; then
-  $L "userdata is unlabeled, fixing..."
-  LABELDATA=1
-fi
-
-# Double-check other files under /data
-ls -Z /data/misc/wifi/wpa_supplicant.conf | grep -q "wifi_"
-if [ $? -eq 1 ]; then
-  $L "data is mis-labeled, fixing..."
-  LABELDATA=1
-fi
-
-ls -Zd /data/dalvik-cache | grep -q unlabeled
-if [ $? -eq 0 ]; then
-  $L "dalvik-cache is unlabeled, fixing..."
-  LABELDALVIKCACHE=1
-fi
-
-ls -Zd /cache/dalvik-cache | grep -q unlabeled
-if [ $? -eq 0 ]; then
-  $L "dalvik-cache is unlabeled, fixing..."
-  LABELDALVIKCACHE=1
-fi
-
-
-if [ $LABELDATA = "1" ]; then
-  $L "/data relabel starting..."
-  restorecon -R /data
-  $L "/data relabel complete"
-  $L "/cache relabel starting..."
-  restorecon -R /cache
-  $L "/cache relabel complete"
-fi
-
-if [ $LABELDALVIKCACHE = "1" ]; then
-  $L "dalvik-cache relabel starting..."
-  restorecon -R /data/dalvik-cache
-  restorecon -R /cache/dalvik-cache
-  $L "dalvik-cache relabel complete"
-fi
diff --git a/prebuilt/common/media/audio/ringtones/Sheep.mp3 b/prebuilt/common/media/audio/ringtones/Sheep.mp3
new file mode 100644
index 0000000..f3f84a9
--- /dev/null
+++ b/prebuilt/common/media/audio/ringtones/Sheep.mp3
Binary files differ
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
index 65e21c9..78b3ee1 100644
--- a/sepolicy/file_contexts
+++ b/sepolicy/file_contexts
@@ -3,6 +3,6 @@
 #############################
 # performance-related sysfs files (CM)
 /sys/kernel/mm/ksm(/.*)?       --          u:object_r:sysfs_writable:s0
-/sys/devices/system/cpu.*/cpufreq(/.*)? --  u:object_r:sysfs_writable:s0
+/sys/devices/system/cpu.*/cpufreq(/.*)? --  u:object_r:sysfs_devices_system_cpu:s0
 /sys/block/mmcblk0/queue/scheduler  --    u:object_r:sysfs_writable:s0
 
diff --git a/sepolicy/sepolicy.mk b/sepolicy/sepolicy.mk
index 16a0e79..0508bf6 100644
--- a/sepolicy/sepolicy.mk
+++ b/sepolicy/sepolicy.mk
@@ -11,7 +11,8 @@
     file_contexts \
     fs_use \
     genfs_contexts \
-    installd.te \
     seapp_contexts \
+    installd.te \
+    ueventd.te \
     vold.te \
     mac_permissions.xml
diff --git a/sepolicy/ueventd.te b/sepolicy/ueventd.te
new file mode 100644
index 0000000..396e266
--- /dev/null
+++ b/sepolicy/ueventd.te
@@ -0,0 +1,13 @@
+# ueventd needs to relabel files that pop in and out of sysfs
+allow ueventd sysfs:file relabelfrom;
+
+# ueventd will set permissions on cpufreq nodes
+allow ueventd sysfs_devices_system_cpu:file setattr;
+
+# ueventd loads wifi firmware on a ton of devices
+allow ueventd wifi_data_file:dir r_dir_perms;
+allow ueventd wifi_data_file:file r_file_perms;
+
+# ueventd loads audio firmware on many devices
+allow ueventd audio_data_file:dir r_dir_perms;
+allow ueventd audio_data_file:file r_file_perms;
