diff --git a/themes/overlays/AccentColorBlueMondayOverlay/Android.mk b/themes/overlays/AccentColorBlueMondayOverlay/Android.mk
deleted file mode 100644
index 724067f..0000000
--- a/themes/overlays/AccentColorBlueMondayOverlay/Android.mk
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-#  Copyright 2018, The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_RRO_THEME := AccentColorBlueMonday
-
-LOCAL_PRODUCT_MODULE := true
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := AccentColorBlueMondayOverlay
-LOCAL_SDK_VERSION := current
-
-include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/colors_device_defaults.xml b/themes/overlays/AccentColorBlueMondayOverlay/res/values/colors_device_defaults.xml
deleted file mode 100644
index d150618..0000000
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/colors_device_defaults.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources>
-    <color name="accent_device_default_light">#ff009ed8</color>
-    <color name="accent_device_default_dark">#ff009ed8</color>
-</resources>
diff --git a/themes/overlays/AccentColorGoldenShowerOverlay/Android.mk b/themes/overlays/AccentColorGoldenShowerOverlay/Android.mk
deleted file mode 100644
index ac8c82a..0000000
--- a/themes/overlays/AccentColorGoldenShowerOverlay/Android.mk
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-#  Copyright 2018, The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_RRO_THEME := AccentColorGoldenShower
-
-LOCAL_PRODUCT_MODULE := true
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := AccentColorGoldenShowerOverlay
-LOCAL_SDK_VERSION := current
-
-include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorGoldenShowerOverlay/AndroidManifest.xml b/themes/overlays/AccentColorGoldenShowerOverlay/AndroidManifest.xml
deleted file mode 100644
index 8dad4ed..0000000
--- a/themes/overlays/AccentColorGoldenShowerOverlay/AndroidManifest.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.golden"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
-
-    <application android:label="@string/accent_color_golden_shower" android:hasCode="false"/>
-</manifest>
diff --git a/themes/overlays/AccentColorGoldenShowerOverlay/res/values/colors_device_defaults.xml b/themes/overlays/AccentColorGoldenShowerOverlay/res/values/colors_device_defaults.xml
deleted file mode 100644
index 99a00af..0000000
--- a/themes/overlays/AccentColorGoldenShowerOverlay/res/values/colors_device_defaults.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources>
-    <color name="accent_device_default_light">#ffd8a209</color>
-    <color name="accent_device_default_dark">#fff0b50b</color>
-</resources>
diff --git a/themes/overlays/AccentColorGoldenShowerOverlay/res/values/strings.xml b/themes/overlays/AccentColorGoldenShowerOverlay/res/values/strings.xml
deleted file mode 100644
index d0c70b9..0000000
--- a/themes/overlays/AccentColorGoldenShowerOverlay/res/values/strings.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_golden_shower" translatable="false">Golden Shower</string>
-</resources>
-
diff --git a/themes/overlays/AccentColorOmniOverlay/AndroidManifest.xml b/themes/overlays/AccentColorOmniOverlay/AndroidManifest.xml
index fd3e176..ae14fba 100644
--- a/themes/overlays/AccentColorOmniOverlay/AndroidManifest.xml
+++ b/themes/overlays/AccentColorOmniOverlay/AndroidManifest.xml
@@ -16,7 +16,7 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.omni"
+          package="com.android.theme.color.accent.omni"
           android:versionCode="1"
           android:versionName="1.0">
     <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
diff --git a/themes/overlays/AccentColorOmniOverlay/res/values/colors.xml b/themes/overlays/AccentColorOmniOverlay/res/values/colors.xml
new file mode 100644
index 0000000..32e2f5e
--- /dev/null
+++ b/themes/overlays/AccentColorOmniOverlay/res/values/colors.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources>
+    <color name="system_accent1_0">#ffffff</color>
+    <color name="system_accent1_10">#99c124</color>
+    <color name="system_accent1_50">#99c124</color>
+    <color name="system_accent1_100">#99c124</color>
+    <color name="system_accent1_200">#99c124</color>
+    <color name="system_accent1_300">#99c124</color>
+    <color name="system_accent1_400">#99c124</color>
+    <color name="system_accent1_500">#99c124</color>
+    <color name="system_accent1_600">#99c124</color>
+    <color name="system_accent1_700">#99c124</color>
+    <color name="system_accent1_800">#99c124</color>
+    <color name="system_accent1_900">#99c124</color>
+    <color name="system_accent1_1000">#000000</color>
+</resources>
diff --git a/themes/overlays/AccentColorOmniOverlay/res/values/colors_device_defaults.xml b/themes/overlays/AccentColorOmniOverlay/res/values/colors_device_defaults.xml
deleted file mode 100644
index 377ec37..0000000
--- a/themes/overlays/AccentColorOmniOverlay/res/values/colors_device_defaults.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources>
-    <color name="accent_device_default_light">#ffa1c729</color>
-    <color name="accent_device_default_dark">#ff90b324</color>
-</resources>
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/AccentColorOrangeOverlay/Android.mk
similarity index 89%
copy from themes/overlays/PrimaryColorDeepBlue/Android.mk
copy to themes/overlays/AccentColorOrangeOverlay/Android.mk
index e5a0146..fdcff91 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/AccentColorOrangeOverlay/Android.mk
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := AccentColorOrange
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := AccentColorOrangeOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorRedDevilOverlay/AndroidManifest.xml b/themes/overlays/AccentColorOrangeOverlay/AndroidManifest.xml
similarity index 86%
copy from themes/overlays/AccentColorRedDevilOverlay/AndroidManifest.xml
copy to themes/overlays/AccentColorOrangeOverlay/AndroidManifest.xml
index 7957840..81299e9 100644
--- a/themes/overlays/AccentColorRedDevilOverlay/AndroidManifest.xml
+++ b/themes/overlays/AccentColorOrangeOverlay/AndroidManifest.xml
@@ -16,10 +16,10 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.reddevil"
+          package="com.android.theme.color.accent.orange"
           android:versionCode="1"
           android:versionName="1.0">
     <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
 
-    <application android:label="@string/accent_color_red_devil" android:hasCode="false"/>
+    <application android:label="@string/accent_color_orange" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/AccentColorOrangeOverlay/res/values/colors.xml b/themes/overlays/AccentColorOrangeOverlay/res/values/colors.xml
new file mode 100644
index 0000000..3765587
--- /dev/null
+++ b/themes/overlays/AccentColorOrangeOverlay/res/values/colors.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources>    
+    <color name="system_accent1_0">#ffffff</color>
+    <color name="system_accent1_10">#ff8000</color>
+    <color name="system_accent1_50">#ff8000</color>
+    <color name="system_accent1_100">#ff8000</color>
+    <color name="system_accent1_200">#ff8000</color>
+    <color name="system_accent1_300">#ff8000</color>
+    <color name="system_accent1_400">#ff8000</color>
+    <color name="system_accent1_500">#ff8000</color>
+    <color name="system_accent1_600">#ff8000</color>
+    <color name="system_accent1_700">#ff8000</color>
+    <color name="system_accent1_800">#ff8000</color>
+    <color name="system_accent1_900">#ff8000</color>
+    <color name="system_accent1_1000">#000000</color>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/AccentColorOrangeOverlay/res/values/strings.xml
similarity index 90%
rename from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
rename to themes/overlays/AccentColorOrangeOverlay/res/values/strings.xml
index b3abb84..d8647f6 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/AccentColorOrangeOverlay/res/values/strings.xml
@@ -18,6 +18,6 @@
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
+    <string name="accent_color_orange" translatable="false">Orange</string>
 </resources>
 
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/AccentColorPurpleOverlay/Android.mk
similarity index 89%
rename from themes/overlays/PrimaryColorDeepBlue/Android.mk
rename to themes/overlays/AccentColorPurpleOverlay/Android.mk
index e5a0146..29d5fc9 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/AccentColorPurpleOverlay/Android.mk
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := AccentColorPurple
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := AccentColorPurpleOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorRedDevilOverlay/AndroidManifest.xml b/themes/overlays/AccentColorPurpleOverlay/AndroidManifest.xml
similarity index 86%
rename from themes/overlays/AccentColorRedDevilOverlay/AndroidManifest.xml
rename to themes/overlays/AccentColorPurpleOverlay/AndroidManifest.xml
index 7957840..32ce809 100644
--- a/themes/overlays/AccentColorRedDevilOverlay/AndroidManifest.xml
+++ b/themes/overlays/AccentColorPurpleOverlay/AndroidManifest.xml
@@ -16,10 +16,10 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.reddevil"
+          package="com.android.theme.color.accent.purple"
           android:versionCode="1"
           android:versionName="1.0">
     <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
 
-    <application android:label="@string/accent_color_red_devil" android:hasCode="false"/>
+    <application android:label="@string/accent_color_purple" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/AccentColorPurpleOverlay/res/values/colors.xml b/themes/overlays/AccentColorPurpleOverlay/res/values/colors.xml
new file mode 100644
index 0000000..16fc09d
--- /dev/null
+++ b/themes/overlays/AccentColorPurpleOverlay/res/values/colors.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources>    
+    <color name="system_accent1_0">#ffffff</color>
+    <color name="system_accent1_10">#a020f0</color>
+    <color name="system_accent1_50">#a020f0</color>
+    <color name="system_accent1_100">#a020f0</color>
+    <color name="system_accent1_200">#a020f0</color>
+    <color name="system_accent1_300">#a020f0</color>
+    <color name="system_accent1_400">#a020f0</color>
+    <color name="system_accent1_500">#a020f0</color>
+    <color name="system_accent1_600">#a020f0</color>
+    <color name="system_accent1_700">#a020f0</color>
+    <color name="system_accent1_800">#a020f0</color>
+    <color name="system_accent1_900">#a020f0</color>
+    <color name="system_accent1_1000">#000000</color>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/AccentColorPurpleOverlay/res/values/strings.xml
similarity index 90%
copy from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
copy to themes/overlays/AccentColorPurpleOverlay/res/values/strings.xml
index b3abb84..2afcc2d 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/AccentColorPurpleOverlay/res/values/strings.xml
@@ -18,6 +18,6 @@
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
+    <string name="accent_color_purple" translatable="false">Purple</string>
 </resources>
 
diff --git a/themes/overlays/AccentColorRedDevilOverlay/Android.mk b/themes/overlays/AccentColorRedDevilOverlay/Android.mk
deleted file mode 100644
index c5e6587..0000000
--- a/themes/overlays/AccentColorRedDevilOverlay/Android.mk
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-#  Copyright 2018, The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_RRO_THEME := AccentColorRedDevil
-
-LOCAL_PRODUCT_MODULE := true
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := AccentColorRedDevilOverlay
-LOCAL_SDK_VERSION := current
-
-include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorRedDevilOverlay/res/values/colors_device_defaults.xml b/themes/overlays/AccentColorRedDevilOverlay/res/values/colors_device_defaults.xml
deleted file mode 100644
index 4b7568d..0000000
--- a/themes/overlays/AccentColorRedDevilOverlay/res/values/colors_device_defaults.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources>
-    <color name="accent_device_default_light">#ffe0141b</color>
-    <color name="accent_device_default_dark">#ffe5141b</color>
-</resources>
diff --git a/themes/overlays/AccentColorRedDevilOverlay/res/values/strings.xml b/themes/overlays/AccentColorRedDevilOverlay/res/values/strings.xml
deleted file mode 100644
index 43b2da4..0000000
--- a/themes/overlays/AccentColorRedDevilOverlay/res/values/strings.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_red_devil" translatable="false">Red Devil</string>
-</resources>
-
diff --git a/themes/overlays/AccentColorSluttyPinkOverlay/AndroidManifest.xml b/themes/overlays/AccentColorSluttyPinkOverlay/AndroidManifest.xml
index 808f9a1..fb9e529 100644
--- a/themes/overlays/AccentColorSluttyPinkOverlay/AndroidManifest.xml
+++ b/themes/overlays/AccentColorSluttyPinkOverlay/AndroidManifest.xml
@@ -16,7 +16,7 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.slut"
+          package="com.android.theme.color.accent.slut"
           android:versionCode="1"
           android:versionName="1.0">
     <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
diff --git a/themes/overlays/AccentColorSluttyPinkOverlay/res/values/colors.xml b/themes/overlays/AccentColorSluttyPinkOverlay/res/values/colors.xml
new file mode 100644
index 0000000..61c4854
--- /dev/null
+++ b/themes/overlays/AccentColorSluttyPinkOverlay/res/values/colors.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources>
+    <color name="system_accent1_0">#ffffff</color>
+    <color name="system_accent1_10">#ff0052</color>
+    <color name="system_accent1_50">#ff0052</color>
+    <color name="system_accent1_100">#ff0052</color>
+    <color name="system_accent1_200">#ff0052</color>
+    <color name="system_accent1_300">#ff0052</color>
+    <color name="system_accent1_400">#ff0052</color>
+    <color name="system_accent1_500">#ff0052</color>
+    <color name="system_accent1_600">#ff0052</color>
+    <color name="system_accent1_700">#ff0052</color>
+    <color name="system_accent1_800">#ff0052</color>
+    <color name="system_accent1_900">#ff0052</color>
+    <color name="system_accent1_1000">#000000</color>
+</resources>
diff --git a/themes/overlays/AccentColorSluttyPinkOverlay/res/values/colors_device_defaults.xml b/themes/overlays/AccentColorSluttyPinkOverlay/res/values/colors_device_defaults.xml
deleted file mode 100644
index 94b3761..0000000
--- a/themes/overlays/AccentColorSluttyPinkOverlay/res/values/colors_device_defaults.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources>
-    <color name="accent_device_default_light">#ffff005a</color>
-    <color name="accent_device_default_dark">#ffe50051</color>
-</resources>
diff --git a/themes/overlays/Android.mk b/themes/overlays/Android.mk
index 8d685d4..194100f 100644
--- a/themes/overlays/Android.mk
+++ b/themes/overlays/Android.mk
@@ -18,20 +18,23 @@
 LOCAL_MODULE := omni-overlays
 LOCAL_REQUIRED_MODULES := \
 	AccentColorSluttyPinkOverlay \
-	AccentColorBlueMondayOverlay \
 	AccentColorOmniOverlay \
-	AccentColorGoldenShowerOverlay \
-	AccentColorRedDevilOverlay \
-	FontLatoSourceOverlay \
-	FontMuliSourceOverlay \
-	EmptyProductOverlay \
-	IconShapeCircleOverlay
+	AccentColorPurpleOverlay \
+	AccentColorOrangeOverlay
 
 LOCAL_REQUIRED_MODULES += \
-	PrimaryColorOmniBlackOverlay \
+	EmptyProductOverlay
+
+LOCAL_REQUIRED_MODULES += \
+	IconShapeCircleOverlay \
+	IconShapeSquareOverlay \
+	IconShapeSquircleOverlay \
+	IconShapeTeardropOverlay \
+	IconShapePebbleOverlay
+
+LOCAL_REQUIRED_MODULES += \
 	PrimaryColorDarkBlueOverlay \
-	PrimaryColorDeepBlueOverlay \
-	PrimaryColorDarkGreenOverlay
+	PrimaryColorDarkGrayOverlay
 
 include $(BUILD_PHONY_PACKAGE)
 include $(CLEAR_VARS)
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/IconShapePebbleOverlay/Android.mk
similarity index 83%
copy from themes/overlays/PrimaryColorDeepBlue/Android.mk
copy to themes/overlays/IconShapePebbleOverlay/Android.mk
index e5a0146..c163bb9 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/IconShapePebbleOverlay/Android.mk
@@ -1,5 +1,5 @@
 #
-#  Copyright 2018, The Android Open Source Project
+#  Copyright 2020, The Android Open Source Project
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := IconShapePebble
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := IconShapePebbleOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml b/themes/overlays/IconShapePebbleOverlay/AndroidManifest.xml
similarity index 61%
copy from themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
copy to themes/overlays/IconShapePebbleOverlay/AndroidManifest.xml
index 35592f4..d719a97 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
+++ b/themes/overlays/IconShapePebbleOverlay/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <!--
 /**
- * Copyright (c) 2018, The Android Open Source Project
+ * Copyright (c) 2020, The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -16,10 +16,13 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.bluemonday"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
+    package="com.android.theme.icon.pebble"
+    android:versionCode="1"
+    android:versionName="1.0">
+<overlay
+        android:targetPackage="android"
+        android:category="android.theme.customization.adaptive_icon_shape"
+        android:priority="1"/>
 
-    <application android:label="@string/accent_color_blue_monday" android:hasCode="false"/>
+    <application android:label="@string/icon_shape_pebble_overlay" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/IconShapePebbleOverlay/res/values/config.xml b/themes/overlays/IconShapePebbleOverlay/res/values/config.xml
new file mode 100644
index 0000000..8d63328
--- /dev/null
+++ b/themes/overlays/IconShapePebbleOverlay/res/values/config.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2019, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Specifies the path that is used by AdaptiveIconDrawable class to crop launcher icons. -->
+    <string name="config_icon_mask" translatable="false">"MM55,0 C25,0 0,25 0,50 0,78 28,100 55,100 85,100 100,85 100,58 100,30 86,0 55,0 Z"</string>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/IconShapePebbleOverlay/res/values/strings.xml
similarity index 76%
copy from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
copy to themes/overlays/IconShapePebbleOverlay/res/values/strings.xml
index b3abb84..aec4a82 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/IconShapePebbleOverlay/res/values/strings.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
 /**
- * Copyright (c) 2018, The Android Open Source Project
+ * Copyright (c) 2019, The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -17,7 +17,7 @@
  */
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
-</resources>
+    <!-- Heart icon overlay -->
+    <string name="icon_shape_pebble_overlay" translatable="false">Pebble</string>
 
+</resources>
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/IconShapeRoundedRectOverlay/Android.mk
similarity index 89%
copy from themes/overlays/PrimaryColorDeepBlue/Android.mk
copy to themes/overlays/IconShapeRoundedRectOverlay/Android.mk
index e5a0146..c6f00d1 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/IconShapeRoundedRectOverlay/Android.mk
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := IconShapeRoundedRect
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := IconShapeRoundedRectOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml b/themes/overlays/IconShapeRoundedRectOverlay/AndroidManifest.xml
similarity index 66%
copy from themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
copy to themes/overlays/IconShapeRoundedRectOverlay/AndroidManifest.xml
index 35592f4..39c082b 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
+++ b/themes/overlays/IconShapeRoundedRectOverlay/AndroidManifest.xml
@@ -16,10 +16,12 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.bluemonday"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
+    package="com.android.theme.icon.roundedrect"
+    android:versionCode="1"
+    android:versionName="1.0">
+    <overlay android:targetPackage="android"
+        android:category="android.theme.customization.adaptive_icon_shape"
+        android:priority="1"/>
 
-    <application android:label="@string/accent_color_blue_monday" android:hasCode="false"/>
+    <application android:label="@string/icon_shape_roundedrect_overlay" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/IconShapeRoundedRectOverlay/res/values/config.xml b/themes/overlays/IconShapeRoundedRectOverlay/res/values/config.xml
new file mode 100644
index 0000000..98c85a0
--- /dev/null
+++ b/themes/overlays/IconShapeRoundedRectOverlay/res/values/config.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2018, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Specifies the path that is used by AdaptiveIconDrawable class to crop launcher icons. -->
+    <string name="config_icon_mask" translatable="false">"M50,0L88,0 C94.4,0 100,5.4 100 12 L100,88 C100,94.6 94.6 100 88 100 L12,100 C5.4,100 0,94.6 0,88 L0 12 C0 5.4 5.4 0 12 0 L50,0 Z"</string>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/IconShapeRoundedRectOverlay/res/values/strings.xml
similarity index 82%
copy from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
copy to themes/overlays/IconShapeRoundedRectOverlay/res/values/strings.xml
index b3abb84..3c4c24d 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/IconShapeRoundedRectOverlay/res/values/strings.xml
@@ -17,7 +17,7 @@
  */
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
-</resources>
+    <!-- Rounded corner rectangle overlay -->
+    <string name="icon_shape_roundedrect_overlay" translatable="false">Rounded Rectangle</string>
 
+</resources>
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/IconShapeSquareOverlay/Android.mk
similarity index 89%
copy from themes/overlays/PrimaryColorDeepBlue/Android.mk
copy to themes/overlays/IconShapeSquareOverlay/Android.mk
index e5a0146..6020721 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/IconShapeSquareOverlay/Android.mk
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := IconShapeSquare
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := IconShapeSquareOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml b/themes/overlays/IconShapeSquareOverlay/AndroidManifest.xml
similarity index 67%
rename from themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
rename to themes/overlays/IconShapeSquareOverlay/AndroidManifest.xml
index 35592f4..235fdeb 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
+++ b/themes/overlays/IconShapeSquareOverlay/AndroidManifest.xml
@@ -16,10 +16,12 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.bluemonday"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
+    package="com.android.theme.icon.square"
+    android:versionCode="1"
+    android:versionName="1.0">
+    <overlay android:targetPackage="android"
+        android:category="android.theme.customization.adaptive_icon_shape"
+        android:priority="1"/>
 
-    <application android:label="@string/accent_color_blue_monday" android:hasCode="false"/>
+    <application android:label="@string/icon_shape_square_overlay" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/IconShapeSquareOverlay/res/values/config.xml b/themes/overlays/IconShapeSquareOverlay/res/values/config.xml
new file mode 100644
index 0000000..ef034a2
--- /dev/null
+++ b/themes/overlays/IconShapeSquareOverlay/res/values/config.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2018, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Specifies the path that is used by AdaptiveIconDrawable class to crop launcher icons. -->
+    <string name="config_icon_mask" translatable="false">"M50,0L100,0 100,100 0,100 0,0z"</string>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/IconShapeSquareOverlay/res/values/strings.xml
similarity index 82%
copy from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
copy to themes/overlays/IconShapeSquareOverlay/res/values/strings.xml
index b3abb84..5772165 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/IconShapeSquareOverlay/res/values/strings.xml
@@ -17,7 +17,7 @@
  */
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
-</resources>
+    <!-- Square icon overlay -->
+    <string name="icon_shape_square_overlay" translatable="false">Square</string>
 
+</resources>
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/IconShapeSquircleOverlay/Android.mk
similarity index 89%
copy from themes/overlays/PrimaryColorDeepBlue/Android.mk
copy to themes/overlays/IconShapeSquircleOverlay/Android.mk
index e5a0146..04409a5 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/IconShapeSquircleOverlay/Android.mk
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := IconShapeSquircle
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := IconShapeSquircleOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml b/themes/overlays/IconShapeSquircleOverlay/AndroidManifest.xml
similarity index 66%
copy from themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
copy to themes/overlays/IconShapeSquircleOverlay/AndroidManifest.xml
index 35592f4..ca618e4 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
+++ b/themes/overlays/IconShapeSquircleOverlay/AndroidManifest.xml
@@ -16,10 +16,12 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.bluemonday"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
+    package="com.android.theme.icon.squircle"
+    android:versionCode="1"
+    android:versionName="1.0">
+    <overlay android:targetPackage="android"
+        android:category="android.theme.customization.adaptive_icon_shape"
+        android:priority="1"/>
 
-    <application android:label="@string/accent_color_blue_monday" android:hasCode="false"/>
+    <application android:label="@string/icon_shape_squircle_overlay" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/IconShapeSquircleOverlay/res/values/config.xml b/themes/overlays/IconShapeSquircleOverlay/res/values/config.xml
new file mode 100644
index 0000000..a0954d8
--- /dev/null
+++ b/themes/overlays/IconShapeSquircleOverlay/res/values/config.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2018, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Specifies the path that is used by AdaptiveIconDrawable class to crop launcher icons. -->
+    <string name="config_icon_mask" translatable="false">"M50,0 C10,0 0,10 0,50 0,90 10,100 50,100 90,100 100,90 100,50 100,10 90,0 50,0 Z"</string>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/IconShapeSquircleOverlay/res/values/strings.xml
similarity index 82%
copy from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
copy to themes/overlays/IconShapeSquircleOverlay/res/values/strings.xml
index b3abb84..028eccb 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/IconShapeSquircleOverlay/res/values/strings.xml
@@ -17,7 +17,7 @@
  */
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
-</resources>
+    <!-- Squircle icon shape overlay -->
+    <string name="icon_shape_squircle_overlay" translatable="false">Squircle</string>
 
+</resources>
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/IconShapeTeardropOverlay/Android.mk
similarity index 89%
copy from themes/overlays/PrimaryColorDeepBlue/Android.mk
copy to themes/overlays/IconShapeTeardropOverlay/Android.mk
index e5a0146..b127dea 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/IconShapeTeardropOverlay/Android.mk
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := IconShapeTeardrop
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := IconShapeTeardropOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml b/themes/overlays/IconShapeTeardropOverlay/AndroidManifest.xml
similarity index 66%
copy from themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
copy to themes/overlays/IconShapeTeardropOverlay/AndroidManifest.xml
index 35592f4..b7d5ecb 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/AndroidManifest.xml
+++ b/themes/overlays/IconShapeTeardropOverlay/AndroidManifest.xml
@@ -16,10 +16,12 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.bluemonday"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.accent_color" android:priority="1"/>
+    package="com.android.theme.icon.teardrop"
+    android:versionCode="1"
+    android:versionName="1.0">
+    <overlay android:targetPackage="android"
+        android:category="android.theme.customization.adaptive_icon_shape"
+        android:priority="1"/>
 
-    <application android:label="@string/accent_color_blue_monday" android:hasCode="false"/>
+    <application android:label="@string/icon_shape_teardrop_overlay" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/IconShapeTeardropOverlay/res/values/config.xml b/themes/overlays/IconShapeTeardropOverlay/res/values/config.xml
new file mode 100644
index 0000000..5bfa940
--- /dev/null
+++ b/themes/overlays/IconShapeTeardropOverlay/res/values/config.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+** Copyright 2018, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Specifies the path that is used by AdaptiveIconDrawable class to crop launcher icons. -->
+    <string name="config_icon_mask" translatable="false">"M50,0 C77.6,0 100,22.4 100,50 L100,88 C100,94.6 94.6,100 88,100 L50,100 C22.4 100 0 77.6 0 50C0 22.4 22.4 0 50 0 Z"</string>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/IconShapeTeardropOverlay/res/values/strings.xml
similarity index 82%
copy from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
copy to themes/overlays/IconShapeTeardropOverlay/res/values/strings.xml
index b3abb84..db9fa98 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/IconShapeTeardropOverlay/res/values/strings.xml
@@ -17,7 +17,7 @@
  */
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
-</resources>
+    <!-- Teardrop icon overlay -->
+    <string name="icon_shape_teardrop_overlay" translatable="false">Teardrop</string>
 
+</resources>
diff --git a/themes/overlays/PrimaryColorDarkBlue/AndroidManifest.xml b/themes/overlays/PrimaryColorDarkBlue/AndroidManifest.xml
index 80efa71..98217d7 100644
--- a/themes/overlays/PrimaryColorDarkBlue/AndroidManifest.xml
+++ b/themes/overlays/PrimaryColorDarkBlue/AndroidManifest.xml
@@ -19,7 +19,7 @@
           package="com.android.theme.color.primary.darkblue"
           android:versionCode="1"
           android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.primary_color" android:priority="2"/>
+    <overlay android:targetPackage="android" android:category="android.theme.customization.system_palette" android:priority="1"/>
 
     <application android:label="@string/primary_color_dark_blue" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/PrimaryColorDarkBlue/res/values-night/colors.xml b/themes/overlays/PrimaryColorDarkBlue/res/values-night/colors.xml
deleted file mode 100644
index c9456d9..0000000
--- a/themes/overlays/PrimaryColorDarkBlue/res/values-night/colors.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
-<resources>
-    <color name="primary_device_default_settings">#182a33</color> <!-- colorPrimary -->
-    <color name="primary_dark_device_default_settings">#0d2029</color> <!-- colorPrimaryDark-->
-    <color name="material_grey_800">#1b2e38</color> <!-- google elgoogleogoelo -->
-    <color name="material_grey_900">#182a33</color> <!-- google elgoogleogoelo -->
-    <color name="primary_device_default">@color/primary_dark_device_default_settings</color> <!-- only for ThemePicker! -->
-</resources>
-
diff --git a/themes/overlays/PrimaryColorDarkBlue/res/values/colors.xml b/themes/overlays/PrimaryColorDarkBlue/res/values/colors.xml
index 5f47403..aac87a6 100644
--- a/themes/overlays/PrimaryColorDarkBlue/res/values/colors.xml
+++ b/themes/overlays/PrimaryColorDarkBlue/res/values/colors.xml
@@ -1,22 +1,27 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
 
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
 <resources>
-    <color name="primary_device_default">@*android:color/primary_device_default_settings_light</color> <!-- only for ThemePicker! -->
-</resources>
 
+    <color name="system_neutral1_50">#e7ebff</color>
+    <color name="system_neutral1_100">#c4d1e9</color>
+    <color name="system_neutral1_200">#a5b1ce</color>
+    <color name="system_neutral1_300">#8492b3</color>
+    <color name="system_neutral1_400">#6d7c9f</color>
+    <color name="system_neutral1_500">#55678c</color>
+    <color name="system_neutral1_600">#47597b</color>
+    <color name="system_neutral1_700">#374765</color>
+    <color name="system_neutral1_800">#1b2b47</color>
+    <color name="system_neutral1_900">#152238</color>
+
+    <color name="system_neutral2_50">#e7ebff</color>
+    <color name="system_neutral2_100">#c4d1e9</color>
+    <color name="system_neutral2_200">#a5b1ce</color>
+    <color name="system_neutral2_300">#8492b3</color>
+    <color name="system_neutral2_400">#6d7c9f</color>
+    <color name="system_neutral2_500">#55678c</color>
+    <color name="system_neutral2_600">#47597b</color>
+    <color name="system_neutral2_700">#374765</color>
+    <color name="system_neutral2_800">#1b2b47</color>
+    <color name="system_neutral2_900">#152238</color>
+
+</resources>
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/PrimaryColorDarkGray/Android.mk
similarity index 89%
copy from themes/overlays/PrimaryColorDeepBlue/Android.mk
copy to themes/overlays/PrimaryColorDarkGray/Android.mk
index e5a0146..6fa7ecc 100644
--- a/themes/overlays/PrimaryColorDeepBlue/Android.mk
+++ b/themes/overlays/PrimaryColorDarkGray/Android.mk
@@ -17,13 +17,13 @@
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
-LOCAL_RRO_THEME := PrimaryColorDeepBlue
+LOCAL_RRO_THEME := PrimaryColorDarkGray
 
 LOCAL_PRODUCT_MODULE := true
 
 LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
 
-LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_PACKAGE_NAME := PrimaryColorDarkGrayOverlay
 LOCAL_SDK_VERSION := current
 
 include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/PrimaryColorDeepBlue/AndroidManifest.xml b/themes/overlays/PrimaryColorDarkGray/AndroidManifest.xml
similarity index 81%
rename from themes/overlays/PrimaryColorDeepBlue/AndroidManifest.xml
rename to themes/overlays/PrimaryColorDarkGray/AndroidManifest.xml
index 1c6c36d..8a70a84 100644
--- a/themes/overlays/PrimaryColorDeepBlue/AndroidManifest.xml
+++ b/themes/overlays/PrimaryColorDarkGray/AndroidManifest.xml
@@ -16,10 +16,10 @@
  */
 -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.primary.deepblue"
+          package="com.android.theme.color.primary.darkgray"
           android:versionCode="1"
           android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.primary_color" android:priority="2"/>
+    <overlay android:targetPackage="android" android:category="android.theme.customization.system_palette" android:priority="1"/>
 
-    <application android:label="@string/primary_color_deep_blue" android:hasCode="false"/>
+    <application android:label="@string/primary_color_dark_gray" android:hasCode="false"/>
 </manifest>
diff --git a/themes/overlays/PrimaryColorDarkGray/res/values/colors.xml b/themes/overlays/PrimaryColorDarkGray/res/values/colors.xml
new file mode 100644
index 0000000..dd636c3
--- /dev/null
+++ b/themes/overlays/PrimaryColorDarkGray/res/values/colors.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<resources>
+    <color name="system_neutral1_50">#d1d1d3</color>
+    <color name="system_neutral1_100">#aaaaad</color>
+    <color name="system_neutral1_200">#8e8e92</color>
+    <color name="system_neutral1_300">#6a6a6e</color>
+    <color name="system_neutral1_400">#5b5b5f</color>
+    <color name="system_neutral1_500">#4c4c4f</color>
+    <color name="system_neutral1_600">#3d3d3f</color>
+    <color name="system_neutral1_700">#2e2e30</color>
+    <color name="system_neutral1_800">#1f1f20</color>
+    <color name="system_neutral1_900">#101011</color>
+    
+    <color name="system_neutral2_50">#d1d1d3</color>
+    <color name="system_neutral2_100">#aaaaad</color>
+    <color name="system_neutral2_200">#8e8e92</color>
+    <color name="system_neutral2_300">#6a6a6e</color>
+    <color name="system_neutral2_400">#5b5b5f</color>
+    <color name="system_neutral2_500">#4c4c4f</color>
+    <color name="system_neutral2_600">#3d3d3f</color>
+    <color name="system_neutral2_700">#2e2e30</color>
+    <color name="system_neutral2_800">#1f1f20</color>
+    <color name="system_neutral2_900">#101011</color>
+</resources>
diff --git a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml b/themes/overlays/PrimaryColorDarkGray/res/values/strings.xml
similarity index 90%
copy from themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
copy to themes/overlays/PrimaryColorDarkGray/res/values/strings.xml
index b3abb84..d87925e 100644
--- a/themes/overlays/AccentColorBlueMondayOverlay/res/values/strings.xml
+++ b/themes/overlays/PrimaryColorDarkGray/res/values/strings.xml
@@ -18,6 +18,6 @@
 -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="accent_color_blue_monday" translatable="false">Blue Monday</string>
+    <string name="primary_color_dark_gray" translatable="false">Dark Gray</string>
 </resources>
 
diff --git a/themes/overlays/PrimaryColorDarkGreen/Android.mk b/themes/overlays/PrimaryColorDarkGreen/Android.mk
deleted file mode 100644
index 7901fed..0000000
--- a/themes/overlays/PrimaryColorDarkGreen/Android.mk
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-#  Copyright 2018, The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_RRO_THEME := PrimaryColorDarkGreen
-
-LOCAL_PRODUCT_MODULE := true
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := PrimaryColorDarkGreenOverlay
-LOCAL_SDK_VERSION := current
-
-include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/PrimaryColorDarkGreen/AndroidManifest.xml b/themes/overlays/PrimaryColorDarkGreen/AndroidManifest.xml
deleted file mode 100644
index 3ea7887..0000000
--- a/themes/overlays/PrimaryColorDarkGreen/AndroidManifest.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.primary.darkgreen"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.primary_color" android:priority="2"/>
-
-    <application android:label="@string/primary_color_dark_green" android:hasCode="false"/>
-</manifest>
diff --git a/themes/overlays/PrimaryColorDarkGreen/res/values-night/colors.xml b/themes/overlays/PrimaryColorDarkGreen/res/values-night/colors.xml
deleted file mode 100644
index a7b7e18..0000000
--- a/themes/overlays/PrimaryColorDarkGreen/res/values-night/colors.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
-<resources>
-    <color name="primary_device_default_settings">#082912</color> <!-- colorPrimary -->
-    <color name="primary_dark_device_default_settings">#07230f</color> <!-- colorPrimaryDark-->
-    <color name="material_grey_800">#092e14</color> <!-- google elgoogleogoelo -->
-    <color name="material_grey_900">#082912</color> <!-- google elgoogleogoelo -->
-    <color name="primary_device_default">@color/primary_dark_device_default_settings</color> <!-- only for ThemePicker! -->
-</resources>
-
diff --git a/themes/overlays/PrimaryColorDarkGreen/res/values/colors.xml b/themes/overlays/PrimaryColorDarkGreen/res/values/colors.xml
deleted file mode 100644
index 5f47403..0000000
--- a/themes/overlays/PrimaryColorDarkGreen/res/values/colors.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
-<resources>
-    <color name="primary_device_default">@*android:color/primary_device_default_settings_light</color> <!-- only for ThemePicker! -->
-</resources>
-
diff --git a/themes/overlays/PrimaryColorDarkGreen/res/values/strings.xml b/themes/overlays/PrimaryColorDarkGreen/res/values/strings.xml
deleted file mode 100644
index 68fa4d9..0000000
--- a/themes/overlays/PrimaryColorDarkGreen/res/values/strings.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="primary_color_dark_green" translatable="false">Dark Green</string>
-</resources>
-
diff --git a/themes/overlays/PrimaryColorDeepBlue/res/values-night/colors.xml b/themes/overlays/PrimaryColorDeepBlue/res/values-night/colors.xml
deleted file mode 100644
index e65c2c1..0000000
--- a/themes/overlays/PrimaryColorDeepBlue/res/values-night/colors.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
-<resources>
-    <color name="primary_device_default_settings">#152238</color> <!-- colorPrimary -->
-    <color name="primary_dark_device_default_settings">#0f1929</color> <!-- colorPrimaryDark-->
-    <color name="material_grey_800">#1b2b47</color> <!-- google elgoogleogoelo -->
-    <color name="material_grey_900">#152238</color> <!-- google elgoogleogoelo -->
-    <color name="primary_device_default">@color/primary_dark_device_default_settings</color> <!-- only for ThemePicker! -->
-</resources>
-
diff --git a/themes/overlays/PrimaryColorDeepBlue/res/values/colors.xml b/themes/overlays/PrimaryColorDeepBlue/res/values/colors.xml
deleted file mode 100644
index 5f47403..0000000
--- a/themes/overlays/PrimaryColorDeepBlue/res/values/colors.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
-<resources>
-    <color name="primary_device_default">@*android:color/primary_device_default_settings_light</color> <!-- only for ThemePicker! -->
-</resources>
-
diff --git a/themes/overlays/PrimaryColorDeepBlue/res/values/strings.xml b/themes/overlays/PrimaryColorDeepBlue/res/values/strings.xml
deleted file mode 100644
index 412c52d..0000000
--- a/themes/overlays/PrimaryColorDeepBlue/res/values/strings.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="primary_color_deep_blue" translatable="false">Deep Blue</string>
-</resources>
-
diff --git a/themes/overlays/PrimaryColorOmniBlack/Android.mk b/themes/overlays/PrimaryColorOmniBlack/Android.mk
deleted file mode 100644
index a5bf351..0000000
--- a/themes/overlays/PrimaryColorOmniBlack/Android.mk
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-#  Copyright 2018, The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-LOCAL_PATH:= $(call my-dir)
-include $(CLEAR_VARS)
-
-LOCAL_RRO_THEME := PrimaryColorOmniBlack
-
-LOCAL_SRC_FILES := $(call all-subdir-java-files)
-
-LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
-
-LOCAL_PACKAGE_NAME := PrimaryColorOmniBlackOverlay
-LOCAL_SDK_VERSION := current
-
-include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/PrimaryColorOmniBlack/AndroidManifest.xml b/themes/overlays/PrimaryColorOmniBlack/AndroidManifest.xml
deleted file mode 100644
index 2608f53..0000000
--- a/themes/overlays/PrimaryColorOmniBlack/AndroidManifest.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-          package="com.android.theme.color.primary.omniblack"
-          android:versionCode="1"
-          android:versionName="1.0">
-    <overlay android:targetPackage="android" android:category="android.theme.customization.primary_color" android:priority="2"/>
-
-    <application android:label="@string/primary_color_omni_black" android:hasCode="false"/>
-</manifest>
diff --git a/themes/overlays/PrimaryColorOmniBlack/res/values-night/colors.xml b/themes/overlays/PrimaryColorOmniBlack/res/values-night/colors.xml
deleted file mode 100644
index 35ff157..0000000
--- a/themes/overlays/PrimaryColorOmniBlack/res/values-night/colors.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
-<resources>
-    <color name="primary_device_default_settings">#101010</color> <!-- colorPrimary -->
-    <color name="primary_dark_device_default_settings">#000000</color> <!-- colorPrimaryDark-->
-    <color name="material_grey_800">#121212</color> <!-- google elgoogleogoelo -->
-    <color name="material_grey_900">#101010</color> <!-- google elgoogleogoelo -->
-    <color name="primary_device_default">@color/primary_dark_device_default_settings</color> <!-- only for ThemePicker! -->
-</resources>
-
diff --git a/themes/overlays/PrimaryColorOmniBlack/res/values/colors.xml b/themes/overlays/PrimaryColorOmniBlack/res/values/colors.xml
deleted file mode 100644
index 5f47403..0000000
--- a/themes/overlays/PrimaryColorOmniBlack/res/values/colors.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<!-- Colors specific to DeviceDefault themes. These are mostly pass-throughs to enable
-     overlaying new theme colors. -->
-<resources>
-    <color name="primary_device_default">@*android:color/primary_device_default_settings_light</color> <!-- only for ThemePicker! -->
-</resources>
-
diff --git a/themes/overlays/PrimaryColorOmniBlack/res/values/strings.xml b/themes/overlays/PrimaryColorOmniBlack/res/values/strings.xml
deleted file mode 100644
index 46960be..0000000
--- a/themes/overlays/PrimaryColorOmniBlack/res/values/strings.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/**
- * Copyright (c) 2018, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
--->
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- Purple accent color name application label. [CHAR LIMIT=50] -->
-    <string name="primary_color_omni_black" translatable="false">Omni Black</string>
-</resources>
-
