diff --git a/current/android.jar b/current/android.jar
index 9d4538a..8809178 100644
--- a/current/android.jar
+++ b/current/android.jar
Binary files differ
diff --git a/current/support/annotations/android-support-annotations.jar b/current/support/annotations/android-support-annotations.jar
index f6ce289..472f5a5 100644
--- a/current/support/annotations/android-support-annotations.jar
+++ b/current/support/annotations/android-support-annotations.jar
Binary files differ
diff --git a/current/support/design/libs/android-support-design.jar b/current/support/design/libs/android-support-design.jar
index a4df551..949c792 100644
--- a/current/support/design/libs/android-support-design.jar
+++ b/current/support/design/libs/android-support-design.jar
Binary files differ
diff --git a/current/support/multidex/instrumentation/libs/android-support-multidex-instrumentation.jar b/current/support/multidex/instrumentation/libs/android-support-multidex-instrumentation.jar
index 29c792a..9219f1a 100644
--- a/current/support/multidex/instrumentation/libs/android-support-multidex-instrumentation.jar
+++ b/current/support/multidex/instrumentation/libs/android-support-multidex-instrumentation.jar
Binary files differ
diff --git a/current/support/multidex/library/libs/android-support-multidex.jar b/current/support/multidex/library/libs/android-support-multidex.jar
index 2a6d71a..61a970c 100644
--- a/current/support/multidex/library/libs/android-support-multidex.jar
+++ b/current/support/multidex/library/libs/android-support-multidex.jar
Binary files differ
diff --git a/current/support/percent/libs/android-support-percent.jar b/current/support/percent/libs/android-support-percent.jar
index 341f5de..469a391 100644
--- a/current/support/percent/libs/android-support-percent.jar
+++ b/current/support/percent/libs/android-support-percent.jar
Binary files differ
diff --git a/current/support/v13/android-support-v13.jar b/current/support/v13/android-support-v13.jar
index 93875ae..2b18e66 100644
--- a/current/support/v13/android-support-v13.jar
+++ b/current/support/v13/android-support-v13.jar
Binary files differ
diff --git a/current/support/v17/leanback/libs/android-support-v17-leanback.jar b/current/support/v17/leanback/libs/android-support-v17-leanback.jar
index 5729806..4634ee2 100644
--- a/current/support/v17/leanback/libs/android-support-v17-leanback.jar
+++ b/current/support/v17/leanback/libs/android-support-v17-leanback.jar
Binary files differ
diff --git a/current/support/v4/android-support-v4.jar b/current/support/v4/android-support-v4.jar
index 5377240..cd9fad5 100644
--- a/current/support/v4/android-support-v4.jar
+++ b/current/support/v4/android-support-v4.jar
Binary files differ
diff --git a/current/support/v4/src/api/current.txt b/current/support/v4/src/api/current.txt
index 27f8576..3245a04 100644
--- a/current/support/v4/src/api/current.txt
+++ b/current/support/v4/src/api/current.txt
@@ -1230,7 +1230,9 @@
   public static class FingerprintManagerCompat.CryptoObject {
     ctor public FingerprintManagerCompat.CryptoObject(java.security.Signature);
     ctor public FingerprintManagerCompat.CryptoObject(javax.crypto.Cipher);
+    ctor public FingerprintManagerCompat.CryptoObject(javax.crypto.Mac);
     method public javax.crypto.Cipher getCipher();
+    method public javax.crypto.Mac getMac();
     method public java.security.Signature getSignature();
   }
 
diff --git a/current/support/v7/appcompat/libs/android-support-v7-appcompat.jar b/current/support/v7/appcompat/libs/android-support-v7-appcompat.jar
index ccfe051..80abbe8 100644
--- a/current/support/v7/appcompat/libs/android-support-v7-appcompat.jar
+++ b/current/support/v7/appcompat/libs/android-support-v7-appcompat.jar
Binary files differ
diff --git a/current/support/v7/appcompat/res/values-night/themes_daynight.xml b/current/support/v7/appcompat/res/values-night/themes_daynight.xml
deleted file mode 100644
index 965d355..0000000
--- a/current/support/v7/appcompat/res/values-night/themes_daynight.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2015 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT 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>
-
-    <!-- Material theme (day/night vesion) for activities. -->
-    <style name="Theme.AppCompat.DayNight" parent="Theme.AppCompat" />
-
-    <!-- Variant of AppCompat.DayNight that has a solid (opaque) action bar
-         with an inverse color profile. The dark action bar sharply stands out against
-         the light content (when applicable).  -->
-    <style name="Theme.AppCompat.DayNight.DarkActionBar" parent="Theme.AppCompat" />
-
-    <!-- Variant of AppCompat.DayNight with no action bar.  -->
-    <style name="Theme.AppCompat.DayNight.NoActionBar" parent="Theme.AppCompat.NoActionBar" />
-
-    <!-- Material theme (day/night vesion) for dialog windows and activities,
-         which is used by the {@code android.support.v7.app.Dialog} class. This changes
-         the window to be floating (not fill the entire screen), and puts a
-         frame around its contents. You can set this theme on an activity if
-         you would like to make an activity that looks like a Dialog. -->
-    <style name="Theme.AppCompat.DayNight.Dialog" parent="Theme.AppCompat.Dialog" />
-
-    <!-- Variant of Theme.AppCompat.DayNight.Dialog that has a nice minimum width for
-         a regular dialog. -->
-    <style name="Theme.AppCompat.DayNight.Dialog.MinWidth" parent="Theme.AppCompat.Dialog.MinWidth" />
-
-    <!-- Theme for a window that will be displayed either full-screen on
-         smaller screens (small, normal) or as a dialog on larger screens
-         (large, xlarge). -->
-    <style name="Theme.AppCompat.DayNight.DialogWhenLarge" parent="Theme.AppCompat.DialogWhenLarge" />
-
-    <!-- Material user theme for alert dialog windows, which is used by the
-         {@code android.support.v7.app.AlertDialog} class. -->
-    <style name="Theme.AppCompat.DayNight.Dialog.Alert" parent="Theme.AppCompat.Dialog.Alert" />
-
-</resources>
\ No newline at end of file
diff --git a/current/support/v7/appcompat/res/values/themes_base.xml b/current/support/v7/appcompat/res/values/themes_base.xml
index 9e9a4ab..8c09e21 100644
--- a/current/support/v7/appcompat/res/values/themes_base.xml
+++ b/current/support/v7/appcompat/res/values/themes_base.xml
@@ -113,6 +113,7 @@
     <style name="Base.V7.Theme.AppCompat" parent="Platform.AppCompat">
         <item name="windowActionBar">true</item>
         <item name="windowActionBarOverlay">false</item>
+        <item name="actionBarPopupTheme">@null</item>
 
         <!-- Used by MediaRouter -->
         <item name="isLightTheme">false</item>
@@ -262,6 +263,7 @@
     <style name="Base.V7.Theme.AppCompat.Light" parent="Platform.AppCompat.Light">
         <item name="windowActionBar">true</item>
         <item name="windowActionBarOverlay">false</item>
+        <item name="actionBarPopupTheme">@null</item>
 
         <!-- Used by MediaRouter -->
         <item name="isLightTheme">true</item>
diff --git a/current/support/v7/appcompat/res/values/themes_daynight.xml b/current/support/v7/appcompat/res/values/themes_daynight.xml
deleted file mode 100644
index bc7001d..0000000
--- a/current/support/v7/appcompat/res/values/themes_daynight.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2015 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT 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>
-
-    <!-- Material theme (day/night vesion) for activities. -->
-    <style name="Theme.AppCompat.DayNight" parent="Theme.AppCompat.Light" />
-
-    <!-- Variant of AppCompat.DayNight that has a solid (opaque) action bar
-         with an inverse color profile. The dark action bar sharply stands out against
-         the light content (when applicable).  -->
-    <style name="Theme.AppCompat.DayNight.DarkActionBar" parent="Theme.AppCompat.Light.DarkActionBar" />
-
-    <!-- Variant of AppCompat.DayNight with no action bar.  -->
-    <style name="Theme.AppCompat.DayNight.NoActionBar" parent="Theme.AppCompat.Light.NoActionBar" />
-
-    <!-- Material theme (day/night vesion) for dialog windows and activities,
-         which is used by the {@code android.support.v7.app.Dialog} class. This changes
-         the window to be floating (not fill the entire screen), and puts a
-         frame around its contents. You can set this theme on an activity if
-         you would like to make an activity that looks like a Dialog. -->
-    <style name="Theme.AppCompat.DayNight.Dialog" parent="Theme.AppCompat.Light.Dialog" />
-
-    <!-- Variant of Theme.AppCompat.DayNight.Dialog that has a nice minimum width for
-         a regular dialog. -->
-    <style name="Theme.AppCompat.DayNight.Dialog.MinWidth" parent="Theme.AppCompat.Light.Dialog.MinWidth" />
-
-    <!-- Theme for a window that will be displayed either full-screen on
-         smaller screens (small, normal) or as a dialog on larger screens
-         (large, xlarge). -->
-    <style name="Theme.AppCompat.DayNight.DialogWhenLarge" parent="Theme.AppCompat.Light.DialogWhenLarge" />
-
-    <!-- Material user theme for alert dialog windows, which is used by the
-         {@code android.support.v7.app.AlertDialog} class. -->
-    <style name="Theme.AppCompat.DayNight.Dialog.Alert" parent="Theme.AppCompat.Light.Dialog.Alert" />
-
-</resources>
\ No newline at end of file
diff --git a/current/support/v7/cardview/libs/android-support-v7-cardview.jar b/current/support/v7/cardview/libs/android-support-v7-cardview.jar
index 15405bb..64a3ce5 100644
--- a/current/support/v7/cardview/libs/android-support-v7-cardview.jar
+++ b/current/support/v7/cardview/libs/android-support-v7-cardview.jar
Binary files differ
diff --git a/current/support/v7/gridlayout/libs/android-support-v7-gridlayout.jar b/current/support/v7/gridlayout/libs/android-support-v7-gridlayout.jar
index 3b89bcc..6df3930 100644
--- a/current/support/v7/gridlayout/libs/android-support-v7-gridlayout.jar
+++ b/current/support/v7/gridlayout/libs/android-support-v7-gridlayout.jar
Binary files differ
diff --git a/current/support/v7/mediarouter/libs/android-support-v7-mediarouter.jar b/current/support/v7/mediarouter/libs/android-support-v7-mediarouter.jar
index aba3652..083dfa0 100644
--- a/current/support/v7/mediarouter/libs/android-support-v7-mediarouter.jar
+++ b/current/support/v7/mediarouter/libs/android-support-v7-mediarouter.jar
Binary files differ
diff --git a/current/support/v7/mediarouter/res/values/themes.xml b/current/support/v7/mediarouter/res/values/themes.xml
index 85d0a8b..3010d8d 100644
--- a/current/support/v7/mediarouter/res/values/themes.xml
+++ b/current/support/v7/mediarouter/res/values/themes.xml
@@ -16,7 +16,7 @@
 
 <resources>
 
-    <style name="Theme.MediaRouter" parent="">
+    <style name="Theme.MediaRouter" parent="Theme.AppCompat">
         <item name="mediaRouteButtonStyle">@style/Widget.MediaRouter.MediaRouteButton</item>
 
         <item name="mediaRouteOffDrawable">@drawable/ic_media_route_off_mono_dark</item>
@@ -28,7 +28,7 @@
         <item name="mediaRouteCastDrawable">@drawable/mr_ic_cast_dark</item>
     </style>
 
-    <style name="Theme.MediaRouter.Light" parent="">
+    <style name="Theme.MediaRouter.Light" parent="Theme.AppCompat.Light">
         <item name="mediaRouteButtonStyle">@style/Widget.MediaRouter.Light.MediaRouteButton</item>
 
         <item name="mediaRouteOffDrawable">@drawable/ic_cast_off_light</item>
diff --git a/current/support/v7/palette/libs/android-support-v7-palette.jar b/current/support/v7/palette/libs/android-support-v7-palette.jar
index f4cd196..6fed8f1 100644
--- a/current/support/v7/palette/libs/android-support-v7-palette.jar
+++ b/current/support/v7/palette/libs/android-support-v7-palette.jar
Binary files differ
diff --git a/current/support/v7/recyclerview/libs/android-support-v7-recyclerview.jar b/current/support/v7/recyclerview/libs/android-support-v7-recyclerview.jar
index adc3709..c802d79 100644
--- a/current/support/v7/recyclerview/libs/android-support-v7-recyclerview.jar
+++ b/current/support/v7/recyclerview/libs/android-support-v7-recyclerview.jar
Binary files differ
diff --git a/current/uiautomator.jar b/current/uiautomator.jar
index 5a0ab75..3bc2904 100644
--- a/current/uiautomator.jar
+++ b/current/uiautomator.jar
Binary files differ
diff --git a/system_current/android.jar b/system_current/android.jar
index 0ec69be..aa36138 100644
--- a/system_current/android.jar
+++ b/system_current/android.jar
Binary files differ
