diff --git a/config/common.mk b/config/common.mk
index 71396c1..351fc52 100644
--- a/config/common.mk
+++ b/config/common.mk
@@ -102,6 +102,9 @@
 OMNI_PRODUCT_PROPERTIES += \
     ro.services.whitelist.packagelist=com.google.android.gms
 
+PRODUCT_COPY_FILES += \
+    vendor/omni/prebuilt/etc/fonts_customization.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/fonts_customization.xml
+
 # Additional packages
 -include vendor/omni/config/packages.mk
 
diff --git a/config/packages.mk b/config/packages.mk
index 13f7e21..9d13fd1 100644
--- a/config/packages.mk
+++ b/config/packages.mk
@@ -74,3 +74,6 @@
 PRODUCT_PACKAGES_ENG += \
     bash \
     su
+
+$(call inherit-product-if-exists, external/google-fonts/lato/fonts.mk)
+$(call inherit-product-if-exists, vendor/omni/prebuilt/fonts/fonts.mk)
diff --git a/prebuilt/etc/fonts_customization.xml b/prebuilt/etc/fonts_customization.xml
new file mode 100644
index 0000000..7432a61
--- /dev/null
+++ b/prebuilt/etc/fonts_customization.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<fonts-modification>
+    <family name="lato" customizationType="new-named-family">
+        <font weight="400" style="normal">Lato-Regular.ttf</font>
+        <font weight="400" style="italic">Lato-Italic.ttf</font>
+        <font weight="500" style="normal">Lato-Medium.ttf</font>
+        <font weight="500" style="italic">Lato-MediumItalic.ttf</font>
+        <font weight="700" style="normal">Lato-Bold.ttf</font>
+        <font weight="700" style="italic">Lato-BoldItalic.ttf</font>
+    </family>
+    <alias name="lato-semi-bold" to="lato" weight="500" />
+    <alias name="lato-bold" to="lato" weight="700" />
+    <family name="muli" customizationType="new-named-family">
+        <font weight="400" style="normal">Muli-Regular.ttf</font>
+        <font weight="400" style="italic">Muli-Italic.ttf</font>
+        <font weight="500" style="normal">Muli-Medium.ttf</font>
+        <font weight="500" style="italic">Muli-MediumItalic.ttf</font>
+        <font weight="600" style="normal">Muli-SemiBold.ttf</font>
+        <font weight="600" style="italic">Muli-SemiBoldItalic.ttf</font>
+        <font weight="700" style="normal">Muli-Bold.ttf</font>
+        <font weight="700" style="italic">Muli-BoldItalic.ttf</font>
+    </family>
+    <alias name="muli-semi-bold" to="muli" weight="600" />
+    <alias name="muli-bold" to="muli" weight="700" />
+</fonts-modification>
diff --git a/prebuilt/fonts/Android.mk b/prebuilt/fonts/Android.mk
new file mode 100644
index 0000000..a8287c3
--- /dev/null
+++ b/prebuilt/fonts/Android.mk
@@ -0,0 +1,53 @@
+# 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.
+
+# We have to use BUILD_PREBUILT instead of PRODUCT_COPY_FIES,
+# to copy over the NOTICE file.
+
+LOCAL_PATH := $(call my-dir)
+
+ifneq ($(SMALLER_FONT_FOOTPRINT),true)
+
+include $(CLEAR_VARS)
+
+# Build the rest of font files as prebuilt.
+# $(1): The source file name in LOCAL_PATH.
+#       It also serves as the module name and the dest file name.
+define build-one-font-module
+$(eval include $(CLEAR_VARS))\
+$(eval LOCAL_MODULE := $(1))\
+$(eval LOCAL_SRC_FILES := $(1))\
+$(eval LOCAL_MODULE_CLASS := ETC)\
+$(eval LOCAL_MODULE_TAGS := optional)\
+$(eval LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT)/fonts)\
+$(eval LOCAL_PRODUCT_MODULE := true) \
+$(eval include $(BUILD_PREBUILT))
+endef
+
+font_src_files := \
+    Muli-Regular.ttf \
+    Muli-Italic.ttf \
+    Muli-Medium.ttf \
+    Muli-MediumItalic.ttf \
+    Muli-SemiBold.ttf \
+    Muli-SemiBoldItalic.ttf \
+    Muli-Bold.ttf \
+    Muli-BoldItalic.ttf
+
+$(foreach f, $(font_src_files), $(call build-one-font-module, $(f)))
+
+build-one-font-module :=
+font_src_files :=
+
+endif
diff --git a/prebuilt/fonts/Muli-Bold.ttf b/prebuilt/fonts/Muli-Bold.ttf
new file mode 100644
index 0000000..9383139
--- /dev/null
+++ b/prebuilt/fonts/Muli-Bold.ttf
Binary files differ
diff --git a/prebuilt/fonts/Muli-BoldItalic.ttf b/prebuilt/fonts/Muli-BoldItalic.ttf
new file mode 100644
index 0000000..111b746
--- /dev/null
+++ b/prebuilt/fonts/Muli-BoldItalic.ttf
Binary files differ
diff --git a/prebuilt/fonts/Muli-Italic.ttf b/prebuilt/fonts/Muli-Italic.ttf
new file mode 100644
index 0000000..207ab18
--- /dev/null
+++ b/prebuilt/fonts/Muli-Italic.ttf
Binary files differ
diff --git a/prebuilt/fonts/Muli-Medium.ttf b/prebuilt/fonts/Muli-Medium.ttf
new file mode 100644
index 0000000..f28c094
--- /dev/null
+++ b/prebuilt/fonts/Muli-Medium.ttf
Binary files differ
diff --git a/prebuilt/fonts/Muli-MediumItalic.ttf b/prebuilt/fonts/Muli-MediumItalic.ttf
new file mode 100644
index 0000000..06eb9ae
--- /dev/null
+++ b/prebuilt/fonts/Muli-MediumItalic.ttf
Binary files differ
diff --git a/prebuilt/fonts/Muli-Regular.ttf b/prebuilt/fonts/Muli-Regular.ttf
new file mode 100644
index 0000000..9776a3e
--- /dev/null
+++ b/prebuilt/fonts/Muli-Regular.ttf
Binary files differ
diff --git a/prebuilt/fonts/Muli-SemiBold.ttf b/prebuilt/fonts/Muli-SemiBold.ttf
new file mode 100644
index 0000000..86d5ecc
--- /dev/null
+++ b/prebuilt/fonts/Muli-SemiBold.ttf
Binary files differ
diff --git a/prebuilt/fonts/Muli-SemiBoldItalic.ttf b/prebuilt/fonts/Muli-SemiBoldItalic.ttf
new file mode 100644
index 0000000..6188913
--- /dev/null
+++ b/prebuilt/fonts/Muli-SemiBoldItalic.ttf
Binary files differ
diff --git a/prebuilt/fonts/fonts.mk b/prebuilt/fonts/fonts.mk
new file mode 100644
index 0000000..f7f508d
--- /dev/null
+++ b/prebuilt/fonts/fonts.mk
@@ -0,0 +1,27 @@
+# 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.
+
+# We have to use PRODUCT_PACKAGES (together with BUILD_PREBUILT) instead of
+# PRODUCT_COPY_FILES to install the font files, so that the NOTICE file can
+# get installed too.
+
+PRODUCT_PACKAGES := \
+    Muli-Regular.ttf \
+    Muli-Italic.ttf \
+    Muli-Medium.ttf \
+    Muli-MediumItalic.ttf \
+    Muli-SemiBold.ttf \
+    Muli-SemiBoldItalic.ttf \
+    Muli-Bold.ttf \
+    Muli-BoldItalic.ttf
diff --git a/themes/overlays/Android.mk b/themes/overlays/Android.mk
index 6e0a6d2..0eb3c82 100644
--- a/themes/overlays/Android.mk
+++ b/themes/overlays/Android.mk
@@ -23,7 +23,10 @@
 	AccentColorGoldenShowerOverlay \
 	PrimaryColorOmniBlackOverlay \
 	PrimaryColorDarkBlueOverlay \
-	AccentColorRedDevilOverlay
+	PrimaryColorDeepBlueOverlay \
+	AccentColorRedDevilOverlay \
+	FontLatoSourceOverlay \
+	FontMuliSourceOverlay	
 
 include $(BUILD_PHONY_PACKAGE)
 include $(CLEAR_VARS)
diff --git a/themes/overlays/FontLatoSourceOverlay/Android.mk b/themes/overlays/FontLatoSourceOverlay/Android.mk
new file mode 100644
index 0000000..7e18d1a
--- /dev/null
+++ b/themes/overlays/FontLatoSourceOverlay/Android.mk
@@ -0,0 +1,31 @@
+#
+#  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.
+#
+
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_RRO_THEME := FontLatoSource
+
+LOCAL_PRODUCT_MODULE := true
+
+LOCAL_SRC_FILES := $(call all-subdir-java-files)
+
+LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
+
+LOCAL_PACKAGE_NAME := FontLatoSourceOverlay
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/FontLatoSourceOverlay/AndroidManifest.xml b/themes/overlays/FontLatoSourceOverlay/AndroidManifest.xml
new file mode 100644
index 0000000..c2f7d24
--- /dev/null
+++ b/themes/overlays/FontLatoSourceOverlay/AndroidManifest.xml
@@ -0,0 +1,31 @@
+<!--
+/**
+ * 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.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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.font.latosource"
+    android:versionCode="1"
+    android:versionName="1.0">
+    <overlay android:targetPackage="android"
+        android:category="android.theme.customization.font"
+        android:priority="1"/>
+
+    <application android:label="@string/font_lato_source_overlay" android:hasCode="false">
+        <meta-data
+            android:name="android.theme.customization.REQUIRED_SYSTEM_FONTS"
+            android:value="lato,lato-semi-bold,lato-bold" />
+    </application>
+</manifest>
diff --git a/themes/overlays/FontLatoSourceOverlay/res/values/config.xml b/themes/overlays/FontLatoSourceOverlay/res/values/config.xml
new file mode 100644
index 0000000..9ec6a1c
--- /dev/null
+++ b/themes/overlays/FontLatoSourceOverlay/res/values/config.xml
@@ -0,0 +1,28 @@
+<!--
+/**
+ * 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.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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">
+     <!-- Name of a font family to use for body text. -->
+    <string name="config_bodyFontFamily" translatable="false">lato</string>
+    <!-- Name of a font family to use for medium body text. -->
+    <string name="config_bodyFontFamilyMedium" translatable="false">lato-semi-bold</string>
+    <!-- Name of a font family to use for headlines. If empty, falls back to platform default -->
+    <string name="config_headlineFontFamily" translatable="false">lato-bold</string>
+    <!-- Name of the font family used for system surfaces where the font should use medium weight -->
+    <string name="config_headlineFontFamilyMedium" translatable="false">lato-semi-bold</string>
+</resources>
+
diff --git a/themes/overlays/FontLatoSourceOverlay/res/values/strings.xml b/themes/overlays/FontLatoSourceOverlay/res/values/strings.xml
new file mode 100644
index 0000000..3089d24
--- /dev/null
+++ b/themes/overlays/FontLatoSourceOverlay/res/values/strings.xml
@@ -0,0 +1,21 @@
+<!--
+/**
+ * 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.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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">
+    <!-- Lato overlay -->
+    <string name="font_lato_source_overlay" translatable="false">Lato</string>
+</resources>
diff --git a/themes/overlays/FontMuliSourceOverlay/Android.mk b/themes/overlays/FontMuliSourceOverlay/Android.mk
new file mode 100644
index 0000000..80f375a
--- /dev/null
+++ b/themes/overlays/FontMuliSourceOverlay/Android.mk
@@ -0,0 +1,31 @@
+#
+#  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.
+#
+
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_RRO_THEME := FontMuliSource
+
+LOCAL_PRODUCT_MODULE := true
+
+LOCAL_SRC_FILES := $(call all-subdir-java-files)
+
+LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
+
+LOCAL_PACKAGE_NAME := FontMuliSourceOverlay
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/FontMuliSourceOverlay/AndroidManifest.xml b/themes/overlays/FontMuliSourceOverlay/AndroidManifest.xml
new file mode 100644
index 0000000..9fe0de2
--- /dev/null
+++ b/themes/overlays/FontMuliSourceOverlay/AndroidManifest.xml
@@ -0,0 +1,31 @@
+<!--
+/**
+ * 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.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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.font.mulisource"
+    android:versionCode="1"
+    android:versionName="1.0">
+    <overlay android:targetPackage="android"
+        android:category="android.theme.customization.font"
+        android:priority="1"/>
+
+    <application android:label="@string/font_muli_source_overlay" android:hasCode="false">
+        <meta-data
+            android:name="android.theme.customization.REQUIRED_SYSTEM_FONTS"
+            android:value="muli,muli-semi-bold,muli-bold" />
+    </application>
+</manifest>
diff --git a/themes/overlays/FontMuliSourceOverlay/res/values/config.xml b/themes/overlays/FontMuliSourceOverlay/res/values/config.xml
new file mode 100644
index 0000000..75a86dd
--- /dev/null
+++ b/themes/overlays/FontMuliSourceOverlay/res/values/config.xml
@@ -0,0 +1,28 @@
+<!--
+/**
+ * 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.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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">
+     <!-- Name of a font family to use for body text. -->
+    <string name="config_bodyFontFamily" translatable="false">muli</string>
+    <!-- Name of a font family to use for medium body text. -->
+    <string name="config_bodyFontFamilyMedium" translatable="false">muli-semi-bold</string>
+    <!-- Name of a font family to use for headlines. If empty, falls back to platform default -->
+    <string name="config_headlineFontFamily" translatable="false">muli-semi-bold</string>
+    <!-- Name of the font family used for system surfaces where the font should use medium weight -->
+    <string name="config_headlineFontFamilyMedium" translatable="false">muli-bold</string>
+</resources>
+
diff --git a/themes/overlays/FontMuliSourceOverlay/res/values/strings.xml b/themes/overlays/FontMuliSourceOverlay/res/values/strings.xml
new file mode 100644
index 0000000..de6ba15
--- /dev/null
+++ b/themes/overlays/FontMuliSourceOverlay/res/values/strings.xml
@@ -0,0 +1,21 @@
+<!--
+/**
+ * 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.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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">
+    <!-- Lato overlay -->
+    <string name="font_muli_source_overlay" translatable="false">Muli</string>
+</resources>
diff --git a/themes/overlays/PrimaryColorDeepBlue/Android.mk b/themes/overlays/PrimaryColorDeepBlue/Android.mk
new file mode 100644
index 0000000..2e77d08
--- /dev/null
+++ b/themes/overlays/PrimaryColorDeepBlue/Android.mk
@@ -0,0 +1,31 @@
+#
+#  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 := PrimaryColorDeepBlue
+
+LOCAL_PRODUCT_MODULE := true
+
+LOCAL_SRC_FILES := $(call all-subdir-java-files)
+
+LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res
+
+LOCAL_PACKAGE_NAME := PrimaryColorDeepBlueOverlay
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_RRO_PACKAGE)
diff --git a/themes/overlays/PrimaryColorDeepBlue/AndroidManifest.xml b/themes/overlays/PrimaryColorDeepBlue/AndroidManifest.xml
new file mode 100644
index 0000000..1c6c36d
--- /dev/null
+++ b/themes/overlays/PrimaryColorDeepBlue/AndroidManifest.xml
@@ -0,0 +1,25 @@
+<!--
+/**
+ * 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.deepblue"
+          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_deep_blue" android:hasCode="false"/>
+</manifest>
diff --git a/themes/overlays/PrimaryColorDeepBlue/res/values-night/colors.xml b/themes/overlays/PrimaryColorDeepBlue/res/values-night/colors.xml
new file mode 100644
index 0000000..e65c2c1
--- /dev/null
+++ b/themes/overlays/PrimaryColorDeepBlue/res/values-night/colors.xml
@@ -0,0 +1,26 @@
+<?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
new file mode 100644
index 0000000..5f47403
--- /dev/null
+++ b/themes/overlays/PrimaryColorDeepBlue/res/values/colors.xml
@@ -0,0 +1,22 @@
+<?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
new file mode 100644
index 0000000..412c52d
--- /dev/null
+++ b/themes/overlays/PrimaryColorDeepBlue/res/values/strings.xml
@@ -0,0 +1,23 @@
+<?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/overlaystub/res/drawable/omni_header.jpg b/themes/overlaystub/res/drawable/omni_header.jpg
new file mode 100644
index 0000000..006a789
--- /dev/null
+++ b/themes/overlaystub/res/drawable/omni_header.jpg
Binary files differ
diff --git a/themes/overlaystub/res/drawable/red_header.jpg b/themes/overlaystub/res/drawable/red_header.jpg
new file mode 100644
index 0000000..737ace5
--- /dev/null
+++ b/themes/overlaystub/res/drawable/red_header.jpg
Binary files differ
diff --git a/themes/overlaystub/res/drawable/space_header.jpg b/themes/overlaystub/res/drawable/space_header.jpg
new file mode 100644
index 0000000..be07bac
--- /dev/null
+++ b/themes/overlaystub/res/drawable/space_header.jpg
Binary files differ
diff --git a/themes/overlaystub/res/values/strings.xml b/themes/overlaystub/res/values/strings.xml
index 1a93afa..a8adb88 100644
--- a/themes/overlaystub/res/values/strings.xml
+++ b/themes/overlaystub/res/values/strings.xml
@@ -33,6 +33,7 @@
     <string name="theme_wallpaper_title_omni">Omni</string>
     <string name="theme_wallpaper_attribution_omni">OmniROM</string>
     <string name="theme_wallpaper_action_omni">https://www.omnirom.org/</string>
+    <string name="theme_header_omni">omni_header</string>
 
     <string name="theme_name_space">Space</string>
     <string name="theme_title_space">@string/theme_name_space</string>
@@ -46,6 +47,7 @@
     <string name="theme_wallpaper_title_space">Omni</string>
     <string name="theme_wallpaper_attribution_space">OmniROM</string>
     <string name="theme_wallpaper_action_space">https://www.omnirom.org/</string>
+    <string name="theme_header_space">space_header</string>
 
     <string name="theme_name_red">Red</string>
     <string name="theme_title_red">@string/theme_name_red</string>
@@ -59,4 +61,5 @@
     <string name="theme_wallpaper_title_red">Omni</string>
     <string name="theme_wallpaper_attribution_red">OmniROM</string>
     <string name="theme_wallpaper_action_red">https://www.omnirom.org/</string>
+    <string name="theme_header_red">red_header</string>
 </resources>
