diff --git a/res/values-af/clock_colors.xml b/res/values-af/clock_colors.xml
deleted file mode 100644
index f4e0fef..0000000
--- a/res/values-af/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROOI"</item>
-    <item msgid="6882970855289978213">"ORANJE"</item>
-    <item msgid="5560732545714984533">"GEEL"</item>
-    <item msgid="7246284817845434226">"GROEN"</item>
-    <item msgid="6762906417604676001">"BLOU"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOOLTJIEPERS"</item>
-    <item msgid="6835537356703747621">"GRYS"</item>
-    <item msgid="2470141365136884119">"BLOUGROEN"</item>
-  </string-array>
-</resources>
diff --git a/res/values-am/clock_colors.xml b/res/values-am/clock_colors.xml
deleted file mode 100644
index 3da51af..0000000
--- a/res/values-am/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ቀይ"</item>
-    <item msgid="6882970855289978213">"ብርቱካናማ"</item>
-    <item msgid="5560732545714984533">"ቢጫ"</item>
-    <item msgid="7246284817845434226">"አረንጓዴ"</item>
-    <item msgid="6762906417604676001">"ሰማያዊ"</item>
-    <item msgid="8974135109557664892">"ሐምራዊ"</item>
-    <item msgid="786643557830463422">"ወይን ጠጅ"</item>
-    <item msgid="6835537356703747621">"ግራጫ"</item>
-    <item msgid="2470141365136884119">"ደማቅ አረንጓዴ-ሰማያዊ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ar/clock_colors.xml b/res/values-ar/clock_colors.xml
deleted file mode 100644
index 51bc5fe..0000000
--- a/res/values-ar/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"أحمر"</item>
-    <item msgid="6882970855289978213">"برتقالي"</item>
-    <item msgid="5560732545714984533">"أصفر"</item>
-    <item msgid="7246284817845434226">"أخضر"</item>
-    <item msgid="6762906417604676001">"أزرق"</item>
-    <item msgid="8974135109557664892">"نيلي"</item>
-    <item msgid="786643557830463422">"بنفسجي"</item>
-    <item msgid="6835537356703747621">"رمادي"</item>
-    <item msgid="2470141365136884119">"أزرق مخضرّ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-as/clock_colors.xml b/res/values-as/clock_colors.xml
deleted file mode 100644
index 74e0aaf..0000000
--- a/res/values-as/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ৰঙা"</item>
-    <item msgid="6882970855289978213">"কমলা"</item>
-    <item msgid="5560732545714984533">"হালধীয়া"</item>
-    <item msgid="7246284817845434226">"সেউজীয়া"</item>
-    <item msgid="6762906417604676001">"নীলা"</item>
-    <item msgid="8974135109557664892">"ইণ্ডিগ’"</item>
-    <item msgid="786643557830463422">"বেঙুনীয়া"</item>
-    <item msgid="6835537356703747621">"ধোঁৱাবৰণীয়া"</item>
-    <item msgid="2470141365136884119">"গাঢ় সেউজ-নীলা"</item>
-  </string-array>
-</resources>
diff --git a/res/values-az/clock_colors.xml b/res/values-az/clock_colors.xml
deleted file mode 100644
index 6cea40b..0000000
--- a/res/values-az/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"QIRMIZI"</item>
-    <item msgid="6882970855289978213">"NARINCI"</item>
-    <item msgid="5560732545714984533">"SARI"</item>
-    <item msgid="7246284817845434226">"YAŞIL"</item>
-    <item msgid="6762906417604676001">"MAVİ"</item>
-    <item msgid="8974135109557664892">"TÜND-GÖY"</item>
-    <item msgid="786643557830463422">"BƏNÖVŞƏYİ"</item>
-    <item msgid="6835537356703747621">"BOZ"</item>
-    <item msgid="2470141365136884119">"YAŞILIMTIL MAVİ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-b+sr+Latn/clock_colors.xml b/res/values-b+sr+Latn/clock_colors.xml
deleted file mode 100644
index c30c8c2..0000000
--- a/res/values-b+sr+Latn/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"CRVENA"</item>
-    <item msgid="6882970855289978213">"NARANDŽASTA"</item>
-    <item msgid="5560732545714984533">"ŽUTA"</item>
-    <item msgid="7246284817845434226">"ZELENA"</item>
-    <item msgid="6762906417604676001">"PLAVA"</item>
-    <item msgid="8974135109557664892">"TAMNOPLAVA"</item>
-    <item msgid="786643557830463422">"LJUBIČASTA"</item>
-    <item msgid="6835537356703747621">"SIVA"</item>
-    <item msgid="2470141365136884119">"TIRKIZNA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-be/clock_colors.xml b/res/values-be/clock_colors.xml
deleted file mode 100644
index d9a4bcc..0000000
--- a/res/values-be/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ЧЫРВОНЫ"</item>
-    <item msgid="6882970855289978213">"АРАНЖАВЫ"</item>
-    <item msgid="5560732545714984533">"ЖОЎТЫ"</item>
-    <item msgid="7246284817845434226">"ЗЯЛЁНЫ"</item>
-    <item msgid="6762906417604676001">"СІНІ"</item>
-    <item msgid="8974135109557664892">"ІНДЫГА"</item>
-    <item msgid="786643557830463422">"ФІЯЛЕТАВЫ"</item>
-    <item msgid="6835537356703747621">"ШЭРЫ"</item>
-    <item msgid="2470141365136884119">"СІНЕ-ЗЯЛЁНЫ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-bg/clock_colors.xml b/res/values-bg/clock_colors.xml
deleted file mode 100644
index 058b54d..0000000
--- a/res/values-bg/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ЧЕРВЕНО"</item>
-    <item msgid="6882970855289978213">"ОРАНЖЕВО"</item>
-    <item msgid="5560732545714984533">"ЖЪЛТО"</item>
-    <item msgid="7246284817845434226">"ЗЕЛЕНО"</item>
-    <item msgid="6762906417604676001">"СИНЬО"</item>
-    <item msgid="8974135109557664892">"ИНДИГО"</item>
-    <item msgid="786643557830463422">"ВИОЛЕТОВО"</item>
-    <item msgid="6835537356703747621">"СИВО"</item>
-    <item msgid="2470141365136884119">"СИНЬО-ЗЕЛЕНО"</item>
-  </string-array>
-</resources>
diff --git a/res/values-bn/clock_colors.xml b/res/values-bn/clock_colors.xml
deleted file mode 100644
index cd433fa..0000000
--- a/res/values-bn/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"লাল"</item>
-    <item msgid="6882970855289978213">"কমলা"</item>
-    <item msgid="5560732545714984533">"হলুদ"</item>
-    <item msgid="7246284817845434226">"সবুজ"</item>
-    <item msgid="6762906417604676001">"নীল"</item>
-    <item msgid="8974135109557664892">"নীলচে বেগুনি"</item>
-    <item msgid="786643557830463422">"বেগুনি"</item>
-    <item msgid="6835537356703747621">"ধূসর"</item>
-    <item msgid="2470141365136884119">"নীলচে সবুজ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-bs/clock_colors.xml b/res/values-bs/clock_colors.xml
deleted file mode 100644
index 0e7f923..0000000
--- a/res/values-bs/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"CRVENA"</item>
-    <item msgid="6882970855289978213">"NARANDŽASTA"</item>
-    <item msgid="5560732545714984533">"ŽUTA"</item>
-    <item msgid="7246284817845434226">"ZELENA"</item>
-    <item msgid="6762906417604676001">"PLAVA"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"LJUBIČASTA"</item>
-    <item msgid="6835537356703747621">"SIVA"</item>
-    <item msgid="2470141365136884119">"TIRKIZNA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ca/clock_colors.xml b/res/values-ca/clock_colors.xml
deleted file mode 100644
index c44a460..0000000
--- a/res/values-ca/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"VERMELL"</item>
-    <item msgid="6882970855289978213">"TARONJA"</item>
-    <item msgid="5560732545714984533">"GROC"</item>
-    <item msgid="7246284817845434226">"VERD"</item>
-    <item msgid="6762906417604676001">"BLAU"</item>
-    <item msgid="8974135109557664892">"ANYIL"</item>
-    <item msgid="786643557830463422">"VIOLETA"</item>
-    <item msgid="6835537356703747621">"GRIS"</item>
-    <item msgid="2470141365136884119">"VERD BLAVÓS"</item>
-  </string-array>
-</resources>
diff --git a/res/values-cs/clock_colors.xml b/res/values-cs/clock_colors.xml
deleted file mode 100644
index 9406e46..0000000
--- a/res/values-cs/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ČERVENÁ"</item>
-    <item msgid="6882970855289978213">"ORANŽOVÁ"</item>
-    <item msgid="5560732545714984533">"ŽLUTÁ"</item>
-    <item msgid="7246284817845434226">"ZELENÁ"</item>
-    <item msgid="6762906417604676001">"MODRÁ"</item>
-    <item msgid="8974135109557664892">"INDIGOVÁ"</item>
-    <item msgid="786643557830463422">"FIALOVÁ"</item>
-    <item msgid="6835537356703747621">"ŠEDÁ"</item>
-    <item msgid="2470141365136884119">"ŠEDOZELENÁ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-da/clock_colors.xml b/res/values-da/clock_colors.xml
deleted file mode 100644
index 6dcbb4d..0000000
--- a/res/values-da/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RØD"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"GUL"</item>
-    <item msgid="7246284817845434226">"GRØN"</item>
-    <item msgid="6762906417604676001">"BLÅ"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GRÅ"</item>
-    <item msgid="2470141365136884119">"GRØNBLÅ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-de/clock_colors.xml b/res/values-de/clock_colors.xml
deleted file mode 100644
index 170bf96..0000000
--- a/res/values-de/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROT"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"GELB"</item>
-    <item msgid="7246284817845434226">"GRÜN"</item>
-    <item msgid="6762906417604676001">"BLAU"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETT"</item>
-    <item msgid="6835537356703747621">"GRAU"</item>
-    <item msgid="2470141365136884119">"BLAUGRÜN"</item>
-  </string-array>
-</resources>
diff --git a/res/values-el/clock_colors.xml b/res/values-el/clock_colors.xml
deleted file mode 100644
index 9c0394f..0000000
--- a/res/values-el/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ΚΟΚΚΙΝΟ"</item>
-    <item msgid="6882970855289978213">"ΠΟΡΤΟΚΑΛΙ"</item>
-    <item msgid="5560732545714984533">"ΚΙΤΡΙΝΟ"</item>
-    <item msgid="7246284817845434226">"ΠΡΑΣΙΝΟ"</item>
-    <item msgid="6762906417604676001">"ΜΠΛΕ"</item>
-    <item msgid="8974135109557664892">"ΛΟΥΛΑΚΙ"</item>
-    <item msgid="786643557830463422">"ΒΙΟΛΕΤΙ"</item>
-    <item msgid="6835537356703747621">"ΓΚΡΙ"</item>
-    <item msgid="2470141365136884119">"ΓΑΛΑΖΟΠΡΑΣΙΝΟ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-en-rAU/clock_colors.xml b/res/values-en-rAU/clock_colors.xml
deleted file mode 100644
index 31e40f5..0000000
--- a/res/values-en-rAU/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RED"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"YELLOW"</item>
-    <item msgid="7246284817845434226">"GREEN"</item>
-    <item msgid="6762906417604676001">"BLUE"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GREY"</item>
-    <item msgid="2470141365136884119">"TEAL"</item>
-  </string-array>
-</resources>
diff --git a/res/values-en-rGB/clock_colors.xml b/res/values-en-rGB/clock_colors.xml
deleted file mode 100644
index 31e40f5..0000000
--- a/res/values-en-rGB/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RED"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"YELLOW"</item>
-    <item msgid="7246284817845434226">"GREEN"</item>
-    <item msgid="6762906417604676001">"BLUE"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GREY"</item>
-    <item msgid="2470141365136884119">"TEAL"</item>
-  </string-array>
-</resources>
diff --git a/res/values-en-rIN/clock_colors.xml b/res/values-en-rIN/clock_colors.xml
deleted file mode 100644
index 31e40f5..0000000
--- a/res/values-en-rIN/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RED"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"YELLOW"</item>
-    <item msgid="7246284817845434226">"GREEN"</item>
-    <item msgid="6762906417604676001">"BLUE"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GREY"</item>
-    <item msgid="2470141365136884119">"TEAL"</item>
-  </string-array>
-</resources>
diff --git a/res/values-en-rXC/clock_colors.xml b/res/values-en-rXC/clock_colors.xml
deleted file mode 100644
index a06793b..0000000
--- a/res/values-en-rXC/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‎‏‎‎‏‎‏‎‏‎‏‏‎‏‎‏‎‏‎‏‏‎‎‏‏‎‎‏‎‏‏‏‎‏‎‎‎‎‎‎‏‎‏‎‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‎RED‎‏‎‎‏‎"</item>
-    <item msgid="6882970855289978213">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‏‏‏‏‏‏‎‎‎‎‏‎‏‎‎‏‏‏‎‎‏‏‎‎‎‎‏‏‎‎‏‏‏‏‏‎‎‏‏‏‎‏‏‎‎‏‏‏‏‏‏‎‏‎‏‏‎‎‏‎‏‎ORANGE‎‏‎‎‏‎"</item>
-    <item msgid="5560732545714984533">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‏‎‏‎‏‏‏‎‏‏‎‎‎‎‏‏‎‎‏‎‎‏‏‏‎‎‏‏‏‎‎‏‎‎‏‎‏‏‏‎‎‏‎‏‏‎‎‏‎‏‎‏‎‏‎YELLOW‎‏‎‎‏‎"</item>
-    <item msgid="7246284817845434226">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‏‎‎‎‏‏‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‏‏‎‎‎‏‏‏‏‎‎‏‏‏‏‏‎‏‏‏‎‏‏‎‏‏‏‎‏‏‏‎‎‏‎‎GREEN‎‏‎‎‏‎"</item>
-    <item msgid="6762906417604676001">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‏‏‏‎‏‏‏‎‏‏‎‏‎‏‎‏‎‏‎‏‏‏‎‎‎‏‏‏‎‎‎‏‎‏‏‏‎‏‎‎‎‏‎‎‏‎‏‎‎‏‎‎‏‏‎‏‎‎‎‎‏‎BLUE‎‏‎‎‏‎"</item>
-    <item msgid="8974135109557664892">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‎‏‎‏‎‏‎‎‎‏‎‎‎‎‏‎‏‎‏‎‏‏‏‎‎‏‎‏‏‏‎‎‎‏‎‏‏‏‎‏‏‏‏‎‎‎‏‏‏‏‏‎‎‎INDIGO‎‏‎‎‏‎"</item>
-    <item msgid="786643557830463422">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‎‎‏‎‏‎‏‏‏‎‏‎‏‎‏‎‏‏‏‎‎‎‎‎‏‎‎‏‎‏‏‏‏‎‎‏‎‏‎‏‎‏‎‏‎‏‏‎‎‎‏‏‏‏‏‎‏‏‏‏‏‎‎VIOLET‎‏‎‎‏‎"</item>
-    <item msgid="6835537356703747621">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‏‏‏‏‎‏‏‎‏‏‏‎‎‏‎‏‏‎‏‎‏‎‎‎‎‎‎‏‎‎‏‏‏‏‎‏‏‎‎‏‏‏‏‎‏‎‏‎‎‏‏‏‎‎‎‏‎‎‏‎‏‎GRAY‎‏‎‎‏‎"</item>
-    <item msgid="2470141365136884119">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‎‎‏‎‎‏‎‎‎‏‏‏‏‎‏‏‎‏‎‎‎‏‏‏‏‎‏‏‏‏‏‏‎‏‎‏‏‏‏‏‏‎‏‏‏‎‎‎‎‎‎‏‏‎‎‏‎‏‏‏‎TEAL‎‏‎‎‏‎"</item>
-  </string-array>
-</resources>
diff --git a/res/values-es-rUS/clock_colors.xml b/res/values-es-rUS/clock_colors.xml
deleted file mode 100644
index 6caf3b8..0000000
--- a/res/values-es-rUS/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROJO"</item>
-    <item msgid="6882970855289978213">"NARANJA"</item>
-    <item msgid="5560732545714984533">"AMARILLO"</item>
-    <item msgid="7246284817845434226">"VERDE"</item>
-    <item msgid="6762906417604676001">"AZUL"</item>
-    <item msgid="8974135109557664892">"ÍNDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETA"</item>
-    <item msgid="6835537356703747621">"GRIS"</item>
-    <item msgid="2470141365136884119">"VERDE AZULADO"</item>
-  </string-array>
-</resources>
diff --git a/res/values-es/clock_colors.xml b/res/values-es/clock_colors.xml
deleted file mode 100644
index b8607fb..0000000
--- a/res/values-es/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROJO"</item>
-    <item msgid="6882970855289978213">"NARANJA"</item>
-    <item msgid="5560732545714984533">"AMARILLO"</item>
-    <item msgid="7246284817845434226">"VERDE"</item>
-    <item msgid="6762906417604676001">"AZUL"</item>
-    <item msgid="8974135109557664892">"ÍNDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETA"</item>
-    <item msgid="6835537356703747621">"GRIS"</item>
-    <item msgid="2470141365136884119">"TURQUESA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-et/clock_colors.xml b/res/values-et/clock_colors.xml
deleted file mode 100644
index 7d73aa2..0000000
--- a/res/values-et/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"PUNANE"</item>
-    <item msgid="6882970855289978213">"ORANŽ"</item>
-    <item msgid="5560732545714984533">"KOLLANE"</item>
-    <item msgid="7246284817845434226">"ROHELINE"</item>
-    <item msgid="6762906417604676001">"SININE"</item>
-    <item msgid="8974135109557664892">"INDIGOSININE"</item>
-    <item msgid="786643557830463422">"VIOLETNE"</item>
-    <item msgid="6835537356703747621">"HALL"</item>
-    <item msgid="2470141365136884119">"SINAKASROHELINE"</item>
-  </string-array>
-</resources>
diff --git a/res/values-eu/clock_colors.xml b/res/values-eu/clock_colors.xml
deleted file mode 100644
index 453cb8e..0000000
--- a/res/values-eu/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"GORRIA"</item>
-    <item msgid="6882970855289978213">"LARANJA"</item>
-    <item msgid="5560732545714984533">"HORIA"</item>
-    <item msgid="7246284817845434226">"BERDEA"</item>
-    <item msgid="6762906417604676001">"URDINA"</item>
-    <item msgid="8974135109557664892">"INDIGOA"</item>
-    <item msgid="786643557830463422">"BIOLETA"</item>
-    <item msgid="6835537356703747621">"GRISA"</item>
-    <item msgid="2470141365136884119">"ANILA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-fa/clock_colors.xml b/res/values-fa/clock_colors.xml
deleted file mode 100644
index e890d08..0000000
--- a/res/values-fa/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"قرمز"</item>
-    <item msgid="6882970855289978213">"نارنجی"</item>
-    <item msgid="5560732545714984533">"زرد"</item>
-    <item msgid="7246284817845434226">"سبز"</item>
-    <item msgid="6762906417604676001">"آبی"</item>
-    <item msgid="8974135109557664892">"نیلی"</item>
-    <item msgid="786643557830463422">"یاسی"</item>
-    <item msgid="6835537356703747621">"خاکستری"</item>
-    <item msgid="2470141365136884119">"سبز دودی"</item>
-  </string-array>
-</resources>
diff --git a/res/values-fi/clock_colors.xml b/res/values-fi/clock_colors.xml
deleted file mode 100644
index 4da60ae..0000000
--- a/res/values-fi/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"PUNAINEN"</item>
-    <item msgid="6882970855289978213">"ORANSSI"</item>
-    <item msgid="5560732545714984533">"KELTAINEN"</item>
-    <item msgid="7246284817845434226">"VIHREÄ"</item>
-    <item msgid="6762906417604676001">"SININEN"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETTI"</item>
-    <item msgid="6835537356703747621">"HARMAA"</item>
-    <item msgid="2470141365136884119">"TURKOOSI"</item>
-  </string-array>
-</resources>
diff --git a/res/values-fr-rCA/clock_colors.xml b/res/values-fr-rCA/clock_colors.xml
deleted file mode 100644
index a02729a..0000000
--- a/res/values-fr-rCA/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROUGE"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"JAUNE"</item>
-    <item msgid="7246284817845434226">"VERT"</item>
-    <item msgid="6762906417604676001">"BLEU"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GRIS"</item>
-    <item msgid="2470141365136884119">"BLEU SARCELLE"</item>
-  </string-array>
-</resources>
diff --git a/res/values-fr/clock_colors.xml b/res/values-fr/clock_colors.xml
deleted file mode 100644
index 6daf394..0000000
--- a/res/values-fr/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROUGE"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"JAUNE"</item>
-    <item msgid="7246284817845434226">"VERT"</item>
-    <item msgid="6762906417604676001">"BLEU"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"MAUVE"</item>
-    <item msgid="6835537356703747621">"GRIS"</item>
-    <item msgid="2470141365136884119">"TURQUOISE"</item>
-  </string-array>
-</resources>
diff --git a/res/values-gl/clock_colors.xml b/res/values-gl/clock_colors.xml
deleted file mode 100644
index 5d9da17..0000000
--- a/res/values-gl/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"VERMELLO"</item>
-    <item msgid="6882970855289978213">"LARANXA"</item>
-    <item msgid="5560732545714984533">"AMARELO"</item>
-    <item msgid="7246284817845434226">"VERDE"</item>
-    <item msgid="6762906417604676001">"AZUL"</item>
-    <item msgid="8974135109557664892">"ÍNDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETA"</item>
-    <item msgid="6835537356703747621">"GRIS"</item>
-    <item msgid="2470141365136884119">"VERDE AZULADO"</item>
-  </string-array>
-</resources>
diff --git a/res/values-gu/clock_colors.xml b/res/values-gu/clock_colors.xml
deleted file mode 100644
index 0818083..0000000
--- a/res/values-gu/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"લાલ"</item>
-    <item msgid="6882970855289978213">"નારંગી"</item>
-    <item msgid="5560732545714984533">"પીળો"</item>
-    <item msgid="7246284817845434226">"લીલો"</item>
-    <item msgid="6762906417604676001">"વાદળી"</item>
-    <item msgid="8974135109557664892">"ઘેરો વાદળી રંગ"</item>
-    <item msgid="786643557830463422">"જાંબલી"</item>
-    <item msgid="6835537356703747621">"રાખોડી"</item>
-    <item msgid="2470141365136884119">"ટીલ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-hi/clock_colors.xml b/res/values-hi/clock_colors.xml
deleted file mode 100644
index e613f33..0000000
--- a/res/values-hi/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"लाल"</item>
-    <item msgid="6882970855289978213">"नारंगी"</item>
-    <item msgid="5560732545714984533">"पीला"</item>
-    <item msgid="7246284817845434226">"हरा"</item>
-    <item msgid="6762906417604676001">"नीला"</item>
-    <item msgid="8974135109557664892">"इंडिगो"</item>
-    <item msgid="786643557830463422">"बैंगनी"</item>
-    <item msgid="6835537356703747621">"स्लेटी"</item>
-    <item msgid="2470141365136884119">"टील"</item>
-  </string-array>
-</resources>
diff --git a/res/values-hr/clock_colors.xml b/res/values-hr/clock_colors.xml
deleted file mode 100644
index de6b751..0000000
--- a/res/values-hr/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"CRVENA"</item>
-    <item msgid="6882970855289978213">"NARANČASTA"</item>
-    <item msgid="5560732545714984533">"ŽUTA"</item>
-    <item msgid="7246284817845434226">"ZELENA"</item>
-    <item msgid="6762906417604676001">"PLAVA"</item>
-    <item msgid="8974135109557664892">"MODROLJUBIČASTA"</item>
-    <item msgid="786643557830463422">"LJUBIČASTA"</item>
-    <item msgid="6835537356703747621">"SIVA"</item>
-    <item msgid="2470141365136884119">"TIRKIZNOPLAVA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-hu/clock_colors.xml b/res/values-hu/clock_colors.xml
deleted file mode 100644
index cc869be..0000000
--- a/res/values-hu/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"PIROS"</item>
-    <item msgid="6882970855289978213">"NARANCSSÁRGA"</item>
-    <item msgid="5560732545714984533">"SÁRGA"</item>
-    <item msgid="7246284817845434226">"ZÖLD"</item>
-    <item msgid="6762906417604676001">"KÉK"</item>
-    <item msgid="8974135109557664892">"INDIGÓKÉK"</item>
-    <item msgid="786643557830463422">"IBOLYAKÉK"</item>
-    <item msgid="6835537356703747621">"SZÜRKE"</item>
-    <item msgid="2470141365136884119">"PÁVAKÉK"</item>
-  </string-array>
-</resources>
diff --git a/res/values-hy/clock_colors.xml b/res/values-hy/clock_colors.xml
deleted file mode 100644
index 15366a7..0000000
--- a/res/values-hy/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ԿԱՐՄԻՐ"</item>
-    <item msgid="6882970855289978213">"ՆԱՐՆՋԱԳՈՒՅՆ"</item>
-    <item msgid="5560732545714984533">"ԴԵՂԻՆ"</item>
-    <item msgid="7246284817845434226">"ԿԱՆԱՉ"</item>
-    <item msgid="6762906417604676001">"ԿԱՊՈՒՅՏ"</item>
-    <item msgid="8974135109557664892">"ԻՆԴԻԳՈ"</item>
-    <item msgid="786643557830463422">"ՄԱՆՈՒՇԱԿԱԳՈՒՅՆ"</item>
-    <item msgid="6835537356703747621">"ՄՈԽՐԱԳՈՒՅՆ"</item>
-    <item msgid="2470141365136884119">"ՓԻՐՈՒԶԱԳՈՒՅՆ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-in/clock_colors.xml b/res/values-in/clock_colors.xml
deleted file mode 100644
index f3b4693..0000000
--- a/res/values-in/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"MERAH"</item>
-    <item msgid="6882970855289978213">"ORANYE"</item>
-    <item msgid="5560732545714984533">"KUNING"</item>
-    <item msgid="7246284817845434226">"HIJAU"</item>
-    <item msgid="6762906417604676001">"BIRU"</item>
-    <item msgid="8974135109557664892">"NILA"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"ABU-ABU"</item>
-    <item msgid="2470141365136884119">"HIJAU KEBIRUAN"</item>
-  </string-array>
-</resources>
diff --git a/res/values-is/clock_colors.xml b/res/values-is/clock_colors.xml
deleted file mode 100644
index c7f0a59..0000000
--- a/res/values-is/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RAUÐUR"</item>
-    <item msgid="6882970855289978213">"APPELSÍNUGULUR"</item>
-    <item msgid="5560732545714984533">"GULUR"</item>
-    <item msgid="7246284817845434226">"GRÆNN"</item>
-    <item msgid="6762906417604676001">"BLÁR"</item>
-    <item msgid="8974135109557664892">"DIMMFJÓLUBLÁR"</item>
-    <item msgid="786643557830463422">"FJÓLUBLÁR"</item>
-    <item msgid="6835537356703747621">"GRÁR"</item>
-    <item msgid="2470141365136884119">"GRÆNBLÁR"</item>
-  </string-array>
-</resources>
diff --git a/res/values-it/clock_colors.xml b/res/values-it/clock_colors.xml
deleted file mode 100644
index 6e9505c..0000000
--- a/res/values-it/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROSSO"</item>
-    <item msgid="6882970855289978213">"ARANCIONE"</item>
-    <item msgid="5560732545714984533">"GIALLO"</item>
-    <item msgid="7246284817845434226">"VERDE"</item>
-    <item msgid="6762906417604676001">"BLU"</item>
-    <item msgid="8974135109557664892">"INDACO"</item>
-    <item msgid="786643557830463422">"VIOLA"</item>
-    <item msgid="6835537356703747621">"GRIGIO"</item>
-    <item msgid="2470141365136884119">"VERDE ACQUA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-iw/clock_colors.xml b/res/values-iw/clock_colors.xml
deleted file mode 100644
index 36c8783..0000000
--- a/res/values-iw/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"אדום"</item>
-    <item msgid="6882970855289978213">"כתום"</item>
-    <item msgid="5560732545714984533">"צהוב"</item>
-    <item msgid="7246284817845434226">"ירוק"</item>
-    <item msgid="6762906417604676001">"כחול"</item>
-    <item msgid="8974135109557664892">"אינדיגו"</item>
-    <item msgid="786643557830463422">"סגול"</item>
-    <item msgid="6835537356703747621">"אפור"</item>
-    <item msgid="2470141365136884119">"כחול-ירקרק"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ja/clock_colors.xml b/res/values-ja/clock_colors.xml
deleted file mode 100644
index 3bdde56..0000000
--- a/res/values-ja/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"赤"</item>
-    <item msgid="6882970855289978213">"オレンジ"</item>
-    <item msgid="5560732545714984533">"黄"</item>
-    <item msgid="7246284817845434226">"緑"</item>
-    <item msgid="6762906417604676001">"青"</item>
-    <item msgid="8974135109557664892">"インディゴ"</item>
-    <item msgid="786643557830463422">"バイオレット"</item>
-    <item msgid="6835537356703747621">"グレー"</item>
-    <item msgid="2470141365136884119">"ティール"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ka/clock_colors.xml b/res/values-ka/clock_colors.xml
deleted file mode 100644
index dd13e10..0000000
--- a/res/values-ka/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"წითელი"</item>
-    <item msgid="6882970855289978213">"ნარინჯისფერი"</item>
-    <item msgid="5560732545714984533">"ყვითელი"</item>
-    <item msgid="7246284817845434226">"მწვანე"</item>
-    <item msgid="6762906417604676001">"ლურჯი"</item>
-    <item msgid="8974135109557664892">"მუქი ლურჯი"</item>
-    <item msgid="786643557830463422">"იისფერი"</item>
-    <item msgid="6835537356703747621">"რუხი"</item>
-    <item msgid="2470141365136884119">"ზურმუხტისფერი"</item>
-  </string-array>
-</resources>
diff --git a/res/values-kk/clock_colors.xml b/res/values-kk/clock_colors.xml
deleted file mode 100644
index b8abce4..0000000
--- a/res/values-kk/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ҚЫЗЫЛ"</item>
-    <item msgid="6882970855289978213">"ҚЫЗҒЫЛТ САРЫ"</item>
-    <item msgid="5560732545714984533">"САРЫ"</item>
-    <item msgid="7246284817845434226">"ЖАСЫЛ"</item>
-    <item msgid="6762906417604676001">"КӨК"</item>
-    <item msgid="8974135109557664892">"ИНДИГО"</item>
-    <item msgid="786643557830463422">"КҮЛГІН"</item>
-    <item msgid="6835537356703747621">"СҰР"</item>
-    <item msgid="2470141365136884119">"КӨКШІЛ ЖАСЫЛ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-km/clock_colors.xml b/res/values-km/clock_colors.xml
deleted file mode 100644
index 25bc604..0000000
--- a/res/values-km/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ក្រហម"</item>
-    <item msgid="6882970855289978213">"ទឹកក្រូច"</item>
-    <item msgid="5560732545714984533">"លឿង"</item>
-    <item msgid="7246284817845434226">"បៃតង"</item>
-    <item msgid="6762906417604676001">"ខៀវ"</item>
-    <item msgid="8974135109557664892">"ទឹកប៊ិក"</item>
-    <item msgid="786643557830463422">"ត្របែក​ព្រៃ"</item>
-    <item msgid="6835537356703747621">"ប្រផេះ"</item>
-    <item msgid="2470141365136884119">"បៃតងចាស់"</item>
-  </string-array>
-</resources>
diff --git a/res/values-kn/clock_colors.xml b/res/values-kn/clock_colors.xml
deleted file mode 100644
index 775db7f..0000000
--- a/res/values-kn/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ಕೆಂಪು"</item>
-    <item msgid="6882970855289978213">"ಕಿತ್ತಳೆ"</item>
-    <item msgid="5560732545714984533">"ಹಳದಿ"</item>
-    <item msgid="7246284817845434226">"ಹಸಿರು"</item>
-    <item msgid="6762906417604676001">"ನೀಲಿ"</item>
-    <item msgid="8974135109557664892">"ಇಂಡಿಗೊ"</item>
-    <item msgid="786643557830463422">"ನೇರಳೆ"</item>
-    <item msgid="6835537356703747621">"ಬೂದು"</item>
-    <item msgid="2470141365136884119">"ಟೀಲ್"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ko/clock_colors.xml b/res/values-ko/clock_colors.xml
deleted file mode 100644
index 2b596c8..0000000
--- a/res/values-ko/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"빨간색"</item>
-    <item msgid="6882970855289978213">"주황색"</item>
-    <item msgid="5560732545714984533">"노란색"</item>
-    <item msgid="7246284817845434226">"초록색"</item>
-    <item msgid="6762906417604676001">"파란색"</item>
-    <item msgid="8974135109557664892">"인디고"</item>
-    <item msgid="786643557830463422">"보라색"</item>
-    <item msgid="6835537356703747621">"회색"</item>
-    <item msgid="2470141365136884119">"청록색"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ky/clock_colors.xml b/res/values-ky/clock_colors.xml
deleted file mode 100644
index 06d711c..0000000
--- a/res/values-ky/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"КЫЗЫЛ"</item>
-    <item msgid="6882970855289978213">"КЫЗГЫЛТ САРЫ"</item>
-    <item msgid="5560732545714984533">"САРЫ"</item>
-    <item msgid="7246284817845434226">"ЖАШЫЛ"</item>
-    <item msgid="6762906417604676001">"КӨК"</item>
-    <item msgid="8974135109557664892">"ИНДИГО"</item>
-    <item msgid="786643557830463422">"КЫЗГЫЛТ КӨК"</item>
-    <item msgid="6835537356703747621">"БОЗ"</item>
-    <item msgid="2470141365136884119">"КӨГҮШ ЖАШЫЛ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-lo/clock_colors.xml b/res/values-lo/clock_colors.xml
deleted file mode 100644
index 857c2b0..0000000
--- a/res/values-lo/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ສີແດງ"</item>
-    <item msgid="6882970855289978213">"ສີສົ້ມ"</item>
-    <item msgid="5560732545714984533">"ສີເຫຼືອງ"</item>
-    <item msgid="7246284817845434226">"ສີຂຽວ"</item>
-    <item msgid="6762906417604676001">"ສີຟ້າ"</item>
-    <item msgid="8974135109557664892">"ສີຄາມ"</item>
-    <item msgid="786643557830463422">"ສີມ່ວງ"</item>
-    <item msgid="6835537356703747621">"ສີເທົາ"</item>
-    <item msgid="2470141365136884119">"ສີຟ້າອົມຂຽວ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-lt/clock_colors.xml b/res/values-lt/clock_colors.xml
deleted file mode 100644
index 4e30d75..0000000
--- a/res/values-lt/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RAUDONA"</item>
-    <item msgid="6882970855289978213">"ORANŽINĖ"</item>
-    <item msgid="5560732545714984533">"GELTONA"</item>
-    <item msgid="7246284817845434226">"ŽALIA"</item>
-    <item msgid="6762906417604676001">"MĖLYNA"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETINĖ"</item>
-    <item msgid="6835537356703747621">"PILKA"</item>
-    <item msgid="2470141365136884119">"ŽALSVAI MĖLYNA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-lv/clock_colors.xml b/res/values-lv/clock_colors.xml
deleted file mode 100644
index 0983836..0000000
--- a/res/values-lv/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"SARKANA"</item>
-    <item msgid="6882970855289978213">"ORANŽA"</item>
-    <item msgid="5560732545714984533">"DZELTENA"</item>
-    <item msgid="7246284817845434226">"ZAĻA"</item>
-    <item msgid="6762906417604676001">"ZILA"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETA"</item>
-    <item msgid="6835537356703747621">"PELĒKA"</item>
-    <item msgid="2470141365136884119">"ZILGANZAĻA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-mk/clock_colors.xml b/res/values-mk/clock_colors.xml
deleted file mode 100644
index e89597c..0000000
--- a/res/values-mk/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ЦРВЕНА"</item>
-    <item msgid="6882970855289978213">"ПОРТОКАЛОВА"</item>
-    <item msgid="5560732545714984533">"ЖОЛТА"</item>
-    <item msgid="7246284817845434226">"ЗЕЛЕНА"</item>
-    <item msgid="6762906417604676001">"СИНА"</item>
-    <item msgid="8974135109557664892">"ИНДИГО"</item>
-    <item msgid="786643557830463422">"ВИОЛЕТОВА"</item>
-    <item msgid="6835537356703747621">"СИВА"</item>
-    <item msgid="2470141365136884119">"СИНО-ЗЕЛЕНА"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ml/clock_colors.xml b/res/values-ml/clock_colors.xml
deleted file mode 100644
index b194aed..0000000
--- a/res/values-ml/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ചുവപ്പ്"</item>
-    <item msgid="6882970855289978213">"ഓറഞ്ച്"</item>
-    <item msgid="5560732545714984533">"മഞ്ഞ"</item>
-    <item msgid="7246284817845434226">"പച്ച"</item>
-    <item msgid="6762906417604676001">"നീല"</item>
-    <item msgid="8974135109557664892">"ഇൻഡിഗോ"</item>
-    <item msgid="786643557830463422">"വയലറ്റ്"</item>
-    <item msgid="6835537356703747621">"ചാരനിറം"</item>
-    <item msgid="2470141365136884119">"ടീൽ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-mn/clock_colors.xml b/res/values-mn/clock_colors.xml
deleted file mode 100644
index d059fc0..0000000
--- a/res/values-mn/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"УЛААН"</item>
-    <item msgid="6882970855289978213">"УЛБАР ШАР"</item>
-    <item msgid="5560732545714984533">"ШАР"</item>
-    <item msgid="7246284817845434226">"НОГООН"</item>
-    <item msgid="6762906417604676001">"ЦЭНХЭР"</item>
-    <item msgid="8974135109557664892">"ХӨХӨВТӨР НИЛ ЯГААН"</item>
-    <item msgid="786643557830463422">"ХӨХ ЯГААН"</item>
-    <item msgid="6835537356703747621">"СААРАЛ"</item>
-    <item msgid="2470141365136884119">"УСАН ЦЭНХЭР"</item>
-  </string-array>
-</resources>
diff --git a/res/values-mr/clock_colors.xml b/res/values-mr/clock_colors.xml
deleted file mode 100644
index a37bf2a..0000000
--- a/res/values-mr/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"लाल"</item>
-    <item msgid="6882970855289978213">"नारिंगी"</item>
-    <item msgid="5560732545714984533">"पिवळा"</item>
-    <item msgid="7246284817845434226">"हिरवा"</item>
-    <item msgid="6762906417604676001">"निळा"</item>
-    <item msgid="8974135109557664892">"गडद निळा"</item>
-    <item msgid="786643557830463422">"जांभळा"</item>
-    <item msgid="6835537356703747621">"राखाडी"</item>
-    <item msgid="2470141365136884119">"हिरवट निळा"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ms/clock_colors.xml b/res/values-ms/clock_colors.xml
deleted file mode 100644
index fb06584..0000000
--- a/res/values-ms/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"MERAH"</item>
-    <item msgid="6882970855289978213">"JINGGA"</item>
-    <item msgid="5560732545714984533">"KUNING"</item>
-    <item msgid="7246284817845434226">"HIJAU"</item>
-    <item msgid="6762906417604676001">"BIRU"</item>
-    <item msgid="8974135109557664892">"BIRU NILA"</item>
-    <item msgid="786643557830463422">"LEMBAYUNG"</item>
-    <item msgid="6835537356703747621">"KELABU"</item>
-    <item msgid="2470141365136884119">"HIJAU KEBIRUAN"</item>
-  </string-array>
-</resources>
diff --git a/res/values-my/clock_colors.xml b/res/values-my/clock_colors.xml
deleted file mode 100644
index 121056b..0000000
--- a/res/values-my/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"အနီရောင်"</item>
-    <item msgid="6882970855289978213">"လိမ္မော်ရောင်"</item>
-    <item msgid="5560732545714984533">"အဝါရောင်"</item>
-    <item msgid="7246284817845434226">"အစိမ်းရောင်"</item>
-    <item msgid="6762906417604676001">"အပြာရောင်"</item>
-    <item msgid="8974135109557664892">"မဲနယ်ရောင်"</item>
-    <item msgid="786643557830463422">"ခရမ်းရောင်"</item>
-    <item msgid="6835537356703747621">"မီးခိုးရောင်"</item>
-    <item msgid="2470141365136884119">"စိမ်းပြာရောင်"</item>
-  </string-array>
-</resources>
diff --git a/res/values-nb/clock_colors.xml b/res/values-nb/clock_colors.xml
deleted file mode 100644
index 7b27822..0000000
--- a/res/values-nb/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RØD"</item>
-    <item msgid="6882970855289978213">"ORANSJE"</item>
-    <item msgid="5560732545714984533">"GUL"</item>
-    <item msgid="7246284817845434226">"GRØNN"</item>
-    <item msgid="6762906417604676001">"BLÅ"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"FIOLETT"</item>
-    <item msgid="6835537356703747621">"GRÅ"</item>
-    <item msgid="2470141365136884119">"BLÅGRØNN"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ne/clock_colors.xml b/res/values-ne/clock_colors.xml
deleted file mode 100644
index a46e357..0000000
--- a/res/values-ne/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"रातो"</item>
-    <item msgid="6882970855289978213">"सुन्तले"</item>
-    <item msgid="5560732545714984533">"पहेँलो"</item>
-    <item msgid="7246284817845434226">"हरियो"</item>
-    <item msgid="6762906417604676001">"निलो"</item>
-    <item msgid="8974135109557664892">"इन्डिगो"</item>
-    <item msgid="786643557830463422">"बैजनी"</item>
-    <item msgid="6835537356703747621">"खैरो"</item>
-    <item msgid="2470141365136884119">"निलोमिश्रित हरियो"</item>
-  </string-array>
-</resources>
diff --git a/res/values-nl/clock_colors.xml b/res/values-nl/clock_colors.xml
deleted file mode 100644
index bd072a1..0000000
--- a/res/values-nl/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROOD"</item>
-    <item msgid="6882970855289978213">"ORANJE"</item>
-    <item msgid="5560732545714984533">"GEEL"</item>
-    <item msgid="7246284817845434226">"GROEN"</item>
-    <item msgid="6762906417604676001">"BLAUW"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GRIJS"</item>
-    <item msgid="2470141365136884119">"BLAUWGROEN"</item>
-  </string-array>
-</resources>
diff --git a/res/values-or/clock_colors.xml b/res/values-or/clock_colors.xml
deleted file mode 100644
index ab38485..0000000
--- a/res/values-or/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ଲାଲ"</item>
-    <item msgid="6882970855289978213">"କମଳା"</item>
-    <item msgid="5560732545714984533">"ହଳଦିଆ"</item>
-    <item msgid="7246284817845434226">"ସବୁଜ"</item>
-    <item msgid="6762906417604676001">"ନୀଳ"</item>
-    <item msgid="8974135109557664892">"ଇଣ୍ଡିଗୋ"</item>
-    <item msgid="786643557830463422">"ବାଇଗଣୀ"</item>
-    <item msgid="6835537356703747621">"ଧୂସର"</item>
-    <item msgid="2470141365136884119">"ଟିଲ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-pa/clock_colors.xml b/res/values-pa/clock_colors.xml
deleted file mode 100644
index 3201dab..0000000
--- a/res/values-pa/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ਲਾਲ"</item>
-    <item msgid="6882970855289978213">"ਸੰਤਰੀ"</item>
-    <item msgid="5560732545714984533">"ਪੀਲਾ"</item>
-    <item msgid="7246284817845434226">"ਹਰਾ"</item>
-    <item msgid="6762906417604676001">"ਨੀਲਾ"</item>
-    <item msgid="8974135109557664892">"ਲਾਜਵਰ"</item>
-    <item msgid="786643557830463422">"ਜਾਮਣੀ"</item>
-    <item msgid="6835537356703747621">"ਸਲੇਟੀ"</item>
-    <item msgid="2470141365136884119">"ਟੀਲ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-pl/clock_colors.xml b/res/values-pl/clock_colors.xml
deleted file mode 100644
index 2e6f58b..0000000
--- a/res/values-pl/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"CZERWONY"</item>
-    <item msgid="6882970855289978213">"POMARAŃCZOWY"</item>
-    <item msgid="5560732545714984533">"ŻÓŁTY"</item>
-    <item msgid="7246284817845434226">"ZIELONY"</item>
-    <item msgid="6762906417604676001">"NIEBIESKI"</item>
-    <item msgid="8974135109557664892">"INDYGO"</item>
-    <item msgid="786643557830463422">"FIOLETOWY"</item>
-    <item msgid="6835537356703747621">"SZARY"</item>
-    <item msgid="2470141365136884119">"MORSKI"</item>
-  </string-array>
-</resources>
diff --git a/res/values-pt-rPT/clock_colors.xml b/res/values-pt-rPT/clock_colors.xml
deleted file mode 100644
index 029295a..0000000
--- a/res/values-pt-rPT/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"VERMELHO"</item>
-    <item msgid="6882970855289978213">"LARANJA"</item>
-    <item msgid="5560732545714984533">"AMARELO"</item>
-    <item msgid="7246284817845434226">"VERDE"</item>
-    <item msgid="6762906417604676001">"AZUL"</item>
-    <item msgid="8974135109557664892">"ÍNDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETA"</item>
-    <item msgid="6835537356703747621">"CINZENTO"</item>
-    <item msgid="2470141365136884119">"AZUL-ESVERDEADO"</item>
-  </string-array>
-</resources>
diff --git a/res/values-pt/clock_colors.xml b/res/values-pt/clock_colors.xml
deleted file mode 100644
index 57538ba..0000000
--- a/res/values-pt/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"VERMELHO"</item>
-    <item msgid="6882970855289978213">"LARANJA"</item>
-    <item msgid="5560732545714984533">"AMARELO"</item>
-    <item msgid="7246284817845434226">"VERDE"</item>
-    <item msgid="6762906417604676001">"AZUL"</item>
-    <item msgid="8974135109557664892">"ÍNDIGO"</item>
-    <item msgid="786643557830463422">"VIOLETA"</item>
-    <item msgid="6835537356703747621">"CINZA"</item>
-    <item msgid="2470141365136884119">"AZUL-PETRÓLEO"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ro/clock_colors.xml b/res/values-ro/clock_colors.xml
deleted file mode 100644
index 003fa39..0000000
--- a/res/values-ro/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ROȘU"</item>
-    <item msgid="6882970855289978213">"PORTOCALIU"</item>
-    <item msgid="5560732545714984533">"GALBEN"</item>
-    <item msgid="7246284817845434226">"VERDE"</item>
-    <item msgid="6762906417604676001">"ALBASTRU"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GRI"</item>
-    <item msgid="2470141365136884119">"TURCOAZ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ru/clock_colors.xml b/res/values-ru/clock_colors.xml
deleted file mode 100644
index 17e429a..0000000
--- a/res/values-ru/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"КРАСНЫЙ"</item>
-    <item msgid="6882970855289978213">"ОРАНЖЕВЫЙ"</item>
-    <item msgid="5560732545714984533">"ЖЕЛТЫЙ"</item>
-    <item msgid="7246284817845434226">"ЗЕЛЕНЫЙ"</item>
-    <item msgid="6762906417604676001">"СИНИЙ"</item>
-    <item msgid="8974135109557664892">"ИНДИГО"</item>
-    <item msgid="786643557830463422">"ФИОЛЕТОВЫЙ"</item>
-    <item msgid="6835537356703747621">"СЕРЫЙ"</item>
-    <item msgid="2470141365136884119">"ТЕМНО-БИРЮЗОВЫЙ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-si/clock_colors.xml b/res/values-si/clock_colors.xml
deleted file mode 100644
index c0b3da5..0000000
--- a/res/values-si/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"රතු"</item>
-    <item msgid="6882970855289978213">"තැඹිලි"</item>
-    <item msgid="5560732545714984533">"කහ"</item>
-    <item msgid="7246284817845434226">"කොළ"</item>
-    <item msgid="6762906417604676001">"නිල්"</item>
-    <item msgid="8974135109557664892">"ඉන්ඩිගෝ"</item>
-    <item msgid="786643557830463422">"වයලට්"</item>
-    <item msgid="6835537356703747621">"අළු"</item>
-    <item msgid="2470141365136884119">"හරිත නිල්"</item>
-  </string-array>
-</resources>
diff --git a/res/values-sk/clock_colors.xml b/res/values-sk/clock_colors.xml
deleted file mode 100644
index a443c4b..0000000
--- a/res/values-sk/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ČERVENÁ"</item>
-    <item msgid="6882970855289978213">"ORANŽOVÁ"</item>
-    <item msgid="5560732545714984533">"ŽLTÁ"</item>
-    <item msgid="7246284817845434226">"ZELENÁ"</item>
-    <item msgid="6762906417604676001">"MODRÁ"</item>
-    <item msgid="8974135109557664892">"INDIGOVÁ"</item>
-    <item msgid="786643557830463422">"FIALOVÁ"</item>
-    <item msgid="6835537356703747621">"SIVÁ"</item>
-    <item msgid="2470141365136884119">"MODROZELENÁ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-sl/clock_colors.xml b/res/values-sl/clock_colors.xml
deleted file mode 100644
index edf1377..0000000
--- a/res/values-sl/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RDEČA"</item>
-    <item msgid="6882970855289978213">"ORANŽNA"</item>
-    <item msgid="5560732545714984533">"RUMENA"</item>
-    <item msgid="7246284817845434226">"ZELENA"</item>
-    <item msgid="6762906417604676001">"MODRA"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIJOLIČNA"</item>
-    <item msgid="6835537356703747621">"SIVA"</item>
-    <item msgid="2470141365136884119">"ZELENOMODRA"</item>
-  </string-array>
-</resources>
diff --git a/res/values-sq/clock_colors.xml b/res/values-sq/clock_colors.xml
deleted file mode 100644
index 69a2b0c..0000000
--- a/res/values-sq/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"E KUQE"</item>
-    <item msgid="6882970855289978213">"PORTOKALLI"</item>
-    <item msgid="5560732545714984533">"E VERDHË"</item>
-    <item msgid="7246284817845434226">"E GJELBËR"</item>
-    <item msgid="6762906417604676001">"BLU"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VJOLLCË"</item>
-    <item msgid="6835537356703747621">"GRI"</item>
-    <item msgid="2470141365136884119">"GURKALI"</item>
-  </string-array>
-</resources>
diff --git a/res/values-sr/clock_colors.xml b/res/values-sr/clock_colors.xml
deleted file mode 100644
index 9250371..0000000
--- a/res/values-sr/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ЦРВЕНА"</item>
-    <item msgid="6882970855289978213">"НАРАНЏАСТА"</item>
-    <item msgid="5560732545714984533">"ЖУТА"</item>
-    <item msgid="7246284817845434226">"ЗЕЛЕНА"</item>
-    <item msgid="6762906417604676001">"ПЛАВА"</item>
-    <item msgid="8974135109557664892">"ТАМНОПЛАВА"</item>
-    <item msgid="786643557830463422">"ЉУБИЧАСТА"</item>
-    <item msgid="6835537356703747621">"СИВА"</item>
-    <item msgid="2470141365136884119">"ТИРКИЗНА"</item>
-  </string-array>
-</resources>
diff --git a/res/values-sv/clock_colors.xml b/res/values-sv/clock_colors.xml
deleted file mode 100644
index 46df56a..0000000
--- a/res/values-sv/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"RÖD"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"GUL"</item>
-    <item msgid="7246284817845434226">"GRÖN"</item>
-    <item msgid="6762906417604676001">"BLÅ"</item>
-    <item msgid="8974135109557664892">"INDIGOBLÅ"</item>
-    <item msgid="786643557830463422">"VIOLETT"</item>
-    <item msgid="6835537356703747621">"GRÅ"</item>
-    <item msgid="2470141365136884119">"BLÅGRÖN"</item>
-  </string-array>
-</resources>
diff --git a/res/values-sw/clock_colors.xml b/res/values-sw/clock_colors.xml
deleted file mode 100644
index b2fd0c2..0000000
--- a/res/values-sw/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"NYEKUNDU"</item>
-    <item msgid="6882970855289978213">"RANGI YA CHUNGWA"</item>
-    <item msgid="5560732545714984533">"NJANO"</item>
-    <item msgid="7246284817845434226">"KIJANI"</item>
-    <item msgid="6762906417604676001">"BULUU"</item>
-    <item msgid="8974135109557664892">"NILI"</item>
-    <item msgid="786643557830463422">"ZAMBARAU ILIYOKOLEA"</item>
-    <item msgid="6835537356703747621">"KIJIVU"</item>
-    <item msgid="2470141365136884119">"SAMAWATI YA KIJANI"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ta/clock_colors.xml b/res/values-ta/clock_colors.xml
deleted file mode 100644
index 67824d6..0000000
--- a/res/values-ta/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"சிவப்பு"</item>
-    <item msgid="6882970855289978213">"ஆரஞ்சு"</item>
-    <item msgid="5560732545714984533">"மஞ்சள்"</item>
-    <item msgid="7246284817845434226">"பச்சை"</item>
-    <item msgid="6762906417604676001">"நீலம்"</item>
-    <item msgid="8974135109557664892">"அடர் நீலம்"</item>
-    <item msgid="786643557830463422">"ஊதா"</item>
-    <item msgid="6835537356703747621">"சாம்பல்"</item>
-    <item msgid="2470141365136884119">"பசும் நீலம்"</item>
-  </string-array>
-</resources>
diff --git a/res/values-te/clock_colors.xml b/res/values-te/clock_colors.xml
deleted file mode 100644
index a142c76..0000000
--- a/res/values-te/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ఎరుపు రంగు"</item>
-    <item msgid="6882970855289978213">"నారింజ రంగు"</item>
-    <item msgid="5560732545714984533">"పసుపు రంగు"</item>
-    <item msgid="7246284817845434226">"ఆకుపచ్చ రంగు"</item>
-    <item msgid="6762906417604676001">"నీలం రంగు"</item>
-    <item msgid="8974135109557664892">"ఇండిగో రంగు"</item>
-    <item msgid="786643557830463422">"ఊదా రంగు"</item>
-    <item msgid="6835537356703747621">"బూడిద రంగు"</item>
-    <item msgid="2470141365136884119">"టీల్ రంగు"</item>
-  </string-array>
-</resources>
diff --git a/res/values-th/clock_colors.xml b/res/values-th/clock_colors.xml
deleted file mode 100644
index c63bdd1..0000000
--- a/res/values-th/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"แดง"</item>
-    <item msgid="6882970855289978213">"ส้ม"</item>
-    <item msgid="5560732545714984533">"เหลือง"</item>
-    <item msgid="7246284817845434226">"เขียว"</item>
-    <item msgid="6762906417604676001">"น้ำเงิน"</item>
-    <item msgid="8974135109557664892">"น้ำเงินอมม่วง"</item>
-    <item msgid="786643557830463422">"ม่วงอมน้ำเงิน"</item>
-    <item msgid="6835537356703747621">"เทา"</item>
-    <item msgid="2470141365136884119">"น้ำเงินอมเขียว"</item>
-  </string-array>
-</resources>
diff --git a/res/values-tl/clock_colors.xml b/res/values-tl/clock_colors.xml
deleted file mode 100644
index 6c26409..0000000
--- a/res/values-tl/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"PULA"</item>
-    <item msgid="6882970855289978213">"ORANGE"</item>
-    <item msgid="5560732545714984533">"DILAW"</item>
-    <item msgid="7246284817845434226">"BERDE"</item>
-    <item msgid="6762906417604676001">"ASUL"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"VIOLET"</item>
-    <item msgid="6835537356703747621">"GRAY"</item>
-    <item msgid="2470141365136884119">"TEAL"</item>
-  </string-array>
-</resources>
diff --git a/res/values-tr/clock_colors.xml b/res/values-tr/clock_colors.xml
deleted file mode 100644
index 45c8118..0000000
--- a/res/values-tr/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"KIRMIZI"</item>
-    <item msgid="6882970855289978213">"TURUNCU"</item>
-    <item msgid="5560732545714984533">"SARI"</item>
-    <item msgid="7246284817845434226">"YEŞİL"</item>
-    <item msgid="6762906417604676001">"MAVİ"</item>
-    <item msgid="8974135109557664892">"ÇİVİT MAVİSİ"</item>
-    <item msgid="786643557830463422">"MOR"</item>
-    <item msgid="6835537356703747621">"GRİ"</item>
-    <item msgid="2470141365136884119">"TURKUAZ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-uk/clock_colors.xml b/res/values-uk/clock_colors.xml
deleted file mode 100644
index aaa3b71..0000000
--- a/res/values-uk/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ЧЕРВОНИЙ"</item>
-    <item msgid="6882970855289978213">"ОРАНЖЕВИЙ"</item>
-    <item msgid="5560732545714984533">"ЖОВТИЙ"</item>
-    <item msgid="7246284817845434226">"ЗЕЛЕНИЙ"</item>
-    <item msgid="6762906417604676001">"СИНІЙ"</item>
-    <item msgid="8974135109557664892">"ІНДИГО"</item>
-    <item msgid="786643557830463422">"ФІОЛЕТОВИЙ"</item>
-    <item msgid="6835537356703747621">"СІРИЙ"</item>
-    <item msgid="2470141365136884119">"БІРЮЗОВИЙ"</item>
-  </string-array>
-</resources>
diff --git a/res/values-ur/clock_colors.xml b/res/values-ur/clock_colors.xml
deleted file mode 100644
index 2203d92..0000000
--- a/res/values-ur/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"سرخ"</item>
-    <item msgid="6882970855289978213">"نارنجی"</item>
-    <item msgid="5560732545714984533">"زرد"</item>
-    <item msgid="7246284817845434226">"سبز"</item>
-    <item msgid="6762906417604676001">"نیلا"</item>
-    <item msgid="8974135109557664892">"گہرا نیلا"</item>
-    <item msgid="786643557830463422">"بیگنی"</item>
-    <item msgid="6835537356703747621">"خاکستری"</item>
-    <item msgid="2470141365136884119">"نیلگوں سبز"</item>
-  </string-array>
-</resources>
diff --git a/res/values-uz/clock_colors.xml b/res/values-uz/clock_colors.xml
deleted file mode 100644
index 737d2bd..0000000
--- a/res/values-uz/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"QIZIL"</item>
-    <item msgid="6882970855289978213">"TOʻQ SARIQ"</item>
-    <item msgid="5560732545714984533">"SARIQ"</item>
-    <item msgid="7246284817845434226">"YASHIL"</item>
-    <item msgid="6762906417604676001">"KOʻK"</item>
-    <item msgid="8974135109557664892">"INDIGO"</item>
-    <item msgid="786643557830463422">"BINAFSHARANG"</item>
-    <item msgid="6835537356703747621">"KULRANG"</item>
-    <item msgid="2470141365136884119">"MOVIY"</item>
-  </string-array>
-</resources>
diff --git a/res/values-vi/clock_colors.xml b/res/values-vi/clock_colors.xml
deleted file mode 100644
index 5ef97c5..0000000
--- a/res/values-vi/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"ĐỎ"</item>
-    <item msgid="6882970855289978213">"CAM"</item>
-    <item msgid="5560732545714984533">"VÀNG"</item>
-    <item msgid="7246284817845434226">"XANH LỤC"</item>
-    <item msgid="6762906417604676001">"XANH LAM"</item>
-    <item msgid="8974135109557664892">"CHÀM"</item>
-    <item msgid="786643557830463422">"TÍM"</item>
-    <item msgid="6835537356703747621">"XÁM"</item>
-    <item msgid="2470141365136884119">"XANH MÒNG KÉT"</item>
-  </string-array>
-</resources>
diff --git a/res/values-zh-rCN/clock_colors.xml b/res/values-zh-rCN/clock_colors.xml
deleted file mode 100644
index e3c68c0..0000000
--- a/res/values-zh-rCN/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"红色"</item>
-    <item msgid="6882970855289978213">"橙色"</item>
-    <item msgid="5560732545714984533">"黄色"</item>
-    <item msgid="7246284817845434226">"绿色"</item>
-    <item msgid="6762906417604676001">"蓝色"</item>
-    <item msgid="8974135109557664892">"靛蓝色"</item>
-    <item msgid="786643557830463422">"紫罗兰色"</item>
-    <item msgid="6835537356703747621">"灰色"</item>
-    <item msgid="2470141365136884119">"蓝绿色"</item>
-  </string-array>
-</resources>
diff --git a/res/values-zh-rHK/clock_colors.xml b/res/values-zh-rHK/clock_colors.xml
deleted file mode 100644
index 2861c3b..0000000
--- a/res/values-zh-rHK/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"紅色"</item>
-    <item msgid="6882970855289978213">"橙色"</item>
-    <item msgid="5560732545714984533">"黃色"</item>
-    <item msgid="7246284817845434226">"綠色"</item>
-    <item msgid="6762906417604676001">"藍色"</item>
-    <item msgid="8974135109557664892">"靛藍色"</item>
-    <item msgid="786643557830463422">"紫羅蘭色"</item>
-    <item msgid="6835537356703747621">"灰色"</item>
-    <item msgid="2470141365136884119">"藍綠色"</item>
-  </string-array>
-</resources>
diff --git a/res/values-zh-rTW/clock_colors.xml b/res/values-zh-rTW/clock_colors.xml
deleted file mode 100644
index 596109b..0000000
--- a/res/values-zh-rTW/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"紅色"</item>
-    <item msgid="6882970855289978213">"橘色"</item>
-    <item msgid="5560732545714984533">"黃色"</item>
-    <item msgid="7246284817845434226">"綠色"</item>
-    <item msgid="6762906417604676001">"藍色"</item>
-    <item msgid="8974135109557664892">"靛藍色"</item>
-    <item msgid="786643557830463422">"紫羅蘭色"</item>
-    <item msgid="6835537356703747621">"灰色"</item>
-    <item msgid="2470141365136884119">"藍綠色"</item>
-  </string-array>
-</resources>
diff --git a/res/values-zu/clock_colors.xml b/res/values-zu/clock_colors.xml
deleted file mode 100644
index f33ef25..0000000
--- a/res/values-zu/clock_colors.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-     Copyright (C) 2023 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-  <string-array name="clock_color_ids">
-    <item msgid="4948142733161826319">"OKUBOMVU"</item>
-    <item msgid="6882970855289978213">"OKUWOLINTSHI"</item>
-    <item msgid="5560732545714984533">"OKUPHUZI"</item>
-    <item msgid="7246284817845434226">"OKULUHLAZA OKOTSHANI"</item>
-    <item msgid="6762906417604676001">"OKULUHLAZA OKWESIBHAKABHAKA"</item>
-    <item msgid="8974135109557664892">"OKU-INDIGO"</item>
-    <item msgid="786643557830463422">"OKU-VIOLET"</item>
-    <item msgid="6835537356703747621">"OKUMPUNGA"</item>
-    <item msgid="2470141365136884119">"OKU-TEAL"</item>
-  </string-array>
-</resources>
diff --git a/res/values/clock_colors.xml b/res/values/clock_colors.xml
index 1539a92..465f0a0 100644
--- a/res/values/clock_colors.xml
+++ b/res/values/clock_colors.xml
@@ -15,7 +15,8 @@
      limitations under the License.
 -->
 <resources>
-    <string-array name="clock_color_ids">
+    <string-array translatable="false" name="clock_color_ids">
+        <item>GRAY</item>
         <item>RED</item>
         <item>ORANGE</item>
         <item>YELLOW</item>
@@ -23,10 +24,10 @@
         <item>BLUE</item>
         <item>INDIGO</item>
         <item>VIOLET</item>
-        <item>GRAY</item>
         <item>TEAL</item>
     </string-array>
     <array name="clock_color_names">
+        <item>@string/clock_color_gray</item>
         <item>@string/clock_color_red</item>
         <item>@string/clock_color_orange</item>
         <item>@string/clock_color_yellow</item>
@@ -34,10 +35,10 @@
         <item>@string/clock_color_blue</item>
         <item>@string/clock_color_indigo</item>
         <item>@string/clock_color_violet</item>
-        <item>@string/clock_color_gray</item>
         <item>@string/clock_color_teal</item>
     </array>
     <array name="clock_colors">
+        <item>#B9B9B9</item>
         <item>#FFA3A7</item>
         <item>#F7AC69</item>
         <item>#FFC951</item>
@@ -45,10 +46,10 @@
         <item>#8EC8FF</item>
         <item>#B9AAFF</item>
         <item>#F6A2FF</item>
-        <item>#B9B9B9</item>
         <item>#40D9CF</item>
     </array>
     <array name="clock_color_tone_min">
+        <item>0</item>
         <item>20</item>
         <item>20</item>
         <item>50</item>
@@ -56,10 +57,10 @@
         <item>20</item>
         <item>10</item>
         <item>20</item>
-        <item>0</item>
         <item>20</item>
     </array>
     <array name="clock_color_tone_max">
+        <item>100</item>
         <item>95</item>
         <item>95</item>
         <item>95</item>
@@ -67,7 +68,6 @@
         <item>95</item>
         <item>95</item>
         <item>97</item>
-        <item>100</item>
         <item>99</item>
     </array>
 </resources>
\ No newline at end of file
diff --git a/src/com/android/customization/picker/clock/ui/viewmodel/ClockColorViewModel.kt b/src/com/android/customization/picker/clock/ui/viewmodel/ClockColorViewModel.kt
index ea60ae3..9d622da 100644
--- a/src/com/android/customization/picker/clock/ui/viewmodel/ClockColorViewModel.kt
+++ b/src/com/android/customization/picker/clock/ui/viewmodel/ClockColorViewModel.kt
@@ -35,8 +35,8 @@
     }
 
     companion object {
-        const val DEFAULT_COLOR_TONE_MIN = 0
-        const val DEFAULT_COLOR_TONE_MAX = 100
+        private const val DEFAULT_COLOR_TONE_MIN = 0
+        private const val DEFAULT_COLOR_TONE_MAX = 100
 
         fun getPresetColorMap(resources: Resources): Map<String, ClockColorViewModel> {
             val ids = resources.getStringArray(R.array.clock_color_ids)
diff --git a/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockSectionViewModelTest.kt b/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockSectionViewModelTest.kt
index 61976ad..573777d 100644
--- a/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockSectionViewModelTest.kt
+++ b/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockSectionViewModelTest.kt
@@ -65,18 +65,18 @@
 
     @Test
     fun setSelectedClock() = runTest {
-        val colorRed = clockColorMap.values.first()
+        val colorGrey = clockColorMap.values.first()
         val observedSelectedClockColorAndSizeText =
             collectLastValue(underTest.selectedClockColorAndSizeText)
         interactor.setClockColor(
-            colorRed.colorId,
+            colorGrey.colorId,
             ClockMetadataModel.DEFAULT_COLOR_TONE_PROGRESS,
             ClockSettingsViewModel.blendColorWithTone(
-                colorRed.color,
-                colorRed.getColorTone(ClockMetadataModel.DEFAULT_COLOR_TONE_PROGRESS),
+                colorGrey.color,
+                colorGrey.getColorTone(ClockMetadataModel.DEFAULT_COLOR_TONE_PROGRESS),
             )
         )
         interactor.setClockSize(ClockSize.DYNAMIC)
-        assertThat(observedSelectedClockColorAndSizeText()).isEqualTo("Red, dynamic")
+        assertThat(observedSelectedClockColorAndSizeText()).isEqualTo("Grey, dynamic")
     }
 }
