diff --git a/apps/LeanbackCustomizer/AndroidManifest.xml b/apps/LeanbackCustomizer/AndroidManifest.xml
index ed313c6..e931ca2 100644
--- a/apps/LeanbackCustomizer/AndroidManifest.xml
+++ b/apps/LeanbackCustomizer/AndroidManifest.xml
@@ -2,6 +2,10 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.google.android.leanbacklauncher.partnercustomizer">
 
+    <uses-sdk
+        android:minSdkVersion="21"
+        android:targetSdkVersion="21" />
+
     <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
     <uses-permission android:name="android.permission.INTERNET" />
 
@@ -19,5 +23,6 @@
                 <data android:scheme="package"/>
             </intent-filter>
         </receiver>
+
     </application>
 </manifest>
diff --git a/apps/LeanbackCustomizer/res/drawable-mdpi/ic_blank.png b/apps/LeanbackCustomizer/res/drawable-mdpi/ic_blank.png
deleted file mode 100644
index edae9c4..0000000
--- a/apps/LeanbackCustomizer/res/drawable-mdpi/ic_blank.png
+++ /dev/null
Binary files differ
diff --git a/apps/LeanbackCustomizer/res/values/config.xml b/apps/LeanbackCustomizer/res/values/config.xml
index 02f97e7..863c886 100644
--- a/apps/LeanbackCustomizer/res/values/config.xml
+++ b/apps/LeanbackCustomizer/res/values/config.xml
@@ -1,7 +1,18 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
+    <bool name="partner_show_live_tv_on_start_up">true</bool>
+
+    <!-- DO NOT TRANSLATE -->
+    <string name="partner_app_sorting_mode" translatable="false">fixed</string>
     <!-- DO NOT TRANSLATE -->
     <string name="partner_wallpaper" translatable="false">bg_custom</string>
+    <!-- DO NOT TRANSLATE -->
+    <string name="partner_widget_provider_component_name" translatable="false">
+        com.google.android.leanbacklauncher.partnerwidget/.ClockWidgetProvider
+    </string>
+
+    <!-- DO NOT TRANSLATE -->
+    <string name="partner_search_icon" translatable="false">ic_launcher</string>
 
     <!--
         DO NOT TRANSLATE
@@ -43,5 +54,8 @@
     <item type="drawable" name="settings_row_icon">@drawable/ic_title_settings</item>
 
     <!-- DO NOT TRANSLATE -->
+    <string name="partner_font" translatable="false">sans-serif-bold</string>
+
+    <!-- DO NOT TRANSLATE -->
     <string name="launcher_category" translatable="false">android.intent.category.LEANBACK_LAUNCHER</string>
 </resources>
diff --git a/apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java b/apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java
similarity index 89%
rename from apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java
rename to apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java
index 2c1282b..daef196 100644
--- a/apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java
+++ b/apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/PartnerReceiver.java
@@ -16,34 +16,17 @@
 
 package com.google.android.leanbacklauncher.partnercustomizer;
 
-import android.app.Activity;
 import android.app.Notification;
 import android.app.NotificationManager;
 import android.app.PendingIntent;
 import android.content.BroadcastReceiver;
-import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
-import android.content.IntentFilter;
-import android.content.pm.ActivityInfo;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
-import android.content.pm.ResolveInfo;
-import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
 import android.net.Uri;
-import android.os.AsyncTask;
 import android.os.Bundle;
 import android.os.Handler;
-import android.provider.Settings;
-import android.text.TextUtils;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.HttpURLConnection;
-import java.util.ArrayList;
-import java.util.List;
 
 /**
  * This class posts notifications that are used to populate the Partner Row of the Leanback Launcher
@@ -70,7 +53,7 @@
     private NotificationManager mNotifMan;
     private PackageManager mPkgMan;
 
-    // Cutoff value for when the Launcher displayes the Partner row as a single
+    // Cutoff value for when the Launcher displays the Partner row as a single
     // row, or a two row grid. Can be used for correctly positioning the partner
     // app entries.
     private int mRowCutoff = 0;
diff --git a/apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/TestActivity.java b/apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/TestActivity.java
similarity index 100%
rename from apps/LeanbackCustomizer/src/com/android/leanbacklauncher/partnercustomizer/TestActivity.java
rename to apps/LeanbackCustomizer/src/com/google/android/leanbacklauncher/partnercustomizer/TestActivity.java
diff --git a/apps/LeanbackWidget/Android.mk b/apps/LeanbackWidget/Android.mk
new file mode 100644
index 0000000..7209b52
--- /dev/null
+++ b/apps/LeanbackWidget/Android.mk
@@ -0,0 +1,13 @@
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_PATH := $(PRODUCT_OUT)/system/app
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src)
+
+LOCAL_PACKAGE_NAME := LeanbackWidget
+
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_PACKAGE)
diff --git a/apps/LeanbackWidget/AndroidManifest.xml b/apps/LeanbackWidget/AndroidManifest.xml
new file mode 100644
index 0000000..9474560
--- /dev/null
+++ b/apps/LeanbackWidget/AndroidManifest.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.google.android.leanbacklauncher.partnerwidget">
+
+    <uses-sdk
+        android:minSdkVersion="19"
+        android:targetSdkVersion="19" />
+
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
+
+    <application android:label="@string/app_label">
+        <receiver android:name=".ClockWidgetProvider" >
+            <intent-filter>
+                <action android:name="android.net.conn.INET_CONDITION_ACTION" />
+                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
+
+                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
+            </intent-filter>
+
+            <meta-data
+                android:name="android.appwidget.provider"
+                android:resource="@xml/clock_widget_info" />
+        </receiver>
+
+    </application>
+</manifest>
diff --git a/apps/LeanbackWidget/proguard-project.txt b/apps/LeanbackWidget/proguard-project.txt
new file mode 100644
index 0000000..f2fe155
--- /dev/null
+++ b/apps/LeanbackWidget/proguard-project.txt
@@ -0,0 +1,20 @@
+# To enable ProGuard in your project, edit project.properties
+# to define the proguard.config property as described in that file.
+#
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in ${sdk.dir}/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the ProGuard
+# include property in project.properties.
+#
+# For more details, see
+#   http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+#   public *;
+#}
diff --git a/apps/LeanbackWidget/res/drawable-hdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-hdpi/ic_launcher.png
new file mode 100644
index 0000000..eb9dfe2
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_ethernet_not_connected.png b/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_ethernet_not_connected.png
new file mode 100644
index 0000000..df02569
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_ethernet_not_connected.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_wifi_no_internet.png b/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_wifi_no_internet.png
new file mode 100644
index 0000000..1b891de
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_wifi_no_internet.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_wifi_not_connected.png b/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_wifi_not_connected.png
new file mode 100644
index 0000000..d6d4a30
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-hdpi/ic_widget_wifi_not_connected.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-mdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-mdpi/ic_launcher.png
new file mode 100644
index 0000000..d8e46f3
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_ethernet_not_connected.png b/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_ethernet_not_connected.png
new file mode 100644
index 0000000..ece1478
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_ethernet_not_connected.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_wifi_no_internet.png b/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_wifi_no_internet.png
new file mode 100644
index 0000000..5054b40
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_wifi_no_internet.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_wifi_not_connected.png b/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_wifi_not_connected.png
new file mode 100644
index 0000000..ad53107
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-mdpi/ic_widget_wifi_not_connected.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-xhdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-xhdpi/ic_launcher.png
new file mode 100644
index 0000000..e4e79c9
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-xhdpi/ic_launcher.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_ethernet_not_connected.png b/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_ethernet_not_connected.png
new file mode 100644
index 0000000..5d0bfb9
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_ethernet_not_connected.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_wifi_no_internet.png b/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_wifi_no_internet.png
new file mode 100644
index 0000000..909d020
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_wifi_no_internet.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_wifi_not_connected.png b/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_wifi_not_connected.png
new file mode 100644
index 0000000..c892b26
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-xhdpi/ic_widget_wifi_not_connected.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-xxhdpi/ic_launcher.png b/apps/LeanbackWidget/res/drawable-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000..53ced36
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-xxhdpi/ic_launcher.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/drawable-xxhdpi/ic_widget_ethernet_not_connected.png b/apps/LeanbackWidget/res/drawable-xxhdpi/ic_widget_ethernet_not_connected.png
new file mode 100644
index 0000000..edb5a69
--- /dev/null
+++ b/apps/LeanbackWidget/res/drawable-xxhdpi/ic_widget_ethernet_not_connected.png
Binary files differ
diff --git a/apps/LeanbackWidget/res/layout/clock_widget.xml b/apps/LeanbackWidget/res/layout/clock_widget.xml
new file mode 100644
index 0000000..3ceb63e
--- /dev/null
+++ b/apps/LeanbackWidget/res/layout/clock_widget.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:layout_marginTop="@dimen/widget_top_margin" >
+
+    <TextClock
+        android:id="@+id/clock"
+        android:layout_width="@dimen/clock_width"
+        android:layout_height="wrap_content"
+        android:layout_alignParentEnd="true"
+        android:gravity="center_vertical|end"
+        android:format12Hour="@string/widget_12_hours_format"
+        android:format24Hour="@string/widget_24_hours_format"
+        android:fontFamily="@string/light_font"
+        android:includeFontPadding="false"
+        android:textColor="@color/clock_text_color"
+        android:textSize="@dimen/clock_text_size" />
+
+    <ImageView
+        android:id="@+id/connectivity_indicator"
+        android:layout_width="@dimen/connectivity_status_size"
+        android:layout_height="@dimen/connectivity_status_size"
+        android:layout_toStartOf="@+id/clock"
+        android:layout_centerVertical="true"
+        android:src="@null" />
+
+</RelativeLayout>
diff --git a/apps/LeanbackWidget/res/values/colors.xml b/apps/LeanbackWidget/res/values/colors.xml
new file mode 100644
index 0000000..bcc3a80
--- /dev/null
+++ b/apps/LeanbackWidget/res/values/colors.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <color name="clock_text_color">#FFEEEEEE</color>
+</resources>
diff --git a/apps/LeanbackWidget/res/values/config.xml b/apps/LeanbackWidget/res/values/config.xml
new file mode 100644
index 0000000..9e4f1ba
--- /dev/null
+++ b/apps/LeanbackWidget/res/values/config.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+    <!-- DO NOT TRANSLATE -->
+    <string name="font" translatable="false">sans-serif-condensed</string>
+    <!-- DO NOT TRANSLATE -->
+    <string name="light_font" translatable="false">sans-serif-light</string>
+    <!-- DO NOT TRANSLATE -->
+    <string name="regular_font" translatable="false">sans-serif</string>
+
+    <string name="widget_12_hours_format" translatable="false">h:mm</string>
+    <string name="widget_24_hours_format" translatable="false">kk:mm</string>
+
+</resources>
diff --git a/apps/LeanbackWidget/res/values/dimens.xml b/apps/LeanbackWidget/res/values/dimens.xml
new file mode 100644
index 0000000..fe1728f
--- /dev/null
+++ b/apps/LeanbackWidget/res/values/dimens.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+    <dimen name="clock_text_size">36sp</dimen>
+    <dimen name="clock_width">106dp</dimen>
+    <dimen name="connectivity_status_size">32dp</dimen>
+    <dimen name="widget_top_margin">1dp</dimen>
+</resources>
diff --git a/apps/LeanbackWidget/res/values/strings.xml b/apps/LeanbackWidget/res/values/strings.xml
new file mode 100644
index 0000000..4f733a4
--- /dev/null
+++ b/apps/LeanbackWidget/res/values/strings.xml
@@ -0,0 +1,5 @@
+<resources>
+
+    <string name="app_label">LeanbackWidget</string>
+
+</resources>
diff --git a/apps/LeanbackWidget/res/xml/clock_widget_info.xml b/apps/LeanbackWidget/res/xml/clock_widget_info.xml
new file mode 100644
index 0000000..a877df8
--- /dev/null
+++ b/apps/LeanbackWidget/res/xml/clock_widget_info.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
+    android:updatePeriodMillis="1800000"
+    android:initialLayout="@layout/clock_widget"
+    android:widgetCategory="home_screen"
+    android:resizeMode="none" />
diff --git a/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java b/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java
new file mode 100644
index 0000000..77a2851
--- /dev/null
+++ b/apps/LeanbackWidget/src/com/google/android/leanbacklauncher/partnerwidget/ClockWidgetProvider.java
@@ -0,0 +1,95 @@
+package com.google.android.leanbacklauncher.partnerwidget;
+
+import android.appwidget.AppWidgetManager;
+import android.appwidget.AppWidgetProvider;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.net.ConnectivityManager;
+import android.net.NetworkInfo;
+import android.os.Bundle;
+import android.widget.RemoteViews;
+
+public class ClockWidgetProvider extends AppWidgetProvider {
+
+    private static final String SHARED_PREFS = "widget-prefs";
+    private static final int INET_CONDITION_THRESHOLD = 50;
+    private static final String INET_CONDITION_ACTION = "android.net.conn.INET_CONDITION_ACTION";
+    private static final String EXTRA_INET_CONDITION = "inetCondition";
+
+    @Override
+    public void onReceive(Context context, Intent intent) {
+        String intentAction = intent.getAction();
+
+        if (INET_CONDITION_ACTION.equals(intentAction) ||
+                ConnectivityManager.CONNECTIVITY_ACTION.equals(intentAction)) {
+
+            if (INET_CONDITION_ACTION.equals(intentAction)) {
+                // a broadcast with this intent action is only fired when we are actually connected
+                // (i.e connectionStatus = 100).  So, clearing connectivity status when changing
+                // networks is required
+                int connectionStatus = intent.getIntExtra(EXTRA_INET_CONDITION, -551);
+                writeConnectivity(context, connectionStatus > INET_CONDITION_THRESHOLD);
+            }
+
+            update(context);
+        }
+
+        super.onReceive(context, intent);
+    }
+
+    @Override
+    public void onAppWidgetOptionsChanged(Context context, AppWidgetManager appWidgetManager,
+            int appWidgetId, Bundle newOptions) {
+        update(context);
+    }
+
+    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
+        update(context);
+        super.onUpdate(context, appWidgetManager, appWidgetIds);
+    }
+
+    private void update(Context context) {
+        AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
+        ComponentName thisWidget = new ComponentName(context, ClockWidgetProvider.class);
+        appWidgetManager.updateAppWidget(thisWidget, getRemoteViews(context));
+    }
+
+    private RemoteViews getRemoteViews(Context context) {
+        RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.clock_widget);
+        remoteViews.setImageViewResource(R.id.connectivity_indicator, getConnectedResId(context));
+
+        return remoteViews;
+    }
+
+    private static int getConnectedResId(Context context) {
+        ConnectivityManager cm = (ConnectivityManager) context
+                .getSystemService(Context.CONNECTIVITY_SERVICE);
+        NetworkInfo info = cm.getActiveNetworkInfo();
+
+        int resId = 0;
+        if (info == null || !info.isAvailable() || !info.isConnected()) {
+            // can't have Internet access with no network
+            writeConnectivity(context, false);
+            resId = R.drawable.ic_widget_wifi_not_connected;
+        } else if (!readConnectivity(context)) {
+            resId = R.drawable.ic_widget_wifi_no_internet;
+        } else {
+            // internet is connected and working, show nothing
+            resId = android.R.color.transparent;
+        }
+
+        return resId;
+    }
+
+    private static void writeConnectivity(Context context, boolean inetConnected) {
+        context.getSharedPreferences(SHARED_PREFS, Context.MODE_PRIVATE).edit()
+                .putBoolean(EXTRA_INET_CONDITION, inetConnected).apply();
+    }
+
+    private static boolean readConnectivity(Context context) {
+        return context.getSharedPreferences(SHARED_PREFS, Context.MODE_PRIVATE).getBoolean(
+                EXTRA_INET_CONDITION, true);
+    }
+
+}
diff --git a/apps/SetupCustomizer/Android.mk b/apps/SetupCustomizer/Android.mk
new file mode 100644
index 0000000..9312a36
--- /dev/null
+++ b/apps/SetupCustomizer/Android.mk
@@ -0,0 +1,13 @@
+LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_TAGS := optional
+LOCAL_MODULE_PATH := $(PRODUCT_OUT)/system/priv-app
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src)
+
+LOCAL_PACKAGE_NAME := TvSetupCustomizer
+
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_PACKAGE)
diff --git a/apps/SetupCustomizer/AndroidManifest.xml b/apps/SetupCustomizer/AndroidManifest.xml
new file mode 100644
index 0000000..bdd31ff
--- /dev/null
+++ b/apps/SetupCustomizer/AndroidManifest.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.google.android.tvsetup.partnercustomizer">
+
+    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+    <uses-permission android:name="android.permission.INTERNET" />
+
+    <application android:label="@string/app_label">
+
+        <receiver android:name=".PartnerReceiver">
+            <intent-filter>
+                <action android:name="com.google.android.tvsetup.action.PARTNER_CUSTOMIZATION" />
+                <category android:name="android.intent.category.DEFAULT" />
+            </intent-filter>
+
+            <intent-filter>
+                <action android:name="android.intent.action.PACKAGE_ADDED" />
+                <action android:name="android.intent.action.PACKAGE_REMOVED" />
+                <data android:scheme="package"/>
+            </intent-filter>
+        </receiver>
+    </application>
+</manifest>
diff --git a/apps/SetupCustomizer/proguard-project.txt b/apps/SetupCustomizer/proguard-project.txt
new file mode 100644
index 0000000..f2fe155
--- /dev/null
+++ b/apps/SetupCustomizer/proguard-project.txt
@@ -0,0 +1,20 @@
+# To enable ProGuard in your project, edit project.properties
+# to define the proguard.config property as described in that file.
+#
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in ${sdk.dir}/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the ProGuard
+# include property in project.properties.
+#
+# For more details, see
+#   http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+#   public *;
+#}
diff --git a/apps/SetupCustomizer/res/drawable-xhdpi/welcome_background.png b/apps/SetupCustomizer/res/drawable-xhdpi/welcome_background.png
new file mode 100644
index 0000000..2f2533a
--- /dev/null
+++ b/apps/SetupCustomizer/res/drawable-xhdpi/welcome_background.png
Binary files differ
diff --git a/apps/SetupCustomizer/res/values-de/strings.xml b/apps/SetupCustomizer/res/values-de/strings.xml
new file mode 100644
index 0000000..2794b47
--- /dev/null
+++ b/apps/SetupCustomizer/res/values-de/strings.xml
@@ -0,0 +1,4 @@
+<resources>
+    <!-- Welcome message -->
+    <string name="welcome_message">a really really long welcome message, because german</string>
+</resources>
diff --git a/apps/SetupCustomizer/res/values-en-rCA/strings.xml b/apps/SetupCustomizer/res/values-en-rCA/strings.xml
new file mode 100644
index 0000000..2b19782
--- /dev/null
+++ b/apps/SetupCustomizer/res/values-en-rCA/strings.xml
@@ -0,0 +1,4 @@
+<resources>
+    <!-- Welcome message -->
+    <string name="welcome_message">welcome_message, eh?</string>
+</resources>
diff --git a/apps/SetupCustomizer/res/values/bools.xml b/apps/SetupCustomizer/res/values/bools.xml
new file mode 100644
index 0000000..4e19b14
--- /dev/null
+++ b/apps/SetupCustomizer/res/values/bools.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2012-2014 Google Inc. All Rights Reserved. -->
+<resources xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <!-- Display "SKIP" in network selection screen -->
+    <bool name="show_skip_network">true</bool>
+
+    <!-- Allow user to skip Google signin at signin setup step -->
+    <bool name="show_skip_signin">true</bool>
+
+    <!-- Show wifi WPS option at top of list -->
+    <bool name="show_wps_at_top">true</bool>
+
+    <!-- Prevent users from returning to the pre-setup oem customization hook -->
+    <bool name="prevent_prehook_replay">true</bool>
+</resources>
diff --git a/apps/SetupCustomizer/res/values/dimens.xml b/apps/SetupCustomizer/res/values/dimens.xml
new file mode 100644
index 0000000..6907661
--- /dev/null
+++ b/apps/SetupCustomizer/res/values/dimens.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2012-2014 Google Inc. All Rights Reserved. -->
+<resources xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <!-- Max width for welcome text (default: 536dp) -->
+    <dimen name="welcome_message_max_width">400dp</dimen>
+
+    <!-- Offset (positive or negative) for the welcome message (default: 0) -->
+    <dimen name="welcome_message_offset">-100dp</dimen>
+
+</resources>
diff --git a/apps/SetupCustomizer/res/values/strings.xml b/apps/SetupCustomizer/res/values/strings.xml
new file mode 100644
index 0000000..f53fb11
--- /dev/null
+++ b/apps/SetupCustomizer/res/values/strings.xml
@@ -0,0 +1,11 @@
+<resources>
+
+    <string name="app_label">SetupCustomizer</string>
+
+    <!-- Welcome message -->
+    <string name="welcome_message">welcome_message</string>
+
+    <!-- Custom wallpaper [DO NOT TRANSLATE] -->
+    <string name="setup_wallpaper_component" translatable="false">com.android.systemui/com.android.systemui.ImageWallpaper</string>
+
+</resources>
diff --git a/apps/SetupCustomizer/src/com/android/tvsetup/partnercustomizer/PartnerReceiver.java b/apps/SetupCustomizer/src/com/android/tvsetup/partnercustomizer/PartnerReceiver.java
new file mode 100644
index 0000000..cf8efd9
--- /dev/null
+++ b/apps/SetupCustomizer/src/com/android/tvsetup/partnercustomizer/PartnerReceiver.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.android.tvsetup.partnercustomizer;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+
+/**
+ * This class allows the system/setup app to find the partner customization package.
+ *
+ * Package must be a system app to be used for partner customization.
+ */
+public class PartnerReceiver extends BroadcastReceiver {
+
+    @Override
+    public void onReceive(Context context, Intent intent) {
+    }
+}
diff --git a/etc/apns-full-conf.xml b/etc/apns-full-conf.xml
index 14f6e91..a78ea97 100755
--- a/etc/apns-full-conf.xml
+++ b/etc/apns-full-conf.xml
@@ -4097,48 +4097,6 @@
       type="mms"
   />
 
-  <apn carrier="BiBoB Internet profil"
-      mcc="238"
-      mnc="02"
-      apn="internet.bibob.dk"
-      type="default,supl"
-      mvno_type="spn"
-      mvno_match_data="BiBoB"
-  />
-
-  <apn carrier="BiBoB"
-      mcc="238"
-      mnc="02"
-      apn="mms.bibob.dk"
-      mmsproxy="212.88.64.8"
-      mmsport="8080"
-      mmsc="http://mms.telenor.dk"
-      type="mms"
-      mvno_type="spn"
-      mvno_match_data="BiBoB"
-  />
-
-  <apn carrier="CBB Internet"
-      mcc="238"
-      mnc="02"
-      apn="internet"
-      type="default,supl"
-      mvno_type="spn"
-      mvno_match_data="CBB Mobil"
-  />
-
-  <apn carrier="CBB MMS"
-      mcc="238"
-      mnc="02"
-      apn="telenor"
-      mmsproxy="212.88.64.8"
-      mmsport="8080"
-      mmsc="http://mms.telenor.dk"
-      type="mms"
-      mvno_type="spn"
-      mvno_match_data="CBB Mobil"
-  />
-
   <apn carrier="3"
       mcc="238"
       mnc="06"
@@ -4431,15 +4389,38 @@
       type="mms"
   />
 
-  <apn carrier="Tele2"
+  <apn carrier="Tele2 Internet"
       mcc="240"
       mnc="07"
-      apn="internet.tele2.no"
-      mmsc="http://mmsc.tele2.no"
-      mmsproxy="193.12.40.14"
+      apn="4g.tele2.se"
+      type="default,supl"
+  />
+
+  <apn carrier="Tele2 MMS"
+      mcc="240"
+      mnc="07"
+      apn="4g.tele2.se"
+      mmsc="http://mmsc.tele2.se"
+      mmsproxy="130.244.202.30"
       mmsport="8080"
-      protocol="IP"
-      type="default,supl,mms"
+      type="mms"
+  />
+
+  <apn carrier="Tele2 Internet 3G"
+      mcc="240"
+      mnc="07"
+      apn="internet.tele2.se"
+      type="default,supl"
+  />
+
+  <apn carrier="Tele2 MMS 3G"
+      mcc="240"
+      mnc="07"
+      apn="internet.tele2.se"
+      mmsc="http://mmsc.tele2.se"
+      mmsproxy="130.244.202.30"
+      mmsport="8080"
+      type="mms"
   />
 
   <apn carrier="Tele2 Internet"
@@ -5831,9 +5812,7 @@
       mcc="260"
       mnc="06"
       apn="mms"
-      mmsc="http://10.10.28.164/mms/wapenc"
-      mmsproxy="10.10.25.5"
-      mmsport="8080"
+      mmsc="http://mmsc.play.pl/mms/wapenc"
       type="mms"
   />
 
@@ -5995,8 +5974,6 @@
       user="vodafone"
       password="vodafone"
       authtype="1"
-      proxy="iproxy.vodafone.pt"
-      port="80"
       mmsc="http://mms.vodafone.pt/servlets/mms"
       mmsproxy="iproxy.vodafone.pt"
       mmsport="80"
@@ -6011,39 +5988,6 @@
       type="dun"
   />
 
-  <apn carrier="ZON Internet"
-      mcc="268"
-      mnc="01"
-      apn=""
-      type="ia"
-      mvno_match_data="ZON"
-      mvno_type="spn"
-  />
-
-  <apn carrier="ZON Internet"
-      mcc="268"
-      mnc="01"
-      apn="internet.zon.pt"
-      type="default,supl"
-      mvno_match_data="ZON"
-      mvno_type="spn"
-  />
-
-  <apn carrier="ZON MMS"
-      mcc="268"
-      mnc="01"
-      apn="vas.zon.pt"
-      user="vas"
-      password="vas"
-      authtype="1"
-      mmsc="http://mms/servlets/mms"
-      mmsproxy="213.30.27.63"
-      mmsport="8799"
-      type="mms"
-      mvno_match_data="ZON"
-      mvno_type="spn"
-  />
-
   <apn carrier="PortalOptimus"
       mcc="268"
       mnc="03"
@@ -6134,11 +6078,11 @@
       type="mms"
   />
 
-  <apn carrier="Vox Mobile"
+  <apn carrier="Orange"
       mcc="270"
       mnc="99"
-      apn="vox.lu"
-      mmsc="http://mms.vox.lu"
+      apn="orange.lu"
+      mmsc="http://mms.orange.lu"
       mmsproxy="212.88.139.44"
       mmsport="8080"
       type="default,supl,mms"
@@ -7085,7 +7029,7 @@
 
   <apn carrier="Verizon CDMA HRPD"
      mcc="310"
-     mnc="00"
+     mnc="000"
      mmsc="http://mms.vzwreseller.com/servlets/mms"
      type="default,mms,hipri,dun,supl"
      mvno_type="spn"
@@ -9826,6 +9770,16 @@
       mmsport="80"
   />
 
+  <apn carrier="ATT Phone"
+      mcc="310"
+      mnc="410"
+      apn="phone"
+      type="default,mms,supl,fota,hipri"
+      mmsc="http://mmsc.mobile.att.net"
+      mmsproxy="proxy.mobile.att.net"
+      mmsport="80"
+  />
+
   <apn carrier="ATT WAP"
       mcc="310"
       mnc="410"
@@ -27770,6 +27724,24 @@
       type="mms"
   />
 
+  <apn carrier="China Unicom 3G"
+      apn="3gnet"
+      mcc="460"
+      mnc="09"
+      port="80"
+      type="default, supl"/>
+
+  <apn carrier="China Unicom wap"
+      apn="3gwap"
+      mcc="460"
+      mnc="09"
+      proxy="10.0.0.172"
+      port="80"
+      mmsproxy="10.0.0.172"
+      mmsport="80"
+      mmsc="http://mmsc.myuni.com.cn"
+      type="default, mms"/>
+
   <apn carrier="遠傳電信(Far EasTone) (MMS)"
       mcc="466"
       mnc="01"
@@ -32983,7 +32955,7 @@
       mvno_type="spn"
   />
 
-  <apn carrier="Internet Éito"
+  <apn carrier="Internet Éxito"
       mcc="732"
       mnc="103"
       apn="movilexito.net.co"
@@ -33050,7 +33022,7 @@
       mvno_type="spn"
   />
 
-  <apn carrier="Internet Éito"
+  <apn carrier="Internet Éxito"
       mcc="732"
       mnc="111"
       apn="movilexito.net.co"
@@ -33123,6 +33095,14 @@
       type="default"
   />
 
+  <apn carrier="ETB 4G"
+      mcc="732"
+      mnc="187"
+      apn="internetmovil.etb.net.co"
+      authtype="0"
+      type="default"
+  />
+
   <apn carrier="Digitel 412"
       mcc="734"
       mnc="01"
