Import translations. DO NOT MERGE
am: 36c3a4556e  -s ours

* commit '36c3a4556e883870d5ac1c2b006199b88d41ea68':
  Import translations. DO NOT MERGE

Change-Id: If1b435143b95a8472dcbcbfe595cd64234d58edc
diff --git a/Android.mk b/Android.mk
index 906dab8..884085a 100644
--- a/Android.mk
+++ b/Android.mk
@@ -6,6 +6,7 @@
 
 ifeq ($(TARGET_BUILD_APPS),)
 LOCAL_RESOURCE_DIR += frameworks/support/design/res
+LOCAL_RESOURCE_DIR += frameworks/support/v14/percent/res
 LOCAL_RESOURCE_DIR += frameworks/support/v14/preference/res
 LOCAL_RESOURCE_DIR += frameworks/support/v7/appcompat/res
 LOCAL_RESOURCE_DIR += frameworks/support/v7/gridlayout/res
@@ -13,6 +14,7 @@
 LOCAL_RESOURCE_DIR += frameworks/support/v7/recyclerview/res
 else
 LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/design/res
+LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/v14/percent/res
 LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/v14/preference/res
 LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/v7/appcompat/res
 LOCAL_RESOURCE_DIR += prebuilts/sdk/current/support/v7/gridlayout/res
@@ -31,6 +33,7 @@
 LOCAL_STATIC_JAVA_LIBRARIES := android-opt-datetimepicker
 LOCAL_STATIC_JAVA_LIBRARIES += android-support-design
 LOCAL_STATIC_JAVA_LIBRARIES += android-support-v13
+LOCAL_STATIC_JAVA_LIBRARIES += android-support-v14-percent
 LOCAL_STATIC_JAVA_LIBRARIES += android-support-v14-preference
 LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-appcompat
 LOCAL_STATIC_JAVA_LIBRARIES += android-support-v7-gridlayout
@@ -39,6 +42,7 @@
 
 LOCAL_AAPT_FLAGS := --auto-add-overlay
 LOCAL_AAPT_FLAGS += --extra-packages android.support.design
+LOCAL_AAPT_FLAGS += --extra-packages android.support.v14.percent
 LOCAL_AAPT_FLAGS += --extra-packages android.support.v14.preference
 LOCAL_AAPT_FLAGS += --extra-packages android.support.v7.appcompat
 LOCAL_AAPT_FLAGS += --extra-packages android.support.v7.gridlayout
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 1c5f299..6372b8f 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -19,8 +19,8 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     package="com.android.deskclock"
-    android:versionCode="440"
-    android:versionName="4.4.0">
+    android:versionCode="451"
+    android:versionName="4.5.1">
 
     <original-package android:name="com.android.alarmclock" />
     <original-package android:name="com.android.deskclock" />
@@ -56,6 +56,7 @@
         <provider
             android:name=".provider.ClockProvider"
             android:authorities="com.android.deskclock"
+            android:directBootAware="true"
             android:exported="false" />
 
         <activity
@@ -109,7 +110,9 @@
 
         <activity
             android:name=".alarms.AlarmActivity"
+            android:directBootAware="true"
             android:excludeFromRecents="true"
+            android:resizeableActivity="false"
             android:showOnLockScreen="true"
             android:taskAffinity=""
             android:theme="@style/AlarmAlertFullScreenTheme"
@@ -118,15 +121,18 @@
         <activity
             android:name=".ScreensaverActivity"
             android:excludeFromRecents="true"
+            android:resizeableActivity="false"
             android:taskAffinity=""
             android:theme="@style/ScreensaverActivityTheme" />
 
         <receiver
             android:name=".alarms.AlarmStateManager"
+            android:directBootAware="true"
             android:exported="false" />
 
         <service
             android:name=".alarms.AlarmService"
+            android:directBootAware="true"
             android:exported="false" />
 
         <activity
@@ -242,8 +248,11 @@
             </intent-filter>
         </activity>
 
-        <receiver android:name=".AlarmInitReceiver">
+        <receiver
+            android:name=".AlarmInitReceiver"
+            android:directBootAware="true">
             <intent-filter>
+                <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
                 <action android:name="android.intent.action.BOOT_COMPLETED" />
                 <action android:name="android.intent.action.TIME_SET" />
                 <action android:name="android.intent.action.TIMEZONE_CHANGED" />
@@ -291,7 +300,7 @@
             android:exported="false"
             android:permission="android.permission.BIND_REMOTEVIEWS" />
 
-        <!-- Dream (screensaver) implementation -->
+        <!-- Screen saver implementation -->
         <service
             android:name=".Screensaver"
             android:exported="true"
@@ -304,7 +313,7 @@
             </intent-filter>
             <meta-data
                 android:name="android.service.dream"
-                android:resource="@xml/dream_info" />
+                android:resource="@xml/screensaver_info" />
         </service>
 
         <!-- Settings activity for screensaver -->
@@ -333,6 +342,7 @@
             android:configChanges="screenSize|keyboardHidden|keyboard|navigation"
             android:excludeFromRecents="true"
             android:launchMode="singleInstance"
+            android:resizeableActivity="false"
             android:showOnLockScreen="true"
             android:taskAffinity=""
             android:theme="@style/ExpiredTimersActivityTheme" />
diff --git a/res/layout-land/clock_fragment.xml b/res/layout-land/clock_fragment.xml
index dc834f5..78afea0 100644
--- a/res/layout-land/clock_fragment.xml
+++ b/res/layout-land/clock_fragment.xml
@@ -14,38 +14,48 @@
      limitations under the License.
 -->
 
-<!-- Use this clock_fragment for landscape, which has main clock frame next to cities,
-     with a spacing ratio dependent on the number of clocks per row (phone has 1, tablet has 2). -->
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:baselineAligned="false"
-    android:orientation="horizontal"
-    android:paddingEnd="@dimen/clock_side_padding"
-    android:paddingStart="@dimen/clock_side_padding">
+    android:layout_height="match_parent">
 
+    <!-- Left gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+    <!-- Clock: 60% of total width. -->
     <LinearLayout
         android:layout_width="0dp"
         android:layout_height="match_parent"
-        android:layout_marginBottom="@dimen/main_clock_bottom_margin"
-        android:layout_weight="2"
+        android:paddingBottom="@dimen/fab_height"
+        android:layout_weight="60"
         android:gravity="center">
 
         <include
             android:id="@+id/main_clock_left_pane"
             layout="@layout/main_clock_frame"
             android:layout_width="match_parent"
-            android:layout_height="wrap_content"/>
+            android:layout_height="wrap_content" />
 
     </LinearLayout>
 
+    <!-- World Clock List: 32% of total width. -->
     <ListView
         android:id="@+id/cities"
         android:layout_width="0dp"
         android:layout_height="wrap_content"
         android:layout_gravity="center"
-        android:layout_weight="@integer/world_clocks_per_row"
-        android:clickable="false"/>
+        android:layout_weight="32"
+        android:clickable="false"
+        android:clipToPadding="false"
+        android:paddingBottom="@dimen/fab_height" />
+
+    <!-- Left gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
 
 </LinearLayout>
\ No newline at end of file
diff --git a/res/layout-land/stopwatch_fragment.xml b/res/layout-land/stopwatch_fragment.xml
index 779aba4..cf9754a 100644
--- a/res/layout-land/stopwatch_fragment.xml
+++ b/res/layout-land/stopwatch_fragment.xml
@@ -13,47 +13,52 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
+
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="wrap_content"
+    android:layout_height="match_parent"
     android:baselineAligned="false"
-    android:orientation="horizontal"
-    android:paddingBottom="@dimen/fab_height">
+    android:orientation="horizontal">
 
-    <!-- This FrameLayout reserves half the screen for the stopwatch. -->
-    <FrameLayout
+    <!-- Left gutter. -->
+    <Space
         android:layout_width="0dp"
         android:layout_height="match_parent"
-        android:layout_weight="1">
+        android:layout_weight="@integer/gutter_width_percent" />
 
-        <!-- This FrameLayout draws the stopwatch centered within its half of the screen. -->
+    <!-- Guttered content. -->
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/guttered_content_width_percent"
+        android:orientation="horizontal">
+
+        <!-- No circle in the stopwatch_view implies it should consume all remaining width. -->
         <FrameLayout
-            android:layout_width="@dimen/circle_size"
-            android:layout_height="@dimen/circle_size"
-            android:layout_gravity="center"
-            android:gravity="center"
-            android:padding="16dp">
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_weight="1"
+            android:paddingBottom="@dimen/fab_height">
 
-            <com.android.deskclock.timer.CountingTimerView
-                android:id="@+id/stopwatch_time_text"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent" />
+            <include layout="@layout/stopwatch_view" />
 
-            <com.android.deskclock.stopwatch.StopwatchCircleView
-                android:id="@+id/stopwatch_time"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:background="@null" />
         </FrameLayout>
 
-    </FrameLayout>
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/laps_list"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:clipToPadding="false"
+            android:paddingBottom="@dimen/fab_height" />
 
-    <android.support.v7.widget.RecyclerView
-        android:id="@+id/laps_list"
+    </LinearLayout>
+
+    <!-- Right gutter. -->
+    <Space
         android:layout_width="0dp"
-        android:layout_height="wrap_content"
-        android:layout_gravity="center"
-        android:layout_weight="1" />
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
 
 </LinearLayout>
\ No newline at end of file
diff --git a/res/layout-land/time_setup_view.xml b/res/layout-land/time_setup_view.xml
index 828a154..d71ac63 100644
--- a/res/layout-land/time_setup_view.xml
+++ b/res/layout-land/time_setup_view.xml
@@ -13,6 +13,7 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
+
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
@@ -20,22 +21,22 @@
     android:baselineAligned="false"
     android:orientation="horizontal">
 
-    <!-- This nested ltr layout cannot be combined with the parent because
+    <!-- This nested LTR layout cannot be combined with the parent because
          in RTL, the Keypad and Timer value should swap. -->
     <LinearLayout
-        android:layout_width="0dip"
+        android:layout_width="0dp"
         android:layout_height="match_parent"
         android:layout_weight="3"
-        android:layout_marginBottom="@dimen/footer_button_size"
         android:layoutDirection="ltr"
         android:gravity="center"
-        android:orientation="vertical">
+        android:orientation="vertical"
+        android:paddingBottom="@dimen/fab_height">
 
         <com.android.deskclock.timer.TimerView
             android:id="@+id/timer_time_text"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:gravity="center_vertical">
+            android:baselineAligned="true">
 
             <include layout="@layout/timer_h_mm_ss_view" />
 
@@ -44,7 +45,8 @@
                 android:layout_width="wrap_content"
                 android:layout_height="match_parent"
                 android:layout_gravity="center"
-                android:layout_marginStart="@dimen/timer_setup_delete_start_margin"
+                android:layout_marginStart="@dimen/timer_setup_delete_margin"
+                android:layout_marginEnd="@dimen/timer_setup_delete_margin"
                 android:padding="@dimen/timer_setup_delete_padding"
                 android:contentDescription="@string/timer_delete"
                 android:scaleType="center"
@@ -55,14 +57,14 @@
         <View
             android:id="@+id/divider"
             android:layout_width="match_parent"
-            android:layout_height="1dip"
-            android:layout_marginBottom="8dip"
+            android:layout_height="1dp"
+            android:layout_marginBottom="8dp"
             android:background="@color/dialog_gray" />
 
     </LinearLayout>
 
     <LinearLayout
-        android:layout_width="0dip"
+        android:layout_width="0dp"
         android:layout_height="match_parent"
         android:layout_weight="2"
         android:orientation="vertical">
@@ -82,4 +84,4 @@
 
     </LinearLayout>
 
-</LinearLayout>
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout-land/world_clock_item.xml b/res/layout-land/world_clock_item.xml
index 3b62a6a..a5e5327 100644
--- a/res/layout-land/world_clock_item.xml
+++ b/res/layout-land/world_clock_item.xml
@@ -14,58 +14,72 @@
      limitations under the License.
 -->
 
-<FrameLayout
+<LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent" >
-    <!-- This layout sits as an include in world_clock_list_item, but the LinearLayout needs
-         to have wrap_content so the separator view can have its width set to the width of the
-         clock, which means we need the extra parent FrameLayout. -->
+    android:layout_height="match_parent"
+    android:layout_gravity="center_horizontal"
+    android:gravity="center_horizontal"
+    android:orientation="vertical">
+
+    <FrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="match_parent">
+
+        <TextClock
+            android:id="@+id/digital_clock"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:fontFamily="sans-serif-thin"
+            android:gravity="center"
+            android:includeFontPadding="false"
+            android:textColor="@color/clock_white"
+            android:textSize="@dimen/world_clock_digital_font_size" />
+
+        <com.android.deskclock.AnalogClock
+            android:id="@+id/analog_clock"
+            android:layout_width="@dimen/world_clock_analog_size"
+            android:layout_height="@dimen/world_clock_analog_size"
+            android:layout_marginBottom="@dimen/bottom_text_spacing_analog_small"
+            android:layout_gravity="center_horizontal"
+            android:dial="@drawable/clock_analog_dial_mipmap"
+            android:gravity="center"
+            android:hand_hour="@drawable/clock_analog_hour_mipmap"
+            android:hand_minute="@drawable/clock_analog_minute_mipmap" />
+
+    </FrameLayout>
+
     <LinearLayout
         android:layout_width="wrap_content"
-        android:layout_height="match_parent"
-        android:paddingTop="@dimen/medium_space_top"
-        android:orientation="vertical"
-        android:layout_gravity="center_horizontal"
-        android:gravity="center_horizontal" >
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
+        android:gravity="center">
 
         <FrameLayout
-            android:layout_width="wrap_content"
-            android:layout_height="match_parent">
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_weight="1">
 
-            <TextClock
-                android:id="@+id/digital_clock"
-                style="@style/medium_light"
+            <TextView
+                android:id="@+id/city_name"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:textColor="@color/clock_white"
-                android:baselineAligned="true"
-                android:layout_gravity="center"
-                android:gravity="center" />
-
-            <com.android.deskclock.AnalogClock
-                android:id="@+id/analog_clock"
-                android:layout_width="@dimen/world_clock_analog_size"
-                android:layout_height="@dimen/world_clock_analog_size"
-                android:layout_marginBottom="@dimen/bottom_text_spacing_analog_small"
-                android:layout_gravity="center_horizontal"
-                android:dial="@drawable/clock_analog_dial_mipmap"
-                android:hand_hour="@drawable/clock_analog_hour_mipmap"
-                android:hand_minute="@drawable/clock_analog_minute_mipmap"
-                android:gravity="center" />
+                android:ellipsize="end"
+                android:singleLine="true"
+                android:textAppearance="@style/PrimaryLabelTextAppearance" />
 
         </FrameLayout>
 
-        <com.android.deskclock.widget.EllipsizeLayout
-            android:layout_height="wrap_content"
+        <TextView
+            android:id="@+id/city_day"
             android:layout_width="wrap_content"
-            android:layout_marginStart="@dimen/label_margin_small"
-            android:gravity="center" >
-
-            <include layout="@layout/world_clock_label"/>
-
-        </com.android.deskclock.widget.EllipsizeLayout>
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/style_label_space"
+            android:ellipsize="none"
+            android:singleLine="true"
+            android:textAppearance="@style/SecondaryLabelTextAppearance" />
 
     </LinearLayout>
 
-</FrameLayout>
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout-sw320dp-land/stopwatch_fragment.xml b/res/layout-sw320dp-land/stopwatch_fragment.xml
new file mode 100644
index 0000000..a1657af
--- /dev/null
+++ b/res/layout-sw320dp-land/stopwatch_fragment.xml
@@ -0,0 +1,73 @@
+<?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.
+-->
+
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:baselineAligned="false"
+    android:orientation="horizontal">
+
+    <!-- Left gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+    <!-- Guttered content. -->
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/guttered_content_width_percent"
+        android:orientation="horizontal">
+
+        <!-- A circle in the stopwatch_view implies it should be sized in the remaining area. -->
+        <android.support.percent.PercentFrameLayout
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_weight="1"
+            android:paddingBottom="@dimen/fab_height">
+
+            <com.android.deskclock.TimerCircleFrameLayout
+                app:layout_aspectRatio="100%"
+                app:layout_widthPercent="@fraction/timer_circle_width_percent"
+                app:layout_heightPercent="@fraction/timer_circle_height_percent"
+                android:layout_gravity="center">
+
+                <include layout="@layout/stopwatch_view" />
+
+            </com.android.deskclock.TimerCircleFrameLayout>
+
+        </android.support.percent.PercentFrameLayout>
+
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/laps_list"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:clipToPadding="false"
+            android:paddingBottom="@dimen/fab_height" />
+
+    </LinearLayout>
+
+    <!-- Right gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout-sw320dp/stopwatch_view.xml b/res/layout-sw320dp/stopwatch_view.xml
new file mode 100644
index 0000000..5a75818
--- /dev/null
+++ b/res/layout-sw320dp/stopwatch_view.xml
@@ -0,0 +1,31 @@
+<?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.
+-->
+
+<!-- Sufficient space exists to include the bounding stopwatch circle. -->
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <com.android.deskclock.timer.CountingTimerView
+        android:id="@+id/stopwatch_time_text"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent" />
+
+    <com.android.deskclock.stopwatch.StopwatchCircleView
+        android:id="@+id/stopwatch_time"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="@null" />
+
+</merge>
\ No newline at end of file
diff --git a/res/layout-sw320dp/timer_item.xml b/res/layout-sw320dp/timer_item.xml
new file mode 100644
index 0000000..bb35498
--- /dev/null
+++ b/res/layout-sw320dp/timer_item.xml
@@ -0,0 +1,86 @@
+<?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.
+-->
+
+<!-- This TimerItem includes the circle because ample space exists. -->
+<com.android.deskclock.timer.TimerItem
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical">
+
+    <android.support.percent.PercentFrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1"
+        android:layout_gravity="center">
+
+        <com.android.deskclock.TimerCircleFrameLayout
+            app:layout_aspectRatio="100%"
+            app:layout_widthPercent="@fraction/timer_circle_width_percent"
+            app:layout_heightPercent="@fraction/timer_circle_height_percent"
+            android:layout_gravity="center">
+
+            <com.android.deskclock.CircleButtonsLayout
+                android:id="@+id/timer_circle"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent">
+
+                <com.android.deskclock.timer.TimerCircleView
+                    android:id="@+id/timer_time"
+                    android:layout_width="match_parent"
+                    android:layout_height="match_parent" />
+
+                <com.android.deskclock.timer.CountingTimerView
+                    android:id="@+id/timer_time_text"
+                    android:layout_width="match_parent"
+                    android:layout_height="match_parent" />
+
+                <Button
+                    android:id="@+id/timer_label"
+                    style="?android:attr/borderlessButtonStyle"
+                    android:layout_width="wrap_content"
+                    android:layout_height="40dp"
+                    android:layout_gravity="top|center_horizontal"
+                    android:clickable="false"
+                    android:ellipsize="end"
+                    android:gravity="center"
+                    android:hint="@string/label"
+                    android:maxLines="1"
+                    android:src="@drawable/ic_label"
+                    android:textAppearance="@style/SecondaryLabelTextAppearance" />
+
+                <ImageButton
+                    android:id="@+id/reset_add"
+                    android:layout_width="@dimen/fab_button_size"
+                    android:layout_height="@dimen/fab_button_size"
+                    android:layout_gravity="bottom|center_horizontal"
+                    android:contentDescription="@string/timer_plus_one"
+                    android:gravity="center"
+                    android:scaleType="center"
+                    android:src="@drawable/ic_plusone" />
+
+            </com.android.deskclock.CircleButtonsLayout>
+
+        </com.android.deskclock.TimerCircleFrameLayout>
+
+    </android.support.percent.PercentFrameLayout>
+
+    <Space
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/fab_height" />
+
+</com.android.deskclock.timer.TimerItem>
\ No newline at end of file
diff --git a/res/layout-sw600dp-land/alarm_clock.xml b/res/layout-sw600dp-land/alarm_clock.xml
deleted file mode 100644
index d58cc5f..0000000
--- a/res/layout-sw600dp-land/alarm_clock.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2013 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.
--->
-
-<FrameLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/main"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:baselineAligned="false"
-        android:orientation="horizontal">
-
-        <android.support.v7.widget.RecyclerView
-            android:id="@+id/alarms_recycler_view"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:clipToPadding="false"
-            android:descendantFocusability="beforeDescendants"
-            android:fadingEdgeLength="0dp"
-            android:paddingBottom="@dimen/list_bottom_spacing"
-            android:scrollbarStyle="outsideOverlay"
-            android:scrollbars="vertical" />
-
-    </LinearLayout>
-
-    <include layout="@layout/alarm_empty_view" />
-
-</FrameLayout>
diff --git a/res/layout-v21/stopwatch_notif_expanded.xml b/res/layout-v21/stopwatch_notif_expanded.xml
index ae694b3..6b4a6b9 100644
--- a/res/layout-v21/stopwatch_notif_expanded.xml
+++ b/res/layout-v21/stopwatch_notif_expanded.xml
@@ -15,7 +15,8 @@
      limitations under the License.
 -->
 
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:divider="@drawable/horizontal_divider"
@@ -51,7 +52,7 @@
 
                 <Chronometer
                     android:id="@+id/swn_expanded_chronometer"
-                    android:layout_width="0dip"
+                    android:layout_width="0dp"
                     android:layout_height="wrap_content"
                     android:layout_weight="1"
                     android:singleLine="true"
@@ -67,7 +68,9 @@
                 android:singleLine="true"
                 android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
                 android:visibility="gone" />
+
         </LinearLayout>
+
     </FrameLayout>
 
     <LinearLayout
@@ -100,6 +103,7 @@
             android:gravity="start|center_vertical"
             android:singleLine="true"
             android:textAppearance="@style/TextAppearance.StatusBar.EventContent.Action" />
+
     </LinearLayout>
 
 </LinearLayout>
\ No newline at end of file
diff --git a/res/layout/alarm_clock.xml b/res/layout/alarm_clock.xml
index af1bfe6..0b3f671 100644
--- a/res/layout/alarm_clock.xml
+++ b/res/layout/alarm_clock.xml
@@ -27,10 +27,22 @@
         android:clipToPadding="false"
         android:descendantFocusability="beforeDescendants"
         android:fadingEdgeLength="0dp"
-        android:paddingBottom="@dimen/list_bottom_spacing"
+        android:paddingBottom="@dimen/fab_height"
         android:scrollbarStyle="outsideOverlay"
         android:scrollbars="vertical" />
 
-    <include layout="@layout/alarm_empty_view" />
+    <TextView
+        android:id="@+id/alarms_empty_view"
+        style="@style/no_alarms"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center"
+        android:contentDescription="@string/no_alarms"
+        android:drawableTop="@drawable/ic_noalarms"
+        android:gravity="center_horizontal"
+        android:paddingBottom="@dimen/fab_height"
+        android:text="@string/no_alarms"
+        android:textColor="#4cffffff"
+        android:visibility="gone" />
 
-</FrameLayout>
+</FrameLayout>
\ No newline at end of file
diff --git a/res/layout/alarm_empty_view.xml b/res/layout/alarm_empty_view.xml
deleted file mode 100644
index fc03e83..0000000
--- a/res/layout/alarm_empty_view.xml
+++ /dev/null
@@ -1,29 +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.
--->
-
-<TextView xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/alarms_empty_view"
-    style="@style/no_alarms"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:layout_gravity="center"
-    android:contentDescription="@string/no_alarms"
-    android:drawableTop="@drawable/ic_noalarms"
-    android:paddingBottom="@dimen/fab_height"
-    android:text="@string/no_alarms"
-    android:gravity="center_horizontal"
-    android:textColor="#4cffffff"
-    android:visibility="gone" />
diff --git a/res/layout/alarm_time_collapsed.xml b/res/layout/alarm_time_collapsed.xml
index 6cb088c..158e37e 100644
--- a/res/layout/alarm_time_collapsed.xml
+++ b/res/layout/alarm_time_collapsed.xml
@@ -20,84 +20,104 @@
     android:layout_height="wrap_content"
     android:background="?android:attr/selectableItemBackground"
     android:gravity="center_horizontal|top"
-    android:orientation="vertical"
-    android:paddingEnd="@dimen/alarm_side_padding"
-    android:paddingStart="@dimen/alarm_side_padding">
+    android:orientation="horizontal">
 
-    <include layout="@layout/alarm_time_summary" />
+    <!-- Left gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
 
-    <FrameLayout
-        android:layout_width="match_parent"
+    <!-- Guttered content. -->
+    <LinearLayout
+        android:layout_width="0dp"
         android:layout_height="wrap_content"
-        android:layout_gravity="bottom">
+        android:layout_weight="@integer/guttered_content_width_percent"
+        android:gravity="center_horizontal|top"
+        android:orientation="vertical">
 
-        <com.android.deskclock.widget.EllipsizeLayout
+        <include layout="@layout/alarm_time_summary" />
+
+        <FrameLayout
             android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:layout_gravity="center_vertical"
-            android:layout_marginEnd="@dimen/touch_target_min_size"
-            android:gravity="center_vertical">
+            android:layout_height="wrap_content"
+            android:layout_gravity="bottom">
 
-            <TextView
-                android:id="@+id/label"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:ellipsize="none"
-                android:paddingEnd="@dimen/icon_margin"
-                android:paddingStart="@dimen/icon_margin"
-                android:singleLine="true"
-                android:textColor="@color/clock_gray"
-                android:textSize="@dimen/alarm_text_font_size" />
+            <com.android.deskclock.widget.EllipsizeLayout
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:layout_gravity="center_vertical"
+                android:layout_marginEnd="@dimen/touch_target_min_size"
+                android:gravity="center_vertical">
 
-            <TextView
-                android:id="@+id/days_of_week"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:ellipsize="end"
-                android:focusable="true"
-                android:paddingEnd="@dimen/icon_margin"
-                android:paddingStart="@dimen/icon_margin"
-                android:singleLine="true"
-                android:textColor="@color/clock_white"
-                android:textSize="@dimen/alarm_text_font_size"
-                android:textStyle="bold" />
+                <TextView
+                    android:id="@+id/label"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:ellipsize="none"
+                    android:paddingEnd="@dimen/icon_margin"
+                    android:paddingStart="@dimen/icon_margin"
+                    android:singleLine="true"
+                    android:textColor="@color/clock_gray"
+                    android:textSize="@dimen/alarm_text_font_size" />
 
-            <TextView
-                android:id="@+id/upcoming_instance_label"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:ellipsize="end"
-                android:focusable="true"
-                android:paddingEnd="@dimen/icon_margin"
-                android:paddingStart="@dimen/icon_margin"
-                android:singleLine="true"
-                android:textColor="@color/clock_white"
-                android:textSize="@dimen/alarm_text_font_size"
-                android:textStyle="bold" />
+                <TextView
+                    android:id="@+id/days_of_week"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:ellipsize="end"
+                    android:focusable="true"
+                    android:paddingEnd="@dimen/icon_margin"
+                    android:paddingStart="@dimen/icon_margin"
+                    android:singleLine="true"
+                    android:textColor="@color/clock_white"
+                    android:textSize="@dimen/alarm_text_font_size"
+                    android:textStyle="bold" />
 
-        </com.android.deskclock.widget.EllipsizeLayout>
+                <TextView
+                    android:id="@+id/upcoming_instance_label"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:ellipsize="end"
+                    android:focusable="true"
+                    android:paddingEnd="@dimen/icon_margin"
+                    android:paddingStart="@dimen/icon_margin"
+                    android:singleLine="true"
+                    android:textColor="@color/clock_white"
+                    android:textSize="@dimen/alarm_text_font_size"
+                    android:textStyle="bold" />
 
-        <ImageButton
-            android:id="@+id/arrow"
-            android:layout_width="@dimen/touch_target_min_size"
-            android:layout_height="@dimen/touch_target_min_size"
-            android:layout_gravity="center_vertical|end"
-            android:background="?attr/selectableItemBackground"
-            android:contentDescription="@string/expand_alarm"
-            android:scaleType="center"
-            android:src="@drawable/ic_expand_down" />
+            </com.android.deskclock.widget.EllipsizeLayout>
 
-    </FrameLayout>
+            <ImageButton
+                android:id="@+id/arrow"
+                android:layout_width="@dimen/touch_target_min_size"
+                android:layout_height="@dimen/touch_target_min_size"
+                android:layout_gravity="center_vertical|end"
+                android:background="?attr/selectableItemBackground"
+                android:contentDescription="@string/expand_alarm"
+                android:scaleType="center"
+                android:src="@drawable/ic_expand_down" />
 
-    <include layout="@layout/preemptive_dismiss" />
+        </FrameLayout>
 
-    <View
-        android:id="@+id/hairline"
-        android:layout_width="match_parent"
-        android:layout_height="@dimen/hairline_height"
-        android:layout_gravity="bottom"
-        android:layout_marginEnd="@dimen/icon_margin"
-        android:layout_marginStart="@dimen/icon_margin"
-        android:background="@color/hairline" />
+        <include layout="@layout/preemptive_dismiss" />
 
-</LinearLayout>
+        <View
+            android:id="@+id/hairline"
+            android:layout_width="match_parent"
+            android:layout_height="@dimen/hairline_height"
+            android:layout_gravity="bottom"
+            android:layout_marginEnd="@dimen/icon_margin"
+            android:layout_marginStart="@dimen/icon_margin"
+            android:background="@color/hairline" />
+
+    </LinearLayout>
+
+    <!-- Right gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/alarm_time_expanded.xml b/res/layout/alarm_time_expanded.xml
index d50c5b8..07a39d4 100644
--- a/res/layout/alarm_time_expanded.xml
+++ b/res/layout/alarm_time_expanded.xml
@@ -18,22 +18,30 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
+    android:background="?android:attr/selectableItemBackground"
     android:gravity="center_horizontal|top"
-    android:orientation="vertical"
-    android:paddingEnd="@dimen/alarm_side_padding"
-    android:paddingStart="@dimen/alarm_side_padding">
+    android:orientation="horizontal">
 
-    <include layout="@layout/alarm_time_summary" />
+    <!-- Left gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
 
-    <FrameLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content">
+    <!-- Guttered content. -->
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_weight="@integer/guttered_content_width_percent"
+        android:gravity="center_horizontal|top"
+        android:orientation="vertical">
+
+        <include layout="@layout/alarm_time_summary" />
 
         <LinearLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_gravity="bottom"
-            android:layout_marginBottom="@dimen/collapse_expand_height"
             android:orientation="vertical">
 
             <CheckBox
@@ -59,12 +67,12 @@
             <LinearLayout
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
-                android:gravity="center_vertical"
+                android:baselineAligned="true"
                 android:orientation="horizontal">
 
                 <TextView
                     android:id="@+id/choose_ringtone"
-                    android:layout_width="0dip"
+                    android:layout_width="0dp"
                     android:layout_height="@dimen/touch_target_min_size"
                     android:layout_weight="1"
                     android:background="?android:attr/selectableItemBackground"
@@ -85,9 +93,6 @@
                     android:id="@+id/vibrate_onoff"
                     android:layout_width="wrap_content"
                     android:layout_height="@dimen/touch_target_min_size"
-                    android:layout_alignParentEnd="true"
-                    android:layout_centerVertical="true"
-                    android:includeFontPadding="false"
                     android:paddingEnd="@dimen/checkbox_start_padding"
                     android:paddingStart="@dimen/checkbox_start_padding"
                     android:text="@string/alarm_vibrate"
@@ -103,7 +108,6 @@
                 android:ellipsize="end"
                 android:hint="@string/label"
                 android:paddingBottom="12dp"
-                android:paddingEnd="@dimen/alarm_side_padding"
                 android:paddingStart="44dp"
                 android:paddingTop="12dp"
                 android:singleLine="true"
@@ -119,38 +123,44 @@
 
             <include layout="@layout/preemptive_dismiss" />
 
+            <FrameLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_gravity="bottom|start">
+
+                <ImageButton
+                    android:id="@+id/delete"
+                    android:layout_width="@dimen/touch_target_min_size"
+                    android:layout_height="@dimen/touch_target_min_size"
+                    android:layout_gravity="center_vertical|start"
+                    android:layout_marginTop="@dimen/alarm_clock_vertical_margin"
+                    android:layout_marginBottom="@dimen/alarm_clock_vertical_margin"
+                    android:background="?attr/selectableItemBackground"
+                    android:contentDescription="@string/delete_alarm"
+                    android:scaleType="center"
+                    android:src="@drawable/ic_delete_small"/>
+
+                <ImageButton
+                    android:id="@+id/arrow"
+                    android:layout_width="@dimen/touch_target_min_size"
+                    android:layout_height="@dimen/touch_target_min_size"
+                    android:layout_gravity="center_vertical|end"
+                    android:background="?attr/selectableItemBackground"
+                    android:contentDescription="@string/collapse_alarm"
+                    android:rotation="@integer/chevron_rotate_180"
+                    android:scaleType="center"
+                    android:src="@drawable/ic_expand_down" />
+
+            </FrameLayout>
+
         </LinearLayout>
 
-        <FrameLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_gravity="bottom|start">
+    </LinearLayout>
 
-            <ImageButton
-                android:id="@+id/delete"
-                android:layout_width="@dimen/touch_target_min_size"
-                android:layout_height="@dimen/tall_row_height"
-                android:layout_gravity="center_vertical|start"
-                android:layout_marginTop="@dimen/alarm_clock_vertical_margin"
-                android:layout_marginBottom="@dimen/alarm_clock_vertical_margin"
-                android:background="?attr/selectableItemBackground"
-                android:contentDescription="@string/delete_alarm"
-                android:scaleType="center"
-                android:src="@drawable/ic_delete_small"/>
+    <!-- Right gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
 
-            <ImageButton
-                android:id="@+id/arrow"
-                android:layout_width="@dimen/touch_target_min_size"
-                android:layout_height="@dimen/touch_target_min_size"
-                android:layout_gravity="center_vertical|end"
-                android:background="?attr/selectableItemBackground"
-                android:contentDescription="@string/collapse_alarm"
-                android:rotation="@integer/chevron_rotate_180"
-                android:scaleType="center"
-                android:src="@drawable/ic_expand_down" />
-
-        </FrameLayout>
-
-    </FrameLayout>
-
-</LinearLayout>
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/alarm_time_summary.xml b/res/layout/alarm_time_summary.xml
index 63e2cde..ef52be5 100644
--- a/res/layout/alarm_time_summary.xml
+++ b/res/layout/alarm_time_summary.xml
@@ -26,7 +26,6 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:fontFamily="sans-serif-thin"
-        android:gravity="center"
         android:textColor="@color/clock_white"
         android:textSize="@dimen/alarm_time_font_size" />
 
diff --git a/res/layout/chronometer_notif_content.xml b/res/layout/chronometer_notif_content.xml
new file mode 100644
index 0000000..8cb6d52
--- /dev/null
+++ b/res/layout/chronometer_notif_content.xml
@@ -0,0 +1,38 @@
+<?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.
+-->
+
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:orientation="vertical">
+
+    <Chronometer
+        android:id="@+id/chronometer"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:singleLine="true"
+        android:textAppearance="@style/TextAppearance.StatusBar.EventContent.Title" />
+
+    <TextView
+        android:id="@+id/state"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:singleLine="true"
+        android:textAppearance="@style/TextAppearance.StatusBar.EventContent" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/clock_fragment.xml b/res/layout/clock_fragment.xml
index 5db224e..227f79e 100644
--- a/res/layout/clock_fragment.xml
+++ b/res/layout/clock_fragment.xml
@@ -14,12 +14,31 @@
      limitations under the License.
 -->
 
-<ListView
+<LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/cities"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:clickable="false"
-    android:clipToPadding="false"
-    android:paddingEnd="@dimen/clock_side_padding_reduced"
-    android:paddingStart="@dimen/clock_side_padding" />
+    android:layout_height="match_parent">
+
+    <!-- Left gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+    <!-- Guttered content. -->
+    <ListView
+        android:id="@+id/cities"
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:layout_weight="@integer/guttered_content_width_percent"
+        android:clickable="false"
+        android:clipToPadding="false"
+        android:paddingBottom="@dimen/fab_height" />
+
+    <!-- Right gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/desk_clock.xml b/res/layout/desk_clock.xml
index aa371af..dcc0f0e 100644
--- a/res/layout/desk_clock.xml
+++ b/res/layout/desk_clock.xml
@@ -78,10 +78,10 @@
             android:layout_gravity="start|center_vertical"
             android:layout_weight="1">
 
-            <com.android.deskclock.widget.AlphaSafeImageButton
+            <ImageButton
                 android:id="@+id/left_button"
-                android:layout_width="@dimen/design_fab_size_normal"
-                android:layout_height="@dimen/design_fab_size_normal"
+                android:layout_width="@dimen/fab_button_size"
+                android:layout_height="@dimen/fab_button_size"
                 android:layout_gravity="center"
                 android:contentDescription="@null"
                 android:scaleType="center" />
@@ -110,14 +110,14 @@
             android:layout_gravity="end|center_vertical"
             android:layout_weight="1">
 
-            <com.android.deskclock.widget.AlphaSafeImageButton
+            <ImageButton
                 android:id="@+id/right_button"
-                android:layout_width="@dimen/design_fab_size_normal"
-                android:layout_height="@dimen/design_fab_size_normal"
+                android:layout_width="@dimen/fab_button_size"
+                android:layout_height="@dimen/fab_button_size"
                 android:layout_gravity="center"
                 android:contentDescription="@null"
                 android:scaleType="center" />
 
         </FrameLayout>
     </LinearLayout>
-</android.support.design.widget.CoordinatorLayout>
+</android.support.design.widget.CoordinatorLayout>
\ No newline at end of file
diff --git a/res/layout/expired_timers_activity.xml b/res/layout/expired_timers_activity.xml
index 0bd487e..34ef57e 100644
--- a/res/layout/expired_timers_activity.xml
+++ b/res/layout/expired_timers_activity.xml
@@ -33,8 +33,8 @@
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:clipToPadding="false"
-            android:orientation="vertical"
-            android:paddingTop="?attr/actionBarSize" />
+            android:orientation="vertical" />
+
     </ScrollView>
 
     <android.support.design.widget.FloatingActionButton
@@ -47,4 +47,5 @@
         android:src="@drawable/ic_stop_white_24dp"
         app:borderWidth="0dp"
         app:elevation="@dimen/fab_elevation" />
+
 </FrameLayout>
\ No newline at end of file
diff --git a/res/layout/main_clock_frame.xml b/res/layout/main_clock_frame.xml
index cba58d9..f59f614 100644
--- a/res/layout/main_clock_frame.xml
+++ b/res/layout/main_clock_frame.xml
@@ -14,12 +14,12 @@
      limitations under the License.
 -->
 
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:gravity="center_horizontal"
-    android:orientation="vertical"
-    android:paddingEnd="@dimen/clock_fragment_end_padding">
+    android:orientation="vertical">
 
     <FrameLayout
         android:layout_width="wrap_content"
diff --git a/res/layout/stopwatch_fragment.xml b/res/layout/stopwatch_fragment.xml
index 5ce57af..59c0b52 100644
--- a/res/layout/stopwatch_fragment.xml
+++ b/res/layout/stopwatch_fragment.xml
@@ -13,38 +13,40 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
+
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:baselineAligned="false"
     android:gravity="center"
-    android:orientation="vertical"
-    android:paddingBottom="@dimen/fab_height">
+    android:baselineAligned="false"
+    android:orientation="vertical">
 
-    <FrameLayout
-        android:layout_width="@dimen/circle_size"
-        android:layout_height="@dimen/circle_size"
-        android:layout_gravity="center"
-        android:padding="16dp">
+    <android.support.percent.PercentFrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center">
 
-        <com.android.deskclock.timer.CountingTimerView
-            android:id="@+id/stopwatch_time_text"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent" />
+        <com.android.deskclock.TimerCircleFrameLayout
+            app:layout_aspectRatio="100%"
+            app:layout_widthPercent="@fraction/timer_circle_width_percent"
+            app:layout_heightPercent="@fraction/timer_circle_height_percent"
+            android:layout_gravity="center">
 
-        <com.android.deskclock.stopwatch.StopwatchCircleView
-            android:id="@+id/stopwatch_time"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:background="@null" />
-    </FrameLayout>
+            <include layout="@layout/stopwatch_view" />
+
+        </com.android.deskclock.TimerCircleFrameLayout>
+
+    </android.support.percent.PercentFrameLayout>
 
     <android.support.v7.widget.RecyclerView
         android:id="@+id/laps_list"
         android:layout_width="match_parent"
         android:layout_height="0dp"
+        android:layout_weight="1"
         android:layout_gravity="center"
-        android:layout_weight="1" />
+        android:clipToPadding="false"
+        android:paddingBottom="@dimen/fab_height" />
 
 </LinearLayout>
\ No newline at end of file
diff --git a/res/layout/stopwatch_notif_collapsed.xml b/res/layout/stopwatch_notif_collapsed.xml
index a8ec193..bd67423 100644
--- a/res/layout/stopwatch_notif_collapsed.xml
+++ b/res/layout/stopwatch_notif_collapsed.xml
@@ -15,7 +15,8 @@
      limitations under the License.
 -->
 
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/swn_collapsed_hitspace"
     android:layout_width="match_parent"
     android:layout_height="64dp"
@@ -44,11 +45,12 @@
 
             <Chronometer
                 android:id="@+id/swn_collapsed_chronometer"
-                android:layout_width="0dip"
+                android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_weight="1"
                 android:singleLine="true"
                 android:textAppearance="@style/TextAppearance.StatusBar.EventContent.Title" />
+
         </LinearLayout>
 
         <TextView
@@ -61,6 +63,7 @@
             android:visibility="gone"
             android:singleLine="true"
             android:textAppearance="@style/TextAppearance.StatusBar.EventContent" />
+
     </LinearLayout>
 
 </FrameLayout>
\ No newline at end of file
diff --git a/res/layout/stopwatch_notif_expanded.xml b/res/layout/stopwatch_notif_expanded.xml
index 5bb59a5..ec3e951 100644
--- a/res/layout/stopwatch_notif_expanded.xml
+++ b/res/layout/stopwatch_notif_expanded.xml
@@ -15,7 +15,8 @@
      limitations under the License.
 -->
 
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:divider="@drawable/horizontal_divider"
@@ -52,7 +53,7 @@
 
                 <Chronometer
                     android:id="@+id/swn_expanded_chronometer"
-                    android:layout_width="0dip"
+                    android:layout_width="0dp"
                     android:layout_height="wrap_content"
                     android:layout_weight="1"
                     android:singleLine="true"
@@ -69,7 +70,9 @@
                 android:singleLine="true"
                 android:textAppearance="@style/TextAppearance.StatusBar.EventContent"
                 android:visibility="gone" />
+
         </LinearLayout>
+
     </FrameLayout>
 
     <LinearLayout
@@ -106,6 +109,7 @@
             android:paddingStart="8dp"
             android:singleLine="true"
             android:textAppearance="@style/TextAppearance.StatusBar.EventContent" />
+
     </LinearLayout>
 
 </LinearLayout>
\ No newline at end of file
diff --git a/res/layout/stopwatch_notification_icon.xml b/res/layout/stopwatch_notification_icon.xml
index ed8761d..f0872a1 100644
--- a/res/layout/stopwatch_notification_icon.xml
+++ b/res/layout/stopwatch_notification_icon.xml
@@ -21,4 +21,4 @@
     android:layout_height="@dimen/notification_icon_size"
     android:background="@drawable/notification_icon_bg"
     android:scaleType="center"
-    android:contentDescription="@null" />
+    android:contentDescription="@null" />
\ No newline at end of file
diff --git a/res/layout/blank_footer_view.xml b/res/layout/stopwatch_view.xml
similarity index 60%
copy from res/layout/blank_footer_view.xml
copy to res/layout/stopwatch_view.xml
index c9460fc..ecc4322 100644
--- a/res/layout/blank_footer_view.xml
+++ b/res/layout/stopwatch_view.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
+<!-- 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.
@@ -13,7 +13,13 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<View xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:background="@color/transparent"
-    android:layout_height="@dimen/button_footer_height" />
\ No newline at end of file
+
+<!-- Insufficient space exists to include the bounding stopwatch circle. -->
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <com.android.deskclock.timer.CountingTimerView
+        android:id="@+id/stopwatch_time_text"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent" />
+
+</merge>
\ No newline at end of file
diff --git a/res/layout/three_keys_view.xml b/res/layout/three_keys_view.xml
index f0e17e3..10e8ccb 100644
--- a/res/layout/three_keys_view.xml
+++ b/res/layout/three_keys_view.xml
@@ -13,38 +13,40 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-              android:layout_width="match_parent"
-              android:layout_weight="1"
-              android:gravity="center"
-              android:layoutDirection="ltr"
-              android:layout_height="0dip">
+
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="0dp"
+    android:layout_weight="1"
+    android:gravity="center"
+    android:layoutDirection="ltr">
 
     <Button
         android:id="@+id/key_left"
         style="@style/dialpad"
-        android:layout_width="0dip"
-        android:layout_weight="1"
+        android:layout_width="0dp"
         android:layout_height="match_parent"
+        android:layout_weight="1"
         android:background="?attr/selectableItemBackgroundBorderless"
         android:gravity="center" />
 
     <Button
         android:id="@+id/key_middle"
         style="@style/dialpad"
-        android:layout_width="0dip"
-        android:layout_weight="1"
+        android:layout_width="0dp"
         android:layout_height="match_parent"
+        android:layout_weight="1"
         android:background="?attr/selectableItemBackgroundBorderless"
         android:gravity="center" />
 
     <Button
         android:id="@+id/key_right"
         style="@style/dialpad"
-        android:layout_width="0dip"
-        android:layout_weight="1"
+        android:layout_width="0dp"
         android:layout_height="match_parent"
+        android:layout_weight="1"
         android:background="?attr/selectableItemBackgroundBorderless"
         android:gravity="center" />
 
-</LinearLayout>
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/time_setup_container.xml b/res/layout/time_setup_container.xml
new file mode 100644
index 0000000..4acbbd4
--- /dev/null
+++ b/res/layout/time_setup_container.xml
@@ -0,0 +1,42 @@
+<?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.
+-->
+
+<!-- Flanks the timer setup view (which has multiple layouts) with gutters. -->
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+    <!-- Left gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+    <!-- Guttered content. -->
+    <include
+        layout="@layout/time_setup_view"
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/guttered_content_width_percent" />
+
+    <!-- Right gutter. -->
+    <Space
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="@integer/gutter_width_percent" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/time_setup_view.xml b/res/layout/time_setup_view.xml
index 881b82b..2f92b57 100644
--- a/res/layout/time_setup_view.xml
+++ b/res/layout/time_setup_view.xml
@@ -13,22 +13,21 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
+
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
+    android:gravity="center_horizontal"
     android:orientation="vertical"
     android:paddingBottom="@dimen/fab_height">
 
     <com.android.deskclock.timer.TimerView
         android:id="@+id/timer_time_text"
-        android:layout_width="match_parent"
+        android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:gravity="center_horizontal"
-        android:layoutDirection="ltr"
-        android:orientation="horizontal"
-        android:paddingBottom="@dimen/medium_font_padding"
-        android:paddingTop="@dimen/medium_font_padding">
+        android:baselineAligned="true"
+        android:layoutDirection="ltr">
 
         <include layout="@layout/timer_h_mm_ss_view" />
 
@@ -36,8 +35,7 @@
             android:id="@+id/delete"
             android:layout_width="wrap_content"
             android:layout_height="match_parent"
-            android:layout_gravity="center"
-            android:layout_marginStart="@dimen/timer_setup_delete_start_margin"
+            android:layout_marginStart="@dimen/timer_setup_delete_margin"
             android:padding="@dimen/timer_setup_delete_padding"
             android:contentDescription="@string/timer_delete"
             android:scaleType="center"
@@ -48,8 +46,8 @@
     <View
         android:id="@+id/divider"
         android:layout_width="match_parent"
-        android:layout_height="1dip"
-        android:layout_marginBottom="8dip"
+        android:layout_height="1dp"
+        android:layout_marginBottom="8dp"
         android:background="@color/dialog_gray" />
 
     <include
@@ -68,4 +66,4 @@
         android:id="@+id/fourth"
         layout="@layout/three_keys_view" />
 
-</LinearLayout>
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/timer_fragment.xml b/res/layout/timer_fragment.xml
index 346d7b5..a34d956 100644
--- a/res/layout/timer_fragment.xml
+++ b/res/layout/timer_fragment.xml
@@ -25,56 +25,62 @@
         android:layout_height="match_parent">
 
         <LinearLayout
-            android:layout_width="wrap_content"
+            android:layout_width="match_parent"
             android:layout_height="match_parent"
-            android:layout_gravity="end|center_vertical"
-            android:layout_marginEnd="24dp"
-            android:gravity="center"
-            android:orientation="vertical">
+            android:layout_marginBottom="@dimen/fab_height"
+            android:orientation="horizontal">
 
-            <ImageView
-                android:id="@+id/page_indicator0"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:contentDescription="@null"/>
+            <LinearLayout
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_weight="96"
+                android:gravity="center_vertical|end"
+                android:orientation="vertical">
 
-            <ImageView
-                android:id="@+id/page_indicator1"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:contentDescription="@null"/>
+                <ImageView
+                    android:id="@+id/page_indicator0"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null" />
 
-            <ImageView
-                android:id="@+id/page_indicator2"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:contentDescription="@null"/>
+                <ImageView
+                    android:id="@+id/page_indicator1"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null" />
 
-            <ImageView
-                android:id="@+id/page_indicator3"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:contentDescription="@null"/>
+                <ImageView
+                    android:id="@+id/page_indicator2"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null" />
 
+                <ImageView
+                    android:id="@+id/page_indicator3"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:contentDescription="@null" />
+
+            </LinearLayout>
+
+            <!-- Right gutter. -->
             <Space
-                android:layout_width="match_parent"
-                android:layout_height="@dimen/footer_button_size"
-                android:layout_marginBottom="16dp"
-                android:layout_marginTop="16dp"/>
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_weight="@integer/gutter_width_percent" />
 
         </LinearLayout>
 
         <com.android.deskclock.VerticalViewPager
             android:id="@+id/vertical_view_pager"
             android:layout_width="match_parent"
-            android:layout_height="match_parent"/>
+            android:layout_height="match_parent" />
 
     </FrameLayout>
 
     <com.android.deskclock.timer.TimerSetupView
         android:id="@+id/timer_setup"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:layout_margin="16dp"/>
+        android:layout_height="match_parent" />
 
-</FrameLayout>
+</FrameLayout>
\ No newline at end of file
diff --git a/res/layout/timer_h_mm_ss_view.xml b/res/layout/timer_h_mm_ss_view.xml
index 51b6ac6..987d2f2 100644
--- a/res/layout/timer_h_mm_ss_view.xml
+++ b/res/layout/timer_h_mm_ss_view.xml
@@ -14,95 +14,60 @@
      limitations under the License.
 -->
 
-<merge xmlns:android="http://schemas.android.com/apk/res/android"
-       android:layout_width="match_parent"
-       android:layout_height="match_parent">
+<merge
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
 
     <TextView
         android:id="@+id/hours_tens"
         style="@style/timer_setup_digit"
         android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:textColor="@color/clock_white"/>
+        android:layout_height="wrap_content" />
 
     <TextView
         android:id="@+id/hours_ones"
         style="@style/timer_setup_digit"
         android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:textColor="@color/clock_white"/>
+        android:layout_height="wrap_content" />
 
     <TextView
-        style="@style/label"
+        style="@style/timer_setup_label"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_gravity="bottom"
         android:contentDescription="@string/hours_label_description"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:text="@string/hours_label"
-        android:textColor="@color/clock_white"/>
+        android:text="@string/hours_label" />
 
     <TextView
         android:id="@+id/minutes_tens"
         style="@style/timer_setup_digit"
         android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:textColor="@color/clock_white"/>
+        android:layout_height="wrap_content" />
 
     <TextView
         android:id="@+id/minutes_ones"
         style="@style/timer_setup_digit"
         android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:textColor="@color/clock_white"/>
+        android:layout_height="wrap_content" />
 
     <TextView
-        style="@style/label"
+        style="@style/timer_setup_label"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_gravity="bottom"
         android:contentDescription="@string/minutes_label_description"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:text="@string/minutes_label"
-        android:textColor="@color/clock_white"/>
+        android:text="@string/minutes_label" />
 
     <TextView
         android:id="@+id/seconds"
         style="@style/timer_setup_digit"
         android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_gravity="bottom"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:textColor="@color/clock_white"/>
+        android:layout_height="wrap_content" />
 
     <TextView
-        style="@style/label"
+        style="@style/timer_setup_label"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_gravity="bottom"
         android:contentDescription="@string/seconds_label_description"
-        android:ellipsize="none"
-        android:fontFamily="sans-serif-thin"
-        android:singleLine="true"
-        android:text="@string/seconds_label"
-        android:textColor="@color/clock_white"/>
+        android:text="@string/seconds_label" />
 
 </merge>
\ No newline at end of file
diff --git a/res/layout/timer_item.xml b/res/layout/timer_item.xml
index 6c0a277..6440f18 100644
--- a/res/layout/timer_item.xml
+++ b/res/layout/timer_item.xml
@@ -14,37 +14,28 @@
      limitations under the License.
 -->
 
+<!-- This TimerItem discards the circle because space is limited. -->
 <com.android.deskclock.timer.TimerItem
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:layout_gravity="center"
-    android:gravity="center_vertical"
-    android:orientation="vertical"
-    android:paddingBottom="@dimen/timer_list_padding_bottom">
+    android:layout_height="match_parent"
+    android:orientation="vertical">
 
-    <com.android.deskclock.CircleButtonsLayout
-        android:id="@+id/timer_circle"
-        android:layout_width="@dimen/circle_size"
-        android:layout_height="@dimen/circle_size"
-        android:layout_gravity="center"
-        android:padding="@dimen/timer_padding">
-
-        <com.android.deskclock.timer.TimerCircleView
-            android:id="@+id/timer_time"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"/>
+    <FrameLayout
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1">
 
         <com.android.deskclock.timer.CountingTimerView
             android:id="@+id/timer_time_text"
             android:layout_width="match_parent"
-            android:layout_height="match_parent"/>
+            android:layout_height="match_parent" />
 
         <Button
             android:id="@+id/timer_label"
             style="?android:attr/borderlessButtonStyle"
             android:layout_width="wrap_content"
-            android:layout_height="56dp"
+            android:layout_height="40dp"
             android:layout_gravity="top|center_horizontal"
             android:clickable="false"
             android:ellipsize="end"
@@ -52,18 +43,22 @@
             android:hint="@string/label"
             android:maxLines="1"
             android:src="@drawable/ic_label"
-            android:textAppearance="@style/SecondaryLabelTextAppearance"/>
+            android:textAppearance="@style/SecondaryLabelTextAppearance" />
 
         <ImageButton
             android:id="@+id/reset_add"
-            android:layout_width="50dp"
-            android:layout_height="50dp"
+            android:layout_width="@dimen/fab_button_size"
+            android:layout_height="@dimen/fab_button_size"
             android:layout_gravity="bottom|center_horizontal"
             android:contentDescription="@string/timer_plus_one"
             android:gravity="center"
             android:scaleType="center"
-            android:src="@drawable/ic_plusone"/>
+            android:src="@drawable/ic_plusone" />
 
-    </com.android.deskclock.CircleButtonsLayout>
+    </FrameLayout>
+
+    <Space
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/fab_height" />
 
 </com.android.deskclock.timer.TimerItem>
\ No newline at end of file
diff --git a/res/layout/world_clock_item.xml b/res/layout/world_clock_item.xml
index 9dc27c2..7ea2d32 100644
--- a/res/layout/world_clock_item.xml
+++ b/res/layout/world_clock_item.xml
@@ -18,15 +18,28 @@
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
-    android:gravity="center_vertical"
-    android:paddingTop="@dimen/medium_space_top">
+    android:gravity="center_vertical">
 
-    <include layout="@layout/world_clock_label" />
+    <TextView
+        android:id="@+id/city_name"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:ellipsize="end"
+        android:singleLine="true"
+        android:textAppearance="@style/PrimaryLabelTextAppearance" />
+
+    <TextView
+        android:id="@+id/city_day"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="@dimen/style_label_space"
+        android:ellipsize="none"
+        android:singleLine="true"
+        android:textAppearance="@style/SecondaryLabelTextAppearance" />
 
     <FrameLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="horizontal">
+        android:layout_height="wrap_content">
 
         <TextClock
             android:id="@+id/digital_clock"
@@ -50,5 +63,4 @@
 
     </FrameLayout>
 
-</com.android.deskclock.widget.EllipsizeLayout>
-
+</com.android.deskclock.widget.EllipsizeLayout>
\ No newline at end of file
diff --git a/res/layout/world_clock_label.xml b/res/layout/world_clock_label.xml
deleted file mode 100644
index 9111f61..0000000
--- a/res/layout/world_clock_label.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 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.
--->
-<merge xmlns:android="http://schemas.android.com/apk/res/android">
-
-    <TextView
-        android:id="@+id/city_name"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:ellipsize="end"
-        android:singleLine="true"
-        android:textAppearance="@style/PrimaryLabelTextAppearance" />
-
-    <TextView
-        android:id="@+id/city_day"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_marginStart="@dimen/style_label_space"
-        android:ellipsize="none"
-        android:singleLine="true"
-        android:textAppearance="@style/SecondaryLabelTextAppearance" />
-
-</merge>
-
diff --git a/res/layout/world_clock_list_item.xml b/res/layout/world_clock_list_item.xml
deleted file mode 100644
index 49519df..0000000
--- a/res/layout/world_clock_list_item.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 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.
--->
-
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:layout_marginRight="@dimen/world_clock_margin"
-    android:layout_marginEnd="@dimen/world_clock_margin"
-    android:layout_marginLeft="@dimen/world_clock_margin"
-    android:layout_marginStart="@dimen/world_clock_margin"
-    android:paddingEnd="@dimen/clock_fragment_end_padding"
-    android:orientation="horizontal">
-
-    <include layout="@layout/world_clock_item"
-        android:id="@+id/city_left"
-        android:gravity="center"
-        android:layout_width="0dip"
-        android:layout_weight="1"
-        android:layout_height="wrap_content"/>
-
-</LinearLayout>
diff --git a/res/menu/desk_clock_menu.xml b/res/menu/desk_clock_menu.xml
deleted file mode 100644
index 2bf66c6..0000000
--- a/res/menu/desk_clock_menu.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2009 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.
--->
-
-<menu xmlns:android="http://schemas.android.com/apk/res/android"
-      xmlns:app="http://schemas.android.com/apk/res-auto">
-    <group android:id="@+id/menu_items">
-        <item
-            android:id="@+id/menu_item_search"
-            android:icon="@android:drawable/ic_menu_search"
-            android:imeOptions="actionSearch"
-            android:orderInCategory="1"
-            android:title="@android:string/search_go"
-            android:visible="false"
-            app:actionViewClass="android.support.v7.widget.SearchView"
-            app:showAsAction="ifRoom"/>
-        <item
-            android:id="@+id/menu_item_sort"
-            android:title="@string/menu_item_sort_by_gmt_offset"
-            app:showAsAction="never"/>
-        <item
-            android:id="@+id/menu_item_night_mode"
-            android:icon="@android:drawable/ic_menu_preferences"
-            android:title="@string/menu_item_night_mode"/>
-        <item
-            android:id="@+id/menu_item_settings"
-            android:icon="@android:drawable/ic_menu_preferences"
-            android:title="@string/menu_item_settings"/>
-    </group>
-</menu>
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index bc5565c..ca27dbe 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Onbekend"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Wekkervolume is gedemp"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Ontdemp"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Verstekwekkerluitoon is stil"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Verander"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Toestel is op algehele stilte gestel"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Volumeknoppies"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Sluimer"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Aftellervibrasie"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Afteller is laat wag"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> aftellers is laat wag"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Raak om jou aftellers te sien"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tik om jou tydhouers te sien"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> aftellers"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Volgende afteller: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Droom-instellings"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Sluimerskerminstellings"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nag-modus"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Skerm baie verdof (vir donker kamers)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Vou wekker uit"</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 78d8357..a3f95ba 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"ያልታወቀ"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"የማንቂያ ድምጽ ተዘግቷል"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"ድምፅ-ከል አንሳ"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"ነባሪ የማንቂያ ጥሪ ድምፅ ጸጥ ያለ ነው"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"ለውጥ"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"መሣሪያ ወደ ጠቅላላ ጸጥታ ተዘጋጅቷል"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"የድምፅ አዝራሮች"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"አሸልብ"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"የጊዜ ቆጣሪ ንዝረት"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ጊዜ ቆጣሪ ለአፍታ ቆሟል"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ሰዓት ቆጣሪዎች ለአፍታ ቆመዋል"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"የሰዓት ቆጣሪዎችዎን ለማየት ይንኩ"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"የእርስዎን ጊዜ መቁጠሪያዎች ለማየት ነካ ያድርጉ።"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ሰዓት ቆጣሪዎች"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"ቀጣዩ የሰዓት ቆጣሪ፦ <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"የህልም ቅንብሮች"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"የማያ ገጽ ጠባቂ ቅንብሮች"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"የማታ ሁነታ"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ብርሃኑ በጣም የፈዘዘ ማሳያ (ለጨለሙ ክፍሎች)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"ማንቂያ ዘርጋ"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 608eb40..8bcb196 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -150,6 +150,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"غير معروف"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"تم كتم صوت المنبه."</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"إعادة الصوت"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"تم تعيين الجهاز إلى الوضع الصامت كليًا."</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"أزرار مستوى الصوت"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"غفوة"</item>
@@ -353,10 +358,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"اهتزاز الموقت"</string>
     <string name="timer_paused" msgid="5941160896040771462">"تم إيقاف الموقِّت مؤقتًا"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"تم إيقاف <xliff:g id="NUMBER">%d</xliff:g> موقِّتات مؤقتُا"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"المس للاطلاع على الموقتات"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"انقر للاطلاع على الموقِّتات التابعة لك"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> من الموقتات"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"الموقت التالي: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"‏إعدادات Dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"إعدادات شاشة التوقف"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"وضع ليلي"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"شاشة معتمة جدًا (للغرف المظلمة)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"توسيع المنبه"</string>
diff --git a/res/values-az-rAZ/strings.xml b/res/values-az-rAZ/strings.xml
index 1cf3318..8f2b801 100644
--- a/res/values-az-rAZ/strings.xml
+++ b/res/values-az-rAZ/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Naməlum"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Siqnal susturulub"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Susdurmayın"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Cihaz tam səssiz rejimə ayarlanıb"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Səs düymələri"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Təxirə sal"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Taymer vibrasiyası"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Taymer durdurulub"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> taymer durdurulub"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Vaxtölçənlərinizi görmək üçün toxunun"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Vaxtölçənlərinizi görmək üçün tıklayın"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> vaxtölçən"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Sonrakı vaxtölçən: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Yuxu parametrləri"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ekran qoruyucu ayarları"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Gecə rejimi"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Çox zəif ekran (qaranlıq otaqlar üçün)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Siqnalı genişlət"</string>
diff --git a/res/values-b+sr+Latn/cities.xml b/res/values-b+sr+Latn/cities.xml
new file mode 100644
index 0000000..ae73461
--- /dev/null
+++ b/res/values-b+sr+Latn/cities.xml
@@ -0,0 +1,360 @@
+<?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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="C1" msgid="3622720549928625541">"<xliff:g id="SEPARATOR">=</xliff:g>Abidžan<xliff:g id="TIMEZONE">|Africa/Abidjan</xliff:g>"</string>
+    <string name="C2" msgid="9073993995416728918">"<xliff:g id="SEPARATOR">=</xliff:g>Akra<xliff:g id="TIMEZONE">|Africa/Accra</xliff:g>"</string>
+    <string name="C3" msgid="5172979423931428620">"<xliff:g id="SEPARATOR">=</xliff:g>Adis Abeba<xliff:g id="TIMEZONE">|Africa/Addis_Ababa</xliff:g>"</string>
+    <string name="C4" msgid="4450258423854546267">"<xliff:g id="SEPARATOR">=</xliff:g>Alžir<xliff:g id="TIMEZONE">|Africa/Algiers</xliff:g>"</string>
+    <string name="C5" msgid="8063142106679202722">"<xliff:g id="SEPARATOR">=</xliff:g>Blantajer<xliff:g id="TIMEZONE">|Africa/Blantyre</xliff:g>"</string>
+    <string name="C6" msgid="1620940469531839828">"<xliff:g id="SEPARATOR">=</xliff:g>Brazavil<xliff:g id="TIMEZONE">|Africa/Brazzaville</xliff:g>"</string>
+    <string name="C7" msgid="8450502029020824529">"<xliff:g id="SEPARATOR">=</xliff:g>Kairo<xliff:g id="TIMEZONE">|Africa/Cairo</xliff:g>"</string>
+    <string name="C8" msgid="5843391672611053116">"<xliff:g id="SEPARATOR">=</xliff:g>Kazablanka<xliff:g id="TIMEZONE">|Africa/Casablanca</xliff:g>"</string>
+    <string name="C9" msgid="2164088076645942134">"<xliff:g id="SEPARATOR">=</xliff:g>Konakri<xliff:g id="TIMEZONE">|Africa/Conakry</xliff:g>"</string>
+    <string name="C10" msgid="6275085554326816487">"<xliff:g id="SEPARATOR">=</xliff:g>Dakar<xliff:g id="TIMEZONE">|Africa/Dakar</xliff:g>"</string>
+    <string name="C11" msgid="8124988526568339100">"<xliff:g id="SEPARATOR">=</xliff:g>Dar es Salam<xliff:g id="TIMEZONE">|Africa/Dar_es_Salaam</xliff:g>"</string>
+    <string name="C12" msgid="9058858575164534385">"<xliff:g id="SEPARATOR">=</xliff:g>Džibuti<xliff:g id="TIMEZONE">|Africa/Djibouti</xliff:g>"</string>
+    <string name="C13" msgid="1020128319695123468">"<xliff:g id="SEPARATOR">=</xliff:g>Fritaun<xliff:g id="TIMEZONE">|Africa/Freetown</xliff:g>"</string>
+    <string name="C14" msgid="5466600602512133072">"<xliff:g id="SEPARATOR">=</xliff:g>Gaborone<xliff:g id="TIMEZONE">|Africa/Gaborone</xliff:g>"</string>
+    <string name="C15" msgid="4045696872348427594">"<xliff:g id="SEPARATOR">=</xliff:g>Harare<xliff:g id="TIMEZONE">|Africa/Harare</xliff:g>"</string>
+    <string name="C16" msgid="109844560982762747">"<xliff:g id="SEPARATOR">=</xliff:g>Johanesburg<xliff:g id="TIMEZONE">|Africa/Johannesburg</xliff:g>"</string>
+    <string name="C17" msgid="4868414442726546214">"<xliff:g id="SEPARATOR">=</xliff:g>Kampala<xliff:g id="TIMEZONE">|Africa/Kampala</xliff:g>"</string>
+    <string name="C18" msgid="7460319039497808668">"<xliff:g id="SEPARATOR">=</xliff:g>Kartum<xliff:g id="TIMEZONE">|Africa/Khartoum</xliff:g>"</string>
+    <string name="C19" msgid="3967163989179394825">"<xliff:g id="SEPARATOR">=</xliff:g>Kigali<xliff:g id="TIMEZONE">|Africa/Kigali</xliff:g>"</string>
+    <string name="C20" msgid="832336979058592106">"<xliff:g id="SEPARATOR">=</xliff:g>Kinšasa<xliff:g id="TIMEZONE">|Africa/Kinshasa</xliff:g>"</string>
+    <string name="C21" msgid="8691772487297796331">"<xliff:g id="SEPARATOR">=</xliff:g>Lagos<xliff:g id="TIMEZONE">|Africa/Lagos</xliff:g>"</string>
+    <string name="C22" msgid="6061916756914828881">"<xliff:g id="SEPARATOR">=</xliff:g>Maseru<xliff:g id="TIMEZONE">|Africa/Maseru</xliff:g>"</string>
+    <string name="C23" msgid="6790461017899209498">"<xliff:g id="SEPARATOR">=</xliff:g>Mogadišu<xliff:g id="TIMEZONE">|Africa/Mogadishu</xliff:g>"</string>
+    <string name="C24" msgid="836730985302941979">"<xliff:g id="SEPARATOR">=</xliff:g>Najrobi<xliff:g id="TIMEZONE">|Africa/Nairobi</xliff:g>"</string>
+    <string name="C25" msgid="6439936809920816845">"<xliff:g id="SEPARATOR">=</xliff:g>Sao Tome<xliff:g id="TIMEZONE">|Africa/Sao_Tome</xliff:g>"</string>
+    <string name="C26" msgid="3250092456144685877">"<xliff:g id="SEPARATOR">=</xliff:g>Timbuktu<xliff:g id="TIMEZONE">|Africa/Timbuktu</xliff:g>"</string>
+    <string name="C27" msgid="851018621577780718">"<xliff:g id="SEPARATOR">=</xliff:g>Tripoli<xliff:g id="TIMEZONE">|Africa/Tripoli</xliff:g>"</string>
+    <string name="C28" msgid="7979767521827885833">"<xliff:g id="SEPARATOR">=</xliff:g>Tunis<xliff:g id="TIMEZONE">|Africa/Tunis</xliff:g>"</string>
+    <string name="C29" msgid="7946114495840302218">"<xliff:g id="SEPARATOR">=</xliff:g>Enkoridž<xliff:g id="TIMEZONE">|America/Anchorage</xliff:g>"</string>
+    <string name="C31" msgid="9017443250572798257">"<xliff:g id="SEPARATOR">=</xliff:g>Aruba<xliff:g id="TIMEZONE">|America/Aruba</xliff:g>"</string>
+    <string name="C32" msgid="3825060534011309483">"<xliff:g id="SEPARATOR">=</xliff:g>Asunsion<xliff:g id="TIMEZONE">|America/Asuncion</xliff:g>"</string>
+    <string name="C33" msgid="700410369162607101">"<xliff:g id="SEPARATOR">=</xliff:g>Barbados<xliff:g id="TIMEZONE">|America/Barbados</xliff:g>"</string>
+    <string name="C34" msgid="4247046344370912762">"<xliff:g id="SEPARATOR">=</xliff:g>Belize<xliff:g id="TIMEZONE">|America/Belize</xliff:g>"</string>
+    <string name="C35" msgid="2794708943743875418">"<xliff:g id="SEPARATOR">=</xliff:g>Bogota<xliff:g id="TIMEZONE">|America/Bogota</xliff:g>"</string>
+    <string name="C36" msgid="5404342554664613950">"<xliff:g id="SEPARATOR">=</xliff:g>Buenos Ajres<xliff:g id="TIMEZONE">|America/Buenos_Aires</xliff:g>"</string>
+    <string name="C37" msgid="210142862572070093">"<xliff:g id="SEPARATOR">=</xliff:g>Kankun<xliff:g id="TIMEZONE">|America/Cancun</xliff:g>"</string>
+    <string name="C38" msgid="3882347315148425276">"<xliff:g id="SEPARATOR">=</xliff:g>Karakas<xliff:g id="TIMEZONE">|America/Caracas</xliff:g>"</string>
+    <string name="C39" msgid="1273212484626323439">"<xliff:g id="SEPARATOR">=</xliff:g>Kajmanska ostrva<xliff:g id="TIMEZONE">|America/Cayman</xliff:g>"</string>
+    <string name="C40" msgid="3106173663723475314">"<xliff:g id="SEPARATOR">=</xliff:g>Čikago<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C42" msgid="5638414063615009004">"<xliff:g id="SEPARATOR">=</xliff:g>Kurasao<xliff:g id="TIMEZONE">|America/Curacao</xliff:g>"</string>
+    <string name="C43" msgid="6826097241516998181">"<xliff:g id="SEPARATOR">=</xliff:g>Doson Krik<xliff:g id="TIMEZONE">|America/Dawson_Creek</xliff:g>"</string>
+    <string name="C44" msgid="2779334691893631030">"<xliff:g id="SEPARATOR">=</xliff:g>Denver<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C45" msgid="8943178793317201894">"<xliff:g id="SEPARATOR">=</xliff:g>Detroit<xliff:g id="TIMEZONE">|America/Detroit</xliff:g>"</string>
+    <string name="C46" msgid="5190250990574320177">"<xliff:g id="SEPARATOR">=</xliff:g>Dominika<xliff:g id="TIMEZONE">|America/Dominica</xliff:g>"</string>
+    <string name="C47" msgid="369754396219379227">"<xliff:g id="SEPARATOR">=</xliff:g>Edmonton<xliff:g id="TIMEZONE">|America/Edmonton</xliff:g>"</string>
+    <string name="C48" msgid="7918902616648922410">"<xliff:g id="SEPARATOR">=</xliff:g>Salvador<xliff:g id="TIMEZONE">|America/El_Salvador</xliff:g>"</string>
+    <string name="C49" msgid="6326857727742458931">"<xliff:g id="SEPARATOR">=</xliff:g>Fortaleza<xliff:g id="TIMEZONE">|America/Fortaleza</xliff:g>"</string>
+    <string name="C50" msgid="3131498820508584398">"<xliff:g id="SEPARATOR">=</xliff:g>Grand Turk<xliff:g id="TIMEZONE">|America/Grand_Turk</xliff:g>"</string>
+    <string name="C51" msgid="3122278921760822414">"<xliff:g id="SEPARATOR">=</xliff:g>Grenada<xliff:g id="TIMEZONE">|America/Grenada</xliff:g>"</string>
+    <string name="C52" msgid="7461551991724617520">"<xliff:g id="SEPARATOR">=</xliff:g>Gvatemala<xliff:g id="TIMEZONE">|America/Guatemala</xliff:g>"</string>
+    <string name="C53" msgid="296242785331472791">"<xliff:g id="SEPARATOR">=</xliff:g>Gvajana<xliff:g id="TIMEZONE">|America/Guyana</xliff:g>"</string>
+    <string name="C54" msgid="4045007274020361950">"<xliff:g id="SEPARATOR">=</xliff:g>Halifaks<xliff:g id="TIMEZONE">|America/Halifax</xliff:g>"</string>
+    <string name="C55" msgid="8180186289266487770">"<xliff:g id="SEPARATOR">=</xliff:g>Havana<xliff:g id="TIMEZONE">|America/Havana</xliff:g>"</string>
+    <string name="C56" msgid="6062281725956353553">"<xliff:g id="SEPARATOR">=</xliff:g>Indijanapolis<xliff:g id="TIMEZONE">|America/Indiana/Indianapolis</xliff:g>"</string>
+    <string name="C57" msgid="5971109906791493563">"<xliff:g id="SEPARATOR">=</xliff:g>Noks<xliff:g id="TIMEZONE">|America/Indiana/Knox</xliff:g>"</string>
+    <string name="C58" msgid="7657721717096348613">"<xliff:g id="SEPARATOR">=</xliff:g>Marengo<xliff:g id="TIMEZONE">|America/Indiana/Marengo</xliff:g>"</string>
+    <string name="C59" msgid="2053523400941417307">"<xliff:g id="SEPARATOR">=</xliff:g>Pitersburg<xliff:g id="TIMEZONE">|America/Indiana/Petersburg</xliff:g>"</string>
+    <string name="C60" msgid="8112283891039465817">"<xliff:g id="SEPARATOR">=</xliff:g>Tel Siti<xliff:g id="TIMEZONE">|America/Indiana/Tell_City</xliff:g>"</string>
+    <string name="C61" msgid="7778713489993559227">"<xliff:g id="SEPARATOR">=</xliff:g>Vevej<xliff:g id="TIMEZONE">|America/Indiana/Vevay</xliff:g>"</string>
+    <string name="C62" msgid="2667958702401099683">"<xliff:g id="SEPARATOR">=</xliff:g>Vensen<xliff:g id="TIMEZONE">|America/Indiana/Vincennes</xliff:g>"</string>
+    <string name="C63" msgid="2251274863869460838">"<xliff:g id="SEPARATOR">=</xliff:g>Vinamak<xliff:g id="TIMEZONE">|America/Indiana/Winamac</xliff:g>"</string>
+    <string name="C64" msgid="1051183687128385699">"<xliff:g id="SEPARATOR">=</xliff:g>Kingston<xliff:g id="TIMEZONE">|America/Jamaica</xliff:g>"</string>
+    <string name="C65" msgid="4484953311341882894">"<xliff:g id="SEPARATOR">=</xliff:g>La Paz<xliff:g id="TIMEZONE">|America/La_Paz</xliff:g>"</string>
+    <string name="C66" msgid="4486852398001333122">"<xliff:g id="SEPARATOR">=</xliff:g>Lima<xliff:g id="TIMEZONE">|America/Lima</xliff:g>"</string>
+    <string name="C67" msgid="4874799181719358019">"<xliff:g id="SEPARATOR">=</xliff:g>Los Anđeles<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C68" msgid="5526012011469271690">"<xliff:g id="SEPARATOR">=</xliff:g>Luivil<xliff:g id="TIMEZONE">|America/Louisville</xliff:g>"</string>
+    <string name="C69" msgid="6147580167560875608">"<xliff:g id="SEPARATOR">=</xliff:g>Managva<xliff:g id="TIMEZONE">|America/Managua</xliff:g>"</string>
+    <string name="C70" msgid="3277881296053225577">"<xliff:g id="SEPARATOR">=</xliff:g>Martinik<xliff:g id="TIMEZONE">|America/Martinique</xliff:g>"</string>
+    <string name="C71" msgid="4017941126335556194">"<xliff:g id="SEPARATOR">=</xliff:g>Mendoza<xliff:g id="TIMEZONE">|America/Mendoza</xliff:g>"</string>
+    <string name="C72" msgid="3992109594245379480">"<xliff:g id="SEPARATOR">=</xliff:g>Metlakatla<xliff:g id="TIMEZONE">|America/Metlakatla</xliff:g>"</string>
+    <string name="C73" msgid="2715229408279026929">"<xliff:g id="SEPARATOR">=</xliff:g>Meksiko Siti<xliff:g id="TIMEZONE">|America/Mexico_City</xliff:g>"</string>
+    <string name="C74" msgid="4308784353529592128">"<xliff:g id="SEPARATOR">=</xliff:g>Monterej<xliff:g id="TIMEZONE">|America/Monterrey</xliff:g>"</string>
+    <string name="C75" msgid="1026967177018172509">"<xliff:g id="SEPARATOR">=</xliff:g>Montevideo<xliff:g id="TIMEZONE">|America/Montevideo</xliff:g>"</string>
+    <string name="C76" msgid="5677155513568462679">"<xliff:g id="SEPARATOR">=</xliff:g>Montreal<xliff:g id="TIMEZONE">|America/Montreal</xliff:g>"</string>
+    <string name="C77" msgid="7071675194537613715">"<xliff:g id="SEPARATOR">=</xliff:g>Nasau<xliff:g id="TIMEZONE">|America/Nassau</xliff:g>"</string>
+    <string name="C78" msgid="705452895809394827">"<xliff:g id="SEPARATOR">=</xliff:g>Njujork<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C79" msgid="615046244335186458">"<xliff:g id="SEPARATOR">=</xliff:g>Bjula<xliff:g id="TIMEZONE">|America/North_Dakota/Beulah</xliff:g>"</string>
+    <string name="C80" msgid="7462541787750301851">"<xliff:g id="SEPARATOR">=</xliff:g>Senter<xliff:g id="TIMEZONE">|America/North_Dakota/Center</xliff:g>"</string>
+    <string name="C81" msgid="5467118811364466464">"<xliff:g id="SEPARATOR">=</xliff:g>Nju Sejlem<xliff:g id="TIMEZONE">|America/North_Dakota/New_Salem</xliff:g>"</string>
+    <string name="C82" msgid="1040250446144596478">"<xliff:g id="SEPARATOR">=</xliff:g>Panama<xliff:g id="TIMEZONE">|America/Panama</xliff:g>"</string>
+    <string name="C83" msgid="3734366600481445363">"<xliff:g id="SEPARATOR">=</xliff:g>Feniks<xliff:g id="TIMEZONE">|America/Phoenix</xliff:g>"</string>
+    <string name="C84" msgid="2410152141185166321">"<xliff:g id="SEPARATOR">=</xliff:g>Port ov Spejn<xliff:g id="TIMEZONE">|America/Port_of_Spain</xliff:g>"</string>
+    <string name="C85" msgid="2883572094139689939">"<xliff:g id="SEPARATOR">=</xliff:g>Port o Prens<xliff:g id="TIMEZONE">|America/Port-au-Prince</xliff:g>"</string>
+    <string name="C86" msgid="274590042868724214">"<xliff:g id="SEPARATOR">=</xliff:g>Portoriko<xliff:g id="TIMEZONE">|America/Puerto_Rico</xliff:g>"</string>
+    <string name="C87" msgid="2866918562243248306">"<xliff:g id="SEPARATOR">=</xliff:g>Santo Domingo<xliff:g id="TIMEZONE">|America/Santo_Domingo</xliff:g>"</string>
+    <string name="C88" msgid="2261702707416420550">"<xliff:g id="SEPARATOR">=</xliff:g>Sao Paulo<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C89" msgid="8517952667962700432">"<xliff:g id="SEPARATOR">=</xliff:g>Sent Džons<xliff:g id="TIMEZONE">|America/St_Johns</xliff:g>"</string>
+    <string name="C90" msgid="1703939848190669830">"<xliff:g id="SEPARATOR">=</xliff:g>Sent Kits<xliff:g id="TIMEZONE">|America/St_Kitts</xliff:g>"</string>
+    <string name="C91" msgid="4438261556294969442">"<xliff:g id="SEPARATOR">=</xliff:g>Sveta Lucija<xliff:g id="TIMEZONE">|America/St_Lucia</xliff:g>"</string>
+    <string name="C92" msgid="3717300223413621820">"<xliff:g id="SEPARATOR">=</xliff:g>Sent Tomas<xliff:g id="TIMEZONE">|America/St_Thomas</xliff:g>"</string>
+    <string name="C93" msgid="964552099122372664">"<xliff:g id="SEPARATOR">=</xliff:g>Tihuana<xliff:g id="TIMEZONE">|America/Tijuana</xliff:g>"</string>
+    <string name="C94" msgid="6254783598629305021">"<xliff:g id="SEPARATOR">=</xliff:g>Toronto<xliff:g id="TIMEZONE">|America/Toronto</xliff:g>"</string>
+    <string name="C95" msgid="2144206125989179089">"<xliff:g id="SEPARATOR">=</xliff:g>Vankuver<xliff:g id="TIMEZONE">|America/Vancouver</xliff:g>"</string>
+    <string name="C96" msgid="3995904432128369027">"<xliff:g id="SEPARATOR">=</xliff:g>Vinipeg<xliff:g id="TIMEZONE">|America/Winnipeg</xliff:g>"</string>
+    <string name="C97" msgid="5667595440938233073">"<xliff:g id="SEPARATOR">=</xliff:g>Južni pol<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Antarctica/South_Pole</xliff:g>"</string>
+    <string name="C98" msgid="2067640513126652156">"<xliff:g id="SEPARATOR">=</xliff:g>Longjerbjen<xliff:g id="TIMEZONE">|Arctic/Longyearbyen</xliff:g>"</string>
+    <string name="C99" msgid="6750041547603679548">"<xliff:g id="SEPARATOR">=</xliff:g>Almati<xliff:g id="TIMEZONE">|Asia/Almaty</xliff:g>"</string>
+    <string name="C100" msgid="5995329947852415813">"<xliff:g id="SEPARATOR">=</xliff:g>Aman<xliff:g id="TIMEZONE">|Asia/Amman</xliff:g>"</string>
+    <string name="C101" msgid="5760056604239047274">"<xliff:g id="SEPARATOR">=</xliff:g>Anadir<xliff:g id="TIMEZONE">|Asia/Anadyr</xliff:g>"</string>
+    <string name="C102" msgid="9000357065825182754">"<xliff:g id="SEPARATOR">=</xliff:g>Aktau<xliff:g id="TIMEZONE">|Asia/Aqtau</xliff:g>"</string>
+    <string name="C103" msgid="8781982253489209791">"<xliff:g id="SEPARATOR">=</xliff:g>Bagdad<xliff:g id="TIMEZONE">|Asia/Baghdad</xliff:g>"</string>
+    <string name="C104" msgid="4021122575041916540">"<xliff:g id="SEPARATOR">=</xliff:g>Bahrein<xliff:g id="TIMEZONE">|Asia/Bahrain</xliff:g>"</string>
+    <string name="C105" msgid="1812915124794679606">"<xliff:g id="SEPARATOR">=</xliff:g>Baku<xliff:g id="TIMEZONE">|Asia/Baku</xliff:g>"</string>
+    <string name="C106" msgid="1996684628612964988">"<xliff:g id="SEPARATOR">=</xliff:g>Bangkok<xliff:g id="TIMEZONE">|Asia/Bangkok</xliff:g>"</string>
+    <string name="C107" msgid="227554925153715426">"B<xliff:g id="SEPARATOR">=</xliff:g>Bejrut<xliff:g id="TIMEZONE">|Asia/Beirut</xliff:g>"</string>
+    <string name="C108" msgid="5082419901681584844">"K<xliff:g id="SEPARATOR">=</xliff:g>Kalkuta<xliff:g id="TIMEZONE">|Asia/Calcutta</xliff:g>"</string>
+    <string name="C109" msgid="6386566477244958752">"<xliff:g id="SEPARATOR">=</xliff:g>Damask<xliff:g id="TIMEZONE">|Asia/Damascus</xliff:g>"</string>
+    <string name="C110" msgid="1165712058024165012">"<xliff:g id="SEPARATOR">=</xliff:g>Daka<xliff:g id="TIMEZONE">|Asia/Dhaka</xliff:g>"</string>
+    <string name="C111" msgid="5895260692253797547">"<xliff:g id="SEPARATOR">=</xliff:g>Dubai<xliff:g id="TIMEZONE">|Asia/Dubai</xliff:g>"</string>
+    <string name="C112" msgid="1708170128253320625">"<xliff:g id="SEPARATOR">=</xliff:g>Gaza<xliff:g id="TIMEZONE">|Asia/Gaza</xliff:g>"</string>
+    <string name="C113" msgid="8790538811134290878">"<xliff:g id="SEPARATOR">=</xliff:g>Hebron<xliff:g id="TIMEZONE">|Asia/Hebron</xliff:g>"</string>
+    <string name="C114" msgid="8019764566754082688">"<xliff:g id="SEPARATOR">=</xliff:g>Ho Ši Min<xliff:g id="TIMEZONE">|Asia/Ho_Chi_Minh</xliff:g>"</string>
+    <string name="C115" msgid="2707316842482208016">"<xliff:g id="SEPARATOR">=</xliff:g>Hongkong<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Hong_Kong</xliff:g>"</string>
+    <string name="C117" msgid="486537564257069933">"<xliff:g id="SEPARATOR">=</xliff:g>Džakarta<xliff:g id="TIMEZONE">|Asia/Jakarta</xliff:g>"</string>
+    <string name="C118" msgid="2220594023727285784">"<xliff:g id="SEPARATOR">=</xliff:g>Jerusalim<xliff:g id="TIMEZONE">|Asia/Jerusalem</xliff:g>"</string>
+    <string name="C119" msgid="7095503078924268384">"<xliff:g id="SEPARATOR">=</xliff:g>Kabul<xliff:g id="TIMEZONE">|Asia/Kabul</xliff:g>"</string>
+    <string name="C120" msgid="4759297844750994699">"<xliff:g id="SEPARATOR">=</xliff:g>Karači<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C121" msgid="6397452077111782277">"<xliff:g id="SEPARATOR">=</xliff:g>Katmandu<xliff:g id="TIMEZONE">|Asia/Kathmandu</xliff:g>"</string>
+    <string name="C122" msgid="3384658968869783693">"<xliff:g id="SEPARATOR">=</xliff:g>Kuala Lumpur<xliff:g id="TIMEZONE">|Asia/Kuala_Lumpur</xliff:g>"</string>
+    <string name="C123" msgid="2596231413860119715">"<xliff:g id="SEPARATOR">=</xliff:g>Kuvajt<xliff:g id="TIMEZONE">|Asia/Kuwait</xliff:g>"</string>
+    <string name="C124" msgid="7128790644999660843">"<xliff:g id="SEPARATOR">=</xliff:g>Makao<xliff:g id="TIMEZONE">|Asia/Macau</xliff:g>"</string>
+    <string name="C125" msgid="7482612453109643531">"<xliff:g id="SEPARATOR">=</xliff:g>Manila<xliff:g id="TIMEZONE">|Asia/Manila</xliff:g>"</string>
+    <string name="C126" msgid="89594601694005714">"<xliff:g id="SEPARATOR">=</xliff:g>Muskat<xliff:g id="TIMEZONE">|Asia/Muscat</xliff:g>"</string>
+    <string name="C127" msgid="6694878912574814081">"<xliff:g id="SEPARATOR">=</xliff:g>Pnom Pen<xliff:g id="TIMEZONE">|Asia/Phnom_Penh</xliff:g>"</string>
+    <string name="C128" msgid="6055116591529458940">"<xliff:g id="SEPARATOR">=</xliff:g>Pjongjang<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Pyongyang</xliff:g>"</string>
+    <string name="C130" msgid="665609990740507143">"<xliff:g id="SEPARATOR">=</xliff:g>Rangun<xliff:g id="TIMEZONE">|Asia/Rangoon</xliff:g>"</string>
+    <string name="C131" msgid="3395769966117356927">"<xliff:g id="SEPARATOR">=</xliff:g>Rijad<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C133" msgid="5204810106521056060">"<xliff:g id="SEPARATOR">=</xliff:g>Seul<xliff:g id="TIMEZONE">|Asia/Seoul</xliff:g>"</string>
+    <string name="C134" msgid="7263747916569669120">"<xliff:g id="SEPARATOR">=</xliff:g>Šangaj<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C135" msgid="4100015019260371393">"<xliff:g id="SEPARATOR">=</xliff:g>Singapur<xliff:g id="TIMEZONE">|Asia/Singapore</xliff:g>"</string>
+    <string name="C136" msgid="6386033226757339839">"<xliff:g id="SEPARATOR">=</xliff:g>Tajpej<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Taipei</xliff:g>"</string>
+    <string name="C137" msgid="5387760734363179588">"<xliff:g id="SEPARATOR">=</xliff:g>Teheran<xliff:g id="TIMEZONE">|Asia/Tehran</xliff:g>"</string>
+    <string name="C138" msgid="7193922868117846792">"<xliff:g id="SEPARATOR">=</xliff:g>Tel Aviv<xliff:g id="TIMEZONE">|Asia/Tel_Aviv</xliff:g>"</string>
+    <string name="C139" msgid="7060339477340222608">"<xliff:g id="SEPARATOR">=</xliff:g>Tokio<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Tokyo</xliff:g>"</string>
+    <string name="C140" msgid="6273911458061121975">"<xliff:g id="SEPARATOR">=</xliff:g>Ulan Bator<xliff:g id="TIMEZONE">|Asia/Ulaanbaatar</xliff:g>"</string>
+    <string name="C141" msgid="2799340184229547409">"<xliff:g id="SEPARATOR">=</xliff:g>Bermudi<xliff:g id="TIMEZONE">|Atlantic/Bermuda</xliff:g>"</string>
+    <string name="C142" msgid="6015789133959684677">"<xliff:g id="SEPARATOR">=</xliff:g>Kanari<xliff:g id="TIMEZONE">|Atlantic/Canary</xliff:g>"</string>
+    <string name="C143" msgid="4888764215053863961">"<xliff:g id="SEPARATOR">=</xliff:g>Zelenortska Ostrva<xliff:g id="TIMEZONE">|Atlantic/Cape_Verde</xliff:g>"</string>
+    <string name="C144" msgid="3338105941475340049">"<xliff:g id="SEPARATOR">=</xliff:g>Rejkjavik<xliff:g id="TIMEZONE">|Atlantic/Reykjavik</xliff:g>"</string>
+    <string name="C145" msgid="8684297689430494031">"<xliff:g id="SEPARATOR">=</xliff:g>Stenli<xliff:g id="TIMEZONE">|Atlantic/Stanley</xliff:g>"</string>
+    <string name="C146" msgid="843808286721172656">"<xliff:g id="SEPARATOR">=</xliff:g>Adelejd<xliff:g id="TIMEZONE">|Australia/Adelaide</xliff:g>"</string>
+    <string name="C147" msgid="3712535858465321034">"<xliff:g id="SEPARATOR">=</xliff:g>Brizbejn<xliff:g id="TIMEZONE">|Australia/Brisbane</xliff:g>"</string>
+    <string name="C148" msgid="7019403666599702943">"<xliff:g id="SEPARATOR">=</xliff:g>Kanbera<xliff:g id="TIMEZONE">|Australia/Canberra</xliff:g>"</string>
+    <string name="C149" msgid="8185355499458013534">"<xliff:g id="SEPARATOR">=</xliff:g>Darvin<xliff:g id="TIMEZONE">|Australia/Darwin</xliff:g>"</string>
+    <string name="C150" msgid="3516845880105752618">"<xliff:g id="SEPARATOR">=</xliff:g>Melburn<xliff:g id="TIMEZONE">|Australia/Melbourne</xliff:g>"</string>
+    <string name="C151" msgid="5576825403360541823">"<xliff:g id="SEPARATOR">=</xliff:g>Novi Južni Vels<xliff:g id="TIMEZONE">|Australia/NSW</xliff:g>"</string>
+    <string name="C152" msgid="7889900618915436602">"<xliff:g id="SEPARATOR">=</xliff:g>Pert<xliff:g id="TIMEZONE">|Australia/Perth</xliff:g>"</string>
+    <string name="C153" msgid="7506204460601953711">"<xliff:g id="SEPARATOR">=</xliff:g>Kvinslend<xliff:g id="TIMEZONE">|Australia/Queensland</xliff:g>"</string>
+    <string name="C154" msgid="1193262944948312063">"<xliff:g id="SEPARATOR">=</xliff:g>Sidnej<xliff:g id="TIMEZONE">|Australia/Sydney</xliff:g>"</string>
+    <string name="C155" msgid="7079072802229033042">"<xliff:g id="SEPARATOR">=</xliff:g>Viktorija<xliff:g id="TIMEZONE">|Australia/Victoria</xliff:g>"</string>
+    <string name="C156" msgid="4003110220147338835">"<xliff:g id="SEPARATOR">=</xliff:g>Njufaundlend<xliff:g id="TIMEZONE">|Canada/Newfoundland</xliff:g>"</string>
+    <string name="C157" msgid="2861486997803753970">"<xliff:g id="SEPARATOR">=</xliff:g>Saskačevan<xliff:g id="TIMEZONE">|Canada/Saskatchewan</xliff:g>"</string>
+    <string name="C158" msgid="6882933026191056506">"<xliff:g id="SEPARATOR">=</xliff:g>Uskršnje ostrvo<xliff:g id="TIMEZONE">|Chile/EasterIsland</xliff:g>"</string>
+    <string name="C159" msgid="4128429767051043903">"<xliff:g id="SEPARATOR">=</xliff:g>Amsterdam<xliff:g id="TIMEZONE">|Europe/Amsterdam</xliff:g>"</string>
+    <string name="C160" msgid="3488513735205092653">"<xliff:g id="SEPARATOR">=</xliff:g>Andora<xliff:g id="TIMEZONE">|Europe/Andorra</xliff:g>"</string>
+    <string name="C161" msgid="7244325364130392348">"<xliff:g id="SEPARATOR">=</xliff:g>Atina<xliff:g id="TIMEZONE">|Europe/Athens</xliff:g>"</string>
+    <string name="C162" msgid="7484009548361072313">"<xliff:g id="SEPARATOR">=</xliff:g>Belfast<xliff:g id="TIMEZONE">|Europe/Belfast</xliff:g>"</string>
+    <string name="C163" msgid="6106990061397073808">"<xliff:g id="SEPARATOR">=</xliff:g>Beograd<xliff:g id="TIMEZONE">|Europe/Belgrade</xliff:g>"</string>
+    <string name="C164" msgid="3074767496771260157">"<xliff:g id="SEPARATOR">=</xliff:g>Berlin<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C165" msgid="4442005045172394762">"<xliff:g id="SEPARATOR">=</xliff:g>Bratislava<xliff:g id="TIMEZONE">|Europe/Bratislava</xliff:g>"</string>
+    <string name="C166" msgid="8977286721038142474">"<xliff:g id="SEPARATOR">=</xliff:g>Brisel<xliff:g id="TIMEZONE">|Europe/Brussels</xliff:g>"</string>
+    <string name="C167" msgid="5502175796232774744">"<xliff:g id="SEPARATOR">=</xliff:g>Bukurešt<xliff:g id="TIMEZONE">|Europe/Bucharest</xliff:g>"</string>
+    <string name="C168" msgid="6750159439632567316">"<xliff:g id="SEPARATOR">=</xliff:g>Budimpešta<xliff:g id="TIMEZONE">|Europe/Budapest</xliff:g>"</string>
+    <string name="C169" msgid="591483187800562071">"<xliff:g id="SEPARATOR">=</xliff:g>Kišinjev<xliff:g id="TIMEZONE">|Europe/Chisinau</xliff:g>"</string>
+    <string name="C170" msgid="157539770076958216">"<xliff:g id="SEPARATOR">=</xliff:g>Kopenhagen<xliff:g id="TIMEZONE">|Europe/Copenhagen</xliff:g>"</string>
+    <string name="C171" msgid="4774534094571993566">"<xliff:g id="SEPARATOR">=</xliff:g>Dablin<xliff:g id="TIMEZONE">|Europe/Dublin</xliff:g>"</string>
+    <string name="C172" msgid="6781166861618808351">"<xliff:g id="SEPARATOR">=</xliff:g>Gibraltar<xliff:g id="TIMEZONE">|Europe/Gibraltar</xliff:g>"</string>
+    <string name="C173" msgid="6620286361619640304">"<xliff:g id="SEPARATOR">=</xliff:g>Helsinki<xliff:g id="TIMEZONE">|Europe/Helsinki</xliff:g>"</string>
+    <string name="C174" msgid="2279016324825973473">"<xliff:g id="SEPARATOR">=</xliff:g>Ostrvo Man<xliff:g id="TIMEZONE">|Europe/Isle_of_Man</xliff:g>"</string>
+    <string name="C175" msgid="3290185117135612679">"<xliff:g id="SEPARATOR">=</xliff:g>Istanbul<xliff:g id="TIMEZONE">|Europe/Istanbul</xliff:g>"</string>
+    <string name="C176" msgid="8375703098860926099">"<xliff:g id="SEPARATOR">=</xliff:g>Kijev<xliff:g id="TIMEZONE">|Europe/Kiev</xliff:g>"</string>
+    <string name="C177" msgid="6500868250597874838">"<xliff:g id="SEPARATOR">=</xliff:g>Lisabon<xliff:g id="TIMEZONE">|Europe/Lisbon</xliff:g>"</string>
+    <string name="C178" msgid="8805696770032311110">"<xliff:g id="SEPARATOR">=</xliff:g>London<xliff:g id="TIMEZONE">|Europe/London</xliff:g>"</string>
+    <string name="C179" msgid="3767343883668628062">"<xliff:g id="SEPARATOR">=</xliff:g>Luksemburg<xliff:g id="TIMEZONE">|Europe/Luxembourg</xliff:g>"</string>
+    <string name="C180" msgid="7678392789982322642">"<xliff:g id="SEPARATOR">=</xliff:g>Madrid<xliff:g id="TIMEZONE">|Europe/Madrid</xliff:g>"</string>
+    <string name="C181" msgid="7514462880775616081">"<xliff:g id="SEPARATOR">=</xliff:g>Malta<xliff:g id="TIMEZONE">|Europe/Malta</xliff:g>"</string>
+    <string name="C182" msgid="1916950203622380579">"<xliff:g id="SEPARATOR">=</xliff:g>Minsk<xliff:g id="TIMEZONE">|Europe/Minsk</xliff:g>"</string>
+    <string name="C183" msgid="4964892686115215073">"<xliff:g id="SEPARATOR">=</xliff:g>Monako<xliff:g id="TIMEZONE">|Europe/Monaco</xliff:g>"</string>
+    <string name="C184" msgid="4848586310907586448">"<xliff:g id="SEPARATOR">=</xliff:g>Moskva<xliff:g id="TIMEZONE">|Europe/Moscow</xliff:g>"</string>
+    <string name="C185" msgid="2598535413053285569">"<xliff:g id="SEPARATOR">=</xliff:g>Oslo<xliff:g id="TIMEZONE">|Europe/Oslo</xliff:g>"</string>
+    <string name="C186" msgid="678795048839315969">"<xliff:g id="SEPARATOR">=</xliff:g>Pariz<xliff:g id="TIMEZONE">|Europe/Paris</xliff:g>"</string>
+    <string name="C187" msgid="9120486940322565800">"<xliff:g id="SEPARATOR">=</xliff:g>Prag<xliff:g id="TIMEZONE">|Europe/Prague</xliff:g>"</string>
+    <string name="C188" msgid="6820884829000643173">"<xliff:g id="SEPARATOR">=</xliff:g>Riga<xliff:g id="TIMEZONE">|Europe/Riga</xliff:g>"</string>
+    <string name="C189" msgid="8545786001221397208">"<xliff:g id="SEPARATOR">=</xliff:g>Rim<xliff:g id="TIMEZONE">|Europe/Rome</xliff:g>"</string>
+    <string name="C190" msgid="2822097113459737895">"<xliff:g id="SEPARATOR">=</xliff:g>San Marino<xliff:g id="TIMEZONE">|Europe/San_Marino</xliff:g>"</string>
+    <string name="C191" msgid="5419026915911469878">"<xliff:g id="SEPARATOR">=</xliff:g>Sarajevo<xliff:g id="TIMEZONE">|Europe/Sarajevo</xliff:g>"</string>
+    <string name="C192" msgid="1416880359034236663">"<xliff:g id="SEPARATOR">=</xliff:g>Simferopolj<xliff:g id="TIMEZONE">|Europe/Simferopol</xliff:g>"</string>
+    <string name="C193" msgid="4639373771601474967">"<xliff:g id="SEPARATOR">=</xliff:g>Skoplje<xliff:g id="TIMEZONE">|Europe/Skopje</xliff:g>"</string>
+    <string name="C194" msgid="4008819631066984591">"<xliff:g id="SEPARATOR">=</xliff:g>Sofija<xliff:g id="TIMEZONE">|Europe/Sofia</xliff:g>"</string>
+    <string name="C195" msgid="6936101855361464954">"<xliff:g id="SEPARATOR">=</xliff:g>Stokholm<xliff:g id="TIMEZONE">|Europe/Stockholm</xliff:g>"</string>
+    <string name="C196" msgid="6845595341045260631">"<xliff:g id="SEPARATOR">=</xliff:g>Talin<xliff:g id="TIMEZONE">|Europe/Tallinn</xliff:g>"</string>
+    <string name="C197" msgid="2200341923401640765">"<xliff:g id="SEPARATOR">=</xliff:g>Vatikan<xliff:g id="TIMEZONE">|Europe/Vatican</xliff:g>"</string>
+    <string name="C198" msgid="3104432830681695782">"<xliff:g id="SEPARATOR">=</xliff:g>Beč<xliff:g id="TIMEZONE">|Europe/Vienna</xliff:g>"</string>
+    <string name="C199" msgid="1622823742072233091">"<xliff:g id="SEPARATOR">=</xliff:g>Vilnijus<xliff:g id="TIMEZONE">|Europe/Vilnius</xliff:g>"</string>
+    <string name="C200" msgid="6181652506383585123">"<xliff:g id="SEPARATOR">=</xliff:g>Varšava<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C201" msgid="5026927396527258914">"<xliff:g id="SEPARATOR">=</xliff:g>Zagreb<xliff:g id="TIMEZONE">|Europe/Zagreb</xliff:g>"</string>
+    <string name="C202" msgid="7479245034393288391">"<xliff:g id="SEPARATOR">=</xliff:g>Cirih<xliff:g id="TIMEZONE">|Europe/Zurich</xliff:g>"</string>
+    <string name="C203" msgid="1651234331866937237">"<xliff:g id="SEPARATOR">=</xliff:g>Antananarivo<xliff:g id="TIMEZONE">|Indian/Antananarivo</xliff:g>"</string>
+    <string name="C204" msgid="3101091022126098393">"<xliff:g id="SEPARATOR">=</xliff:g>Maldivi<xliff:g id="TIMEZONE">|Indian/Maldives</xliff:g>"</string>
+    <string name="C205" msgid="9173530407684443044">"<xliff:g id="SEPARATOR">=</xliff:g>Mauricijus<xliff:g id="TIMEZONE">|Indian/Mauritius</xliff:g>"</string>
+    <string name="C206" msgid="7294622489478378014">"<xliff:g id="SEPARATOR">=</xliff:g>Okland<xliff:g id="TIMEZONE">|Pacific/Auckland</xliff:g>"</string>
+    <string name="C207" msgid="6369257832191627783">"<xliff:g id="SEPARATOR">=</xliff:g>Fidži<xliff:g id="TIMEZONE">|Pacific/Fiji</xliff:g>"</string>
+    <string name="C208" msgid="1022999101729302391">"<xliff:g id="SEPARATOR">=</xliff:g>Guam<xliff:g id="TIMEZONE">|Pacific/Guam</xliff:g>"</string>
+    <string name="C209" msgid="8326714755257287010">"<xliff:g id="SEPARATOR">=</xliff:g>Honolulu<xliff:g id="TIMEZONE">|Pacific/Honolulu</xliff:g>"</string>
+    <string name="C210" msgid="4118975261202718577">"<xliff:g id="SEPARATOR">=</xliff:g>Kiritimati<xliff:g id="TIMEZONE">|Pacific/Kiritimati</xliff:g>"</string>
+    <string name="C211" msgid="6016485615657297427">"<xliff:g id="SEPARATOR">=</xliff:g>Numea<xliff:g id="TIMEZONE">|Pacific/Noumea</xliff:g>"</string>
+    <string name="C214" msgid="5230836436291372485">"<xliff:g id="SEPARATOR">=</xliff:g>Antigva<xliff:g id="TIMEZONE">|America/Antigua</xliff:g>"</string>
+    <string name="C215" msgid="9104600827236874744">"<xliff:g id="SEPARATOR">=</xliff:g>Ostin<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C216" msgid="1919768646168928906">"<xliff:g id="SEPARATOR">=</xliff:g>Boston<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C217" msgid="4879725034214879629">"<xliff:g id="SEPARATOR">=</xliff:g>Kalgari<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C218" msgid="5884212032925236157">"<xliff:g id="SEPARATOR">=</xliff:g>Kolambus<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C219" msgid="2081823206177849440">"<xliff:g id="SEPARATOR">=</xliff:g>Dalas<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C220" msgid="6453910991331509621">"<xliff:g id="SEPARATOR">=</xliff:g>Noksvil<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C221" msgid="8383807404322146544">"<xliff:g id="SEPARATOR">=</xliff:g>Memfis<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C222" msgid="3700668026644596138">"<xliff:g id="SEPARATOR">=</xliff:g>Majami<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C223" msgid="221323185158028534">"<xliff:g id="SEPARATOR">=</xliff:g>Mineapolis<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C224" msgid="5283127526588257314">"<xliff:g id="SEPARATOR">=</xliff:g>Otava<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C225" msgid="2397752406722350262">"<xliff:g id="SEPARATOR">=</xliff:g>Filadelfija<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C226" msgid="9121074377966278110">"<xliff:g id="SEPARATOR">=</xliff:g>Portland<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C227" msgid="5652209241017010001">"<xliff:g id="SEPARATOR">=</xliff:g>San Dijego<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C228" msgid="4215672329797580482">"<xliff:g id="SEPARATOR">=</xliff:g>San Francisko<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C229" msgid="4196312467437357156">"<xliff:g id="SEPARATOR">=</xliff:g>Solt Lejk Siti<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C230" msgid="5521643115321121383">"<xliff:g id="SEPARATOR">=</xliff:g>San Hoze<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C231" msgid="19294357270942004">"<xliff:g id="SEPARATOR">=</xliff:g>San Salvador<xliff:g id="TIMEZONE">|America/Guatemala</xliff:g>"</string>
+    <string name="C232" msgid="4714655032274833316">"<xliff:g id="SEPARATOR">=</xliff:g>Sijetl<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C233" msgid="7162834873553109876">"<xliff:g id="SEPARATOR">=</xliff:g>Sent Luis<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C234" msgid="8431913494781960891">"<xliff:g id="SEPARATOR">=</xliff:g>Vašington<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C235" msgid="8650421942456856419">"<xliff:g id="SEPARATOR">=</xliff:g>Hjuston<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C236" msgid="3687627401939103862">"<xliff:g id="SEPARATOR">=</xliff:g>San Antonio<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C237" msgid="4443158977093108877">"<xliff:g id="SEPARATOR">=</xliff:g>Džeksonvil<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C238" msgid="7416660474443881822">"<xliff:g id="SEPARATOR">=</xliff:g>Baltimor<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C239" msgid="4602819453157356596">"<xliff:g id="SEPARATOR">=</xliff:g>Nešvil<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C240" msgid="6474976205162582188">"<xliff:g id="SEPARATOR">=</xliff:g>Milvoki<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C241" msgid="9133192521877174743">"<xliff:g id="SEPARATOR">=</xliff:g>Oklahoma Siti<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C242" msgid="4837450655035932235">"<xliff:g id="SEPARATOR">=</xliff:g>Las Vegas<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C243" msgid="8140503787735683522">"<xliff:g id="SEPARATOR">=</xliff:g>Albukerki<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C244" msgid="5425441385595386539">"<xliff:g id="SEPARATOR">=</xliff:g>Tuson<xliff:g id="TIMEZONE">|MST</xliff:g>"</string>
+    <string name="C245" msgid="2117808251938937801">"<xliff:g id="SEPARATOR">=</xliff:g>Sakramento<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C246" msgid="3092246848082816772">"<xliff:g id="SEPARATOR">=</xliff:g>Atlanta<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C247" msgid="8206866466240263364">"<xliff:g id="SEPARATOR">=</xliff:g>Klivlend<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C248" msgid="2640187332546735575">"<xliff:g id="SEPARATOR">=</xliff:g>Nju Orleans<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C249" msgid="2891345755858261436">"<xliff:g id="SEPARATOR">=</xliff:g>Tampa<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C250" msgid="820338627695297018">"<xliff:g id="SEPARATOR">=</xliff:g>Pitsburg<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C251" msgid="5944336862095193572">"<xliff:g id="SEPARATOR">=</xliff:g>Sinsinati<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C252" msgid="4879366628092590554">"<xliff:g id="SEPARATOR">=</xliff:g>Mauntin Vju<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C253" msgid="131023875763265059">"<xliff:g id="SEPARATOR">=</xliff:g>Rino<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C254" msgid="6114708580340716772">"<xliff:g id="SEPARATOR">=</xliff:g>Blek Rok Siti<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C255" msgid="7954132426931661492">"<xliff:g id="SEPARATOR">=</xliff:g>Doha<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C256" msgid="4677098546257306673">"<xliff:g id="SEPARATOR">=</xliff:g>Peking<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C257" msgid="6859408162854724420">"<xliff:g id="SEPARATOR">=</xliff:g>Mumbaj<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C258" msgid="4883343467599097650">"<xliff:g id="SEPARATOR">=</xliff:g>Delhi<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C259" msgid="5562442240689501324">"<xliff:g id="SEPARATOR">=</xliff:g>Osaka<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Tokyo</xliff:g>"</string>
+    <string name="C260" msgid="8364102554400427814">"<xliff:g id="SEPARATOR">=</xliff:g>Lahor<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C261" msgid="4120312655526126931">"<xliff:g id="SEPARATOR">=</xliff:g>Sana<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C262" msgid="5548180151889833">"<xliff:g id="SEPARATOR">=</xliff:g>Barselona<xliff:g id="TIMEZONE">|Europe/Madrid</xliff:g>"</string>
+    <string name="C263" msgid="2667061188896159784">"<xliff:g id="SEPARATOR">=</xliff:g>Minhen<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C264" msgid="2183960913782375290">"<xliff:g id="SEPARATOR">=</xliff:g>Milano<xliff:g id="TIMEZONE">|Europe/Rome</xliff:g>"</string>
+    <string name="C265" msgid="7302072801871420825">"<xliff:g id="SEPARATOR">=</xliff:g>Frankfurt<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C266" msgid="2043638131940526010">"<xliff:g id="SEPARATOR">=</xliff:g>Hanoj<xliff:g id="TIMEZONE">|Asia/Bangkok</xliff:g>"</string>
+    <string name="C267" msgid="2210484655793571387">"<xliff:g id="SEPARATOR">=</xliff:g>Ankara<xliff:g id="TIMEZONE">|Europe/Istanbul</xliff:g>"</string>
+    <string name="C268" msgid="263106973500029909">"<xliff:g id="SEPARATOR">=</xliff:g>Bangalor<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C269" msgid="6541694468583591229">"<xliff:g id="SEPARATOR">=</xliff:g>Brazilija<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C270" msgid="1314079881051130603">"<xliff:g id="SEPARATOR">=</xliff:g>Kejptaun<xliff:g id="TIMEZONE">|Africa/Johannesburg</xliff:g>"</string>
+    <string name="C271" msgid="8640235215580011665">"<xliff:g id="SEPARATOR">=</xliff:g>Islamabad<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C272" msgid="1609536549681428971">"<xliff:g id="SEPARATOR">=</xliff:g>Rio de Žaneiro<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C273" msgid="7079941149646181981">"<xliff:g id="SEPARATOR">=</xliff:g>En Arbor<xliff:g id="TIMEZONE">|America/Detroit</xliff:g>"</string>
+    <string name="C274" msgid="8459573593923702400">"<xliff:g id="SEPARATOR">=</xliff:g>Bolder<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C275" msgid="6089570009772695384">"<xliff:g id="SEPARATOR">=</xliff:g>Kembridž<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C276" msgid="8770778158932656740">"<xliff:g id="SEPARATOR">=</xliff:g>Kirkland<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C277" msgid="3027642546928363284">"<xliff:g id="SEPARATOR">=</xliff:g>Medison<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C278" msgid="2380762577096499707">"<xliff:g id="SEPARATOR">=</xliff:g>Guangdžou<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C279" msgid="8894272318704876379">"<xliff:g id="SEPARATOR">=</xliff:g>Hajderabad<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C280" msgid="7678401703785036372">"<xliff:g id="SEPARATOR">=</xliff:g>Reston<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C281" msgid="8023528134904066052">"<xliff:g id="SEPARATOR">=</xliff:g>Belo Horizonte<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C282" msgid="6695477038758559199">"<xliff:g id="SEPARATOR">=</xliff:g>Santjago<xliff:g id="TIMEZONE">|America/Santiago</xliff:g>"</string>
+    <string name="C283" msgid="7769787200879321206">"<xliff:g id="SEPARATOR">=</xliff:g>Monrovija<xliff:g id="TIMEZONE">|Africa/Monrovia</xliff:g>"</string>
+    <string name="C284" msgid="6968458422900478829">"<xliff:g id="SEPARATOR">=</xliff:g>Kolombo<xliff:g id="TIMEZONE">|Asia/Colombo</xliff:g>"</string>
+    <string name="C285" msgid="1141404871109476705">"<xliff:g id="SEPARATOR">=</xliff:g>Čivava<xliff:g id="TIMEZONE">|America/Chihuahua</xliff:g>"</string>
+    <string name="C286" msgid="4996225818359904740">"<xliff:g id="SEPARATOR">=</xliff:g>Salvador<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C287" msgid="1988559263618010310">"<xliff:g id="SEPARATOR">=</xliff:g>Gurgaon<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C288" msgid="852288766460325989">"<xliff:g id="SEPARATOR">=</xliff:g>Mančester<xliff:g id="TIMEZONE">|Europe/London</xliff:g>"</string>
+    <string name="C290" msgid="9191944922972784727">"<xliff:g id="SEPARATOR">=</xliff:g>Sankt Peterburg<xliff:g id="TIMEZONE">|Europe/Moscow</xliff:g>"</string>
+    <string name="C291" msgid="4662360206594986867">"<xliff:g id="SEPARATOR">=</xliff:g>Krakov<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C292" msgid="3704362015612990315">"<xliff:g id="SEPARATOR">=</xliff:g>Vroclav<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C293" msgid="3807981967850386200">"<xliff:g id="SEPARATOR">=</xliff:g>Hamburg<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C294" msgid="2800056634746552933">"<xliff:g id="SEPARATOR">=</xliff:g>Oulu<xliff:g id="TIMEZONE">|Europe/Bucharest</xliff:g>"</string>
+    <string name="C295" msgid="7855357204471157922">"<xliff:g id="SEPARATOR">=</xliff:g>Haifa<xliff:g id="TIMEZONE">|Asia/Jerusalem</xliff:g>"</string>
+    <string name="C296" msgid="2834361512883853579">"<xliff:g id="SEPARATOR">=</xliff:g>San Huan<xliff:g id="TIMEZONE">|America/Puerto_Rico</xliff:g>"</string>
+    <string name="C297" msgid="5314407834713913608">"<xliff:g id="SEPARATOR">=</xliff:g>Tegusigalpa<xliff:g id="TIMEZONE">|America/Tegucigalpa</xliff:g>"</string>
+    <string name="C298" msgid="4186340979527221275">"<xliff:g id="SEPARATOR">=</xliff:g>Paramaribo<xliff:g id="TIMEZONE">|America/Paramaribo</xliff:g>"</string>
+    <string name="C299" msgid="5688169950851674667">"<xliff:g id="SEPARATOR">=</xliff:g>Kito<xliff:g id="TIMEZONE">|America/Panama</xliff:g>"</string>
+    <string name="C300" msgid="7351753589989414696">"<xliff:g id="SEPARATOR">=</xliff:g>Ljubljana<xliff:g id="TIMEZONE">|Europe/Ljubljana</xliff:g>"</string>
+    <string name="C301" msgid="9089921329206815602">"<xliff:g id="SEPARATOR">=</xliff:g>Ašhabad<xliff:g id="TIMEZONE">|Asia/Ashgabat</xliff:g>"</string>
+    <string name="C302" msgid="6471051311513517449">"<xliff:g id="SEPARATOR">=</xliff:g>Asmara<xliff:g id="TIMEZONE">|Africa/Asmara</xliff:g>"</string>
+    <string name="C303" msgid="6208957436062127281">"<xliff:g id="SEPARATOR">=</xliff:g>Bandar Seri Begavan<xliff:g id="TIMEZONE">|Asia/Brunei</xliff:g>"</string>
+    <string name="C304" msgid="7757188637892125245">"<xliff:g id="SEPARATOR">=</xliff:g>Bangi<xliff:g id="TIMEZONE">|Africa/Bangui</xliff:g>"</string>
+    <string name="C305" msgid="5538312768539249335">"<xliff:g id="SEPARATOR">=</xliff:g>Bandžul<xliff:g id="TIMEZONE">|Africa/Banjul</xliff:g>"</string>
+    <string name="C306" msgid="6400938736119754675">"<xliff:g id="SEPARATOR">=</xliff:g>Biškek<xliff:g id="TIMEZONE">|Asia/Bishkek</xliff:g>"</string>
+    <string name="C307" msgid="1169132195117591472">"<xliff:g id="SEPARATOR">=</xliff:g>Bisao<xliff:g id="TIMEZONE">|Africa/Bissau</xliff:g>"</string>
+    <string name="C308" msgid="7704965635342439141">"<xliff:g id="SEPARATOR">=</xliff:g>Budžumbura<xliff:g id="TIMEZONE">|Africa/Bujumbura</xliff:g>"</string>
+    <string name="C309" msgid="1522235235310763925">"<xliff:g id="SEPARATOR">=</xliff:g>Dili<xliff:g id="TIMEZONE">|Asia/Dili</xliff:g>"</string>
+    <string name="C310" msgid="8666508463588411257">"<xliff:g id="SEPARATOR">=</xliff:g>Dušanbe<xliff:g id="TIMEZONE">|Asia/Dushanbe</xliff:g>"</string>
+    <string name="C311" msgid="5940486195605635031">"<xliff:g id="SEPARATOR">=</xliff:g>Funafuti<xliff:g id="TIMEZONE">|Pacific/Funafuti</xliff:g>"</string>
+    <string name="C312" msgid="1714210141256903683">"<xliff:g id="SEPARATOR">=</xliff:g>Honijara<xliff:g id="TIMEZONE">|Pacific/Guadalcanal</xliff:g>"</string>
+    <string name="C313" msgid="8390229571948311411">"<xliff:g id="SEPARATOR">=</xliff:g>Džuba<xliff:g id="TIMEZONE">|Africa/Juba</xliff:g>"</string>
+    <string name="C314" msgid="3840011425345102604">"<xliff:g id="SEPARATOR">=</xliff:g>Kingstaun<xliff:g id="TIMEZONE">|America/St_Vincent</xliff:g>"</string>
+    <string name="C315" msgid="8962557999110557329">"<xliff:g id="SEPARATOR">=</xliff:g>Librvil<xliff:g id="TIMEZONE">|Africa/Libreville</xliff:g>"</string>
+    <string name="C316" msgid="3674113287320887951">"<xliff:g id="SEPARATOR">=</xliff:g>Lome<xliff:g id="TIMEZONE">|Africa/Lome</xliff:g>"</string>
+    <string name="C317" msgid="4818049429422081055">"<xliff:g id="SEPARATOR">=</xliff:g>Luanda<xliff:g id="TIMEZONE">|Africa/Luanda</xliff:g>"</string>
+    <string name="C318" msgid="3814107319819817789">"<xliff:g id="SEPARATOR">=</xliff:g>Lusaka<xliff:g id="TIMEZONE">|Africa/Lusaka</xliff:g>"</string>
+    <string name="C319" msgid="5757039321992317631">"<xliff:g id="SEPARATOR">=</xliff:g>Madžuro<xliff:g id="TIMEZONE">|Pacific/Majuro</xliff:g>"</string>
+    <string name="C320" msgid="8334348266391215583">"<xliff:g id="SEPARATOR">=</xliff:g>Malabo<xliff:g id="TIMEZONE">|Africa/Malabo</xliff:g>"</string>
+    <string name="C321" msgid="5401323973667971972">"<xliff:g id="SEPARATOR">=</xliff:g>Maputo<xliff:g id="TIMEZONE">|Africa/Maputo</xliff:g>"</string>
+    <string name="C322" msgid="67637052310417975">"<xliff:g id="SEPARATOR">=</xliff:g>Mbabane<xliff:g id="TIMEZONE">|Africa/Mbabane</xliff:g>"</string>
+    <string name="C323" msgid="4500721332684955521">"<xliff:g id="SEPARATOR">=</xliff:g>Moroni<xliff:g id="TIMEZONE">|Indian/Comoro</xliff:g>"</string>
+    <string name="C324" msgid="1741927819842539260">"<xliff:g id="SEPARATOR">=</xliff:g>Ndžamena<xliff:g id="TIMEZONE">|Africa/Ndjamena</xliff:g>"</string>
+    <string name="C325" msgid="8771905307322194055">"<xliff:g id="SEPARATOR">=</xliff:g>Ngerulmud<xliff:g id="TIMEZONE">|Pacific/Palau</xliff:g>"</string>
+    <string name="C326" msgid="2389198042593603472">"<xliff:g id="SEPARATOR">=</xliff:g>Nijamej<xliff:g id="TIMEZONE">|Africa/Niamey</xliff:g>"</string>
+    <string name="C327" msgid="5317479895686981912">"<xliff:g id="SEPARATOR">=</xliff:g>Nikozija<xliff:g id="TIMEZONE">|Europe/Nicosia</xliff:g>"</string>
+    <string name="C328" msgid="6416405203954996861">"<xliff:g id="SEPARATOR">=</xliff:g>Nuakšot<xliff:g id="TIMEZONE">|Africa/Nouakchott</xliff:g>"</string>
+    <string name="C329" msgid="6876960940903095843">"<xliff:g id="SEPARATOR">=</xliff:g>Nukualofa<xliff:g id="TIMEZONE">|Pacific/Tongatapu</xliff:g>"</string>
+    <string name="C330" msgid="1572294706542426161">"<xliff:g id="SEPARATOR">=</xliff:g>Uagadugu<xliff:g id="TIMEZONE">|Africa/Ouagadougou</xliff:g>"</string>
+    <string name="C331" msgid="2607492003890117689">"<xliff:g id="SEPARATOR">=</xliff:g>Palikir<xliff:g id="TIMEZONE">|Pacific/Noumea</xliff:g>"</string>
+    <string name="C332" msgid="8349533418456323370">"<xliff:g id="SEPARATOR">=</xliff:g>Filipsburg<xliff:g id="TIMEZONE">|America/Lower_Princes</xliff:g>"</string>
+    <string name="C333" msgid="2842640664018042568">"<xliff:g id="SEPARATOR">=</xliff:g>Podgorica<xliff:g id="TIMEZONE">|Europe/Podgorica</xliff:g>"</string>
+    <string name="C334" msgid="3310146581437635671">"<xliff:g id="SEPARATOR">=</xliff:g>Port Morsbi<xliff:g id="TIMEZONE">|Pacific/Palau</xliff:g>"</string>
+    <string name="C335" msgid="3317158262102352303">"<xliff:g id="SEPARATOR">=</xliff:g>Port Vila<xliff:g id="TIMEZONE">|Pacific/Efate</xliff:g>"</string>
+    <string name="C336" msgid="3810072761869903472">"<xliff:g id="SEPARATOR">=</xliff:g>Porto Novo<xliff:g id="TIMEZONE">|Africa/Porto-Novo</xliff:g>"</string>
+    <string name="C337" msgid="3412269218104112252">"<xliff:g id="SEPARATOR">=</xliff:g>Priština<xliff:g id="TIMEZONE">|Europe/Belgrade</xliff:g>"</string>
+    <string name="C338" msgid="6151841959824325885">"<xliff:g id="SEPARATOR">=</xliff:g>Rozo<xliff:g id="TIMEZONE">|America/Dominica</xliff:g>"</string>
+    <string name="C339" msgid="8909994815975646525">"<xliff:g id="SEPARATOR">=</xliff:g>Taškent<xliff:g id="TIMEZONE">|Asia/Tashkent</xliff:g>"</string>
+    <string name="C340" msgid="415479723070879485">"<xliff:g id="SEPARATOR">=</xliff:g>Tbilisi<xliff:g id="TIMEZONE">|Asia/Tbilisi</xliff:g>"</string>
+    <string name="C341" msgid="2299478430610154042">"<xliff:g id="SEPARATOR">=</xliff:g>Timbu<xliff:g id="TIMEZONE">|Asia/Thimphu</xliff:g>"</string>
+    <string name="C342" msgid="7997617194333170685">"<xliff:g id="SEPARATOR">=</xliff:g>Tirana<xliff:g id="TIMEZONE">|Europe/Tirane</xliff:g>"</string>
+    <string name="C343" msgid="622805851462854910">"<xliff:g id="SEPARATOR">=</xliff:g>Vaduc<xliff:g id="TIMEZONE">|Europe/Vaduz</xliff:g>"</string>
+    <string name="C344" msgid="7629820826386244509">"<xliff:g id="SEPARATOR">=</xliff:g>Vijentijan<xliff:g id="TIMEZONE">|Asia/Vientiane</xliff:g>"</string>
+    <string name="C345" msgid="1881198350378158072">"<xliff:g id="SEPARATOR">=</xliff:g>Vindhuk<xliff:g id="TIMEZONE">|Africa/Windhoek</xliff:g>"</string>
+    <string name="C346" msgid="2947674392768816097">"<xliff:g id="SEPARATOR">=</xliff:g>Jaunde<xliff:g id="TIMEZONE">|Africa/Douala</xliff:g>"</string>
+    <string name="C347" msgid="6291282205599716861">"<xliff:g id="SEPARATOR">=</xliff:g>Jaren<xliff:g id="TIMEZONE">|Pacific/Nauru</xliff:g>"</string>
+    <string name="C348" msgid="8462071023392592539">"<xliff:g id="SEPARATOR">=</xliff:g>Jerevan<xliff:g id="TIMEZONE">|Asia/Yerevan</xliff:g>"</string>
+</resources>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..53a60cf
--- /dev/null
+++ b/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,370 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--  Copyright (C) 2007 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="app_label" msgid="6674495003718166674">"Sat"</string>
+    <string name="delete_alarm" msgid="3457780990646206817">"Izbriši alarm"</string>
+    <string name="label" msgid="162189613902857319">"Oznaka"</string>
+    <string name="default_label" msgid="5590025289805630372">"Alarm"</string>
+    <string name="alarm_vibrate" msgid="3476686921490362230">"Vibracija"</string>
+    <string name="alarm_repeat" msgid="7242985466344233206">"Ponovi"</string>
+    <string name="alert" msgid="6506982899651975645">"Melodija alarma"</string>
+    <string name="default_alarm_ringtone_title" msgid="2916376768509623643">"Podrazumevani zvuk alarma"</string>
+    <string name="default_timer_ringtone_title" msgid="1370799536406862317">"Tajmer je istekao"</string>
+    <string name="alarm_tomorrow" msgid="131356848787643420">"Sutra"</string>
+    <string name="alarm_today" msgid="7873594221106531654">"Danas"</string>
+    <string name="alarm_alert_dismiss_text" msgid="4942914605480888820">"Odbaci"</string>
+    <string name="alarm_alert_dismiss_now_text" msgid="7327972388636305792">"Odbaci odmah"</string>
+    <string name="alarm_missed_title" msgid="3828345099754063392">"Propušteni alarm"</string>
+    <string name="alarm_missed_text" msgid="6585658367289194023">"<xliff:g id="ALARM_TIME">%s</xliff:g> – <xliff:g id="ALARM_LABEL">%s</xliff:g>"</string>
+    <string name="alarm_alert_snoozed_text" msgid="7064642998528766113">"Odloženo"</string>
+    <plurals name="alarm_alert_snooze_duration" formatted="false" msgid="7844300009062867865">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> min</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> min</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> min</item>
+    </plurals>
+    <string name="alarm_alert_off_text" msgid="4472073417593915002">"Alarm je isklj."</string>
+    <string name="alarm_alert_snooze_text" msgid="1774416052207651584">"Odloži"</string>
+    <plurals name="alarm_alert_snooze_set" formatted="false" msgid="3212729193036041768">
+      <item quantity="one">Odloženo je za <xliff:g id="MINUTES">%d</xliff:g> minut.</item>
+      <item quantity="few">Odloženo je za <xliff:g id="MINUTES">%d</xliff:g> minuta.</item>
+      <item quantity="other">Odloženo je za <xliff:g id="MINUTES">%d</xliff:g> minuta.</item>
+    </plurals>
+    <string name="alarm_alert_snooze_until" msgid="6958013659168344550">"Odlaganje do <xliff:g id="TIME">%s</xliff:g>"</string>
+    <string name="alarm_alert_predismiss_title" msgid="5723945586913705445">"Predstojeći alarm"</string>
+    <string name="missed_alarm_has_been_deleted" msgid="5295473204045979335">"Propušteni alarm je izbrisan"</string>
+    <string name="timer_notifications_less_min" msgid="5481375048976427255">"Preostalo je manje od minuta"</string>
+    <string name="timer_notifications_hours" msgid="1613266446037145138">"<xliff:g id="HOURS">%1$s</xliff:g><xliff:g id="REMAINING"> %3$s</xliff:g>"</string>
+    <string name="timer_notifications_minutes" msgid="8543138714519498893">"<xliff:g id="MINUTES">%2$s</xliff:g><xliff:g id="REMAINING"> %3$s</xliff:g>"</string>
+    <string name="timer_notifications_hours_minutes" msgid="4301167788642025702">"Preostalo: <xliff:g id="HOURS">%1$s</xliff:g> <xliff:g id="MINUTES">%2$s</xliff:g>"</string>
+    <string name="timer_remaining_single" msgid="6782851171906765864">"preostaje"</string>
+    <string name="timer_remaining_multiple" msgid="6052775962092160851">"preostaje"</string>
+  <string-array name="alarm_set">
+    <item msgid="6450913786084215050">"Alarm će se uključiti za manje od 1 minuta."</item>
+    <item msgid="6002066367368421848">"Alarm će se uključiti za <xliff:g id="DAYS">%1$s</xliff:g>."</item>
+    <item msgid="8824719306247973774">"Alarm će se uključiti za <xliff:g id="HOURS">%2$s</xliff:g>."</item>
+    <item msgid="8182406852935468862">"Alarm će se uključiti za <xliff:g id="DAYS">%1$s</xliff:g> i <xliff:g id="HOURS">%2$s</xliff:g>."</item>
+    <item msgid="2532279224777213194">"Alarm će se uključiti za <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+    <item msgid="5936557894247187717">"Alarm će se uključiti za <xliff:g id="DAYS">%1$s</xliff:g> i <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+    <item msgid="9115697840826129603">"Alarm će se uključiti za <xliff:g id="HOURS">%2$s</xliff:g> i <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+    <item msgid="2332583385137381060">"Alarm će se uključiti za <xliff:g id="DAYS">%1$s</xliff:g>, <xliff:g id="HOURS">%2$s</xliff:g> i <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+  </string-array>
+    <plurals name="days" formatted="false" msgid="3706846447285206235">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> dan</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> dana</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> dana</item>
+    </plurals>
+    <plurals name="hours" formatted="false" msgid="3871283109767171655">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> sat</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> sata</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sati</item>
+    </plurals>
+    <plurals name="minutes" formatted="false" msgid="5484431721696058697">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> minut</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+    </plurals>
+    <string name="every_day" msgid="4100909974923444602">"Svakog dana"</string>
+    <string name="day_concat" msgid="971998564991636532">", "</string>
+    <string name="loading_widget" msgid="5306242862476796500">"Učitava se…"</string>
+    <string name="analog_gadget" msgid="1670505720837152766">"Analogni sat"</string>
+    <string name="digital_gadget" msgid="2326954556720571358">"Digitalni sat"</string>
+    <string name="settings" msgid="5849739030579520686">"Podešavanja"</string>
+    <string name="snooze_duration_title" msgid="1097309861110780483">"Dužina odlaganja"</string>
+    <plurals name="snooze_duration" formatted="false" msgid="3112918131095248271">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> minut</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+    </plurals>
+    <plurals name="snooze_picker_label" formatted="false" msgid="322739253661747732">
+      <item quantity="one">minut</item>
+      <item quantity="few">minuta</item>
+      <item quantity="other">minuta</item>
+    </plurals>
+    <string name="crescendo_duration_title" msgid="8606408542726189528">"Postepeno povećaj jačinu zvuka"</string>
+    <string name="no_crescendo_duration" msgid="383801592865899932">"Isključeno"</string>
+    <string name="crescendo_duration" msgid="6641284876778266541">"<xliff:g id="NUMBER">%s</xliff:g> sek"</string>
+    <string name="crescendo_picker_label" msgid="7758024047003091056">"sekunde"</string>
+    <string name="auto_silence_title" msgid="2012754009554434544">"Utišaj nakon"</string>
+    <plurals name="auto_silence_summary" formatted="false" msgid="6579258788774360396">
+      <item quantity="one"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> minut</item>
+      <item quantity="few"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> minuta</item>
+      <item quantity="other"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> minuta</item>
+    </plurals>
+    <string name="auto_silence_never" msgid="4821982647348750809">"Nikada"</string>
+  <string-array name="auto_silence_entries">
+    <item msgid="3024545954917711306">"1 minut"</item>
+    <item msgid="5431906692406316549">"5 minuta"</item>
+    <item msgid="7742728812068919959">"10 minuta"</item>
+    <item msgid="2855948657259647629">"15 minuta"</item>
+    <item msgid="6330196381284475079">"20 minuta"</item>
+    <item msgid="7809240121716151904">"25 minuta"</item>
+    <item msgid="4278641338024561333">"Nemoj utišavati"</item>
+  </string-array>
+    <string name="week_start_title" msgid="4268917518596832096">"Započni sedmicu u"</string>
+  <string-array name="week_start_entries">
+    <item msgid="9010198173394482639">"subotu"</item>
+    <item msgid="3993530639455360921">"nedelju"</item>
+    <item msgid="8594709368683324282">"ponedeljak"</item>
+  </string-array>
+    <string name="alarm_volume_title" msgid="8506245173912428522">"Jačina zvuka alarma"</string>
+    <string name="silent_ringtone_title" msgid="6177287302898634765">"Nečujno"</string>
+    <string name="unknown_ringtone_title" msgid="6637522029614550112">"Nepoznata"</string>
+    <string name="alarm_volume_muted" msgid="6658289289695673569">"Zvuk alarma je isključen"</string>
+    <string name="unmute_alarm_volume" msgid="2655009276035357497">"Uključi zvuk"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Podrazumevana melodija zvona za alarm je utišana"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Promeni"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Uređaj je podešen na potpunu tišinu"</string>
+    <string name="volume_button_setting_title" msgid="6937131248843413357">"Dugmad za jačinu"</string>
+  <string-array name="volume_button_setting_entries">
+    <item msgid="7972756698723318690">"Odloži"</item>
+    <item msgid="3450979320164769576">"Odbaci"</item>
+    <item msgid="6302517608411378024">"Ne radi ništa"</item>
+  </string-array>
+    <string name="label_description" msgid="8736179296142915727">"Oznaka"</string>
+    <string name="ringtone_description" msgid="7580922112921069925">"Melodija zvona"</string>
+    <string name="menu_alarm" msgid="4772010125376647519">"Alarm"</string>
+    <string name="menu_timer" msgid="6459070074762877114">"Tajmer"</string>
+    <string name="menu_clock" msgid="5612760670606829805">"Sat"</string>
+    <string name="menu_stopwatch" msgid="3396117705293574701">"Štoperica"</string>
+    <string name="button_alarms" msgid="3907838219512538763">"Dodaj alarm"</string>
+    <string name="button_cities" msgid="4555761857494501363">"Gradovi"</string>
+    <string name="menu_item_settings" msgid="1413723516369078665">"Podešavanja"</string>
+    <string name="menu_item_help" msgid="4570953476186849841">"Pomoć"</string>
+    <string name="menu_item_night_mode" msgid="3486930302245398975">"Noćni režim"</string>
+    <string name="menu_item_sort_by_gmt_offset" msgid="3120860422682721706">"Sortiraj prema vremenu"</string>
+    <string name="menu_item_sort_by_name" msgid="1762931290495104106">"Sortiraj prema imenu"</string>
+    <string name="selected_cities_label" msgid="3607479399424246605">"Izabrani gradovi"</string>
+    <string name="sw_resume_button" msgid="2569360966002022248">"Nastavi"</string>
+    <string name="sw_reset_button" msgid="6616804728322906117">"Resetuj"</string>
+    <string name="sw_start_button" msgid="8373422516681242270">"Pokreni"</string>
+    <string name="sw_pause_button" msgid="2422084453454138042">"Pauziraj"</string>
+    <string name="sw_lap_button" msgid="6992264696039004233">"Krug"</string>
+    <string name="sw_share_button" msgid="4478648110382859382">"Deli"</string>
+    <string name="hours_label" msgid="3393478155635368097">"č"</string>
+    <string name="minutes_label" msgid="3568098128251438588">"m"</string>
+    <string name="seconds_label" msgid="124655952824003246">"s"</string>
+    <string name="hours_label_description" msgid="8652842524970971830">"sati"</string>
+    <string name="minutes_label_description" msgid="965686733490357796">"minuti"</string>
+    <string name="seconds_label_description" msgid="3821620053141299692">"sekunde"</string>
+    <string name="sw_share_main" msgid="7703563468204234405">"Moje vreme je <xliff:g id="TIME">%s</xliff:g>"</string>
+    <string name="sw_share_laps" msgid="614390674795945007">"Prolazna vremena:"</string>
+    <string name="sw_notification_lap_number" msgid="3535420316052647126">"<xliff:g id="NUMBER">%d</xliff:g>. krug"</string>
+    <plurals name="Nhours_description" formatted="false" msgid="4539186407746763655">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> sat</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> sata</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> sati</item>
+    </plurals>
+    <plurals name="Nminutes_description" formatted="false" msgid="6373760365221990859">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> minut</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> minuta</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> minuta</item>
+    </plurals>
+    <plurals name="Nseconds_description" formatted="false" msgid="6456500168536594889">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> sekunda</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> sekunde</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> sekundi</item>
+    </plurals>
+    <string name="timer_add_timer" msgid="862733633862574752">"Dodaj tajmer"</string>
+    <string name="timer_start" msgid="6158486445614356442">"Započni"</string>
+    <string name="timer_delete" msgid="8699122001991909302">"Izbriši"</string>
+    <string name="timer_descriptive_delete" msgid="8794915342760383536">"Izbrišite <xliff:g id="NUMBER_STRING">%s</xliff:g>"</string>
+    <string name="timer_plus_one" msgid="6631211310420106116">"Dodaj 1 minut"</string>
+    <string name="timer_plus_1_min" msgid="8645224089494875062">"Dodaj 1 min"</string>
+    <string name="timer_stop" msgid="3361154678667736722">"Zaustavi"</string>
+    <string name="timer_stop_all" msgid="9080780442843034376">"Zaustavi sve tajmere"</string>
+    <string name="timer_reset" msgid="7848424809190171640">"Ponovo podesi"</string>
+    <string name="timer_cancel" msgid="3572868404230815644">"Otkaži"</string>
+    <string name="timer_canceled" msgid="7327923392567128060">"Tajmer je otkazan"</string>
+    <string name="timer_times_up" msgid="9190440395938519009">"Vreme je isteklo"</string>
+    <string name="timer_multi_times_up" msgid="1239104626836080409">"Isteklih tajmera: <xliff:g id="NUM_TIMERS">%d</xliff:g>"</string>
+    <string name="timer_notification_label" msgid="4933184831583137249">"Tajmer"</string>
+    <string name="timer_pause" msgid="3748323712728398743">"Pauziraj"</string>
+    <string name="timer_reset_all" msgid="7530633132757866087">"Res. sve tajm."</string>
+  <string-array name="sw_share_strings">
+    <item msgid="842841032273927988">"Brzi ste kao munja."</item>
+    <item msgid="6332879039890727169">"Uživajte u plodovima svog rada."</item>
+    <item msgid="815382761274660130">"Zna se da su Androidi brzi, ali ne kao vi!"</item>
+    <item msgid="7916250650982813737">"Uh."</item>
+    <item msgid="6836603904515182333">"Elitn@ vremena."</item>
+    <item msgid="7508085100680861631">"Kakva vrtoglava brzina."</item>
+    <item msgid="5961245252909589573">"Hajde da vidimo ponovo ubrzani prikaz kroz vreme."</item>
+    <item msgid="5211891900854545940">"Samo skok ulevo."</item>
+    <item msgid="9071353477103826053">"Brzina vam je u krvi."</item>
+    <item msgid="3785193933691117181">"Brzina fotona."</item>
+  </string-array>
+    <string name="home_label" msgid="4436139365695453870">"Kuća"</string>
+    <string name="cities_activity_title" msgid="8552462751129256730">"Gradovi"</string>
+    <string name="clock_settings" msgid="8317286807280600391">"Sat"</string>
+    <string name="clock_style" msgid="2265011060429742344">"Stil"</string>
+    <string name="open_date_settings" msgid="7712226973337806152">"Promeni datum i vreme"</string>
+  <string-array name="clock_style_entries">
+    <item msgid="917900462224167608">"Analogni"</item>
+    <item msgid="8483930821046925592">"Digitalni"</item>
+  </string-array>
+    <string name="automatic_home_clock" msgid="6274174710735449252">"Automatski sat sa vremenom kod kuće"</string>
+    <string name="automatic_home_clock_summary" msgid="6020476321040807273">"Kad putujem u drugoj vremenskoj zoni, dodaj sat sa vremenom kod kuće"</string>
+    <string name="home_time_zone" msgid="9199730676287974501">"Matična vremenska zona"</string>
+    <string name="home_time_zone_title" msgid="807894493443834624">"Matična vremenska zona"</string>
+    <string name="time_picker_cancel" msgid="7437106489606013077">"Otkaži"</string>
+    <string name="time_picker_set" msgid="331153175471468051">"Potvrdi"</string>
+    <string name="city_checked" msgid="616847871968019">"Grad <xliff:g id="CITY_NAME">%s</xliff:g> je označen"</string>
+    <string name="city_unchecked" msgid="710212932781145918">"Oznaka za grad <xliff:g id="CITY_NAME">%s</xliff:g> je uklonjena"</string>
+  <string-array name="timezone_labels">
+    <item msgid="5495601234086197399">"Maršalska ostrva"</item>
+    <item msgid="4196408495909011020">"Ostrvo Midvej"</item>
+    <item msgid="1414384194857730006">"Havaji"</item>
+    <item msgid="2687091371581931926">"Aljaska"</item>
+    <item msgid="1922100269679049660">"Pacifičko vreme"</item>
+    <item msgid="7156402158716866161">"Tihuana"</item>
+    <item msgid="1144117502254612241">"Arizona"</item>
+    <item msgid="101284182011722637">"Čivava"</item>
+    <item msgid="689121094232986897">"Planinsko vreme"</item>
+    <item msgid="5445331923942302756">"Srednja Amerika"</item>
+    <item msgid="2749806434052452351">"Centralno vreme"</item>
+    <item msgid="3997138870229703753">"Meksiko Siti"</item>
+    <item msgid="5425567073027744888">"Saskačevan"</item>
+    <item msgid="2877342865396629368">"Bogota"</item>
+    <item msgid="568682398893899670">"Istočno vreme"</item>
+    <item msgid="668135984541863866">"Venecuela"</item>
+    <item msgid="3737474220861486223">"Atlant. vreme (Barbados)"</item>
+    <item msgid="6279116051273436870">"Atlantsko vreme (Kanada)"</item>
+    <item msgid="8513382867172014244">"Manaus"</item>
+    <item msgid="7776299003105932407">"Santjago"</item>
+    <item msgid="8636989494746218677">"Njufaundlend"</item>
+    <item msgid="4402541016410147505">"Brazilija"</item>
+    <item msgid="2251184440733164084">"Buenos Ajres"</item>
+    <item msgid="6202926618569004969">"Grenland"</item>
+    <item msgid="2355275037115290628">"Montevideo"</item>
+    <item msgid="1377549694711708945">"Srednje-Atlantsko"</item>
+    <item msgid="3457671272126347981">"Azori"</item>
+    <item msgid="3659315141063710840">"Zelenortska Ostrva"</item>
+    <item msgid="1260941741802367635">"Kazablanka"</item>
+    <item msgid="8275203689687954762">"London, Dablin"</item>
+    <item msgid="5970179539479320905">"Amsterdam, Berlin"</item>
+    <item msgid="5396319478750517962">"Beograd"</item>
+    <item msgid="8688787475056663004">"Brisel"</item>
+    <item msgid="3415827874921681622">"Sarajevo"</item>
+    <item msgid="402008965928320066">"Vindhuk"</item>
+    <item msgid="6436942724959275569">"Zapadnoafričko vreme"</item>
+    <item msgid="954536568417204026">"Aman, Jordan"</item>
+    <item msgid="8932745482008902551">"Atina, Istanbul"</item>
+    <item msgid="320025725949024510">"Bejrut, Liban"</item>
+    <item msgid="7242083112551905970">"Kairo"</item>
+    <item msgid="7241520146011450419">"Helsinki"</item>
+    <item msgid="2717065017510546526">"Jerusalim"</item>
+    <item msgid="8698556287741466553">"Minsk"</item>
+    <item msgid="1797598357342084506">"Harare"</item>
+    <item msgid="5169119919905066998">"Bagdad"</item>
+    <item msgid="2615788116201065182">"Moskva"</item>
+    <item msgid="9084354867885584646">"Kuvajt"</item>
+    <item msgid="1351570519986178268">"Najrobi"</item>
+    <item msgid="7094569580635877460">"Teheran"</item>
+    <item msgid="3953138772617909704">"Baku"</item>
+    <item msgid="2868893113598800752">"Tbilisi"</item>
+    <item msgid="7088581865802476373">"Jerevan"</item>
+    <item msgid="1941122257623887992">"Dubai"</item>
+    <item msgid="9194797225058249720">"Kabul"</item>
+    <item msgid="6486569254364577332">"Islamabad, Karači"</item>
+    <item msgid="5487724896895412089">"Uralsk"</item>
+    <item msgid="364906869710826982">"Jekaterinburg"</item>
+    <item msgid="2106505051751383358">"Kolkata"</item>
+    <item msgid="6851586621581501447">"Šri Lanka"</item>
+    <item msgid="800438544128213134">"Katmandu"</item>
+    <item msgid="6173621471007643021">"Astana"</item>
+    <item msgid="8645125891971581128">"Jangon"</item>
+    <item msgid="2886407505119737794">"Krasnojarsk"</item>
+    <item msgid="3408222398188107090">"Bangkok"</item>
+    <item msgid="4441612937172851228">"Peking"</item>
+    <item msgid="4936715789028996930">"Hongkong"</item>
+    <item msgid="4261031143777385525">"Irkutsk"</item>
+    <item msgid="3538060959338191835">"Kuala Lumpur"</item>
+    <item msgid="1438847562643099201">"Pert"</item>
+    <item msgid="3063913827688244383">"Tajpej"</item>
+    <item msgid="3502757135046564209">"Seul"</item>
+    <item msgid="6107588684519111669">"Tokio, Osaka"</item>
+    <item msgid="4350769099755608471">"Jakutsk"</item>
+    <item msgid="2422707004533526462">"Adelejd"</item>
+    <item msgid="1292192084554134339">"Darvin"</item>
+    <item msgid="1320883699470001716">"Brizbejn"</item>
+    <item msgid="5137198806146386527">"Hobart"</item>
+    <item msgid="5920063686933941174">"Sidnej, Kanbera"</item>
+    <item msgid="615906039696009425">"Vladivostok"</item>
+    <item msgid="7738680449356275374">"Guam"</item>
+    <item msgid="2882915026380778227">"Magadan"</item>
+    <item msgid="8255615641810148152">"Okland"</item>
+    <item msgid="3027153773466391728">"Fidži"</item>
+    <item msgid="5911600083231840181">"Tonga"</item>
+    <item msgid="5176858645450908751">"Džakarta"</item>
+  </string-array>
+    <string name="alarm_settings" msgid="2947147071388290814">"Alarmi"</string>
+    <string name="timer_service_desc" msgid="2256002649882602433">"Obrađuje radnje iz obaveštenja tajmera."</string>
+    <string name="stopwatch_service_desc" msgid="9220132827343760767">"Obrađuje radnje iz obaveštenja štoperice."</string>
+    <string name="swn_paused" msgid="6364358842808263589">"Pauzirano"</string>
+    <string name="description_direction_right" msgid="5709209043267548985">"Prevucite nadesno za odbacivanje"</string>
+    <string name="description_direction_left" msgid="7448141043674998679">"Prevucite nalevo za odlaganje"</string>
+    <string name="description_direction_both" msgid="1841309486023845685">"Prevucite nalevo da biste odložili ili nadesno da biste odbacili"</string>
+    <string name="timer_settings" msgid="7955522143086154795">"Tajmeri"</string>
+    <string name="timer_ringtone_title" msgid="7630214935791599619">"Melodija zvona tajmera"</string>
+    <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibracija tajmera"</string>
+    <string name="timer_paused" msgid="5941160896040771462">"Tajmer je pauziran"</string>
+    <string name="timers_stopped" msgid="3186191253226005149">"Pauziranih tajmera: <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Dodirnite da biste videli tajmere"</string>
+    <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> tajmera"</string>
+    <string name="next_timer_notif" msgid="6136454740115613653">"Sledeći tajmer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Podešavanja čuvara ekrana"</string>
+    <string name="night_mode_title" msgid="5983813889469616299">"Noćni režim"</string>
+    <string name="night_mode_summary" msgid="1017350187324162631">"Veoma taman ekran (za mračne sobe)"</string>
+    <string name="expand_alarm" msgid="7392616528943305020">"Proširi alarm"</string>
+    <string name="collapse_alarm" msgid="3561772046433483980">"Skupi alarm"</string>
+    <string name="alarm_undo" msgid="5710042601177655254">"opozovi"</string>
+    <string name="alarm_deleted" msgid="6131529309389084785">"Alarm je izbrisan"</string>
+    <string name="world_day_of_week_label" msgid="5911196322328341288">"/<xliff:g id="LABEL">%s</xliff:g>"</string>
+    <string name="next_alarm_description" msgid="2650244835760747046">"Sledeći alarm: <xliff:g id="ALARM_TIME">%s</xliff:g>"</string>
+    <string name="no_alarms" msgid="6429431324842022917">"Bez alarma"</string>
+    <string name="invalid_time" msgid="2782334750243998633">"Nevažeće vreme <xliff:g id="INVALID_HOUR">%1$d</xliff:g>:<xliff:g id="INVALID_MINUTES">%2$d</xliff:g> <xliff:g id="INVALID_AMPM">%3$s</xliff:g>"</string>
+    <string name="no_alarm_at" msgid="8140632482969193119">"Nema alarma u <xliff:g id="ALARM_TIME_HOUR">%1$d</xliff:g>:<xliff:g id="ALARM_TIME_MINUTES">%2$d</xliff:g>"</string>
+    <string name="no_scheduled_alarms" msgid="2115420148192753534">"Nema zakazanih alarma"</string>
+    <string name="no_label_specified" msgid="2008482054428460626">"Nije navedena nijedna oznaka"</string>
+    <string name="no_alarms_with_label" msgid="6250998794542941665">"Nijedan alarm ne sadrži oznaku"</string>
+    <string name="stopwatch_isnt_running" msgid="7147219965448204727">"Štoperica nije pokrenuta"</string>
+    <string name="stopwatch_paused" msgid="2187615623275408601">"Štoperica je pauzirana"</string>
+    <string name="stopwatch_reset" msgid="7585914953721021042">"Štoperica je resetovana"</string>
+    <string name="stopwatch_lapped" msgid="5844686448815550482">"Obeleženo je vreme za krug na štoperici"</string>
+    <string name="stopwatch_started" msgid="7843882246387176304">"Štoperica je pokrenuta"</string>
+    <string name="no_alarm_scheduled_for_this_time" msgid="4463069177414482818">"Nijedan alarm nije zakazan za ovo vreme"</string>
+    <string name="alarm_is_dismissed" msgid="5509897230565826642">"Alarm za <xliff:g id="ALARM_TIME">%s</xliff:g> je odbačen"</string>
+    <string name="alarm_is_set" msgid="5503226382620011088">"Alarm je podešen za <xliff:g id="ALARM_TIME">%s</xliff:g>"</string>
+    <string name="no_timers_exist" msgid="7062019300048831373">"Ne postoje tajmeri"</string>
+    <string name="too_many_timers_exist" msgid="6339194231767431627">"Postoji više tajmera"</string>
+    <string name="timer_does_not_exist" msgid="4457482976523984231">"Tajmer je uklonjen."</string>
+    <string name="timer_created" msgid="4381027137335885547">"Tajmer je napravljen"</string>
+    <string name="timer_was_reset" msgid="6495796785185062631">"Tajmer je resetovan"</string>
+    <string name="timer_deleted" msgid="9110322362460029392">"Tajmer je izbrisan"</string>
+    <string name="timer_started" msgid="6715582052946641641">"Tajmer je pokrenut"</string>
+    <string name="invalid_timer_length" msgid="3104567893212932487">"Nevažeća dužina tajmera"</string>
+    <string name="no_city_selected" msgid="1007596865203283741">"Nijedan grad nije izabran"</string>
+    <string name="the_city_you_specified_is_not_available" msgid="1753597460426454543">"Grad koji ste naveli nije dostupan"</string>
+    <string name="the_city_already_added" msgid="3799050213771793020">"Ovaj grad je već dodat"</string>
+    <string name="city_added" msgid="1335509457349179514">"Dodali ste: <xliff:g id="CITY_NAME">%s</xliff:g>"</string>
+    <string name="city_deleted" msgid="3935141305276867838">"Izbrisali ste: <xliff:g id="CITY_NAME">%s</xliff:g>"</string>
+    <string name="alarm_cant_be_dismissed_still_more_than_24_hours_away" msgid="8810520940995307437">"Alarm za <xliff:g id="ALARM_TIME">%s</xliff:g> još uvek ne može da se odbaci, i dalje ima više od 24 sata do vremena alarma"</string>
+    <string name="dismiss_alarm" msgid="7204593078688533541">"Odbaci alarm"</string>
+    <string name="pick_alarm_to_dismiss" msgid="5408769235866082896">"Izaberite alarm koji želite da odbacite"</string>
+    <string name="no_firing_alarms" msgid="4986161963178722289">"Ne aktivira se nijedan alarm"</string>
+    <string name="alarm_is_snoozed" msgid="7044644119744928846">"Alarm za <xliff:g id="ALARM_TIME">%s</xliff:g> je odložen za 10 minuta"</string>
+</resources>
diff --git a/res/values-be-rBY/cities.xml b/res/values-be-rBY/cities.xml
new file mode 100644
index 0000000..f6eb0bc
--- /dev/null
+++ b/res/values-be-rBY/cities.xml
@@ -0,0 +1,360 @@
+<?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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="C1" msgid="3622720549928625541">"A<xliff:g id="SEPARATOR">=</xliff:g>Абіджан<xliff:g id="TIMEZONE">|Africa/Abidjan</xliff:g>"</string>
+    <string name="C2" msgid="9073993995416728918">"А<xliff:g id="SEPARATOR">=</xliff:g>Акра<xliff:g id="TIMEZONE">|Africa/Accra</xliff:g>"</string>
+    <string name="C3" msgid="5172979423931428620">"А<xliff:g id="SEPARATOR">=</xliff:g>Адыс-Абеба<xliff:g id="TIMEZONE">|Africa/Addis_Ababa</xliff:g>"</string>
+    <string name="C4" msgid="4450258423854546267">"А<xliff:g id="SEPARATOR">=</xliff:g>Алжыр<xliff:g id="TIMEZONE">|Africa/Algiers</xliff:g>"</string>
+    <string name="C5" msgid="8063142106679202722">"Б<xliff:g id="SEPARATOR">=</xliff:g>Блантайр<xliff:g id="TIMEZONE">|Africa/Blantyre</xliff:g>"</string>
+    <string name="C6" msgid="1620940469531839828">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бразавіль<xliff:g id="TIMEZONE">|Africa/Brazzaville</xliff:g>"</string>
+    <string name="C7" msgid="8450502029020824529">"К<xliff:g id="SEPARATOR">=</xliff:g>Каір<xliff:g id="TIMEZONE">|Africa/Cairo</xliff:g>"</string>
+    <string name="C8" msgid="5843391672611053116">"К<xliff:g id="SEPARATOR">=</xliff:g>Касабланка<xliff:g id="TIMEZONE">|Africa/Casablanca</xliff:g>"</string>
+    <string name="C9" msgid="2164088076645942134">"К<xliff:g id="SEPARATOR">=</xliff:g>Канакры<xliff:g id="TIMEZONE">|Africa/Conakry</xliff:g>"</string>
+    <string name="C10" msgid="6275085554326816487">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дакар<xliff:g id="TIMEZONE">|Africa/Dakar</xliff:g>"</string>
+    <string name="C11" msgid="8124988526568339100">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дар-эс-Салам<xliff:g id="TIMEZONE">|Africa/Dar_es_Salaam</xliff:g>"</string>
+    <string name="C12" msgid="9058858575164534385">"Д<xliff:g id="SEPARATOR">=</xliff:g>Джыбуці<xliff:g id="TIMEZONE">|Africa/Djibouti</xliff:g>"</string>
+    <string name="C13" msgid="1020128319695123468">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Фрытаўн<xliff:g id="TIMEZONE">|Africa/Freetown</xliff:g>"</string>
+    <string name="C14" msgid="5466600602512133072">"Г<xliff:g id="SEPARATOR">=</xliff:g>Габаронэ<xliff:g id="TIMEZONE">|Africa/Gaborone</xliff:g>"</string>
+    <string name="C15" msgid="4045696872348427594">"Х<xliff:g id="SEPARATOR">=</xliff:g>Харарэ<xliff:g id="TIMEZONE">|Africa/Harare</xliff:g>"</string>
+    <string name="C16" msgid="109844560982762747">"Я<xliff:g id="SEPARATOR">=</xliff:g>Яганесбург<xliff:g id="TIMEZONE">|Africa/Johannesburg</xliff:g>"</string>
+    <string name="C17" msgid="4868414442726546214">"К<xliff:g id="SEPARATOR">=</xliff:g>Кампала<xliff:g id="TIMEZONE">|Africa/Kampala</xliff:g>"</string>
+    <string name="C18" msgid="7460319039497808668">"Х<xliff:g id="SEPARATOR">=</xliff:g>Хартум<xliff:g id="TIMEZONE">|Africa/Khartoum</xliff:g>"</string>
+    <string name="C19" msgid="3967163989179394825">"К<xliff:g id="SEPARATOR">=</xliff:g>Кігалі<xliff:g id="TIMEZONE">|Africa/Kigali</xliff:g>"</string>
+    <string name="C20" msgid="832336979058592106">"К<xliff:g id="SEPARATOR">=</xliff:g>Кіншаса<xliff:g id="TIMEZONE">|Africa/Kinshasa</xliff:g>"</string>
+    <string name="C21" msgid="8691772487297796331">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лагас<xliff:g id="TIMEZONE">|Africa/Lagos</xliff:g>"</string>
+    <string name="C22" msgid="6061916756914828881">"М<xliff:g id="SEPARATOR">=</xliff:g>Масеру<xliff:g id="TIMEZONE">|Africa/Maseru</xliff:g>"</string>
+    <string name="C23" msgid="6790461017899209498">"М<xliff:g id="SEPARATOR">=</xliff:g>Магадыша<xliff:g id="TIMEZONE">|Africa/Mogadishu</xliff:g>"</string>
+    <string name="C24" msgid="836730985302941979">"Н<xliff:g id="SEPARATOR">=</xliff:g>Найробі<xliff:g id="TIMEZONE">|Africa/Nairobi</xliff:g>"</string>
+    <string name="C25" msgid="6439936809920816845">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Тамэ<xliff:g id="TIMEZONE">|Africa/Sao_Tome</xliff:g>"</string>
+    <string name="C26" msgid="3250092456144685877">"Ц<xliff:g id="SEPARATOR">=</xliff:g>Тамбукту<xliff:g id="TIMEZONE">|Africa/Timbuktu</xliff:g>"</string>
+    <string name="C27" msgid="851018621577780718">"Т<xliff:g id="SEPARATOR">=</xliff:g>Трыпалі<xliff:g id="TIMEZONE">|Africa/Tripoli</xliff:g>"</string>
+    <string name="C28" msgid="7979767521827885833">"Т<xliff:g id="SEPARATOR">=</xliff:g>Туніс<xliff:g id="TIMEZONE">|Africa/Tunis</xliff:g>"</string>
+    <string name="C29" msgid="7946114495840302218">"А<xliff:g id="SEPARATOR">=</xliff:g>Анкарыдж<xliff:g id="TIMEZONE">|America/Anchorage</xliff:g>"</string>
+    <string name="C31" msgid="9017443250572798257">"А<xliff:g id="SEPARATOR">=</xliff:g>Аруба<xliff:g id="TIMEZONE">|America/Aruba</xliff:g>"</string>
+    <string name="C32" msgid="3825060534011309483">"А<xliff:g id="SEPARATOR">=</xliff:g>Асунсьён<xliff:g id="TIMEZONE">|America/Asuncion</xliff:g>"</string>
+    <string name="C33" msgid="700410369162607101">"Б<xliff:g id="SEPARATOR">=</xliff:g>Барбадас<xliff:g id="TIMEZONE">|America/Barbados</xliff:g>"</string>
+    <string name="C34" msgid="4247046344370912762">"Б<xliff:g id="SEPARATOR">=</xliff:g>Беліз<xliff:g id="TIMEZONE">|America/Belize</xliff:g>"</string>
+    <string name="C35" msgid="2794708943743875418">"Б<xliff:g id="SEPARATOR">=</xliff:g>Багата<xliff:g id="TIMEZONE">|America/Bogota</xliff:g>"</string>
+    <string name="C36" msgid="5404342554664613950">"Б<xliff:g id="SEPARATOR">=</xliff:g>Буэнас-Айрэс<xliff:g id="TIMEZONE">|America/Buenos_Aires</xliff:g>"</string>
+    <string name="C37" msgid="210142862572070093">"К<xliff:g id="SEPARATOR">=</xliff:g>Канкун<xliff:g id="TIMEZONE">|America/Cancun</xliff:g>"</string>
+    <string name="C38" msgid="3882347315148425276">"К<xliff:g id="SEPARATOR">=</xliff:g>Каракас<xliff:g id="TIMEZONE">|America/Caracas</xliff:g>"</string>
+    <string name="C39" msgid="1273212484626323439">"К<xliff:g id="SEPARATOR">=</xliff:g>Кайманавы астравы<xliff:g id="TIMEZONE">|America/Cayman</xliff:g>"</string>
+    <string name="C40" msgid="3106173663723475314">"Ч<xliff:g id="SEPARATOR">=</xliff:g>Чыкага<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C42" msgid="5638414063615009004">"К<xliff:g id="SEPARATOR">=</xliff:g>Кюрасаа<xliff:g id="TIMEZONE">|America/Curacao</xliff:g>"</string>
+    <string name="C43" msgid="6826097241516998181">"Д<xliff:g id="SEPARATOR">=</xliff:g>Досан-Крык<xliff:g id="TIMEZONE">|America/Dawson_Creek</xliff:g>"</string>
+    <string name="C44" msgid="2779334691893631030">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дэнвер<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C45" msgid="8943178793317201894">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дэтройт<xliff:g id="TIMEZONE">|America/Detroit</xliff:g>"</string>
+    <string name="C46" msgid="5190250990574320177">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дамініка<xliff:g id="TIMEZONE">|America/Dominica</xliff:g>"</string>
+    <string name="C47" msgid="369754396219379227">"Э<xliff:g id="SEPARATOR">=</xliff:g>Эдмантан<xliff:g id="TIMEZONE">|America/Edmonton</xliff:g>"</string>
+    <string name="C48" msgid="7918902616648922410">"С<xliff:g id="SEPARATOR">=</xliff:g>Салвадор<xliff:g id="TIMEZONE">|America/El_Salvador</xliff:g>"</string>
+    <string name="C49" msgid="6326857727742458931">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Фарталеза<xliff:g id="TIMEZONE">|America/Fortaleza</xliff:g>"</string>
+    <string name="C50" msgid="3131498820508584398">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гранд-Цёрк<xliff:g id="TIMEZONE">|America/Grand_Turk</xliff:g>"</string>
+    <string name="C51" msgid="3122278921760822414">"Г<xliff:g id="SEPARATOR">=</xliff:g>Грэнада<xliff:g id="TIMEZONE">|America/Grenada</xliff:g>"</string>
+    <string name="C52" msgid="7461551991724617520">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гватэмала<xliff:g id="TIMEZONE">|America/Guatemala</xliff:g>"</string>
+    <string name="C53" msgid="296242785331472791">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гаяна<xliff:g id="TIMEZONE">|America/Guyana</xliff:g>"</string>
+    <string name="C54" msgid="4045007274020361950">"Г<xliff:g id="SEPARATOR">=</xliff:g>Галіфакс<xliff:g id="TIMEZONE">|America/Halifax</xliff:g>"</string>
+    <string name="C55" msgid="8180186289266487770">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гавана<xliff:g id="TIMEZONE">|America/Havana</xliff:g>"</string>
+    <string name="C56" msgid="6062281725956353553">"І<xliff:g id="SEPARATOR">=</xliff:g>Індыянапаліс<xliff:g id="TIMEZONE">|America/Indiana/Indianapolis</xliff:g>"</string>
+    <string name="C57" msgid="5971109906791493563">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нокс<xliff:g id="TIMEZONE">|America/Indiana/Knox</xliff:g>"</string>
+    <string name="C58" msgid="7657721717096348613">"М<xliff:g id="SEPARATOR">=</xliff:g>Марэнга<xliff:g id="TIMEZONE">|America/Indiana/Marengo</xliff:g>"</string>
+    <string name="C59" msgid="2053523400941417307">"П<xliff:g id="SEPARATOR">=</xliff:g>Пітэрсберг<xliff:g id="TIMEZONE">|America/Indiana/Petersburg</xliff:g>"</string>
+    <string name="C60" msgid="8112283891039465817">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тэл-Сіці<xliff:g id="TIMEZONE">|America/Indiana/Tell_City</xliff:g>"</string>
+    <string name="C61" msgid="7778713489993559227">"В<xliff:g id="SEPARATOR">=</xliff:g>Віві<xliff:g id="TIMEZONE">|America/Indiana/Vevay</xliff:g>"</string>
+    <string name="C62" msgid="2667958702401099683">"В<xliff:g id="SEPARATOR">=</xliff:g>Вінсенс<xliff:g id="TIMEZONE">|America/Indiana/Vincennes</xliff:g>"</string>
+    <string name="C63" msgid="2251274863869460838">"У<xliff:g id="SEPARATOR">=</xliff:g>Уінамак<xliff:g id="TIMEZONE">|America/Indiana/Winamac</xliff:g>"</string>
+    <string name="C64" msgid="1051183687128385699">"К<xliff:g id="SEPARATOR">=</xliff:g>Кінгстан<xliff:g id="TIMEZONE">|America/Jamaica</xliff:g>"</string>
+    <string name="C65" msgid="4484953311341882894">"Л<xliff:g id="SEPARATOR">=</xliff:g>Ла-Пас<xliff:g id="TIMEZONE">|America/La_Paz</xliff:g>"</string>
+    <string name="C66" msgid="4486852398001333122">"Л<xliff:g id="SEPARATOR">=</xliff:g>Ліма<xliff:g id="TIMEZONE">|America/Lima</xliff:g>"</string>
+    <string name="C67" msgid="4874799181719358019">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лос-Анджэлес<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C68" msgid="5526012011469271690">"Л<xliff:g id="SEPARATOR">=</xliff:g>Луісвіл<xliff:g id="TIMEZONE">|America/Louisville</xliff:g>"</string>
+    <string name="C69" msgid="6147580167560875608">"М<xliff:g id="SEPARATOR">=</xliff:g>Манагуа<xliff:g id="TIMEZONE">|America/Managua</xliff:g>"</string>
+    <string name="C70" msgid="3277881296053225577">"М<xliff:g id="SEPARATOR">=</xliff:g>Марцініка<xliff:g id="TIMEZONE">|America/Martinique</xliff:g>"</string>
+    <string name="C71" msgid="4017941126335556194">"М<xliff:g id="SEPARATOR">=</xliff:g>Мендоса<xliff:g id="TIMEZONE">|America/Mendoza</xliff:g>"</string>
+    <string name="C72" msgid="3992109594245379480">"М<xliff:g id="SEPARATOR">=</xliff:g>Метлакатла<xliff:g id="TIMEZONE">|America/Metlakatla</xliff:g>"</string>
+    <string name="C73" msgid="2715229408279026929">"М<xliff:g id="SEPARATOR">=</xliff:g>Мехіка<xliff:g id="TIMEZONE">|America/Mexico_City</xliff:g>"</string>
+    <string name="C74" msgid="4308784353529592128">"М<xliff:g id="SEPARATOR">=</xliff:g>Мантэрэй<xliff:g id="TIMEZONE">|America/Monterrey</xliff:g>"</string>
+    <string name="C75" msgid="1026967177018172509">"М<xliff:g id="SEPARATOR">=</xliff:g>Мантэвідэа<xliff:g id="TIMEZONE">|America/Montevideo</xliff:g>"</string>
+    <string name="C76" msgid="5677155513568462679">"М<xliff:g id="SEPARATOR">=</xliff:g>Манрэаль<xliff:g id="TIMEZONE">|America/Montreal</xliff:g>"</string>
+    <string name="C77" msgid="7071675194537613715">"Н<xliff:g id="SEPARATOR">=</xliff:g>Насаў<xliff:g id="TIMEZONE">|America/Nassau</xliff:g>"</string>
+    <string name="C78" msgid="705452895809394827">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нью-Ёрк<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C79" msgid="615046244335186458">"Б<xliff:g id="SEPARATOR">=</xliff:g>Б\'юла<xliff:g id="TIMEZONE">|America/North_Dakota/Beulah</xliff:g>"</string>
+    <string name="C80" msgid="7462541787750301851">"C<xliff:g id="SEPARATOR">=</xliff:g>Cэнтэр<xliff:g id="TIMEZONE">|America/North_Dakota/Center</xliff:g>"</string>
+    <string name="C81" msgid="5467118811364466464">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нью-Салем<xliff:g id="TIMEZONE">|America/North_Dakota/New_Salem</xliff:g>"</string>
+    <string name="C82" msgid="1040250446144596478">"П<xliff:g id="SEPARATOR">=</xliff:g>Панама<xliff:g id="TIMEZONE">|America/Panama</xliff:g>"</string>
+    <string name="C83" msgid="3734366600481445363">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Фінікс<xliff:g id="TIMEZONE">|America/Phoenix</xliff:g>"</string>
+    <string name="C84" msgid="2410152141185166321">"П<xliff:g id="SEPARATOR">=</xliff:g>Порт-оф-Спейн<xliff:g id="TIMEZONE">|America/Port_of_Spain</xliff:g>"</string>
+    <string name="C85" msgid="2883572094139689939">"П<xliff:g id="SEPARATOR">=</xliff:g>Порт-о-Прэнс<xliff:g id="TIMEZONE">|America/Port-au-Prince</xliff:g>"</string>
+    <string name="C86" msgid="274590042868724214">"П<xliff:g id="SEPARATOR">=</xliff:g>Пуэрта-Рыка<xliff:g id="TIMEZONE">|America/Puerto_Rico</xliff:g>"</string>
+    <string name="C87" msgid="2866918562243248306">"С<xliff:g id="SEPARATOR">=</xliff:g>Санта-Дамінга<xliff:g id="TIMEZONE">|America/Santo_Domingo</xliff:g>"</string>
+    <string name="C88" msgid="2261702707416420550">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Паўлу<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C89" msgid="8517952667962700432">"С<xliff:g id="SEPARATOR">=</xliff:g>Сент-Джонс<xliff:g id="TIMEZONE">|America/St_Johns</xliff:g>"</string>
+    <string name="C90" msgid="1703939848190669830">"С<xliff:g id="SEPARATOR">=</xliff:g>Сент-Кітс<xliff:g id="TIMEZONE">|America/St_Kitts</xliff:g>"</string>
+    <string name="C91" msgid="4438261556294969442">"С<xliff:g id="SEPARATOR">=</xliff:g>Сэнт-Люсія<xliff:g id="TIMEZONE">|America/St_Lucia</xliff:g>"</string>
+    <string name="C92" msgid="3717300223413621820">"С<xliff:g id="SEPARATOR">=</xliff:g>Сент-Томас<xliff:g id="TIMEZONE">|America/St_Thomas</xliff:g>"</string>
+    <string name="C93" msgid="964552099122372664">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тыхуана<xliff:g id="TIMEZONE">|America/Tijuana</xliff:g>"</string>
+    <string name="C94" msgid="6254783598629305021">"Т<xliff:g id="SEPARATOR">=</xliff:g>Таронта<xliff:g id="TIMEZONE">|America/Toronto</xliff:g>"</string>
+    <string name="C95" msgid="2144206125989179089">"В<xliff:g id="SEPARATOR">=</xliff:g>Ванкувер<xliff:g id="TIMEZONE">|America/Vancouver</xliff:g>"</string>
+    <string name="C96" msgid="3995904432128369027">"В<xliff:g id="SEPARATOR">=</xliff:g>Вініпег<xliff:g id="TIMEZONE">|America/Winnipeg</xliff:g>"</string>
+    <string name="C97" msgid="5667595440938233073">"П<xliff:g id="SEPARATOR">=</xliff:g>Паўднёвы полюс<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Antarctica/South_Pole</xliff:g>"</string>
+    <string name="C98" msgid="2067640513126652156">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лонгйір<xliff:g id="TIMEZONE">|Arctic/Longyearbyen</xliff:g>"</string>
+    <string name="C99" msgid="6750041547603679548">"А<xliff:g id="SEPARATOR">=</xliff:g>Алматы<xliff:g id="TIMEZONE">|Asia/Almaty</xliff:g>"</string>
+    <string name="C100" msgid="5995329947852415813">"A<xliff:g id="SEPARATOR">=</xliff:g>Аман<xliff:g id="TIMEZONE">|Asia/Amman</xliff:g>"</string>
+    <string name="C101" msgid="5760056604239047274">"A<xliff:g id="SEPARATOR">=</xliff:g>Анадыр<xliff:g id="TIMEZONE">|Asia/Anadyr</xliff:g>"</string>
+    <string name="C102" msgid="9000357065825182754">"A<xliff:g id="SEPARATOR">=</xliff:g>Актау<xliff:g id="TIMEZONE">|Asia/Aqtau</xliff:g>"</string>
+    <string name="C103" msgid="8781982253489209791">"Б<xliff:g id="SEPARATOR">=</xliff:g>Багдад<xliff:g id="TIMEZONE">|Asia/Baghdad</xliff:g>"</string>
+    <string name="C104" msgid="4021122575041916540">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бахрэйн<xliff:g id="TIMEZONE">|Asia/Bahrain</xliff:g>"</string>
+    <string name="C105" msgid="1812915124794679606">"Б<xliff:g id="SEPARATOR">=</xliff:g>Баку<xliff:g id="TIMEZONE">|Asia/Baku</xliff:g>"</string>
+    <string name="C106" msgid="1996684628612964988">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бангкок<xliff:g id="TIMEZONE">|Asia/Bangkok</xliff:g>"</string>
+    <string name="C107" msgid="227554925153715426">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бейрут<xliff:g id="TIMEZONE">|Asia/Beirut</xliff:g>"</string>
+    <string name="C108" msgid="5082419901681584844">"К<xliff:g id="SEPARATOR">=</xliff:g>Калькута<xliff:g id="TIMEZONE">|Asia/Calcutta</xliff:g>"</string>
+    <string name="C109" msgid="6386566477244958752">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дамаск<xliff:g id="TIMEZONE">|Asia/Damascus</xliff:g>"</string>
+    <string name="C110" msgid="1165712058024165012">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дака<xliff:g id="TIMEZONE">|Asia/Dhaka</xliff:g>"</string>
+    <string name="C111" msgid="5895260692253797547">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дубай<xliff:g id="TIMEZONE">|Asia/Dubai</xliff:g>"</string>
+    <string name="C112" msgid="1708170128253320625">"Г<xliff:g id="SEPARATOR">=</xliff:g>Газа<xliff:g id="TIMEZONE">|Asia/Gaza</xliff:g>"</string>
+    <string name="C113" msgid="8790538811134290878">"Х<xliff:g id="SEPARATOR">=</xliff:g>Хеўрон<xliff:g id="TIMEZONE">|Asia/Hebron</xliff:g>"</string>
+    <string name="C114" msgid="8019764566754082688">"Х<xliff:g id="SEPARATOR">=</xliff:g>Хашымін<xliff:g id="TIMEZONE">|Asia/Ho_Chi_Minh</xliff:g>"</string>
+    <string name="C115" msgid="2707316842482208016">"Г<xliff:g id="SEPARATOR">=</xliff:g>Ганконг<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Hong_Kong</xliff:g>"</string>
+    <string name="C117" msgid="486537564257069933">"Д<xliff:g id="SEPARATOR">=</xliff:g>Джакарта<xliff:g id="TIMEZONE">|Asia/Jakarta</xliff:g>"</string>
+    <string name="C118" msgid="2220594023727285784">"І<xliff:g id="SEPARATOR">=</xliff:g>Іерусалім<xliff:g id="TIMEZONE">|Asia/Jerusalem</xliff:g>"</string>
+    <string name="C119" msgid="7095503078924268384">"К<xliff:g id="SEPARATOR">=</xliff:g>Кабул<xliff:g id="TIMEZONE">|Asia/Kabul</xliff:g>"</string>
+    <string name="C120" msgid="4759297844750994699">"К<xliff:g id="SEPARATOR">=</xliff:g>Карачы<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C121" msgid="6397452077111782277">"К<xliff:g id="SEPARATOR">=</xliff:g>Катманду<xliff:g id="TIMEZONE">|Asia/Kathmandu</xliff:g>"</string>
+    <string name="C122" msgid="3384658968869783693">"К<xliff:g id="SEPARATOR">=</xliff:g>Куала-Лумпур<xliff:g id="TIMEZONE">|Asia/Kuala_Lumpur</xliff:g>"</string>
+    <string name="C123" msgid="2596231413860119715">"К<xliff:g id="SEPARATOR">=</xliff:g>Кувейт<xliff:g id="TIMEZONE">|Asia/Kuwait</xliff:g>"</string>
+    <string name="C124" msgid="7128790644999660843">"М<xliff:g id="SEPARATOR">=</xliff:g>Макаа<xliff:g id="TIMEZONE">|Asia/Macau</xliff:g>"</string>
+    <string name="C125" msgid="7482612453109643531">"M<xliff:g id="SEPARATOR">=</xliff:g>Маніла<xliff:g id="TIMEZONE">|Asia/Manila</xliff:g>"</string>
+    <string name="C126" msgid="89594601694005714">"M<xliff:g id="SEPARATOR">=</xliff:g>Маскат<xliff:g id="TIMEZONE">|Asia/Muscat</xliff:g>"</string>
+    <string name="C127" msgid="6694878912574814081">"П<xliff:g id="SEPARATOR">=</xliff:g>Пнампень<xliff:g id="TIMEZONE">|Asia/Phnom_Penh</xliff:g>"</string>
+    <string name="C128" msgid="6055116591529458940">"П<xliff:g id="SEPARATOR">=</xliff:g>Пхеньян<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Pyongyang</xliff:g>"</string>
+    <string name="C130" msgid="665609990740507143">"Я<xliff:g id="SEPARATOR">=</xliff:g>Янгон<xliff:g id="TIMEZONE">|Asia/Rangoon</xliff:g>"</string>
+    <string name="C131" msgid="3395769966117356927">"Э<xliff:g id="SEPARATOR">=</xliff:g>Эр-Рыяд<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C133" msgid="5204810106521056060">"С<xliff:g id="SEPARATOR">=</xliff:g>Сеул<xliff:g id="TIMEZONE">|Asia/Seoul</xliff:g>"</string>
+    <string name="C134" msgid="7263747916569669120">"Ш<xliff:g id="SEPARATOR">=</xliff:g>Шанхай<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C135" msgid="4100015019260371393">"С<xliff:g id="SEPARATOR">=</xliff:g>Сінгапур<xliff:g id="TIMEZONE">|Asia/Singapore</xliff:g>"</string>
+    <string name="C136" msgid="6386033226757339839">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тайбэй<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Taipei</xliff:g>"</string>
+    <string name="C137" msgid="5387760734363179588">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тэгеран<xliff:g id="TIMEZONE">|Asia/Tehran</xliff:g>"</string>
+    <string name="C138" msgid="7193922868117846792">"T<xliff:g id="SEPARATOR">=</xliff:g>Тэль-Авіў<xliff:g id="TIMEZONE">|Asia/Tel_Aviv</xliff:g>"</string>
+    <string name="C139" msgid="7060339477340222608">"Т<xliff:g id="SEPARATOR">=</xliff:g>Токіа<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Tokyo</xliff:g>"</string>
+    <string name="C140" msgid="6273911458061121975">"У<xliff:g id="SEPARATOR">=</xliff:g>Улан-Батар<xliff:g id="TIMEZONE">|Asia/Ulaanbaatar</xliff:g>"</string>
+    <string name="C141" msgid="2799340184229547409">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бермудскія астравы<xliff:g id="TIMEZONE">|Atlantic/Bermuda</xliff:g>"</string>
+    <string name="C142" msgid="6015789133959684677">"К<xliff:g id="SEPARATOR">=</xliff:g>Канарскія астравы<xliff:g id="TIMEZONE">|Atlantic/Canary</xliff:g>"</string>
+    <string name="C143" msgid="4888764215053863961">"К<xliff:g id="SEPARATOR">=</xliff:g>Каба-Вердэ<xliff:g id="TIMEZONE">|Atlantic/Cape_Verde</xliff:g>"</string>
+    <string name="C144" msgid="3338105941475340049">"Р<xliff:g id="SEPARATOR">=</xliff:g>Рэйк\'явік<xliff:g id="TIMEZONE">|Atlantic/Reykjavik</xliff:g>"</string>
+    <string name="C145" msgid="8684297689430494031">"С<xliff:g id="SEPARATOR">=</xliff:g>Стэнлі<xliff:g id="TIMEZONE">|Atlantic/Stanley</xliff:g>"</string>
+    <string name="C146" msgid="843808286721172656">"А<xliff:g id="SEPARATOR">=</xliff:g>Адэлаіда<xliff:g id="TIMEZONE">|Australia/Adelaide</xliff:g>"</string>
+    <string name="C147" msgid="3712535858465321034">"Б<xliff:g id="SEPARATOR">=</xliff:g>Брысбен<xliff:g id="TIMEZONE">|Australia/Brisbane</xliff:g>"</string>
+    <string name="C148" msgid="7019403666599702943">"К<xliff:g id="SEPARATOR">=</xliff:g>Канбера<xliff:g id="TIMEZONE">|Australia/Canberra</xliff:g>"</string>
+    <string name="C149" msgid="8185355499458013534">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дарвін<xliff:g id="TIMEZONE">|Australia/Darwin</xliff:g>"</string>
+    <string name="C150" msgid="3516845880105752618">"М<xliff:g id="SEPARATOR">=</xliff:g>Мельбурн<xliff:g id="TIMEZONE">|Australia/Melbourne</xliff:g>"</string>
+    <string name="C151" msgid="5576825403360541823">"Н<xliff:g id="SEPARATOR">=</xliff:g>Новы Паўднёвы Уэльс<xliff:g id="TIMEZONE">|Australia/NSW</xliff:g>"</string>
+    <string name="C152" msgid="7889900618915436602">"П<xliff:g id="SEPARATOR">=</xliff:g>Перт<xliff:g id="TIMEZONE">|Australia/Perth</xliff:g>"</string>
+    <string name="C153" msgid="7506204460601953711">"К<xliff:g id="SEPARATOR">=</xliff:g>Квінсленд<xliff:g id="TIMEZONE">|Australia/Queensland</xliff:g>"</string>
+    <string name="C154" msgid="1193262944948312063">"С<xliff:g id="SEPARATOR">=</xliff:g>Сідней<xliff:g id="TIMEZONE">|Australia/Sydney</xliff:g>"</string>
+    <string name="C155" msgid="7079072802229033042">"В<xliff:g id="SEPARATOR">=</xliff:g>Вікторыя<xliff:g id="TIMEZONE">|Australia/Victoria</xliff:g>"</string>
+    <string name="C156" msgid="4003110220147338835">"Н<xliff:g id="SEPARATOR">=</xliff:g>Ньюфаўндленд<xliff:g id="TIMEZONE">|Canada/Newfoundland</xliff:g>"</string>
+    <string name="C157" msgid="2861486997803753970">"С<xliff:g id="SEPARATOR">=</xliff:g>Саскачэван<xliff:g id="TIMEZONE">|Canada/Saskatchewan</xliff:g>"</string>
+    <string name="C158" msgid="6882933026191056506">"В<xliff:g id="SEPARATOR">=</xliff:g>Востраў Вялікадня<xliff:g id="TIMEZONE">|Chile/EasterIsland</xliff:g>"</string>
+    <string name="C159" msgid="4128429767051043903">"А<xliff:g id="SEPARATOR">=</xliff:g>Амстэрдам<xliff:g id="TIMEZONE">|Europe/Amsterdam</xliff:g>"</string>
+    <string name="C160" msgid="3488513735205092653">"А<xliff:g id="SEPARATOR">=</xliff:g>Андора<xliff:g id="TIMEZONE">|Europe/Andorra</xliff:g>"</string>
+    <string name="C161" msgid="7244325364130392348">"А<xliff:g id="SEPARATOR">=</xliff:g>Афіны<xliff:g id="TIMEZONE">|Europe/Athens</xliff:g>"</string>
+    <string name="C162" msgid="7484009548361072313">"Б<xliff:g id="SEPARATOR">=</xliff:g>Белфаст<xliff:g id="TIMEZONE">|Europe/Belfast</xliff:g>"</string>
+    <string name="C163" msgid="6106990061397073808">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бялград<xliff:g id="TIMEZONE">|Europe/Belgrade</xliff:g>"</string>
+    <string name="C164" msgid="3074767496771260157">"Б<xliff:g id="SEPARATOR">=</xliff:g>Берлін<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C165" msgid="4442005045172394762">"Б<xliff:g id="SEPARATOR">=</xliff:g>Браціслава<xliff:g id="TIMEZONE">|Europe/Bratislava</xliff:g>"</string>
+    <string name="C166" msgid="8977286721038142474">"Б<xliff:g id="SEPARATOR">=</xliff:g>Брусель<xliff:g id="TIMEZONE">|Europe/Brussels</xliff:g>"</string>
+    <string name="C167" msgid="5502175796232774744">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бухарэст<xliff:g id="TIMEZONE">|Europe/Bucharest</xliff:g>"</string>
+    <string name="C168" msgid="6750159439632567316">"Б<xliff:g id="SEPARATOR">=</xliff:g>Будапешт<xliff:g id="TIMEZONE">|Europe/Budapest</xliff:g>"</string>
+    <string name="C169" msgid="591483187800562071">"К<xliff:g id="SEPARATOR">=</xliff:g>Кішынёў<xliff:g id="TIMEZONE">|Europe/Chisinau</xliff:g>"</string>
+    <string name="C170" msgid="157539770076958216">"К<xliff:g id="SEPARATOR">=</xliff:g>Капенгаген<xliff:g id="TIMEZONE">|Europe/Copenhagen</xliff:g>"</string>
+    <string name="C171" msgid="4774534094571993566">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дублін<xliff:g id="TIMEZONE">|Europe/Dublin</xliff:g>"</string>
+    <string name="C172" msgid="6781166861618808351">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гібралтар<xliff:g id="TIMEZONE">|Europe/Gibraltar</xliff:g>"</string>
+    <string name="C173" msgid="6620286361619640304">"Х<xliff:g id="SEPARATOR">=</xliff:g>Хельсінкі<xliff:g id="TIMEZONE">|Europe/Helsinki</xliff:g>"</string>
+    <string name="C174" msgid="2279016324825973473">"В<xliff:g id="SEPARATOR">=</xliff:g>Востраў Мэн<xliff:g id="TIMEZONE">|Europe/Isle_of_Man</xliff:g>"</string>
+    <string name="C175" msgid="3290185117135612679">"С<xliff:g id="SEPARATOR">=</xliff:g>Стамбул<xliff:g id="TIMEZONE">|Europe/Istanbul</xliff:g>"</string>
+    <string name="C176" msgid="8375703098860926099">"К<xliff:g id="SEPARATOR">=</xliff:g>Кіеў<xliff:g id="TIMEZONE">|Europe/Kiev</xliff:g>"</string>
+    <string name="C177" msgid="6500868250597874838">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лісабон<xliff:g id="TIMEZONE">|Europe/Lisbon</xliff:g>"</string>
+    <string name="C178" msgid="8805696770032311110">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лондан<xliff:g id="TIMEZONE">|Europe/London</xliff:g>"</string>
+    <string name="C179" msgid="3767343883668628062">"Л<xliff:g id="SEPARATOR">=</xliff:g>Люксембург<xliff:g id="TIMEZONE">|Europe/Luxembourg</xliff:g>"</string>
+    <string name="C180" msgid="7678392789982322642">"М<xliff:g id="SEPARATOR">=</xliff:g>Мадрыд<xliff:g id="TIMEZONE">|Europe/Madrid</xliff:g>"</string>
+    <string name="C181" msgid="7514462880775616081">"М<xliff:g id="SEPARATOR">=</xliff:g>Мальта<xliff:g id="TIMEZONE">|Europe/Malta</xliff:g>"</string>
+    <string name="C182" msgid="1916950203622380579">"М<xliff:g id="SEPARATOR">=</xliff:g>Мінск<xliff:g id="TIMEZONE">|Europe/Minsk</xliff:g>"</string>
+    <string name="C183" msgid="4964892686115215073">"М<xliff:g id="SEPARATOR">=</xliff:g>Манака<xliff:g id="TIMEZONE">|Europe/Monaco</xliff:g>"</string>
+    <string name="C184" msgid="4848586310907586448">"М<xliff:g id="SEPARATOR">=</xliff:g>Масква<xliff:g id="TIMEZONE">|Europe/Moscow</xliff:g>"</string>
+    <string name="C185" msgid="2598535413053285569">"О<xliff:g id="SEPARATOR">=</xliff:g>Осла<xliff:g id="TIMEZONE">|Europe/Oslo</xliff:g>"</string>
+    <string name="C186" msgid="678795048839315969">"П<xliff:g id="SEPARATOR">=</xliff:g>Парыж<xliff:g id="TIMEZONE">|Europe/Paris</xliff:g>"</string>
+    <string name="C187" msgid="9120486940322565800">"П<xliff:g id="SEPARATOR">=</xliff:g>Прага<xliff:g id="TIMEZONE">|Europe/Prague</xliff:g>"</string>
+    <string name="C188" msgid="6820884829000643173">"Р<xliff:g id="SEPARATOR">=</xliff:g>Рыга<xliff:g id="TIMEZONE">|Europe/Riga</xliff:g>"</string>
+    <string name="C189" msgid="8545786001221397208">"Р<xliff:g id="SEPARATOR">=</xliff:g>Рым<xliff:g id="TIMEZONE">|Europe/Rome</xliff:g>"</string>
+    <string name="C190" msgid="2822097113459737895">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Марына<xliff:g id="TIMEZONE">|Europe/San_Marino</xliff:g>"</string>
+    <string name="C191" msgid="5419026915911469878">"С<xliff:g id="SEPARATOR">=</xliff:g>Сараева<xliff:g id="TIMEZONE">|Europe/Sarajevo</xliff:g>"</string>
+    <string name="C192" msgid="1416880359034236663">"С<xliff:g id="SEPARATOR">=</xliff:g>Сімферопаль<xliff:g id="TIMEZONE">|Europe/Simferopol</xliff:g>"</string>
+    <string name="C193" msgid="4639373771601474967">"С<xliff:g id="SEPARATOR">=</xliff:g>Скоп\'е<xliff:g id="TIMEZONE">|Europe/Skopje</xliff:g>"</string>
+    <string name="C194" msgid="4008819631066984591">"С<xliff:g id="SEPARATOR">=</xliff:g>Сафія<xliff:g id="TIMEZONE">|Europe/Sofia</xliff:g>"</string>
+    <string name="C195" msgid="6936101855361464954">"С<xliff:g id="SEPARATOR">=</xliff:g>Стакгольм<xliff:g id="TIMEZONE">|Europe/Stockholm</xliff:g>"</string>
+    <string name="C196" msgid="6845595341045260631">"Т<xliff:g id="SEPARATOR">=</xliff:g>Талін<xliff:g id="TIMEZONE">|Europe/Tallinn</xliff:g>"</string>
+    <string name="C197" msgid="2200341923401640765">"В<xliff:g id="SEPARATOR">=</xliff:g>Ватыкан<xliff:g id="TIMEZONE">|Europe/Vatican</xliff:g>"</string>
+    <string name="C198" msgid="3104432830681695782">"В<xliff:g id="SEPARATOR">=</xliff:g>Вена<xliff:g id="TIMEZONE">|Europe/Vienna</xliff:g>"</string>
+    <string name="C199" msgid="1622823742072233091">"В<xliff:g id="SEPARATOR">=</xliff:g>Вільнюс<xliff:g id="TIMEZONE">|Europe/Vilnius</xliff:g>"</string>
+    <string name="C200" msgid="6181652506383585123">"В<xliff:g id="SEPARATOR">=</xliff:g>Варшава<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C201" msgid="5026927396527258914">"З<xliff:g id="SEPARATOR">=</xliff:g>Заграб<xliff:g id="TIMEZONE">|Europe/Zagreb</xliff:g>"</string>
+    <string name="C202" msgid="7479245034393288391">"Ц<xliff:g id="SEPARATOR">=</xliff:g>Цюрых<xliff:g id="TIMEZONE">|Europe/Zurich</xliff:g>"</string>
+    <string name="C203" msgid="1651234331866937237">"А<xliff:g id="SEPARATOR">=</xliff:g>Антананарыву<xliff:g id="TIMEZONE">|Indian/Antananarivo</xliff:g>"</string>
+    <string name="C204" msgid="3101091022126098393">"М<xliff:g id="SEPARATOR">=</xliff:g>Мальдывы<xliff:g id="TIMEZONE">|Indian/Maldives</xliff:g>"</string>
+    <string name="C205" msgid="9173530407684443044">"М<xliff:g id="SEPARATOR">=</xliff:g>Маўрыкій<xliff:g id="TIMEZONE">|Indian/Mauritius</xliff:g>"</string>
+    <string name="C206" msgid="7294622489478378014">"О<xliff:g id="SEPARATOR">=</xliff:g>Окленд<xliff:g id="TIMEZONE">|Pacific/Auckland</xliff:g>"</string>
+    <string name="C207" msgid="6369257832191627783">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Фіджы<xliff:g id="TIMEZONE">|Pacific/Fiji</xliff:g>"</string>
+    <string name="C208" msgid="1022999101729302391">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гуам<xliff:g id="TIMEZONE">|Pacific/Guam</xliff:g>"</string>
+    <string name="C209" msgid="8326714755257287010">"Г<xliff:g id="SEPARATOR">=</xliff:g>Ганалулу<xliff:g id="TIMEZONE">|Pacific/Honolulu</xliff:g>"</string>
+    <string name="C210" msgid="4118975261202718577">"К<xliff:g id="SEPARATOR">=</xliff:g>Кірыцімаці<xliff:g id="TIMEZONE">|Pacific/Kiritimati</xliff:g>"</string>
+    <string name="C211" msgid="6016485615657297427">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нумеа<xliff:g id="TIMEZONE">|Pacific/Noumea</xliff:g>"</string>
+    <string name="C214" msgid="5230836436291372485">"А<xliff:g id="SEPARATOR">=</xliff:g>Антыгуа<xliff:g id="TIMEZONE">|America/Antigua</xliff:g>"</string>
+    <string name="C215" msgid="9104600827236874744">"О<xliff:g id="SEPARATOR">=</xliff:g>Остын<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C216" msgid="1919768646168928906">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бостан<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C217" msgid="4879725034214879629">"К<xliff:g id="SEPARATOR">=</xliff:g>Калгары<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C218" msgid="5884212032925236157">"К<xliff:g id="SEPARATOR">=</xliff:g>Калумбус<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C219" msgid="2081823206177849440">"Д<xliff:g id="SEPARATOR">=</xliff:g>Далас<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C220" msgid="6453910991331509621">"Н<xliff:g id="SEPARATOR">=</xliff:g>Ноксвіл<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C221" msgid="8383807404322146544">"М<xliff:g id="SEPARATOR">=</xliff:g>Мемфіс<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C222" msgid="3700668026644596138">"М<xliff:g id="SEPARATOR">=</xliff:g>Маямі<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C223" msgid="221323185158028534">"М<xliff:g id="SEPARATOR">=</xliff:g>Мінеапаліс<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C224" msgid="5283127526588257314">"А<xliff:g id="SEPARATOR">=</xliff:g>Атава<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C225" msgid="2397752406722350262">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Філадэльфія<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C226" msgid="9121074377966278110">"П<xliff:g id="SEPARATOR">=</xliff:g>Портленд<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C227" msgid="5652209241017010001">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Дыега<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C228" msgid="4215672329797580482">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Францыска<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C229" msgid="4196312467437357156">"С<xliff:g id="SEPARATOR">=</xliff:g>Солт-Лейк-Сіці<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C230" msgid="5521643115321121383">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Хасэ<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C231" msgid="19294357270942004">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Сальвадор<xliff:g id="TIMEZONE">|America/Guatemala</xliff:g>"</string>
+    <string name="C232" msgid="4714655032274833316">"С<xliff:g id="SEPARATOR">=</xliff:g>Сіэтл<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C233" msgid="7162834873553109876">"С<xliff:g id="SEPARATOR">=</xliff:g>Сент-Луіс<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C234" msgid="8431913494781960891">"В<xliff:g id="SEPARATOR">=</xliff:g>Вашынгтон, акруга Калумбія<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C235" msgid="8650421942456856419">"Х<xliff:g id="SEPARATOR">=</xliff:g>Х\'юстан<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C236" msgid="3687627401939103862">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Антоніа<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C237" msgid="4443158977093108877">"Д<xliff:g id="SEPARATOR">=</xliff:g>Джэксанвіл<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C238" msgid="7416660474443881822">"Б<xliff:g id="SEPARATOR">=</xliff:g>Балтымар<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C239" msgid="4602819453157356596">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нашвіл<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C240" msgid="6474976205162582188">"М<xliff:g id="SEPARATOR">=</xliff:g>Мілуокі<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C241" msgid="9133192521877174743">"А<xliff:g id="SEPARATOR">=</xliff:g>Аклахома-Сіці<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C242" msgid="4837450655035932235">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лас-Вегас<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C243" msgid="8140503787735683522">"А<xliff:g id="SEPARATOR">=</xliff:g>Альбукерке<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C244" msgid="5425441385595386539">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тусон<xliff:g id="TIMEZONE">|MST</xliff:g>"</string>
+    <string name="C245" msgid="2117808251938937801">"С<xliff:g id="SEPARATOR">=</xliff:g>Сакрамента<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C246" msgid="3092246848082816772">"А<xliff:g id="SEPARATOR">=</xliff:g>Атланта<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C247" msgid="8206866466240263364">"К<xliff:g id="SEPARATOR">=</xliff:g>Кліўленд<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C248" msgid="2640187332546735575">"Н<xliff:g id="SEPARATOR">=</xliff:g>Новы Арлеан<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C249" msgid="2891345755858261436">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тампа<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C250" msgid="820338627695297018">"П<xliff:g id="SEPARATOR">=</xliff:g>Пітсбург<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C251" msgid="5944336862095193572">"Ц<xliff:g id="SEPARATOR">=</xliff:g>Цынцынаты<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C252" msgid="4879366628092590554">"М<xliff:g id="SEPARATOR">=</xliff:g>Маўнтын-В\'ю<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C253" msgid="131023875763265059">"Р<xliff:g id="SEPARATOR">=</xliff:g>Рына<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C254" msgid="6114708580340716772">"Б<xliff:g id="SEPARATOR">=</xliff:g>Блэк-Рок-Сіці<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C255" msgid="7954132426931661492">"Д<xliff:g id="SEPARATOR">=</xliff:g>Доха<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C256" msgid="4677098546257306673">"П<xliff:g id="SEPARATOR">=</xliff:g>Пекін<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C257" msgid="6859408162854724420">"М<xliff:g id="SEPARATOR">=</xliff:g>Мумбаі<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C258" msgid="4883343467599097650">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дэлі<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C259" msgid="5562442240689501324">"О<xliff:g id="SEPARATOR">=</xliff:g>Осака<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Tokyo</xliff:g>"</string>
+    <string name="C260" msgid="8364102554400427814">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лахор<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C261" msgid="4120312655526126931">"С<xliff:g id="SEPARATOR">=</xliff:g>Сана<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C262" msgid="5548180151889833">"Б<xliff:g id="SEPARATOR">=</xliff:g>Барселона<xliff:g id="TIMEZONE">|Europe/Madrid</xliff:g>"</string>
+    <string name="C263" msgid="2667061188896159784">"М<xliff:g id="SEPARATOR">=</xliff:g>Мюнхен<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C264" msgid="2183960913782375290">"М<xliff:g id="SEPARATOR">=</xliff:g>Мілан<xliff:g id="TIMEZONE">|Europe/Rome</xliff:g>"</string>
+    <string name="C265" msgid="7302072801871420825">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Франкфурт<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C266" msgid="2043638131940526010">"Х<xliff:g id="SEPARATOR">=</xliff:g>Ханой<xliff:g id="TIMEZONE">|Asia/Bangkok</xliff:g>"</string>
+    <string name="C267" msgid="2210484655793571387">"А<xliff:g id="SEPARATOR">=</xliff:g>Анкара<xliff:g id="TIMEZONE">|Europe/Istanbul</xliff:g>"</string>
+    <string name="C268" msgid="263106973500029909">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бангалор<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C269" msgid="6541694468583591229">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бразілія, горад<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C270" msgid="1314079881051130603">"К<xliff:g id="SEPARATOR">=</xliff:g>Кейптаўн<xliff:g id="TIMEZONE">|Africa/Johannesburg</xliff:g>"</string>
+    <string name="C271" msgid="8640235215580011665">"І<xliff:g id="SEPARATOR">=</xliff:g>Ісламабад<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C272" msgid="1609536549681428971">"Р<xliff:g id="SEPARATOR">=</xliff:g>Рыа-дэ-Жанэйра<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C273" msgid="7079941149646181981">"Э<xliff:g id="SEPARATOR">=</xliff:g>Эн-Арбар<xliff:g id="TIMEZONE">|America/Detroit</xliff:g>"</string>
+    <string name="C274" msgid="8459573593923702400">"Б<xliff:g id="SEPARATOR">=</xliff:g>Боўлдэр<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C275" msgid="6089570009772695384">"К<xliff:g id="SEPARATOR">=</xliff:g>Кембрыдж<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C276" msgid="8770778158932656740">"К<xliff:g id="SEPARATOR">=</xliff:g>Кэрклэнд<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C277" msgid="3027642546928363284">"М<xliff:g id="SEPARATOR">=</xliff:g>Мадысан<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C278" msgid="2380762577096499707">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гуанчжоу<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C279" msgid="8894272318704876379">"Х<xliff:g id="SEPARATOR">=</xliff:g>Хайдарабад<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C280" msgid="7678401703785036372">"Р<xliff:g id="SEPARATOR">=</xliff:g>Рэстан<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C281" msgid="8023528134904066052">"Б<xliff:g id="SEPARATOR">=</xliff:g>Белу-Арызонты<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C282" msgid="6695477038758559199">"С<xliff:g id="SEPARATOR">=</xliff:g>Сант\'яга<xliff:g id="TIMEZONE">|America/Santiago</xliff:g>"</string>
+    <string name="C283" msgid="7769787200879321206">"М<xliff:g id="SEPARATOR">=</xliff:g>Манровія<xliff:g id="TIMEZONE">|Africa/Monrovia</xliff:g>"</string>
+    <string name="C284" msgid="6968458422900478829">"К<xliff:g id="SEPARATOR">=</xliff:g>Каломба<xliff:g id="TIMEZONE">|Asia/Colombo</xliff:g>"</string>
+    <string name="C285" msgid="1141404871109476705">"Ч<xliff:g id="SEPARATOR">=</xliff:g>Чыўаўа<xliff:g id="TIMEZONE">|America/Chihuahua</xliff:g>"</string>
+    <string name="C286" msgid="4996225818359904740">"С<xliff:g id="SEPARATOR">=</xliff:g>Салвадор<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C287" msgid="1988559263618010310">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гургаан<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C288" msgid="852288766460325989">"М<xliff:g id="SEPARATOR">=</xliff:g>Манчэстэр<xliff:g id="TIMEZONE">|Europe/London</xliff:g>"</string>
+    <string name="C290" msgid="9191944922972784727">"С<xliff:g id="SEPARATOR">=</xliff:g>Санкт-Пецярбург<xliff:g id="TIMEZONE">|Europe/Moscow</xliff:g>"</string>
+    <string name="C291" msgid="4662360206594986867">"К<xliff:g id="SEPARATOR">=</xliff:g>Кракаў<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C292" msgid="3704362015612990315">"В<xliff:g id="SEPARATOR">=</xliff:g>Вроцлаў<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C293" msgid="3807981967850386200">"Г<xliff:g id="SEPARATOR">=</xliff:g>Гамбург<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C294" msgid="2800056634746552933">"О<xliff:g id="SEPARATOR">=</xliff:g>Оўлу<xliff:g id="TIMEZONE">|Europe/Bucharest</xliff:g>"</string>
+    <string name="C295" msgid="7855357204471157922">"Х<xliff:g id="SEPARATOR">=</xliff:g>Хайфа<xliff:g id="TIMEZONE">|Asia/Jerusalem</xliff:g>"</string>
+    <string name="C296" msgid="2834361512883853579">"С<xliff:g id="SEPARATOR">=</xliff:g>Сан-Хуан<xliff:g id="TIMEZONE">|America/Puerto_Rico</xliff:g>"</string>
+    <string name="C297" msgid="5314407834713913608">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тэгусігальпа<xliff:g id="TIMEZONE">|America/Tegucigalpa</xliff:g>"</string>
+    <string name="C298" msgid="4186340979527221275">"П<xliff:g id="SEPARATOR">=</xliff:g>Парамарыба<xliff:g id="TIMEZONE">|America/Paramaribo</xliff:g>"</string>
+    <string name="C299" msgid="5688169950851674667">"К<xliff:g id="SEPARATOR">=</xliff:g>Кіта<xliff:g id="TIMEZONE">|America/Panama</xliff:g>"</string>
+    <string name="C300" msgid="7351753589989414696">"Л<xliff:g id="SEPARATOR">=</xliff:g>Любляна<xliff:g id="TIMEZONE">|Europe/Ljubljana</xliff:g>"</string>
+    <string name="C301" msgid="9089921329206815602">"А<xliff:g id="SEPARATOR">=</xliff:g>Ашгабат<xliff:g id="TIMEZONE">|Asia/Ashgabat</xliff:g>"</string>
+    <string name="C302" msgid="6471051311513517449">"А<xliff:g id="SEPARATOR">=</xliff:g>Асмара<xliff:g id="TIMEZONE">|Africa/Asmara</xliff:g>"</string>
+    <string name="C303" msgid="6208957436062127281">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бандар-Серы-Бегаван<xliff:g id="TIMEZONE">|Asia/Brunei</xliff:g>"</string>
+    <string name="C304" msgid="7757188637892125245">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бангі<xliff:g id="TIMEZONE">|Africa/Bangui</xliff:g>"</string>
+    <string name="C305" msgid="5538312768539249335">"Б<xliff:g id="SEPARATOR">=</xliff:g>Банджул<xliff:g id="TIMEZONE">|Africa/Banjul</xliff:g>"</string>
+    <string name="C306" msgid="6400938736119754675">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бішкек<xliff:g id="TIMEZONE">|Asia/Bishkek</xliff:g>"</string>
+    <string name="C307" msgid="1169132195117591472">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бісау<xliff:g id="TIMEZONE">|Africa/Bissau</xliff:g>"</string>
+    <string name="C308" msgid="7704965635342439141">"Б<xliff:g id="SEPARATOR">=</xliff:g>Бужумбура<xliff:g id="TIMEZONE">|Africa/Bujumbura</xliff:g>"</string>
+    <string name="C309" msgid="1522235235310763925">"Д<xliff:g id="SEPARATOR">=</xliff:g>Дылі<xliff:g id="TIMEZONE">|Asia/Dili</xliff:g>"</string>
+    <string name="C310" msgid="8666508463588411257">"Д<xliff:g id="SEPARATOR">=</xliff:g>Душанбэ<xliff:g id="TIMEZONE">|Asia/Dushanbe</xliff:g>"</string>
+    <string name="C311" msgid="5940486195605635031">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Фунафуці<xliff:g id="TIMEZONE">|Pacific/Funafuti</xliff:g>"</string>
+    <string name="C312" msgid="1714210141256903683">"Х<xliff:g id="SEPARATOR">=</xliff:g>Ханіяра<xliff:g id="TIMEZONE">|Pacific/Guadalcanal</xliff:g>"</string>
+    <string name="C313" msgid="8390229571948311411">"Д<xliff:g id="SEPARATOR">=</xliff:g>Джуба<xliff:g id="TIMEZONE">|Africa/Juba</xliff:g>"</string>
+    <string name="C314" msgid="3840011425345102604">"К<xliff:g id="SEPARATOR">=</xliff:g>Кінгстаўн<xliff:g id="TIMEZONE">|America/St_Vincent</xliff:g>"</string>
+    <string name="C315" msgid="8962557999110557329">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лібрэвіль<xliff:g id="TIMEZONE">|Africa/Libreville</xliff:g>"</string>
+    <string name="C316" msgid="3674113287320887951">"Л<xliff:g id="SEPARATOR">=</xliff:g>Ламэ<xliff:g id="TIMEZONE">|Africa/Lome</xliff:g>"</string>
+    <string name="C317" msgid="4818049429422081055">"Л<xliff:g id="SEPARATOR">=</xliff:g>Луанда<xliff:g id="TIMEZONE">|Africa/Luanda</xliff:g>"</string>
+    <string name="C318" msgid="3814107319819817789">"Л<xliff:g id="SEPARATOR">=</xliff:g>Лусака<xliff:g id="TIMEZONE">|Africa/Lusaka</xliff:g>"</string>
+    <string name="C319" msgid="5757039321992317631">"М<xliff:g id="SEPARATOR">=</xliff:g>Маджура<xliff:g id="TIMEZONE">|Pacific/Majuro</xliff:g>"</string>
+    <string name="C320" msgid="8334348266391215583">"М<xliff:g id="SEPARATOR">=</xliff:g>Малаба<xliff:g id="TIMEZONE">|Africa/Malabo</xliff:g>"</string>
+    <string name="C321" msgid="5401323973667971972">"М<xliff:g id="SEPARATOR">=</xliff:g>Мапуту<xliff:g id="TIMEZONE">|Africa/Maputo</xliff:g>"</string>
+    <string name="C322" msgid="67637052310417975">"М<xliff:g id="SEPARATOR">=</xliff:g>Мбабанэ<xliff:g id="TIMEZONE">|Africa/Mbabane</xliff:g>"</string>
+    <string name="C323" msgid="4500721332684955521">"М<xliff:g id="SEPARATOR">=</xliff:g>Мароні<xliff:g id="TIMEZONE">|Indian/Comoro</xliff:g>"</string>
+    <string name="C324" msgid="1741927819842539260">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нджамена<xliff:g id="TIMEZONE">|Africa/Ndjamena</xliff:g>"</string>
+    <string name="C325" msgid="8771905307322194055">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нгерулмуд<xliff:g id="TIMEZONE">|Pacific/Palau</xliff:g>"</string>
+    <string name="C326" msgid="2389198042593603472">"Н<xliff:g id="SEPARATOR">=</xliff:g>Ніямей<xliff:g id="TIMEZONE">|Africa/Niamey</xliff:g>"</string>
+    <string name="C327" msgid="5317479895686981912">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нікасія<xliff:g id="TIMEZONE">|Europe/Nicosia</xliff:g>"</string>
+    <string name="C328" msgid="6416405203954996861">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нуакшот<xliff:g id="TIMEZONE">|Africa/Nouakchott</xliff:g>"</string>
+    <string name="C329" msgid="6876960940903095843">"Н<xliff:g id="SEPARATOR">=</xliff:g>Нукуалофа<xliff:g id="TIMEZONE">|Pacific/Tongatapu</xliff:g>"</string>
+    <string name="C330" msgid="1572294706542426161">"У<xliff:g id="SEPARATOR">=</xliff:g>Уагадугу<xliff:g id="TIMEZONE">|Africa/Ouagadougou</xliff:g>"</string>
+    <string name="C331" msgid="2607492003890117689">"П<xliff:g id="SEPARATOR">=</xliff:g>Палікір<xliff:g id="TIMEZONE">|Pacific/Noumea</xliff:g>"</string>
+    <string name="C332" msgid="8349533418456323370">"Ф<xliff:g id="SEPARATOR">=</xliff:g>Філіпсбург<xliff:g id="TIMEZONE">|America/Lower_Princes</xliff:g>"</string>
+    <string name="C333" msgid="2842640664018042568">"П<xliff:g id="SEPARATOR">=</xliff:g>Падгорыца<xliff:g id="TIMEZONE">|Europe/Podgorica</xliff:g>"</string>
+    <string name="C334" msgid="3310146581437635671">"П<xliff:g id="SEPARATOR">=</xliff:g>Порт-Морсбі<xliff:g id="TIMEZONE">|Pacific/Palau</xliff:g>"</string>
+    <string name="C335" msgid="3317158262102352303">"П<xliff:g id="SEPARATOR">=</xliff:g>Порт-Віла<xliff:g id="TIMEZONE">|Pacific/Efate</xliff:g>"</string>
+    <string name="C336" msgid="3810072761869903472">"П<xliff:g id="SEPARATOR">=</xliff:g>Порта-Нова<xliff:g id="TIMEZONE">|Africa/Porto-Novo</xliff:g>"</string>
+    <string name="C337" msgid="3412269218104112252">"П<xliff:g id="SEPARATOR">=</xliff:g>Прышціна<xliff:g id="TIMEZONE">|Europe/Belgrade</xliff:g>"</string>
+    <string name="C338" msgid="6151841959824325885">"Р<xliff:g id="SEPARATOR">=</xliff:g>Разо<xliff:g id="TIMEZONE">|America/Dominica</xliff:g>"</string>
+    <string name="C339" msgid="8909994815975646525">"Т<xliff:g id="SEPARATOR">=</xliff:g>Ташкент<xliff:g id="TIMEZONE">|Asia/Tashkent</xliff:g>"</string>
+    <string name="C340" msgid="415479723070879485">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тбілісі<xliff:g id="TIMEZONE">|Asia/Tbilisi</xliff:g>"</string>
+    <string name="C341" msgid="2299478430610154042">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тхімпху<xliff:g id="TIMEZONE">|Asia/Thimphu</xliff:g>"</string>
+    <string name="C342" msgid="7997617194333170685">"Т<xliff:g id="SEPARATOR">=</xliff:g>Тырана<xliff:g id="TIMEZONE">|Europe/Tirane</xliff:g>"</string>
+    <string name="C343" msgid="622805851462854910">"В<xliff:g id="SEPARATOR">=</xliff:g>Вадуц<xliff:g id="TIMEZONE">|Europe/Vaduz</xliff:g>"</string>
+    <string name="C344" msgid="7629820826386244509">"В<xliff:g id="SEPARATOR">=</xliff:g>В\'енцьян<xliff:g id="TIMEZONE">|Asia/Vientiane</xliff:g>"</string>
+    <string name="C345" msgid="1881198350378158072">"В<xliff:g id="SEPARATOR">=</xliff:g>Віндхук<xliff:g id="TIMEZONE">|Africa/Windhoek</xliff:g>"</string>
+    <string name="C346" msgid="2947674392768816097">"Я<xliff:g id="SEPARATOR">=</xliff:g>Яўндэ<xliff:g id="TIMEZONE">|Africa/Douala</xliff:g>"</string>
+    <string name="C347" msgid="6291282205599716861">"Я<xliff:g id="SEPARATOR">=</xliff:g>Ярэн<xliff:g id="TIMEZONE">|Pacific/Nauru</xliff:g>"</string>
+    <string name="C348" msgid="8462071023392592539">"Е<xliff:g id="SEPARATOR">=</xliff:g>Ерэван<xliff:g id="TIMEZONE">|Asia/Yerevan</xliff:g>"</string>
+</resources>
diff --git a/res/values-be-rBY/strings.xml b/res/values-be-rBY/strings.xml
new file mode 100644
index 0000000..1eebb6b
--- /dev/null
+++ b/res/values-be-rBY/strings.xml
@@ -0,0 +1,381 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--  Copyright (C) 2007 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="app_label" msgid="6674495003718166674">"Гадзіннік"</string>
+    <string name="delete_alarm" msgid="3457780990646206817">"Выдаліць сігнал"</string>
+    <string name="label" msgid="162189613902857319">"Метка"</string>
+    <string name="default_label" msgid="5590025289805630372">"Будзільнік"</string>
+    <string name="alarm_vibrate" msgid="3476686921490362230">"Вібрацыя"</string>
+    <string name="alarm_repeat" msgid="7242985466344233206">"Паўтараць"</string>
+    <string name="alert" msgid="6506982899651975645">"Рынгтон абвесткi"</string>
+    <string name="default_alarm_ringtone_title" msgid="2916376768509623643">"Стандартны сігнал будзільніка"</string>
+    <string name="default_timer_ringtone_title" msgid="1370799536406862317">"Таймер скончыўся"</string>
+    <string name="alarm_tomorrow" msgid="131356848787643420">"Заўтра"</string>
+    <string name="alarm_today" msgid="7873594221106531654">"Сёння"</string>
+    <string name="alarm_alert_dismiss_text" msgid="4942914605480888820">"Адхіліць"</string>
+    <string name="alarm_alert_dismiss_now_text" msgid="7327972388636305792">"Адхіліць зараз"</string>
+    <string name="alarm_missed_title" msgid="3828345099754063392">"Прапушчаны будзільнік"</string>
+    <string name="alarm_missed_text" msgid="6585658367289194023">"<xliff:g id="ALARM_TIME">%s</xliff:g> – <xliff:g id="ALARM_LABEL">%s</xliff:g>"</string>
+    <string name="alarm_alert_snoozed_text" msgid="7064642998528766113">"Адкладзена"</string>
+    <plurals name="alarm_alert_snooze_duration" formatted="false" msgid="7844300009062867865">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> хв</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> хв</item>
+      <item quantity="many"><xliff:g id="NUMBER">%d</xliff:g> хв</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> хв</item>
+    </plurals>
+    <string name="alarm_alert_off_text" msgid="4472073417593915002">"Будзільнік адкл"</string>
+    <string name="alarm_alert_snooze_text" msgid="1774416052207651584">"Адкласці"</string>
+    <plurals name="alarm_alert_snooze_set" formatted="false" msgid="3212729193036041768">
+      <item quantity="one">Адкладваецца на <xliff:g id="MINUTES">%d</xliff:g> хвіліну.</item>
+      <item quantity="few">Адкладваецца на <xliff:g id="MINUTES">%d</xliff:g> хвіліны.</item>
+      <item quantity="many">Адкладваецца на <xliff:g id="MINUTES">%d</xliff:g> хвілін.</item>
+      <item quantity="other">Адкладваецца  на <xliff:g id="MINUTES">%d</xliff:g> хвіліны.</item>
+    </plurals>
+    <string name="alarm_alert_snooze_until" msgid="6958013659168344550">"Перанос да <xliff:g id="TIME">%s</xliff:g>"</string>
+    <string name="alarm_alert_predismiss_title" msgid="5723945586913705445">"Хутка прагучыць будзільнік"</string>
+    <string name="missed_alarm_has_been_deleted" msgid="5295473204045979335">"Ваш прапушчаны будзільнік быў выдалены"</string>
+    <string name="timer_notifications_less_min" msgid="5481375048976427255">"Застаецца менш за хвiлiну"</string>
+    <string name="timer_notifications_hours" msgid="1613266446037145138">"<xliff:g id="HOURS">%1$s</xliff:g><xliff:g id="REMAINING"> %3$s</xliff:g>"</string>
+    <string name="timer_notifications_minutes" msgid="8543138714519498893">"<xliff:g id="MINUTES">%2$s</xliff:g><xliff:g id="REMAINING"> %3$s</xliff:g>"</string>
+    <string name="timer_notifications_hours_minutes" msgid="4301167788642025702">"Застаецца <xliff:g id="HOURS">%1$s</xliff:g> <xliff:g id="MINUTES">%2$s</xliff:g>"</string>
+    <string name="timer_remaining_single" msgid="6782851171906765864">"застаецца"</string>
+    <string name="timer_remaining_multiple" msgid="6052775962092160851">"застаецца"</string>
+  <string-array name="alarm_set">
+    <item msgid="6450913786084215050">"Будзільнік спрацуе менш чым праз 1 хвіліну."</item>
+    <item msgid="6002066367368421848">"Будзільнік спрацуе праз <xliff:g id="DAYS">%1$s</xliff:g>."</item>
+    <item msgid="8824719306247973774">"Будзільнік спрацуе праз <xliff:g id="HOURS">%2$s</xliff:g>."</item>
+    <item msgid="8182406852935468862">"Будзільнік спрацуе праз <xliff:g id="DAYS">%1$s</xliff:g> <xliff:g id="HOURS">%2$s</xliff:g>."</item>
+    <item msgid="2532279224777213194">"Будзільнік спрацуе праз <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+    <item msgid="5936557894247187717">"Будзільнік спрацуе праз <xliff:g id="DAYS">%1$s</xliff:g> <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+    <item msgid="9115697840826129603">"Будзільнік спрацуе праз <xliff:g id="HOURS">%2$s</xliff:g> <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+    <item msgid="2332583385137381060">"Будзільнік спрацуе праз <xliff:g id="DAYS">%1$s</xliff:g> <xliff:g id="HOURS">%2$s</xliff:g> <xliff:g id="MINUTES">%3$s</xliff:g>."</item>
+  </string-array>
+    <plurals name="days" formatted="false" msgid="3706846447285206235">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> дзень</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> дні</item>
+      <item quantity="many"><xliff:g id="NUMBER">%s</xliff:g> дзён</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> дня</item>
+    </plurals>
+    <plurals name="hours" formatted="false" msgid="3871283109767171655">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> гадзіна</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> гадзіны</item>
+      <item quantity="many"><xliff:g id="NUMBER">%s</xliff:g> гадзін</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> гадзіны</item>
+    </plurals>
+    <plurals name="minutes" formatted="false" msgid="5484431721696058697">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> хвіліна</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> хвіліны</item>
+      <item quantity="many"><xliff:g id="NUMBER">%s</xliff:g> хвілін</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> хвіліны</item>
+    </plurals>
+    <string name="every_day" msgid="4100909974923444602">"Штодзень"</string>
+    <string name="day_concat" msgid="971998564991636532">", "</string>
+    <string name="loading_widget" msgid="5306242862476796500">"Ідзе загрузка…"</string>
+    <string name="analog_gadget" msgid="1670505720837152766">"Гадзіннік са стрэлкамі"</string>
+    <string name="digital_gadget" msgid="2326954556720571358">"Лічбавы гадзіннік"</string>
+    <string name="settings" msgid="5849739030579520686">"Налады"</string>
+    <string name="snooze_duration_title" msgid="1097309861110780483">"Iнтэрвал паўтору"</string>
+    <plurals name="snooze_duration" formatted="false" msgid="3112918131095248271">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> хвіліна</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> хвіліны</item>
+      <item quantity="many"><xliff:g id="NUMBER">%s</xliff:g> хвілін</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> хвіліны</item>
+    </plurals>
+    <plurals name="snooze_picker_label" formatted="false" msgid="322739253661747732">
+      <item quantity="one">хвіліна</item>
+      <item quantity="few">хвіліны</item>
+      <item quantity="many">хвілін</item>
+      <item quantity="other">хвіліны</item>
+    </plurals>
+    <string name="crescendo_duration_title" msgid="8606408542726189528">"Паступова павялічваць гучнасць"</string>
+    <string name="no_crescendo_duration" msgid="383801592865899932">"Адключана"</string>
+    <string name="crescendo_duration" msgid="6641284876778266541">"Секунд: <xliff:g id="NUMBER">%s</xliff:g>"</string>
+    <string name="crescendo_picker_label" msgid="7758024047003091056">"секунды"</string>
+    <string name="auto_silence_title" msgid="2012754009554434544">"Адключаць гук праз"</string>
+    <plurals name="auto_silence_summary" formatted="false" msgid="6579258788774360396">
+      <item quantity="one"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> хвіліна</item>
+      <item quantity="few"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> хвіліны</item>
+      <item quantity="many"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> хвілін</item>
+      <item quantity="other"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> хвіліны</item>
+    </plurals>
+    <string name="auto_silence_never" msgid="4821982647348750809">"Ніколі"</string>
+  <string-array name="auto_silence_entries">
+    <item msgid="3024545954917711306">"1 хвіліна"</item>
+    <item msgid="5431906692406316549">"5 хвілін"</item>
+    <item msgid="7742728812068919959">"10 хвілін"</item>
+    <item msgid="2855948657259647629">"15 хвілін"</item>
+    <item msgid="6330196381284475079">"20 хвілін"</item>
+    <item msgid="7809240121716151904">"25 хвілін"</item>
+    <item msgid="4278641338024561333">"Ніколі"</item>
+  </string-array>
+    <string name="week_start_title" msgid="4268917518596832096">"Першы дзень тыдня"</string>
+  <string-array name="week_start_entries">
+    <item msgid="9010198173394482639">"Субота"</item>
+    <item msgid="3993530639455360921">"Нядзеля"</item>
+    <item msgid="8594709368683324282">"Панядзелак"</item>
+  </string-array>
+    <string name="alarm_volume_title" msgid="8506245173912428522">"Гучнасць будзільніка"</string>
+    <string name="silent_ringtone_title" msgid="6177287302898634765">"Ціхі рэжым"</string>
+    <string name="unknown_ringtone_title" msgid="6637522029614550112">"Невядома"</string>
+    <string name="alarm_volume_muted" msgid="6658289289695673569">"Гук будзільніка адключаны"</string>
+    <string name="unmute_alarm_volume" msgid="2655009276035357497">"Уключыць гук"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Стандартная мелодыя будзільніка – цішыня"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Змяніць"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"На прыладзе заданы рэжым поўнай цішыні"</string>
+    <string name="volume_button_setting_title" msgid="6937131248843413357">"Кнопкі гучнасці"</string>
+  <string-array name="volume_button_setting_entries">
+    <item msgid="7972756698723318690">"Адкласці"</item>
+    <item msgid="3450979320164769576">"Адхіліць"</item>
+    <item msgid="6302517608411378024">"Нічога не рабіць"</item>
+  </string-array>
+    <string name="label_description" msgid="8736179296142915727">"Метка"</string>
+    <string name="ringtone_description" msgid="7580922112921069925">"Мелодыя выкліку"</string>
+    <string name="menu_alarm" msgid="4772010125376647519">"Будзільнік"</string>
+    <string name="menu_timer" msgid="6459070074762877114">"Таймер"</string>
+    <string name="menu_clock" msgid="5612760670606829805">"Гадзіннік"</string>
+    <string name="menu_stopwatch" msgid="3396117705293574701">"Секундамер"</string>
+    <string name="button_alarms" msgid="3907838219512538763">"Дадаць будзільнік"</string>
+    <string name="button_cities" msgid="4555761857494501363">"Гарады"</string>
+    <string name="menu_item_settings" msgid="1413723516369078665">"Налады"</string>
+    <string name="menu_item_help" msgid="4570953476186849841">"Даведка"</string>
+    <string name="menu_item_night_mode" msgid="3486930302245398975">"Начны рэжым"</string>
+    <string name="menu_item_sort_by_gmt_offset" msgid="3120860422682721706">"Сартаваць па часе"</string>
+    <string name="menu_item_sort_by_name" msgid="1762931290495104106">"Сартаваць па назве"</string>
+    <string name="selected_cities_label" msgid="3607479399424246605">"Выбраныя гарады"</string>
+    <string name="sw_resume_button" msgid="2569360966002022248">"Узнавіць"</string>
+    <string name="sw_reset_button" msgid="6616804728322906117">"Скінуць"</string>
+    <string name="sw_start_button" msgid="8373422516681242270">"Запусціць"</string>
+    <string name="sw_pause_button" msgid="2422084453454138042">"Прыпыніць"</string>
+    <string name="sw_lap_button" msgid="6992264696039004233">"Круг"</string>
+    <string name="sw_share_button" msgid="4478648110382859382">"Абагуліць"</string>
+    <string name="hours_label" msgid="3393478155635368097">"гадз"</string>
+    <string name="minutes_label" msgid="3568098128251438588">"хв"</string>
+    <string name="seconds_label" msgid="124655952824003246">"с"</string>
+    <string name="hours_label_description" msgid="8652842524970971830">"гадзіны"</string>
+    <string name="minutes_label_description" msgid="965686733490357796">"хвіліны"</string>
+    <string name="seconds_label_description" msgid="3821620053141299692">"секунды"</string>
+    <string name="sw_share_main" msgid="7703563468204234405">"Мой час: <xliff:g id="TIME">%s</xliff:g>"</string>
+    <string name="sw_share_laps" msgid="614390674795945007">"Час круга:"</string>
+    <string name="sw_notification_lap_number" msgid="3535420316052647126">"Круг <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <plurals name="Nhours_description" formatted="false" msgid="4539186407746763655">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> гадзіна</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> гадзіны</item>
+      <item quantity="many"><xliff:g id="NUMBER">%d</xliff:g> гадзін</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> гадзіны</item>
+    </plurals>
+    <plurals name="Nminutes_description" formatted="false" msgid="6373760365221990859">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> хвіліна</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> хвіліны</item>
+      <item quantity="many"><xliff:g id="NUMBER">%d</xliff:g> хвілін</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> хвіліны</item>
+    </plurals>
+    <plurals name="Nseconds_description" formatted="false" msgid="6456500168536594889">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> секунда</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> секунды</item>
+      <item quantity="many"><xliff:g id="NUMBER">%d</xliff:g> секунд</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> секунды</item>
+    </plurals>
+    <string name="timer_add_timer" msgid="862733633862574752">"Дадаць таймер"</string>
+    <string name="timer_start" msgid="6158486445614356442">"Запусціць"</string>
+    <string name="timer_delete" msgid="8699122001991909302">"Выдаліць"</string>
+    <string name="timer_descriptive_delete" msgid="8794915342760383536">"Выдаліць <xliff:g id="NUMBER_STRING">%s</xliff:g>"</string>
+    <string name="timer_plus_one" msgid="6631211310420106116">"Дадаць 1 хвiліну"</string>
+    <string name="timer_plus_1_min" msgid="8645224089494875062">"Дадаць 1 хв"</string>
+    <string name="timer_stop" msgid="3361154678667736722">"Спыніць"</string>
+    <string name="timer_stop_all" msgid="9080780442843034376">"Спыніць усе таймеры"</string>
+    <string name="timer_reset" msgid="7848424809190171640">"Скінуць"</string>
+    <string name="timer_cancel" msgid="3572868404230815644">"Скасаваць"</string>
+    <string name="timer_canceled" msgid="7327923392567128060">"Таймер скасаваны"</string>
+    <string name="timer_times_up" msgid="9190440395938519009">"Час выйшаў"</string>
+    <string name="timer_multi_times_up" msgid="1239104626836080409">"Таймеры (<xliff:g id="NUM_TIMERS">%d</xliff:g> шт.) скончыліся"</string>
+    <string name="timer_notification_label" msgid="4933184831583137249">"Таймер"</string>
+    <string name="timer_pause" msgid="3748323712728398743">"Прыпыніць"</string>
+    <string name="timer_reset_all" msgid="7530633132757866087">"Скінуць усе таймеры"</string>
+  <string-array name="sw_share_strings">
+    <item msgid="842841032273927988">"Ты хутчэй маланкi."</item>
+    <item msgid="6332879039890727169">"Атрымлівайце асалоду ад вынiкаў сваёй працы."</item>
+    <item msgid="815382761274660130">"Андроiды хуткiя, але не настолькi!"</item>
+    <item msgid="7916250650982813737">"Уф..."</item>
+    <item msgid="6836603904515182333">"Разоў: L33t."</item>
+    <item msgid="7508085100680861631">"Хутка ты."</item>
+    <item msgid="5961245252909589573">"Паляцелi з касмiчнай хуткасцю!"</item>
+    <item msgid="5211891900854545940">"Проста скокнiце ўлева."</item>
+    <item msgid="9071353477103826053">"Ёсць да чаго iмкнуцца."</item>
+    <item msgid="3785193933691117181">"Фатонная хуткасць."</item>
+  </string-array>
+    <string name="home_label" msgid="4436139365695453870">"Галоўная старонка"</string>
+    <string name="cities_activity_title" msgid="8552462751129256730">"Гарады"</string>
+    <string name="clock_settings" msgid="8317286807280600391">"Гадзіннік"</string>
+    <string name="clock_style" msgid="2265011060429742344">"Стыль"</string>
+    <string name="open_date_settings" msgid="7712226973337806152">"Змяніць дату і час"</string>
+  <string-array name="clock_style_entries">
+    <item msgid="917900462224167608">"Са стрэлкамі"</item>
+    <item msgid="8483930821046925592">"Лічбавы"</item>
+  </string-array>
+    <string name="automatic_home_clock" msgid="6274174710735449252">"Гадзіннік майго часавага пояса"</string>
+    <string name="automatic_home_clock_summary" msgid="6020476321040807273">"Падчас падарожжа ў рэгiёне, дзе час адрознiваецца, дадайце хатнi гадзiннiк"</string>
+    <string name="home_time_zone" msgid="9199730676287974501">"Дамашні часавы пояс"</string>
+    <string name="home_time_zone_title" msgid="807894493443834624">"Дамашні часавы пояс"</string>
+    <string name="time_picker_cancel" msgid="7437106489606013077">"Скасаваць"</string>
+    <string name="time_picker_set" msgid="331153175471468051">"ОК"</string>
+    <string name="city_checked" msgid="616847871968019">"Адзначаны горад <xliff:g id="CITY_NAME">%s</xliff:g>"</string>
+    <string name="city_unchecked" msgid="710212932781145918">"Знята адзнака з горада <xliff:g id="CITY_NAME">%s</xliff:g>"</string>
+  <string-array name="timezone_labels">
+    <item msgid="5495601234086197399">"Маршалавы астравы"</item>
+    <item msgid="4196408495909011020">"Востраў Мідуэй"</item>
+    <item msgid="1414384194857730006">"Гаваі"</item>
+    <item msgid="2687091371581931926">"Аляска"</item>
+    <item msgid="1922100269679049660">"Ціхаакіянскі час"</item>
+    <item msgid="7156402158716866161">"Ціхуана"</item>
+    <item msgid="1144117502254612241">"Арызона"</item>
+    <item msgid="101284182011722637">"Чыўаўа"</item>
+    <item msgid="689121094232986897">"Горны час"</item>
+    <item msgid="5445331923942302756">"Цэнтральная Амерыка"</item>
+    <item msgid="2749806434052452351">"Цэнтральны час"</item>
+    <item msgid="3997138870229703753">"Мехіка"</item>
+    <item msgid="5425567073027744888">"Саскачэван"</item>
+    <item msgid="2877342865396629368">"Багата"</item>
+    <item msgid="568682398893899670">"Усходні час"</item>
+    <item msgid="668135984541863866">"Венесуэла"</item>
+    <item msgid="3737474220861486223">"Атлантычны час (Барбадас)"</item>
+    <item msgid="6279116051273436870">"Атлантычны час (Канада)"</item>
+    <item msgid="8513382867172014244">"Манаўс"</item>
+    <item msgid="7776299003105932407">"Сант\'яга"</item>
+    <item msgid="8636989494746218677">"Ньюфаўндленд"</item>
+    <item msgid="4402541016410147505">"Бразілія, горад"</item>
+    <item msgid="2251184440733164084">"Буэнас-Айрэс"</item>
+    <item msgid="6202926618569004969">"Грэнландыя"</item>
+    <item msgid="2355275037115290628">"Монтавідэа"</item>
+    <item msgid="1377549694711708945">"Сярэднеатлантыч. час"</item>
+    <item msgid="3457671272126347981">"Азорскія астравы"</item>
+    <item msgid="3659315141063710840">"Каба-Вердэ"</item>
+    <item msgid="1260941741802367635">"Касабланка"</item>
+    <item msgid="8275203689687954762">"Лондан, Дублін"</item>
+    <item msgid="5970179539479320905">"Амстэрдам, Берлін"</item>
+    <item msgid="5396319478750517962">"Бялград"</item>
+    <item msgid="8688787475056663004">"Брусель"</item>
+    <item msgid="3415827874921681622">"Сараева"</item>
+    <item msgid="402008965928320066">"Вiндхук"</item>
+    <item msgid="6436942724959275569">"Усходнеафрыканскі час"</item>
+    <item msgid="954536568417204026">"Аман, Іарданія"</item>
+    <item msgid="8932745482008902551">"Афіны, Стамбул"</item>
+    <item msgid="320025725949024510">"Бейрут, Ліван"</item>
+    <item msgid="7242083112551905970">"Каір"</item>
+    <item msgid="7241520146011450419">"Хельсінкі"</item>
+    <item msgid="2717065017510546526">"Ерусалім"</item>
+    <item msgid="8698556287741466553">"Мінск"</item>
+    <item msgid="1797598357342084506">"Харарэ"</item>
+    <item msgid="5169119919905066998">"Багдад"</item>
+    <item msgid="2615788116201065182">"Масква"</item>
+    <item msgid="9084354867885584646">"Кувейт"</item>
+    <item msgid="1351570519986178268">"Найробі"</item>
+    <item msgid="7094569580635877460">"Тэгеран"</item>
+    <item msgid="3953138772617909704">"Баку"</item>
+    <item msgid="2868893113598800752">"Тбілісі"</item>
+    <item msgid="7088581865802476373">"Ерэван"</item>
+    <item msgid="1941122257623887992">"Дубаі"</item>
+    <item msgid="9194797225058249720">"Кабул"</item>
+    <item msgid="6486569254364577332">"Ісламабад, Карачы"</item>
+    <item msgid="5487724896895412089">"Уральск"</item>
+    <item msgid="364906869710826982">"Екацярынбург"</item>
+    <item msgid="2106505051751383358">"Калькута"</item>
+    <item msgid="6851586621581501447">"Шры-Ланка"</item>
+    <item msgid="800438544128213134">"Катманду"</item>
+    <item msgid="6173621471007643021">"Астана"</item>
+    <item msgid="8645125891971581128">"Янгон"</item>
+    <item msgid="2886407505119737794">"Краснаярск"</item>
+    <item msgid="3408222398188107090">"Бангкок"</item>
+    <item msgid="4441612937172851228">"Пекін"</item>
+    <item msgid="4936715789028996930">"Ганконг"</item>
+    <item msgid="4261031143777385525">"Іркуцк"</item>
+    <item msgid="3538060959338191835">"Куала-Лумпур"</item>
+    <item msgid="1438847562643099201">"Перт"</item>
+    <item msgid="3063913827688244383">"Тайбэй"</item>
+    <item msgid="3502757135046564209">"Сеул"</item>
+    <item msgid="6107588684519111669">"Токіо, Осака"</item>
+    <item msgid="4350769099755608471">"Якуцк"</item>
+    <item msgid="2422707004533526462">"Адэлаіда"</item>
+    <item msgid="1292192084554134339">"Дарвін"</item>
+    <item msgid="1320883699470001716">"Брысбэн"</item>
+    <item msgid="5137198806146386527">"Хобарт"</item>
+    <item msgid="5920063686933941174">"Сідней, Канбера"</item>
+    <item msgid="615906039696009425">"Уладзівасток"</item>
+    <item msgid="7738680449356275374">"Гуам"</item>
+    <item msgid="2882915026380778227">"Магадан"</item>
+    <item msgid="8255615641810148152">"Окленд"</item>
+    <item msgid="3027153773466391728">"Фіджы"</item>
+    <item msgid="5911600083231840181">"Тангійская"</item>
+    <item msgid="5176858645450908751">"Джакарта"</item>
+  </string-array>
+    <string name="alarm_settings" msgid="2947147071388290814">"Будзільнікі"</string>
+    <string name="timer_service_desc" msgid="2256002649882602433">"Апрацоўвае дзеянні з апавяшчэнняў таймера."</string>
+    <string name="stopwatch_service_desc" msgid="9220132827343760767">"Апрацоўвае дзеянні з апавяшчэнняў секундамера."</string>
+    <string name="swn_paused" msgid="6364358842808263589">"Прыпынены"</string>
+    <string name="description_direction_right" msgid="5709209043267548985">"Правядзіце пальцам направа, каб адключыць"</string>
+    <string name="description_direction_left" msgid="7448141043674998679">"Правядзіце пальцам налева, каб адкласці"</string>
+    <string name="description_direction_both" msgid="1841309486023845685">"Правядзіце пальцам налева, каб адкласці, або направа, каб адключыць"</string>
+    <string name="timer_settings" msgid="7955522143086154795">"Таймеры"</string>
+    <string name="timer_ringtone_title" msgid="7630214935791599619">"Мелодыя таймера"</string>
+    <string name="timer_vibrate_title" msgid="7788920024785587518">"Вібрацыя таймера"</string>
+    <string name="timer_paused" msgid="5941160896040771462">"Таймер прыпынены"</string>
+    <string name="timers_stopped" msgid="3186191253226005149">"Таймеры (<xliff:g id="NUMBER">%d</xliff:g> шт.) спынены"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Краніце, каб убачыць свае таймеры"</string>
+    <string name="timers_in_use" msgid="5570729467344408506">"Таймераў: <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <string name="next_timer_notif" msgid="6136454740115613653">"Наступны таймер: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Налады застаўкі"</string>
+    <string name="night_mode_title" msgid="5983813889469616299">"Начны рэжым"</string>
+    <string name="night_mode_summary" msgid="1017350187324162631">"Вельмі няяркі дысплэй (для цёмных памяшканняў)"</string>
+    <string name="expand_alarm" msgid="7392616528943305020">"Разгарнуць абвестку"</string>
+    <string name="collapse_alarm" msgid="3561772046433483980">"Згарнуць абвесткi"</string>
+    <string name="alarm_undo" msgid="5710042601177655254">"адрабіць"</string>
+    <string name="alarm_deleted" msgid="6131529309389084785">"Будзільнік выдалены"</string>
+    <string name="world_day_of_week_label" msgid="5911196322328341288">"/ <xliff:g id="LABEL">%s</xliff:g>"</string>
+    <string name="next_alarm_description" msgid="2650244835760747046">"Наступны сігнал: <xliff:g id="ALARM_TIME">%s</xliff:g>"</string>
+    <string name="no_alarms" msgid="6429431324842022917">"Няма будзільнікаў"</string>
+    <string name="invalid_time" msgid="2782334750243998633">"Недапушчальны час <xliff:g id="INVALID_HOUR">%1$d</xliff:g>:<xliff:g id="INVALID_MINUTES">%2$d</xliff:g><xliff:g id="INVALID_AMPM">%3$s</xliff:g>"</string>
+    <string name="no_alarm_at" msgid="8140632482969193119">"Няма будзільніка на <xliff:g id="ALARM_TIME_HOUR">%1$d</xliff:g>:<xliff:g id="ALARM_TIME_MINUTES">%2$d</xliff:g>"</string>
+    <string name="no_scheduled_alarms" msgid="2115420148192753534">"Няма запланаваных будзільнікаў"</string>
+    <string name="no_label_specified" msgid="2008482054428460626">"Няма паметкі"</string>
+    <string name="no_alarms_with_label" msgid="6250998794542941665">"Няма будзільнікаў з такой паметкай"</string>
+    <string name="stopwatch_isnt_running" msgid="7147219965448204727">"Секундамер не запушчаны"</string>
+    <string name="stopwatch_paused" msgid="2187615623275408601">"Секундамер прыпынены"</string>
+    <string name="stopwatch_reset" msgid="7585914953721021042">"Секундамер скінуты"</string>
+    <string name="stopwatch_lapped" msgid="5844686448815550482">"Секундамер адзначыў круг"</string>
+    <string name="stopwatch_started" msgid="7843882246387176304">"Секундамер запушчаны"</string>
+    <string name="no_alarm_scheduled_for_this_time" msgid="4463069177414482818">"Няма будзільніка, запланаванага на гэты час"</string>
+    <string name="alarm_is_dismissed" msgid="5509897230565826642">"Будзільнік на <xliff:g id="ALARM_TIME">%s</xliff:g> адключаны"</string>
+    <string name="alarm_is_set" msgid="5503226382620011088">"Будзільнік пастаўлены на <xliff:g id="ALARM_TIME">%s</xliff:g>"</string>
+    <string name="no_timers_exist" msgid="7062019300048831373">"Няма таймераў"</string>
+    <string name="too_many_timers_exist" msgid="6339194231767431627">"Існуе больш за адзін таймер"</string>
+    <string name="timer_does_not_exist" msgid="4457482976523984231">"Таймер быў выдалены."</string>
+    <string name="timer_created" msgid="4381027137335885547">"Таймер створаны"</string>
+    <string name="timer_was_reset" msgid="6495796785185062631">"Скінуць таймер"</string>
+    <string name="timer_deleted" msgid="9110322362460029392">"Таймер выдалены"</string>
+    <string name="timer_started" msgid="6715582052946641641">"Таймер запушчаны"</string>
+    <string name="invalid_timer_length" msgid="3104567893212932487">"Недапушчальная працягласць таймера"</string>
+    <string name="no_city_selected" msgid="1007596865203283741">"Горад не выбраны"</string>
+    <string name="the_city_you_specified_is_not_available" msgid="1753597460426454543">"Пазначаны горад недаступны"</string>
+    <string name="the_city_already_added" msgid="3799050213771793020">"Гэты горад ужо быў дададзены"</string>
+    <string name="city_added" msgid="1335509457349179514">"Горад <xliff:g id="CITY_NAME">%s</xliff:g> дададзены"</string>
+    <string name="city_deleted" msgid="3935141305276867838">"Горад <xliff:g id="CITY_NAME">%s</xliff:g> выдалены"</string>
+    <string name="alarm_cant_be_dismissed_still_more_than_24_hours_away" msgid="8810520940995307437">"Будзільнік на <xliff:g id="ALARM_TIME">%s</xliff:g> не можа быць адключаны зараз, да яго засталося больш за 24 гадзіны"</string>
+    <string name="dismiss_alarm" msgid="7204593078688533541">"Адключыць будзільнік"</string>
+    <string name="pick_alarm_to_dismiss" msgid="5408769235866082896">"Выберыце будзільнік, якія трэба адключыць"</string>
+    <string name="no_firing_alarms" msgid="4986161963178722289">"Няма актыўных будзільнікаў"</string>
+    <string name="alarm_is_snoozed" msgid="7044644119744928846">"Будзільнік на <xliff:g id="ALARM_TIME">%s</xliff:g> адкладзены на 10 хвілін"</string>
+</resources>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 7b706d9..9efe2aa 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Неизвестно"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Силата на звука на будилника е заглушена"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Включване на звука"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"За устройството е зададена пълна тишина"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Бутони за силата на звука"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Отлагане"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Вибриране на таймера"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Таймерът е на пауза"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> таймера са на пауза"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Докоснете, за да видите таймерите си"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Докоснете, за да видите таймерите си"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> таймера"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Следващ таймер: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Настройки за „Сънища“"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Настройки за скрийнсейвър"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Нощен режим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Много затъмнен дисплей (за тъмни стаи)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Разгъване на будилника"</string>
diff --git a/res/values-bn-rBD/strings.xml b/res/values-bn-rBD/strings.xml
index c5b6564..7ac2c70 100644
--- a/res/values-bn-rBD/strings.xml
+++ b/res/values-bn-rBD/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"অজানা"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"অ্যালার্মের ভলিউম নিঃশব্দ করা হয়েছে"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"সশব্দ করুন"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"ডিফল্ট অ্যালার্মের রিংটোন হ\'ল নীরব"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"পরিবর্তন"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"ডিভাইসকে সম্পূর্ণ নীরব অবস্থায় সেট করা রয়েছে"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ভলিউম বোতাম"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"স্নুজ"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"টাইমারের স্পন্দন"</string>
     <string name="timer_paused" msgid="5941160896040771462">"টাইমারে বিরাম দেওয়া হয়েছে"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g>টি টাইমারে বিরাম দেওয়া হয়েছে"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"আপনার টাইমারগুলি দেখার জন্য ছোঁন"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"আপনার টাইমারগুলি দেখতে আলতো চাপ দিন"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> টি টাইমার"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"পরবর্তী টাইমার: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"স্ক্রিনসেভার সেটিংস"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"স্ক্রীন-সেভারের সেটিংস"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"রাতের মোড"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"অত্যন্ত অস্পষ্ট প্রদর্শন (অন্ধকার ঘরের জন্য)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"অ্যালার্ম প্রসারিত করুন"</string>
diff --git a/res/values-bs-rBA/cities.xml b/res/values-bs-rBA/cities.xml
new file mode 100644
index 0000000..6e03455
--- /dev/null
+++ b/res/values-bs-rBA/cities.xml
@@ -0,0 +1,360 @@
+<?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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="C1" msgid="3622720549928625541">"<xliff:g id="SEPARATOR">=</xliff:g>Abidžan<xliff:g id="TIMEZONE">|Africa/Abidjan</xliff:g>"</string>
+    <string name="C2" msgid="9073993995416728918">"<xliff:g id="SEPARATOR">=</xliff:g>Akra<xliff:g id="TIMEZONE">|Africa/Accra</xliff:g>"</string>
+    <string name="C3" msgid="5172979423931428620">"<xliff:g id="SEPARATOR">=</xliff:g>Adis Abeba<xliff:g id="TIMEZONE">|Africa/Addis_Ababa</xliff:g>"</string>
+    <string name="C4" msgid="4450258423854546267">"<xliff:g id="SEPARATOR">=</xliff:g>Alžir<xliff:g id="TIMEZONE">|Africa/Algiers</xliff:g>"</string>
+    <string name="C5" msgid="8063142106679202722">"<xliff:g id="SEPARATOR">=</xliff:g>Blantyre<xliff:g id="TIMEZONE">|Africa/Blantyre</xliff:g>"</string>
+    <string name="C6" msgid="1620940469531839828">"<xliff:g id="SEPARATOR">=</xliff:g>Brazavil<xliff:g id="TIMEZONE">|Africa/Brazzaville</xliff:g>"</string>
+    <string name="C7" msgid="8450502029020824529">"<xliff:g id="SEPARATOR">=</xliff:g>Kairo<xliff:g id="TIMEZONE">|Africa/Cairo</xliff:g>"</string>
+    <string name="C8" msgid="5843391672611053116">"<xliff:g id="SEPARATOR">=</xliff:g>Kazablanka<xliff:g id="TIMEZONE">|Africa/Casablanca</xliff:g>"</string>
+    <string name="C9" msgid="2164088076645942134">"<xliff:g id="SEPARATOR">=</xliff:g>Konakri<xliff:g id="TIMEZONE">|Africa/Conakry</xliff:g>"</string>
+    <string name="C10" msgid="6275085554326816487">"<xliff:g id="SEPARATOR">=</xliff:g>Dakar<xliff:g id="TIMEZONE">|Africa/Dakar</xliff:g>"</string>
+    <string name="C11" msgid="8124988526568339100">"<xliff:g id="SEPARATOR">=</xliff:g>Dar es Salam<xliff:g id="TIMEZONE">|Africa/Dar_es_Salaam</xliff:g>"</string>
+    <string name="C12" msgid="9058858575164534385">"DŽ<xliff:g id="SEPARATOR">=</xliff:g>Džibuti<xliff:g id="TIMEZONE">|Africa/Djibouti</xliff:g>"</string>
+    <string name="C13" msgid="1020128319695123468">"<xliff:g id="SEPARATOR">=</xliff:g>Freetown<xliff:g id="TIMEZONE">|Africa/Freetown</xliff:g>"</string>
+    <string name="C14" msgid="5466600602512133072">"<xliff:g id="SEPARATOR">=</xliff:g>Gaborone<xliff:g id="TIMEZONE">|Africa/Gaborone</xliff:g>"</string>
+    <string name="C15" msgid="4045696872348427594">"<xliff:g id="SEPARATOR">=</xliff:g>Harare<xliff:g id="TIMEZONE">|Africa/Harare</xliff:g>"</string>
+    <string name="C16" msgid="109844560982762747">"<xliff:g id="SEPARATOR">=</xliff:g>Johannesburg<xliff:g id="TIMEZONE">|Africa/Johannesburg</xliff:g>"</string>
+    <string name="C17" msgid="4868414442726546214">"<xliff:g id="SEPARATOR">=</xliff:g>Kampala<xliff:g id="TIMEZONE">|Africa/Kampala</xliff:g>"</string>
+    <string name="C18" msgid="7460319039497808668">"<xliff:g id="SEPARATOR">=</xliff:g>Kartum<xliff:g id="TIMEZONE">|Africa/Khartoum</xliff:g>"</string>
+    <string name="C19" msgid="3967163989179394825">"<xliff:g id="SEPARATOR">=</xliff:g>Kigali<xliff:g id="TIMEZONE">|Africa/Kigali</xliff:g>"</string>
+    <string name="C20" msgid="832336979058592106">"<xliff:g id="SEPARATOR">=</xliff:g>Kinšasa<xliff:g id="TIMEZONE">|Africa/Kinshasa</xliff:g>"</string>
+    <string name="C21" msgid="8691772487297796331">"<xliff:g id="SEPARATOR">=</xliff:g>Lagos<xliff:g id="TIMEZONE">|Africa/Lagos</xliff:g>"</string>
+    <string name="C22" msgid="6061916756914828881">"<xliff:g id="SEPARATOR">=</xliff:g>Maseru<xliff:g id="TIMEZONE">|Africa/Maseru</xliff:g>"</string>
+    <string name="C23" msgid="6790461017899209498">"<xliff:g id="SEPARATOR">=</xliff:g>Mogadišu<xliff:g id="TIMEZONE">|Africa/Mogadishu</xliff:g>"</string>
+    <string name="C24" msgid="836730985302941979">"<xliff:g id="SEPARATOR">=</xliff:g>Najrobi<xliff:g id="TIMEZONE">|Africa/Nairobi</xliff:g>"</string>
+    <string name="C25" msgid="6439936809920816845">"<xliff:g id="SEPARATOR">=</xliff:g>São Tomé<xliff:g id="TIMEZONE">|Africa/Sao_Tome</xliff:g>"</string>
+    <string name="C26" msgid="3250092456144685877">"<xliff:g id="SEPARATOR">=</xliff:g>Timbuktu<xliff:g id="TIMEZONE">|Africa/Timbuktu</xliff:g>"</string>
+    <string name="C27" msgid="851018621577780718">"<xliff:g id="SEPARATOR">=</xliff:g>Tripoli<xliff:g id="TIMEZONE">|Africa/Tripoli</xliff:g>"</string>
+    <string name="C28" msgid="7979767521827885833">"<xliff:g id="SEPARATOR">=</xliff:g>Tunis<xliff:g id="TIMEZONE">|Africa/Tunis</xliff:g>"</string>
+    <string name="C29" msgid="7946114495840302218">"<xliff:g id="SEPARATOR">=</xliff:g>Anchorage<xliff:g id="TIMEZONE">|America/Anchorage</xliff:g>"</string>
+    <string name="C31" msgid="9017443250572798257">"<xliff:g id="SEPARATOR">=</xliff:g>Aruba<xliff:g id="TIMEZONE">|America/Aruba</xliff:g>"</string>
+    <string name="C32" msgid="3825060534011309483">"<xliff:g id="SEPARATOR">=</xliff:g>Asunsion<xliff:g id="TIMEZONE">|America/Asuncion</xliff:g>"</string>
+    <string name="C33" msgid="700410369162607101">"<xliff:g id="SEPARATOR">=</xliff:g>Barbados<xliff:g id="TIMEZONE">|America/Barbados</xliff:g>"</string>
+    <string name="C34" msgid="4247046344370912762">"<xliff:g id="SEPARATOR">=</xliff:g>Belize<xliff:g id="TIMEZONE">|America/Belize</xliff:g>"</string>
+    <string name="C35" msgid="2794708943743875418">"<xliff:g id="SEPARATOR">=</xliff:g>Bogota<xliff:g id="TIMEZONE">|America/Bogota</xliff:g>"</string>
+    <string name="C36" msgid="5404342554664613950">"<xliff:g id="SEPARATOR">=</xliff:g>Buenos Aires<xliff:g id="TIMEZONE">|America/Buenos_Aires</xliff:g>"</string>
+    <string name="C37" msgid="210142862572070093">"<xliff:g id="SEPARATOR">=</xliff:g>Kankun<xliff:g id="TIMEZONE">|America/Cancun</xliff:g>"</string>
+    <string name="C38" msgid="3882347315148425276">"<xliff:g id="SEPARATOR">=</xliff:g>Karakas<xliff:g id="TIMEZONE">|America/Caracas</xliff:g>"</string>
+    <string name="C39" msgid="1273212484626323439">"<xliff:g id="SEPARATOR">=</xliff:g>Kajman<xliff:g id="TIMEZONE">|America/Cayman</xliff:g>"</string>
+    <string name="C40" msgid="3106173663723475314">"<xliff:g id="SEPARATOR">=</xliff:g>Chicago<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C42" msgid="5638414063615009004">"<xliff:g id="SEPARATOR">=</xliff:g>Kurasao<xliff:g id="TIMEZONE">|America/Curacao</xliff:g>"</string>
+    <string name="C43" msgid="6826097241516998181">"<xliff:g id="SEPARATOR">=</xliff:g>Dawson Creek<xliff:g id="TIMEZONE">|America/Dawson_Creek</xliff:g>"</string>
+    <string name="C44" msgid="2779334691893631030">"<xliff:g id="SEPARATOR">=</xliff:g>Denver<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C45" msgid="8943178793317201894">"<xliff:g id="SEPARATOR">=</xliff:g>Detroit<xliff:g id="TIMEZONE">|America/Detroit</xliff:g>"</string>
+    <string name="C46" msgid="5190250990574320177">"<xliff:g id="SEPARATOR">=</xliff:g>Dominika<xliff:g id="TIMEZONE">|America/Dominica</xliff:g>"</string>
+    <string name="C47" msgid="369754396219379227">"<xliff:g id="SEPARATOR">=</xliff:g>Edmonton<xliff:g id="TIMEZONE">|America/Edmonton</xliff:g>"</string>
+    <string name="C48" msgid="7918902616648922410">"<xliff:g id="SEPARATOR">=</xliff:g>El Salvador<xliff:g id="TIMEZONE">|America/El_Salvador</xliff:g>"</string>
+    <string name="C49" msgid="6326857727742458931">"<xliff:g id="SEPARATOR">=</xliff:g>Fortaleza<xliff:g id="TIMEZONE">|America/Fortaleza</xliff:g>"</string>
+    <string name="C50" msgid="3131498820508584398">"<xliff:g id="SEPARATOR">=</xliff:g>Grand Turk<xliff:g id="TIMEZONE">|America/Grand_Turk</xliff:g>"</string>
+    <string name="C51" msgid="3122278921760822414">"<xliff:g id="SEPARATOR">=</xliff:g>Grenada<xliff:g id="TIMEZONE">|America/Grenada</xliff:g>"</string>
+    <string name="C52" msgid="7461551991724617520">"G<xliff:g id="SEPARATOR">=</xliff:g>Guatemala City<xliff:g id="TIMEZONE">|America/Guatemala</xliff:g>"</string>
+    <string name="C53" msgid="296242785331472791">"<xliff:g id="SEPARATOR">=</xliff:g>Gvajana<xliff:g id="TIMEZONE">|America/Guyana</xliff:g>"</string>
+    <string name="C54" msgid="4045007274020361950">"<xliff:g id="SEPARATOR">=</xliff:g>Halifax<xliff:g id="TIMEZONE">|America/Halifax</xliff:g>"</string>
+    <string name="C55" msgid="8180186289266487770">"<xliff:g id="SEPARATOR">=</xliff:g>Havana<xliff:g id="TIMEZONE">|America/Havana</xliff:g>"</string>
+    <string name="C56" msgid="6062281725956353553">"<xliff:g id="SEPARATOR">=</xliff:g>Indianapolis<xliff:g id="TIMEZONE">|America/Indiana/Indianapolis</xliff:g>"</string>
+    <string name="C57" msgid="5971109906791493563">"<xliff:g id="SEPARATOR">=</xliff:g>Knox<xliff:g id="TIMEZONE">|America/Indiana/Knox</xliff:g>"</string>
+    <string name="C58" msgid="7657721717096348613">"<xliff:g id="SEPARATOR">=</xliff:g>Marengo<xliff:g id="TIMEZONE">|America/Indiana/Marengo</xliff:g>"</string>
+    <string name="C59" msgid="2053523400941417307">"<xliff:g id="SEPARATOR">=</xliff:g>Petersburg<xliff:g id="TIMEZONE">|America/Indiana/Petersburg</xliff:g>"</string>
+    <string name="C60" msgid="8112283891039465817">"<xliff:g id="SEPARATOR">=</xliff:g>Tell City<xliff:g id="TIMEZONE">|America/Indiana/Tell_City</xliff:g>"</string>
+    <string name="C61" msgid="7778713489993559227">"<xliff:g id="SEPARATOR">=</xliff:g>Vevaj<xliff:g id="TIMEZONE">|America/Indiana/Vevay</xliff:g>"</string>
+    <string name="C62" msgid="2667958702401099683">"<xliff:g id="SEPARATOR">=</xliff:g>Vincennes<xliff:g id="TIMEZONE">|America/Indiana/Vincennes</xliff:g>"</string>
+    <string name="C63" msgid="2251274863869460838">"<xliff:g id="SEPARATOR">=</xliff:g>Winamac<xliff:g id="TIMEZONE">|America/Indiana/Winamac</xliff:g>"</string>
+    <string name="C64" msgid="1051183687128385699">"<xliff:g id="SEPARATOR">=</xliff:g>Kingston<xliff:g id="TIMEZONE">|America/Jamaica</xliff:g>"</string>
+    <string name="C65" msgid="4484953311341882894">"<xliff:g id="SEPARATOR">=</xliff:g>Nuestra Señora de La Paz<xliff:g id="TIMEZONE">|America/La_Paz</xliff:g>"</string>
+    <string name="C66" msgid="4486852398001333122">"<xliff:g id="SEPARATOR">=</xliff:g>Lima<xliff:g id="TIMEZONE">|America/Lima</xliff:g>"</string>
+    <string name="C67" msgid="4874799181719358019">"<xliff:g id="SEPARATOR">=</xliff:g>Los Angeles<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C68" msgid="5526012011469271690">"<xliff:g id="SEPARATOR">=</xliff:g>Louisville<xliff:g id="TIMEZONE">|America/Louisville</xliff:g>"</string>
+    <string name="C69" msgid="6147580167560875608">"<xliff:g id="SEPARATOR">=</xliff:g>Managua<xliff:g id="TIMEZONE">|America/Managua</xliff:g>"</string>
+    <string name="C70" msgid="3277881296053225577">"<xliff:g id="SEPARATOR">=</xliff:g>Martinique<xliff:g id="TIMEZONE">|America/Martinique</xliff:g>"</string>
+    <string name="C71" msgid="4017941126335556194">"<xliff:g id="SEPARATOR">=</xliff:g>Mendoza<xliff:g id="TIMEZONE">|America/Mendoza</xliff:g>"</string>
+    <string name="C72" msgid="3992109594245379480">"<xliff:g id="SEPARATOR">=</xliff:g>Metlakatla<xliff:g id="TIMEZONE">|America/Metlakatla</xliff:g>"</string>
+    <string name="C73" msgid="2715229408279026929">"<xliff:g id="SEPARATOR">=</xliff:g>Mexico City<xliff:g id="TIMEZONE">|America/Mexico_City</xliff:g>"</string>
+    <string name="C74" msgid="4308784353529592128">"<xliff:g id="SEPARATOR">=</xliff:g>Monterrey<xliff:g id="TIMEZONE">|America/Monterrey</xliff:g>"</string>
+    <string name="C75" msgid="1026967177018172509">"<xliff:g id="SEPARATOR">=</xliff:g>Montevideo<xliff:g id="TIMEZONE">|America/Montevideo</xliff:g>"</string>
+    <string name="C76" msgid="5677155513568462679">"<xliff:g id="SEPARATOR">=</xliff:g>Montreal<xliff:g id="TIMEZONE">|America/Montreal</xliff:g>"</string>
+    <string name="C77" msgid="7071675194537613715">"<xliff:g id="SEPARATOR">=</xliff:g>Nasau<xliff:g id="TIMEZONE">|America/Nassau</xliff:g>"</string>
+    <string name="C78" msgid="705452895809394827">"<xliff:g id="SEPARATOR">=</xliff:g>New York<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C79" msgid="615046244335186458">"<xliff:g id="SEPARATOR">=</xliff:g>Beulah<xliff:g id="TIMEZONE">|America/North_Dakota/Beulah</xliff:g>"</string>
+    <string name="C80" msgid="7462541787750301851">"<xliff:g id="SEPARATOR">=</xliff:g>Centar<xliff:g id="TIMEZONE">|America/North_Dakota/Center</xliff:g>"</string>
+    <string name="C81" msgid="5467118811364466464">"<xliff:g id="SEPARATOR">=</xliff:g>Novi Salem<xliff:g id="TIMEZONE">|America/North_Dakota/New_Salem</xliff:g>"</string>
+    <string name="C82" msgid="1040250446144596478">"<xliff:g id="SEPARATOR">=</xliff:g>Panama<xliff:g id="TIMEZONE">|America/Panama</xliff:g>"</string>
+    <string name="C83" msgid="3734366600481445363">"<xliff:g id="SEPARATOR">=</xliff:g>Phoenix<xliff:g id="TIMEZONE">|America/Phoenix</xliff:g>"</string>
+    <string name="C84" msgid="2410152141185166321">"<xliff:g id="SEPARATOR">=</xliff:g>Port of Spain<xliff:g id="TIMEZONE">|America/Port_of_Spain</xliff:g>"</string>
+    <string name="C85" msgid="2883572094139689939">"<xliff:g id="SEPARATOR">=</xliff:g>Port-au-Prince<xliff:g id="TIMEZONE">|America/Port-au-Prince</xliff:g>"</string>
+    <string name="C86" msgid="274590042868724214">"<xliff:g id="SEPARATOR">=</xliff:g>Portoriko<xliff:g id="TIMEZONE">|America/Puerto_Rico</xliff:g>"</string>
+    <string name="C87" msgid="2866918562243248306">"<xliff:g id="SEPARATOR">=</xliff:g>Santo Domingo<xliff:g id="TIMEZONE">|America/Santo_Domingo</xliff:g>"</string>
+    <string name="C88" msgid="2261702707416420550">"<xliff:g id="SEPARATOR">=</xliff:g>Sao Paolo<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C89" msgid="8517952667962700432">"<xliff:g id="SEPARATOR">=</xliff:g>St. Johns<xliff:g id="TIMEZONE">|America/St_Johns</xliff:g>"</string>
+    <string name="C90" msgid="1703939848190669830">"<xliff:g id="SEPARATOR">=</xliff:g>St. Kitts<xliff:g id="TIMEZONE">|America/St_Kitts</xliff:g>"</string>
+    <string name="C91" msgid="4438261556294969442">"<xliff:g id="SEPARATOR">=</xliff:g>Sv. Lucija<xliff:g id="TIMEZONE">|America/St_Lucia</xliff:g>"</string>
+    <string name="C92" msgid="3717300223413621820">"<xliff:g id="SEPARATOR">=</xliff:g>Sv. Tomas<xliff:g id="TIMEZONE">|America/St_Thomas</xliff:g>"</string>
+    <string name="C93" msgid="964552099122372664">"<xliff:g id="SEPARATOR">=</xliff:g>Tihuana<xliff:g id="TIMEZONE">|America/Tijuana</xliff:g>"</string>
+    <string name="C94" msgid="6254783598629305021">"<xliff:g id="SEPARATOR">=</xliff:g>Toronto<xliff:g id="TIMEZONE">|America/Toronto</xliff:g>"</string>
+    <string name="C95" msgid="2144206125989179089">"<xliff:g id="SEPARATOR">=</xliff:g>Vancouver<xliff:g id="TIMEZONE">|America/Vancouver</xliff:g>"</string>
+    <string name="C96" msgid="3995904432128369027">"<xliff:g id="SEPARATOR">=</xliff:g>Winnipeg<xliff:g id="TIMEZONE">|America/Winnipeg</xliff:g>"</string>
+    <string name="C97" msgid="5667595440938233073">"<xliff:g id="SEPARATOR">=</xliff:g>Južni pol<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Antarctica/South_Pole</xliff:g>"</string>
+    <string name="C98" msgid="2067640513126652156">"<xliff:g id="SEPARATOR">=</xliff:g>Longyearbyen<xliff:g id="TIMEZONE">|Arctic/Longyearbyen</xliff:g>"</string>
+    <string name="C99" msgid="6750041547603679548">"<xliff:g id="SEPARATOR">=</xliff:g>Almati<xliff:g id="TIMEZONE">|Asia/Almaty</xliff:g>"</string>
+    <string name="C100" msgid="5995329947852415813">"<xliff:g id="SEPARATOR">=</xliff:g>Aman<xliff:g id="TIMEZONE">|Asia/Amman</xliff:g>"</string>
+    <string name="C101" msgid="5760056604239047274">"<xliff:g id="SEPARATOR">=</xliff:g>Anadir<xliff:g id="TIMEZONE">|Asia/Anadyr</xliff:g>"</string>
+    <string name="C102" msgid="9000357065825182754">"<xliff:g id="SEPARATOR">=</xliff:g>Aktau<xliff:g id="TIMEZONE">|Asia/Aqtau</xliff:g>"</string>
+    <string name="C103" msgid="8781982253489209791">"<xliff:g id="SEPARATOR">=</xliff:g>Bagdad<xliff:g id="TIMEZONE">|Asia/Baghdad</xliff:g>"</string>
+    <string name="C104" msgid="4021122575041916540">"<xliff:g id="SEPARATOR">=</xliff:g>Bahrein<xliff:g id="TIMEZONE">|Asia/Bahrain</xliff:g>"</string>
+    <string name="C105" msgid="1812915124794679606">"<xliff:g id="SEPARATOR">=</xliff:g>Baku<xliff:g id="TIMEZONE">|Asia/Baku</xliff:g>"</string>
+    <string name="C106" msgid="1996684628612964988">"<xliff:g id="SEPARATOR">=</xliff:g>Bangkok<xliff:g id="TIMEZONE">|Asia/Bangkok</xliff:g>"</string>
+    <string name="C107" msgid="227554925153715426">"<xliff:g id="SEPARATOR">=</xliff:g>Bejrut<xliff:g id="TIMEZONE">|Asia/Beirut</xliff:g>"</string>
+    <string name="C108" msgid="5082419901681584844">"<xliff:g id="SEPARATOR">=</xliff:g>Kalkuta<xliff:g id="TIMEZONE">|Asia/Calcutta</xliff:g>"</string>
+    <string name="C109" msgid="6386566477244958752">"<xliff:g id="SEPARATOR">=</xliff:g>Damask<xliff:g id="TIMEZONE">|Asia/Damascus</xliff:g>"</string>
+    <string name="C110" msgid="1165712058024165012">"<xliff:g id="SEPARATOR">=</xliff:g>Daka<xliff:g id="TIMEZONE">|Asia/Dhaka</xliff:g>"</string>
+    <string name="C111" msgid="5895260692253797547">"<xliff:g id="SEPARATOR">=</xliff:g>Dubai<xliff:g id="TIMEZONE">|Asia/Dubai</xliff:g>"</string>
+    <string name="C112" msgid="1708170128253320625">"<xliff:g id="SEPARATOR">=</xliff:g>Gaza<xliff:g id="TIMEZONE">|Asia/Gaza</xliff:g>"</string>
+    <string name="C113" msgid="8790538811134290878">"<xliff:g id="SEPARATOR">=</xliff:g>Hebron<xliff:g id="TIMEZONE">|Asia/Hebron</xliff:g>"</string>
+    <string name="C114" msgid="8019764566754082688">"<xliff:g id="SEPARATOR">=</xliff:g>Ho Ši Min<xliff:g id="TIMEZONE">|Asia/Ho_Chi_Minh</xliff:g>"</string>
+    <string name="C115" msgid="2707316842482208016">"<xliff:g id="SEPARATOR">=</xliff:g>Hong Kong<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Hong_Kong</xliff:g>"</string>
+    <string name="C117" msgid="486537564257069933">"DŽ<xliff:g id="SEPARATOR">=</xliff:g>Džakarta<xliff:g id="TIMEZONE">|Asia/Jakarta</xliff:g>"</string>
+    <string name="C118" msgid="2220594023727285784">"<xliff:g id="SEPARATOR">=</xliff:g>Jerusalem<xliff:g id="TIMEZONE">|Asia/Jerusalem</xliff:g>"</string>
+    <string name="C119" msgid="7095503078924268384">"<xliff:g id="SEPARATOR">=</xliff:g>Kabul<xliff:g id="TIMEZONE">|Asia/Kabul</xliff:g>"</string>
+    <string name="C120" msgid="4759297844750994699">"<xliff:g id="SEPARATOR">=</xliff:g>Karači<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C121" msgid="6397452077111782277">"<xliff:g id="SEPARATOR">=</xliff:g>Katmandu<xliff:g id="TIMEZONE">|Asia/Kathmandu</xliff:g>"</string>
+    <string name="C122" msgid="3384658968869783693">"<xliff:g id="SEPARATOR">=</xliff:g>Kuala Lumpur<xliff:g id="TIMEZONE">|Asia/Kuala_Lumpur</xliff:g>"</string>
+    <string name="C123" msgid="2596231413860119715">"<xliff:g id="SEPARATOR">=</xliff:g>Kuvajt<xliff:g id="TIMEZONE">|Asia/Kuwait</xliff:g>"</string>
+    <string name="C124" msgid="7128790644999660843">"<xliff:g id="SEPARATOR">=</xliff:g>Makau<xliff:g id="TIMEZONE">|Asia/Macau</xliff:g>"</string>
+    <string name="C125" msgid="7482612453109643531">"<xliff:g id="SEPARATOR">=</xliff:g>Manila<xliff:g id="TIMEZONE">|Asia/Manila</xliff:g>"</string>
+    <string name="C126" msgid="89594601694005714">"<xliff:g id="SEPARATOR">=</xliff:g>Muskat<xliff:g id="TIMEZONE">|Asia/Muscat</xliff:g>"</string>
+    <string name="C127" msgid="6694878912574814081">"<xliff:g id="SEPARATOR">=</xliff:g>Pnom Pen<xliff:g id="TIMEZONE">|Asia/Phnom_Penh</xliff:g>"</string>
+    <string name="C128" msgid="6055116591529458940">"<xliff:g id="SEPARATOR">=</xliff:g>Pjongjang<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Pyongyang</xliff:g>"</string>
+    <string name="C130" msgid="665609990740507143">"<xliff:g id="SEPARATOR">=</xliff:g>Rangun<xliff:g id="TIMEZONE">|Asia/Rangoon</xliff:g>"</string>
+    <string name="C131" msgid="3395769966117356927">"<xliff:g id="SEPARATOR">=</xliff:g>Rijad<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C133" msgid="5204810106521056060">"<xliff:g id="SEPARATOR">=</xliff:g>Seul<xliff:g id="TIMEZONE">|Asia/Seoul</xliff:g>"</string>
+    <string name="C134" msgid="7263747916569669120">"<xliff:g id="SEPARATOR">=</xliff:g>Šangaj<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C135" msgid="4100015019260371393">"<xliff:g id="SEPARATOR">=</xliff:g>Singapur<xliff:g id="TIMEZONE">|Asia/Singapore</xliff:g>"</string>
+    <string name="C136" msgid="6386033226757339839">"<xliff:g id="SEPARATOR">=</xliff:g>Tajpeh<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Taipei</xliff:g>"</string>
+    <string name="C137" msgid="5387760734363179588">"<xliff:g id="SEPARATOR">=</xliff:g>Teheran<xliff:g id="TIMEZONE">|Asia/Tehran</xliff:g>"</string>
+    <string name="C138" msgid="7193922868117846792">"<xliff:g id="SEPARATOR">=</xliff:g>Tel Aviv<xliff:g id="TIMEZONE">|Asia/Tel_Aviv</xliff:g>"</string>
+    <string name="C139" msgid="7060339477340222608">"<xliff:g id="SEPARATOR">=</xliff:g>Tokio<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Tokyo</xliff:g>"</string>
+    <string name="C140" msgid="6273911458061121975">"<xliff:g id="SEPARATOR">=</xliff:g>Ulanbator<xliff:g id="TIMEZONE">|Asia/Ulaanbaatar</xliff:g>"</string>
+    <string name="C141" msgid="2799340184229547409">"<xliff:g id="SEPARATOR">=</xliff:g>Bermudi<xliff:g id="TIMEZONE">|Atlantic/Bermuda</xliff:g>"</string>
+    <string name="C142" msgid="6015789133959684677">"<xliff:g id="SEPARATOR">=</xliff:g>Kanari<xliff:g id="TIMEZONE">|Atlantic/Canary</xliff:g>"</string>
+    <string name="C143" msgid="4888764215053863961">"<xliff:g id="SEPARATOR">=</xliff:g>Kabo Verde<xliff:g id="TIMEZONE">|Atlantic/Cape_Verde</xliff:g>"</string>
+    <string name="C144" msgid="3338105941475340049">"<xliff:g id="SEPARATOR">=</xliff:g>Rejkjavik<xliff:g id="TIMEZONE">|Atlantic/Reykjavik</xliff:g>"</string>
+    <string name="C145" msgid="8684297689430494031">"<xliff:g id="SEPARATOR">=</xliff:g>Stanley<xliff:g id="TIMEZONE">|Atlantic/Stanley</xliff:g>"</string>
+    <string name="C146" msgid="843808286721172656">"<xliff:g id="SEPARATOR">=</xliff:g>Adelaide<xliff:g id="TIMEZONE">|Australia/Adelaide</xliff:g>"</string>
+    <string name="C147" msgid="3712535858465321034">"<xliff:g id="SEPARATOR">=</xliff:g>Brisbane<xliff:g id="TIMEZONE">|Australia/Brisbane</xliff:g>"</string>
+    <string name="C148" msgid="7019403666599702943">"<xliff:g id="SEPARATOR">=</xliff:g>Canberra<xliff:g id="TIMEZONE">|Australia/Canberra</xliff:g>"</string>
+    <string name="C149" msgid="8185355499458013534">"<xliff:g id="SEPARATOR">=</xliff:g>Darwin<xliff:g id="TIMEZONE">|Australia/Darwin</xliff:g>"</string>
+    <string name="C150" msgid="3516845880105752618">"<xliff:g id="SEPARATOR">=</xliff:g>Melbourne<xliff:g id="TIMEZONE">|Australia/Melbourne</xliff:g>"</string>
+    <string name="C151" msgid="5576825403360541823">"<xliff:g id="SEPARATOR">=</xliff:g>Novi Južni Wales<xliff:g id="TIMEZONE">|Australia/NSW</xliff:g>"</string>
+    <string name="C152" msgid="7889900618915436602">"<xliff:g id="SEPARATOR">=</xliff:g>Perth<xliff:g id="TIMEZONE">|Australia/Perth</xliff:g>"</string>
+    <string name="C153" msgid="7506204460601953711">"<xliff:g id="SEPARATOR">=</xliff:g>Queensland<xliff:g id="TIMEZONE">|Australia/Queensland</xliff:g>"</string>
+    <string name="C154" msgid="1193262944948312063">"<xliff:g id="SEPARATOR">=</xliff:g>Sydney<xliff:g id="TIMEZONE">|Australia/Sydney</xliff:g>"</string>
+    <string name="C155" msgid="7079072802229033042">"<xliff:g id="SEPARATOR">=</xliff:g>Victoria<xliff:g id="TIMEZONE">|Australia/Victoria</xliff:g>"</string>
+    <string name="C156" msgid="4003110220147338835">"<xliff:g id="SEPARATOR">=</xliff:g>Newfoundland<xliff:g id="TIMEZONE">|Canada/Newfoundland</xliff:g>"</string>
+    <string name="C157" msgid="2861486997803753970">"<xliff:g id="SEPARATOR">=</xliff:g>Saskatchewan<xliff:g id="TIMEZONE">|Canada/Saskatchewan</xliff:g>"</string>
+    <string name="C158" msgid="6882933026191056506">"<xliff:g id="SEPARATOR">=</xliff:g>Uskršnji otok<xliff:g id="TIMEZONE">|Chile/EasterIsland</xliff:g>"</string>
+    <string name="C159" msgid="4128429767051043903">"<xliff:g id="SEPARATOR">=</xliff:g>Amsterdam<xliff:g id="TIMEZONE">|Europe/Amsterdam</xliff:g>"</string>
+    <string name="C160" msgid="3488513735205092653">"<xliff:g id="SEPARATOR">=</xliff:g>Andora<xliff:g id="TIMEZONE">|Europe/Andorra</xliff:g>"</string>
+    <string name="C161" msgid="7244325364130392348">"<xliff:g id="SEPARATOR">=</xliff:g>Atina<xliff:g id="TIMEZONE">|Europe/Athens</xliff:g>"</string>
+    <string name="C162" msgid="7484009548361072313">"<xliff:g id="SEPARATOR">=</xliff:g>Belfast<xliff:g id="TIMEZONE">|Europe/Belfast</xliff:g>"</string>
+    <string name="C163" msgid="6106990061397073808">"<xliff:g id="SEPARATOR">=</xliff:g>Beograd<xliff:g id="TIMEZONE">|Europe/Belgrade</xliff:g>"</string>
+    <string name="C164" msgid="3074767496771260157">"<xliff:g id="SEPARATOR">=</xliff:g>Berlin<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C165" msgid="4442005045172394762">"<xliff:g id="SEPARATOR">=</xliff:g>Bratislava<xliff:g id="TIMEZONE">|Europe/Bratislava</xliff:g>"</string>
+    <string name="C166" msgid="8977286721038142474">"<xliff:g id="SEPARATOR">=</xliff:g>Brisel<xliff:g id="TIMEZONE">|Europe/Brussels</xliff:g>"</string>
+    <string name="C167" msgid="5502175796232774744">"<xliff:g id="SEPARATOR">=</xliff:g>Bukurešt<xliff:g id="TIMEZONE">|Europe/Bucharest</xliff:g>"</string>
+    <string name="C168" msgid="6750159439632567316">"<xliff:g id="SEPARATOR">=</xliff:g>Budimpešta<xliff:g id="TIMEZONE">|Europe/Budapest</xliff:g>"</string>
+    <string name="C169" msgid="591483187800562071">"<xliff:g id="SEPARATOR">=</xliff:g>Kišinjev<xliff:g id="TIMEZONE">|Europe/Chisinau</xliff:g>"</string>
+    <string name="C170" msgid="157539770076958216">"<xliff:g id="SEPARATOR">=</xliff:g>Kopenhagen<xliff:g id="TIMEZONE">|Europe/Copenhagen</xliff:g>"</string>
+    <string name="C171" msgid="4774534094571993566">"<xliff:g id="SEPARATOR">=</xliff:g>Dablin<xliff:g id="TIMEZONE">|Europe/Dublin</xliff:g>"</string>
+    <string name="C172" msgid="6781166861618808351">"<xliff:g id="SEPARATOR">=</xliff:g>Gibraltar<xliff:g id="TIMEZONE">|Europe/Gibraltar</xliff:g>"</string>
+    <string name="C173" msgid="6620286361619640304">"<xliff:g id="SEPARATOR">=</xliff:g>Helsinki<xliff:g id="TIMEZONE">|Europe/Helsinki</xliff:g>"</string>
+    <string name="C174" msgid="2279016324825973473">"<xliff:g id="SEPARATOR">=</xliff:g>Otok Man<xliff:g id="TIMEZONE">|Europe/Isle_of_Man</xliff:g>"</string>
+    <string name="C175" msgid="3290185117135612679">"<xliff:g id="SEPARATOR">=</xliff:g>Istanbul<xliff:g id="TIMEZONE">|Europe/Istanbul</xliff:g>"</string>
+    <string name="C176" msgid="8375703098860926099">"<xliff:g id="SEPARATOR">=</xliff:g>Kijev<xliff:g id="TIMEZONE">|Europe/Kiev</xliff:g>"</string>
+    <string name="C177" msgid="6500868250597874838">"<xliff:g id="SEPARATOR">=</xliff:g>Lisabon<xliff:g id="TIMEZONE">|Europe/Lisbon</xliff:g>"</string>
+    <string name="C178" msgid="8805696770032311110">"<xliff:g id="SEPARATOR">=</xliff:g>London<xliff:g id="TIMEZONE">|Europe/London</xliff:g>"</string>
+    <string name="C179" msgid="3767343883668628062">"<xliff:g id="SEPARATOR">=</xliff:g>Luksemburg<xliff:g id="TIMEZONE">|Europe/Luxembourg</xliff:g>"</string>
+    <string name="C180" msgid="7678392789982322642">"<xliff:g id="SEPARATOR">=</xliff:g>Madrid<xliff:g id="TIMEZONE">|Europe/Madrid</xliff:g>"</string>
+    <string name="C181" msgid="7514462880775616081">"<xliff:g id="SEPARATOR">=</xliff:g>Malta<xliff:g id="TIMEZONE">|Europe/Malta</xliff:g>"</string>
+    <string name="C182" msgid="1916950203622380579">"<xliff:g id="SEPARATOR">=</xliff:g>Minsk<xliff:g id="TIMEZONE">|Europe/Minsk</xliff:g>"</string>
+    <string name="C183" msgid="4964892686115215073">"<xliff:g id="SEPARATOR">=</xliff:g>Monako<xliff:g id="TIMEZONE">|Europe/Monaco</xliff:g>"</string>
+    <string name="C184" msgid="4848586310907586448">"<xliff:g id="SEPARATOR">=</xliff:g>Moskva<xliff:g id="TIMEZONE">|Europe/Moscow</xliff:g>"</string>
+    <string name="C185" msgid="2598535413053285569">"<xliff:g id="SEPARATOR">=</xliff:g>Oslo<xliff:g id="TIMEZONE">|Europe/Oslo</xliff:g>"</string>
+    <string name="C186" msgid="678795048839315969">"<xliff:g id="SEPARATOR">=</xliff:g>Pariz<xliff:g id="TIMEZONE">|Europe/Paris</xliff:g>"</string>
+    <string name="C187" msgid="9120486940322565800">"<xliff:g id="SEPARATOR">=</xliff:g>Prag<xliff:g id="TIMEZONE">|Europe/Prague</xliff:g>"</string>
+    <string name="C188" msgid="6820884829000643173">"<xliff:g id="SEPARATOR">=</xliff:g>Riga<xliff:g id="TIMEZONE">|Europe/Riga</xliff:g>"</string>
+    <string name="C189" msgid="8545786001221397208">"<xliff:g id="SEPARATOR">=</xliff:g>Rim<xliff:g id="TIMEZONE">|Europe/Rome</xliff:g>"</string>
+    <string name="C190" msgid="2822097113459737895">"<xliff:g id="SEPARATOR">=</xliff:g>San Marino<xliff:g id="TIMEZONE">|Europe/San_Marino</xliff:g>"</string>
+    <string name="C191" msgid="5419026915911469878">"<xliff:g id="SEPARATOR">=</xliff:g>Sarajevo<xliff:g id="TIMEZONE">|Europe/Sarajevo</xliff:g>"</string>
+    <string name="C192" msgid="1416880359034236663">"<xliff:g id="SEPARATOR">=</xliff:g>Simferopol<xliff:g id="TIMEZONE">|Europe/Simferopol</xliff:g>"</string>
+    <string name="C193" msgid="4639373771601474967">"<xliff:g id="SEPARATOR">=</xliff:g>Skoplje<xliff:g id="TIMEZONE">|Europe/Skopje</xliff:g>"</string>
+    <string name="C194" msgid="4008819631066984591">"<xliff:g id="SEPARATOR">=</xliff:g>Sofija<xliff:g id="TIMEZONE">|Europe/Sofia</xliff:g>"</string>
+    <string name="C195" msgid="6936101855361464954">"<xliff:g id="SEPARATOR">=</xliff:g>Štokholm<xliff:g id="TIMEZONE">|Europe/Stockholm</xliff:g>"</string>
+    <string name="C196" msgid="6845595341045260631">"<xliff:g id="SEPARATOR">=</xliff:g>Tallin<xliff:g id="TIMEZONE">|Europe/Tallinn</xliff:g>"</string>
+    <string name="C197" msgid="2200341923401640765">"<xliff:g id="SEPARATOR">=</xliff:g>Vatikan<xliff:g id="TIMEZONE">|Europe/Vatican</xliff:g>"</string>
+    <string name="C198" msgid="3104432830681695782">"<xliff:g id="SEPARATOR">=</xliff:g>Beč<xliff:g id="TIMEZONE">|Europe/Vienna</xliff:g>"</string>
+    <string name="C199" msgid="1622823742072233091">"<xliff:g id="SEPARATOR">=</xliff:g>Viljnus<xliff:g id="TIMEZONE">|Europe/Vilnius</xliff:g>"</string>
+    <string name="C200" msgid="6181652506383585123">"<xliff:g id="SEPARATOR">=</xliff:g>Varšava<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C201" msgid="5026927396527258914">"<xliff:g id="SEPARATOR">=</xliff:g>Zagreb<xliff:g id="TIMEZONE">|Europe/Zagreb</xliff:g>"</string>
+    <string name="C202" msgid="7479245034393288391">"<xliff:g id="SEPARATOR">=</xliff:g>Cirih<xliff:g id="TIMEZONE">|Europe/Zurich</xliff:g>"</string>
+    <string name="C203" msgid="1651234331866937237">"<xliff:g id="SEPARATOR">=</xliff:g>Antananarivo<xliff:g id="TIMEZONE">|Indian/Antananarivo</xliff:g>"</string>
+    <string name="C204" msgid="3101091022126098393">"<xliff:g id="SEPARATOR">=</xliff:g>Maldivi<xliff:g id="TIMEZONE">|Indian/Maldives</xliff:g>"</string>
+    <string name="C205" msgid="9173530407684443044">"<xliff:g id="SEPARATOR">=</xliff:g>Mauricijus<xliff:g id="TIMEZONE">|Indian/Mauritius</xliff:g>"</string>
+    <string name="C206" msgid="7294622489478378014">"<xliff:g id="SEPARATOR">=</xliff:g>Auckland<xliff:g id="TIMEZONE">|Pacific/Auckland</xliff:g>"</string>
+    <string name="C207" msgid="6369257832191627783">"<xliff:g id="SEPARATOR">=</xliff:g>Fidži<xliff:g id="TIMEZONE">|Pacific/Fiji</xliff:g>"</string>
+    <string name="C208" msgid="1022999101729302391">"<xliff:g id="SEPARATOR">=</xliff:g>Guam<xliff:g id="TIMEZONE">|Pacific/Guam</xliff:g>"</string>
+    <string name="C209" msgid="8326714755257287010">"<xliff:g id="SEPARATOR">=</xliff:g>Honolulu<xliff:g id="TIMEZONE">|Pacific/Honolulu</xliff:g>"</string>
+    <string name="C210" msgid="4118975261202718577">"<xliff:g id="SEPARATOR">=</xliff:g>Kiritimati<xliff:g id="TIMEZONE">|Pacific/Kiritimati</xliff:g>"</string>
+    <string name="C211" msgid="6016485615657297427">"<xliff:g id="SEPARATOR">=</xliff:g>Noumea<xliff:g id="TIMEZONE">|Pacific/Noumea</xliff:g>"</string>
+    <string name="C214" msgid="5230836436291372485">"<xliff:g id="SEPARATOR">=</xliff:g>Antigua<xliff:g id="TIMEZONE">|America/Antigua</xliff:g>"</string>
+    <string name="C215" msgid="9104600827236874744">"<xliff:g id="SEPARATOR">=</xliff:g>Austin<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C216" msgid="1919768646168928906">"<xliff:g id="SEPARATOR">=</xliff:g>Boston<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C217" msgid="4879725034214879629">"<xliff:g id="SEPARATOR">=</xliff:g>Calgary<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C218" msgid="5884212032925236157">"<xliff:g id="SEPARATOR">=</xliff:g>Columbus<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C219" msgid="2081823206177849440">"<xliff:g id="SEPARATOR">=</xliff:g>Dallas<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C220" msgid="6453910991331509621">"<xliff:g id="SEPARATOR">=</xliff:g>Knoxville<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C221" msgid="8383807404322146544">"<xliff:g id="SEPARATOR">=</xliff:g>Memphis<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C222" msgid="3700668026644596138">"<xliff:g id="SEPARATOR">=</xliff:g>Miami<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C223" msgid="221323185158028534">"<xliff:g id="SEPARATOR">=</xliff:g>Minneapolis<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C224" msgid="5283127526588257314">"<xliff:g id="SEPARATOR">=</xliff:g>Ottawa<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C225" msgid="2397752406722350262">"<xliff:g id="SEPARATOR">=</xliff:g>Philadelphia<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C226" msgid="9121074377966278110">"<xliff:g id="SEPARATOR">=</xliff:g>Portland<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C227" msgid="5652209241017010001">"<xliff:g id="SEPARATOR">=</xliff:g>San Diego<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C228" msgid="4215672329797580482">"<xliff:g id="SEPARATOR">=</xliff:g>San Francisco<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C229" msgid="4196312467437357156">"<xliff:g id="SEPARATOR">=</xliff:g>Salt Lake City<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C230" msgid="5521643115321121383">"<xliff:g id="SEPARATOR">=</xliff:g>San Jose<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C231" msgid="19294357270942004">"<xliff:g id="SEPARATOR">=</xliff:g>San Salvador<xliff:g id="TIMEZONE">|America/Guatemala</xliff:g>"</string>
+    <string name="C232" msgid="4714655032274833316">"<xliff:g id="SEPARATOR">=</xliff:g>Seattle<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C233" msgid="7162834873553109876">"<xliff:g id="SEPARATOR">=</xliff:g>St. Louis<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C234" msgid="8431913494781960891">"<xliff:g id="SEPARATOR">=</xliff:g>Washington D.C.<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C235" msgid="8650421942456856419">"<xliff:g id="SEPARATOR">=</xliff:g>Houston<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C236" msgid="3687627401939103862">"<xliff:g id="SEPARATOR">=</xliff:g>San Antonio<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C237" msgid="4443158977093108877">"<xliff:g id="SEPARATOR">=</xliff:g>Jacksonville<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C238" msgid="7416660474443881822">"<xliff:g id="SEPARATOR">=</xliff:g>Baltimore<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C239" msgid="4602819453157356596">"<xliff:g id="SEPARATOR">=</xliff:g>Nashville<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C240" msgid="6474976205162582188">"<xliff:g id="SEPARATOR">=</xliff:g>Milwaukee<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C241" msgid="9133192521877174743">"<xliff:g id="SEPARATOR">=</xliff:g>Oklahoma City<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C242" msgid="4837450655035932235">"<xliff:g id="SEPARATOR">=</xliff:g>Las Vegas<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C243" msgid="8140503787735683522">"<xliff:g id="SEPARATOR">=</xliff:g>Albuquerque<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C244" msgid="5425441385595386539">"<xliff:g id="SEPARATOR">=</xliff:g>Tucson<xliff:g id="TIMEZONE">|MST</xliff:g>"</string>
+    <string name="C245" msgid="2117808251938937801">"<xliff:g id="SEPARATOR">=</xliff:g>Sacramento<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C246" msgid="3092246848082816772">"<xliff:g id="SEPARATOR">=</xliff:g>Atlanta<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C247" msgid="8206866466240263364">"<xliff:g id="SEPARATOR">=</xliff:g>Cleveland<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C248" msgid="2640187332546735575">"<xliff:g id="SEPARATOR">=</xliff:g>New Orleans<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C249" msgid="2891345755858261436">"<xliff:g id="SEPARATOR">=</xliff:g>Tampa<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C250" msgid="820338627695297018">"<xliff:g id="SEPARATOR">=</xliff:g>Pittsburgh<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C251" msgid="5944336862095193572">"<xliff:g id="SEPARATOR">=</xliff:g>Cincinnati<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C252" msgid="4879366628092590554">"<xliff:g id="SEPARATOR">=</xliff:g>Mountain View<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C253" msgid="131023875763265059">"<xliff:g id="SEPARATOR">=</xliff:g>Reno<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C254" msgid="6114708580340716772">"<xliff:g id="SEPARATOR">=</xliff:g>Black Rock City<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C255" msgid="7954132426931661492">"<xliff:g id="SEPARATOR">=</xliff:g>Doha<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C256" msgid="4677098546257306673">"<xliff:g id="SEPARATOR">=</xliff:g>Peking<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C257" msgid="6859408162854724420">"<xliff:g id="SEPARATOR">=</xliff:g>Mumbai<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C258" msgid="4883343467599097650">"<xliff:g id="SEPARATOR">=</xliff:g>Delhi<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C259" msgid="5562442240689501324">"<xliff:g id="SEPARATOR">=</xliff:g>Osaka<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Tokyo</xliff:g>"</string>
+    <string name="C260" msgid="8364102554400427814">"<xliff:g id="SEPARATOR">=</xliff:g>Lahore<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C261" msgid="4120312655526126931">"<xliff:g id="SEPARATOR">=</xliff:g>Sana<xliff:g id="TIMEZONE">|Asia/Riyadh</xliff:g>"</string>
+    <string name="C262" msgid="5548180151889833">"<xliff:g id="SEPARATOR">=</xliff:g>Barselona<xliff:g id="TIMEZONE">|Europe/Madrid</xliff:g>"</string>
+    <string name="C263" msgid="2667061188896159784">"<xliff:g id="SEPARATOR">=</xliff:g>Minhen<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C264" msgid="2183960913782375290">"<xliff:g id="SEPARATOR">=</xliff:g>Milano<xliff:g id="TIMEZONE">|Europe/Rome</xliff:g>"</string>
+    <string name="C265" msgid="7302072801871420825">"<xliff:g id="SEPARATOR">=</xliff:g>Frankfurt<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C266" msgid="2043638131940526010">"<xliff:g id="SEPARATOR">=</xliff:g>Hanoj<xliff:g id="TIMEZONE">|Asia/Bangkok</xliff:g>"</string>
+    <string name="C267" msgid="2210484655793571387">"<xliff:g id="SEPARATOR">=</xliff:g>Ankara<xliff:g id="TIMEZONE">|Europe/Istanbul</xliff:g>"</string>
+    <string name="C268" msgid="263106973500029909">"<xliff:g id="SEPARATOR">=</xliff:g>Bangalore<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C269" msgid="6541694468583591229">"<xliff:g id="SEPARATOR">=</xliff:g>Brazilija<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C270" msgid="1314079881051130603">"<xliff:g id="SEPARATOR">=</xliff:g>Cape Town<xliff:g id="TIMEZONE">|Africa/Johannesburg</xliff:g>"</string>
+    <string name="C271" msgid="8640235215580011665">"<xliff:g id="SEPARATOR">=</xliff:g>Islamabad<xliff:g id="TIMEZONE">|Asia/Karachi</xliff:g>"</string>
+    <string name="C272" msgid="1609536549681428971">"<xliff:g id="SEPARATOR">=</xliff:g>Rio de Žaneiro<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C273" msgid="7079941149646181981">"<xliff:g id="SEPARATOR">=</xliff:g>Ann Arbor<xliff:g id="TIMEZONE">|America/Detroit</xliff:g>"</string>
+    <string name="C274" msgid="8459573593923702400">"<xliff:g id="SEPARATOR">=</xliff:g>Boulder<xliff:g id="TIMEZONE">|America/Denver</xliff:g>"</string>
+    <string name="C275" msgid="6089570009772695384">"<xliff:g id="SEPARATOR">=</xliff:g>Cambridge<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C276" msgid="8770778158932656740">"<xliff:g id="SEPARATOR">=</xliff:g>Kirkland<xliff:g id="TIMEZONE">|America/Los_Angeles</xliff:g>"</string>
+    <string name="C277" msgid="3027642546928363284">"<xliff:g id="SEPARATOR">=</xliff:g>Madison<xliff:g id="TIMEZONE">|America/Chicago</xliff:g>"</string>
+    <string name="C278" msgid="2380762577096499707">"<xliff:g id="SEPARATOR">=</xliff:g>Guangzou<xliff:g id="PHONETIC">:</xliff:g><xliff:g id="TIMEZONE">|Asia/Shanghai</xliff:g>"</string>
+    <string name="C279" msgid="8894272318704876379">"<xliff:g id="SEPARATOR">=</xliff:g>Hajderabad<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C280" msgid="7678401703785036372">"<xliff:g id="SEPARATOR">=</xliff:g>Reston<xliff:g id="TIMEZONE">|America/New_York</xliff:g>"</string>
+    <string name="C281" msgid="8023528134904066052">"<xliff:g id="SEPARATOR">=</xliff:g>Belo Horizonte<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C282" msgid="6695477038758559199">"<xliff:g id="SEPARATOR">=</xliff:g>Santjago<xliff:g id="TIMEZONE">|America/Santiago</xliff:g>"</string>
+    <string name="C283" msgid="7769787200879321206">"<xliff:g id="SEPARATOR">=</xliff:g>Monrovija<xliff:g id="TIMEZONE">|Africa/Monrovia</xliff:g>"</string>
+    <string name="C284" msgid="6968458422900478829">"<xliff:g id="SEPARATOR">=</xliff:g>Kolombo<xliff:g id="TIMEZONE">|Asia/Colombo</xliff:g>"</string>
+    <string name="C285" msgid="1141404871109476705">"<xliff:g id="SEPARATOR">=</xliff:g>Chihuahua<xliff:g id="TIMEZONE">|America/Chihuahua</xliff:g>"</string>
+    <string name="C286" msgid="4996225818359904740">"<xliff:g id="SEPARATOR">=</xliff:g>Salvador<xliff:g id="TIMEZONE">|America/Sao_Paulo</xliff:g>"</string>
+    <string name="C287" msgid="1988559263618010310">"<xliff:g id="SEPARATOR">=</xliff:g>Gurgaon<xliff:g id="TIMEZONE">|Asia/Kolkata</xliff:g>"</string>
+    <string name="C288" msgid="852288766460325989">"<xliff:g id="SEPARATOR">=</xliff:g>Manchester<xliff:g id="TIMEZONE">|Europe/London</xliff:g>"</string>
+    <string name="C290" msgid="9191944922972784727">"<xliff:g id="SEPARATOR">=</xliff:g>St. Petersburg<xliff:g id="TIMEZONE">|Europe/Moscow</xliff:g>"</string>
+    <string name="C291" msgid="4662360206594986867">"<xliff:g id="SEPARATOR">=</xliff:g>Krakov<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C292" msgid="3704362015612990315">"<xliff:g id="SEPARATOR">=</xliff:g>Vroclav<xliff:g id="TIMEZONE">|Europe/Warsaw</xliff:g>"</string>
+    <string name="C293" msgid="3807981967850386200">"<xliff:g id="SEPARATOR">=</xliff:g>Hamburg<xliff:g id="TIMEZONE">|Europe/Berlin</xliff:g>"</string>
+    <string name="C294" msgid="2800056634746552933">"<xliff:g id="SEPARATOR">=</xliff:g>Oulu<xliff:g id="TIMEZONE">|Europe/Bucharest</xliff:g>"</string>
+    <string name="C295" msgid="7855357204471157922">"<xliff:g id="SEPARATOR">=</xliff:g>Haifa<xliff:g id="TIMEZONE">|Asia/Jerusalem</xliff:g>"</string>
+    <string name="C296" msgid="2834361512883853579">"<xliff:g id="SEPARATOR">=</xliff:g>San Juan<xliff:g id="TIMEZONE">|America/Puerto_Rico</xliff:g>"</string>
+    <string name="C297" msgid="5314407834713913608">"<xliff:g id="SEPARATOR">=</xliff:g>Tegusigalpa<xliff:g id="TIMEZONE">|America/Tegucigalpa</xliff:g>"</string>
+    <string name="C298" msgid="4186340979527221275">"<xliff:g id="SEPARATOR">=</xliff:g>Paramaribo<xliff:g id="TIMEZONE">|America/Paramaribo</xliff:g>"</string>
+    <string name="C299" msgid="5688169950851674667">"<xliff:g id="SEPARATOR">=</xliff:g>Kito<xliff:g id="TIMEZONE">|America/Panama</xliff:g>"</string>
+    <string name="C300" msgid="7351753589989414696">"LJ<xliff:g id="SEPARATOR">=</xliff:g>Ljubljana<xliff:g id="TIMEZONE">|Europe/Ljubljana</xliff:g>"</string>
+    <string name="C301" msgid="9089921329206815602">"A<xliff:g id="SEPARATOR">=</xliff:g>Ašgabat<xliff:g id="TIMEZONE">|Asia/Ashgabat</xliff:g>"</string>
+    <string name="C302" msgid="6471051311513517449">"A<xliff:g id="SEPARATOR">=</xliff:g>Asmara<xliff:g id="TIMEZONE">|Africa/Asmara</xliff:g>"</string>
+    <string name="C303" msgid="6208957436062127281">"B<xliff:g id="SEPARATOR">=</xliff:g>Bandar Seri Begawan<xliff:g id="TIMEZONE">|Asia/Brunei</xliff:g>"</string>
+    <string name="C304" msgid="7757188637892125245">"B<xliff:g id="SEPARATOR">=</xliff:g>Bangui<xliff:g id="TIMEZONE">|Africa/Bangui</xliff:g>"</string>
+    <string name="C305" msgid="5538312768539249335">"B<xliff:g id="SEPARATOR">=</xliff:g>Banjul<xliff:g id="TIMEZONE">|Africa/Banjul</xliff:g>"</string>
+    <string name="C306" msgid="6400938736119754675">"B<xliff:g id="SEPARATOR">=</xliff:g>Biškek<xliff:g id="TIMEZONE">|Asia/Bishkek</xliff:g>"</string>
+    <string name="C307" msgid="1169132195117591472">"B<xliff:g id="SEPARATOR">=</xliff:g>Bissau<xliff:g id="TIMEZONE">|Africa/Bissau</xliff:g>"</string>
+    <string name="C308" msgid="7704965635342439141">"B<xliff:g id="SEPARATOR">=</xliff:g>Bujumbura<xliff:g id="TIMEZONE">|Africa/Bujumbura</xliff:g>"</string>
+    <string name="C309" msgid="1522235235310763925">"D<xliff:g id="SEPARATOR">=</xliff:g>Dili<xliff:g id="TIMEZONE">|Asia/Dili</xliff:g>"</string>
+    <string name="C310" msgid="8666508463588411257">"D<xliff:g id="SEPARATOR">=</xliff:g>Dušanbe<xliff:g id="TIMEZONE">|Asia/Dushanbe</xliff:g>"</string>
+    <string name="C311" msgid="5940486195605635031">"F<xliff:g id="SEPARATOR">=</xliff:g>Funafuti<xliff:g id="TIMEZONE">|Pacific/Funafuti</xliff:g>"</string>
+    <string name="C312" msgid="1714210141256903683">"H<xliff:g id="SEPARATOR">=</xliff:g>Honiara<xliff:g id="TIMEZONE">|Pacific/Guadalcanal</xliff:g>"</string>
+    <string name="C313" msgid="8390229571948311411">"Dž<xliff:g id="SEPARATOR">=</xliff:g>Džuba<xliff:g id="TIMEZONE">|Africa/Juba</xliff:g>"</string>
+    <string name="C314" msgid="3840011425345102604">"K<xliff:g id="SEPARATOR">=</xliff:g>Kingstown<xliff:g id="TIMEZONE">|America/St_Vincent</xliff:g>"</string>
+    <string name="C315" msgid="8962557999110557329">"L<xliff:g id="SEPARATOR">=</xliff:g>Libreville<xliff:g id="TIMEZONE">|Africa/Libreville</xliff:g>"</string>
+    <string name="C316" msgid="3674113287320887951">"L<xliff:g id="SEPARATOR">=</xliff:g>Lomé<xliff:g id="TIMEZONE">|Africa/Lome</xliff:g>"</string>
+    <string name="C317" msgid="4818049429422081055">"L<xliff:g id="SEPARATOR">=</xliff:g>Luanda<xliff:g id="TIMEZONE">|Africa/Luanda</xliff:g>"</string>
+    <string name="C318" msgid="3814107319819817789">"L<xliff:g id="SEPARATOR">=</xliff:g>Lusaka<xliff:g id="TIMEZONE">|Africa/Lusaka</xliff:g>"</string>
+    <string name="C319" msgid="5757039321992317631">"M<xliff:g id="SEPARATOR">=</xliff:g>Majuro<xliff:g id="TIMEZONE">|Pacific/Majuro</xliff:g>"</string>
+    <string name="C320" msgid="8334348266391215583">"M<xliff:g id="SEPARATOR">=</xliff:g>Malabo<xliff:g id="TIMEZONE">|Africa/Malabo</xliff:g>"</string>
+    <string name="C321" msgid="5401323973667971972">"M<xliff:g id="SEPARATOR">=</xliff:g>Maputo<xliff:g id="TIMEZONE">|Africa/Maputo</xliff:g>"</string>
+    <string name="C322" msgid="67637052310417975">"M<xliff:g id="SEPARATOR">=</xliff:g>Mbabane<xliff:g id="TIMEZONE">|Africa/Mbabane</xliff:g>"</string>
+    <string name="C323" msgid="4500721332684955521">"M<xliff:g id="SEPARATOR">=</xliff:g>Moroni<xliff:g id="TIMEZONE">|Indian/Comoro</xliff:g>"</string>
+    <string name="C324" msgid="1741927819842539260">"N<xliff:g id="SEPARATOR">=</xliff:g>N\'Djamena<xliff:g id="TIMEZONE">|Africa/Ndjamena</xliff:g>"</string>
+    <string name="C325" msgid="8771905307322194055">"N<xliff:g id="SEPARATOR">=</xliff:g>Ngerulmud<xliff:g id="TIMEZONE">|Pacific/Palau</xliff:g>"</string>
+    <string name="C326" msgid="2389198042593603472">"N<xliff:g id="SEPARATOR">=</xliff:g>Niamey<xliff:g id="TIMEZONE">|Africa/Niamey</xliff:g>"</string>
+    <string name="C327" msgid="5317479895686981912">"N<xliff:g id="SEPARATOR">=</xliff:g>Nikozija<xliff:g id="TIMEZONE">|Europe/Nicosia</xliff:g>"</string>
+    <string name="C328" msgid="6416405203954996861">"N<xliff:g id="SEPARATOR">=</xliff:g>Nouakchott<xliff:g id="TIMEZONE">|Africa/Nouakchott</xliff:g>"</string>
+    <string name="C329" msgid="6876960940903095843">"N<xliff:g id="SEPARATOR">=</xliff:g>Nuku\'alofa<xliff:g id="TIMEZONE">|Pacific/Tongatapu</xliff:g>"</string>
+    <string name="C330" msgid="1572294706542426161">"O<xliff:g id="SEPARATOR">=</xliff:g>Ouagadougou<xliff:g id="TIMEZONE">|Africa/Ouagadougou</xliff:g>"</string>
+    <string name="C331" msgid="2607492003890117689">"P<xliff:g id="SEPARATOR">=</xliff:g>Palikir<xliff:g id="TIMEZONE">|Pacific/Noumea</xliff:g>"</string>
+    <string name="C332" msgid="8349533418456323370">"P<xliff:g id="SEPARATOR">=</xliff:g>Philipsburg<xliff:g id="TIMEZONE">|America/Lower_Princes</xliff:g>"</string>
+    <string name="C333" msgid="2842640664018042568">"P<xliff:g id="SEPARATOR">=</xliff:g>Podgorica<xliff:g id="TIMEZONE">|Europe/Podgorica</xliff:g>"</string>
+    <string name="C334" msgid="3310146581437635671">"P<xliff:g id="SEPARATOR">=</xliff:g>Port Moresby<xliff:g id="TIMEZONE">|Pacific/Palau</xliff:g>"</string>
+    <string name="C335" msgid="3317158262102352303">"P<xliff:g id="SEPARATOR">=</xliff:g>Port Vila<xliff:g id="TIMEZONE">|Pacific/Efate</xliff:g>"</string>
+    <string name="C336" msgid="3810072761869903472">"P<xliff:g id="SEPARATOR">=</xliff:g>Porto-Novo<xliff:g id="TIMEZONE">|Africa/Porto-Novo</xliff:g>"</string>
+    <string name="C337" msgid="3412269218104112252">"P<xliff:g id="SEPARATOR">=</xliff:g>Priština<xliff:g id="TIMEZONE">|Europe/Belgrade</xliff:g>"</string>
+    <string name="C338" msgid="6151841959824325885">"R<xliff:g id="SEPARATOR">=</xliff:g>Roseau<xliff:g id="TIMEZONE">|America/Dominica</xliff:g>"</string>
+    <string name="C339" msgid="8909994815975646525">"T<xliff:g id="SEPARATOR">=</xliff:g>Taškent<xliff:g id="TIMEZONE">|Asia/Tashkent</xliff:g>"</string>
+    <string name="C340" msgid="415479723070879485">"T<xliff:g id="SEPARATOR">=</xliff:g>Tbilisi<xliff:g id="TIMEZONE">|Asia/Tbilisi</xliff:g>"</string>
+    <string name="C341" msgid="2299478430610154042">"T<xliff:g id="SEPARATOR">=</xliff:g>Thimphu<xliff:g id="TIMEZONE">|Asia/Thimphu</xliff:g>"</string>
+    <string name="C342" msgid="7997617194333170685">"T<xliff:g id="SEPARATOR">=</xliff:g>Tirana<xliff:g id="TIMEZONE">|Europe/Tirane</xliff:g>"</string>
+    <string name="C343" msgid="622805851462854910">"V<xliff:g id="SEPARATOR">=</xliff:g>Vaduz<xliff:g id="TIMEZONE">|Europe/Vaduz</xliff:g>"</string>
+    <string name="C344" msgid="7629820826386244509">"V<xliff:g id="SEPARATOR">=</xliff:g>Vientiane<xliff:g id="TIMEZONE">|Asia/Vientiane</xliff:g>"</string>
+    <string name="C345" msgid="1881198350378158072">"W<xliff:g id="SEPARATOR">=</xliff:g>Windhoek<xliff:g id="TIMEZONE">|Africa/Windhoek</xliff:g>"</string>
+    <string name="C346" msgid="2947674392768816097">"Y<xliff:g id="SEPARATOR">=</xliff:g>Yaoundé<xliff:g id="TIMEZONE">|Africa/Douala</xliff:g>"</string>
+    <string name="C347" msgid="6291282205599716861">"Y<xliff:g id="SEPARATOR">=</xliff:g>Yaren<xliff:g id="TIMEZONE">|Pacific/Nauru</xliff:g>"</string>
+    <string name="C348" msgid="8462071023392592539">"E<xliff:g id="SEPARATOR">=</xliff:g>Erevan<xliff:g id="TIMEZONE">|Asia/Yerevan</xliff:g>"</string>
+</resources>
diff --git a/res/values-bs-rBA/strings.xml b/res/values-bs-rBA/strings.xml
new file mode 100644
index 0000000..004ad95
--- /dev/null
+++ b/res/values-bs-rBA/strings.xml
@@ -0,0 +1,370 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--  Copyright (C) 2007 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+ -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="app_label" msgid="6674495003718166674">"Sat"</string>
+    <string name="delete_alarm" msgid="3457780990646206817">"Izbriši alarm"</string>
+    <string name="label" msgid="162189613902857319">"Oznaka"</string>
+    <string name="default_label" msgid="5590025289805630372">"Alarm"</string>
+    <string name="alarm_vibrate" msgid="3476686921490362230">"Vibracija"</string>
+    <string name="alarm_repeat" msgid="7242985466344233206">"Ponovi"</string>
+    <string name="alert" msgid="6506982899651975645">"Melodija zvona alarma"</string>
+    <string name="default_alarm_ringtone_title" msgid="2916376768509623643">"Zadani zvuk alarma"</string>
+    <string name="default_timer_ringtone_title" msgid="1370799536406862317">"Tajmer je istekao"</string>
+    <string name="alarm_tomorrow" msgid="131356848787643420">"Sutra"</string>
+    <string name="alarm_today" msgid="7873594221106531654">"Danas"</string>
+    <string name="alarm_alert_dismiss_text" msgid="4942914605480888820">"Odbaci"</string>
+    <string name="alarm_alert_dismiss_now_text" msgid="7327972388636305792">"Odbaci sada"</string>
+    <string name="alarm_missed_title" msgid="3828345099754063392">"Propušteni alarm"</string>
+    <string name="alarm_missed_text" msgid="6585658367289194023">"<xliff:g id="ALARM_TIME">%s</xliff:g> - <xliff:g id="ALARM_LABEL">%s</xliff:g>"</string>
+    <string name="alarm_alert_snoozed_text" msgid="7064642998528766113">"Odloženo"</string>
+    <plurals name="alarm_alert_snooze_duration" formatted="false" msgid="7844300009062867865">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> min.</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> min.</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> min.</item>
+    </plurals>
+    <string name="alarm_alert_off_text" msgid="4472073417593915002">"Alarm isključen"</string>
+    <string name="alarm_alert_snooze_text" msgid="1774416052207651584">"Odloži"</string>
+    <plurals name="alarm_alert_snooze_set" formatted="false" msgid="3212729193036041768">
+      <item quantity="one">Odlaganje na <xliff:g id="MINUTES">%d</xliff:g> minutu.</item>
+      <item quantity="few">Odlaganje na <xliff:g id="MINUTES">%d</xliff:g> minute.</item>
+      <item quantity="other">Odlaganje na <xliff:g id="MINUTES">%d</xliff:g> minuta.</item>
+    </plurals>
+    <string name="alarm_alert_snooze_until" msgid="6958013659168344550">"Odlaganje do <xliff:g id="TIME">%s</xliff:g>"</string>
+    <string name="alarm_alert_predismiss_title" msgid="5723945586913705445">"Predstojeći alarm"</string>
+    <string name="missed_alarm_has_been_deleted" msgid="5295473204045979335">"Propušteni alarm je izbrisan"</string>
+    <string name="timer_notifications_less_min" msgid="5481375048976427255">"Preostalo je manje od minute"</string>
+    <string name="timer_notifications_hours" msgid="1613266446037145138">"<xliff:g id="HOURS">%1$s</xliff:g><xliff:g id="REMAINING"> %3$s</xliff:g>"</string>
+    <string name="timer_notifications_minutes" msgid="8543138714519498893">"<xliff:g id="MINUTES">%2$s</xliff:g><xliff:g id="REMAINING"> %3$s</xliff:g>"</string>
+    <string name="timer_notifications_hours_minutes" msgid="4301167788642025702">"Preostalo <xliff:g id="HOURS">%1$s</xliff:g> <xliff:g id="MINUTES">%2$s</xliff:g>"</string>
+    <string name="timer_remaining_single" msgid="6782851171906765864">"preostalo"</string>
+    <string name="timer_remaining_multiple" msgid="6052775962092160851">"preostalo"</string>
+  <string-array name="alarm_set">
+    <item msgid="6450913786084215050">"Alarm postavljen za manje od 1 minute od sada."</item>
+    <item msgid="6002066367368421848">"Alarm postavljen za <xliff:g id="DAYS">%1$s</xliff:g> od sada."</item>
+    <item msgid="8824719306247973774">"Alarm postavljen za <xliff:g id="HOURS">%2$s</xliff:g> od sada."</item>
+    <item msgid="8182406852935468862">"Alarm postavljen za <xliff:g id="DAYS">%1$s</xliff:g> i <xliff:g id="HOURS">%2$s</xliff:g> od sada."</item>
+    <item msgid="2532279224777213194">"Alarm postavljen za <xliff:g id="MINUTES">%3$s</xliff:g> od sada."</item>
+    <item msgid="5936557894247187717">"Alarm postavljen za <xliff:g id="DAYS">%1$s</xliff:g> i <xliff:g id="MINUTES">%3$s</xliff:g> od sada."</item>
+    <item msgid="9115697840826129603">"Alarm postavljen za <xliff:g id="HOURS">%2$s</xliff:g> i <xliff:g id="MINUTES">%3$s</xliff:g> od sada."</item>
+    <item msgid="2332583385137381060">"Alarm postavljen za <xliff:g id="DAYS">%1$s</xliff:g>, <xliff:g id="HOURS">%2$s</xliff:g> i <xliff:g id="MINUTES">%3$s</xliff:g> od sada."</item>
+  </string-array>
+    <plurals name="days" formatted="false" msgid="3706846447285206235">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> dan</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> dana</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> dana</item>
+    </plurals>
+    <plurals name="hours" formatted="false" msgid="3871283109767171655">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> sat</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> sata</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sati</item>
+    </plurals>
+    <plurals name="minutes" formatted="false" msgid="5484431721696058697">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> minute</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+    </plurals>
+    <string name="every_day" msgid="4100909974923444602">"Svakog dana"</string>
+    <string name="day_concat" msgid="971998564991636532">", "</string>
+    <string name="loading_widget" msgid="5306242862476796500">"Učitavanje..."</string>
+    <string name="analog_gadget" msgid="1670505720837152766">"Analogni sat"</string>
+    <string name="digital_gadget" msgid="2326954556720571358">"Digitalni sat"</string>
+    <string name="settings" msgid="5849739030579520686">"Postavke"</string>
+    <string name="snooze_duration_title" msgid="1097309861110780483">"Dužina odlaganja"</string>
+    <plurals name="snooze_duration" formatted="false" msgid="3112918131095248271">
+      <item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+      <item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> minute</item>
+      <item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> minuta</item>
+    </plurals>
+    <plurals name="snooze_picker_label" formatted="false" msgid="322739253661747732">
+      <item quantity="one">minuta</item>
+      <item quantity="few">minute</item>
+      <item quantity="other">minuta</item>
+    </plurals>
+    <string name="crescendo_duration_title" msgid="8606408542726189528">"Postepeno povećavaj jačinu zvuka"</string>
+    <string name="no_crescendo_duration" msgid="383801592865899932">"Isključeno"</string>
+    <string name="crescendo_duration" msgid="6641284876778266541">"Broj sekundi: <xliff:g id="NUMBER">%s</xliff:g>"</string>
+    <string name="crescendo_picker_label" msgid="7758024047003091056">"sekundi"</string>
+    <string name="auto_silence_title" msgid="2012754009554434544">"Utišaj nakon"</string>
+    <plurals name="auto_silence_summary" formatted="false" msgid="6579258788774360396">
+      <item quantity="one"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> minuta</item>
+      <item quantity="few"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> minute</item>
+      <item quantity="other"><xliff:g id="FORMATTED_NUMBER">%s</xliff:g> minuta</item>
+    </plurals>
+    <string name="auto_silence_never" msgid="4821982647348750809">"Nikad"</string>
+  <string-array name="auto_silence_entries">
+    <item msgid="3024545954917711306">"1 minuta"</item>
+    <item msgid="5431906692406316549">"5 minuta"</item>
+    <item msgid="7742728812068919959">"10 minuta"</item>
+    <item msgid="2855948657259647629">"15 minuta"</item>
+    <item msgid="6330196381284475079">"20 minuta"</item>
+    <item msgid="7809240121716151904">"25 minuta"</item>
+    <item msgid="4278641338024561333">"Nikad"</item>
+  </string-array>
+    <string name="week_start_title" msgid="4268917518596832096">"Prvi dan sedmice"</string>
+  <string-array name="week_start_entries">
+    <item msgid="9010198173394482639">"subota"</item>
+    <item msgid="3993530639455360921">"nedjelja"</item>
+    <item msgid="8594709368683324282">"ponedjeljak"</item>
+  </string-array>
+    <string name="alarm_volume_title" msgid="8506245173912428522">"Jačina zvuka alarma"</string>
+    <string name="silent_ringtone_title" msgid="6177287302898634765">"Nečujno"</string>
+    <string name="unknown_ringtone_title" msgid="6637522029614550112">"Nepoznato"</string>
+    <string name="alarm_volume_muted" msgid="6658289289695673569">"Zvuk alarma je isključen"</string>
+    <string name="unmute_alarm_volume" msgid="2655009276035357497">"Uključi zvuk"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Zadana melodija alarma je nečujna"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Promijeni"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Uređaj je u potpunosti utišan"</string>
+    <string name="volume_button_setting_title" msgid="6937131248843413357">"Dugmad za jačinu zvuka"</string>
+  <string-array name="volume_button_setting_entries">
+    <item msgid="7972756698723318690">"Odloži"</item>
+    <item msgid="3450979320164769576">"Odbaci"</item>
+    <item msgid="6302517608411378024">"Ne radi ništa"</item>
+  </string-array>
+    <string name="label_description" msgid="8736179296142915727">"Oznaka"</string>
+    <string name="ringtone_description" msgid="7580922112921069925">"Melodija zvona"</string>
+    <string name="menu_alarm" msgid="4772010125376647519">"Alarm"</string>
+    <string name="menu_timer" msgid="6459070074762877114">"Tajmer"</string>
+    <string name="menu_clock" msgid="5612760670606829805">"Sat"</string>
+    <string name="menu_stopwatch" msgid="3396117705293574701">"Štoperica"</string>
+    <string name="button_alarms" msgid="3907838219512538763">"Dodaj alarm"</string>
+    <string name="button_cities" msgid="4555761857494501363">"Gradovi"</string>
+    <string name="menu_item_settings" msgid="1413723516369078665">"Postavke"</string>
+    <string name="menu_item_help" msgid="4570953476186849841">"Pomoć"</string>
+    <string name="menu_item_night_mode" msgid="3486930302245398975">"Noćni način rada"</string>
+    <string name="menu_item_sort_by_gmt_offset" msgid="3120860422682721706">"Sortiraj po vremenu"</string>
+    <string name="menu_item_sort_by_name" msgid="1762931290495104106">"Sortiraj po nazivu"</string>
+    <string name="selected_cities_label" msgid="3607479399424246605">"Odabrani gradovi"</string>
+    <string name="sw_resume_button" msgid="2569360966002022248">"Nastavi"</string>
+    <string name="sw_reset_button" msgid="6616804728322906117">"Poništi"</string>
+    <string name="sw_start_button" msgid="8373422516681242270">"Pokreni"</string>
+    <string name="sw_pause_button" msgid="2422084453454138042">"Pauziraj"</string>
+    <string name="sw_lap_button" msgid="6992264696039004233">"Krug"</string>
+    <string name="sw_share_button" msgid="4478648110382859382">"Podijeli"</string>
+    <string name="hours_label" msgid="3393478155635368097">"h"</string>
+    <string name="minutes_label" msgid="3568098128251438588">"m"</string>
+    <string name="seconds_label" msgid="124655952824003246">"s"</string>
+    <string name="hours_label_description" msgid="8652842524970971830">"sati"</string>
+    <string name="minutes_label_description" msgid="965686733490357796">"minuta"</string>
+    <string name="seconds_label_description" msgid="3821620053141299692">"sekundi"</string>
+    <string name="sw_share_main" msgid="7703563468204234405">"Moje vrijeme je <xliff:g id="TIME">%s</xliff:g>"</string>
+    <string name="sw_share_laps" msgid="614390674795945007">"Vremena krugova:"</string>
+    <string name="sw_notification_lap_number" msgid="3535420316052647126">"Krug <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <plurals name="Nhours_description" formatted="false" msgid="4539186407746763655">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> sat</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> sata</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> sati</item>
+    </plurals>
+    <plurals name="Nminutes_description" formatted="false" msgid="6373760365221990859">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> minuta</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> minute</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> minuta</item>
+    </plurals>
+    <plurals name="Nseconds_description" formatted="false" msgid="6456500168536594889">
+      <item quantity="one"><xliff:g id="NUMBER">%d</xliff:g> sekunda</item>
+      <item quantity="few"><xliff:g id="NUMBER">%d</xliff:g> sekunde</item>
+      <item quantity="other"><xliff:g id="NUMBER">%d</xliff:g> sekundi</item>
+    </plurals>
+    <string name="timer_add_timer" msgid="862733633862574752">"Dodaj tajmer"</string>
+    <string name="timer_start" msgid="6158486445614356442">"Pokreni"</string>
+    <string name="timer_delete" msgid="8699122001991909302">"Izbriši"</string>
+    <string name="timer_descriptive_delete" msgid="8794915342760383536">"Izbriši <xliff:g id="NUMBER_STRING">%s</xliff:g>"</string>
+    <string name="timer_plus_one" msgid="6631211310420106116">"Dodajte 1 minutu"</string>
+    <string name="timer_plus_1_min" msgid="8645224089494875062">"Dodaj 1 min."</string>
+    <string name="timer_stop" msgid="3361154678667736722">"Zaustavi"</string>
+    <string name="timer_stop_all" msgid="9080780442843034376">"Zaustavi sve tajmere"</string>
+    <string name="timer_reset" msgid="7848424809190171640">"Poništi"</string>
+    <string name="timer_cancel" msgid="3572868404230815644">"Otkaži"</string>
+    <string name="timer_canceled" msgid="7327923392567128060">"Tajmer otkazan"</string>
+    <string name="timer_times_up" msgid="9190440395938519009">"Vrijeme je isteklo"</string>
+    <string name="timer_multi_times_up" msgid="1239104626836080409">"Isteklih tajmera: <xliff:g id="NUM_TIMERS">%d</xliff:g>"</string>
+    <string name="timer_notification_label" msgid="4933184831583137249">"Tajmer"</string>
+    <string name="timer_pause" msgid="3748323712728398743">"Pauziraj"</string>
+    <string name="timer_reset_all" msgid="7530633132757866087">"Poništi sve tajmere"</string>
+  <string-array name="sw_share_strings">
+    <item msgid="842841032273927988">"Ni ptica trkačica nije ovako brza."</item>
+    <item msgid="6332879039890727169">"Uživaj, zasluženo je."</item>
+    <item msgid="815382761274660130">"Androidi su brzi, ali ne kao ti!"</item>
+    <item msgid="7916250650982813737">"Uh."</item>
+    <item msgid="6836603904515182333">"Vrhunsko vrij3m3."</item>
+    <item msgid="7508085100680861631">"Monstruozno brzo."</item>
+    <item msgid="5961245252909589573">"Ovo je bilo brže od munje, hoćemo još jednom?"</item>
+    <item msgid="5211891900854545940">"Idemo ludo, idemo jako."</item>
+    <item msgid="9071353477103826053">"Tebi se baš žuri."</item>
+    <item msgid="3785193933691117181">"Brže od svjetlosti."</item>
+  </string-array>
+    <string name="home_label" msgid="4436139365695453870">"Lokalno vrijeme"</string>
+    <string name="cities_activity_title" msgid="8552462751129256730">"Gradovi"</string>
+    <string name="clock_settings" msgid="8317286807280600391">"Sat"</string>
+    <string name="clock_style" msgid="2265011060429742344">"Stil"</string>
+    <string name="open_date_settings" msgid="7712226973337806152">"Promijeni datum i vrijeme"</string>
+  <string-array name="clock_style_entries">
+    <item msgid="917900462224167608">"Analogni"</item>
+    <item msgid="8483930821046925592">"Digitalni"</item>
+  </string-array>
+    <string name="automatic_home_clock" msgid="6274174710735449252">"Automatski sat s vremenom kod kuće"</string>
+    <string name="automatic_home_clock_summary" msgid="6020476321040807273">"Dok putujete u područje u kojem vrijedi drugo vrijeme, dodajte sat za vrijeme kod kuće"</string>
+    <string name="home_time_zone" msgid="9199730676287974501">"Matična vremenska zona"</string>
+    <string name="home_time_zone_title" msgid="807894493443834624">"Matična vremenska zona"</string>
+    <string name="time_picker_cancel" msgid="7437106489606013077">"Otkaži"</string>
+    <string name="time_picker_set" msgid="331153175471468051">"Uredu"</string>
+    <string name="city_checked" msgid="616847871968019">"Grad <xliff:g id="CITY_NAME">%s</xliff:g> potvrđen"</string>
+    <string name="city_unchecked" msgid="710212932781145918">"Grad <xliff:g id="CITY_NAME">%s</xliff:g> nije potvrđen"</string>
+  <string-array name="timezone_labels">
+    <item msgid="5495601234086197399">"Marshallovi otoci"</item>
+    <item msgid="4196408495909011020">"Otok Midway"</item>
+    <item msgid="1414384194857730006">"Havaji"</item>
+    <item msgid="2687091371581931926">"Aljaska"</item>
+    <item msgid="1922100269679049660">"Pacifičko vrijeme"</item>
+    <item msgid="7156402158716866161">"Tihuana"</item>
+    <item msgid="1144117502254612241">"Arizona"</item>
+    <item msgid="101284182011722637">"Chihuahua"</item>
+    <item msgid="689121094232986897">"Planinsko vrijeme"</item>
+    <item msgid="5445331923942302756">"Centralna Amerika"</item>
+    <item msgid="2749806434052452351">"Centralno vrijeme"</item>
+    <item msgid="3997138870229703753">"Mexico City"</item>
+    <item msgid="5425567073027744888">"Saskatchewan"</item>
+    <item msgid="2877342865396629368">"Bogota"</item>
+    <item msgid="568682398893899670">"Istočno vrijeme"</item>
+    <item msgid="668135984541863866">"Venecuela"</item>
+    <item msgid="3737474220861486223">"Atlantsko vrijeme (Barbados)"</item>
+    <item msgid="6279116051273436870">"Atlantsko vrijeme (Kanada)"</item>
+    <item msgid="8513382867172014244">"Manaus"</item>
+    <item msgid="7776299003105932407">"Santiago"</item>
+    <item msgid="8636989494746218677">"Newfoundland"</item>
+    <item msgid="4402541016410147505">"Brazilija"</item>
+    <item msgid="2251184440733164084">"Buenos Aires"</item>
+    <item msgid="6202926618569004969">"Grenland"</item>
+    <item msgid="2355275037115290628">"Montevideo"</item>
+    <item msgid="1377549694711708945">"Srednje Atlantsko"</item>
+    <item msgid="3457671272126347981">"Azori"</item>
+    <item msgid="3659315141063710840">"Zelenortski otoci"</item>
+    <item msgid="1260941741802367635">"Kazablanka"</item>
+    <item msgid="8275203689687954762">"London, Dablin"</item>
+    <item msgid="5970179539479320905">"Amsterdam, Berlin"</item>
+    <item msgid="5396319478750517962">"Beograd"</item>
+    <item msgid="8688787475056663004">"Brisel"</item>
+    <item msgid="3415827874921681622">"Sarajevo"</item>
+    <item msgid="402008965928320066">"Windhoek"</item>
+    <item msgid="6436942724959275569">"Zapadnoafričko vrijeme"</item>
+    <item msgid="954536568417204026">"Aman, Jordan"</item>
+    <item msgid="8932745482008902551">"Atina, Istanbul"</item>
+    <item msgid="320025725949024510">"Bejrut, Liban"</item>
+    <item msgid="7242083112551905970">"Kairo"</item>
+    <item msgid="7241520146011450419">"Helsinki"</item>
+    <item msgid="2717065017510546526">"Jeruzalem"</item>
+    <item msgid="8698556287741466553">"Minsk"</item>
+    <item msgid="1797598357342084506">"Harare"</item>
+    <item msgid="5169119919905066998">"Bagdad"</item>
+    <item msgid="2615788116201065182">"Moskva"</item>
+    <item msgid="9084354867885584646">"Kuvajt"</item>
+    <item msgid="1351570519986178268">"Najrobi"</item>
+    <item msgid="7094569580635877460">"Teheran"</item>
+    <item msgid="3953138772617909704">"Baku"</item>
+    <item msgid="2868893113598800752">"Tbilisi"</item>
+    <item msgid="7088581865802476373">"Erevan"</item>
+    <item msgid="1941122257623887992">"Dubai"</item>
+    <item msgid="9194797225058249720">"Kabul"</item>
+    <item msgid="6486569254364577332">"Islamabad, Karači"</item>
+    <item msgid="5487724896895412089">"Uralsk"</item>
+    <item msgid="364906869710826982">"Ekaterinburg"</item>
+    <item msgid="2106505051751383358">"Kolkata"</item>
+    <item msgid="6851586621581501447">"Šri Lanka"</item>
+    <item msgid="800438544128213134">"Katmandu"</item>
+    <item msgid="6173621471007643021">"Astana"</item>
+    <item msgid="8645125891971581128">"Jangon"</item>
+    <item msgid="2886407505119737794">"Krasnojarsk"</item>
+    <item msgid="3408222398188107090">"Bangkok"</item>
+    <item msgid="4441612937172851228">"Peking"</item>
+    <item msgid="4936715789028996930">"Hong Kong"</item>
+    <item msgid="4261031143777385525">"Irkutsk"</item>
+    <item msgid="3538060959338191835">"Kuala Lumpur"</item>
+    <item msgid="1438847562643099201">"Perth"</item>
+    <item msgid="3063913827688244383">"Tajpeh"</item>
+    <item msgid="3502757135046564209">"Seul"</item>
+    <item msgid="6107588684519111669">"Tokio, Osaka"</item>
+    <item msgid="4350769099755608471">"Jakutsk"</item>
+    <item msgid="2422707004533526462">"Adelaide"</item>
+    <item msgid="1292192084554134339">"Darwin"</item>
+    <item msgid="1320883699470001716">"Brisbane"</item>
+    <item msgid="5137198806146386527">"Hobart"</item>
+    <item msgid="5920063686933941174">"Sydney, Canberra"</item>
+    <item msgid="615906039696009425">"Vladivostok"</item>
+    <item msgid="7738680449356275374">"Guam"</item>
+    <item msgid="2882915026380778227">"Magadan"</item>
+    <item msgid="8255615641810148152">"Auckland"</item>
+    <item msgid="3027153773466391728">"Fidži"</item>
+    <item msgid="5911600083231840181">"Tonga"</item>
+    <item msgid="5176858645450908751">"Džakarta"</item>
+  </string-array>
+    <string name="alarm_settings" msgid="2947147071388290814">"Alarmi"</string>
+    <string name="timer_service_desc" msgid="2256002649882602433">"Obrađuje radnje iz obavijesti tajmera."</string>
+    <string name="stopwatch_service_desc" msgid="9220132827343760767">"Obrađuje radnje iz obavijesti štoperice."</string>
+    <string name="swn_paused" msgid="6364358842808263589">"Pauzirana"</string>
+    <string name="description_direction_right" msgid="5709209043267548985">"Prevucite desno da odbacite"</string>
+    <string name="description_direction_left" msgid="7448141043674998679">"Prevucite lijevo da odložite"</string>
+    <string name="description_direction_both" msgid="1841309486023845685">"Prevucite lijevo da odložite ili desno da odbacite"</string>
+    <string name="timer_settings" msgid="7955522143086154795">"Tajmeri"</string>
+    <string name="timer_ringtone_title" msgid="7630214935791599619">"Melodija zvona za tajmer"</string>
+    <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibracija za mjerač vremena"</string>
+    <string name="timer_paused" msgid="5941160896040771462">"Tajmer pauziran"</string>
+    <string name="timers_stopped" msgid="3186191253226005149">"Pauziranih tajmera: <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Dodirnite da biste vidjeli tajmere"</string>
+    <string name="timers_in_use" msgid="5570729467344408506">"Tajmeri: <xliff:g id="NUMBER">%d</xliff:g>"</string>
+    <string name="next_timer_notif" msgid="6136454740115613653">"Naredni tajmer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Podešavanje čuvara ekrana"</string>
+    <string name="night_mode_title" msgid="5983813889469616299">"Noćni način rada"</string>
+    <string name="night_mode_summary" msgid="1017350187324162631">"Veoma prigušen ekran (za mračne prostorije)"</string>
+    <string name="expand_alarm" msgid="7392616528943305020">"Proširi alarm"</string>
+    <string name="collapse_alarm" msgid="3561772046433483980">"Skupi alarm"</string>
+    <string name="alarm_undo" msgid="5710042601177655254">"Vrati"</string>
+    <string name="alarm_deleted" msgid="6131529309389084785">"Alarm izbrisan"</string>
+    <string name="world_day_of_week_label" msgid="5911196322328341288">"/ <xliff:g id="LABEL">%s</xliff:g>"</string>
+    <string name="next_alarm_description" msgid="2650244835760747046">"Naredni alarm: <xliff:g id="ALARM_TIME">%s</xliff:g>"</string>
+    <string name="no_alarms" msgid="6429431324842022917">"Nema alarma"</string>
+    <string name="invalid_time" msgid="2782334750243998633">"Nevažeće vrijeme <xliff:g id="INVALID_HOUR">%1$d</xliff:g>:<xliff:g id="INVALID_MINUTES">%2$d</xliff:g> <xliff:g id="INVALID_AMPM">%3$s</xliff:g>"</string>
+    <string name="no_alarm_at" msgid="8140632482969193119">"Nema alarma u <xliff:g id="ALARM_TIME_HOUR">%1$d</xliff:g>:<xliff:g id="ALARM_TIME_MINUTES">%2$d</xliff:g>"</string>
+    <string name="no_scheduled_alarms" msgid="2115420148192753534">"Nema zakazanih alarma"</string>
+    <string name="no_label_specified" msgid="2008482054428460626">"Nije navedena oznaka"</string>
+    <string name="no_alarms_with_label" msgid="6250998794542941665">"Nijedan alarm nema oznaku"</string>
+    <string name="stopwatch_isnt_running" msgid="7147219965448204727">"Štoperica nije pokrenuta"</string>
+    <string name="stopwatch_paused" msgid="2187615623275408601">"Štoperica pauzirana"</string>
+    <string name="stopwatch_reset" msgid="7585914953721021042">"Poništavanje štoperice"</string>
+    <string name="stopwatch_lapped" msgid="5844686448815550482">"Štoperica je izmjerila krug"</string>
+    <string name="stopwatch_started" msgid="7843882246387176304">"Štoperica pokrenuta"</string>
+    <string name="no_alarm_scheduled_for_this_time" msgid="4463069177414482818">"Nema zakazanih alarma za ovo vrijeme"</string>
+    <string name="alarm_is_dismissed" msgid="5509897230565826642">"Alarm za <xliff:g id="ALARM_TIME">%s</xliff:g> odbačen"</string>
+    <string name="alarm_is_set" msgid="5503226382620011088">"Alarm postavljen za <xliff:g id="ALARM_TIME">%s</xliff:g>"</string>
+    <string name="no_timers_exist" msgid="7062019300048831373">"Nema tajmera"</string>
+    <string name="too_many_timers_exist" msgid="6339194231767431627">"Postoji više od jednog tajmera"</string>
+    <string name="timer_does_not_exist" msgid="4457482976523984231">"Tajmer je uklonjen."</string>
+    <string name="timer_created" msgid="4381027137335885547">"Tajmer kreiran"</string>
+    <string name="timer_was_reset" msgid="6495796785185062631">"Tajmer poništen"</string>
+    <string name="timer_deleted" msgid="9110322362460029392">"Tajmer izbrisan"</string>
+    <string name="timer_started" msgid="6715582052946641641">"Tajmer pokrenut"</string>
+    <string name="invalid_timer_length" msgid="3104567893212932487">"Nevažeća dužina tajmera"</string>
+    <string name="no_city_selected" msgid="1007596865203283741">"Nije odabran grad"</string>
+    <string name="the_city_you_specified_is_not_available" msgid="1753597460426454543">"Grad koji ste naveli nije dostupan"</string>
+    <string name="the_city_already_added" msgid="3799050213771793020">"Taj grad je već dodan"</string>
+    <string name="city_added" msgid="1335509457349179514">"<xliff:g id="CITY_NAME">%s</xliff:g> dodan"</string>
+    <string name="city_deleted" msgid="3935141305276867838">"<xliff:g id="CITY_NAME">%s</xliff:g> izbrisan"</string>
+    <string name="alarm_cant_be_dismissed_still_more_than_24_hours_away" msgid="8810520940995307437">"<xliff:g id="ALARM_TIME">%s</xliff:g> alarm se još ne može odbaciti; do njega ima više od 24 sata"</string>
+    <string name="dismiss_alarm" msgid="7204593078688533541">"Odbaci alarm"</string>
+    <string name="pick_alarm_to_dismiss" msgid="5408769235866082896">"Odaberite koji će se alarm odbaciti"</string>
+    <string name="no_firing_alarms" msgid="4986161963178722289">"Nema aktivnih alarma"</string>
+    <string name="alarm_is_snoozed" msgid="7044644119744928846">"Alarm za <xliff:g id="ALARM_TIME">%s</xliff:g> odložen na 10 minuta"</string>
+</resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 18963fc..65e6f40 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Desconegut"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"S\'ha silenciat el volum de l\'alarma"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Activa el so"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"El dispositiu està configurat en silenci total"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Botons de volum"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Posposa"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibració del temporitzador"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Temporitzador en pausa"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> temporitzadors en pausa"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Toca per veure els temporitzadors"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Toca per veure els teus temporitzadors"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> temporitzadors"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Pròxim: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Configuració de l\'estalvi de pantalla"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Configuració de l\'estalvi de pantalla"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Mode nocturn"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Pantalla molt tènue (per a espais foscos)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Amplia l\'alarma"</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 6c669c6..72e6952 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -134,6 +134,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Neznámé"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Hlasitost budíku ztlumena"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Zapnout zvuk"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Výchozí tón budíku je tichý"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Změnit"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Zařízení je nastaveno na úplné ticho"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Tlačítka hlasitosti"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Odložit zvonění"</item>
@@ -331,10 +334,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibrace časovače"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Časovač pozastaven"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Pozastavené časovače: <xliff:g id="NUMBER">%d</xliff:g>"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Dotykem zobrazíte časovače"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Klepnutím zobrazíte časovače"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"Časovače (<xliff:g id="NUMBER">%d</xliff:g>)"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Další časovač: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Nastavení spořiče"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Nastavení spořiče obrazovky"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Noční režim"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Velmi ztlumený jas displeje (pro tmavé místnosti)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Rozbalit budík"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index ff98a7d..7941726 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Ukendt"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarmlyden er slået fra"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Slå lyden til"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Enheden er indstillet til total stilhed"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Lydstyrkeknapper"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Udsætter"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibration for timer"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timeren blev sat på pause"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timere blev sat på pause"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Tryk for at se dine timere"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tryk for at se dine timere"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timere"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Næste timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Indstillinger for Dagdrøm"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Indstillinger for pauseskærm"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nattilstand"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Meget mørk skærm (til mørke rum)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Udvid alarm"</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index a890334..e592096 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Unbekannt"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Wecker stummgeschaltet"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Stummschaltung aufheben"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Gerät ist im Modus \"Lautlos\""</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Lautstärketaste"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Schlummern"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibrationsalarm des Timers"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timer pausiert"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> Timer pausiert"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Zum Ansehen der Timer berühren"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tippen, um Timer abzurufen"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> Timer"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Nächster Timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Daydream-Einstellungen"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Bildschirmschoner-Einstellungen"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nachtmodus"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Stark gedimmtes Display (für dunkle Räume)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Wecker maximieren"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 616983f..2b66299 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Άγνωστο"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Ήχος ξυπνητηριού σε σίγαση"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Κατάργηση σίγασης"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Η σίγαση ορίστηκε ως προεπιλεγμένος ήχος κλήσης"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Αλλαγή"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Η συσκευή έχει τεθεί σε πλήρη σίγαση"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Κουμπιά έντασης"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Αναβολή"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Δόνηση χρονομέτρου"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Χρονόμετρο σε παύση"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> χρονόμετρα σε παύση"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Αγγίξτε για να δείτε τα ξυπνητήρια σας"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Πατήστε για να δείτε τα χρονόμετρα"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> χρονόμετρα"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Επόμενο χρονόμετρο: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Ρυθμίσεις Dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ρυθμίσεις προφύλαξης οθόνης"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Λειτουργία νύχτας"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Πολύ χαμηλή φωτεινότητα οθόνης (για σκοτεινά δωμάτια)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Ανάπτυξη ξυπνητηριού"</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 34449c9..a780c2d 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Unknown"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarm volume muted"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Unmute"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Default alarm ringtone is silent"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Change"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Device is set to total silence"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Volume buttons"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snooze"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Timer vibrate"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timer paused"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timers paused"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Touch to see your timers"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tap to see your timers"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timers"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Next timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Dream settings"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Screen-saver settings"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Night mode"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Very dim display (for dark rooms)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expand alarm"</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 34449c9..a780c2d 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Unknown"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarm volume muted"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Unmute"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Default alarm ringtone is silent"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Change"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Device is set to total silence"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Volume buttons"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snooze"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Timer vibrate"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timer paused"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timers paused"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Touch to see your timers"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tap to see your timers"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timers"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Next timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Dream settings"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Screen-saver settings"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Night mode"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Very dim display (for dark rooms)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expand alarm"</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 34449c9..a780c2d 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Unknown"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarm volume muted"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Unmute"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Default alarm ringtone is silent"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Change"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Device is set to total silence"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Volume buttons"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snooze"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Timer vibrate"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timer paused"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timers paused"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Touch to see your timers"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tap to see your timers"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timers"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Next timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Dream settings"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Screen-saver settings"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Night mode"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Very dim display (for dark rooms)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expand alarm"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index f1c14ad..e3d20a0 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Desconocido"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Se silenció el volumen de la alarma"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Dejar de silenciar"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Tono de alarma predeterminado silenciado"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Cambiar"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"El dispositivo está configurado en silencio total"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Botones de volumen"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Posponer"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibración del temporizador"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Se pausó el temporizador"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> temporizadores pausados"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Toca para ver tus temporizadores."</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Presiona para ver tus temporizadores"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> temporizadores"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Próximo temporizador: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Configuración de Dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Configuración del protector de pantalla"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modo nocturno"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Pantalla muy atenuada (para ambientes poco iluminados)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expandir alarma"</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index b42877c..e2dde4d 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Desconocido"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volumen de la alarma silenciado"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Activar sonido"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Dispositivo en silencio total"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Botones de volumen"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Posponer"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibración del temporizador"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Temporizador pausado"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> temporizadores en pausa"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Toca para ver tus temporizadores"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Toca para ver los recordatorios"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> temporizadores"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Próximo: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Ajustes del salvapantallas"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Configuración del salvapantallas"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modo nocturno"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Pantalla muy atenuada (para habitaciones oscuras)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expandir alarma"</string>
diff --git a/res/values-et-rEE/strings.xml b/res/values-et-rEE/strings.xml
index a72c8c1..641d91a 100644
--- a/res/values-et-rEE/strings.xml
+++ b/res/values-et-rEE/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Tundmatu"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Äratuste helitugevus vaigistati"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Tühista vaigistus"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Seade on täielikult vaigistatud"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Helitugevuse nupud"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Lükka edasi"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Taimeri vibratsioon"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Taimer peatati"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> taimerit peatati"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Puudutage, et näha oma taimereid"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Puudutage taimerite nägemiseks"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> taimerit"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Järgmine taimer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Uneseaded"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ekraanisäästja seaded"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Öörežiim"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Väga hämar ekraan (pimedate ruumide jaoks)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Äratuse laiendamine"</string>
diff --git a/res/values-eu-rES/strings.xml b/res/values-eu-rES/strings.xml
index c952ffb..15abaea 100644
--- a/res/values-eu-rES/strings.xml
+++ b/res/values-eu-rES/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Ezezaguna"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarma isilarazi da"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Aktibatu audioa"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Alarmaren tonu lehenetsia modu isilean dago"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Aldatu"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Gailua isiltasun osoko moduan dago"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Bolumen-botoiak"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Atzeratu"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Tenporizadorearen dardara"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Pausatu da tenporizadorea"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> tenporizadore pausatuta"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Tenporizadoreak ikusteko, ukitu hau"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Sakatu tenporizadoreak ikusteko"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> tenporizadore"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Hurrengo tenporizadorea: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Pantaila-babeslearen ezarpenak"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Pantaila-babeslearen ezarpenak"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Gau modua"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Oso argi ahula (toki ilunetarako)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Zabaldu alarma"</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 914aba6..59ac68d 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"نامشخص"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"زنگ بی‌صدا شد"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"باصدا"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"دستگاه روی سکوت کلی تنظیم شده است"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"دکمه‌های میزان صدا"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"تعویق"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"لرزش تایمر"</string>
     <string name="timer_paused" msgid="5941160896040771462">"تایمر متوقف شد"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> تایمر متوقف شد"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"برای دیدن تایمرهای خود لمس کنید"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"برای دیدن تایمرها ضربه بزنید"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> تایمر‌"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"تایمر بعدی: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"تنظیمات حالت رؤیا"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"تنظیمات محافظ صفحه"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"حالت شب"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"نمایشگر بسیار تیره (برای اتاق‌های تاریک)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"هشدار بزرگ‌کردن"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 9658885..6dbfb17 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Tuntematon"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Herätyksen ääni mykistetty"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Poista mykistys"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Täydellinen hiljaisuus on käytössä"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Äänenvoimakkuuspainikkeet"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Torkku"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Ajastimen värinä"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Ajastin keskeytetty"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ajastinta keskeytetty"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Kosketa ja näytä ajastimet"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Näytä ajastimet koskettamalla."</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ajastinta"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Seuraava ajastin: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Lepotila-asetukset"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Näytönsäästäjäasetukset"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Yötila"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Hyvin himmeä näyttö (hämärille huoneille)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Laajenna hälytys"</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 1a0f011..f0ffb70 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Inconnu"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volume de l\'alarme coupé"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Réactiver le son"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"L\'appareil est réglé en mode Silence total"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Boutons du volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Arrêt momentané"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibration du minuteur"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Minuterie interrompue"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> minuteries en pause"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Appuyer ici pour afficher les minuteurs"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Touchez ici pour afficher vos minuteries"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> minuteries"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Minuteur suivant : <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Paramètres de l\'écran de veille"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Paramètres de l\'écran de veille"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Mode Nuit"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Affichage peu lumineux (pour les pièces sombres)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Développer l\'alarme"</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index f597ea8..9062bd6 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Inconnue"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volume de l\'alarme coupé"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Réactiver le son"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"L\'appareil est défini sur \"Aucune interruption\"."</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Boutons du volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Répéter"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Minuteur en mode vibreur"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Minuteur interrompu"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> minuteurs interrompus"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Appuyer ici pour afficher les minuteurs"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Appuyez pour afficher vos minuteurs."</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> minuteurs"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Minuteur suivant : <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Paramètres écran de veille"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Paramètres de l\'économiseur d\'écran"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Mode Nuit"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Affichage peu lumineux (pour les pièces sombres)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Développer l\'alarme"</string>
diff --git a/res/values-gl-rES/strings.xml b/res/values-gl-rES/strings.xml
index c79841c..6809777 100644
--- a/res/values-gl-rES/strings.xml
+++ b/res/values-gl-rES/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Descoñecido"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Silenciouse o volume da alarma"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Activar o son"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Ton de chamada de alarma predeterminado silenciado"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Cambiar"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Activouse a opción de silencio total no dispositivo"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Botóns de volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Adiar"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibración do temporizador"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Pausouse o temporizador"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> temporizadores en pausa"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Toca para ver os temporizadores"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Toca para ver os teus temporizadores"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> temporizadores"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Seguinte temporizador: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Configuración do protector de pantalla"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Configuración do protector de pantalla"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modo nocturno"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Pantalla moi tenue (para salas escuras)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expande a alarma"</string>
diff --git a/res/values-gu-rIN/strings.xml b/res/values-gu-rIN/strings.xml
index 47e99b8..1b66692 100644
--- a/res/values-gu-rIN/strings.xml
+++ b/res/values-gu-rIN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"અજાણ્યું"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"એલાર્મનું વૉલ્યૂમ મ્યૂટ કર્યું"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"અનમ્યૂટ કરો"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"ઉપકરણ સંપૂર્ણ મૌન પર સેટ કરેલ છે"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"વૉલ્યૂમ બટન્સ"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"સ્નૂઝ"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ટાઇમર વાઇબ્રેટ"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ટાઇમર થોભાવ્યું"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ટાઇમર્સ થોભાવ્યાં"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"તમારા ટાઇમર્સ જોવા માટે ટચ કરો"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"તમારા ટાઇમર્સને જોવા માટે ટૅપ કરો"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ટાઇમર્સ"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"આગલું ટાઇમર: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ડ્રીમ સેટિંગ્સ"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"સ્ક્રીન સેવર સેટિંગ્સ"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"રાત્રિ મોડ"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ખૂબ આછું પ્રદર્શન (અંધારા રૂમ્સ માટે)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"એલાર્મ વિસ્તૃત કરો"</string>
diff --git a/res/layout/blank_footer_view.xml b/res/values-h420dp/dimens.xml
similarity index 69%
rename from res/layout/blank_footer_view.xml
rename to res/values-h420dp/dimens.xml
index c9460fc..3bb17b3 100644
--- a/res/layout/blank_footer_view.xml
+++ b/res/values-h420dp/dimens.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
+<!-- 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.
@@ -13,7 +13,10 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<View xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:background="@color/transparent"
-    android:layout_height="@dimen/button_footer_height" />
\ No newline at end of file
+
+<resources>
+    <dimen name="alarm_text_font_size">16sp</dimen>
+    <dimen name="alarm_time_font_size">64sp</dimen>
+
+    <dimen name="day_button_font_size">18sp</dimen>
+</resources>
\ No newline at end of file
diff --git a/res/values-h470dp-v21/dimens.xml b/res/values-h470dp-v21/dimens.xml
new file mode 100644
index 0000000..e1e6fb9
--- /dev/null
+++ b/res/values-h470dp-v21/dimens.xml
@@ -0,0 +1,29 @@
+<?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.
+-->
+
+<!-- Fab automatically adjusts its size from mini to normal at this height. Mirror the change so the
+values can be used elsewhere in clock layouts. -->
+<resources>
+    <!-- Lollipop and later normal floating action button margin. -->
+    <dimen name="fab_margin">16dp</dimen>
+
+    <!-- Lollipop and later normal floating action button container height. -->
+    <dimen name="fab_height">88dp</dimen>
+
+    <!-- Lollipop and later normal floating action button size. -->
+    <dimen name="fab_button_size">@dimen/design_fab_size_normal</dimen>
+
+</resources>
\ No newline at end of file
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index d08645d..f46309b 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"अज्ञात"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"अलार्म का वॉल्‍यूम म्‍यूट किया हुआ है"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"अनम्यूट करें"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"डिफ़ॉल्ट अलार्म रिंगटोन मौन है"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"बदलें"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"डिवाइस पूरी तरह से मौन पर सेट है"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"वॉल्‍यूम बटन को दबाने पर"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"बाद में याद दिलाएं"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"टाइमर कंपन"</string>
     <string name="timer_paused" msgid="5941160896040771462">"टाइमर रोका गया"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> टाइमर रोके गए"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"अपने टाइमर देखने के लिए स्पर्श करें"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"अपने टाइमर देखने के लिए टैप करें"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> टाइमर"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"अगला टाइमर: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"स्वप्न सेटिंग"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"स्क्रीन सेवर सेटिंग"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"रात्रि मोड"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"बहुत मद्धिम प्रदर्शन (अंधेरे कमरों के लिए)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"अलार्म विस्तृत करें"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 32d6c52..a5039ae 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -126,6 +126,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Nepoznato"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Zvuk alarma isključen"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Uključi zvuk"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Uređaj je postavljen na potpunu tišinu"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Gumbi za glasnoću"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Odgodi alarm"</item>
@@ -320,10 +325,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibriranje odbrojavanja"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Tajmer je pauziran"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Broj pauziranih tajmera: <xliff:g id="NUMBER">%d</xliff:g>"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Dodirnite da biste vidjeli svoje mjerače vremena"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Dodirnite da biste vidjeli mjerače vremena"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> tajmera"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Sljedeći: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Postavke sna"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Postavke čuvara zaslona"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Noćni način"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Jako zatamnjeni zaslon (za tamne komore)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Proširi alarm"</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 32da322..f3ef87d 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Ismeretlen"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Ébresztési hangerő lenémítva"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Némítás feloldása"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Az eszköz teljesen le van némítva"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Hangerőgombok"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Szundi"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Időzítő rezgése"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Időzítő szüneteltetve"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> időzítő szüneteltetve"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Érintse meg az időzítők megtekintéséhez"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Koppintson rá az időzítők megtekintéséhez"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> időzítő"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Következő időzítő: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Álom beállításai"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Képernyőkímélő beállításai"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Éjszakai üzemmód"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Nagyon halvány megjelenítés (sötét szobában)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Ébresztő megnyitása"</string>
diff --git a/res/values-hy-rAM/strings.xml b/res/values-hy-rAM/strings.xml
index 31a9937..f256ad9 100644
--- a/res/values-hy-rAM/strings.xml
+++ b/res/values-hy-rAM/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Անհայտ"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Զարթուցիչի ձայնն անջատված է"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Միացնել ձայնը"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Սարքը ընդհանուր լուռ ռեժիմում է"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Ձայնի կոճակներ"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Ննջել"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Ժամաչափի թրթռում"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Ժամաչափը դադարեցված է"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ժամաչափ դադարեցված է"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Հպեք՝ ձեր ժամաչափերը տեսնելու համար"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Հպեք՝ ձեր ժամաչափերը տեսնելու համար"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ժամաչափ"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Հաջորդ ժամաչափը՝ <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Էկրանապահի կարգավորումներ"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Էկրանի խնայման կարգավորումներ"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Գիշերային ռեժիմ"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Շատ մուգ էկրան (մութ սենյակների համար)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Ընդարձակել զարթուցիչը"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 1b62313..972ec4c 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Tidak diketahui"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volume alarm dibisukan"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Suarakan"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Perangkat disetel ke senyap total"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Tombol volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Tunda"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Pewaktu bergetar"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Pewaktu dijeda"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> pewaktu dijeda"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Sentuh untuk melihat pewaktu Anda"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Ketuk untuk melihat pewaktu Anda"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> pewaktu"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Pewaktu Berikutnya: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Setelan Mimpi"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Setelan screen saver"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Mode malam"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Tampilan yang sangat redup (untuk ruangan gelap)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Luaskan alarm"</string>
diff --git a/res/values-is-rIS/strings.xml b/res/values-is-rIS/strings.xml
index f231cb4..b4066fb 100644
--- a/res/values-is-rIS/strings.xml
+++ b/res/values-is-rIS/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Óþekktur"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Hljóðstyrkur vekjara þaggaður"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Kveikja á hljóði"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Tækið er stillt á algjöra þögn"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Hljóðstyrkstakkar"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Blunda"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Teljari með titringi"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Hlé gert á teljara"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Hlé gert á <xliff:g id="NUMBER">%d</xliff:g> teljurum"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Snertu til að sjá teljarana þína"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Ýttu til að sjá teljarana þína"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> teljarar"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Næsti teljari: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Draumastillingar"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Stillingar fyrir skjávara"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Næturstilling"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Mjög dimmur skjár (fyrir myrk herbergi)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Stækka vekjara"</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index be5a192..44e42bb 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Elemento sconosciuto"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volume sveglia disattivato"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Riattiva audio"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"La suoneria predefinita della sveglia è Silenzioso"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Modifica"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Il dispositivo è impostato su \"Silenzio totale\""</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Pulsanti volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Attiva ripetizione sveglia"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibrazione timer"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timer in pausa"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timer in pausa"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Tocca per visualizzare i timer"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tocca per visualizzare i timer"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timer"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Prossimo timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Impostazioni Dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Impostazioni dello screensaver"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modalità Notte"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Display molto scuro (per stanze buie)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Espandi sveglia"</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 308f613..7e767f5 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -134,6 +134,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"לא ידוע"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"עוצמת הקול של ההתראות הושתקה"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"בטל השתקה"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"המכשיר מוגדר למצב השתקה כוללת"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"לחצני עוצמת קול"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"נודניק"</item>
@@ -331,10 +336,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"רטט טיימר"</string>
     <string name="timer_paused" msgid="5941160896040771462">"הטיימר מושהה"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> טיימרים הושהו"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"גע כדי לראות את הטיימרים שלך"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"הקש כדי לראות את הטיימרים שלך"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> טיימרים"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"הטיימר הבא: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"הגדרות חלום בהקיץ"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"הגדרות שומר מסך"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"מצב לילה"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"תצוגה עמומה מאוד (לחדרים חשוכים)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"הרחב התראה"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 0c33b7a..a2a4784 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"不明"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"アラームの音量をミュートしました"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"ミュート解除"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"端末は [サイレント] に設定されています"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"音量ボタン"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"スヌーズ"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"タイマーのバイブレーション"</string>
     <string name="timer_paused" msgid="5941160896040771462">"タイマーを一時停止しました"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g>個のタイマーを一時停止しました"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"タップしてタイマーを表示"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"タイマーを表示するにはタップします"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g>件のタイマー"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"次のタイマー: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"スクリーンセーバーの設定"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"スクリーンセーバーの設定"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"夜間モード"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"薄暗い表示(暗い部屋用)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"アラームを展開"</string>
diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml
index 86f1df5..23b3743 100644
--- a/res/values-ka-rGE/strings.xml
+++ b/res/values-ka-rGE/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"უცნობი"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"მაღვიძარას ხმა დადუმდა"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"დადუმების გაუქმება"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"მოწყობილობა დაყენებულია სრული სიჩუმის რეჟიმზე"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ხმის ღილაკები"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"ჩაჩუმება"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ტაიმერის ვიბრაცია"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ტაიმერი დაპაუზებულია"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"დაპაუზებულია <xliff:g id="NUMBER">%d</xliff:g> ტაიმერი"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"შეეხეთ, რათა ნახოთ თქვენი ტაიმერები"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"შეეხეთ თქვენი ტაიმერების სანახავად"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ტაიმერი"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"მომდევნო ტაიმერი: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"სიზმრის პარამეტრები"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"ეკრანმზოგის პარამეტრები"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"ღამის რეჟიმი"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ძალიან მუქი ეკრანი (ბნელი ოთახებისთვის)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"მაღვიძარას გაფართოება"</string>
diff --git a/res/values-kk-rKZ/strings.xml b/res/values-kk-rKZ/strings.xml
index 00fb3ea..d989f5f 100644
--- a/res/values-kk-rKZ/strings.xml
+++ b/res/values-kk-rKZ/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Белгісіз"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Дабыл дыбысы өшірілді"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Дыбысын қосу"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Әдепкі дабыл қоңырау әуені — дыбыссыз."</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Өзгерту"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Құрылғы толық тыныштық режиміне орнатылды"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Дыбыс түймелері"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Кейінге қалдыру"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Таймермен дірілдеу"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Таймер кідіртілді"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> таймер кідіртілді"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Таймерлерді көру үшін түртіңіз"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Таймерлерді көру үшін түртіңіз"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> таймер"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Келесі таймер: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Қалғу параметрлері"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Экранды сақтау режимінің параметрлері"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Түнгі режим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Өте күңгірт дисплей (күңгірт бөлмелер үшін)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Дабылды жаю"</string>
diff --git a/res/values-km-rKH/strings.xml b/res/values-km-rKH/strings.xml
index be94bdc..08efae8 100644
--- a/res/values-km-rKH/strings.xml
+++ b/res/values-km-rKH/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"មិនស្គាល់"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"បានបិទសំឡេងម៉ោងរោទិ៍"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"បើក​សំឡេង"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"ឧបករណ៍ត្រូវបានកំណត់ឲ្យស្ងាត់ទាំងស្រុង"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ប៊ូតុង​កម្រិត​សំឡេង"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"ផ្អាក"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ការញ័រនៃកម្មវិធីកំណត់ពេល"</string>
     <string name="timer_paused" msgid="5941160896040771462">"បានផ្អាកកម្មវិធីកំណត់ពេល"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"បានផ្អាកកម្មវិធីកំណត់ពេល <xliff:g id="NUMBER">%d</xliff:g>"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"ប៉ះ​ដើម្បី​មើល​កម្មវិធី​កំណត់​ពេល​របស់​អ្នក"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"ប៉ះដើម្បីមើលកម្មវិធីកំណត់ពេលរបស់អ្នក"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> កម្មវិធី​កំណត់​ពេល"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"កម្មវិធី​កំណត់​ពេល​បន្ទាប់៖ <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ការ​កំណត់​ស្រមើ​​ស្រមៃ"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"ការកំណត់ធាតុរក្សាអេក្រង់"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"របៀប​រាត្រី"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ការ​បង្ហាញ​យ៉ាង​ស្រអាប់ (សម្រាប់​បន្ទប់​ងងឹត)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"ពង្រីក​សំឡេង​រោទ៍"</string>
diff --git a/res/values-kn-rIN/strings.xml b/res/values-kn-rIN/strings.xml
index c7641de..06235f1 100644
--- a/res/values-kn-rIN/strings.xml
+++ b/res/values-kn-rIN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"ಅಪರಿಚಿತ"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"ಅಲಾರಮ್ ವಾಲ್ಯೂಮ್ ಮ್ಯೂಟ್ ಮಾಡಲಾಗಿದೆ"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"ಅನ್‌ಮ್ಯೂಟ್ ಮಾಡಿ"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"ಸಾಧನವನ್ನು ಸಂಪೂರ್ಣ ನಿಶ್ಯಬ್ದವಾಗಿ ಹೊಂದಿಸಿ"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ವಾಲ್ಯೂಮ್ ಬಟನ್‌ಗಳು"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"ಸ್ನೂಜ್"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ಟೈಮರ್ ವೈಬ್ರೇಟ್"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ಟೈಮರ್ ವಿರಾಮಗೊಳಿಸಲಾಗಿದೆ"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ಟೈಮರ್ ವಿರಾಮಗೊಳಿಸಲಾಗಿದೆ"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"ನಿಮ್ಮ ಟೈಮರ್‌ಗಳನ್ನು ನೋಡಲು ಸ್ಪರ್ಶಿಸಿ"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"ನಿಮ್ಮ ಟೈಮರ್‌ಗಳನ್ನು ನೋಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ಟೈಮರ್‌ಗಳು"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"ಮುಂದಿನ ಟೈಮರ್: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ಡ್ರೀಮ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"ಸ್ಕ್ರೀನ್ ಸೇವರ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"ರಾತ್ರಿ ಮೋಡ್"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ತೀರಾ ಮಂದ ಡಿಸ್‌ಪ್ಲೇ (ಕತ್ತಲೆ ಕೊಠಡಿಗಳಿಗಾಗಿ)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"ಅಲಾರಮ್ ವಿಸ್ತರಿಸಿ"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index c176f17..b868512 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"알 수 없음"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"알람 볼륨이 음소거되었습니다."</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"음소거 해제"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"기기가 모두 차단으로 설정됨"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"볼륨 버튼"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"다시 울림"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"타이머 진동"</string>
     <string name="timer_paused" msgid="5941160896040771462">"타이머가 일시중지됨"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"타이머 <xliff:g id="NUMBER">%d</xliff:g>개 일시중지됨"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"타이머를 보려면 터치하세요."</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"타이머를 보려면 탭하세요."</string>
     <string name="timers_in_use" msgid="5570729467344408506">"타이머 <xliff:g id="NUMBER">%d</xliff:g>개"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"다음 타이머: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"화면 보호기 설정"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"스크린세이버 설정"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"야간 모드"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"디스플레이 아주 어둡게 하기(어두운 장소용)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"알람 펼치기"</string>
diff --git a/res/values-ky-rKG/strings.xml b/res/values-ky-rKG/strings.xml
index 0ee1eab..75ba27e 100644
--- a/res/values-ky-rKG/strings.xml
+++ b/res/values-ky-rKG/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Белгисиз"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Ойготкучтун үнү өчүрүлдү"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Үндү чыгаруу"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Түзмөк толугу менен үнсүз режимге коюлган"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Үндү катуулатуучу баскычтар"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Тындыруу"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Таймер дирилдөөсү"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Таймер тындырылды"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> таймерлер тындырылды"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Таймерлериңизди көрүү үчүн тийип коюңуз"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Таймерлериңизди көрүү үчүн таптап коюңуз"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> таймер"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Кийинки таймер: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Көшөгөлөнтүү жөндөөлөрү"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Көшөгөнүн жөндөөлөрү"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Түнкү режим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Өтө күңүрт дисплей (караңгы бөлмөлөр үчүн)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Ойготкучту жайып көрсөтүү"</string>
diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml
index b68e145..2533246 100644
--- a/res/values-land/dimens.xml
+++ b/res/values-land/dimens.xml
@@ -1,20 +1,17 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2011, 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.
-*/
+<!-- Copyright (C) 2011 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.
 -->
 
 <!-- These resources are around just to allow their values to be customized
@@ -25,36 +22,18 @@
     <dimen name="date_text_size">15sp</dimen>
     <dimen name="next_alarm_text_size">15sp</dimen>
     <dimen name="time_margin_top">24dip</dimen>
-    <dimen name="timer_list_padding_bottom">80dip</dimen>
 
     <dimen name="dialpad_font_size">24sp</dimen>
     <dimen name="dialpad_digit_padding">14dip</dimen>
-    <dimen name="timer_setup_delete_start_margin">24sp</dimen>
-    <dimen name="timer_setup_label_size">16sp</dimen>
+    <dimen name="timer_setup_delete_margin">12sp</dimen>
 
     <dimen name="actionbar_tab_padding">32dip</dimen>
 
     <!-- Size of margin for circles. -->
-    <dimen name="circle_margin">8dp</dimen>
     <dimen name="analog_clock_margin">70dp</dimen>
-    <dimen name="main_clock_padding">0dp</dimen>
     <dimen name="circle_margin_top">0dp</dimen>
-    <dimen name="top_text_spacing_digital">-25dp</dimen>
     <dimen name="bottom_text_spacing_analog">5dp</dimen>
 
-    <dimen name="alarm_side_padding">48dip</dimen>
-    <dimen name="clock_side_padding">32dip</dimen>
-    <dimen name="clock_fragment_end_padding">0dip</dimen>
-    <dimen name="main_clock_bottom_margin">80dip</dimen>
-
     <dimen name="medium_font_size">48sp</dimen>
 
-    <dimen name="circle_size">190dip</dimen>
-    <dimen name="stopwatch_circle_margin_bottom">80dip</dimen>
-
-    <dimen name="world_clock_margin">8dp</dimen>
-    <dimen name="sw_padding_end">8dp</dimen>
-
-    <dimen name="alarm_alert_clock_padding_left">32dp</dimen>
-
-</resources>
+</resources>
\ No newline at end of file
diff --git a/res/layout/blank_footer_view.xml b/res/values-land/fractions.xml
similarity index 60%
copy from res/layout/blank_footer_view.xml
copy to res/values-land/fractions.xml
index c9460fc..4642e0e 100644
--- a/res/layout/blank_footer_view.xml
+++ b/res/values-land/fractions.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
+<!-- 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.
@@ -13,7 +13,11 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<View xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:background="@color/transparent"
-    android:layout_height="@dimen/button_footer_height" />
\ No newline at end of file
+
+<resources>
+    <!-- In landscape, -100% width implies only height is used to size the timer container. -->
+    <fraction name="timer_circle_width_percent">-100%</fraction>
+
+    <!-- In landscape, timer circles are 90% of the container height; width matches height. -->
+    <fraction name="timer_circle_height_percent">90%</fraction>
+</resources>
\ No newline at end of file
diff --git a/res/values-lo-rLA/strings.xml b/res/values-lo-rLA/strings.xml
index 5306770..2a8c84a 100644
--- a/res/values-lo-rLA/strings.xml
+++ b/res/values-lo-rLA/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"​ບໍ່​ຮູ້​ຈັກ"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"ປິດສຽງໂມງປຸກແລ້ວ"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"ເຊົາປິດສຽງ"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"ສຽງໂມງປຸກເລີ່ມຕົ້ນແມ່ນງຽບຢູ່"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"ປ່ຽນແປງ"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"ຕັ້ງອຸປະກອນເປັນສຽງງຽບທັງໝົດແລ້ວ"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ປຸ່ມປັບລະດັບສຽງ"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"ປິດສຽງເຕືອນຊົ່ວຄາວ"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ໂມງນັບຖອຍຫຼັງສັ່ນ"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ເຄື່ອງ​ຈັບ​ເວ​ລາ​ຢຸດ​ແລ້ວ"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ເຄື່ອງ​ຈັບ​ເວ​ລາ​ຢຸດ​ແລ້ວ"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"ແຕະເພື່ອເບິ່ງໂຕຈັບເວລາຂອງທ່ານ"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"ແຕະເພື່ອເບິ່ງໂມງນັບຖອຍຫຼັງຂອງທ່ານ"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ໂມງນັບຖອຍຫຼັງ"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"ໂມງຈັບເວລາຄັ້ງຕໍ່ໄປ: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ຕັ້ງຄ່າ Dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"ການຕັ້ງຄ່າສະກຣີນເຊບເວີ"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"ໂໝດກາງຄືນ"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ຜ່ອນແສງໜ້າຈໍອ່ອນໆ (ສຳລັບຫ້ອງທີ່ມືດຫຼາຍ)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"ຂະຫຍາຍໂມງປຸກ"</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index a6ba6f8..86f5025 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -134,6 +134,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Nežinomas"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Signalas nutildytas"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Įjungti garsą"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Įrenginyje nustatytas visiškos tylos režimas"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Garsumo mygtukai"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snausti"</item>
@@ -331,10 +336,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Laikmačio vibravimas"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Laikmatis pristabdytas"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Pristabdytų laikmačių: <xliff:g id="NUMBER">%d</xliff:g>"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Palieskite, jei norite peržiūrėti laikmačius"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Palieskite, jei norite matyti savo laikmačius"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"Laikmačių: <xliff:g id="NUMBER">%d</xliff:g>"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Kitas laikmatis: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Režimo „Svajonė“ nustatymai"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ekrano užsklandos nustatymai"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nakties režimas"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Labai blankus rodinys (skirta tamsioms patalpoms)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Išskleisti signalą"</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 8e1cef1..d52d6cc 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -126,6 +126,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Nezināms"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Noņemta skaņa"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Ieslēgt skaņu"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Ierīcē ir iestatīts pilnīga klusuma režīms"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Skaļuma pogas"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snauda"</item>
@@ -320,10 +325,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Taimera vibrācija"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Taimeris apturēts"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Apturēti <xliff:g id="NUMBER">%d</xliff:g> taimeri"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Pieskarieties, lai skatītu savus taimerus."</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Pieskarieties, lai skatītu iestatītos taimerus."</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> taimeri"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Nākamais taimeris: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Ekrānsaudzētāja iestatījumi"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ekrānsaudzētāja iestatījumi"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nakts režīms"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Ļoti aptumšots displejs (tumšās telpās)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Izvēršanas signāls"</string>
diff --git a/res/values-mk-rMK/strings.xml b/res/values-mk-rMK/strings.xml
index 7d0c718..f7e4a48 100644
--- a/res/values-mk-rMK/strings.xml
+++ b/res/values-mk-rMK/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Непознато"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Исклучен е звукот на алармот"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Вклучи звук"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Уредот е поставен на целосна тишина"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Копчиња за гласност"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Одложи аларм"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Вибрации на тајмер"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Тајмерот е паузиран"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> тајмери се паузирани"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Допрете за да ги видите вашите тајмери"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Допрете за да ги видите тајмерите"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> тајмери"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Следен тајмер: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Поставки за спиење"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Поставки на заштитникот на екран"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Ноќен режим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Многу затемнет екран (за темни соби)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Прошири аларм"</string>
diff --git a/res/values-ml-rIN/strings.xml b/res/values-ml-rIN/strings.xml
index 7f88659..bb456a3 100644
--- a/res/values-ml-rIN/strings.xml
+++ b/res/values-ml-rIN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"അജ്ഞാതം"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"അലാറം വോളിയം നിശബ്ദമാക്കി"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"ശബ്‌ദമുള്ളതാക്കുക"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"ഉപകരണം സമ്പൂർണ്ണ നിശബ്ദമാക്കി സജ്ജീകരിച്ചിരിക്കുന്നു"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"വോളിയം ബട്ടണുകൾ"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"സ്‌നൂസ് ചെയ്യുക"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ടൈമർ വൈബ്രേഷൻ"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ടൈമർ തൽക്കാലം നിർത്തി"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ടൈമറുകൾ തൽക്കാലം നിർത്തി"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"നിങ്ങളുടെ ടൈമറുകൾ കാണുന്നതിന് സ്‌പർശിക്കുക"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"നിങ്ങളുടെ ടൈമറുകൾ കാണാൻ ടാപ്പുചെയ്യുക"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ടൈമറുകൾ"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"അടുത്ത ടൈമർ: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ഡ്രീം ക്രമീകരണങ്ങൾ"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"സ്ക്രീൻ സേവർ ക്രമീകരണം"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"നൈറ്റ് മോഡ്"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"വളരെ മങ്ങിയ ഡിസ്‌പ്ലേ (ഇരുണ്ട മുറികൾക്കായി)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"അലാറം വിപുലീകരിക്കുക"</string>
diff --git a/res/values-mn-rMN/strings.xml b/res/values-mn-rMN/strings.xml
index e3bb7dd..007f997 100644
--- a/res/values-mn-rMN/strings.xml
+++ b/res/values-mn-rMN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Тодорхойгүй"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Сэрүүлгийн дууг хаасан"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Дууг нээх"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Төхөөрөмжийг бүхэлд нь чимээгүй болгож тохируулсан"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Дууны товч"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Түр хойшлуулагч"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Цаг хэмжигчийн чичиргээ"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Цаг хэмжигчийг түр зогсоосон"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> цаг хэмжигчийг түр зогсоосон"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Цаг хэмжигчийг харахын тулд хүрнэ үү"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Цаг хэмжигчээ харахын тулд дарна уу"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> цаг хэмжигч"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Дараагийн цаг хэмжигч: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Мөрөөдлийн тохиргоо"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Дэлгэц амраагчийн тохиргоо"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Шөнийн горим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Маш бүдэг харуулах (харанхуй өрөөнд)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Сэрүүлгийг дэлгэх"</string>
diff --git a/res/values-mr-rIN/strings.xml b/res/values-mr-rIN/strings.xml
index 27bb601..09f9587 100644
--- a/res/values-mr-rIN/strings.xml
+++ b/res/values-mr-rIN/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"अज्ञात"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"अलार्म आवाज नि:शब्द केला"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"सशब्द करा"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"डीफॉल्ट अलार्म रिंंगटोन शांत आहे"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"बदला"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"डिव्हाइस संपूर्ण शांत वर सेट केले आहे"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"व्हॉल्यूम बटणे"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"स्नूझ करा"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"टायमर कंपन"</string>
     <string name="timer_paused" msgid="5941160896040771462">"टायमरला विराम दिला"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> टायमरला विराम दिला"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"आपले टाइमर पाहण्यासाठी स्पर्श करा"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"आपले टायमर पाहण्यासाठी टॅप करा"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> टाइमर"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"पुढील टाइमर: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ड्रीम सेटिंग्ज"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"स्क्रीन सेव्हर सेटिंग्ज"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"रात्र मोड"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"खूप मंद प्रदर्शन (अंधार असलेल्या खोल्यांसाठी)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"अलार्म विस्तृत करा"</string>
diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml
index 7ceb0f0..e109a96 100644
--- a/res/values-ms-rMY/strings.xml
+++ b/res/values-ms-rMY/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Tidak diketahui"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Kelantangan penggera diredamkan"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Nyahredam"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Peranti ditetapkan kepada senyap sepenuhnya"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Butang kelantangan"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Tunda"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Getaran pemasa"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Pemasa dijeda"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> pemasa dijeda"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Sentuh untuk melihat pemasa anda"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Ketik untuk melihat pemasa anda"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> pemasa"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Pemasa seterusnya: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Tetapan mimpi"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Tetapan penyelamat skrin"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Mod malam"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Paparan sangat malap (untuk bilik gelap)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Kembangkan penggera"</string>
diff --git a/res/values-my-rMM/strings.xml b/res/values-my-rMM/strings.xml
index 596858e..4e5e340 100644
--- a/res/values-my-rMM/strings.xml
+++ b/res/values-my-rMM/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"မသိရ"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"နိုးစက်အသံပိတ်ထားသည်"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"အသံပြန်ဖွင့်ပါ"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"မူရင်းနိုးစက်မြည်သံကို အသံတိတ်အဖြစ် သတ်မှတ်ထားသည်"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"ပြောင်းပါ"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"စက်ပစ္စည်းကို အသံတိတ် သတ်မှတ်ထားသည်"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"အသံခလုတ်များ"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"မှေးရန်"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"အချိန်ကိုက်စနစ် တုန်ခါမှု"</string>
     <string name="timer_paused" msgid="5941160896040771462">"တိုင်မား ရပ်တန့်ထား"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"တိုင်မား <xliff:g id="NUMBER">%d</xliff:g> ကြိမ် ရပ်တန့်ခဲ့"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"သင်၏ တိုင်မားများကို ကြည့်ရန် ထိပါ"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"အချိန်မှတ်ကိရိယာကို မြင်နိုင်ရန် တို့ထိပါ"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"တိုင်မား <xliff:g id="NUMBER">%d</xliff:g>"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"နောက် တိုင်မား တစ်ခု: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"အိပ်မက် ဆက်တင်များ"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"မျက်နှာပြင်အသုံးပြုမှု ချွေတာမှုစနစ် ဆက်တင်များ"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"ညသုံး မုဒ်"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"သိပ် မှိန်စွာ ပြသမှု (မှောင်နေသည့် အခန်းများအတွက်)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"နှိုးစက်ကို တိုးချဲ့ရန်"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 99903eb..0c3c4c4 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Ukjent"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarmlyden er slått av"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Slå på lyden"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Ringelyden som er angitt som standard, er lydløs"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Endre"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Enheten er angitt til total stillhet"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Volumknapper"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Slumre"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Tidtakervibrering"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Tidtaker er satt på pause"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> tidtakere satt på pause"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Trykk for å se nedtellingene dine"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Trykk for å se tidtakerne dine"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> nedtellinger"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Neste nedtelling: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Innstillinger for Drøm"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Innstillinger for skjermspareren"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nattmodus"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Dempet lysstyrke (for mørke rom)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Vis alarmen"</string>
diff --git a/res/values-ne-rNP/strings.xml b/res/values-ne-rNP/strings.xml
index 43c6a89..9e28314 100644
--- a/res/values-ne-rNP/strings.xml
+++ b/res/values-ne-rNP/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"अज्ञात"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"अलार्मको भोल्युम म्यूट गरियो"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"अनम्यूट गर्नुहोस्"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"यन्त्रलाई पूर्ण शान्तमा सेट गरिएको छ"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"भोल्युम बटनहरू"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"स्नुज"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"टाइमर भाइब्रेट"</string>
     <string name="timer_paused" msgid="5941160896040771462">"टाइमर रोकियो"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> टाइमरहरू रोकिए"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"तपाईँको घडी हेर्न छुनुहोस्"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"आफ्नो टाइमरहरू हेर्न ट्याप गर्नुहोस्"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> घडीहरू"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"अर्को घडी: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ड्रिम सेटिङहरू"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"स्क्रिन सेभर सम्बन्धी सेटिङहरू"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"रात्री मोड"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ज्यादै मधुरो प्रदर्शन (अध्याँरा कोठाहरूका लागि)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"अलार्म विस्तार गर्नुहोस्"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 2792fe1..5a5199f 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Onbekend"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarmvolume gedempt"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Dempen opheffen"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Standaardbeltoon voor alarm is stil"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Wijzigen"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Apparaat is ingesteld op totale stilte"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Volumeknoppen"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snoozen"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Trillen voor timer"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timer gepauzeerd"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timers gepauzeerd"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Tik om je timers te bekijken"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tik om je timers te bekijken"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timers"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Volgende timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Instellingen voor dromen"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Instellingen voor screensaver"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nachtmodus"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Sterk gedimd scherm (voor donkere kamers)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Alarm uitvouwen"</string>
diff --git a/res/values-pa-rIN/strings.xml b/res/values-pa-rIN/strings.xml
index d2b97c0..9612f26 100644
--- a/res/values-pa-rIN/strings.xml
+++ b/res/values-pa-rIN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"ਅਗਿਆਤ"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"ਅਲਾਰਮ ਵੌਲਯੂਮ ਮਿਊਟ ਕੀਤੀ ਗਈ ਹੈ"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"ਅਣਮਿਊਟ ਕਰੋ"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"ਡੀਵਾਈਸ ਪੂਰੀ ਤਰ੍ਹਾਂ ਚੁੱਪ \'ਤੇ ਸੈੱਟ ਹੈ"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ਵੌਲਯੂਮ ਬਟਨ"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"ਸਨੂਜ਼"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ਟਾਈਮਰ ਵਾਈਬ੍ਰੇਟ"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ਟਾਈਮਰ ਰੋਕਿਆ"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ਟਾਈਮਰ ਰੋਕੇ ਗਏ"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"ਆਪਣੇ ਟਾਈਮਰ ਦੇਖਣ ਲਈ ਛੋਹਵੋ"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"ਆਪਣੇ ਟਾਈਮਰਾਂ ਨੂੰ ਵੇਖਣ ਲਈ ਟੈਪ ਕਰੋ"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ਟਾਈਮਰ"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"ਅਗਲਾ ਟਾਈਮਰ: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ਸੁਪਨ ਸੈਟਿੰਗਾਂ"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"ਸਕ੍ਰੀਨ ਸੇਵਰ ਸੈਟਿੰਗਾਂ"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"ਰਾਤ ਮੋਡ"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ਬਹੁਤ ਮੱਧਮ ਡਿਸਪਲੇ (ਹਨੇਰੇ ਕਮਰਿਆਂ ਲਈ)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"ਅਲਾਰਮ ਦਾ ਵਿਸਤਾਰ ਕਰੋ"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index c462c04..6d7d8a6 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -134,6 +134,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Nieznany"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Wyciszono dźwięk alarmu"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Wyłącz wyciszenie"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Domyślny dzwonek alarmu jest wyciszony"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Zmień"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Urządzenie jest całkowicie wyciszone"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Przyciski głośności"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Drzemka"</item>
@@ -331,10 +334,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Wibracje minutnika"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Minutnik wstrzymany"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Minutniki (<xliff:g id="NUMBER">%d</xliff:g>) wstrzymane"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Kliknij, by zobaczyć minutniki"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Dotknij, by wyświetlić minutniki"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> minutniki"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Następny minutnik: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Ustawienia wygaszacza"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ustawienia wygaszacza ekranu"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Tryb nocny"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Mocno przyciemniony wyświetlacz (do ciemnych pomieszczeń)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Rozwiń alarm"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 7835b00..934e2f4 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Desconhecido"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volume do alarme desativado"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Reativar o som"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"O dispositivo está definido para silêncio total"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Botões de volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Suspender"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibração do temporizador"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Temporizador interrompido"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> temporiz. interrompidos"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Toque para ver os seus temporizadores"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Toque para ver os seus temporizadores"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> temporizadores"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Temp. seguinte: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Definições de sonho"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Definições de proteção de ecrã"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modo noturno"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Apresentação muito esbatida (para salas escuras)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expandir alarme"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 6aeb68c..9b5ec3c 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Desconhecido"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volume do alarme silenciado"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Ativar som"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"O dispositivo está configurado para silêncio total"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Botões de volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Ativam soneca"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibração do temporizador"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timer pausado"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timers pausados"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Toque para ver seus timers"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Toque para ver seus temporizadores"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timers"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Próximo timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Configurações de Dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Configurações da proteção de tela"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modo noturno"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Tela muito escura (para salas escuras)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expandir alarme"</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 982a31d..cea336d 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -126,6 +126,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Necunoscut"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volumul alarmei a fost dezactivat"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Activați sunetul"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Dispozitivul este setat pe „Niciun sunet”"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Butoane de volum"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Amânați"</item>
@@ -320,10 +325,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibrare temporizator"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Temporizator întrerupt"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> temporizatoare întrerupte"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Atingeți pentru a vedea contoarele"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Atingeți pentru a vedea temporizatoarele"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> contoare"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Următorul temporizator: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Setări Dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Setări pentru economizorul de ecran"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modul Noapte"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Luminozitate foarte redusă (pentru camere întunecate)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Extindeți alarma"</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 1219e43..3ef1e19 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -134,6 +134,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Неизвестно"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Звук будильника отключен"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Включить звук"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Включен режим \"Полная тишина\""</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Кнопки громкости"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Отложить"</item>
@@ -331,10 +336,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Вибросигнал таймера"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Таймер приостановлен"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Таймеры (<xliff:g id="NUMBER">%d</xliff:g>) приостановлены"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Нажмите, чтобы посмотреть таймеры"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Нажмите, чтобы посмотреть таймеры"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"Таймеров: <xliff:g id="NUMBER">%d</xliff:g>"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"След.: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Параметры заставки"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Настройки заставки"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Ночной режим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Тусклый дисплей (для темных помещений)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Развернуть"</string>
diff --git a/res/values-si-rLK/strings.xml b/res/values-si-rLK/strings.xml
index 559cd62..bf05a67 100644
--- a/res/values-si-rLK/strings.xml
+++ b/res/values-si-rLK/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"නොදනී"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"එලාම හඬ නිහඬ කරන ලදී"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"නිහඬ කිරීම ඉවත් කරන්න"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"උපාංගය පූර්ණ නිහඬ බවට සකසා ඇත"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ශබ්ද බොත්තම්"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"යළි සිහි කැඳවන්න"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"කාල ගණකය කම්පනය"</string>
     <string name="timer_paused" msgid="5941160896040771462">"කාල ගණකය විරාම කරන ලදී"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"කාල ගණක <xliff:g id="NUMBER">%d</xliff:g>ක් විරාම කරන ලදී"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"ඔබගේ කාල ගණනයන් බැලීමට ස්පර්ශ කරන්න"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"ඔබගේ කාල ගණක බැලීමට තට්ටු කරන්න"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"කාල ගැනීම් <xliff:g id="NUMBER">%d</xliff:g>"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"මීළඟ කාල ගණනය කිරීම: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ඩ්‍රීම් සැකසුම්"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"තිර සුරැකුම් සැකසීම්"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"රාත්‍රී ආකාරය"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"ඉතා අඳුරු දර්ශන තීරය (අඳුරු කාමර සඳහා)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"ඇඟවීම දිග හරින්න"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 4f5193a..a1af63e 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -134,6 +134,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Neznáme"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Hlasitosť budíka bola stlmená"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Obnoviť zvuk"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Predvolený zvuk budíka je ticho"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Zmeniť"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Zariadenie je nastavené na úplné ticho"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Tlačidlá hlasitosti"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Odložiť"</item>
@@ -331,10 +334,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibrovanie časovača"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Časovač pozastavený"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Pozastavené časovače (<xliff:g id="NUMBER">%d</xliff:g>)"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Dotykom zobrazíte časovače"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Časovače zobrazíte klepnutím"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"Časovače (<xliff:g id="NUMBER">%d</xliff:g>)"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Ďalší časovač: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Nastavenia šetriča"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Nastavenia šetriča obrazovky"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nočný režim"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Stlmený jas (pre tmavé miestnosti)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Rozbaliť budík"</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index e0e387d..d3922a3 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -134,6 +134,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Neznano"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Glasnost alarma – izklopljen zvok"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Vklop zvoka"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Privzeti ton zvonjenja alarma je »tiho«"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Spremeni"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Naprava je nastavljena na popolno tišino"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Gumbi za glasnost"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Dremež"</item>
@@ -331,10 +334,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibriranje pri časovniku"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Časovnik je zaustavljen"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Zaustavljeni časovniki: <xliff:g id="NUMBER">%d</xliff:g>"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Dotaknite se za prikaz časovnikov"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Dotaknite se, če si želite ogledati časovnike"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"Št. časovnikov: <xliff:g id="NUMBER">%d</xliff:g>"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Naslednji časovnik: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Nastavitve za spanje"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Nastavitve ohranjevalnika zaslona"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nočni način"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Zatemnjen zaslon (za temne prostore)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Razširi budilko"</string>
diff --git a/res/values-sq-rAL/strings.xml b/res/values-sq-rAL/strings.xml
index 4787f71..cb3bb86 100644
--- a/res/values-sq-rAL/strings.xml
+++ b/res/values-sq-rAL/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"E panjohur"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Volumi i alarmit u çaktivizua"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Aktivizo audion"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Pajisja është vendosur në heshtje totale"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Butonat e volumit"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Shty alarmin"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Dridhjet e kohëmatësit"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Kohëmatësi u vendos në pauzë"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> kohëmatës u vendosën në pauzë"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Prek për të parë kohëmatësit"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Trokit për të parë kohëmatësit"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> kohëmatës"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Kohëmatësi tjetër: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Cilësimet e mbrojtësit të ekranit"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Cilësimet e mbrojtësit të ekranit"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modaliteti i natës"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Ekran shumë i zbehtë (për dhoma të errëta)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Zgjero alarmin"</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index fb82aab..4d10522 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -126,6 +126,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Непозната"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Звук аларма је искључен"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Укључи звук"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Подразумевана мелодија звона за аларм је утишана"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Промени"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Уређај је подешен на потпуну тишину"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Дугмад за јачину"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Одложи"</item>
@@ -320,10 +323,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Вибрација тајмера"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Тајмер је паузиран"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Паузираних тајмера: <xliff:g id="NUMBER">%d</xliff:g>"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Додирните да бисте видели тајмере"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Додирните да бисте видели тајмере"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> тајмера"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Следећи тајмер: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Подешавања за Сан"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Подешавања чувара екрана"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Ноћни режим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Веома таман екран (за мрачне собе)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Прошири аларм"</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index bc98eac..5a1fb52 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Okänd"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarmljudet har stängts av"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Slå på ljudet"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Standardsignal för alarm: tyst"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Ändra"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Helt tyst läge är aktiverat på enheten"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Volymknappar"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snooza"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Vibration för timer"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Timern har pausats"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> timer har pausats"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Visa timer genom att trycka"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Tryck här om du vill visa timer"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> timer"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Nästa timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Inställningar för Dröm"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Inställningar för skärmsläckare"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Nattläge"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Mycket ljussvag skärm (för mörka rum)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Expandera alarm"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index fb77793..a5c5a60 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Isiyojulikana"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Sauti ya kengele imezimwa"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Acha kunyamazisha"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Mlio chaguo-msingi wa kengele ni kimya"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Badilisha"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Kifaa kimewekwa katika hali ya kimya"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Vitufe vya kudhibiti sauti"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Nikumbushe baadaye"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Mtetemo wa kipima muda"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Kipima wakati kimesitishwa"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Vipima wakati <xliff:g id="NUMBER">%d</xliff:g> vimesitishwa"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Gusa ili kuona vipima wakati vyako"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Gonga ili uone vipima muda vyako"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"Vipima wakati <xliff:g id="NUMBER">%d</xliff:g>"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Kipima wakati Kinachofuata: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Mipangilio ya Pazia ya Kuvutia"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Mipangilio ya taswira ya skrini"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Modi ya usiku"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Mwangaza hafifu wa skrini katika vyumba vyenye giza"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Panua kengele"</string>
diff --git a/res/layout/blank_footer_view.xml b/res/values-sw320dp/dimens.xml
similarity index 69%
copy from res/layout/blank_footer_view.xml
copy to res/values-sw320dp/dimens.xml
index c9460fc..d64c205 100644
--- a/res/layout/blank_footer_view.xml
+++ b/res/values-sw320dp/dimens.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
+<!-- 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.
@@ -13,7 +13,7 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<View xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:background="@color/transparent"
-    android:layout_height="@dimen/button_footer_height" />
\ No newline at end of file
+
+<resources>
+    <dimen name="big_font_size">60sp</dimen>
+</resources>
\ No newline at end of file
diff --git a/res/values-sw360dp-land/dimens.xml b/res/values-sw360dp-land/dimens.xml
index 0275592..1ff913a 100644
--- a/res/values-sw360dp-land/dimens.xml
+++ b/res/values-sw360dp-land/dimens.xml
@@ -20,6 +20,5 @@
   for different hardware and product builds.
 -->
 <resources>
-  <dimen name="circle_size">232dip</dimen>
   <dimen name="timer_setup_font_size">48sp</dimen>
 </resources>
diff --git a/res/values-sw600dp-land/dimens.xml b/res/values-sw600dp-land/dimens.xml
index ad9e060..1c26c0f 100644
--- a/res/values-sw600dp-land/dimens.xml
+++ b/res/values-sw600dp-land/dimens.xml
@@ -1,20 +1,17 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2011, 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.
-*/
+<!-- Copyright (C) 2011 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.
 -->
 
 <!-- These resources are around just to allow their values to be customized
@@ -26,28 +23,16 @@
     <dimen name="next_alarm_text_size">15sp</dimen>
     <dimen name="time_margin_top">32dip</dimen>
 
-    <dimen name="alarm_side_padding">128dip</dimen>
-    <dimen name="clock_side_padding">48dip</dimen>
-    <dimen name="main_clock_bottom_margin">112dip</dimen>
-
     <dimen name="dialpad_font_size">42sp</dimen>
     <dimen name="dialpad_digit_padding">26dip</dimen>
     <dimen name="timer_setup_font_size">78sp</dimen>
     <dimen name="timer_setup_button_size">36sp</dimen>
-    <dimen name="timer_setup_delete_start_margin">38sp</dimen>
-    <dimen name="timer_setup_label_size">24sp</dimen>
+    <dimen name="timer_setup_delete_margin">19sp</dimen>
 
     <!-- Size of margin for circles. -->
     <dimen name="circle_margin_top">0dp</dimen>
-    <dimen name="circle_margin">48dp</dimen>
     <dimen name="analog_clock_margin">48dp</dimen>
 
-    <dimen name="circle_size">360dip</dimen>
-    <dimen name="stopwatch_circle_margin_bottom">112dip</dimen>
-
-    <dimen name="world_clock_margin">48dp</dimen>
-    <dimen name="sw_padding_end">48dp</dimen>
-
     <!-- The maximum size of the font for the time in widgets. -->
     <dimen name="widget_max_clock_font_size">100dp</dimen>
-</resources>
+</resources>
\ No newline at end of file
diff --git a/res/values-sw600dp/dimens.xml b/res/values-sw600dp/dimens.xml
index 2c9c594..67ac240 100644
--- a/res/values-sw600dp/dimens.xml
+++ b/res/values-sw600dp/dimens.xml
@@ -1,20 +1,17 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2011, 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.
-*/
+<!-- Copyright (C) 2011 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.
 -->
 
 <!-- These resources are around just to allow their values to be customized
@@ -26,9 +23,6 @@
     <dimen name="date_text_size">15sp</dimen>
     <dimen name="next_alarm_text_size">15sp</dimen>
     <dimen name="time_margin_top">48dip</dimen>
-    <dimen name="timer_list_padding_bottom">112dip</dimen>
-    <!-- 88dip + 0.5 of footer_button_size -->
-    <dimen name="timer_cancel_end_margin">128dip</dimen>
     <dimen name="screensaver_margin">20dip</dimen>
     <dimen name="alarm_label_padding">64dip</dimen>
     <dimen name="bottom_text_size">18sp</dimen>
@@ -36,10 +30,6 @@
     <dimen name="bottom_text_spacing_analog">18dp</dimen>
     <dimen name="bottom_text_spacing_analog_small">10dp</dimen>
 
-    <dimen name="alarm_side_padding">48dip</dimen>
-    <dimen name="clock_side_padding">48dip</dimen>
-    <dimen name="clock_side_padding_reduced">36dip</dimen>
-
     <dimen name="main_clock_font_size">125sp</dimen>
     <dimen name="big_font_size">115sp</dimen>
     <dimen name="medium_font_size">96sp</dimen>
@@ -47,7 +37,6 @@
     <dimen name="alarm_label_size">18sp</dimen>
     <dimen name="body_font_size">20sp</dimen>
     <dimen name="day_button_font_size">20sp</dimen>
-    <dimen name="alarm_time_font_size">64sp</dimen>
     <dimen name="alarm_info_font_size">48sp</dimen>
     <dimen name="no_alarm_font_size">20sp</dimen>
 
@@ -57,7 +46,6 @@
     <dimen name="small_space">32dp</dimen>
     <dimen name="medium_space_top">46dp</dimen>
     <dimen name="medium_space_bottom">18dp</dimen>
-    <dimen name="main_clock_padding">40dp</dimen>
 
     <dimen name="label_margin_big">8dp</dimen>
     <dimen name="label_margin_small">4dp</dimen>
@@ -66,24 +54,17 @@
     <dimen name="dialpad_digit_padding">34dip</dimen>
     <dimen name="timer_setup_font_size">86sp</dimen>
     <dimen name="timer_setup_button_size">36sp</dimen>
-    <dimen name="timer_setup_delete_start_margin">42sp</dimen>
-    <dimen name="timer_setup_label_size">28sp</dimen>
+    <dimen name="timer_setup_delete_margin">21sp</dimen>
 
     <!-- Size of margin for circles. -->
     <dimen name="circle_margin_top">48dp</dimen>
-    <dimen name="circle_margin">96dp</dimen>
     <dimen name="analog_clock_margin">96dp</dimen>
 
-    <dimen name="circle_size">400dp</dimen>
-    <!-- stopwatch_list_bottom_spacing = footer_button_size + footer_button_layout_margin -->
-    <dimen name="list_bottom_spacing">96dip</dimen>
-
      <!-- Width of the clock, for use with alarm buttons. -->
     <dimen name="alarm_alert_display_width">550dip</dimen>
 
     <!-- Size of analog clock in world clock. -->
-    <dimen name="world_clock_analog_size">200dip</dimen>
-    <dimen name="world_clock_margin">96dp</dimen>
+    <dimen name="world_clock_analog_size">200dp</dimen>
 
     <dimen name="min_analog_widget_size">170dp</dimen>
 
@@ -98,6 +79,4 @@
     <dimen name="city_widget_name_font_size">20dp</dimen>
     <!-- The maximum size of the font for the time in widgets. -->
     <dimen name="widget_max_clock_font_size">125dp</dimen>
-
-    <dimen name="footer_button_size">80dip</dimen>
-</resources>
+</resources>
\ No newline at end of file
diff --git a/res/values-sw720dp-land/dimens.xml b/res/values-sw720dp-land/dimens.xml
index 525d655..d3046f2 100644
--- a/res/values-sw720dp-land/dimens.xml
+++ b/res/values-sw720dp-land/dimens.xml
@@ -1,34 +1,27 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2012 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
-  -->
+<!-- Copyright (C) 2012 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.
+-->
 
 <!-- These resources are around just to allow their values to be customized
      for different hardware and product builds. -->
 <resources>
 
-    <dimen name="alarm_alert_clock_padding_left">128dp</dimen>
-
     <dimen name="dialpad_font_size">42sp</dimen>
     <dimen name="dialpad_digit_padding">26dip</dimen>
     <dimen name="timer_setup_font_size">78sp</dimen>
     <dimen name="timer_setup_button_size">36sp</dimen>
-    <dimen name="timer_setup_delete_start_margin">38sp</dimen>
-    <dimen name="timer_setup_label_size">24sp</dimen>
+    <dimen name="timer_setup_delete_margin">19sp</dimen>
 
-    <dimen name="alarm_side_padding">192dip</dimen>
-    <dimen name="clock_side_padding">96dip</dimen>
-
-</resources>
+</resources>
\ No newline at end of file
diff --git a/res/values-sw720dp/dimens.xml b/res/values-sw720dp/dimens.xml
index 9e87600..31b2e41 100644
--- a/res/values-sw720dp/dimens.xml
+++ b/res/values-sw720dp/dimens.xml
@@ -1,31 +1,26 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ 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
-  -->
+<!-- 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.
+-->
 
 <!-- These resources are around just to allow their values to be customized
      for different hardware and product builds. -->
 <resources>
 
-    <dimen name="alarm_side_padding">96dip</dimen>
-    <dimen name="clock_side_padding">128dip</dimen>
-    <dimen name="clock_side_padding_reduced">116dip</dimen>
-
     <dimen name="big_font_size">152sp</dimen>
     <dimen name="medium_font_size">80sp</dimen>
 
     <!-- The maximum size of the font for the time in widgets. -->
     <dimen name="widget_max_clock_font_size">138dp</dimen>
-</resources>
+</resources>
\ No newline at end of file
diff --git a/res/values-ta-rIN/strings.xml b/res/values-ta-rIN/strings.xml
index 250b2cb..a3ffdd3 100644
--- a/res/values-ta-rIN/strings.xml
+++ b/res/values-ta-rIN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"அறியப்படாதது"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"அலார ஒலி முடக்கப்பட்டது"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"ஒலி இயக்கு"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"\"தொந்தரவு செய்ய வேண்டாம்\" அம்சம் இயக்கத்திலுள்ளது"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ஒலியளவு பொத்தான்கள்"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"உறக்கநிலை"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"டைமர் அதிர்வு"</string>
     <string name="timer_paused" msgid="5941160896040771462">"டைமர் இடைநிறுத்தப்பட்டது"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> டைமர்கள் இடைநிறுத்தப்பட்டன"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"உங்கள் டைமர்களைப் பார்க்க தொடவும்"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"டைமர்களைப் பார்க்க, தட்டவும்"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> டைமர்கள்"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"அடுத்த டைமர்: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"இயக்க அமைப்பு"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"ஸ்கிரீன் சேவர் அமைப்புகள்"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"இரவு பயன்முறை"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"மிகவும் மங்கலான காட்சி (இருண்ட அறைகளுக்கானது)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"அலாரத்தை விரிவாக்கு"</string>
diff --git a/res/values-te-rIN/strings.xml b/res/values-te-rIN/strings.xml
index cf26d5e..ca9ef5a 100644
--- a/res/values-te-rIN/strings.xml
+++ b/res/values-te-rIN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"తెలియనివి"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"అలారం వాల్యూమ్ మ్యూట్ చేయబడింది"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"అన్‌మ్యూట్ చేయి"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"పరికరం పూర్తి నిశ్శబ్దానికి సెట్ చేయబడింది"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"వాల్యూమ్ బటన్‌లు"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"తాత్కాలిక ఆపివేత"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"టైమర్ వైబ్రేషన్"</string>
     <string name="timer_paused" msgid="5941160896040771462">"టైమర్ పాజ్ చేయబడింది"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> టైమర్‌లు పాజ్ చేయబడ్డాయి"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"మీ టైమర్‌లను చూడటానికి తాకండి"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"మీ టైమర్‌లను చూడటానికి నొక్కండి"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> టైమర్‌లు"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"తదుపరి టైమర్: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"డ్రీమ్ సెట్టింగ్‌లు"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"స్క్రీన్ సేవర్ సెట్టింగ్‌లు"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"రాత్రి మోడ్"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"డిస్‌ప్లే అత్యంత కాంతివిహీనంగా ఉంటుంది (చీకటిగా ఉండే గదుల కోసం)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"అలారంను విస్తరింపజేయండి"</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index d882a22..cb000a4 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"ไม่ทราบ"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"ปิดเสียงปลุกแล้ว"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"เปิดเสียง"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"อุปกรณ์อยู่ในโหมดปิดเสียง"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"ปุ่มระดับเสียง"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"ปิดเสียงเตือนชั่วคราว"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ตัวจับเวลาสั่น"</string>
     <string name="timer_paused" msgid="5941160896040771462">"หยุดตัวจับเวลาชั่วคราวแล้ว"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"หยุด <xliff:g id="NUMBER">%d</xliff:g> ตัวจับเวลาชั่วคราว"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"แตะเพื่อดูนาฬิกาจับเวลาของคุณ"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"แตะเพื่อดูตัวจับเวลา"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"นาฬิกาจับเวลา <xliff:g id="NUMBER">%d</xliff:g> เรือน"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"นาฬิกาจับเวลาถัดไป: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"การตั้งค่าเดย์ดรีม"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"การตั้งค่าโปรแกรมรักษาหน้าจอ"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"โหมดกลางคืน"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"หน้าจอมืดมาก (สำหรับห้องมืด)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"ขยายการแจ้งเตือน"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 14c72f7..48f8828 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Hindi alam"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Naka-mute ang volume ng alarm"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"I-unmute"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Nakatakda ang device na hindi talaga tumunog"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Button ng volume"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"I-snooze"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Pag-vibrate ng timer"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Naka-pause ang timer"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Naka-pause ang <xliff:g id="NUMBER">%d</xliff:g> timer"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Pindutin upang tingnan ang iyong mga timer"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"I-tap upang makita ang iyong mga timer"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> (na) timer"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Susunod na timer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Mga setting ng dream"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Mga setting ng screen saver"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Night mode"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Napakadilim na display (para sa madidilim na kuwarto)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Alarm sa pagpalawak"</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 683245b..3da4bd6 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Bilinmiyor"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Alarm sesi kapatıldı"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Sesi aç"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Cihaz tamamen sessize ayarlı"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Ses düğmeleri"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Ertele"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Zamanlayıcı titreşimi"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Zamanlayıcı duraklatıldı"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> zamanlayıcı duraklatıldı"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Zamanlayıcılarınızı görmek için dokunun"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Zamanlayıcılarınızı görmek için hafifçe dokunun"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> zamanlayıcı"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Sonraki zamanlayıcı: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Hafif uyku ayarları"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ekran koruyucusu ayarları"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Gece modu"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Çok karanlık ekran (karanlık odalar için)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Alarmı genişlet"</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index a7e73e1..381ba54 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -134,6 +134,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Невідомий сигнал"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Гучність будильника вимкнено"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Увімкнути звук"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"На пристрої ввімкнено режим \"Без сигналів\""</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Кнопки гучності"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Відкласти"</item>
@@ -331,10 +336,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Вібросигнал таймера"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Таймер призупинено"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Призупинено таймерів: <xliff:g id="NUMBER">%d</xliff:g>"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Торкніться, щоб переглянути свої таймери"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Торкніться, щоб переглянути таймери"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"Таймерів: <xliff:g id="NUMBER">%d</xliff:g>"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Наступний за <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Параметри заставки"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Налаштування заставки"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Нічний режим"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Дуже тьмяний дисплей (для темних приміщень)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Посилити сигнал"</string>
diff --git a/res/values-ur-rPK/strings.xml b/res/values-ur-rPK/strings.xml
index 650e8c5..4b34091 100644
--- a/res/values-ur-rPK/strings.xml
+++ b/res/values-ur-rPK/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"نامعلوم"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"الارم کی آواز خاموش ہے"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"آواز چالو کریں"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"آلہ مکمل خاموشی پر سیٹ ہے"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"والیوم بٹنز"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"اسنوز کریں"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"ٹائمر ارتعاش"</string>
     <string name="timer_paused" msgid="5941160896040771462">"ٹائمر موقوف ہو گیا"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ٹائمرز موقوف ہو گئے"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"اپنے ٹائمرز دیکھنے کیلئے ٹچ کریں"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"اپنے ٹائمرز دیکھنے کے لئے تھپتھپائیں"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ٹائمرز"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"اگلا ٹائمر: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"ڈریم کی ترتیبات"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"اسکرین سیور کی ترتیبات"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"رات وضع"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"بہت کم روشن ڈسپلے (تاریک کمروں کیلئے)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"الارم کی توسیع کریں"</string>
diff --git a/res/values-uz-rUZ/strings.xml b/res/values-uz-rUZ/strings.xml
index 206e388..45285ff 100644
--- a/res/values-uz-rUZ/strings.xml
+++ b/res/values-uz-rUZ/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Noma’lum"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Uyg‘otkich ovozi o‘chirilgan"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Ovozni yoqish"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Qurilma to‘liq sukut rejimiga sozlangan"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Ovoz tugmalari"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Qoldirish"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Taymer tebranishi"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Taymer pauza qilindi"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> ta taymer pauza qilindi"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Taymerlarni ko‘rish uchun bosing"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Taymerlarni ko‘rish uchun bosing"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> ta taymer"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Keyingi taymer: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Lavha sozlamalari"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Ekran lavhasi sozlamalari"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Tungi rejim"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Xira ekran (qorong‘i xonalar uchun)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Uyg‘otkichni ochish"</string>
diff --git a/res/values-v21/dimens.xml b/res/values-v21/dimens.xml
index f320981..704ab81 100644
--- a/res/values-v21/dimens.xml
+++ b/res/values-v21/dimens.xml
@@ -16,10 +16,16 @@
   -->
 
 <resources>
-    <!-- Floating action button style -->
-    <dimen name="fab_margin">16dp</dimen>
+    <!-- Lollipop and later mini floating action button margin. -->
+    <dimen name="fab_margin">8dp</dimen>
 
-  <!-- Size of margin between icon and text / title text. -->
-  <dimen name="notification_content_margin_start">0dp</dimen>
+    <!-- Lollipop and later mini floating action button container height. -->
+    <dimen name="fab_height">56dp</dimen>
 
-</resources>
+    <!-- Lollipop and later mini floating action button size. -->
+    <dimen name="fab_button_size">@dimen/design_fab_size_mini</dimen>
+
+    <!-- Size of margin between icon and text / title text. -->
+    <dimen name="notification_content_margin_start">0dp</dimen>
+
+</resources>
\ No newline at end of file
diff --git a/res/values-v23/styles.xml b/res/values-v23/styles.xml
index 3996711..8994fdd 100644
--- a/res/values-v23/styles.xml
+++ b/res/values-v23/styles.xml
@@ -1,4 +1,19 @@
 <?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.
+-->
+
 <resources>
 
     <style name="SettingsAlertDialogTheme" parent="android:ThemeOverlay.Material.Dialog.Alert" />
@@ -18,4 +33,14 @@
         <item name="android:shadowDy">@dimen/widget_shadow_dy</item>
     </style>
 
+    <style name="timer_setup_digit">
+        <item name="android:ellipsize">none</item>
+        <item name="android:fontFamily">sans-serif-thin</item>
+        <item name="android:fontFeatureSettings">tnum</item>
+        <item name="android:includeFontPadding">false</item>
+        <item name="android:singleLine">true</item>
+        <item name="android:textColor">@color/clock_white</item>
+        <item name="android:textSize">@dimen/timer_setup_font_size</item>
+    </style>
+
 </resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index 8f1c754..40e8931 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Không xác định"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Đã tắt âm lượng báo thức"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Hiển thị"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Thiết bị được đặt thành hoàn toàn tắt tiếng"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Nút âm lượng"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Báo lại"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Bộ hẹn giờ rung"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Đã tạm dừng hẹn giờ"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"Đã tạm dừng <xliff:g id="NUMBER">%d</xliff:g> hẹn giờ"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Chạm để xem bộ hẹn giờ của bạn"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Nhấn để xem bộ hẹn giờ của bạn"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> bộ hẹn giờ"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Bộ hẹn giờ tiếp theo: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Cài đặt bảo vệ màn hình"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Cài đặt trình bảo vệ màn hình"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Chế độ ban đêm"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Màn hình rất mờ (đối với phòng tối)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Mở rộng báo thức"</string>
diff --git a/res/values-w470dp-v21/dimens.xml b/res/values-w470dp-v21/dimens.xml
new file mode 100644
index 0000000..85d53ac
--- /dev/null
+++ b/res/values-w470dp-v21/dimens.xml
@@ -0,0 +1,29 @@
+<?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.
+-->
+
+<!-- Fab automatically adjusts its size from mini to normal at this width. Mirror the change so the
+values can be used elsewhere in clock layouts. -->
+<resources>
+    <!-- Lollipop and later normal floating action button margin. -->
+    <dimen name="fab_margin">16dp</dimen>
+
+    <!-- Lollipop and later normal floating action button container height. -->
+    <dimen name="fab_height">88dp</dimen>
+
+    <!-- Lollipop and later normal floating action button size. -->
+    <dimen name="fab_button_size">@dimen/design_fab_size_normal</dimen>
+
+</resources>
\ No newline at end of file
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 1654114..867d131 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"未知"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"闹钟已设为静音"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"取消静音"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"设备已设为“完全静音”"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"音量按钮"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"暂停"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"计时器振动"</string>
     <string name="timer_paused" msgid="5941160896040771462">"计时器已暂停"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> 个计时器已暂停"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"触摸可查看您的计时器"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"点按即可查看您的计时器"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g>个计时器"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"下一个计时器:<xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"互动式屏保设置"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"屏保设置"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"夜间模式"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"将屏幕亮度调至非常低(适合光线昏暗的环境)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"展开闹钟"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 778301a..920f6ad 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"不明"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"鬧鐘已設為靜音"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"取消靜音"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"裝置已設定為完全靜音"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"音量按鈕"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"重響"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"計時器震動"</string>
     <string name="timer_paused" msgid="5941160896040771462">"計時器已暫停"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> 個計時器已暫停"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"輕觸即可查看您的計時器"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"輕按即可查看計時器"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> 個計時器"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"下一個計時器:<xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Dream 設定"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"螢幕保護設定"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"夜間模式"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"非常暗淡的顯示 (適用於昏暗的室內環境)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"展開鬧鐘"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 274a542..3e53ba7 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -118,6 +118,11 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"不明"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"鬧鐘已設為靜音"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"取消靜音"</string>
+    <!-- no translation found for silent_default_alarm_ringtone (6012855475009670997) -->
+    <skip />
+    <!-- no translation found for change_default_alarm_ringtone (7040346397494294392) -->
+    <skip />
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"裝置已設為完全靜音"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"音量按鈕"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"暫停"</item>
@@ -309,10 +314,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"計時器震動"</string>
     <string name="timer_paused" msgid="5941160896040771462">"計時器已暫停"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> 個計時器已暫停"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"輕觸即可查看您的計時器"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"輕觸即可查看計時器"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> 個計時器"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"下一個計時器:<xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"休眠模式設定"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"螢幕保護程式設定"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"夜間模式"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"非常暗淡的顯示畫面 (適用於昏暗的室內)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"展開鬧鐘"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index e5faeb3..8458e6a 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -118,6 +118,9 @@
     <string name="unknown_ringtone_title" msgid="6637522029614550112">"Akwaziwa"</string>
     <string name="alarm_volume_muted" msgid="6658289289695673569">"Ivolumu ye-alamu ithulisiwe"</string>
     <string name="unmute_alarm_volume" msgid="2655009276035357497">"Susa ukuthula"</string>
+    <string name="silent_default_alarm_ringtone" msgid="6012855475009670997">"Ithoni yokukhala ezenzakalelayo ithulile"</string>
+    <string name="change_default_alarm_ringtone" msgid="7040346397494294392">"Shintsha"</string>
+    <string name="alarms_blocked_by_dnd" msgid="6089433757505898969">"Idivayisi isethelwe ekuthuleni okuphelele"</string>
     <string name="volume_button_setting_title" msgid="6937131248843413357">"Izinkinobho zevolumu"</string>
   <string-array name="volume_button_setting_entries">
     <item msgid="7972756698723318690">"Snuza"</item>
@@ -309,10 +312,10 @@
     <string name="timer_vibrate_title" msgid="7788920024785587518">"Ukudlidlizela kwesibali sesikhathi"</string>
     <string name="timer_paused" msgid="5941160896040771462">"Isibali sikhathi simiswe isikhashana"</string>
     <string name="timers_stopped" msgid="3186191253226005149">"<xliff:g id="NUMBER">%d</xliff:g> izibali sikhathi ezimiswe isikhashana"</string>
-    <string name="all_timers_stopped_notif" msgid="278532320068394600">"Thinta ukuze ubone izikhathi zakho"</string>
+    <string name="all_timers_stopped_notif" msgid="883027111895833440">"Thepha ukuze ubone izibali zakho zesikhathi"</string>
     <string name="timers_in_use" msgid="5570729467344408506">"<xliff:g id="NUMBER">%d</xliff:g> izikhathi"</string>
     <string name="next_timer_notif" msgid="6136454740115613653">"Isikhathi esilandelayo: <xliff:g id="TIME_REMAINING">%s</xliff:g>"</string>
-    <string name="screensaver_settings" msgid="7013450738357352801">"Izilungiselelo ziphupho"</string>
+    <string name="screensaver_settings" msgid="1780742944194267226">"Izilungiselelo zokulondoloza isikrini"</string>
     <string name="night_mode_title" msgid="5983813889469616299">"Imodi yasebusuku"</string>
     <string name="night_mode_summary" msgid="1017350187324162631">"Ukubonisa okufiphele kakhulu (ngamagumbi amnyama)"</string>
     <string name="expand_alarm" msgid="7392616528943305020">"Nwebissa i-alamu"</string>
diff --git a/res/values/config.xml b/res/values/config.xml
index 6c879c7..749706d 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -18,6 +18,4 @@
      for different hardware and product builds. -->
 <resources>
     <bool name="config_rotateAlarmAlert">false</bool>
-    <!-- Number of world clocks in a row, for the clock tab. -->
-    <item type="integer" name="world_clocks_per_row">1</item>
-</resources>
+</resources>
\ No newline at end of file
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index d8844a8..41864eb 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -1,20 +1,17 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2011, 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.
-*/
+<!-- Copyright (C) 2011 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.
 -->
 
 <!-- These resources are around just to allow their values to be customized
@@ -24,19 +21,12 @@
     <dimen name="label_edittext_padding">21dp</dimen>
     <dimen name="time_margin_top">32dip</dimen>
     <dimen name="timer_padding">16dp</dimen>
-    <dimen name="timer_list_padding_bottom">88dip</dimen>
-    <!-- 88dip + 0.5 of footer_button_size -->
     <dimen name="screensaver_margin">16dip</dimen>
     <dimen name="alarm_label_padding">8dip</dimen>
     <dimen name="bottom_text_spacing_digital">-8dp</dimen>
     <dimen name="bottom_text_spacing_analog">14dp</dimen>
     <dimen name="bottom_text_spacing_analog_small">6dp</dimen>
 
-    <dimen name="alarm_side_padding">12dip</dimen>
-    <dimen name="clock_side_padding">12dip</dimen>
-    <!-- clock_side_padding_reduced = clock_side_padding - clock_fragment_end_padding -->
-    <dimen name="clock_side_padding_reduced">0dip</dimen>
-    <dimen name="clock_fragment_end_padding">12dip</dimen>
     <dimen name="alarm_clock_vertical_margin">12dip</dimen>
 
     <!-- Analog clock size in the the screen saver -->
@@ -44,26 +34,25 @@
 
     <dimen name="actionbar_tab_padding">0dip</dimen>
 
-    <dimen name="footer_button_size">56dip</dimen>
-
-    <dimen name="alarm_text_font_size">16sp</dimen>
-    <dimen name="circletimer_dot_size">12dip</dimen>
-    <dimen name="circletimer_circle_size">4dip</dimen>
-    <dimen name="circletimer_marker_size">16dip</dimen>
+    <dimen name="alarm_text_font_size">12sp</dimen>
+    <dimen name="circletimer_dot_size">12dp</dimen>
+    <dimen name="circletimer_circle_size">4dp</dimen>
+    <dimen name="circletimer_marker_size">16dp</dimen>
+    <dimen name="max_timer_circle_size">360dp</dimen>
 
     <dimen name="alarm_lockscreen_alarm_horizontal_padding">16dp</dimen>
     <dimen name="alarm_lockscreen_alarm_vertical_padding">48dp</dimen>
     <dimen name="alarm_lockscreen_pulse_radius">128dp</dimen>
     <dimen name="alarm_lockscreen_bottom_margin">40dp</dimen>
 
-    <dimen name="main_clock_font_size">70sp</dimen>
-    <dimen name="big_font_size">60sp</dimen>
+    <dimen name="main_clock_font_size">64sp</dimen>
+    <dimen name="big_font_size">32sp</dimen>
     <dimen name="medium_font_size">56sp</dimen>
     <dimen name="small_font_size">32sp</dimen>
     <dimen name="label_font_size">16sp</dimen>
     <dimen name="header_font_size">24sp</dimen>
-    <dimen name="day_button_font_size">18sp</dimen>
-    <dimen name="alarm_time_font_size">64sp</dimen>
+    <dimen name="day_button_font_size">16sp</dimen>
+    <dimen name="alarm_time_font_size">48sp</dimen>
     <dimen name="alarm_info_font_size">36sp</dimen>
     <dimen name="no_alarm_font_size">16sp</dimen>
 
@@ -88,9 +77,8 @@
     <!--padding should be (in dip) ~ 60% dialpad_font_size -->
     <dimen name="timer_setup_font_size">38sp</dimen>
     <!--margin should be ~ half timer_setup_font_size -->
-    <dimen name="timer_setup_delete_start_margin">28sp</dimen>
-    <dimen name="timer_setup_delete_padding">12dip</dimen>
-    <dimen name="timer_setup_label_size">18sp</dimen>
+    <dimen name="timer_setup_delete_margin">14sp</dimen>
+    <dimen name="timer_setup_delete_padding">12dp</dimen>
 
     <dimen name="cities_list_item_height">56dip</dimen>
 
@@ -98,15 +86,8 @@
     <dimen name="circle_margin_top">16dp</dimen>
     <dimen name="analog_clock_margin">60dp</dimen>
 
-    <dimen name="circle_size">280dp</dimen>
-    <!--
-        list_bottom_spacing = footer_button_size + footer_button_layout_margin.
-        Used by both StopwatchFragment and AlarmFragment.
-    -->
-    <dimen name="list_bottom_spacing">72dip</dimen>
-
     <!-- The width and height of the notification icon -->
-    <dimen name="notification_icon_size">64dip</dimen>
+    <dimen name="notification_icon_size">64dp</dimen>
      <!-- Size of notification text (see TextAppearance.StatusBar.EventContent) -->
     <dimen name="notification_text_size">14dp</dimen>
     <!-- Size of notification text titles (see TextAppearance.StatusBar.EventContent.Title) -->
@@ -118,12 +99,9 @@
     <!-- Bottom padding for alarm lock screen hint text -->
 
     <!-- Size of time zone analog clocks in world clock. -->
-    <dimen name="world_clock_analog_size">100dip</dimen>
-    <dimen name="world_clock_margin">32dp</dimen>
-
-    <!-- Height of the button footers. 56 height and 16 on top and bottom. -->
-    <dimen name="button_footer_height">88dip</dimen>
-    <!-- Negative value of the height of the button footers, for use with lightsout. -->
+    <dimen name="world_clock_analog_size">100dp</dimen>
+    <!-- Size of digital world clock font in landscape. -->
+    <dimen name="world_clock_digital_font_size">40sp</dimen>
 
     <dimen name="min_analog_widget_size">110dp</dimen>
 
@@ -144,17 +122,14 @@
     <item name="widget_shadow_radius" format="float" type="dimen">2.75</item>
     <item name="widget_shadow_dy" format="float" type="dimen">2.0</item>
 
-    <!-- Bottom margin for the expand area -->
-    <dimen name="collapse_expand_height">72dip</dimen>
-
     <!-- Divider height -->
-    <dimen name="hairline_height">1dip</dimen>
+    <dimen name="hairline_height">1dp</dimen>
 
     <!-- Divider side padding -->
     <dimen name="hairline_side_padding">6dp</dimen>
 
     <!-- The minimum height/width of any touch target -->
-    <dimen name="touch_target_min_size">48dip</dimen>
+    <dimen name="touch_target_min_size">48dp</dimen>
 
     <!-- Dimens for cities fastscroll -->
     <dimen name="fastscroll_thumb_height">48dp</dimen>
@@ -169,15 +144,21 @@
     <dimen name="icon_margin">4dp</dimen>
 
     <!-- Padding between checkbox and text. -->
-    <dimen name="checkbox_start_padding">20dp</dimen>
+    <dimen name="checkbox_start_padding">12dp</dimen>
 
     <!-- Dimens for taller rows on Alarms tab -->
     <dimen name="tall_row_height">58dp</dimen>
 
-    <!-- Floating action button style -->
-    <dimen name="fab_margin">0dp</dimen>
+    <!-- Kitkat and later floating action button elevation. -->
     <dimen name="fab_elevation">8dp</dimen>
 
-    <!-- Height of the bar containing the floating action button -->
-    <dimen name="fab_height">88dp</dimen>
-</resources>
+    <!-- KitKat floating action button margin; see -v21 folder for newer platforms. -->
+    <dimen name="fab_margin">0dp</dimen>
+
+    <!-- KitKat floating action button container height; see -v21 folder for newer platforms. -->
+    <dimen name="fab_height">96dp</dimen>
+
+    <!-- KitKat floating action button size; see -v21 folder for newer platforms. -->
+    <dimen name="fab_button_size">@dimen/design_fab_size_normal</dimen>
+
+</resources>
\ No newline at end of file
diff --git a/res/layout/blank_footer_view.xml b/res/values/fractions.xml
similarity index 60%
copy from res/layout/blank_footer_view.xml
copy to res/values/fractions.xml
index c9460fc..62c866d 100644
--- a/res/layout/blank_footer_view.xml
+++ b/res/values/fractions.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
+<!-- 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.
@@ -13,7 +13,11 @@
      See the License for the specific language governing permissions and
      limitations under the License.
 -->
-<View xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:background="@color/transparent"
-    android:layout_height="@dimen/button_footer_height" />
\ No newline at end of file
+
+<resources>
+    <!-- In portrait, -100% height implies only width is used to size the timer container. -->
+    <fraction name="timer_circle_height_percent">-100%</fraction>
+
+    <!-- In portrait, timer circles are 60% of the container width; height matches width. -->
+    <fraction name="timer_circle_width_percent">60%</fraction>
+</resources>
\ No newline at end of file
diff --git a/res/values/ids.xml b/res/values/ids.xml
index d195123..cc80468 100644
--- a/res/values/ids.xml
+++ b/res/values/ids.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 The Android Open Source Project
+<!-- 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.
@@ -16,4 +16,9 @@
 
 <resources>
     <item name="numbers_key" type="id" />
+
+    <item name="menu_item_search" type="id" />
+    <item name="menu_item_sort" type="id" />
+    <item name="menu_item_night_mode" type="id" />
+    <item name="menu_item_settings" type="id" />
 </resources>
diff --git a/res/values/integers.xml b/res/values/integers.xml
index 76565ba..58afbb9 100644
--- a/res/values/integers.xml
+++ b/res/values/integers.xml
@@ -16,4 +16,6 @@
 
 <resources>
     <integer name="chevron_rotate_180">180</integer>
-</resources>
+    <integer name="gutter_width_percent">4</integer>
+    <integer name="guttered_content_width_percent">92</integer>
+</resources>
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index eb3422f..dccf10a 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -288,12 +288,21 @@
     <!-- Title for ringtones that cannot be located by uri. -->
     <string name="unknown_ringtone_title">Unknown</string>
 
-    <!-- Text to display when alarm volume is muted. -->
+    <!-- Text to display when alarm volume is muted. [CHAR LIMIT=50] -->
     <string name="alarm_volume_muted">Alarm volume muted</string>
 
-    <!-- Text for action that presents a volume control to adjust alarm volume. -->
+    <!-- Text for action that presents a volume control to adjust alarm volume. [CHAR LIMIT=20] -->
     <string name="unmute_alarm_volume">Unmute</string>
 
+    <!-- Text to display when system default alarm ringtone is silent. [CHAR LIMIT=50] -->
+    <string name="silent_default_alarm_ringtone">Default alarm ringtone is silent</string>
+
+    <!-- Text for action that shows the UI that changes the default alarm ringtone. [CHAR LIMIT=20] -->
+    <string name="change_default_alarm_ringtone">Change</string>
+
+    <!-- Text to display when do-not-disturb is blocking alarms. [CHAR LIMIT=60] -->
+    <string name="alarms_blocked_by_dnd">Device is set to total silence</string>
+
     <!-- Title of the setting to change hardware button behavior. This string
          should be changed for each piece of hardware. [CHAR LIMIT=20] -->
     <string name="volume_button_setting_title">Volume buttons</string>
@@ -726,15 +735,15 @@
     <!-- Notification title when multiple timers are paused. [CHAR LIMIT = 30] -->
     <string name="timers_stopped"><xliff:g id="number" example="7">%d</xliff:g> timers paused</string>
     <!-- Notification text when multiple timers are paused. -->
-    <string name="all_timers_stopped_notif">Touch to see your timers</string>
+    <string name="all_timers_stopped_notif">Tap to see your timers</string>
     <!-- Notification title when at least one timer, of those in use, is counting down. -->
     <string name="timers_in_use"><xliff:g id="number" example="7">%d</xliff:g> timers</string>
     <!-- Notification text when at least one timer, of those in use, is counting down. -->
     <string name="next_timer_notif">Next timer: <xliff:g id="time_remaining" example="2 minutes remaining">%s</xliff:g></string>
 
     <!-- screensaver settings strings -->
-    <!-- Label for the screen saver activity displayed on-screen when that activity must be represented to the user. -->
-    <string name="screensaver_settings">Dream settings</string>
+    <!-- Title for the screen saver settings activity. -->
+    <string name="screensaver_settings">Screen saver settings</string>
     <!-- Title for check box to pick intensity of display diminuation during dream mode -->
     <string name="night_mode_title">Night mode</string>
     <!-- Describes intensity of display diminuation during dream mode -->
@@ -953,4 +962,3 @@
     <string name="alarm_is_snoozed"><xliff:g id="alarm_time" example="14:20">%s</xliff:g> alarm snoozed for 10 minutes</string>
 
 </resources>
-
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 17d76ad..f6a86b5 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -126,12 +126,19 @@
     </style>
 
     <style name="timer_setup_digit">
-        <item name="android:textSize">@dimen/timer_setup_font_size</item>
+        <item name="android:ellipsize">none</item>
+        <item name="android:includeFontPadding">false</item>
         <item name="android:fontFamily">sans-serif-thin</item>
+        <item name="android:singleLine">true</item>
+        <item name="android:textColor">@color/clock_white</item>
+        <item name="android:textSize">@dimen/timer_setup_font_size</item>
     </style>
 
-    <style name="timer_setup_label">
-        <item name="android:textSize">@dimen/timer_setup_label_size</item>
+    <style name="timer_setup_label" parent="label">
+        <item name="android:ellipsize">none</item>
+        <item name="android:fontFamily">sans-serif-thin</item>
+        <item name="android:singleLine">true</item>
+        <item name="android:textColor">@color/clock_white</item>
     </style>
 
     <style name="medium_light">
@@ -197,7 +204,7 @@
         <item name="android:textStyle">bold</item>
     </style>
 
-    <style name="dialpad">
+    <style name="dialpad" parent="Widget.AppCompat.Button.Borderless">
         <item name="android:textSize">@dimen/dialpad_font_size</item>
         <item name="android:fontFamily">sans-serif-thin</item>
     </style>
diff --git a/res/xml/dream_info.xml b/res/xml/screensaver_info.xml
similarity index 100%
rename from res/xml/dream_info.xml
rename to res/xml/screensaver_info.xml
diff --git a/res/xml/dream_settings.xml b/res/xml/screensaver_settings.xml
similarity index 85%
rename from res/xml/dream_settings.xml
rename to res/xml/screensaver_settings.xml
index 5c7a3e1..1680aab 100644
--- a/res/xml/dream_settings.xml
+++ b/res/xml/screensaver_settings.xml
@@ -15,16 +15,19 @@
 <PreferenceScreen
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:title="@string/app_label">
+
     <ListPreference
-        android:key="screensaver_clock_style"
-        android:title="@string/clock_style"
+        android:defaultValue="@string/default_clock_style"
+        android:dialogTitle="@string/clock_style"
         android:entries="@array/clock_style_entries"
         android:entryValues="@array/clock_style_values"
-        android:defaultValue="@string/default_clock_style"
-        android:dialogTitle="@string/clock_style" />
+        android:key="screensaver_clock_style"
+        android:title="@string/clock_style" />
+
     <CheckBoxPreference
+        android:defaultValue="true"
         android:key="screensaver_night_mode"
-        android:title="@string/night_mode_title"
         android:summary="@string/night_mode_summary"
-        android:defaultValue="true" />
-</PreferenceScreen>
+        android:title="@string/night_mode_title" />
+
+</PreferenceScreen>
\ No newline at end of file
diff --git a/src/com/android/alarmclock/WidgetUtils.java b/src/com/android/alarmclock/WidgetUtils.java
index e3099cc..be7bf33 100644
--- a/src/com/android/alarmclock/WidgetUtils.java
+++ b/src/com/android/alarmclock/WidgetUtils.java
@@ -18,11 +18,11 @@
 
 import android.appwidget.AppWidgetManager;
 import android.content.Context;
-import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.os.Bundle;
 
 import com.android.deskclock.R;
+import com.android.deskclock.Utils;
 
 public final class WidgetUtils {
 
@@ -44,7 +44,7 @@
                 // No data , do no scaling
                 return 1f;
             }
-            Resources res = context.getResources();
+            final Resources res = context.getResources();
             float density = res.getDisplayMetrics().density;
             float ratio = (density * minWidth) / res.getDimension(R.dimen.min_digital_widget_width);
             ratio = Math.min(ratio, getHeightScaleRatio(context, options, id));
@@ -55,7 +55,7 @@
             }
 
             ratio = Math.min(ratio, 1.6f);
-            if (res.getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
+            if (Utils.isPortrait(context)) {
                 ratio = Math.max(ratio, .71f);
             }
             else {
@@ -82,10 +82,10 @@
                 // No data , do no scaling
                 return 1f;
             }
-            Resources res = context.getResources();
+            final Resources res = context.getResources();
             float density = res.getDisplayMetrics().density;
             float ratio = density * minHeight / res.getDimension(R.dimen.min_digital_widget_height);
-            if (res.getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
+            if (Utils.isPortrait(context)) {
                 return ratio * 1.75f;
             }
             return ratio;
diff --git a/src/com/android/deskclock/AlarmInitReceiver.java b/src/com/android/deskclock/AlarmInitReceiver.java
index 69badef..a5dc04e 100644
--- a/src/com/android/deskclock/AlarmInitReceiver.java
+++ b/src/com/android/deskclock/AlarmInitReceiver.java
@@ -16,6 +16,7 @@
 
 package com.android.deskclock;
 
+import android.annotation.SuppressLint;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
@@ -26,6 +27,15 @@
 import com.android.deskclock.events.Events;
 
 public class AlarmInitReceiver extends BroadcastReceiver {
+
+    /**
+     * When running on N devices, we're interested in the boot completed event that is sent while
+     * the user is still locked, so that we can schedule alarms.
+     */
+    @SuppressLint("InlinedApi")
+    private static final String ACTION_BOOT_COMPLETED = Utils.isNOrLater()
+            ? Intent.ACTION_LOCKED_BOOT_COMPLETED : Intent.ACTION_BOOT_COMPLETED;
+
     /**
      * This receiver handles a variety of actions:
      *
@@ -52,7 +62,7 @@
 
         // Clear stopwatch data and reset timers because they rely on elapsed real-time values
         // which are meaningless after a device reboot.
-        if (Intent.ACTION_BOOT_COMPLETED.equals(action)) {
+        if (ACTION_BOOT_COMPLETED.equals(action)) {
             DataModel.getDataModel().resetStopwatch();
             Events.sendStopwatchEvent(R.string.action_reset, R.string.label_reboot);
             DataModel.getDataModel().resetTimers(R.string.label_reboot);
@@ -81,4 +91,4 @@
             }
         });
     }
-}
\ No newline at end of file
+}
diff --git a/src/com/android/deskclock/AsyncRingtonePlayer.java b/src/com/android/deskclock/AsyncRingtonePlayer.java
index 3f8f7f6..dc4ec60 100644
--- a/src/com/android/deskclock/AsyncRingtonePlayer.java
+++ b/src/com/android/deskclock/AsyncRingtonePlayer.java
@@ -14,7 +14,6 @@
 import android.os.Looper;
 import android.os.Message;
 import android.os.SystemClock;
-import android.preference.PreferenceManager;
 import android.telephony.TelephonyManager;
 import android.text.format.DateUtils;
 
@@ -170,16 +169,14 @@
      * @return Uri of the ringtone to play when the user is in a telephone call
      */
     private static Uri getInCallRingtoneUri(Context context) {
-        final String packageName = context.getPackageName();
-        return Uri.parse("android.resource://" + packageName + "/" + R.raw.alarm_expire);
+        return Utils.getResourceUri(context, R.raw.alarm_expire);
     }
 
     /**
      * @return Uri of the ringtone to play when the chosen ringtone fails to play
      */
     private static Uri getFallbackRingtoneUri(Context context) {
-        final String packageName = context.getPackageName();
-        return Uri.parse("android.resource://" + packageName + "/" + R.raw.alarm_expire);
+        return Utils.getResourceUri(context, R.raw.alarm_expire);
     }
 
     /**
@@ -227,7 +224,7 @@
      * @return the duration of the crescendo in milliseconds
      */
     private long getCrescendoDurationMillis(Context context) {
-        final String crescendoSecondsStr = PreferenceManager.getDefaultSharedPreferences(context)
+        final String crescendoSecondsStr = Utils.getDefaultSharedPreferences(context)
                 .getString(mCrescendoPrefKey, DEFAULT_CRESCENDO_LENGTH);
         return Integer.parseInt(crescendoSecondsStr) * DateUtils.SECOND_IN_MILLIS;
     }
diff --git a/src/com/android/deskclock/CircleButtonsLayout.java b/src/com/android/deskclock/CircleButtonsLayout.java
index a00d6cb..1830ef8 100644
--- a/src/com/android/deskclock/CircleButtonsLayout.java
+++ b/src/com/android/deskclock/CircleButtonsLayout.java
@@ -16,9 +16,6 @@
  */
 public class CircleButtonsLayout extends FrameLayout {
 
-    private int mCircleTimerViewId;
-    private int mResetAddButtonId;
-    private int mLabelId;
     private float mDiamOffset;
     private View mCircleView;
     private ImageButton mResetAddButton;
@@ -31,12 +28,6 @@
 
     public CircleButtonsLayout(Context context, AttributeSet attrs) {
         super(context, attrs);
-    }
-
-    public void setCircleTimerViewIds(int circleTimerViewId, int stopButtonId,  int labelId) {
-        mCircleTimerViewId = circleTimerViewId;
-        mResetAddButtonId = stopButtonId;
-        mLabelId = labelId;
 
         final Resources res = getContext().getResources();
         final float strokeSize = res.getDimension(R.dimen.circletimer_circle_size);
@@ -56,13 +47,10 @@
     }
 
     protected void remeasureViews() {
-        if (mCircleView == null) {
-            mCircleView = findViewById(mCircleTimerViewId);
-            if (mCircleView == null) {
-                return;
-            }
-            mResetAddButton = (ImageButton) findViewById(mResetAddButtonId);
-            mLabel = (TextView) findViewById(mLabelId);
+        if (mLabel == null) {
+            mCircleView = findViewById(R.id.timer_time);
+            mLabel = (TextView) findViewById(R.id.timer_label);
+            mResetAddButton = (ImageButton) findViewById(R.id.reset_add);
         }
 
         final int frameWidth = mCircleView.getMeasuredWidth();
diff --git a/src/com/android/deskclock/ClockFragment.java b/src/com/android/deskclock/ClockFragment.java
index a60c009..041e951 100644
--- a/src/com/android/deskclock/ClockFragment.java
+++ b/src/com/android/deskclock/ClockFragment.java
@@ -22,6 +22,7 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
+import android.content.res.Resources;
 import android.database.ContentObserver;
 import android.net.Uri;
 import android.os.Bundle;
@@ -101,7 +102,6 @@
         super.onCreateView(inflater, container, icicle);
 
         final OnTouchListener startScreenSaverListener = new StartScreenSaverListener();
-        final View footerView = inflater.inflate(R.layout.blank_footer_view, mCityList, false);
         final View fragmentView = inflater.inflate(R.layout.clock_fragment, container, false);
 
         mCityAdapter = new SelectedCitiesAdapter(getActivity());
@@ -109,7 +109,6 @@
         mCityList = (ListView) fragmentView.findViewById(R.id.cities);
         mCityList.setDivider(null);
         mCityList.setAdapter(mCityAdapter);
-        mCityList.addFooterView(footerView, null, false);
         mCityList.setOnTouchListener(startScreenSaverListener);
         mCityList.setOnScrollListener(new VerticalScrollPositionUpdater());
 
@@ -267,7 +266,8 @@
 
         @Override
         public void run() {
-            startActivity(new Intent(getActivity(), ScreensaverActivity.class));
+            startActivity(new Intent(getActivity(), ScreensaverActivity.class)
+                    .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
         }
     }
 
@@ -366,14 +366,12 @@
 
             // Inflate a new view for the city, if necessary.
             if (view == null) {
-                view = mInflater.inflate(R.layout.world_clock_list_item, parent, false);
+                view = mInflater.inflate(R.layout.world_clock_item, parent, false);
             }
 
-            final View clock = view.findViewById(R.id.city_left);
-
             // Configure the digital clock or analog clock depending on the user preference.
-            final TextClock digitalClock = (TextClock) clock.findViewById(R.id.digital_clock);
-            final AnalogClock analogClock = (AnalogClock) clock.findViewById(R.id.analog_clock);
+            final TextClock digitalClock = (TextClock) view.findViewById(R.id.digital_clock);
+            final AnalogClock analogClock = (AnalogClock) view.findViewById(R.id.analog_clock);
             if (DataModel.getDataModel().getClockStyle() == DataModel.ClockStyle.ANALOG) {
                 digitalClock.setVisibility(GONE);
                 analogClock.setVisibility(VISIBLE);
@@ -387,8 +385,17 @@
                 digitalClock.setFormat24Hour(Utils.get24ModeFormat());
             }
 
+            // Supply top and bottom padding dynamically.
+            final Resources res = mContext.getResources();
+            final int padding = res.getDimensionPixelSize(R.dimen.medium_space_top);
+            final int top = position == 0 ? 0 : padding;
+            final int left = view.getPaddingLeft();
+            final int right = view.getPaddingRight();
+            final int bottom = view.getPaddingBottom();
+            view.setPadding(left, top, right, bottom);
+
             // Bind the city name.
-            final TextView name = (TextView) clock.findViewById(R.id.city_name);
+            final TextView name = (TextView) view.findViewById(R.id.city_name);
             name.setText(city.getName());
 
             // Compute if the city week day matches the weekday of the current timezone.
@@ -397,7 +404,7 @@
             final boolean displayDayOfWeek = localCal.get(DAY_OF_WEEK) != cityCal.get(DAY_OF_WEEK);
 
             // Bind the week day display.
-            final TextView dayOfWeek = (TextView) clock.findViewById(R.id.city_day);
+            final TextView dayOfWeek = (TextView) view.findViewById(R.id.city_day);
             dayOfWeek.setVisibility(displayDayOfWeek ? VISIBLE : GONE);
             if (displayDayOfWeek) {
                 final Locale locale = Locale.getDefault();
@@ -428,4 +435,4 @@
             return DataModel.getDataModel().getShowHomeClock();
         }
     }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/DeskClock.java b/src/com/android/deskclock/DeskClock.java
index 00b5008..402fe7b 100644
--- a/src/com/android/deskclock/DeskClock.java
+++ b/src/com/android/deskclock/DeskClock.java
@@ -20,15 +20,25 @@
 import android.animation.AnimatorListenerAdapter;
 import android.animation.AnimatorSet;
 import android.animation.ValueAnimator;
+import android.annotation.SuppressLint;
+import android.annotation.TargetApi;
 import android.app.Fragment;
 import android.app.FragmentManager;
+import android.app.NotificationManager;
+import android.content.BroadcastReceiver;
+import android.content.ContentResolver;
 import android.content.Context;
 import android.content.Intent;
+import android.content.IntentFilter;
 import android.database.ContentObserver;
 import android.media.AudioManager;
+import android.media.RingtoneManager;
 import android.net.Uri;
+import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
+import android.provider.Settings;
+import android.support.annotation.StringRes;
 import android.support.design.widget.Snackbar;
 import android.support.design.widget.TabLayout;
 import android.support.design.widget.TabLayout.ViewPagerOnTabSelectedListener;
@@ -37,6 +47,7 @@
 import android.support.v4.view.ViewPager.OnPageChangeListener;
 import android.support.v7.app.AppCompatActivity;
 import android.support.v7.widget.Toolbar;
+import android.view.KeyEvent;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.view.View;
@@ -45,10 +56,10 @@
 import android.widget.ImageButton;
 import android.widget.ImageView;
 
-import com.android.deskclock.actionbarmenu.ActionBarMenuManager;
 import com.android.deskclock.actionbarmenu.MenuItemControllerFactory;
 import com.android.deskclock.actionbarmenu.NightModeMenuItemController;
-import com.android.deskclock.actionbarmenu.SettingMenuItemController;
+import com.android.deskclock.actionbarmenu.OptionsMenuManager;
+import com.android.deskclock.actionbarmenu.SettingsMenuItemController;
 import com.android.deskclock.alarms.AlarmStateManager;
 import com.android.deskclock.data.DataModel;
 import com.android.deskclock.events.Events;
@@ -59,9 +70,13 @@
 import com.android.deskclock.widget.RtlViewPager;
 import com.android.deskclock.widget.toast.SnackbarManager;
 
+import static android.app.NotificationManager.ACTION_INTERRUPTION_FILTER_CHANGED;
+import static android.app.NotificationManager.INTERRUPTION_FILTER_NONE;
 import static android.media.AudioManager.FLAG_SHOW_UI;
 import static android.media.AudioManager.STREAM_ALARM;
+import static android.media.RingtoneManager.TYPE_ALARM;
 import static android.provider.Settings.System.CONTENT_URI;
+import static android.provider.Settings.System.DEFAULT_ALARM_ALERT_URI;
 import static android.support.v4.view.ViewPager.SCROLL_STATE_DRAGGING;
 import static android.support.v4.view.ViewPager.SCROLL_STATE_IDLE;
 import static android.support.v4.view.ViewPager.SCROLL_STATE_SETTLING;
@@ -80,11 +95,16 @@
     /** The Uri to the settings entry that stores alarm stream volume. */
     private static final Uri VOLUME_URI = Uri.withAppendedPath(CONTENT_URI, "volume_alarm_speaker");
 
+    /** The intent filter that identifies do-not-disturb change broadcasts. */
+    @SuppressLint("NewApi")
+    private static final IntentFilter DND_CHANGE_FILTER
+            = new IntentFilter(ACTION_INTERRUPTION_FILTER_CHANGED);
+
     /** Models the interesting state of display the {@link #mFab} button may inhabit. */
     private enum FabState { SHOWING, HIDE_ARMED, HIDING }
 
     /** Coordinates handling of context menu items. */
-    private final ActionBarMenuManager mActionBarMenuManager = new ActionBarMenuManager();
+    private final OptionsMenuManager mOptionsMenuManager = new OptionsMenuManager();
 
     /** Shrinks the {@link #mFab}, {@link #mLeftButton} and {@link #mRightButton} to nothing. */
     private final AnimatorSet mHideAnimation = new AnimatorSet();
@@ -101,17 +121,32 @@
     /** Updates the user interface to reflect the selected tab from the backing model. */
     private final TabListener mTabChangeWatcher = new TabChangeWatcher();
 
-    /** Displays a snackbar explaining that the alarm volume is muted, possibly after a delay. */
+    /** Displays a snackbar explaining that the system default alarm ringtone is silent. */
+    private final Runnable mShowSilentAlarmSnackbarRunnable = new ShowSilentAlarmSnackbarRunnable();
+
+    /** Observes default alarm ringtone changes while the app is in the foreground. */
+    private final ContentObserver mAlarmRingtoneChangeObserver = new AlarmRingtoneChangeObserver();
+
+    /** Displays a snackbar explaining that the alarm volume is muted. */
     private final Runnable mShowMutedVolumeSnackbarRunnable = new ShowMutedVolumeSnackbarRunnable();
 
     /** Observes alarm volume changes while the app is in the foreground. */
     private final ContentObserver mAlarmVolumeChangeObserver = new AlarmVolumeChangeObserver();
 
+    /** Displays a snackbar explaining that do-not-disturb is blocking alarms. */
+    private final Runnable mShowDNDBlockingSnackbarRunnable = new ShowDNDBlockingSnackbarRunnable();
+
+    /** Observes do-not-disturb changes while the app is in the foreground. */
+    private final BroadcastReceiver mDoNotDisturbChangeReceiver = new DoNotDisturbChangeReceiver();
+
     /** Used to query the alarm volume and display the system control to change the alarm volume. */
     private AudioManager mAudioManager;
 
+    /** Used to query the do-not-disturb setting value, also called "interruption filter". */
+    private NotificationManager mNotificationManager;
+
     /** {@code true} permits the muted alarm volume snackbar to show when starting this activity. */
-    private boolean mShowMutedVolumeSnackbar;
+    private boolean mShowSilencedAlarmsSnackbar;
 
     /** The view to which snackbar items are anchored. */
     private View mSnackbarAnchor;
@@ -165,8 +200,10 @@
         setContentView(R.layout.desk_clock);
 
         mAudioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
+        mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
+
         // Don't show the volume muted snackbar on rotations.
-        mShowMutedVolumeSnackbar = savedInstanceState == null;
+        mShowSilencedAlarmsSnackbar = savedInstanceState == null;
         mSnackbarAnchor = findViewById(R.id.coordinator);
 
         // Configure the toolbar.
@@ -175,9 +212,9 @@
         getSupportActionBar().setDisplayShowTitleEnabled(false);
 
         // Configure the menu item controllers add behavior to the toolbar.
-        mActionBarMenuManager
-                .addMenuItemController(new SettingMenuItemController(this))
+        mOptionsMenuManager
                 .addMenuItemController(new NightModeMenuItemController(this))
+                .addMenuItemController(new SettingsMenuItemController(this))
                 .addMenuItemController(MenuItemControllerFactory.getInstance()
                         .buildMenuItemControllers(this));
 
@@ -273,13 +310,30 @@
     protected void onStart() {
         super.onStart();
 
-        if (mShowMutedVolumeSnackbar && mAudioManager.getStreamVolume(STREAM_ALARM) <= 0) {
-            // Show the volume muted snackbar after a brief delay so it is more noticeable.
-            mSnackbarAnchor.postDelayed(mShowMutedVolumeSnackbarRunnable, SECOND_IN_MILLIS);
+        if (mShowSilencedAlarmsSnackbar) {
+            if (isDoNotDisturbBlockingAlarms()) {
+                mSnackbarAnchor.postDelayed(mShowDNDBlockingSnackbarRunnable, SECOND_IN_MILLIS);
+            } else if (isAlarmStreamMuted()) {
+                mSnackbarAnchor.postDelayed(mShowMutedVolumeSnackbarRunnable, SECOND_IN_MILLIS);
+            } else if (isSystemAlarmRingtoneSilent()) {
+                mSnackbarAnchor.postDelayed(mShowSilentAlarmSnackbarRunnable, SECOND_IN_MILLIS);
+            }
         }
 
         // Subsequent starts of this activity should show the snackbar by default.
-        mShowMutedVolumeSnackbar = true;
+        mShowSilencedAlarmsSnackbar = true;
+
+        final ContentResolver cr = getContentResolver();
+        // Watch for system alarm ringtone changes while the app is in the foreground.
+        cr.registerContentObserver(DEFAULT_ALARM_ALERT_URI, false, mAlarmRingtoneChangeObserver);
+
+        // Watch for alarm volume changes while the app is in the foreground.
+        cr.registerContentObserver(VOLUME_URI, false, mAlarmVolumeChangeObserver);
+
+        if (Utils.isMOrLater()) {
+            // Watch for do-not-disturb changes while the app is in the foreground.
+            registerReceiver(mDoNotDisturbChangeReceiver, DND_CHANGE_FILTER);
+        }
     }
 
     @Override
@@ -289,9 +343,6 @@
         final View dropShadow = findViewById(R.id.drop_shadow);
         mDropShadowController = new DropShadowController(dropShadow, UiDataModel.getUiDataModel());
 
-        // Watch for alarm volume changes while the app is in the foreground.
-        getContentResolver().registerContentObserver(VOLUME_URI, true, mAlarmVolumeChangeObserver);
-
         // Honor the selected tab in case it changed while the app was paused.
         updateCurrentTab(UiDataModel.getUiDataModel().getSelectedTabIndex());
 
@@ -318,9 +369,6 @@
 
     @Override
     public void onPause() {
-        // Stop watching for alarm volume changes while the app is in the background.
-        getContentResolver().unregisterContentObserver(mAlarmVolumeChangeObserver);
-
         DataModel.getDataModel().setApplicationInForeground(false);
 
         mDropShadowController.stop();
@@ -331,7 +379,20 @@
 
     @Override
     protected void onStop() {
-        // Remove any scheduled work to show the muted volume snackbar; it is no longer relevant.
+        // Stop watching for system alarm ringtone changes while the app is in the background.
+        getContentResolver().unregisterContentObserver(mAlarmRingtoneChangeObserver);
+
+        // Stop watching for alarm volume changes while the app is in the background.
+        getContentResolver().unregisterContentObserver(mAlarmVolumeChangeObserver);
+
+        if (Utils.isMOrLater()) {
+            // Stop watching for do-not-disturb changes while the app is in the background.
+            unregisterReceiver(mDoNotDisturbChangeReceiver);
+        }
+
+        // Remove any scheduled work to show snackbars; it is no longer relevant.
+        mSnackbarAnchor.removeCallbacks(mShowSilentAlarmSnackbarRunnable);
+        mSnackbarAnchor.removeCallbacks(mShowDNDBlockingSnackbarRunnable);
         mSnackbarAnchor.removeCallbacks(mShowMutedVolumeSnackbarRunnable);
         super.onStop();
     }
@@ -344,20 +405,20 @@
 
     @Override
     public boolean onCreateOptionsMenu(Menu menu) {
-        mActionBarMenuManager.createOptionsMenu(menu, getMenuInflater());
+        mOptionsMenuManager.onCreateOptionsMenu(menu);
         return true;
     }
 
     @Override
     public boolean onPrepareOptionsMenu(Menu menu) {
         super.onPrepareOptionsMenu(menu);
-        mActionBarMenuManager.prepareShowMenu(menu);
+        mOptionsMenuManager.onPrepareOptionsMenu(menu);
         return true;
     }
 
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
-        return mActionBarMenuManager.handleMenuItemClick(item) || super.onOptionsItemSelected(item);
+        return mOptionsMenuManager.onOptionsItemSelected(item) || super.onOptionsItemSelected(item);
     }
 
     /**
@@ -371,6 +432,18 @@
         }
     }
 
+    /**
+     * Listens for keyboard activity for the tab fragments to handle if necessary. A tab may want to
+     * respond to key presses even if they are not currently focused.
+     */
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if (getSelectedDeskClockFragment().onKeyDown(keyCode,event)) {
+            return true;
+        }
+        return super.onKeyDown(keyCode, event);
+    }
+
     @Override
     public void updateFab(UpdateType updateType) {
         switch (updateType) {
@@ -402,13 +475,17 @@
                 mHideAnimation.start();
                 break;
             }
+            case FAB_REQUESTS_FOCUS: {
+                mFab.requestFocus();
+                break;
+            }
         }
     }
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         // Recreate the activity if any settings have been changed
-        if (requestCode == SettingMenuItemController.REQUEST_CHANGE_SETTINGS
+        if (requestCode == SettingsMenuItemController.REQUEST_CHANGE_SETTINGS
                 && resultCode == RESULT_OK) {
             mRecreateActivity = true;
         }
@@ -435,6 +512,28 @@
         return (DeskClockFragment) mFragmentTabPagerAdapter.getItem(index);
     }
 
+    private boolean isSystemAlarmRingtoneSilent() {
+        return RingtoneManager.getActualDefaultRingtoneUri(this, TYPE_ALARM) == null;
+    }
+
+    private void showSilentRingtoneSnackbar() {
+        final OnClickListener changeClickListener = new OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                startActivity(new Intent(Settings.ACTION_SOUND_SETTINGS));
+            }
+        };
+
+        SnackbarManager.show(
+                createSnackbar(R.string.silent_default_alarm_ringtone)
+                        .setAction(R.string.change_default_alarm_ringtone, changeClickListener)
+        );
+    }
+
+    private boolean isAlarmStreamMuted() {
+        return mAudioManager.getStreamVolume(STREAM_ALARM) <= 0;
+    }
+
     private void showAlarmVolumeMutedSnackbar() {
         final OnClickListener unmuteClickListener = new OnClickListener() {
             @Override
@@ -446,15 +545,34 @@
         };
 
         SnackbarManager.show(
-                Snackbar.make(mSnackbarAnchor, R.string.alarm_volume_muted, 5000)
+                createSnackbar(R.string.alarm_volume_muted)
                         .setAction(R.string.unmute_alarm_volume, unmuteClickListener)
         );
     }
 
+    @TargetApi(Build.VERSION_CODES.M)
+    private boolean isDoNotDisturbBlockingAlarms() {
+        if (!Utils.isMOrLater()) {
+            return false;
+        }
+        return mNotificationManager.getCurrentInterruptionFilter() == INTERRUPTION_FILTER_NONE;
+    }
+
+    private void showDoNotDisturbIsBlockingAlarmsSnackbar() {
+        SnackbarManager.show(createSnackbar(R.string.alarms_blocked_by_dnd));
+    }
+
+    /**
+     * @return a Snackbar that displays the message with the given id for 5 seconds
+     */
+    private Snackbar createSnackbar(@StringRes int messageId) {
+        return Snackbar.make(mSnackbarAnchor, messageId, 5000 /* duration */);
+    }
+
     /**
      * As the view pager changes the selected page, update the model to record the new selected tab.
      */
-    private class PageChangeWatcher implements OnPageChangeListener {
+    private final class PageChangeWatcher implements OnPageChangeListener {
 
         /** The last reported page scroll state; used to detect exotic state changes. */
         private int mPriorState = SCROLL_STATE_IDLE;
@@ -522,7 +640,7 @@
      * If this listener is attached to {@link #mHideAnimation} when it ends, the corresponding
      * {@link #mShowAnimation} is automatically started.
      */
-    private class AutoStartShowListener extends AnimatorListenerAdapter {
+    private final class AutoStartShowListener extends AnimatorListenerAdapter {
         @Override
         public void onAnimationEnd(Animator animation) {
             // Prepare the hide animation for its next use; by default do not auto-show after hide.
@@ -540,10 +658,19 @@
     }
 
     /**
+     * Displays a snackbar that indicates the system default alarm ringtone currently silent and
+     * offers an action that displays the system alarm ringtone setting to adjust it.
+     */
+    private final class ShowSilentAlarmSnackbarRunnable implements Runnable {
+        @Override
+        public void run() {
+            showSilentRingtoneSnackbar();
+        }
+    }
+
+    /**
      * Displays a snackbar that indicates the alarm volume is currently muted and offers an action
-     * that displays the system volume control to adjust it. This runnable may be executed
-     * immediately (if the volume is changed while this app is in the foreground) or after a delay
-     * (if the volume is detected to be zero while bringing the app to the foreground).
+     * that displays the system volume control to adjust it.
      */
     private final class ShowMutedVolumeSnackbarRunnable implements Runnable {
         @Override
@@ -553,6 +680,35 @@
     }
 
     /**
+     * Displays a snackbar that indicates the do-not-disturb setting is currently blocking alarms.
+     */
+    private final class ShowDNDBlockingSnackbarRunnable implements Runnable {
+        @Override
+        public void run() {
+            showDoNotDisturbIsBlockingAlarmsSnackbar();
+        }
+    }
+
+    /**
+     * Observe changes to the system default alarm ringtone while the application is in the
+     * foreground and show/hide the snackbar that warns when the ringtone is silent.
+     */
+    private final class AlarmRingtoneChangeObserver extends ContentObserver {
+        private AlarmRingtoneChangeObserver() {
+            super(new Handler());
+        }
+
+        @Override
+        public void onChange(boolean selfChange) {
+            if (isSystemAlarmRingtoneSilent()) {
+                showSilentRingtoneSnackbar();
+            } else {
+                SnackbarManager.dismiss();
+            }
+        }
+    }
+
+    /**
      * Observe changes to the alarm stream volume while the application is in the foreground and
      * show/hide the snackbar that warns when the alarm volume is muted.
      */
@@ -563,7 +719,7 @@
 
         @Override
         public void onChange(boolean selfChange) {
-            if (mAudioManager.getStreamVolume(STREAM_ALARM) <= 0) {
+            if (isAlarmStreamMuted()) {
                 showAlarmVolumeMutedSnackbar();
             } else {
                 SnackbarManager.dismiss();
@@ -572,9 +728,24 @@
     }
 
     /**
+     * Observe changes to the do-not-disturb setting while the application is in the foreground
+     * and show/hide the snackbar that warns when the setting is blocking alarms.
+     */
+    private final class DoNotDisturbChangeReceiver extends BroadcastReceiver {
+        @Override
+        public void onReceive(Context context, Intent intent) {
+            if (isDoNotDisturbBlockingAlarms()) {
+                showDoNotDisturbIsBlockingAlarmsSnackbar();
+            } else {
+                SnackbarManager.dismiss();
+            }
+        }
+    }
+
+    /**
      * As the model reports changes to the selected tab, update the user interface.
      */
-    private class TabChangeWatcher implements TabListener {
+    private final class TabChangeWatcher implements TabListener {
         @Override
         public void selectedTabChanged(Tab oldSelectedTab, Tab newSelectedTab) {
             final int index = newSelectedTab.ordinal();
@@ -612,7 +783,7 @@
     /**
      * This adapter produces the DeskClockFragments that are the contents of the tabs.
      */
-    private static class TabFragmentAdapter extends FragmentPagerAdapter {
+    private static final class TabFragmentAdapter extends FragmentPagerAdapter {
 
         private final FragmentManager mFragmentManager;
         private final Context mContext;
@@ -651,4 +822,4 @@
             return "android:switcher:" + viewId + ":" + id;
         }
     }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/DeskClockBackupAgent.java b/src/com/android/deskclock/DeskClockBackupAgent.java
index 73e0ea6..96c64c8 100644
--- a/src/com/android/deskclock/DeskClockBackupAgent.java
+++ b/src/com/android/deskclock/DeskClockBackupAgent.java
@@ -24,7 +24,6 @@
 import android.content.ContentResolver;
 import android.content.Context;
 import android.content.Intent;
-import android.content.IntentFilter;
 import android.content.SharedPreferences;
 import android.os.ParcelFileDescriptor;
 import android.os.SystemClock;
@@ -83,19 +82,14 @@
      */
     @Override
     public void onRestoreFinished() {
-        // Write a preference to indicate a data restore has been completed.
-        final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
-        prefs.edit().putBoolean(KEY_RESTORE_FINISHED, true).apply();
-
-        // If device boot is not yet completed, use ACTION_BOOT_COMPLETED to trigger completion of
-        // the data restore process at a safer time.
-        if (registerReceiver(null, new IntentFilter(Intent.ACTION_BOOT_COMPLETED)) != null) {
-            LOGGER.i("Waiting for %s to complete the data restore", Intent.ACTION_BOOT_COMPLETED);
-            return;
+        if (Utils.isNOrLater()) {
+            // TODO: migrate restored database and preferences over into
+            // the device-encrypted storage area
         }
 
-        // Otherwise, the device is already booted, so schedule a custom broadcast to start the
-        // application in 10 seconds.
+        // Write a preference to indicate a data restore has been completed.
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(this);
+        prefs.edit().putBoolean(KEY_RESTORE_FINISHED, true).apply();
 
         // Create an Intent to send into DeskClock indicating restore is complete.
         final PendingIntent restoreIntent = PendingIntent.getBroadcast(this, 0,
@@ -118,7 +112,7 @@
      */
     public static boolean processRestoredData(Context context) {
         // If the preference indicates data was not recently restored, there is nothing to do.
-        final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         if (!prefs.getBoolean(KEY_RESTORE_FINISHED, false)) {
             return false;
         }
diff --git a/src/com/android/deskclock/DeskClockFragment.java b/src/com/android/deskclock/DeskClockFragment.java
index 0f07aea..c2d738d 100644
--- a/src/com/android/deskclock/DeskClockFragment.java
+++ b/src/com/android/deskclock/DeskClockFragment.java
@@ -18,6 +18,7 @@
 
 import android.app.Fragment;
 import android.support.annotation.NonNull;
+import android.view.KeyEvent;
 import android.widget.ImageButton;
 
 import com.android.deskclock.uidata.UiDataModel;
@@ -44,6 +45,11 @@
         }
     }
 
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        // By default return false so event continues to propagate
+        return false;
+    }
+
     @Override
     public void onLeftButtonClick(@NonNull ImageButton left) {
         // Do nothing here, only in derived classes
diff --git a/src/com/android/deskclock/FabContainer.java b/src/com/android/deskclock/FabContainer.java
index 41680f7..4e12e38 100644
--- a/src/com/android/deskclock/FabContainer.java
+++ b/src/com/android/deskclock/FabContainer.java
@@ -21,7 +21,10 @@
         FAB_AND_BUTTONS_MORPH,
 
         /** Disable the buttons of the fab so they do not respond to clicks. */
-        DISABLE_BUTTONS
+        DISABLE_BUTTONS,
+
+        /** Signals that the fab should request focus. */
+        FAB_REQUESTS_FOCUS
     }
 
     /**
diff --git a/src/com/android/deskclock/TimerCircleFrameLayout.java b/src/com/android/deskclock/TimerCircleFrameLayout.java
new file mode 100644
index 0000000..45bd546
--- /dev/null
+++ b/src/com/android/deskclock/TimerCircleFrameLayout.java
@@ -0,0 +1,66 @@
+/*
+ * 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.
+ */
+
+package com.android.deskclock;
+
+import android.content.Context;
+import android.util.AttributeSet;
+import android.widget.FrameLayout;
+
+/**
+ * A container that frames a timer circle of some sort. The circle is allowed to grow naturally
+ * according to its layout constraints up to the {@link R.dimen#max_timer_circle_size largest}
+ * allowable size.
+ */
+public class TimerCircleFrameLayout extends FrameLayout {
+
+    public TimerCircleFrameLayout(Context context) {
+        super(context);
+    }
+
+    public TimerCircleFrameLayout(Context context, AttributeSet attrs) {
+        super(context, attrs);
+    }
+
+    public TimerCircleFrameLayout(Context context, AttributeSet attrs, int defStyleAttr) {
+        super(context, attrs, defStyleAttr);
+    }
+
+    /**
+     * Note: this method assumes the parent container will specify {@link MeasureSpec#EXACTLY exact}
+     * width and height values.
+     *
+     * @param widthMeasureSpec horizontal space requirements as imposed by the parent
+     * @param heightMeasureSpec vertical space requirements as imposed by the parent
+     */
+    @Override
+    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+        // Fetch the exact sizes imposed by the parent container.
+        final int width = MeasureSpec.getSize(widthMeasureSpec);
+        final int height = MeasureSpec.getSize(heightMeasureSpec);
+        final int smallestDimension = Math.min(width, height);
+
+        // Fetch the absolute maximum circle size allowed.
+        final int maxSize = getResources().getDimensionPixelSize(R.dimen.max_timer_circle_size);
+        final int size = Math.min(smallestDimension, maxSize);
+
+        // Set the size of this container.
+        widthMeasureSpec = MeasureSpec.makeMeasureSpec(size, MeasureSpec.EXACTLY);
+        heightMeasureSpec = MeasureSpec.makeMeasureSpec(size, MeasureSpec.EXACTLY);
+
+        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/Utils.java b/src/com/android/deskclock/Utils.java
index 9ff74b4..148a2bd 100644
--- a/src/com/android/deskclock/Utils.java
+++ b/src/com/android/deskclock/Utils.java
@@ -19,9 +19,12 @@
 import android.annotation.SuppressLint;
 import android.annotation.TargetApi;
 import android.app.AlarmManager;
+import android.app.PendingIntent;
 import android.appwidget.AppWidgetManager;
 import android.content.ContentResolver;
 import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
 import android.content.res.Resources;
 import android.content.res.TypedArray;
 import android.graphics.Bitmap;
@@ -37,8 +40,10 @@
 import android.os.Looper;
 import android.preference.PreferenceManager;
 import android.provider.Settings;
+import android.support.annotation.AnyRes;
 import android.support.annotation.DrawableRes;
 import android.support.graphics.drawable.VectorDrawableCompat;
+import android.support.v4.os.BuildCompat;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.text.Spannable;
@@ -69,10 +74,12 @@
 import java.util.Locale;
 import java.util.TimeZone;
 
-import static android.graphics.Bitmap.Config.ARGB_8888;
-
+import static android.app.PendingIntent.FLAG_UPDATE_CURRENT;
 import static android.appwidget.AppWidgetManager.OPTION_APPWIDGET_HOST_CATEGORY;
 import static android.appwidget.AppWidgetProviderInfo.WIDGET_CATEGORY_KEYGUARD;
+import static android.content.res.Configuration.ORIENTATION_LANDSCAPE;
+import static android.content.res.Configuration.ORIENTATION_PORTRAIT;
+import static android.graphics.Bitmap.Config.ARGB_8888;
 
 public class Utils {
 
@@ -178,6 +185,25 @@
     }
 
     /**
+    * @return {@code true} if the device is {@link Build.VERSION_CODES#N} or later
+    */
+    public static boolean isNOrLater() {
+       return BuildCompat.isAtLeastN();
+    }
+
+    /**
+     * @param resourceId identifies an application resource
+     * @return the Uri by which the application resource is accessed
+     */
+    public static Uri getResourceUri(Context context, @AnyRes int resourceId) {
+        return new Uri.Builder()
+                .scheme(ContentResolver.SCHEME_ANDROID_RESOURCE)
+                .authority(context.getPackageName())
+                .path(String.valueOf(resourceId))
+                .build();
+    }
+
+    /**
      * @param listView the scrollable list view to test
      * @return {@code true} iff the {@code listView} content is currently scrolled to the top
      */
@@ -280,6 +306,28 @@
     }
 
     /**
+     * Update and return the PendingIntent corresponding to the given {@code intent}.
+     *
+     * @param context the Context in which the PendingIntent should start the service
+     * @param intent an Intent describing the service to be started
+     * @return a PendingIntent that will start a service
+     */
+    public static PendingIntent pendingServiceIntent(Context context, Intent intent) {
+        return PendingIntent.getService(context, 0, intent, FLAG_UPDATE_CURRENT);
+    }
+
+    /**
+     * Update and return the PendingIntent corresponding to the given {@code intent}.
+     *
+     * @param context the Context in which the PendingIntent should start the activity
+     * @param intent an Intent describing the activity to be started
+     * @return a PendingIntent that will start an activity
+     */
+    public static PendingIntent pendingActivityIntent(Context context, Intent intent) {
+        return PendingIntent.getActivity(context, 0, intent, FLAG_UPDATE_CURRENT);
+    }
+
+    /**
      * @return The next alarm from {@link AlarmManager}
      */
     public static String getNextAlarm(Context context) {
@@ -502,8 +550,7 @@
     // Return the first day of the week value corresponding to Calendar.<WEEKDAY> value, which is
     // 1-indexed starting with Sunday.
     public static int getFirstDayOfWeek(Context context) {
-        return Integer.parseInt(PreferenceManager
-                .getDefaultSharedPreferences(context)
+        return Integer.parseInt(getDefaultSharedPreferences(context)
                 .getString(SettingsActivity.KEY_WEEK_START, String.valueOf(DEFAULT_WEEK_START)));
     }
 
@@ -586,4 +633,42 @@
         arraySet.addAll(collection);
         return arraySet;
     }
-}
+
+    /**
+     * Returns the default {@link SharedPreferences} instance from the underlying storage context.
+     */
+    @TargetApi(Build.VERSION_CODES.N)
+    public static SharedPreferences getDefaultSharedPreferences(Context context) {
+        final Context storageContext;
+        if (isNOrLater()) {
+            // All N devices have split storage areas, but we may need to
+            // migrate existing preferences into the new device encrypted
+            // storage area, which is where our data lives from now on.
+            storageContext = context.createDeviceProtectedStorageContext();
+            if (!storageContext.moveSharedPreferencesFrom(context,
+                    PreferenceManager.getDefaultSharedPreferencesName(context))) {
+                LogUtils.wtf("Failed to migrate shared preferences");
+            }
+        } else {
+            storageContext = context;
+        }
+
+        return PreferenceManager.getDefaultSharedPreferences(storageContext);
+    }
+
+    /**
+     * @param context from which to query the current device configuration
+     * @return {@code true} if the device is currently in portrait or reverse portrait orientation
+     */
+    public static boolean isPortrait(Context context) {
+        return context.getResources().getConfiguration().orientation == ORIENTATION_PORTRAIT;
+    }
+
+    /**
+     * @param context from which to query the current device configuration
+     * @return {@code true} if the device is currently in landscape or reverse landscape orientation
+     */
+    public static boolean isLandscape(Context context) {
+        return context.getResources().getConfiguration().orientation == ORIENTATION_LANDSCAPE;
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/actionbarmenu/AbstractMenuItemController.java b/src/com/android/deskclock/actionbarmenu/AbstractMenuItemController.java
deleted file mode 100644
index 047d816..0000000
--- a/src/com/android/deskclock/actionbarmenu/AbstractMenuItemController.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * 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.
- */
-package com.android.deskclock.actionbarmenu;
-
-import android.view.Menu;
-
-/**
- * Base of all {@link MenuItemController}. It contains basic implementation for enabling controller.
- */
-public abstract class AbstractMenuItemController implements MenuItemController {
-    // Whether or not the controller is enabled. By default it's enabled.
-    private boolean mEnabled = true;
-
-    @Override
-    public void setEnabled(boolean enabled) {
-        mEnabled = enabled;
-    }
-
-    @Override
-    public boolean isEnabled() {
-        return mEnabled;
-    }
-
-    @Override
-    public void setInitialState(Menu menu) {
-        // By default, there is nothing to initialize.
-    }
-}
diff --git a/src/com/android/deskclock/actionbarmenu/ActionBarMenuManager.java b/src/com/android/deskclock/actionbarmenu/ActionBarMenuManager.java
deleted file mode 100644
index d2438e5..0000000
--- a/src/com/android/deskclock/actionbarmenu/ActionBarMenuManager.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * 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.
- */
-package com.android.deskclock.actionbarmenu;
-
-import android.app.Activity;
-import android.util.ArrayMap;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-
-import com.android.deskclock.R;
-
-/**
- * Activity scoped singleton that manages action bar menus. Each menu item is controlled by a
- * {@link MenuItemController} instance.
- * <p/>
- * This class needs to be instantiated before or during activity's onCreate event.
- */
-public final class ActionBarMenuManager {
-    // A map of all menu item controllers, keyed by menu item id.
-    private final ArrayMap<Integer, MenuItemController> mControllers;
-
-    public ActionBarMenuManager() {
-        mControllers = new ArrayMap<>();
-    }
-
-    /**
-     * Add one or more {@link MenuItemController} to the actionbar menu.
-     * <p/>
-     * This should be called before activity's onPrepareOptionsMenu event.
-     */
-    public ActionBarMenuManager addMenuItemController(MenuItemController... menuItemControllers) {
-        if (menuItemControllers != null) {
-            for (MenuItemController controller : menuItemControllers) {
-                mControllers.put(controller.getId(), controller);
-            }
-        }
-        return this;
-    }
-
-    /**
-     * Inflates {@link Menu} for the activity.
-     * <p/>
-     * This method should be called during activity's onCreateOptionsMenu method.
-     */
-    public void createOptionsMenu(Menu menu, MenuInflater inflater) {
-        if (menu.size() > 0) {
-            throw new IllegalStateException("Menu has already been inflated.");
-        }
-        inflater.inflate(R.menu.desk_clock_menu, menu);
-
-        final int controllerSize = mControllers.size();
-        for (int i = 0; i < controllerSize; i++) {
-            final MenuItemController controller = mControllers.valueAt(i);
-            if (controller.isEnabled()) {
-                controller.setInitialState(menu);
-            }
-        }
-    }
-
-    /**
-     * Prepares the popup to displays all required menu items.
-     * <p/>
-     * This method should be called during activity's onPrepareOptionsMenu method.
-     */
-    public void prepareShowMenu(Menu menu) {
-        final int menuSize = menu.size();
-        for (int i = 0; i < menuSize; i++) {
-            menu.getItem(i).setVisible(false);
-        }
-        final int controllerSize = mControllers.size();
-        for (int i = 0; i < controllerSize; i++) {
-            final MenuItemController controller = mControllers.valueAt(i);
-            if (controller.isEnabled()) {
-                controller.showMenuItem(menu);
-            }
-        }
-    }
-
-    /**
-     * Handles click action for a menu item.
-     * <p/>
-     * This method should be called during activity's onOptionsItemSelected method.
-     */
-    public boolean handleMenuItemClick(MenuItem item) {
-        final int itemId = item.getItemId();
-        return mControllers.get(itemId).handleMenuItemClick(item);
-    }
-}
diff --git a/src/com/android/deskclock/actionbarmenu/MenuItemController.java b/src/com/android/deskclock/actionbarmenu/MenuItemController.java
index d7cb06f..542a035 100644
--- a/src/com/android/deskclock/actionbarmenu/MenuItemController.java
+++ b/src/com/android/deskclock/actionbarmenu/MenuItemController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 The Android Open Source Project
+ * 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.
@@ -13,6 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package com.android.deskclock.actionbarmenu;
 
 import android.view.Menu;
@@ -24,37 +25,27 @@
 public interface MenuItemController {
 
     /**
-     * Sets whether or not the controller is enabled.
-     */
-    void setEnabled(boolean enabled);
-
-    /**
-     * Returns true if the controller is currently enabled.
-     */
-    boolean isEnabled();
-
-    /**
-     * Returns the menu item id that the controller is responsible for.
+     * Returns the menu item resource id that the controller manages.
      */
     int getId();
 
     /**
-     * Sets the initial state for the menu item.
+     * Create the menu item.
      */
-    void setInitialState(Menu menu);
+    void onCreateOptionsItem(Menu menu);
 
     /**
-     * Find the menu item this controller cares about, and make it visible.
+     * Called immediately before the {@link MenuItem} is shown.
      *
-     * @param menu The menu object containing an item that controller can handle.
+     * @param item the {@link MenuItem} created by the controller
      */
-    void showMenuItem(Menu menu);
+    void onPrepareOptionsItem(MenuItem item);
 
     /**
      * Attempts to handle the click action.
      *
-     * @param item The menu item being clicked.
-     * @return True if the action is handled by this controller, false otherwise.
+     * @param item the {@link MenuItem} that was selected
+     * @return {@code true} if the action is handled by this controller
      */
-    boolean handleMenuItemClick(MenuItem item);
+    boolean onOptionsItemSelected(MenuItem item);
 }
diff --git a/src/com/android/deskclock/actionbarmenu/NavUpMenuItemController.java b/src/com/android/deskclock/actionbarmenu/NavUpMenuItemController.java
index a2aebbf..b1622da 100644
--- a/src/com/android/deskclock/actionbarmenu/NavUpMenuItemController.java
+++ b/src/com/android/deskclock/actionbarmenu/NavUpMenuItemController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 The Android Open Source Project
+ * 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
@@ -24,7 +24,7 @@
  * {@link MenuItemController} for handling navigation up button in actionbar. It is a special
  * menu item because it's not inflated through menu.xml, and has its own predefined id.
  */
-public final class NavUpMenuItemController extends AbstractMenuItemController {
+public final class NavUpMenuItemController implements MenuItemController {
 
     private final Activity mActivity;
 
@@ -38,13 +38,16 @@
     }
 
     @Override
-    public void showMenuItem(Menu menu) {
-        // Intentionally left empty, because back button in actionbar is not shown by inflating
-        // menu layouts. It's directly controlled by actionbar.
+    public void onCreateOptionsItem(Menu menu) {
+        // "Home" option is automatically created by the Toolbar.
     }
 
     @Override
-    public boolean handleMenuItemClick(MenuItem item) {
+    public void onPrepareOptionsItem(MenuItem item) {
+    }
+
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
         mActivity.finish();
         return true;
     }
diff --git a/src/com/android/deskclock/actionbarmenu/NightModeMenuItemController.java b/src/com/android/deskclock/actionbarmenu/NightModeMenuItemController.java
index 0a98621..745a8f8 100644
--- a/src/com/android/deskclock/actionbarmenu/NightModeMenuItemController.java
+++ b/src/com/android/deskclock/actionbarmenu/NightModeMenuItemController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 The Android Open Source Project
+ * 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.
@@ -23,10 +23,12 @@
 import com.android.deskclock.R;
 import com.android.deskclock.ScreensaverActivity;
 
+import static android.view.Menu.NONE;
+
 /**
  * {@link MenuItemController} for controlling night mode display.
  */
-public final class NightModeMenuItemController extends AbstractMenuItemController {
+public final class NightModeMenuItemController implements MenuItemController {
 
     private static final int NIGHT_MODE_MENU_RES_ID = R.id.menu_item_night_mode;
 
@@ -42,13 +44,19 @@
     }
 
     @Override
-    public void showMenuItem(Menu menu) {
-        menu.findItem(NIGHT_MODE_MENU_RES_ID).setVisible(true);
+    public void onCreateOptionsItem(Menu menu) {
+        menu.add(NONE, NIGHT_MODE_MENU_RES_ID, NONE, R.string.menu_item_night_mode)
+                .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
     }
 
     @Override
-    public boolean handleMenuItemClick(MenuItem item) {
-        mContext.startActivity(new Intent(mContext, ScreensaverActivity.class));
+    public void onPrepareOptionsItem(MenuItem item) {
+    }
+
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
+        mContext.startActivity(new Intent(mContext, ScreensaverActivity.class)
+                .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
         return true;
     }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/actionbarmenu/OptionsMenuManager.java b/src/com/android/deskclock/actionbarmenu/OptionsMenuManager.java
new file mode 100644
index 0000000..4d66e2d
--- /dev/null
+++ b/src/com/android/deskclock/actionbarmenu/OptionsMenuManager.java
@@ -0,0 +1,86 @@
+/*
+ * 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.
+ */
+
+package com.android.deskclock.actionbarmenu;
+
+import android.app.Activity;
+import android.os.Bundle;
+import android.view.Menu;
+import android.view.MenuItem;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * Activity scoped singleton that manages action bar menus. Each menu item is controlled by a
+ * {@link MenuItemController} instance.
+ */
+public final class OptionsMenuManager {
+
+    private final List<MenuItemController> mControllers = new ArrayList<>();
+
+    /**
+     * Add one or more {@link MenuItemController} to the actionbar menu.
+     * <p/>
+     * This should be called in {@link Activity#onCreate(Bundle)}.
+     */
+    public OptionsMenuManager addMenuItemController(MenuItemController... controllers) {
+        Collections.addAll(mControllers, controllers);
+        return this;
+    }
+
+    /**
+     * Inflates {@link Menu} for the activity.
+     * <p/>
+     * This method should be called during {@link Activity#onCreateOptionsMenu(Menu)}.
+     */
+    public void onCreateOptionsMenu(Menu menu) {
+        for (MenuItemController controller : mControllers) {
+            controller.onCreateOptionsItem(menu);
+        }
+    }
+
+    /**
+     * Prepares the popup to displays all required menu items.
+     * <p/>
+     * This method should be called during {@link Activity#onPrepareOptionsMenu(Menu)} (Menu)}.
+     */
+    public void onPrepareOptionsMenu(Menu menu) {
+        for (MenuItemController controller : mControllers) {
+            final MenuItem menuItem = menu.findItem(controller.getId());
+            if (menuItem != null) {
+                controller.onPrepareOptionsItem(menuItem);
+            }
+        }
+    }
+
+    /**
+     * Handles click action for a menu item.
+     * <p/>
+     * This method should be called during {@link Activity#onOptionsItemSelected(MenuItem)}.
+     */
+    public boolean onOptionsItemSelected(MenuItem item) {
+        final int itemId = item.getItemId();
+        for (MenuItemController controller : mControllers) {
+            if (controller.getId() == itemId
+                    && controller.onOptionsItemSelected(item)) {
+                return true;
+            }
+        }
+        return false;
+    }
+}
diff --git a/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java b/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java
index fbba78d..52a4680 100644
--- a/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java
+++ b/src/com/android/deskclock/actionbarmenu/SearchMenuItemController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 The Android Open Source Project
+ * 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
@@ -16,10 +16,11 @@
 
 package com.android.deskclock.actionbarmenu;
 
+import android.content.Context;
 import android.os.Bundle;
-import android.support.v4.view.MenuItemCompat;
 import android.support.v7.widget.SearchView;
 import android.support.v7.widget.SearchView.OnQueryTextListener;
+import android.text.InputType;
 import android.view.Menu;
 import android.view.MenuItem;
 import android.view.View;
@@ -27,22 +28,32 @@
 
 import com.android.deskclock.R;
 
+import static android.view.Menu.FIRST;
+import static android.view.Menu.NONE;
+
 /**
  * {@link MenuItemController} for search menu.
  */
-public final class SearchMenuItemController extends AbstractMenuItemController {
+public final class SearchMenuItemController implements MenuItemController {
 
     private static final String KEY_SEARCH_QUERY = "search_query";
     private static final String KEY_SEARCH_MODE = "search_mode";
+
     private static final int SEARCH_MENU_RES_ID = R.id.menu_item_search;
+
+    private final Context mContext;
     private final SearchView.OnQueryTextListener mQueryListener;
     private final SearchModeChangeListener mSearchModeChangeListener;
+
     private String mQuery = "";
     private boolean mSearchMode;
 
-    public SearchMenuItemController(OnQueryTextListener queryListener, Bundle savedState) {
+    public SearchMenuItemController(Context context, OnQueryTextListener queryListener,
+            Bundle savedState) {
+        mContext = context;
         mSearchModeChangeListener = new SearchModeChangeListener();
         mQueryListener = queryListener;
+
         if (savedState != null) {
             mSearchMode = savedState.getBoolean(KEY_SEARCH_MODE, false);
             mQuery = savedState.getString(KEY_SEARCH_QUERY, "");
@@ -60,15 +71,20 @@
     }
 
     @Override
-    public void setInitialState(Menu menu) {
-        super.setInitialState(menu);
-        final MenuItem search = menu.findItem(SEARCH_MENU_RES_ID);
-        final SearchView searchView = (SearchView) MenuItemCompat.getActionView(search);
+    public void onCreateOptionsItem(Menu menu) {
+        final SearchView searchView = new SearchView(mContext);
         searchView.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
+        searchView.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_WORDS);
         searchView.setQuery(mQuery, false);
         searchView.setOnCloseListener(mSearchModeChangeListener);
         searchView.setOnSearchClickListener(mSearchModeChangeListener);
         searchView.setOnQueryTextListener(mQueryListener);
+
+        menu.add(NONE, SEARCH_MENU_RES_ID, FIRST, android.R.string.search_go)
+                .setIcon(android.R.drawable.ic_menu_search)
+                .setActionView(searchView)
+                .setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
+
         if (mSearchMode) {
             searchView.requestFocus();
             searchView.setIconified(false);
@@ -76,12 +92,11 @@
     }
 
     @Override
-    public void showMenuItem(Menu menu) {
-        menu.findItem(SEARCH_MENU_RES_ID).setVisible(true);
+    public void onPrepareOptionsItem(MenuItem item) {
     }
 
     @Override
-    public boolean handleMenuItemClick(MenuItem item) {
+    public boolean onOptionsItemSelected(MenuItem item) {
         // The search view is handled by {@link #mSearchListener}. Skip handling here.
         return false;
     }
diff --git a/src/com/android/deskclock/actionbarmenu/SettingMenuItemController.java b/src/com/android/deskclock/actionbarmenu/SettingsMenuItemController.java
similarity index 64%
rename from src/com/android/deskclock/actionbarmenu/SettingMenuItemController.java
rename to src/com/android/deskclock/actionbarmenu/SettingsMenuItemController.java
index a984451..ecf442e 100644
--- a/src/com/android/deskclock/actionbarmenu/SettingMenuItemController.java
+++ b/src/com/android/deskclock/actionbarmenu/SettingsMenuItemController.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 The Android Open Source Project
+ * 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.
@@ -13,6 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package com.android.deskclock.actionbarmenu;
 
 import android.app.Activity;
@@ -23,17 +24,20 @@
 import com.android.deskclock.R;
 import com.android.deskclock.settings.SettingsActivity;
 
+import static android.view.Menu.NONE;
+
 /**
- * {@link MenuItemController} for setting menu.
+ * {@link MenuItemController} for settings menu.
  */
-public final class SettingMenuItemController extends AbstractMenuItemController {
+public final class SettingsMenuItemController implements MenuItemController {
 
     public static final int REQUEST_CHANGE_SETTINGS = 1;
 
     private static final int SETTING_MENU_RES_ID = R.id.menu_item_settings;
+
     private final Activity mActivity;
 
-    public SettingMenuItemController(Activity activity) {
+    public SettingsMenuItemController(Activity activity) {
         mActivity = activity;
     }
 
@@ -43,13 +47,18 @@
     }
 
     @Override
-    public void showMenuItem(Menu menu) {
-        menu.findItem(SETTING_MENU_RES_ID).setVisible(true);
+    public void onCreateOptionsItem(Menu menu) {
+        menu.add(NONE, SETTING_MENU_RES_ID, NONE, R.string.menu_item_settings)
+                .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
     }
 
     @Override
-    public boolean handleMenuItemClick(MenuItem item) {
-        Intent settingIntent = new Intent(mActivity, SettingsActivity.class);
+    public void onPrepareOptionsItem(MenuItem item) {
+    }
+
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
+        final Intent settingIntent = new Intent(mActivity, SettingsActivity.class);
         mActivity.startActivityForResult(settingIntent, REQUEST_CHANGE_SETTINGS);
         return true;
     }
diff --git a/src/com/android/deskclock/alarms/AlarmActivity.java b/src/com/android/deskclock/alarms/AlarmActivity.java
index 80864c8..c9c9ba1 100644
--- a/src/com/android/deskclock/alarms/AlarmActivity.java
+++ b/src/com/android/deskclock/alarms/AlarmActivity.java
@@ -170,7 +170,7 @@
         LOGGER.i("Displaying alarm for instance: %s", mAlarmInstance);
 
         // Get the volume/camera button behavior setting
-        mVolumeBehavior = PreferenceManager.getDefaultSharedPreferences(this)
+        mVolumeBehavior = Utils.getDefaultSharedPreferences(this)
                 .getString(SettingsActivity.KEY_VOLUME_BUTTONS,
                         SettingsActivity.DEFAULT_VOLUME_BEHAVIOR);
 
@@ -291,6 +291,7 @@
             case KeyEvent.KEYCODE_VOLUME_UP:
             case KeyEvent.KEYCODE_VOLUME_DOWN:
             case KeyEvent.KEYCODE_VOLUME_MUTE:
+            case KeyEvent.KEYCODE_HEADSETHOOK:
             case KeyEvent.KEYCODE_CAMERA:
             case KeyEvent.KEYCODE_FOCUS:
                 if (!mAlarmHandled && keyEvent.getAction() == KeyEvent.ACTION_UP) {
diff --git a/src/com/android/deskclock/alarms/AlarmStateManager.java b/src/com/android/deskclock/alarms/AlarmStateManager.java
index ce9046e..f1491b3 100644
--- a/src/com/android/deskclock/alarms/AlarmStateManager.java
+++ b/src/com/android/deskclock/alarms/AlarmStateManager.java
@@ -160,12 +160,12 @@
     }
 
     public static int getGlobalIntentId(Context context) {
-        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
+        SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         return prefs.getInt(ALARM_GLOBAL_ID_EXTRA, -1);
     }
 
     public static void updateGlobalIntentId(Context context) {
-        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
+        SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         int globalId = prefs.getInt(ALARM_GLOBAL_ID_EXTRA, -1) + 1;
         prefs.edit().putInt(ALARM_GLOBAL_ID_EXTRA, globalId).commit();
     }
@@ -491,7 +491,7 @@
         AlarmService.stopAlarm(context, instance);
 
         // Calculate the new snooze alarm time
-        String snoozeMinutesStr = PreferenceManager.getDefaultSharedPreferences(context)
+        String snoozeMinutesStr = Utils.getDefaultSharedPreferences(context)
                 .getString(SettingsActivity.KEY_ALARM_SNOOZE, DEFAULT_SNOOZE_MINUTES);
         final int snoozeMinutes = Integer.parseInt(snoozeMinutesStr);
         Calendar newAlarmTime = Calendar.getInstance();
@@ -529,7 +529,7 @@
     }
 
     public static int getSnoozedMinutes(Context context) {
-        final String snoozeMinutesStr = PreferenceManager.getDefaultSharedPreferences(context)
+        final String snoozeMinutesStr = Utils.getDefaultSharedPreferences(context)
                 .getString(SettingsActivity.KEY_ALARM_SNOOZE, DEFAULT_SNOOZE_MINUTES);
         return Integer.parseInt(snoozeMinutesStr);
     }
diff --git a/src/com/android/deskclock/data/CityDAO.java b/src/com/android/deskclock/data/CityDAO.java
index fc6f0dc..1399248 100644
--- a/src/com/android/deskclock/data/CityDAO.java
+++ b/src/com/android/deskclock/data/CityDAO.java
@@ -20,12 +20,12 @@
 import android.content.SharedPreferences;
 import android.content.res.Resources;
 import android.content.res.TypedArray;
-import android.preference.PreferenceManager;
 import android.support.annotation.VisibleForTesting;
 import android.text.TextUtils;
 import android.util.ArrayMap;
 
 import com.android.deskclock.R;
+import com.android.deskclock.Utils;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -43,26 +43,23 @@
  */
 final class CityDAO {
 
-    // Regex to match numeric index values when parsing city names.
+    /** Regex to match numeric index values when parsing city names. */
     private static final Pattern NUMERIC_INDEX_REGEX = Pattern.compile("\\d+");
 
-    // Key to a preference that stores the number of selected cities.
+    /** Key to a preference that stores the number of selected cities. */
     private static final String NUMBER_OF_CITIES = "number_of_cities";
 
-    // Prefix for a key to a preference that stores the id of a selected city.
+    /** Prefix for a key to a preference that stores the id of a selected city. */
     private static final String CITY_ID = "city_id_";
 
-    // Lazily instantiated and cached for the life of the application.
-    private static SharedPreferences sPrefs;
-
     private CityDAO() {}
 
     /**
      * @param cityMap maps city ids to city instances
      * @return the list of city ids selected for display by the user
      */
-    public static List<City> getSelectedCities(Context context, Map<String, City> cityMap) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static List<City> getSelectedCities(Context context, Map<String, City> cityMap) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final int size = prefs.getInt(NUMBER_OF_CITIES, 0);
         final List<City> selectedCities = new ArrayList<>(size);
 
@@ -80,8 +77,8 @@
     /**
      * @param cities the collection of cities selected for display by the user
      */
-    public static void setSelectedCities(Context context, Collection<City> cities) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static void setSelectedCities(Context context, Collection<City> cities) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final SharedPreferences.Editor editor = prefs.edit();
         editor.putInt(NUMBER_OF_CITIES, cities.size());
 
@@ -97,7 +94,7 @@
     /**
      * @return the domain of cities from which the user may choose a world clock
      */
-    public static Map<String, City> getCities(Context context) {
+    static Map<String, City> getCities(Context context) {
         final Resources resources = context.getResources();
         final TypedArray cityStrings = resources.obtainTypedArray(R.array.city_ids);
         final int citiesCount = cityStrings.length();
@@ -169,12 +166,4 @@
 
         return new City(id, index, indexString, name, phoneticName, tz);
     }
-
-    private static SharedPreferences getSharedPreferences(Context context) {
-        if (sPrefs == null) {
-            sPrefs = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
-        }
-
-        return sPrefs;
-    }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/CityModel.java b/src/com/android/deskclock/data/CityModel.java
index 2f344ad..b34c447 100644
--- a/src/com/android/deskclock/data/CityModel.java
+++ b/src/com/android/deskclock/data/CityModel.java
@@ -22,7 +22,6 @@
 import android.content.IntentFilter;
 import android.content.SharedPreferences;
 import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
-import android.preference.PreferenceManager;
 
 import com.android.deskclock.R;
 import com.android.deskclock.Utils;
@@ -83,7 +82,7 @@
         mContext.registerReceiver(mLocaleChangedReceiver, localeBroadcastFilter);
 
         // Clear caches affected by preferences when preferences change.
-        final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(mContext);
         prefs.registerOnSharedPreferenceChangeListener(mPreferenceListener);
     }
 
diff --git a/src/com/android/deskclock/data/SettingsDAO.java b/src/com/android/deskclock/data/SettingsDAO.java
index 799b4da..b609293 100644
--- a/src/com/android/deskclock/data/SettingsDAO.java
+++ b/src/com/android/deskclock/data/SettingsDAO.java
@@ -19,9 +19,9 @@
 import android.content.Context;
 import android.content.SharedPreferences;
 import android.net.Uri;
-import android.preference.PreferenceManager;
 
 import com.android.deskclock.R;
+import com.android.deskclock.Utils;
 import com.android.deskclock.data.DataModel.CitySort;
 import com.android.deskclock.data.DataModel.ClockStyle;
 import com.android.deskclock.settings.ScreensaverSettingsActivity;
@@ -35,11 +35,11 @@
  */
 final class SettingsDAO {
 
+    /** Key to a preference that stores the preferred sort order of world cities. */
     private static final String KEY_SORT_PREFERENCE = "sort_preference";
-    private static final String KEY_DEFAULT_ALARM_RINGTONE_URI = "default_alarm_ringtone_uri";
 
-    // Lazily instantiated and cached for the life of the application.
-    private static SharedPreferences sPrefs;
+    /** Key to a preference that stores the default ringtone for new alarms. */
+    private static final String KEY_DEFAULT_ALARM_RINGTONE_URI = "default_alarm_ringtone_uri";
 
     private SettingsDAO() {}
 
@@ -48,7 +48,7 @@
      */
     static CitySort getCitySort(Context context) {
         final int defaultSortOrdinal = CitySort.NAME.ordinal();
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final int citySortOrdinal = prefs.getInt(KEY_SORT_PREFERENCE, defaultSortOrdinal);
         return CitySort.values()[citySortOrdinal];
     }
@@ -59,7 +59,7 @@
     static void toggleCitySort(Context context) {
         final CitySort oldSort = getCitySort(context);
         final CitySort newSort = oldSort == CitySort.NAME ? CitySort.UTC_OFFSET : CitySort.NAME;
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         prefs.edit().putInt(KEY_SORT_PREFERENCE, newSort.ordinal()).apply();
     }
 
@@ -68,7 +68,7 @@
      *      displayed when it doesn't match the current timezone
      */
     static boolean getAutoShowHomeClock(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         return prefs.getBoolean(SettingsActivity.KEY_AUTO_HOME_CLOCK, false);
     }
 
@@ -76,7 +76,7 @@
      * @return the user's home timezone
      */
     static TimeZone getHomeTimeZone(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final String defaultTimeZoneId = TimeZone.getDefault().getID();
         final String timeZoneId = prefs.getString(SettingsActivity.KEY_HOME_TZ, defaultTimeZoneId);
         return TimeZone.getTimeZone(timeZoneId);
@@ -88,7 +88,7 @@
      * @param homeTimeZone the timezone to set as the user's home timezone if necessary
      */
     static void setDefaultHomeTimeZone(Context context, TimeZone homeTimeZone) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final String homeTimeZoneId = prefs.getString(SettingsActivity.KEY_HOME_TZ, null);
         if (homeTimeZoneId == null) {
             prefs.edit().putString(SettingsActivity.KEY_HOME_TZ, homeTimeZone.getID()).apply();
@@ -113,7 +113,7 @@
      * @return {@code true} if the screen saver should be dimmed for lower contrast at night
      */
     static boolean getScreensaverNightModeOn(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         return prefs.getBoolean(ScreensaverSettingsActivity.KEY_NIGHT_MODE, false);
     }
 
@@ -122,7 +122,7 @@
      *      has yet been made
      */
     static Uri getTimerRingtoneUri(Context context, Uri defaultUri) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final String uriString = prefs.getString(SettingsActivity.KEY_TIMER_RINGTONE, null);
         return uriString == null ? defaultUri : Uri.parse(uriString);
     }
@@ -131,7 +131,7 @@
      * @return whether timer vibration is enabled. false by default.
      */
     static boolean getTimerVibrate(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         return prefs.getBoolean(SettingsActivity.KEY_TIMER_VIBRATE, false);
     }
 
@@ -139,7 +139,7 @@
      * @param enabled whether vibration will be turned on for all timers.
      */
     static void setTimerVibrate(Context context, boolean enabled) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         prefs.edit().putBoolean(SettingsActivity.KEY_TIMER_VIBRATE, enabled).apply();
     }
 
@@ -147,7 +147,7 @@
      * @param uri the uri of the ringtone to play for all timers
      */
     static void setTimerRingtoneUri(Context context, Uri uri) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         prefs.edit().putString(SettingsActivity.KEY_TIMER_RINGTONE, uri.toString()).apply();
     }
 
@@ -156,7 +156,7 @@
      *      has yet been made
      */
     static Uri getDefaultAlarmRingtoneUri(Context context, Uri defaultUri) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final String uriString = prefs.getString(KEY_DEFAULT_ALARM_RINGTONE_URI, null);
         return uriString == null ? defaultUri : Uri.parse(uriString);
     }
@@ -164,24 +164,16 @@
      * @param uri identifies the default ringtone to play for new alarms
      */
     static void setDefaultAlarmRingtoneUri(Context context, Uri uri) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         prefs.edit().putString(KEY_DEFAULT_ALARM_RINGTONE_URI, uri.toString()).apply();
     }
 
     private static ClockStyle getClockStyle(Context context, String prefKey) {
         final String defaultStyle = context.getString(R.string.default_clock_style);
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final String clockStyle = prefs.getString(prefKey, defaultStyle);
         // Use hardcoded locale to perform toUpperCase, because in some languages toUpperCase adds
         // accent to character, which breaks the enum conversion.
         return ClockStyle.valueOf(clockStyle.toUpperCase(Locale.US));
     }
-
-    private static SharedPreferences getSharedPreferences(Context context) {
-        if (sPrefs == null) {
-            sPrefs = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
-        }
-
-        return sPrefs;
-    }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/SettingsModel.java b/src/com/android/deskclock/data/SettingsModel.java
index 86131a2..caeef93 100644
--- a/src/com/android/deskclock/data/SettingsModel.java
+++ b/src/com/android/deskclock/data/SettingsModel.java
@@ -21,6 +21,7 @@
 import android.provider.Settings;
 
 import com.android.deskclock.R;
+import com.android.deskclock.Utils;
 import com.android.deskclock.data.DataModel.CitySort;
 import com.android.deskclock.data.DataModel.ClockStyle;
 
@@ -81,10 +82,7 @@
 
     Uri getDefaultTimerRingtoneUri() {
         if (mDefaultTimerRingtoneUri == null) {
-            final String packageName = mContext.getPackageName();
-            final int resId = R.raw.timer_expire;
-            final String uriString = String.format("android.resource://%s/%d", packageName, resId);
-            mDefaultTimerRingtoneUri = Uri.parse(uriString);
+            mDefaultTimerRingtoneUri = Utils.getResourceUri(mContext, R.raw.timer_expire);
         }
 
         return mDefaultTimerRingtoneUri;
diff --git a/src/com/android/deskclock/data/Stopwatch.java b/src/com/android/deskclock/data/Stopwatch.java
index bc27991..bfb7fba 100644
--- a/src/com/android/deskclock/data/Stopwatch.java
+++ b/src/com/android/deskclock/data/Stopwatch.java
@@ -16,8 +16,11 @@
 
 package com.android.deskclock.data;
 
+import android.net.Uri;
 import android.os.SystemClock;
 
+import com.android.deskclock.provider.ClockContract;
+
 import static com.android.deskclock.data.Stopwatch.State.PAUSED;
 import static com.android.deskclock.data.Stopwatch.State.RESET;
 import static com.android.deskclock.data.Stopwatch.State.RUNNING;
@@ -29,6 +32,12 @@
 
     public enum State { RESET, RUNNING, PAUSED }
 
+    /**
+     * The content:// style URI for the stopwatch.
+     */
+    public static final Uri CONTENT_URI =
+            Uri.parse("content://" + ClockContract.AUTHORITY + "/stopwatch");
+
     /** The single, immutable instance of a reset stopwatch. */
     private static final Stopwatch RESET_STOPWATCH = new Stopwatch(RESET, Long.MIN_VALUE, 0);
 
@@ -47,6 +56,10 @@
         mAccumulatedTime = accumulatedTime;
     }
 
+    public Uri getContentUri() {
+        return CONTENT_URI;
+    }
+
     public State getState() { return mState; }
     public long getLastStartTime() { return mLastStartTime; }
     public boolean isReset() { return mState == RESET; }
@@ -71,7 +84,7 @@
     /**
      * @return the amount of time accumulated up to the last time the stopwatch was started
      */
-    long getAccumulatedTime() {
+    public long getAccumulatedTime() {
         return mAccumulatedTime;
     }
 
diff --git a/src/com/android/deskclock/data/StopwatchDAO.java b/src/com/android/deskclock/data/StopwatchDAO.java
index a95cbe4..a230481 100644
--- a/src/com/android/deskclock/data/StopwatchDAO.java
+++ b/src/com/android/deskclock/data/StopwatchDAO.java
@@ -18,8 +18,8 @@
 
 import android.content.Context;
 import android.content.SharedPreferences;
-import android.preference.PreferenceManager;
 
+import com.android.deskclock.Utils;
 import com.android.deskclock.data.Stopwatch.State;
 
 import java.util.ArrayList;
@@ -34,31 +34,28 @@
  */
 final class StopwatchDAO {
 
-    // Key to a preference that stores the state of the stopwatch.
+    /** Key to a preference that stores the state of the stopwatch. */
     private static final String STATE = "sw_state";
 
-    // Key to a preference that stores the last start time of the stopwatch.
+    /** Key to a preference that stores the last start time of the stopwatch. */
     private static final String LAST_START_TIME = "sw_start_time";
 
-    // Key to a preference that stores the accumulated elapsed time of the stopwatch.
+    /** Key to a preference that stores the accumulated elapsed time of the stopwatch. */
     private static final String ACCUMULATED_TIME = "sw_accum_time";
 
-    // Key to a preference that stores the number of recorded laps.
+    /** Prefix for a key to a preference that stores the number of recorded laps. */
     private static final String LAP_COUNT = "sw_lap_num";
 
-    // Prefix for a key to a preference that stores accumulated time at the end of a particular lap.
+    /** Prefix for a key to a preference that stores accumulated time at the end of a lap. */
     private static final String LAP_ACCUMULATED_TIME = "sw_lap_time_";
 
-    // Lazily instantiated and cached for the life of the application.
-    private static SharedPreferences sPrefs;
-
     private StopwatchDAO() {}
 
     /**
      * @return the stopwatch from permanent storage or a reset stopwatch if none exists
      */
-    public static Stopwatch getStopwatch(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static Stopwatch getStopwatch(Context context) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final int stateIndex = prefs.getInt(STATE, RESET.ordinal());
         final State state = State.values()[stateIndex];
         final long lastStartTime = prefs.getLong(LAST_START_TIME, Long.MIN_VALUE);
@@ -69,8 +66,8 @@
     /**
      * @param stopwatch the last state of the stopwatch
      */
-    public static void setStopwatch(Context context, Stopwatch stopwatch) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static void setStopwatch(Context context, Stopwatch stopwatch) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final SharedPreferences.Editor editor = prefs.edit();
 
         if (stopwatch.isReset()) {
@@ -89,8 +86,8 @@
     /**
      * @return a list of recorded laps for the stopwatch
      */
-    public static List<Lap> getLaps(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static List<Lap> getLaps(Context context) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
 
         // Prepare the container to be filled with laps.
         final int lapCount = prefs.getInt(LAP_COUNT, 0);
@@ -124,8 +121,9 @@
      * @param newLapCount the number of laps including the new lap
      * @param accumulatedTime the amount of time accumulate by the stopwatch at the end of the lap
      */
-    public static void addLap(Context context, int newLapCount, long accumulatedTime) {
-        getSharedPreferences(context).edit()
+    static void addLap(Context context, int newLapCount, long accumulatedTime) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
+        prefs.edit()
                 .putInt(LAP_COUNT, newLapCount)
                 .putLong(LAP_ACCUMULATED_TIME + newLapCount, accumulatedTime)
                 .apply();
@@ -134,8 +132,8 @@
     /**
      * Remove the recorded laps for the stopwatch
      */
-    public static void clearLaps(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static void clearLaps(Context context) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final SharedPreferences.Editor editor = prefs.edit();
 
         final int lapCount = prefs.getInt(LAP_COUNT, 0);
@@ -146,12 +144,4 @@
 
         editor.apply();
     }
-
-    private static SharedPreferences getSharedPreferences(Context context) {
-        if (sPrefs == null) {
-            sPrefs = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
-        }
-
-        return sPrefs;
-    }
 }
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/StopwatchModel.java b/src/com/android/deskclock/data/StopwatchModel.java
index f12a4fd..ecbd864 100644
--- a/src/com/android/deskclock/data/StopwatchModel.java
+++ b/src/com/android/deskclock/data/StopwatchModel.java
@@ -17,33 +17,19 @@
 package com.android.deskclock.data;
 
 import android.app.Notification;
-import android.app.PendingIntent;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
-import android.content.res.Resources;
-import android.os.SystemClock;
-import android.support.annotation.IdRes;
-import android.support.annotation.StringRes;
 import android.support.annotation.VisibleForTesting;
-import android.support.v4.app.NotificationCompat;
 import android.support.v4.app.NotificationManagerCompat;
-import android.widget.RemoteViews;
 
-import com.android.deskclock.HandleDeskClockApiCalls;
-import com.android.deskclock.R;
-import com.android.deskclock.stopwatch.StopwatchService;
+import com.android.deskclock.Utils;
 
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
-import static android.app.PendingIntent.FLAG_UPDATE_CURRENT;
-import static android.view.View.GONE;
-import static android.view.View.INVISIBLE;
-import static android.view.View.VISIBLE;
-
 /**
  * All {@link Stopwatch} data is accessed via this model.
  */
@@ -63,6 +49,9 @@
     /** The listeners to notify when the stopwatch or its laps change. */
     private final List<StopwatchListener> mStopwatchListeners = new ArrayList<>();
 
+    /** Delegate that builds platform-specific stopwatch notifications. */
+    private NotificationBuilder mNotificationBuilder;
+
     /** The current state of the stopwatch. */
     private Stopwatch mStopwatch;
 
@@ -236,126 +225,11 @@
             return;
         }
 
-        @StringRes final int eventLabel = R.string.label_notification;
-
-        // Intent to load the app when the notification is tapped.
-        final Intent showApp = new Intent(mContext, HandleDeskClockApiCalls.class)
-                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
-                .setAction(HandleDeskClockApiCalls.ACTION_SHOW_STOPWATCH)
-                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
-
-        final PendingIntent pendingShowApp = PendingIntent.getActivity(mContext, 0, showApp,
-                PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
-
-        // Compute some values required below.
-        final boolean running = stopwatch.isRunning();
-        final String pname = mContext.getPackageName();
-        final Resources res = mContext.getResources();
-        final long base = SystemClock.elapsedRealtime() - stopwatch.getTotalTime();
-
-        final RemoteViews collapsed = new RemoteViews(pname, R.layout.stopwatch_notif_collapsed);
-        collapsed.setChronometer(R.id.swn_collapsed_chronometer, base, null, running);
-        collapsed.setOnClickPendingIntent(R.id.swn_collapsed_hitspace, pendingShowApp);
-        collapsed.setImageViewResource(R.id.notification_icon, R.drawable.stat_notify_stopwatch);
-
-        final RemoteViews expanded = new RemoteViews(pname, R.layout.stopwatch_notif_expanded);
-        expanded.setChronometer(R.id.swn_expanded_chronometer, base, null, running);
-        expanded.setOnClickPendingIntent(R.id.swn_expanded_hitspace, pendingShowApp);
-        expanded.setImageViewResource(R.id.notification_icon, R.drawable.stat_notify_stopwatch);
-
-        @IdRes final int leftButtonId = R.id.swn_left_button;
-        @IdRes final int rightButtonId = R.id.swn_right_button;
-        if (running) {
-            // Left button: Pause
-            expanded.setTextViewText(leftButtonId, res.getText(R.string.sw_pause_button));
-            setTextViewDrawable(expanded, leftButtonId, R.drawable.ic_pause_24dp);
-            final Intent pause = new Intent(mContext, StopwatchService.class)
-                    .setAction(HandleDeskClockApiCalls.ACTION_PAUSE_STOPWATCH)
-                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
-            expanded.setOnClickPendingIntent(leftButtonId, pendingServiceIntent(pause));
-
-            // Right button: Add Lap
-            if (canAddMoreLaps()) {
-                expanded.setTextViewText(rightButtonId, res.getText(R.string.sw_lap_button));
-                setTextViewDrawable(expanded, rightButtonId, R.drawable.ic_sw_lap_24dp);
-
-                final Intent lap = new Intent(mContext, StopwatchService.class)
-                        .setAction(HandleDeskClockApiCalls.ACTION_LAP_STOPWATCH)
-                        .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
-                expanded.setOnClickPendingIntent(rightButtonId, pendingServiceIntent(lap));
-                expanded.setViewVisibility(rightButtonId, VISIBLE);
-            } else {
-                expanded.setViewVisibility(rightButtonId, INVISIBLE);
-            }
-
-            // Show the current lap number if any laps have been recorded.
-            final int lapCount = getLaps().size();
-            if (lapCount > 0) {
-                final int lapNumber = lapCount + 1;
-                final String lap = res.getString(R.string.sw_notification_lap_number, lapNumber);
-                collapsed.setTextViewText(R.id.swn_collapsed_laps, lap);
-                collapsed.setViewVisibility(R.id.swn_collapsed_laps, VISIBLE);
-                expanded.setTextViewText(R.id.swn_expanded_laps, lap);
-                expanded.setViewVisibility(R.id.swn_expanded_laps, VISIBLE);
-            } else {
-                collapsed.setViewVisibility(R.id.swn_collapsed_laps, GONE);
-                expanded.setViewVisibility(R.id.swn_expanded_laps, GONE);
-            }
-        } else {
-            // Left button: Start
-            expanded.setTextViewText(leftButtonId, res.getText(R.string.sw_start_button));
-            setTextViewDrawable(expanded, leftButtonId, R.drawable.ic_start_24dp);
-            final Intent start = new Intent(mContext, StopwatchService.class)
-                    .setAction(HandleDeskClockApiCalls.ACTION_START_STOPWATCH)
-                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
-            expanded.setOnClickPendingIntent(leftButtonId, pendingServiceIntent(start));
-
-            // Right button: Reset (HandleDeskClockApiCalls will also bring forward the app)
-            expanded.setViewVisibility(rightButtonId, VISIBLE);
-            expanded.setTextViewText(rightButtonId, res.getText(R.string.sw_reset_button));
-            setTextViewDrawable(expanded, rightButtonId, R.drawable.ic_reset_24dp);
-            final Intent reset = new Intent(mContext, HandleDeskClockApiCalls.class)
-                    .setAction(HandleDeskClockApiCalls.ACTION_RESET_STOPWATCH)
-                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
-            expanded.setOnClickPendingIntent(rightButtonId, pendingActivityIntent(reset));
-
-            // Indicate the stopwatch is paused.
-            collapsed.setTextViewText(R.id.swn_collapsed_laps, res.getString(R.string.swn_paused));
-            collapsed.setViewVisibility(R.id.swn_collapsed_laps, VISIBLE);
-            expanded.setTextViewText(R.id.swn_expanded_laps, res.getString(R.string.swn_paused));
-            expanded.setViewVisibility(R.id.swn_expanded_laps, VISIBLE);
-        }
-
-        // Swipe away will reset the stopwatch without bringing forward the app.
-        final Intent reset = new Intent(mContext, StopwatchService.class)
-                .setAction(HandleDeskClockApiCalls.ACTION_RESET_STOPWATCH)
-                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
-
-        final Notification notification = new NotificationCompat.Builder(mContext)
-                .setLocalOnly(true)
-                .setOngoing(running)
-                .setContent(collapsed)
-                .setAutoCancel(stopwatch.isPaused())
-                .setPriority(Notification.PRIORITY_MAX)
-                .setDeleteIntent(pendingServiceIntent(reset))
-                .setSmallIcon(R.drawable.ic_tab_stopwatch_activated)
-                .build();
-        notification.bigContentView = expanded;
+        // Otherwise build and post a notification reflecting the latest stopwatch state.
+        final Notification notification = getNotificationBuilder().build(mContext, stopwatch);
         mNotificationManager.notify(mNotificationModel.getStopwatchNotificationId(), notification);
     }
 
-    private PendingIntent pendingServiceIntent(Intent intent) {
-        return PendingIntent.getService(mContext, 0, intent, FLAG_UPDATE_CURRENT);
-    }
-
-    private PendingIntent pendingActivityIntent(Intent intent) {
-        return PendingIntent.getActivity(mContext, 0, intent, FLAG_UPDATE_CURRENT);
-    }
-
-    private static void setTextViewDrawable(RemoteViews rv, int viewId, int drawableId) {
-        rv.setTextViewCompoundDrawablesRelative(viewId, drawableId, 0, 0, 0);
-    }
-
     private List<Lap> getMutableLaps() {
         if (mLaps == null) {
             mLaps = StopwatchDAO.getLaps(mContext);
@@ -364,6 +238,18 @@
         return mLaps;
     }
 
+    private NotificationBuilder getNotificationBuilder() {
+        if (mNotificationBuilder == null) {
+            if (Utils.isNOrLater()) {
+                mNotificationBuilder = new StopwatchNotificationBuilderN();
+            } else {
+                mNotificationBuilder = new StopwatchNotificationBuilderPreN();
+            }
+        }
+
+        return mNotificationBuilder;
+    }
+
     /**
      * Update the stopwatch notification in response to a locale change.
      */
@@ -373,4 +259,16 @@
             updateNotification();
         }
     }
+
+    /**
+     * An API for building platform-specific stopwatch notifications.
+     */
+    public interface NotificationBuilder {
+        /**
+         * @param context a context to use for fetching resources
+         * @param stopwatch the stopwatch guaranteed to be running or paused
+         * @return a notification reporting the state of the {@code stopwatch}
+         */
+        Notification build(Context context, Stopwatch stopwatch);
+    }
 }
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/StopwatchNotificationBuilderN.java b/src/com/android/deskclock/data/StopwatchNotificationBuilderN.java
new file mode 100644
index 0000000..2d1c9c1
--- /dev/null
+++ b/src/com/android/deskclock/data/StopwatchNotificationBuilderN.java
@@ -0,0 +1,149 @@
+/*
+ * 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.
+ */
+
+package com.android.deskclock.data;
+
+import android.annotation.TargetApi;
+import android.app.Notification;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.Resources;
+import android.graphics.drawable.Icon;
+import android.os.Build;
+import android.os.SystemClock;
+import android.support.annotation.StringRes;
+import android.widget.RemoteViews;
+
+import com.android.deskclock.HandleDeskClockApiCalls;
+import com.android.deskclock.R;
+import com.android.deskclock.Utils;
+import com.android.deskclock.stopwatch.StopwatchService;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import static android.view.View.GONE;
+import static android.view.View.VISIBLE;
+
+/**
+ * Builds N-style notification to reflect the latest state of the stopwatch and recorded laps.
+ */
+@TargetApi(Build.VERSION_CODES.N)
+class StopwatchNotificationBuilderN implements StopwatchModel.NotificationBuilder {
+
+    @Override
+    public Notification build(Context context, Stopwatch stopwatch) {
+        @StringRes final int eventLabel = R.string.label_notification;
+
+        // Intent to load the app when the notification is tapped.
+        final Intent showApp = new Intent(context, HandleDeskClockApiCalls.class)
+                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
+                .setAction(HandleDeskClockApiCalls.ACTION_SHOW_STOPWATCH)
+                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+        final PendingIntent pendingShowApp = PendingIntent.getActivity(context, 0, showApp,
+                PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
+
+        // Compute some values required below.
+        final boolean running = stopwatch.isRunning();
+        final String pname = context.getPackageName();
+        final Resources res = context.getResources();
+        final long base = SystemClock.elapsedRealtime() - stopwatch.getTotalTime();
+
+        final RemoteViews content = new RemoteViews(pname, R.layout.chronometer_notif_content);
+        content.setChronometer(R.id.chronometer, base, null, running);
+
+        final List<Notification.Action> actions = new ArrayList<>(2);
+
+        if (running) {
+            // Left button: Pause
+            final Intent pause = new Intent(context, StopwatchService.class)
+                    .setAction(HandleDeskClockApiCalls.ACTION_PAUSE_STOPWATCH)
+                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+            final Icon icon1 = Icon.createWithResource(context, R.drawable.ic_pause_24dp);
+            final CharSequence title1 = res.getText(R.string.sw_pause_button);
+            final PendingIntent intent1 = Utils.pendingServiceIntent(context, pause);
+            actions.add(new Notification.Action.Builder(icon1, title1, intent1).build());
+
+            // Right button: Add Lap
+            if (DataModel.getDataModel().canAddMoreLaps()) {
+                final Intent lap = new Intent(context, StopwatchService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_LAP_STOPWATCH)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+                final Icon icon2 = Icon.createWithResource(context, R.drawable.ic_sw_lap_24dp);
+                final CharSequence title2 = res.getText(R.string.sw_lap_button);
+                final PendingIntent intent2 = Utils.pendingServiceIntent(context, lap);
+                actions.add(new Notification.Action.Builder(icon2, title2, intent2).build());
+            }
+
+            // Show the current lap number if any laps have been recorded.
+            final int lapCount = DataModel.getDataModel().getLaps().size();
+            if (lapCount > 0) {
+                final int lapNumber = lapCount + 1;
+                final String lap = res.getString(R.string.sw_notification_lap_number, lapNumber);
+                content.setTextViewText(R.id.state, lap);
+                content.setViewVisibility(R.id.state, VISIBLE);
+            } else {
+                content.setViewVisibility(R.id.state, GONE);
+            }
+        } else {
+            // Left button: Start
+            final Intent start = new Intent(context, StopwatchService.class)
+                    .setAction(HandleDeskClockApiCalls.ACTION_START_STOPWATCH)
+                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+            final Icon icon1 = Icon.createWithResource(context, R.drawable.ic_start_24dp);
+            final CharSequence title1 = res.getText(R.string.sw_start_button);
+            final PendingIntent intent1 = Utils.pendingServiceIntent(context, start);
+            actions.add(new Notification.Action.Builder(icon1, title1, intent1).build());
+
+            // Right button: Reset (dismisses notification and resets stopwatch)
+            final Intent reset = new Intent(context, StopwatchService.class)
+                    .setAction(HandleDeskClockApiCalls.ACTION_RESET_STOPWATCH)
+                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+            final Icon icon2 = Icon.createWithResource(context, R.drawable.ic_reset_24dp);
+            final CharSequence title2 = res.getText(R.string.sw_reset_button);
+            final PendingIntent intent2 = Utils.pendingServiceIntent(context, reset);
+            actions.add(new Notification.Action.Builder(icon2, title2, intent2).build());
+
+            // Indicate the stopwatch is paused.
+            content.setTextViewText(R.id.state, res.getString(R.string.swn_paused));
+            content.setViewVisibility(R.id.state, VISIBLE);
+        }
+
+        // Swipe away will reset the stopwatch without bringing forward the app.
+        final Intent reset = new Intent(context, StopwatchService.class)
+                .setAction(HandleDeskClockApiCalls.ACTION_RESET_STOPWATCH)
+                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+        return new Notification.Builder(context)
+                .setLocalOnly(true)
+                .setOngoing(running)
+                .setCustomContentView(content)
+                .setContentIntent(pendingShowApp)
+                .setAutoCancel(stopwatch.isPaused())
+                .setPriority(Notification.PRIORITY_MAX)
+                .setSmallIcon(R.drawable.ic_tab_stopwatch_activated)
+                .setStyle(new Notification.DecoratedCustomViewStyle())
+                .setDeleteIntent(Utils.pendingServiceIntent(context, reset))
+                .setActions(actions.toArray(new Notification.Action[actions.size()]))
+                .build();
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/StopwatchNotificationBuilderPreN.java b/src/com/android/deskclock/data/StopwatchNotificationBuilderPreN.java
new file mode 100644
index 0000000..d1a81e3
--- /dev/null
+++ b/src/com/android/deskclock/data/StopwatchNotificationBuilderPreN.java
@@ -0,0 +1,162 @@
+/*
+ * 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.
+ */
+
+package com.android.deskclock.data;
+
+import android.app.Notification;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.Resources;
+import android.os.SystemClock;
+import android.support.annotation.IdRes;
+import android.support.annotation.StringRes;
+import android.support.v4.app.NotificationCompat;
+import android.widget.RemoteViews;
+
+import com.android.deskclock.HandleDeskClockApiCalls;
+import com.android.deskclock.R;
+import com.android.deskclock.Utils;
+import com.android.deskclock.stopwatch.StopwatchService;
+
+import static android.view.View.GONE;
+import static android.view.View.INVISIBLE;
+import static android.view.View.VISIBLE;
+
+/**
+ * Builds KK, L, or M-style notifications to reflect the latest state of the stopwatch and
+ * recorded laps.
+ */
+class StopwatchNotificationBuilderPreN implements StopwatchModel.NotificationBuilder {
+
+    @Override
+    public Notification build(Context context, Stopwatch stopwatch) {
+        @StringRes final int eventLabel = R.string.label_notification;
+
+        // Intent to load the app when the notification is tapped.
+        final Intent showApp = new Intent(context, HandleDeskClockApiCalls.class)
+                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
+                .setAction(HandleDeskClockApiCalls.ACTION_SHOW_STOPWATCH)
+                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+        final PendingIntent pendingShowApp = PendingIntent.getActivity(context, 0, showApp,
+                PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
+
+        // Compute some values required below.
+        final boolean running = stopwatch.isRunning();
+        final String pname = context.getPackageName();
+        final Resources res = context.getResources();
+        final long base = SystemClock.elapsedRealtime() - stopwatch.getTotalTime();
+
+        final RemoteViews collapsed = new RemoteViews(pname, R.layout.stopwatch_notif_collapsed);
+        collapsed.setChronometer(R.id.swn_collapsed_chronometer, base, null, running);
+        collapsed.setOnClickPendingIntent(R.id.swn_collapsed_hitspace, pendingShowApp);
+        collapsed.setImageViewResource(R.id.notification_icon, R.drawable.stat_notify_stopwatch);
+
+        final RemoteViews expanded = new RemoteViews(pname, R.layout.stopwatch_notif_expanded);
+        expanded.setChronometer(R.id.swn_expanded_chronometer, base, null, running);
+        expanded.setOnClickPendingIntent(R.id.swn_expanded_hitspace, pendingShowApp);
+        expanded.setImageViewResource(R.id.notification_icon, R.drawable.stat_notify_stopwatch);
+
+        @IdRes final int leftButtonId = R.id.swn_left_button;
+        @IdRes final int rightButtonId = R.id.swn_right_button;
+        if (running) {
+            // Left button: Pause
+            expanded.setTextViewText(leftButtonId, res.getText(R.string.sw_pause_button));
+            setTextViewDrawable(expanded, leftButtonId, R.drawable.ic_pause_24dp);
+            final Intent pause = new Intent(context, StopwatchService.class)
+                    .setAction(HandleDeskClockApiCalls.ACTION_PAUSE_STOPWATCH)
+                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+            final PendingIntent pendingPause = Utils.pendingServiceIntent(context, pause);
+            expanded.setOnClickPendingIntent(leftButtonId, pendingPause);
+
+            // Right button: Add Lap
+            if (DataModel.getDataModel().canAddMoreLaps()) {
+                expanded.setTextViewText(rightButtonId, res.getText(R.string.sw_lap_button));
+                setTextViewDrawable(expanded, rightButtonId, R.drawable.ic_sw_lap_24dp);
+
+                final Intent lap = new Intent(context, StopwatchService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_LAP_STOPWATCH)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+                final PendingIntent pendingLap = Utils.pendingServiceIntent(context, lap);
+                expanded.setOnClickPendingIntent(rightButtonId, pendingLap);
+                expanded.setViewVisibility(rightButtonId, VISIBLE);
+            } else {
+                expanded.setViewVisibility(rightButtonId, INVISIBLE);
+            }
+
+            // Show the current lap number if any laps have been recorded.
+            final int lapCount = DataModel.getDataModel().getLaps().size();
+            if (lapCount > 0) {
+                final int lapNumber = lapCount + 1;
+                final String lap = res.getString(R.string.sw_notification_lap_number, lapNumber);
+                collapsed.setTextViewText(R.id.swn_collapsed_laps, lap);
+                collapsed.setViewVisibility(R.id.swn_collapsed_laps, VISIBLE);
+                expanded.setTextViewText(R.id.swn_expanded_laps, lap);
+                expanded.setViewVisibility(R.id.swn_expanded_laps, VISIBLE);
+            } else {
+                collapsed.setViewVisibility(R.id.swn_collapsed_laps, GONE);
+                expanded.setViewVisibility(R.id.swn_expanded_laps, GONE);
+            }
+        } else {
+            // Left button: Start
+            expanded.setTextViewText(leftButtonId, res.getText(R.string.sw_start_button));
+            setTextViewDrawable(expanded, leftButtonId, R.drawable.ic_start_24dp);
+            final Intent start = new Intent(context, StopwatchService.class)
+                    .setAction(HandleDeskClockApiCalls.ACTION_START_STOPWATCH)
+                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+            final PendingIntent pendingStart = Utils.pendingServiceIntent(context, start);
+            expanded.setOnClickPendingIntent(leftButtonId, pendingStart);
+
+            // Right button: Reset (dismisses notification and resets stopwatch)
+            expanded.setViewVisibility(rightButtonId, VISIBLE);
+            expanded.setTextViewText(rightButtonId, res.getText(R.string.sw_reset_button));
+            setTextViewDrawable(expanded, rightButtonId, R.drawable.ic_reset_24dp);
+            final Intent reset = new Intent(context, StopwatchService.class)
+                    .setAction(HandleDeskClockApiCalls.ACTION_RESET_STOPWATCH)
+                    .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+            final PendingIntent pendingReset = Utils.pendingServiceIntent(context, reset);
+            expanded.setOnClickPendingIntent(rightButtonId, pendingReset);
+
+            // Indicate the stopwatch is paused.
+            collapsed.setTextViewText(R.id.swn_collapsed_laps, res.getString(R.string.swn_paused));
+            collapsed.setViewVisibility(R.id.swn_collapsed_laps, VISIBLE);
+            expanded.setTextViewText(R.id.swn_expanded_laps, res.getString(R.string.swn_paused));
+            expanded.setViewVisibility(R.id.swn_expanded_laps, VISIBLE);
+        }
+
+        // Swipe away will reset the stopwatch without bringing forward the app.
+        final Intent reset = new Intent(context, StopwatchService.class)
+                .setAction(HandleDeskClockApiCalls.ACTION_RESET_STOPWATCH)
+                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, eventLabel);
+
+        final Notification notification = new NotificationCompat.Builder(context)
+                .setLocalOnly(true)
+                .setOngoing(running)
+                .setContent(collapsed)
+                .setAutoCancel(stopwatch.isPaused())
+                .setPriority(NotificationCompat.PRIORITY_MAX)
+                .setDeleteIntent(Utils.pendingServiceIntent(context, reset))
+                .setSmallIcon(R.drawable.ic_tab_stopwatch_activated)
+                .build();
+        notification.bigContentView = expanded;
+        return notification;
+    }
+
+    private static void setTextViewDrawable(RemoteViews rv, int viewId, int drawableId) {
+        rv.setTextViewCompoundDrawablesRelative(viewId, drawableId, 0, 0, 0);
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/Timer.java b/src/com/android/deskclock/data/Timer.java
index 4ef6951..27c944d 100644
--- a/src/com/android/deskclock/data/Timer.java
+++ b/src/com/android/deskclock/data/Timer.java
@@ -16,9 +16,13 @@
 
 package com.android.deskclock.data;
 
+import android.content.ContentUris;
+import android.net.Uri;
 import android.os.SystemClock;
 import android.text.TextUtils;
 
+import com.android.deskclock.provider.ClockContract;
+
 import java.util.Arrays;
 import java.util.Comparator;
 import java.util.List;
@@ -67,6 +71,12 @@
         }
     }
 
+    /**
+     * The content:// style URI for timers.
+     */
+    public static final Uri CONTENT_URI =
+            Uri.parse("content://" + ClockContract.AUTHORITY + "/timers");
+
     /** The minimum duration of a timer. */
     public static final long MIN_LENGTH = SECOND_IN_MILLIS;
 
@@ -122,6 +132,20 @@
     public boolean isExpired() { return mState == EXPIRED; }
 
     /**
+     * @return the {@link Uri} identifying the timer instance.
+     */
+    public Uri getContentUri() {
+        return ContentUris.withAppendedId(CONTENT_URI, mId);
+    }
+
+    /**
+     * @return the amount of remaining time when the timer was last started or paused.
+     */
+    public long getLastRemainingTime() {
+        return mRemainingTime;
+    }
+
+    /**
      * @return the total amount of time remaining up to this moment; expired timers will return a
      *      negative amount
      */
diff --git a/src/com/android/deskclock/data/TimerDAO.java b/src/com/android/deskclock/data/TimerDAO.java
index cf2d37d..2ea6fd8 100644
--- a/src/com/android/deskclock/data/TimerDAO.java
+++ b/src/com/android/deskclock/data/TimerDAO.java
@@ -18,8 +18,8 @@
 
 import android.content.Context;
 import android.content.SharedPreferences;
-import android.preference.PreferenceManager;
 
+import com.android.deskclock.Utils;
 import com.android.deskclock.data.Timer.State;
 
 import java.util.ArrayList;
@@ -36,43 +36,40 @@
  */
 final class TimerDAO {
 
-    // Key to a preference that stores the set of timer ids.
+    /** Key to a preference that stores the set of timer ids. */
     private static final String TIMER_IDS = "timers_list";
 
-    // Key to a preference that stores the id to assign to the next timer.
+    /** Key to a preference that stores the id to assign to the next timer. */
     private static final String NEXT_TIMER_ID = "next_timer_id";
 
-    // Prefix for a key to a preference that stores the state of the timer.
+    /** Prefix for a key to a preference that stores the state of the timer. */
     private static final String STATE = "timer_state_";
 
-    // Prefix for a key to a preference that stores the length of the timer when it was created.
+    /** Prefix for a key to a preference that stores the original timer length at creation. */
     private static final String LENGTH = "timer_setup_timet_";
 
-    // Prefix for a key to a preference that stores the total length of the timer with additions.
+    /** Prefix for a key to a preference that stores the total timer length with additions. */
     private static final String TOTAL_LENGTH = "timer_original_timet_";
 
-    // Prefix for a key to a preference that stores the last start time of the timer.
+    /** Prefix for a key to a preference that stores the last start time of the timer. */
     private static final String LAST_START_TIME = "timer_start_time_";
 
-    // Prefix for a key to a preference that stores the remaining time before expiry.
+    /** Prefix for a key to a preference that stores the remaining time before expiry. */
     private static final String REMAINING_TIME = "timer_time_left_";
 
-    // Prefix for a key to a preference that stores the label of the timer.
+    /** Prefix for a key to a preference that stores the label of the timer. */
     private static final String LABEL = "timer_label_";
 
-    // Prefix for a key to a preference that signals the timer should be deleted on first reset.
+    /** Prefix for a key to a preference that signals the timer should be deleted on first reset. */
     private static final String DELETE_AFTER_USE = "delete_after_use_";
 
-    // Lazily instantiated and cached for the life of the application.
-    private static SharedPreferences sPrefs;
-
     private TimerDAO() {}
 
     /**
      * @return the timers from permanent storage
      */
-    public static List<Timer> getTimers(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static List<Timer> getTimers(Context context) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
 
         // Read the set of timer ids.
         final Set<String> timerIds = prefs.getStringSet(TIMER_IDS, Collections.<String>emptySet());
@@ -104,8 +101,8 @@
     /**
      * @param timer the timer to be added
      */
-    public static Timer addTimer(Context context, Timer timer) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static Timer addTimer(Context context, Timer timer) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final SharedPreferences.Editor editor = prefs.edit();
 
         // Fetch the next timer id.
@@ -137,8 +134,8 @@
     /**
      * @param timer the timer to be updated
      */
-    public static void updateTimer(Context context, Timer timer) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static void updateTimer(Context context, Timer timer) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final SharedPreferences.Editor editor = prefs.edit();
 
         // Record the fields of the timer.
@@ -157,8 +154,8 @@
     /**
      * @param timer the timer to be removed
      */
-    public static void removeTimer(Context context, Timer timer) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+    static void removeTimer(Context context, Timer timer) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         final SharedPreferences.Editor editor = prefs.edit();
 
         final int id = timer.getId();
@@ -186,15 +183,7 @@
     }
 
     private static Set<String> getTimerIds(Context context) {
-        final SharedPreferences prefs = getSharedPreferences(context);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
         return prefs.getStringSet(TIMER_IDS, Collections.<String>emptySet());
     }
-
-    private static SharedPreferences getSharedPreferences(Context context) {
-        if (sPrefs == null) {
-            sPrefs = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
-        }
-
-        return sPrefs;
-    }
 }
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/TimerModel.java b/src/com/android/deskclock/data/TimerModel.java
index b1e01bb..b64ac39 100644
--- a/src/com/android/deskclock/data/TimerModel.java
+++ b/src/com/android/deskclock/data/TimerModel.java
@@ -16,6 +16,7 @@
 
 package com.android.deskclock.data;
 
+import android.annotation.SuppressLint;
 import android.app.AlarmManager;
 import android.app.Notification;
 import android.app.PendingIntent;
@@ -29,18 +30,13 @@
 import android.media.Ringtone;
 import android.media.RingtoneManager;
 import android.net.Uri;
-import android.os.SystemClock;
-import android.preference.PreferenceManager;
-import android.support.annotation.DrawableRes;
 import android.support.annotation.StringRes;
-import android.support.annotation.VisibleForTesting;
 import android.support.v4.app.NotificationCompat;
 import android.support.v4.app.NotificationManagerCompat;
 import android.text.TextUtils;
 import android.util.ArraySet;
 
 import com.android.deskclock.AlarmAlertWakeLock;
-import com.android.deskclock.HandleDeskClockApiCalls;
 import com.android.deskclock.LogUtils;
 import com.android.deskclock.R;
 import com.android.deskclock.Utils;
@@ -56,8 +52,6 @@
 import java.util.Set;
 
 import static android.app.AlarmManager.ELAPSED_REALTIME_WAKEUP;
-import static android.text.format.DateUtils.HOUR_IN_MILLIS;
-import static android.text.format.DateUtils.MINUTE_IN_MILLIS;
 import static com.android.deskclock.data.Timer.State.EXPIRED;
 import static com.android.deskclock.data.Timer.State.RESET;
 
@@ -97,6 +91,7 @@
      * ids in this collection. If a timer was already expired when the app was started its id will
      * be absent from this collection.
      */
+    @SuppressLint("NewApi")
     private final Set<Integer> mRingingIds = new ArraySet<>();
 
     /** The uri of the ringtone to play for timers. */
@@ -111,6 +106,9 @@
     /** A mutable copy of the expired timers. */
     private List<Timer> mExpiredTimers;
 
+    /** Delegate that builds platform-specific timer notifications. */
+    private NotificationBuilder mNotificationBuilder;
+
     /**
      * The service that keeps this application in the foreground while a heads-up timer
      * notification is displayed. Marking the service as foreground prevents the operating system
@@ -127,7 +125,7 @@
         mAlarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
 
         // Clear caches affected by preferences when preferences change.
-        final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext);
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(mContext);
         prefs.registerOnSharedPreferenceChangeListener(mPreferenceListener);
 
         // Update stopwatch notification when locale changes.
@@ -578,7 +576,7 @@
             // Update the existing timer expiration callback.
             final PendingIntent pi = PendingIntent.getService(mContext,
                     0, intent, PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
-            schedulePendingIntent(nextExpiringTimer.getExpirationTime(), pi);
+            schedulePendingIntent(mAlarmManager, nextExpiringTimer.getExpirationTime(), pi);
         }
     }
 
@@ -638,130 +636,11 @@
 
         // Sort the unexpired timers to locate the next one scheduled to expire.
         Collections.sort(unexpired, Timer.EXPIRY_COMPARATOR);
-        final Timer timer = unexpired.get(0);
-        final long remainingTime = timer.getRemainingTime();
 
-        // Generate some descriptive text, a title, and some actions based on timer states.
-        final String contentText;
-        final String contentTitle;
-        @DrawableRes int firstActionIconId, secondActionIconId = 0;
-        @StringRes int firstActionTitleId, secondActionTitleId = 0;
-        Intent firstActionIntent, secondActionIntent = null;
-
-        if (unexpired.size() == 1) {
-            contentText = formatElapsedTimeUntilExpiry(remainingTime);
-
-            if (timer.isRunning()) {
-                // Single timer is running.
-                if (TextUtils.isEmpty(timer.getLabel())) {
-                    contentTitle = mContext.getString(R.string.timer_notification_label);
-                } else {
-                    contentTitle = timer.getLabel();
-                }
-
-                firstActionIconId = R.drawable.ic_pause_24dp;
-                firstActionTitleId = R.string.timer_pause;
-                firstActionIntent = new Intent(mContext, TimerService.class)
-                        .setAction(HandleDeskClockApiCalls.ACTION_PAUSE_TIMER)
-                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
-
-                secondActionIconId = R.drawable.ic_add_24dp;
-                secondActionTitleId = R.string.timer_plus_1_min;
-                secondActionIntent = new Intent(mContext, TimerService.class)
-                        .setAction(HandleDeskClockApiCalls.ACTION_ADD_MINUTE_TIMER)
-                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
-            } else {
-                // Single timer is paused.
-                contentTitle = mContext.getString(R.string.timer_paused);
-
-                firstActionIconId = R.drawable.ic_start_24dp;
-                firstActionTitleId = R.string.sw_resume_button;
-                firstActionIntent = new Intent(mContext, TimerService.class)
-                        .setAction(HandleDeskClockApiCalls.ACTION_START_TIMER)
-                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
-
-                secondActionIconId = R.drawable.ic_reset_24dp;
-                secondActionTitleId = R.string.sw_reset_button;
-                secondActionIntent = new Intent(mContext, TimerService.class)
-                        .setAction(HandleDeskClockApiCalls.ACTION_RESET_TIMER)
-                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
-            }
-        } else {
-            if (timer.isRunning()) {
-                // At least one timer is running.
-                final String timeRemaining = formatElapsedTimeUntilExpiry(remainingTime);
-                contentText = mContext.getString(R.string.next_timer_notif, timeRemaining);
-                contentTitle = mContext.getString(R.string.timers_in_use, unexpired.size());
-            } else {
-                // All timers are paused.
-                contentText = mContext.getString(R.string.all_timers_stopped_notif);
-                contentTitle = mContext.getString(R.string.timers_stopped, unexpired.size());
-            }
-
-            firstActionIconId = R.drawable.ic_reset_24dp;
-            firstActionTitleId = R.string.timer_reset_all;
-            firstActionIntent = TimerService.createResetUnexpiredTimersIntent(mContext);
-        }
-
-        // Intent to load the app and show the timer when the notification is tapped.
-        final Intent showApp = new Intent(mContext, HandleDeskClockApiCalls.class)
-                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
-                .setAction(HandleDeskClockApiCalls.ACTION_SHOW_TIMERS)
-                .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId())
-                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, R.string.label_notification);
-
-        final PendingIntent pendingShowApp = PendingIntent.getActivity(mContext, 0, showApp,
-                PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
-
-        final NotificationCompat.Builder builder = new NotificationCompat.Builder(mContext)
-                .setOngoing(true)
-                .setLocalOnly(true)
-                .setShowWhen(false)
-                .setAutoCancel(false)
-                .setContentText(contentText)
-                .setContentTitle(contentTitle)
-                .setContentIntent(pendingShowApp)
-                .setSmallIcon(R.drawable.stat_notify_timer)
-                .setPriority(NotificationCompat.PRIORITY_HIGH)
-                .setCategory(NotificationCompat.CATEGORY_ALARM)
-                .setVisibility(NotificationCompat.VISIBILITY_PUBLIC);
-
-        final PendingIntent firstAction = PendingIntent.getService(mContext, 0,
-                firstActionIntent, PendingIntent.FLAG_UPDATE_CURRENT);
-        final String firstActionTitle = mContext.getString(firstActionTitleId);
-        builder.addAction(firstActionIconId, firstActionTitle, firstAction);
-
-        if (secondActionIntent != null) {
-            final PendingIntent secondAction = PendingIntent.getService(mContext, 0,
-                    secondActionIntent, PendingIntent.FLAG_UPDATE_CURRENT);
-            final String secondActionTitle = mContext.getString(secondActionTitleId);
-            builder.addAction(secondActionIconId, secondActionTitle, secondAction);
-        }
-
-        // Update the notification.
-        final Notification notification = builder.build();
+        // Otherwise build and post a notification reflecting the latest unexpired timers.
+        final Notification notification = getNotificationBuilder().build(mContext, unexpired);
         final int notificationId = mNotificationModel.getUnexpiredTimerNotificationId();
         mNotificationManager.notify(notificationId, notification);
-
-        final Intent updateNotification = TimerService.createUpdateNotificationIntent(mContext);
-        if (timer.isRunning() && remainingTime > MINUTE_IN_MILLIS) {
-            // Schedule a callback to update the time-sensitive information of the running timer.
-            final PendingIntent pi = PendingIntent.getService(mContext, 0, updateNotification,
-                    PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
-
-            final long nextMinuteChange = remainingTime % MINUTE_IN_MILLIS;
-            final long triggerTime = SystemClock.elapsedRealtime() + nextMinuteChange;
-
-            schedulePendingIntent(triggerTime, pi);
-        } else {
-            // Cancel the update notification callback.
-            final PendingIntent pi = PendingIntent.getService(mContext, 0, updateNotification,
-                    PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_NO_CREATE);
-            if (pi != null) {
-                mAlarmManager.cancel(pi);
-                pi.cancel();
-            }
-        }
     }
 
     /**
@@ -809,19 +688,16 @@
 
         // Content intent shows the timer full screen when clicked.
         final Intent content = new Intent(mContext, ExpiredTimersActivity.class);
-        final PendingIntent pendingContent = PendingIntent.getActivity(mContext, 0, content,
-                PendingIntent.FLAG_UPDATE_CURRENT);
+        final PendingIntent pendingContent = Utils.pendingActivityIntent(mContext, content);
 
         // Full screen intent has flags so it is different than the content intent.
         final Intent fullScreen = new Intent(mContext, ExpiredTimersActivity.class)
                 .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NO_USER_ACTION);
-        final PendingIntent pendingFullScreen = PendingIntent.getActivity(mContext, 0, fullScreen,
-                PendingIntent.FLAG_UPDATE_CURRENT);
+        final PendingIntent pendingFullScreen = Utils.pendingActivityIntent(mContext, fullScreen);
 
         // First action intent is either reset single timer or reset all timers.
         final Intent reset = TimerService.createResetExpiredTimersIntent(mContext);
-        final PendingIntent pendingReset = PendingIntent.getService(mContext, 0, reset,
-                PendingIntent.FLAG_UPDATE_CURRENT);
+        final PendingIntent pendingReset = Utils.pendingServiceIntent(mContext, reset);
 
         final NotificationCompat.Builder builder = new NotificationCompat.Builder(mContext)
                 .setWhen(0)
@@ -841,8 +717,7 @@
         if (expired.size() == 1) {
             // Second action intent adds a minute to a single timer.
             final Intent addMinute = TimerService.createAddMinuteTimerIntent(mContext, timerId);
-            final PendingIntent pendingAddMinute = PendingIntent.getService(mContext, 0, addMinute,
-                    PendingIntent.FLAG_UPDATE_CURRENT);
+            final PendingIntent pendingAddMinute = Utils.pendingServiceIntent(mContext, addMinute);
             final String addMinuteTitle = mContext.getString(R.string.timer_plus_1_min);
             builder.addAction(R.drawable.ic_add_24dp, addMinuteTitle, pendingAddMinute);
         }
@@ -853,47 +728,16 @@
         mService.startForeground(notificationId, notification);
     }
 
-    /**
-     * Format "7 hours 52 minutes remaining"
-     */
-    @VisibleForTesting
-    String formatElapsedTimeUntilExpiry(long remainingTime) {
-        final int hours = (int) remainingTime / (int) HOUR_IN_MILLIS;
-        final int minutes = (int) remainingTime / ((int) MINUTE_IN_MILLIS) % 60;
-
-        String minSeq = Utils.getNumberFormattedQuantityString(mContext, R.plurals.minutes, minutes);
-        String hourSeq = Utils.getNumberFormattedQuantityString(mContext, R.plurals.hours, hours);
-
-        // The verb "remaining" may have to change tense for singular subjects in some languages.
-        final String verb = mContext.getString((minutes > 1 || hours > 1)
-                ? R.string.timer_remaining_multiple
-                : R.string.timer_remaining_single);
-
-        final boolean showHours = hours > 0;
-        final boolean showMinutes = minutes > 0;
-
-        int formatStringId;
-        if (showHours) {
-            if (showMinutes) {
-                formatStringId = R.string.timer_notifications_hours_minutes;
+    private NotificationBuilder getNotificationBuilder() {
+        if (mNotificationBuilder == null) {
+            if (Utils.isNOrLater()) {
+                mNotificationBuilder = new TimerNotificationBuilderN();
             } else {
-                formatStringId = R.string.timer_notifications_hours;
+                mNotificationBuilder = new TimerNotificationBuilderPreN();
             }
-        } else if (showMinutes) {
-            formatStringId = R.string.timer_notifications_minutes;
-        } else {
-            formatStringId = R.string.timer_notifications_less_min;
         }
-        return String.format(mContext.getString(formatStringId), hourSeq, minSeq, verb);
-    }
 
-    private void schedulePendingIntent(long triggerTime, PendingIntent pi) {
-        if (Utils.isMOrLater()) {
-            // Ensure the timer fires even if the device is dozing.
-            mAlarmManager.setExactAndAllowWhileIdle(ELAPSED_REALTIME_WAKEUP, triggerTime, pi);
-        } else {
-            mAlarmManager.setExact(ELAPSED_REALTIME_WAKEUP, triggerTime, pi);
-        }
+        return mNotificationBuilder;
     }
 
     /**
@@ -922,4 +766,25 @@
             }
         }
     }
-}
+
+    static void schedulePendingIntent(AlarmManager am, long triggerTime, PendingIntent pi) {
+        if (Utils.isMOrLater()) {
+            // Ensure the timer fires even if the device is dozing.
+            am.setExactAndAllowWhileIdle(ELAPSED_REALTIME_WAKEUP, triggerTime, pi);
+        } else {
+            am.setExact(ELAPSED_REALTIME_WAKEUP, triggerTime, pi);
+        }
+    }
+
+    /**
+     * An API for building platform-specific timer notifications.
+     */
+    public interface NotificationBuilder {
+        /**
+         * @param context a context to use for fetching resources
+         * @param unexpiredTimers all running and paused timers
+         * @return a notification reporting the state of the {@code unexpiredTimers}
+         */
+        Notification build(Context context, List<Timer> unexpiredTimers);
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/TimerNotificationBuilderN.java b/src/com/android/deskclock/data/TimerNotificationBuilderN.java
new file mode 100644
index 0000000..b8b52d9
--- /dev/null
+++ b/src/com/android/deskclock/data/TimerNotificationBuilderN.java
@@ -0,0 +1,165 @@
+/*
+ * 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.
+ */
+
+package com.android.deskclock.data;
+
+import android.annotation.TargetApi;
+import android.app.Notification;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.Resources;
+import android.graphics.drawable.Icon;
+import android.os.Build;
+import android.os.SystemClock;
+import android.text.TextUtils;
+import android.widget.RemoteViews;
+
+import com.android.deskclock.HandleDeskClockApiCalls;
+import com.android.deskclock.R;
+import com.android.deskclock.Utils;
+import com.android.deskclock.timer.TimerService;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import static android.text.format.DateUtils.SECOND_IN_MILLIS;
+
+/**
+ * Builds N-style notification to reflect the latest state of the unexpired timers.
+ */
+@TargetApi(Build.VERSION_CODES.N)
+class TimerNotificationBuilderN implements TimerModel.NotificationBuilder {
+
+    @Override
+    public Notification build(Context context, List<Timer> unexpired) {
+        final Timer timer = unexpired.get(0);
+        final int count = unexpired.size();
+
+        // Compute some values required below.
+        final boolean running = timer.isRunning();
+        final String pname = context.getPackageName();
+        final Resources res = context.getResources();
+
+        // The in-app timer display rounds *up* to the next second. To mirror that behavior in the
+        // notification's Chronometer, pad in an extra second.
+        final long remainingTime = timer.getRemainingTime() + SECOND_IN_MILLIS;
+
+        // Chronometer will reach 0:00 at remainingTime milliseconds in the future.
+        final long base = SystemClock.elapsedRealtime() + remainingTime;
+
+        final RemoteViews content = new RemoteViews(pname, R.layout.chronometer_notif_content);
+        content.setChronometerCountDown(R.id.chronometer, true);
+        content.setChronometer(R.id.chronometer, base, null, running);
+
+        final List<Notification.Action> actions = new ArrayList<>(2);
+
+        if (count == 1) {
+            if (running) {
+                // Single timer is running.
+                if (TextUtils.isEmpty(timer.getLabel())) {
+                    content.setTextViewText(R.id.state, res.getString(R.string.timer_notification_label));
+                } else {
+                    content.setTextViewText(R.id.state, timer.getLabel());
+                }
+
+                // Left button: Pause
+                final Intent pause = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_PAUSE_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+
+                final Icon icon1 = Icon.createWithResource(context, R.drawable.ic_pause_24dp);
+                final CharSequence title1 = res.getText(R.string.timer_pause);
+                final PendingIntent intent1 = Utils.pendingServiceIntent(context, pause);
+                actions.add(new Notification.Action.Builder(icon1, title1, intent1).build());
+
+                // Right Button: +1 Minute
+                final Intent addMinute = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_ADD_MINUTE_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+
+                final Icon icon2 = Icon.createWithResource(context, R.drawable.ic_add_24dp);
+                final CharSequence title2 = res.getText(R.string.timer_plus_1_min);
+                final PendingIntent intent2 = Utils.pendingServiceIntent(context, addMinute);
+                actions.add(new Notification.Action.Builder(icon2, title2, intent2).build());
+
+            } else {
+                // Single timer is paused.
+                content.setTextViewText(R.id.state, res.getString(R.string.timer_paused));
+
+                // Left button: Start
+                final Intent start = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_START_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+
+                final Icon icon1 = Icon.createWithResource(context, R.drawable.ic_start_24dp);
+                final CharSequence title1 = res.getText(R.string.sw_resume_button);
+                final PendingIntent intent1 = Utils.pendingServiceIntent(context, start);
+                actions.add(new Notification.Action.Builder(icon1, title1, intent1).build());
+
+                // Right Button: Reset
+                final Intent reset = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_RESET_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+
+                final Icon icon2 = Icon.createWithResource(context, R.drawable.ic_reset_24dp);
+                final CharSequence title2 = res.getText(R.string.sw_reset_button);
+                final PendingIntent intent2 = Utils.pendingServiceIntent(context, reset);
+                actions.add(new Notification.Action.Builder(icon2, title2, intent2).build());
+            }
+        } else {
+            if (running) {
+                // At least one timer is running.
+                content.setTextViewText(R.id.state, res.getString(R.string.timers_in_use, count));
+            } else {
+                // All timers are paused.
+                content.setTextViewText(R.id.state, res.getString(R.string.timers_stopped, count));
+            }
+
+            final Intent reset = TimerService.createResetUnexpiredTimersIntent(context);
+
+            final Icon icon1 = Icon.createWithResource(context, R.drawable.ic_reset_24dp);
+            final CharSequence title1 = res.getText(R.string.timer_reset_all);
+            final PendingIntent intent1 = Utils.pendingServiceIntent(context, reset);
+            actions.add(new Notification.Action.Builder(icon1, title1, intent1).build());
+        }
+
+        // Intent to load the app and show the timer when the notification is tapped.
+        final Intent showApp = new Intent(context, HandleDeskClockApiCalls.class)
+                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
+                .setAction(HandleDeskClockApiCalls.ACTION_SHOW_TIMERS)
+                .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId())
+                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, R.string.label_notification);
+
+        final PendingIntent pendingShowApp = PendingIntent.getActivity(context, 0, showApp,
+                PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
+
+        return new Notification.Builder(context)
+                .setOngoing(true)
+                .setLocalOnly(true)
+                .setShowWhen(false)
+                .setAutoCancel(false)
+                .setCustomContentView(content)
+                .setContentIntent(pendingShowApp)
+                .setPriority(Notification.PRIORITY_HIGH)
+                .setCategory(Notification.CATEGORY_ALARM)
+                .setSmallIcon(R.drawable.stat_notify_timer)
+                .setVisibility(Notification.VISIBILITY_PUBLIC)
+                .setStyle(new Notification.DecoratedCustomViewStyle())
+                .setActions(actions.toArray(new Notification.Action[actions.size()]))
+                .build();
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/TimerNotificationBuilderPreN.java b/src/com/android/deskclock/data/TimerNotificationBuilderPreN.java
new file mode 100644
index 0000000..82ddfec
--- /dev/null
+++ b/src/com/android/deskclock/data/TimerNotificationBuilderPreN.java
@@ -0,0 +1,202 @@
+/*
+ * 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.
+ */
+
+package com.android.deskclock.data;
+
+import android.app.AlarmManager;
+import android.app.Notification;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.os.SystemClock;
+import android.support.annotation.DrawableRes;
+import android.support.annotation.StringRes;
+import android.support.annotation.VisibleForTesting;
+import android.support.v4.app.NotificationCompat;
+import android.text.TextUtils;
+
+import com.android.deskclock.HandleDeskClockApiCalls;
+import com.android.deskclock.R;
+import com.android.deskclock.Utils;
+import com.android.deskclock.timer.TimerService;
+
+import java.util.List;
+
+import static android.text.format.DateUtils.HOUR_IN_MILLIS;
+import static android.text.format.DateUtils.MINUTE_IN_MILLIS;
+
+/**
+ * Builds KK, L, or M-style notifications to reflect the latest state of the unexpired timers.
+ */
+class TimerNotificationBuilderPreN implements TimerModel.NotificationBuilder {
+
+    @Override
+    public Notification build(Context context, List<Timer> unexpired) {
+        final Timer timer = unexpired.get(0);
+        final long remainingTime = timer.getRemainingTime();
+
+        // Generate some descriptive text, a title, and some actions based on timer states.
+        final String contentText;
+        final String contentTitle;
+        @DrawableRes int firstActionIconId, secondActionIconId = 0;
+        @StringRes int firstActionTitleId, secondActionTitleId = 0;
+        Intent firstActionIntent, secondActionIntent = null;
+
+        if (unexpired.size() == 1) {
+            contentText = formatElapsedTimeUntilExpiry(context, remainingTime);
+
+            if (timer.isRunning()) {
+                // Single timer is running.
+                if (TextUtils.isEmpty(timer.getLabel())) {
+                    contentTitle = context.getString(R.string.timer_notification_label);
+                } else {
+                    contentTitle = timer.getLabel();
+                }
+
+                firstActionIconId = R.drawable.ic_pause_24dp;
+                firstActionTitleId = R.string.timer_pause;
+                firstActionIntent = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_PAUSE_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+
+                secondActionIconId = R.drawable.ic_add_24dp;
+                secondActionTitleId = R.string.timer_plus_1_min;
+                secondActionIntent = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_ADD_MINUTE_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+            } else {
+                // Single timer is paused.
+                contentTitle = context.getString(R.string.timer_paused);
+
+                firstActionIconId = R.drawable.ic_start_24dp;
+                firstActionTitleId = R.string.sw_resume_button;
+                firstActionIntent = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_START_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+
+                secondActionIconId = R.drawable.ic_reset_24dp;
+                secondActionTitleId = R.string.sw_reset_button;
+                secondActionIntent = new Intent(context, TimerService.class)
+                        .setAction(HandleDeskClockApiCalls.ACTION_RESET_TIMER)
+                        .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId());
+            }
+        } else {
+            if (timer.isRunning()) {
+                // At least one timer is running.
+                final String timeRemaining = formatElapsedTimeUntilExpiry(context, remainingTime);
+                contentText = context.getString(R.string.next_timer_notif, timeRemaining);
+                contentTitle = context.getString(R.string.timers_in_use, unexpired.size());
+            } else {
+                // All timers are paused.
+                contentText = context.getString(R.string.all_timers_stopped_notif);
+                contentTitle = context.getString(R.string.timers_stopped, unexpired.size());
+            }
+
+            firstActionIconId = R.drawable.ic_reset_24dp;
+            firstActionTitleId = R.string.timer_reset_all;
+            firstActionIntent = TimerService.createResetUnexpiredTimersIntent(context);
+        }
+
+        // Intent to load the app and show the timer when the notification is tapped.
+        final Intent showApp = new Intent(context, HandleDeskClockApiCalls.class)
+                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
+                .setAction(HandleDeskClockApiCalls.ACTION_SHOW_TIMERS)
+                .putExtra(HandleDeskClockApiCalls.EXTRA_TIMER_ID, timer.getId())
+                .putExtra(HandleDeskClockApiCalls.EXTRA_EVENT_LABEL, R.string.label_notification);
+
+        final PendingIntent pendingShowApp = PendingIntent.getActivity(context, 0, showApp,
+                PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
+
+        final NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
+                .setOngoing(true)
+                .setLocalOnly(true)
+                .setShowWhen(false)
+                .setAutoCancel(false)
+                .setContentText(contentText)
+                .setContentTitle(contentTitle)
+                .setContentIntent(pendingShowApp)
+                .setSmallIcon(R.drawable.stat_notify_timer)
+                .setPriority(NotificationCompat.PRIORITY_HIGH)
+                .setCategory(NotificationCompat.CATEGORY_ALARM)
+                .setVisibility(NotificationCompat.VISIBILITY_PUBLIC);
+
+        final PendingIntent action1 = Utils.pendingServiceIntent(context, firstActionIntent);
+        final String action1Title = context.getString(firstActionTitleId);
+        builder.addAction(firstActionIconId, action1Title, action1);
+
+        if (secondActionIntent != null) {
+            final PendingIntent action2 = Utils.pendingServiceIntent(context, secondActionIntent);
+            final String action2Title = context.getString(secondActionTitleId);
+            builder.addAction(secondActionIconId, action2Title, action2);
+        }
+
+        final AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
+        final Intent updateNotification = TimerService.createUpdateNotificationIntent(context);
+        if (timer.isRunning() && remainingTime > MINUTE_IN_MILLIS) {
+            // Schedule a callback to update the time-sensitive information of the running timer.
+            final PendingIntent pi = PendingIntent.getService(context, 0, updateNotification,
+                    PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
+
+            final long nextMinuteChange = remainingTime % MINUTE_IN_MILLIS;
+            final long triggerTime = SystemClock.elapsedRealtime() + nextMinuteChange;
+            TimerModel.schedulePendingIntent(am, triggerTime, pi);
+        } else {
+            // Cancel the update notification callback.
+            final PendingIntent pi = PendingIntent.getService(context, 0, updateNotification,
+                    PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_NO_CREATE);
+            if (pi != null) {
+                am.cancel(pi);
+                pi.cancel();
+            }
+        }
+
+        return builder.build();
+    }
+
+    /**
+     * Format "7 hours 52 minutes remaining"
+     */
+    @VisibleForTesting
+    static String formatElapsedTimeUntilExpiry(Context context, long remainingTime) {
+        final int hours = (int) remainingTime / (int) HOUR_IN_MILLIS;
+        final int minutes = (int) remainingTime / ((int) MINUTE_IN_MILLIS) % 60;
+
+        String minSeq = Utils.getNumberFormattedQuantityString(context, R.plurals.minutes, minutes);
+        String hourSeq = Utils.getNumberFormattedQuantityString(context, R.plurals.hours, hours);
+
+        // The verb "remaining" may have to change tense for singular subjects in some languages.
+        final String verb = context.getString((minutes > 1 || hours > 1)
+                ? R.string.timer_remaining_multiple
+                : R.string.timer_remaining_single);
+
+        final boolean showHours = hours > 0;
+        final boolean showMinutes = minutes > 0;
+
+        int formatStringId;
+        if (showHours) {
+            if (showMinutes) {
+                formatStringId = R.string.timer_notifications_hours_minutes;
+            } else {
+                formatStringId = R.string.timer_notifications_hours;
+            }
+        } else if (showMinutes) {
+            formatStringId = R.string.timer_notifications_minutes;
+        } else {
+            formatStringId = R.string.timer_notifications_less_min;
+        }
+        return String.format(context.getString(formatStringId), hourSeq, minSeq, verb);
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/data/WidgetDAO.java b/src/com/android/deskclock/data/WidgetDAO.java
index 91479c5..3416055 100644
--- a/src/com/android/deskclock/data/WidgetDAO.java
+++ b/src/com/android/deskclock/data/WidgetDAO.java
@@ -18,7 +18,8 @@
 
 import android.content.Context;
 import android.content.SharedPreferences;
-import android.preference.PreferenceManager;
+
+import com.android.deskclock.Utils;
 
 /**
  * This class encapsulates the transfer of data between widget objects and their permanent storage
@@ -27,10 +28,7 @@
 final class WidgetDAO {
 
     /** Suffix for a key to a preference that stores the instance count for a given widget type. */
-    private static final String WIDGET_COUNT_SUFFIX = "_widget_count";
-
-    /** Lazily instantiated and cached for the life of the application. */
-    private static SharedPreferences sPrefs;
+    private static final String WIDGET_COUNT = "_widget_count";
 
     private WidgetDAO() {}
 
@@ -39,9 +37,9 @@
      * @param count the number of widgets of the given type
      * @return the delta between the new count and the old count
      */
-    public static int updateWidgetCount(Context context, Class widgetProviderClass, int count) {
-        final SharedPreferences prefs = getSharedPreferences(context);
-        final String key = widgetProviderClass.getSimpleName() + WIDGET_COUNT_SUFFIX;
+    static int updateWidgetCount(Context context, Class widgetProviderClass, int count) {
+        final SharedPreferences prefs = Utils.getDefaultSharedPreferences(context);
+        final String key = widgetProviderClass.getSimpleName() + WIDGET_COUNT;
         final int oldCount = prefs.getInt(key, 0);
         if (count == 0) {
             prefs.edit().remove(key).apply();
@@ -50,12 +48,4 @@
         }
         return count - oldCount;
     }
-
-    private static SharedPreferences getSharedPreferences(Context context) {
-        if (sPrefs == null) {
-            sPrefs = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
-        }
-
-        return sPrefs;
-    }
 }
\ No newline at end of file
diff --git a/src/com/android/deskclock/provider/Alarm.java b/src/com/android/deskclock/provider/Alarm.java
index 7fac18b..258a50b 100644
--- a/src/com/android/deskclock/provider/Alarm.java
+++ b/src/com/android/deskclock/provider/Alarm.java
@@ -353,7 +353,7 @@
      * @return Previous firing time, or null if this is a one-time alarm.
      */
     public Calendar getPreviousAlarmTime(Calendar currentTime) {
-        Calendar previousInstanceTime = Calendar.getInstance();
+        final Calendar previousInstanceTime = Calendar.getInstance(currentTime.getTimeZone());
         previousInstanceTime.set(Calendar.YEAR, currentTime.get(Calendar.YEAR));
         previousInstanceTime.set(Calendar.MONTH, currentTime.get(Calendar.MONTH));
         previousInstanceTime.set(Calendar.DAY_OF_MONTH, currentTime.get(Calendar.DAY_OF_MONTH));
@@ -372,7 +372,7 @@
     }
 
     public Calendar getNextAlarmTime(Calendar currentTime) {
-        final Calendar nextInstanceTime = Calendar.getInstance();
+        final Calendar nextInstanceTime = Calendar.getInstance(currentTime.getTimeZone());
         nextInstanceTime.set(Calendar.YEAR, currentTime.get(Calendar.YEAR));
         nextInstanceTime.set(Calendar.MONTH, currentTime.get(Calendar.MONTH));
         nextInstanceTime.set(Calendar.DAY_OF_MONTH, currentTime.get(Calendar.DAY_OF_MONTH));
diff --git a/src/com/android/deskclock/provider/AlarmInstance.java b/src/com/android/deskclock/provider/AlarmInstance.java
index d4542c0..5be3c03 100644
--- a/src/com/android/deskclock/provider/AlarmInstance.java
+++ b/src/com/android/deskclock/provider/AlarmInstance.java
@@ -28,6 +28,7 @@
 
 import com.android.deskclock.LogUtils;
 import com.android.deskclock.R;
+import com.android.deskclock.Utils;
 import com.android.deskclock.alarms.AlarmStateManager;
 import com.android.deskclock.settings.SettingsActivity;
 
@@ -424,7 +425,7 @@
      * @return the time when alarm should be silence, or null if never
      */
     public Calendar getTimeout(Context context) {
-        String timeoutSetting = PreferenceManager.getDefaultSharedPreferences(context)
+        String timeoutSetting = Utils.getDefaultSharedPreferences(context)
                 .getString(SettingsActivity.KEY_AUTO_SILENCE, DEFAULT_ALARM_TIMEOUT_SETTING);
         int timeoutMinutes = Integer.parseInt(timeoutSetting);
 
diff --git a/src/com/android/deskclock/provider/ClockProvider.java b/src/com/android/deskclock/provider/ClockProvider.java
index c70da36..7b9da87 100644
--- a/src/com/android/deskclock/provider/ClockProvider.java
+++ b/src/com/android/deskclock/provider/ClockProvider.java
@@ -16,19 +16,23 @@
 
 package com.android.deskclock.provider;
 
+import android.annotation.TargetApi;
 import android.content.ContentProvider;
 import android.content.ContentResolver;
 import android.content.ContentUris;
 import android.content.ContentValues;
+import android.content.Context;
 import android.content.UriMatcher;
 import android.database.Cursor;
 import android.database.sqlite.SQLiteDatabase;
 import android.database.sqlite.SQLiteQueryBuilder;
 import android.net.Uri;
+import android.os.Build;
 import android.text.TextUtils;
 import android.util.ArrayMap;
 
 import com.android.deskclock.LogUtils;
+import com.android.deskclock.Utils;
 
 import java.util.Map;
 
@@ -114,8 +118,23 @@
     }
 
     @Override
+    @TargetApi(Build.VERSION_CODES.N)
     public boolean onCreate() {
-        mOpenHelper = new ClockDatabaseHelper(getContext());
+        final Context context = getContext();
+        final Context storageContext;
+        if (Utils.isNOrLater()) {
+            // All N devices have split storage areas, but we may need to
+            // migrate existing database into the new device encrypted
+            // storage area, which is where our data lives from now on.
+            storageContext = context.createDeviceProtectedStorageContext();
+            if (!storageContext.moveDatabaseFrom(context, ClockDatabaseHelper.DATABASE_NAME)) {
+                LogUtils.wtf("Failed to migrate database: %s", ClockDatabaseHelper.DATABASE_NAME);
+            }
+        } else {
+            storageContext = context;
+        }
+
+        mOpenHelper = new ClockDatabaseHelper(storageContext);
         return true;
     }
 
diff --git a/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java b/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java
index 3f64379..3b2b766 100644
--- a/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java
+++ b/src/com/android/deskclock/settings/ScreensaverSettingsActivity.java
@@ -16,6 +16,8 @@
 
 package com.android.deskclock.settings;
 
+import android.annotation.TargetApi;
+import android.os.Build;
 import android.os.Bundle;
 import android.preference.ListPreference;
 import android.preference.Preference;
@@ -24,9 +26,10 @@
 import android.view.MenuItem;
 
 import com.android.deskclock.R;
+import com.android.deskclock.Utils;
 
 /**
- * Settings for Clock Daydream
+ * Settings for Clock screen saver
  */
 public final class ScreensaverSettingsActivity extends AppCompatActivity {
 
@@ -56,9 +59,14 @@
             implements Preference.OnPreferenceChangeListener {
 
         @Override
+        @TargetApi(Build.VERSION_CODES.N)
         public void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
-            addPreferencesFromResource(R.xml.dream_settings);
+
+            if (Utils.isNOrLater()) {
+                getPreferenceManager().setStorageDeviceProtected();
+            }
+            addPreferencesFromResource(R.xml.screensaver_settings);
         }
 
         @Override
diff --git a/src/com/android/deskclock/settings/SettingsActivity.java b/src/com/android/deskclock/settings/SettingsActivity.java
index bdbe5c3..4a01e18 100644
--- a/src/com/android/deskclock/settings/SettingsActivity.java
+++ b/src/com/android/deskclock/settings/SettingsActivity.java
@@ -39,7 +39,7 @@
 import com.android.deskclock.R;
 import com.android.deskclock.RingtonePickerDialogFragment;
 import com.android.deskclock.Utils;
-import com.android.deskclock.actionbarmenu.ActionBarMenuManager;
+import com.android.deskclock.actionbarmenu.OptionsMenuManager;
 import com.android.deskclock.actionbarmenu.MenuItemControllerFactory;
 import com.android.deskclock.actionbarmenu.NavUpMenuItemController;
 import com.android.deskclock.data.DataModel;
@@ -74,7 +74,7 @@
     public static final String PREFS_FRAGMENT_TAG = "prefs_fragment";
     public static final String PREFERENCE_DIALOG_FRAGMENT_TAG = "preference_dialog";
 
-    private final ActionBarMenuManager mActionBarMenuManager = new ActionBarMenuManager();
+    private final OptionsMenuManager mOptionsMenuManager = new OptionsMenuManager();
 
     /**
      * The controller that shows the drop shadow when content is not scrolled to the top.
@@ -85,7 +85,8 @@
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.settings);
-        mActionBarMenuManager.addMenuItemController(new NavUpMenuItemController(this))
+
+        mOptionsMenuManager.addMenuItemController(new NavUpMenuItemController(this))
                 .addMenuItemController(MenuItemControllerFactory.getInstance()
                         .buildMenuItemControllers(this));
 
@@ -116,19 +117,19 @@
 
     @Override
     public boolean onCreateOptionsMenu(Menu menu) {
-        mActionBarMenuManager.createOptionsMenu(menu, getMenuInflater());
+        mOptionsMenuManager.onCreateOptionsMenu(menu);
         return true;
     }
 
     @Override
     public boolean onPrepareOptionsMenu(Menu menu) {
-        mActionBarMenuManager.prepareShowMenu(menu);
+        mOptionsMenuManager.onPrepareOptionsMenu(menu);
         return true;
     }
 
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
-        return mActionBarMenuManager.handleMenuItemClick(item)
+        return mOptionsMenuManager.onOptionsItemSelected(item)
                 || super.onOptionsItemSelected(item);
     }
 
@@ -139,6 +140,7 @@
 
         @Override
         public void onCreatePreferences(Bundle bundle, String rootKey) {
+            getPreferenceManager().setStorageDeviceProtected();
             addPreferencesFromResource(R.xml.settings);
             loadTimeZoneList();
         }
diff --git a/src/com/android/deskclock/stopwatch/LapsAdapter.java b/src/com/android/deskclock/stopwatch/LapsAdapter.java
index 00141a6..62496bd 100644
--- a/src/com/android/deskclock/stopwatch/LapsAdapter.java
+++ b/src/com/android/deskclock/stopwatch/LapsAdapter.java
@@ -29,6 +29,7 @@
 import com.android.deskclock.data.DataModel;
 import com.android.deskclock.data.Lap;
 import com.android.deskclock.data.Stopwatch;
+import com.android.deskclock.uidata.UiDataModel;
 
 import java.text.DecimalFormatSymbols;
 import java.util.List;
@@ -40,6 +41,17 @@
  */
 class LapsAdapter extends RecyclerView.Adapter<LapsAdapter.LapItemHolder> {
 
+    private static final long TEN_MINUTES = 10 * DateUtils.MINUTE_IN_MILLIS;
+    private static final long HOUR = DateUtils.HOUR_IN_MILLIS;
+    private static final long TEN_HOURS = 10 * HOUR;
+    private static final long HUNDRED_HOURS = 100 * HOUR;
+
+    /** A single space preceded by a zero-width LRM; This groups adjacent chars left-to-right. */
+    private static final String LRM_SPACE = "\u200E ";
+
+    /** Reusable StringBuilder that assembles a formatted time; alleviates memory churn. */
+    private static final StringBuilder sTimeBuilder = new StringBuilder(12);
+
     private final LayoutInflater mInflater;
     private final Context mContext;
 
@@ -204,7 +216,7 @@
      * @return e.g. "# 7" if {@code lapCount} less than 10; "# 07" if {@code lapCount} is 10 or more
      */
     @VisibleForTesting
-    String formatLapNumber(int lapCount, int lapNumber) {
+    static String formatLapNumber(int lapCount, int lapNumber) {
         if (lapCount < 10) {
             return String.format(Locale.getDefault(), "# %d", lapNumber);
         }
@@ -219,33 +231,48 @@
      * @return a formatted version of the time
      */
     @VisibleForTesting
-    String formatTime(long maxTime, long time, String separator) {
-        long hundredths, seconds, minutes, hours;
-        seconds = time / 1000;
-        hundredths = (time - seconds * 1000) / 10;
-        minutes = seconds / 60;
-        seconds = seconds - minutes * 60;
-        hours = minutes / 60;
-        minutes = minutes - hours * 60;
+    static String formatTime(long maxTime, long time, String separator) {
+        final int hours = (int) (time / DateUtils.HOUR_IN_MILLIS);
+        int remainder = (int) (time % DateUtils.HOUR_IN_MILLIS);
+
+        final int minutes = (int) (remainder / DateUtils.MINUTE_IN_MILLIS);
+        remainder = (int) (remainder % DateUtils.MINUTE_IN_MILLIS);
+
+        final int seconds = (int) (remainder / DateUtils.SECOND_IN_MILLIS);
+        remainder = (int) (remainder % DateUtils.SECOND_IN_MILLIS);
+
+        final int hundredths = remainder / 10;
 
         final char decimalSeparator = DecimalFormatSymbols.getInstance().getDecimalSeparator();
 
-        if (maxTime < 10 * DateUtils.MINUTE_IN_MILLIS) {
-            return String.format(Locale.getDefault(), "%d%s%02d%s%02d",
-                    minutes, separator, seconds, decimalSeparator, hundredths);
-        } else if (maxTime < 60 * DateUtils.MINUTE_IN_MILLIS) {
-            return String.format(Locale.getDefault(), "%02d%s%02d%s%02d",
-                    minutes, separator, seconds, decimalSeparator, hundredths);
-        } else if (maxTime < 10 * DateUtils.HOUR_IN_MILLIS) {
-            return String.format(Locale.getDefault(), "%d%s%02d%s%02d%s%02d",
-                    hours, separator, minutes, separator, seconds, decimalSeparator, hundredths);
-        } else if (maxTime < 100 * DateUtils.HOUR_IN_MILLIS) {
-            return String.format(Locale.getDefault(), "%02d%s%02d%s%02d%s%02d",
-                    hours, separator, minutes, separator, seconds, decimalSeparator, hundredths);
+        sTimeBuilder.setLength(0);
+
+        // The display of hours and minutes varies based on maxTime.
+        if (maxTime < TEN_MINUTES) {
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(minutes, 1));
+        } else if (maxTime < HOUR) {
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(minutes, 2));
+        } else if (maxTime < TEN_HOURS) {
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(hours, 1));
+            sTimeBuilder.append(separator);
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(minutes, 2));
+        } else if (maxTime < HUNDRED_HOURS) {
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(hours, 2));
+            sTimeBuilder.append(separator);
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(minutes, 2));
+        } else {
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(hours, 3));
+            sTimeBuilder.append(separator);
+            sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(minutes, 2));
         }
 
-        return String.format(Locale.getDefault(), "%03d%s%02d%s%02d%s%02d",
-                hours, separator, minutes, separator, seconds, decimalSeparator, hundredths);
+        // The display of seconds and hundredths-of-a-second is constant.
+        sTimeBuilder.append(separator);
+        sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(seconds, 2));
+        sTimeBuilder.append(decimalSeparator);
+        sTimeBuilder.append(UiDataModel.getUiDataModel().getFormattedNumber(hundredths, 2));
+
+        return sTimeBuilder.toString();
     }
 
     /**
@@ -257,7 +284,7 @@
     private String formatLapTime(long lapTime, boolean isBinding) {
         // The longest lap dictates the way the given lapTime must be formatted.
         final long longestLapTime = Math.max(DataModel.getDataModel().getLongestLapTime(), lapTime);
-        final String formattedTime = formatTime(longestLapTime, lapTime, " ");
+        final String formattedTime = formatTime(longestLapTime, lapTime, LRM_SPACE);
 
         // If the newly formatted lap time has altered the format, refresh all laps.
         final int newLength = formattedTime.length();
@@ -278,7 +305,7 @@
     private String formatAccumulatedTime(long accumulatedTime, boolean isBinding) {
         final long totalTime = getStopwatch().getTotalTime();
         final long longestAccumulatedTime = Math.max(totalTime, accumulatedTime);
-        final String formattedTime = formatTime(longestAccumulatedTime, accumulatedTime, " ");
+        final String formattedTime = formatTime(longestAccumulatedTime, accumulatedTime, LRM_SPACE);
 
         // If the newly formatted accumulated time has altered the format, refresh all laps.
         final int newLength = formattedTime.length();
diff --git a/src/com/android/deskclock/stopwatch/StopwatchFragment.java b/src/com/android/deskclock/stopwatch/StopwatchFragment.java
index ab3268a..333ce42 100644
--- a/src/com/android/deskclock/stopwatch/StopwatchFragment.java
+++ b/src/com/android/deskclock/stopwatch/StopwatchFragment.java
@@ -20,6 +20,7 @@
 import android.content.ActivityNotFoundException;
 import android.content.Context;
 import android.content.Intent;
+import android.content.res.Resources;
 import android.graphics.drawable.Animatable;
 import android.graphics.drawable.Drawable;
 import android.os.Bundle;
@@ -33,7 +34,6 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.WindowManager;
-import android.view.accessibility.AccessibilityManager;
 import android.widget.ImageButton;
 import android.widget.ImageView;
 
@@ -51,7 +51,6 @@
 import com.android.deskclock.uidata.UiDataModel;
 import com.android.deskclock.uidata.UiDataModel.Tab;
 
-import static android.content.Context.ACCESSIBILITY_SERVICE;
 import static android.view.View.GONE;
 import static android.view.View.INVISIBLE;
 import static android.view.View.VISIBLE;
@@ -63,6 +62,8 @@
  * Fragment that shows the stopwatch and recorded laps.
  */
 public final class StopwatchFragment extends DeskClockFragment {
+    /** Milliseconds between redraws. */
+    private static final int REDRAW_PERIOD = 25;
 
     /** Keep the screen on when this tab is selected. */
     private final TabListener mTabWatcher = new TabWatcher();
@@ -73,9 +74,6 @@
     /** Updates the user interface in response to stopwatch changes. */
     private final StopwatchListener mStopwatchWatcher = new StopwatchWatcher();
 
-    /** Used to determine when talk back is on in order to lower the time update rate. */
-    private AccessibilityManager mAccessibilityManager;
-
     /** The data source for {@link #mLapsList}. */
     private LapsAdapter mLapsAdapter;
 
@@ -109,10 +107,19 @@
         mLapsList = (RecyclerView) v.findViewById(R.id.laps_list);
         ((SimpleItemAnimator) mLapsList.getItemAnimator()).setSupportsChangeAnimations(false);
         mLapsList.setLayoutManager(mLapsLayoutManager);
+
+        // In landscape layouts, the laps list can reach the top of the screen and thus can cause
+        // a drop shadow to appear. The same is not true for portrait landscapes.
+        if (Utils.isLandscape(getActivity())) {
+            final ScrollPositionWatcher scrollPositionWatcher = new ScrollPositionWatcher();
+            mLapsList.addOnLayoutChangeListener(scrollPositionWatcher);
+            mLapsList.addOnScrollListener(scrollPositionWatcher);
+        }
         mLapsList.setAdapter(mLapsAdapter);
 
         // Timer text serves as a virtual start/stop button.
         mTimeText = (CountingTimerView) v.findViewById(R.id.stopwatch_time_text);
+        mTimeText.setShowBoundingCircle(mTime != null);
         mTimeText.setVirtualButtonEnabled(true);
         mTimeText.registerVirtualButtonAction(new ToggleStopwatchRunnable());
 
@@ -122,16 +129,8 @@
     }
 
     @Override
-    public void onActivityCreated(Bundle savedInstanceState) {
-        super.onActivityCreated(savedInstanceState);
-
-        mAccessibilityManager =
-                (AccessibilityManager) getActivity().getSystemService(ACCESSIBILITY_SERVICE);
-    }
-
-    @Override
-    public void onResume() {
-        super.onResume();
+    public void onStart() {
+        super.onStart();
 
         // Conservatively assume the data in the adapter has changed while the fragment was paused.
         mLapCount = mLapsAdapter.getItemCount();
@@ -145,8 +144,8 @@
     }
 
     @Override
-    public void onPause() {
-        super.onPause();
+    public void onStop() {
+        super.onStop();
 
         // Stop all updates while the fragment is not visible.
         stopUpdatingTime();
@@ -361,8 +360,10 @@
             // to ensure they aren't seen as the first lap is drawn.
             mLapsList.removeAllViewsInLayout();
 
-            // Start animating the reference lap.
-            mTime.update();
+            if (mTime != null) {
+                // Start animating the reference lap.
+                mTime.update();
+            }
 
             // Recording the first lap transitions the UI to display the laps list.
             showOrHideLaps(false);
@@ -378,6 +379,10 @@
      */
     private void showOrHideLaps(boolean clearLaps) {
         final ViewGroup sceneRoot = (ViewGroup) getView();
+        if (sceneRoot == null) {
+            return;
+        }
+
         TransitionManager.beginDelayedTransition(sceneRoot);
 
         if (clearLaps) {
@@ -386,6 +391,17 @@
 
         final boolean lapsVisible = mLapsAdapter.getItemCount() > 0;
         mLapsList.setVisibility(lapsVisible ? VISIBLE : GONE);
+
+        if (Utils.isPortrait(getActivity())) {
+            // When the lap list is visible, it includes the bottom padding. When it is absent the
+            // appropriate bottom padding must be applied to the container.
+            final Resources res = getResources();
+            final int bottom = lapsVisible ? 0 : res.getDimensionPixelSize(R.dimen.fab_height);
+            final int top = sceneRoot.getPaddingTop();
+            final int left = sceneRoot.getPaddingLeft();
+            final int right = sceneRoot.getPaddingRight();
+            sceneRoot.setPadding(left, top, right, bottom);
+        }
     }
 
     private void adjustWakeLock() {
@@ -426,14 +442,14 @@
     private void startUpdatingTime() {
         // Ensure only one copy of the runnable is ever scheduled by first stopping updates.
         stopUpdatingTime();
-        mTime.post(mTimeUpdateRunnable);
+        mTimeText.post(mTimeUpdateRunnable);
     }
 
     /**
      * Remove the runnable that updates times within the UI.
      */
     private void stopUpdatingTime() {
-        mTime.removeCallbacks(mTimeUpdateRunnable);
+        mTimeText.removeCallbacks(mTimeUpdateRunnable);
     }
 
     /**
@@ -447,7 +463,7 @@
         final long totalTime = stopwatch.getTotalTime();
 
         // Update the total time display.
-        mTimeText.setTime(totalTime, true, true);
+        mTimeText.setTime(totalTime, true);
 
         // Update the current lap.
         final boolean currentLapIsVisible = mLapsLayoutManager.findFirstVisibleItemPosition() == 0;
@@ -465,7 +481,9 @@
         // Draw the latest stopwatch and current lap times.
         updateTime();
 
-        mTime.update();
+        if (mTime != null) {
+            mTime.update();
+        }
 
         // Start updates if the stopwatch is running.
         final Stopwatch stopwatch = getStopwatch();
@@ -495,17 +513,11 @@
             updateTime();
 
             if (getStopwatch().isRunning()) {
-                // The stopwatch is still running so execute this runnable again after a delay.
-                final boolean talkBackOn = mAccessibilityManager.isTouchExplorationEnabled();
-
-                // Grant longer time between redraws when talk-back is on to let it catch up.
-                final int period = talkBackOn ? 500 : 25;
-
                 // Try to maintain a consistent period of time between redraws.
                 final long endTime = SystemClock.elapsedRealtime();
-                final long delay = Math.max(0, startTime + period - endTime);
+                final long delay = Math.max(0, startTime + REDRAW_PERIOD - endTime);
 
-                mTime.postDelayed(this, delay);
+                mTimeText.postDelayed(this, delay);
             }
         }
     }
@@ -548,4 +560,22 @@
         public void lapAdded(Lap lap) {
         }
     }
-}
+
+    /**
+     * Updates the vertical scroll state of this tab in the {@link UiDataModel} as the user scrolls
+     * the recyclerview or when the size/position of elements within the recyclerview changes.
+     */
+    private final class ScrollPositionWatcher extends RecyclerView.OnScrollListener
+            implements View.OnLayoutChangeListener {
+        @Override
+        public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
+            setTabScrolledToTop(Utils.isScrolledToTop(mLapsList));
+        }
+
+        @Override
+        public void onLayoutChange(View v, int left, int top, int right, int bottom,
+                int oldLeft, int oldTop, int oldRight, int oldBottom) {
+            setTabScrolledToTop(Utils.isScrolledToTop(mLapsList));
+        }
+    }
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/timer/CountingTimerView.java b/src/com/android/deskclock/timer/CountingTimerView.java
index 7e7cd59..e276543 100644
--- a/src/com/android/deskclock/timer/CountingTimerView.java
+++ b/src/com/android/deskclock/timer/CountingTimerView.java
@@ -22,7 +22,9 @@
 import android.graphics.Color;
 import android.graphics.Paint;
 import android.graphics.Typeface;
+import android.support.annotation.PluralsRes;
 import android.text.TextUtils;
+import android.text.format.DateUtils;
 import android.util.AttributeSet;
 import android.view.MotionEvent;
 import android.view.View;
@@ -31,6 +33,7 @@
 import com.android.deskclock.LogUtils;
 import com.android.deskclock.R;
 import com.android.deskclock.Utils;
+import com.android.deskclock.uidata.UiDataModel;
 
 import java.util.Locale;
 
@@ -38,13 +41,10 @@
  * Class to measure and draw the time in the {@link com.android.deskclock.CircleTimerView}.
  * This class manages and sums the work of the four members mBigHours, mBigMinutes,
  * mBigSeconds and mMedHundredths. Those members are each tasked with measuring, sizing and
- * drawing digits (and optional label) of the time set in {@link #setTime(long, boolean, boolean)}
+ * drawing digits (and optional label) of the time set in {@link #setTime(long, boolean)}
  */
 public class CountingTimerView extends View {
-    private static final String TWO_DIGITS = "%02d";
-    private static final String ONE_DIGIT = "%01d";
-    private static final String NEG_TWO_DIGITS = "-%02d";
-    private static final String NEG_ONE_DIGIT = "-%01d";
+
     private static final float TEXT_SIZE_TO_WIDTH_RATIO = 0.85f;
     // This is the ratio of the font height needed to vertically offset the font for alignment
     // from the center.
@@ -53,6 +53,10 @@
     private static final float HOURS_MINUTES_SPACING = 0.4f;
     // Ratio of the space leading the Hundredths
     private static final float HUNDREDTHS_SPACING = 0.5f;
+
+    /** Reusable StringBuilder to assemble talk back announcements when the time is updated. */
+    private static final StringBuilder sTalkBackBuilder = new StringBuilder(50);
+
     // Radial offset of the enclosing circle
     private final float mRadiusOffset;
 
@@ -81,6 +85,10 @@
     private boolean mVirtualButtonEnabled = false;
     private boolean mVirtualButtonPressedOn = false;
 
+    // Whether or not a bounding circle exists into which the text must be made to fit.
+    // If no such circle exists, the entire width of this component is available for text display.
+    private boolean mShowBoundingCircle;
+
     Runnable mBlinkThread = new Runnable() {
         private boolean mVisible = true;
         @Override
@@ -306,35 +314,43 @@
         mPaintMed.setColor(textColor);
     }
 
+    public void setShowBoundingCircle(boolean showBoundingCircle) {
+        mShowBoundingCircle = showBoundingCircle;
+        requestLayout();
+    }
+
     /**
      * Update the time to display. Separates that time into the hours, minutes, seconds and
      * hundredths. If update is true, the view is invalidated so that it will draw again.
      *
      * @param time new time to display - in milliseconds
      * @param showHundredths flag to show hundredths resolution
-     * @param update to invalidate the view - otherwise the time is examined to see if it is within
-     *               100 milliseconds of zero seconds and when so, invalidate the view.
      */
     // TODO:showHundredths S/B attribute or setter - i.e. unchanging over object life
-    public void setTime(long time, boolean showHundredths, boolean update) {
-        int oldLength = getDigitsLength();
+    public void setTime(long time, boolean showHundredths) {
+        final int oldLength = getDigitsLength();
         boolean neg = false, showNeg = false;
-        String format;
         if (time < 0) {
             time = -time;
             neg = showNeg = true;
         }
-        long hundreds, seconds, minutes, hours;
-        seconds = time / 1000;
-        hundreds = (time - seconds * 1000) / 10;
-        minutes = seconds / 60;
-        seconds = seconds - minutes * 60;
-        hours = minutes / 60;
-        minutes = minutes - hours * 60;
+
+        int hours = (int) (time / DateUtils.HOUR_IN_MILLIS);
+        int remainder = (int) (time % DateUtils.HOUR_IN_MILLIS);
+
+        int minutes = (int) (remainder / DateUtils.MINUTE_IN_MILLIS);
+        remainder = (int) (remainder % DateUtils.MINUTE_IN_MILLIS);
+
+        int seconds = (int) (remainder / DateUtils.SECOND_IN_MILLIS);
+        remainder = (int) (remainder % DateUtils.SECOND_IN_MILLIS);
+
+        int hundredths = remainder / 10;
+
         if (hours > 999) {
             hours = 0;
         }
-        // The time  can be between 0 and -1 seconds, but the "truncated" equivalent time of hours
+
+        // The time can be between 0 and -1 seconds, but the "truncated" equivalent time of hours
         // and minutes and seconds could be zero, so since we do not show fractions of seconds
         // when counting down, do not show the minus sign.
         // TODO:does it matter that we do not look at showHundredths?
@@ -342,9 +358,9 @@
             showNeg = false;
         }
 
-        // Normalize and check if it is 'time' to invalidate
+        // If not showing hundredths, round up to the next second.
         if (!showHundredths) {
-            if (!neg && hundreds != 0) {
+            if (!neg && hundredths != 0) {
                 seconds++;
                 if (seconds == 60) {
                     seconds = 0;
@@ -355,37 +371,28 @@
                     }
                 }
             }
-            if (hundreds < 10 || hundreds > 90) {
-                update = true;
-            }
         }
 
-        // Hours may be empty
-        if (hours >= 10) {
-            format = showNeg ? NEG_TWO_DIGITS : TWO_DIGITS;
-            mHours = String.format(format, hours);
-        } else if (hours > 0) {
-            format = showNeg ? NEG_ONE_DIGIT : ONE_DIGIT;
-            mHours = String.format(format, hours);
+        // Hours may be empty.
+        final UiDataModel uiDataModel = UiDataModel.getUiDataModel();
+        if (hours > 0) {
+            final int hoursLength = hours >= 10 ? 2 : 1;
+            mHours = uiDataModel.getFormattedNumber(showNeg, hours, hoursLength);
         } else {
             mHours = null;
         }
 
-        // Minutes are never empty and when hours are non-empty, must be two digits
-        if (minutes >= 10 || hours > 0) {
-            format = (showNeg && hours == 0) ? NEG_TWO_DIGITS : TWO_DIGITS;
-            mMinutes = String.format(format, minutes);
-        } else {
-            format = (showNeg && hours == 0) ? NEG_ONE_DIGIT : ONE_DIGIT;
-            mMinutes = String.format(format, minutes);
-        }
+        // Minutes are never empty and forced to two digits when hours exist.
+        final boolean showNegMinutes = showNeg && hours == 0;
+        final int minutesLength = minutes >= 10 || hours > 0 ? 2 : 1;
+        mMinutes = uiDataModel.getFormattedNumber(showNegMinutes, minutes, minutesLength);
 
         // Seconds are always two digits
-        mSeconds = String.format(Locale.getDefault(), TWO_DIGITS, seconds);
+        mSeconds = uiDataModel.getFormattedNumber(seconds, 2);
 
-        // Hundredths are optional and then two digits
+        // Hundredths are optional but forced to two digits when displayed.
         if (showHundredths) {
-            mHundredths = String.format(Locale.getDefault(), TWO_DIGITS, hundreds);
+            mHundredths = uiDataModel.getFormattedNumber(hundredths, 2);
         } else {
             mHundredths = null;
         }
@@ -398,11 +405,9 @@
             mRemeasureText = true;
         }
 
-        if (update) {
-            setContentDescription(getTimeStringForAccessibility((int) hours, (int) minutes,
-                    (int) seconds, showNeg, getResources()));
-            postInvalidateOnAnimation();
-        }
+        setContentDescription(getTimeStringForAccessibility(hours, minutes, seconds, showNeg,
+                getResources()));
+        postInvalidateOnAnimation();
     }
 
     private int getDigitsLength() {
@@ -424,10 +429,18 @@
      */
     private void setTotalTextWidth() {
         calcTotalTextWidth();
-        // To determine the maximum width, we find the minimum of the height and width (since the
-        // circle we are trying to fit the text into has its radius sized to the smaller of the
-        // two.
-        int width = Math.min(getWidth(), getHeight());
+
+        int width;
+        if (mShowBoundingCircle) {
+            // A bounding circle exists, so the available width in which to fit the timer text is
+            // the smaller of the width or height, which is also equal to the circle's diameter.
+            width = Math.min(getWidth(), getHeight());
+        } else {
+            // A bounding circle does not exist, so pretend that the entire width of this component
+            // is the diameter of a theoretical bounding circle.
+            width = getWidth();
+        }
+
         if (width != 0) {
             // Shrink 'width' to account for circle stroke and other painted objects.
             // Note on the "4 *": (1) To reduce divisions, using the diameter instead of the radius.
@@ -486,40 +499,32 @@
 
     private static String getTimeStringForAccessibility(int hours, int minutes, int seconds,
             boolean showNeg, Resources r) {
-        StringBuilder s = new StringBuilder();
+        sTalkBackBuilder.setLength(0);
         if (showNeg) {
             // This must be followed by a non-zero number or it will be audible as "hyphen"
             // instead of "minus".
-            s.append("-");
+            sTalkBackBuilder.append('-');
         }
         if (showNeg && hours == 0 && minutes == 0) {
             // Non-negative time will always have minutes, eg. "0 minutes 7 seconds", but negative
             // time must start with non-zero digit, eg. -0m7s will be audible as just "-7 seconds"
-            s.append(String.format(
-                    r.getQuantityText(R.plurals.Nseconds_description, seconds).toString(),
-                    seconds));
+            sTalkBackBuilder.append(getQuantityString(r, R.plurals.Nseconds_description, seconds));
         } else if (hours == 0) {
-            s.append(String.format(
-                    r.getQuantityText(R.plurals.Nminutes_description, minutes).toString(),
-                    minutes));
-            s.append(" ");
-            s.append(String.format(
-                    r.getQuantityText(R.plurals.Nseconds_description, seconds).toString(),
-                    seconds));
+            sTalkBackBuilder.append(getQuantityString(r, R.plurals.Nminutes_description, minutes));
+            sTalkBackBuilder.append(' ');
+            sTalkBackBuilder.append(getQuantityString(r, R.plurals.Nseconds_description, seconds));
         } else {
-            s.append(String.format(
-                    r.getQuantityText(R.plurals.Nhours_description, hours).toString(),
-                    hours));
-            s.append(" ");
-            s.append(String.format(
-                    r.getQuantityText(R.plurals.Nminutes_description, minutes).toString(),
-                    minutes));
-            s.append(" ");
-            s.append(String.format(
-                    r.getQuantityText(R.plurals.Nseconds_description, seconds).toString(),
-                    seconds));
+            sTalkBackBuilder.append(getQuantityString(r, R.plurals.Nhours_description, hours));
+            sTalkBackBuilder.append(' ');
+            sTalkBackBuilder.append(getQuantityString(r, R.plurals.Nminutes_description, minutes));
+            sTalkBackBuilder.append(' ');
+            sTalkBackBuilder.append(getQuantityString(r, R.plurals.Nseconds_description, seconds));
         }
-        return s.toString();
+        return sTalkBackBuilder.toString();
+    }
+
+    private static String getQuantityString(Resources r, @PluralsRes int resId, int quantity) {
+        return r.getQuantityString(resId, quantity, quantity);
     }
 
     public void setVirtualButtonEnabled(boolean enabled) {
diff --git a/src/com/android/deskclock/timer/TimerFragment.java b/src/com/android/deskclock/timer/TimerFragment.java
index 481247f..0803936 100644
--- a/src/com/android/deskclock/timer/TimerFragment.java
+++ b/src/com/android/deskclock/timer/TimerFragment.java
@@ -27,6 +27,7 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.VisibleForTesting;
 import android.support.v4.view.ViewPager;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -129,8 +130,8 @@
     }
 
     @Override
-    public void onResume() {
-        super.onResume();
+    public void onStart() {
+        super.onStart();
 
         // Initialize the page indicators.
         updatePageIndicators();
@@ -348,6 +349,14 @@
         animateToView(mCreateTimerView, null);
     }
 
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if (mCurrentView == mCreateTimerView) {
+            return mCreateTimerView.onKeyDown(keyCode, event);
+        }
+        return super.onKeyDown(keyCode, event);
+    }
+
     /**
      * Updates the state of the page indicators so they reflect the selected page in the context of
      * all pages.
diff --git a/src/com/android/deskclock/timer/TimerItem.java b/src/com/android/deskclock/timer/TimerItem.java
index 9c9b12e..9bf03c8 100644
--- a/src/com/android/deskclock/timer/TimerItem.java
+++ b/src/com/android/deskclock/timer/TimerItem.java
@@ -24,7 +24,6 @@
 import android.widget.LinearLayout;
 import android.widget.TextView;
 
-import com.android.deskclock.CircleButtonsLayout;
 import com.android.deskclock.R;
 import com.android.deskclock.data.Timer;
 
@@ -63,10 +62,7 @@
         mResetAddButton = (ImageView) findViewById(R.id.reset_add);
         mCircleView = (TimerCircleView) findViewById(R.id.timer_time);
         mTimerText = (CountingTimerView) findViewById(R.id.timer_time_text);
-
-        // This layout positions dynamically positions the label and reset buttons.
-        final CircleButtonsLayout cbl = (CircleButtonsLayout) findViewById(R.id.timer_circle);
-        cbl.setCircleTimerViewIds(R.id.timer_time, R.id.reset_add, R.id.timer_label);
+        mTimerText.setShowBoundingCircle(mCircleView != null);
     }
 
     /**
@@ -74,10 +70,7 @@
      */
     void update(Timer timer) {
         // Update the time.
-        mTimerText.setTime(timer.getRemainingTime(), false, true);
-
-        // Update the progress of the circle.
-        mCircleView.update(timer);
+        mTimerText.setTime(timer.getRemainingTime(), false);
 
         // Update the label if it changed.
         final String label = timer.getLabel();
@@ -87,7 +80,15 @@
 
         // Update visibility of things that may blink.
         final boolean blinkOff = SystemClock.elapsedRealtime() % 1000 < 500;
-        mCircleView.setVisibility(timer.isExpired() && blinkOff ? INVISIBLE : VISIBLE);
+        if (mCircleView != null) {
+            final boolean hideCircle = timer.isExpired() && blinkOff;
+            mCircleView.setVisibility(hideCircle ? INVISIBLE : VISIBLE);
+
+            if (!hideCircle) {
+                // Update the progress of the circle.
+                mCircleView.update(timer);
+            }
+        }
         mTimerText.showTime(!timer.isPaused() || !blinkOff);
 
         // Update some potentially expensive areas of the user interface only on state changes.
@@ -125,4 +126,4 @@
             }
         }
     }
-}
+}
\ No newline at end of file
diff --git a/src/com/android/deskclock/timer/TimerSetupView.java b/src/com/android/deskclock/timer/TimerSetupView.java
index 4b43ff6..6bc74be 100644
--- a/src/com/android/deskclock/timer/TimerSetupView.java
+++ b/src/com/android/deskclock/timer/TimerSetupView.java
@@ -22,6 +22,7 @@
 import android.support.v4.content.ContextCompat;
 import android.text.format.DateUtils;
 import android.util.AttributeSet;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.widget.Button;
@@ -31,11 +32,13 @@
 import com.android.deskclock.FabContainer;
 import com.android.deskclock.R;
 import com.android.deskclock.Utils;
+import com.android.deskclock.uidata.UiDataModel;
 
 import java.io.Serializable;
 import java.util.Arrays;
 
 import static com.android.deskclock.FabContainer.UpdateType.FAB_ONLY_SHRINK_AND_EXPAND;
+import static com.android.deskclock.FabContainer.UpdateType.FAB_REQUESTS_FOCUS;
 
 public class TimerSetupView extends LinearLayout implements Button.OnClickListener,
         Button.OnLongClickListener {
@@ -63,7 +66,7 @@
         mColorAccent = Utils.obtainStyledColor(context, R.attr.colorAccent, Color.RED);
         mColorHairline = ContextCompat.getColor(context, R.color.hairline);
 
-        LayoutInflater.from(context).inflate(R.layout.time_setup_view, this);
+        LayoutInflater.from(context).inflate(R.layout.time_setup_container, this);
     }
 
     void setFabContainer(FabContainer fabContainer) {
@@ -101,9 +104,10 @@
         v4.findViewById(R.id.key_left).setVisibility(INVISIBLE);
         v4.findViewById(R.id.key_right).setVisibility(INVISIBLE);
 
+        final UiDataModel uiDataModel = UiDataModel.getUiDataModel();
         for (int i = 0; i < mNumbers.length; i++) {
             mNumbers[i].setOnClickListener(this);
-            mNumbers[i].setText(String.valueOf(i));
+            mNumbers[i].setText(uiDataModel.getFormattedNumber(i, 1));
             mNumbers[i].setTextColor(Color.WHITE);
             mNumbers[i].setTag(R.id.numbers_key, i);
         }
@@ -111,6 +115,42 @@
         updateTime();
     }
 
+    private boolean clickButton(View button) {
+        button.performClick();
+        mFabContainer.updateFab(FAB_REQUESTS_FOCUS);
+        return true;
+    }
+
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        switch (keyCode) {
+            case KeyEvent.KEYCODE_0:
+                return clickButton(mNumbers[0]);
+            case KeyEvent.KEYCODE_1:
+                return clickButton(mNumbers[1]);
+            case KeyEvent.KEYCODE_2:
+                return clickButton(mNumbers[2]);
+            case KeyEvent.KEYCODE_3:
+                return clickButton(mNumbers[3]);
+            case KeyEvent.KEYCODE_4:
+                return clickButton(mNumbers[4]);
+            case KeyEvent.KEYCODE_5:
+                return clickButton(mNumbers[5]);
+            case KeyEvent.KEYCODE_6:
+                return clickButton(mNumbers[6]);
+            case KeyEvent.KEYCODE_7:
+                return clickButton(mNumbers[7]);
+            case KeyEvent.KEYCODE_8:
+                return clickButton(mNumbers[8]);
+            case KeyEvent.KEYCODE_9:
+                return clickButton(mNumbers[9]);
+            case KeyEvent.KEYCODE_DEL:
+                return clickButton(mDelete);
+            default:
+                return false;
+        }
+    }
+
     @Override
     public void onClick(View v) {
         final boolean validInputBeforeClick = hasValidInput();
diff --git a/src/com/android/deskclock/timer/TimerView.java b/src/com/android/deskclock/timer/TimerView.java
index 6394283..e95ebbe 100644
--- a/src/com/android/deskclock/timer/TimerView.java
+++ b/src/com/android/deskclock/timer/TimerView.java
@@ -24,6 +24,7 @@
 import android.widget.TextView;
 
 import com.android.deskclock.R;
+import com.android.deskclock.uidata.UiDataModel;
 
 import java.util.Locale;
 
@@ -87,11 +88,12 @@
 
     public void setTime(int hoursTensDigit, int hoursOnesDigit, int minutesTensDigit,
                         int minutesOnesDigit, int seconds) {
+        final UiDataModel uiDataModel = UiDataModel.getUiDataModel();
         if (hoursTensDigit == -1) {
             mHoursTens.setText("-");
             mHoursTens.setTextColor(mGrayColor);
         } else {
-            mHoursTens.setText(String.valueOf(hoursTensDigit));
+            mHoursTens.setText(uiDataModel.getFormattedNumber(hoursTensDigit, 1));
             mHoursTens.setTextColor(mWhiteColor);
         }
 
@@ -99,7 +101,7 @@
             mHoursOnes.setText("-");
             mHoursOnes.setTextColor(mGrayColor);
         } else {
-            mHoursOnes.setText(String.valueOf(hoursOnesDigit));
+            mHoursOnes.setText(uiDataModel.getFormattedNumber(hoursOnesDigit, 1));
             mHoursOnes.setTextColor(mWhiteColor);
         }
 
@@ -107,7 +109,7 @@
             mMinutesTens.setText("-");
             mMinutesTens.setTextColor(mGrayColor);
         } else {
-            mMinutesTens.setText(String.valueOf(minutesTensDigit));
+            mMinutesTens.setText(uiDataModel.getFormattedNumber(minutesTensDigit, 1));
             mMinutesTens.setTextColor(mWhiteColor);
         }
 
@@ -115,10 +117,10 @@
             mMinutesOnes.setText("-");
             mMinutesOnes.setTextColor(mGrayColor);
         } else {
-            mMinutesOnes.setText(String.valueOf(minutesOnesDigit));
+            mMinutesOnes.setText(uiDataModel.getFormattedNumber(minutesOnesDigit, 1));
             mMinutesOnes.setTextColor(mWhiteColor);
         }
 
-        mSeconds.setText(String.format(Locale.getDefault(), "%02d", seconds));
+        mSeconds.setText(uiDataModel.getFormattedNumber(seconds, 2));
     }
 }
\ No newline at end of file
diff --git a/src/com/android/deskclock/uidata/TabDAO.java b/src/com/android/deskclock/uidata/TabDAO.java
index 2b8aba8..429dbea 100644
--- a/src/com/android/deskclock/uidata/TabDAO.java
+++ b/src/com/android/deskclock/uidata/TabDAO.java
@@ -20,6 +20,8 @@
 import android.content.SharedPreferences;
 import android.preference.PreferenceManager;
 
+import com.android.deskclock.Utils;
+
 import static com.android.deskclock.uidata.UiDataModel.Tab;
 
 /**
@@ -52,9 +54,9 @@
 
     private static SharedPreferences getSharedPreferences(Context context) {
         if (sPrefs == null) {
-            sPrefs = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());
+            sPrefs = Utils.getDefaultSharedPreferences(context.getApplicationContext());
         }
 
         return sPrefs;
     }
-}
\ No newline at end of file
+}
diff --git a/src/com/android/deskclock/uidata/UiDataModel.java b/src/com/android/deskclock/uidata/UiDataModel.java
index 921a419..8aeb512 100644
--- a/src/com/android/deskclock/uidata/UiDataModel.java
+++ b/src/com/android/deskclock/uidata/UiDataModel.java
@@ -16,9 +16,13 @@
 
 package com.android.deskclock.uidata;
 
+import android.content.BroadcastReceiver;
 import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
 import android.support.annotation.DrawableRes;
 import android.support.annotation.StringRes;
+import android.util.SparseArray;
 
 import com.android.deskclock.AlarmClockFragment;
 import com.android.deskclock.ClockFragment;
@@ -26,6 +30,8 @@
 import com.android.deskclock.stopwatch.StopwatchFragment;
 import com.android.deskclock.timer.TimerFragment;
 
+import java.util.Locale;
+
 import static com.android.deskclock.Utils.enforceMainLooper;
 
 /**
@@ -62,6 +68,17 @@
         return sUiDataModel;
     }
 
+    /** Clears data structures containing data that is locale-sensitive. */
+    @SuppressWarnings("FieldCanBeLocal")
+    private final BroadcastReceiver mLocaleChangedReceiver = new LocaleChangedReceiver();
+
+    /**
+     * Caches formatted numbers in the current locale padded with zeroes to requested lengths.
+     * The first level of the cache maps length to the second level of the cache.
+     * The second level of the cache maps an integer to a formatted String in the current locale.
+     */
+    private final SparseArray<SparseArray<String>> mNumberFormatCache = new SparseArray<>(3);
+
     private Context mContext;
 
     /** The model from which tab data are fetched. */
@@ -83,6 +100,67 @@
 
         mTabModel = new TabModel(mContext);
         mPeriodicCallbackModel = new PeriodicCallbackModel(mContext);
+
+        // Clear caches affected by locale when locale changes.
+        final IntentFilter localeBroadcastFilter = new IntentFilter(Intent.ACTION_LOCALE_CHANGED);
+        mContext.registerReceiver(mLocaleChangedReceiver, localeBroadcastFilter);
+    }
+
+    //
+    // Number Formatting
+    //
+
+    /**
+     * This method is intended to be used when formatting numbers occurs in a hotspot such as the
+     * update loop of a timer or stopwatch. It returns cached results when possible in order to
+     * provide speed and limit garbage to be collected by the virtual machine.
+     *
+     * @param value a positive integer to format as a String
+     * @param length the length of the String; zeroes are padded to match this length
+     * @return the {@code value} formatted as a String in the current locale and padded to the
+     *      requested {@code length}
+     * @throws IllegalArgumentException if {@code value} is negative
+     */
+    public String getFormattedNumber(int value, int length) {
+        return getFormattedNumber(false, value, length);
+    }
+
+    /**
+     * This method is intended to be used when formatting numbers occurs in a hotspot such as the
+     * update loop of a timer or stopwatch. It returns cached results when possible in order to
+     * provide speed and limit garbage to be collected by the virtual machine.
+     *
+     * @param negative force a minus sign (-) onto the display, even if {@code value} is {@code 0}
+     * @param value a positive integer to format as a String
+     * @param length the length of the String; zeroes are padded to match this length. If
+     *      {@code negative} is {@code true} the return value will contain a minus sign and a total
+     *      length of {@code length + 1}.
+     * @return the {@code value} formatted as a String in the current locale and padded to the
+     *      requested {@code length}
+     * @throws IllegalArgumentException if {@code value} is negative
+     */
+    public String getFormattedNumber(boolean negative, int value, int length) {
+        if (value < 0) {
+            throw new IllegalArgumentException("value may not be negative: " + value);
+        }
+
+        // Look up the value cache using the length; -ve and +ve values are cached separately.
+        final int lengthCacheKey = negative ? -length : length;
+        SparseArray<String> valueCache = mNumberFormatCache.get(lengthCacheKey);
+        if (valueCache == null) {
+            valueCache = new SparseArray<>((int) Math.pow(10, length));
+            mNumberFormatCache.put(lengthCacheKey, valueCache);
+        }
+
+        // Look up the cached formatted value using the value.
+        String formatted = valueCache.get(value);
+        if (formatted == null) {
+            final String sign = negative ? "−" : "";
+            formatted = String.format(Locale.getDefault(), sign + "%0" + length + "d", value);
+            valueCache.put(value, formatted);
+        }
+
+        return formatted;
     }
 
     //
@@ -261,4 +339,14 @@
         enforceMainLooper();
         mPeriodicCallbackModel.removePeriodicCallback(runnable);
     }
+
+    /**
+     * Cached information that is locale-sensitive must be cleared in response to locale changes.
+     */
+    private final class LocaleChangedReceiver extends BroadcastReceiver {
+        @Override
+        public void onReceive(Context context, Intent intent) {
+            mNumberFormatCache.clear();
+        }
+    }
 }
\ No newline at end of file
diff --git a/src/com/android/deskclock/widget/AlphaSafeImageButton.java b/src/com/android/deskclock/widget/AlphaSafeImageButton.java
deleted file mode 100644
index 9983e27..0000000
--- a/src/com/android/deskclock/widget/AlphaSafeImageButton.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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.
- */
-
-package com.android.deskclock.widget;
-
-import android.content.Context;
-import android.graphics.drawable.RippleDrawable;
-import android.support.v7.widget.AppCompatImageButton;
-import android.util.AttributeSet;
-
-import com.android.deskclock.Utils;
-
-/**
- * A lightweight {@code ImageButton} subclass to provide a workaround for bad interactions
- * when animating a View's alpha with a {@link RippleDrawable} background.
- */
-public class AlphaSafeImageButton extends AppCompatImageButton {
-
-    public AlphaSafeImageButton(Context context) {
-        super(context);
-    }
-
-    public AlphaSafeImageButton(Context context, AttributeSet attrs) {
-        super(context, attrs);
-    }
-
-    public AlphaSafeImageButton(Context context, AttributeSet attrs, int defStyleAttr) {
-        super(context, attrs, defStyleAttr);
-    }
-
-    /**
-     * Returns {@code false} if the background is a {@link RippleDrawable}.
-     */
-    @Override
-    public boolean hasOverlappingRendering() {
-        if (Utils.isLOrLater() && getBackground() instanceof RippleDrawable) {
-            return false;
-        }
-        return super.hasOverlappingRendering();
-    }
-}
diff --git a/src/com/android/deskclock/worldclock/CitySelectionActivity.java b/src/com/android/deskclock/worldclock/CitySelectionActivity.java
index 9a09d2d..2fb4eeb 100644
--- a/src/com/android/deskclock/worldclock/CitySelectionActivity.java
+++ b/src/com/android/deskclock/worldclock/CitySelectionActivity.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2015 The Android Open Source Project
+ * 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
@@ -39,12 +39,12 @@
 import com.android.deskclock.DropShadowController;
 import com.android.deskclock.R;
 import com.android.deskclock.Utils;
-import com.android.deskclock.actionbarmenu.AbstractMenuItemController;
-import com.android.deskclock.actionbarmenu.ActionBarMenuManager;
+import com.android.deskclock.actionbarmenu.OptionsMenuManager;
+import com.android.deskclock.actionbarmenu.MenuItemController;
 import com.android.deskclock.actionbarmenu.MenuItemControllerFactory;
 import com.android.deskclock.actionbarmenu.NavUpMenuItemController;
 import com.android.deskclock.actionbarmenu.SearchMenuItemController;
-import com.android.deskclock.actionbarmenu.SettingMenuItemController;
+import com.android.deskclock.actionbarmenu.SettingsMenuItemController;
 import com.android.deskclock.data.City;
 import com.android.deskclock.data.DataModel;
 
@@ -58,6 +58,8 @@
 import java.util.Set;
 import java.util.TimeZone;
 
+import static android.view.Menu.NONE;
+
 /**
  * This activity allows the user to alter the cities selected for display.
  *
@@ -80,7 +82,7 @@
     private CityAdapter mCitiesAdapter;
 
     /** Manages all action bar menu display and click handling. */
-    private final ActionBarMenuManager mActionBarMenuManager = new ActionBarMenuManager();
+    private final OptionsMenuManager mOptionsMenuManager = new OptionsMenuManager();
 
     /** Menu item controller for search view. */
     private SearchMenuItemController mSearchMenuItemController;
@@ -94,7 +96,7 @@
 
         setContentView(R.layout.cities_activity);
         mSearchMenuItemController =
-                new SearchMenuItemController(new SearchView.OnQueryTextListener() {
+                new SearchMenuItemController(this, new SearchView.OnQueryTextListener() {
                     @Override
                     public boolean onQueryTextSubmit(String query) {
                         return false;
@@ -108,10 +110,10 @@
                     }
                 }, savedInstanceState);
         mCitiesAdapter = new CityAdapter(this, mSearchMenuItemController);
-        mActionBarMenuManager.addMenuItemController(new NavUpMenuItemController(this))
+        mOptionsMenuManager.addMenuItemController(new NavUpMenuItemController(this))
                 .addMenuItemController(mSearchMenuItemController)
                 .addMenuItemController(new SortOrderMenuItemController())
-                .addMenuItemController(new SettingMenuItemController(this))
+                .addMenuItemController(new SettingsMenuItemController(this))
                 .addMenuItemController(MenuItemControllerFactory.getInstance()
                         .buildMenuItemControllers(this));
         mCitiesList = (ListView) findViewById(R.id.cities_list);
@@ -150,22 +152,20 @@
 
     @Override
     public boolean onCreateOptionsMenu(Menu menu) {
-        mActionBarMenuManager.createOptionsMenu(menu, getMenuInflater());
+        mOptionsMenuManager.onCreateOptionsMenu(menu);
         return true;
     }
 
     @Override
     public boolean onPrepareOptionsMenu(Menu menu) {
-        mActionBarMenuManager.prepareShowMenu(menu);
+        mOptionsMenuManager.onPrepareOptionsMenu(menu);
         return true;
     }
 
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
-        if (mActionBarMenuManager.handleMenuItemClick(item)) {
-            return true;
-        }
-        return super.onOptionsItemSelected(item);
+        return mOptionsMenuManager.onOptionsItemSelected(item)
+                || super.onOptionsItemSelected(item);
     }
 
     /**
@@ -568,7 +568,7 @@
         }
     }
 
-    private final class SortOrderMenuItemController extends AbstractMenuItemController {
+    private final class SortOrderMenuItemController implements MenuItemController {
 
         private static final int SORT_MENU_RES_ID = R.id.menu_item_sort;
 
@@ -578,20 +578,19 @@
         }
 
         @Override
-        public void showMenuItem(Menu menu) {
-            final MenuItem sortMenuItem = menu.findItem(SORT_MENU_RES_ID);
-            final String title;
-            if (DataModel.getDataModel().getCitySort() == DataModel.CitySort.NAME) {
-                title = getString(R.string.menu_item_sort_by_gmt_offset);
-            } else {
-                title = getString(R.string.menu_item_sort_by_name);
-            }
-            sortMenuItem.setTitle(title);
-            sortMenuItem.setVisible(true);
+        public void onCreateOptionsItem(Menu menu) {
+            menu.add(NONE, R.id.menu_item_sort, NONE, R.string.menu_item_sort_by_gmt_offset)
+                    .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
         }
 
         @Override
-        public boolean handleMenuItemClick(MenuItem item) {
+        public void onPrepareOptionsItem(MenuItem item) {
+            item.setTitle(DataModel.getDataModel().getCitySort() == DataModel.CitySort.NAME
+                    ? R.string.menu_item_sort_by_gmt_offset : R.string.menu_item_sort_by_name);
+        }
+
+        @Override
+        public boolean onOptionsItemSelected(MenuItem item) {
             // Save the new sort order.
             DataModel.getDataModel().toggleCitySort();