Merge "Import translations. DO NOT MERGE" into klp-modular-dev
diff --git a/Android.mk b/Android.mk
index 60e8143..8fdcea2 100644
--- a/Android.mk
+++ b/Android.mk
@@ -721,7 +721,6 @@
 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
 		-toroot / \
 		-hdf android.whichdoc online \
-		-briefdocs \
 		$(sample_groups) \
 		-hdf android.hasSamples true \
 		-samplesdir $(samples_dir)
diff --git a/docs/html/design/auto/index.jd b/docs/html/design/auto/index.jd
index aac79ab..c970cac 100644
--- a/docs/html/design/auto/index.jd
+++ b/docs/html/design/auto/index.jd
@@ -1,4 +1,4 @@
-page.title=Auto
+page.title=Android Auto
 @jd:body
 
 <style>
diff --git a/docs/html/design/devices.jd b/docs/html/design/devices.jd
index 0015d01..c67e585 100644
--- a/docs/html/design/devices.jd
+++ b/docs/html/design/devices.jd
@@ -13,8 +13,8 @@
 #text-overlay {
   position: absolute;
   left: 0;
-  top: 420px;
-  width: 360px;
+  top: 410px;
+  width: 340px;
 
 }
 #hero-image {
diff --git a/docs/html/design/downloads/index.jd b/docs/html/design/downloads/index.jd
index 16f5509..5ad8780 100644
--- a/docs/html/design/downloads/index.jd
+++ b/docs/html/design/downloads/index.jd
@@ -2,27 +2,12 @@
 page tags="Icons", "stencils", "color swatches"
 @jd:body
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-9">
 
-<p>Want everything? We've bundled all the downloads available on Android Design, except for the
-  <a href="#roboto">Roboto</a> font family, into a single ZIP file. You can also download
-  individual files listed below.</p>
+<p>You may use these materials without restriction to facilitate your app design
+and implementation.</p>
 
-<p>You may use these materials without restriction in your apps and to develop your apps.</p>
 
-  </div>
-  <div class="layout-content-col span-4">
-
-<p>
-  <a class="download-button" onClick="_gaq.push(['_trackEvent', 'Design', 'Download', 'All Design Assets']);"
-    href="{@docRoot}downloads/design/Android_Design_Downloads_20131106.zip">Download All</a>
-</p>
-
-  </div>
-</div>
-
-<h2 id="stencils">Stencils and Sources</h2>
+<h2 id="stencils">Phone &amp; Tablet Stencils</h2>
 
 <div class="layout-content-row">
   <div class="layout-content-col span-5">
@@ -54,6 +39,11 @@
   </div>
 </div>
 
+
+
+
+
+
 <h2 id="action-bar-icon-pack">Action Bar Icon Pack</h2>
 
 <div class="layout-content-row">
@@ -81,6 +71,76 @@
   </div>
 </div>
 
+
+
+
+
+<h2 id="Wear">Android Wear Materials</h2>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-5">
+  <h4>UI toolkit</h4>
+<p>The toolkit contains detailed specs and measurements of all of the primary Android Wear UI components. Available in PDF and Illustrator formats.</p>
+
+  </div>
+  <div class="layout-content-col span-4">
+
+    <img src="{@docRoot}design/media/downloads_wear_toolkit.png" width="220">
+
+  </div>
+  <div class="layout-content-col span-4">
+  <a class="download-button"  onClick="_gaq.push(['_trackEvent', 'Design', 'Download', 'Wear Toolkit AI']);"
+    href="{@docRoot}downloads/design/Android_Design_Stencils_Sources_20131106.zip">Adobe&reg; Illustrator&reg; Toolkit</a>
+
+  <a class="download-button"  onClick="_gaq.push(['_trackEvent', 'Design', 'Download', 'Wear Toolkit PDF']);"
+    href="{@docRoot}downloads/design/Android_Design_Stencils_Sources_20131106.zip">PDF Toolkit</a>
+  </div>
+</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-5">
+  <h4>Sample app user flows</h4>
+<p>Examples of how to chain together simple Android Wear UI components into common user flows, from simple notifications to complex interactions involving full screen activities.
+</p>
+
+  </div>
+  <div class="layout-content-col span-4">
+
+    <img src="{@docRoot}design/media/downloads_wear_flows.png" width="220">
+
+  </div>
+  <div class="layout-content-col span-4">
+  <a class="download-button"  onClick="_gaq.push(['_trackEvent', 'Design', 'Download', 'Wear Sample Flows AI']);"
+    href="{@docRoot}downloads/design/Android_Design_Stencils_Sources_20131106.zip">Adobe&reg; Illustrator&reg; App Flows</a>
+  <a class="download-button"  onClick="_gaq.push(['_trackEvent', 'Design', 'Download', 'Wear Sample Flows PDF']);"
+    href="{@docRoot}downloads/design/Android_Design_Stencils_Sources_20131106.zip">PDF App Flows</a>
+  </div>
+</div>
+
+<div class="layout-content-row">
+  <div class="layout-content-col span-5">
+  <h4>Sample app design mocks</h4>
+<p>Stream cards and UI elements for some example apps in fully editable PSD format.
+</p>
+
+  </div>
+  <div class="layout-content-col span-4">
+
+    <img src="{@docRoot}design/media/downloads_wear_psds.png" width="220">
+
+  </div>
+  <div class="layout-content-col span-4">
+  <a class="download-button"  onClick="_gaq.push(['_trackEvent', 'Design', 'Download', 'Wear Sample PSD Mocks']);"
+    href="{@docRoot}downloads/design/Android_Wear_Sample_Assets.zip">Adobe&reg; Photoshop&reg; mocks</a>
+  </div>
+</div>
+
+
+
+
+
+
+
 <h2 id="style">Style</h2>
 
 <div class="layout-content-row">
@@ -89,6 +149,7 @@
 <h4 id="roboto">Roboto</h4>
 <p>Ice Cream Sandwich introduced a new type family named Roboto, created specifically for the
 requirements of UI and high-resolution screens.</p>
+<p>For Android Wear, Roboto Condensed is the system font and the Regular and Light variants should be used by all Wear apps.</p>
 <p><a href="{@docRoot}design/style/typography.html">More on Roboto</a></p>
 <p><a href="http://www.google.com/fonts/specimen/Roboto" class="external-link">Roboto on Google Fonts</a></p>
 <p><a href="http://www.google.com/fonts/specimen/Roboto+Condensed" class="external-link">Roboto Condensed on Google Fonts</a></p>
diff --git a/docs/html/design/media/android-tv.png b/docs/html/design/media/android-tv.png
new file mode 100644
index 0000000..98005cd
--- /dev/null
+++ b/docs/html/design/media/android-tv.png
Binary files differ
diff --git a/docs/html/design/media/device_family.png b/docs/html/design/media/device_family.png
index 7889884..96b31d3 100644
--- a/docs/html/design/media/device_family.png
+++ b/docs/html/design/media/device_family.png
Binary files differ
diff --git a/docs/html/design/media/downloads_wear_flows.png b/docs/html/design/media/downloads_wear_flows.png
new file mode 100644
index 0000000..5669a2d
--- /dev/null
+++ b/docs/html/design/media/downloads_wear_flows.png
Binary files differ
diff --git a/docs/html/design/media/downloads_wear_psds.png b/docs/html/design/media/downloads_wear_psds.png
new file mode 100644
index 0000000..2b071a3
--- /dev/null
+++ b/docs/html/design/media/downloads_wear_psds.png
Binary files differ
diff --git a/docs/html/design/media/downloads_wear_toolkit.png b/docs/html/design/media/downloads_wear_toolkit.png
new file mode 100644
index 0000000..c3d30e8
--- /dev/null
+++ b/docs/html/design/media/downloads_wear_toolkit.png
Binary files differ
diff --git a/docs/html/design/media/wear/2d_picker_indicated.png b/docs/html/design/media/wear/2d_picker_indicated.png
new file mode 100644
index 0000000..d31c099
--- /dev/null
+++ b/docs/html/design/media/wear/2d_picker_indicated.png
Binary files differ
diff --git a/docs/html/design/media/wear/Bluebird.png b/docs/html/design/media/wear/Bluebird.png
index 447e643..7b911c7 100644
--- a/docs/html/design/media/wear/Bluebird.png
+++ b/docs/html/design/media/wear/Bluebird.png
Binary files differ
diff --git a/docs/html/design/media/wear/Dismissing-cards.png b/docs/html/design/media/wear/Dismissing-cards.png
new file mode 100644
index 0000000..973ef39
--- /dev/null
+++ b/docs/html/design/media/wear/Dismissing-cards.png
Binary files differ
diff --git a/docs/html/design/media/wear/appstructuresample.png b/docs/html/design/media/wear/appstructuresample.png
new file mode 100644
index 0000000..0e5b86f
--- /dev/null
+++ b/docs/html/design/media/wear/appstructuresample.png
Binary files differ
diff --git a/docs/html/design/media/wear/assets_specifics.png b/docs/html/design/media/wear/assets_specifics.png
index 35a3819..00f97d1 100644
--- a/docs/html/design/media/wear/assets_specifics.png
+++ b/docs/html/design/media/wear/assets_specifics.png
Binary files differ
diff --git a/docs/html/design/media/wear/biggesture.png b/docs/html/design/media/wear/biggesture.png
new file mode 100644
index 0000000..6c6f0cd
--- /dev/null
+++ b/docs/html/design/media/wear/biggesture.png
Binary files differ
diff --git a/docs/html/design/media/wear/fitness.png b/docs/html/design/media/wear/context_fitness.png
similarity index 100%
rename from docs/html/design/media/wear/fitness.png
rename to docs/html/design/media/wear/context_fitness.png
Binary files differ
diff --git a/docs/html/design/media/wear/context_lights.png b/docs/html/design/media/wear/context_lights.png
new file mode 100644
index 0000000..6374bdd
--- /dev/null
+++ b/docs/html/design/media/wear/context_lights.png
Binary files differ
diff --git a/docs/html/design/media/wear/contextualnotification.png b/docs/html/design/media/wear/context_running.png
similarity index 87%
rename from docs/html/design/media/wear/contextualnotification.png
rename to docs/html/design/media/wear/context_running.png
index 1ec7ac8..8b44e8c 100644
--- a/docs/html/design/media/wear/contextualnotification.png
+++ b/docs/html/design/media/wear/context_running.png
Binary files differ
diff --git a/docs/html/design/media/wear/context_workout.png b/docs/html/design/media/wear/context_workout.png
new file mode 100644
index 0000000..2ed8901
--- /dev/null
+++ b/docs/html/design/media/wear/context_workout.png
Binary files differ
diff --git a/docs/html/design/media/wear/customlayout.png b/docs/html/design/media/wear/customlayout.png
new file mode 100644
index 0000000..6a3cd9a
--- /dev/null
+++ b/docs/html/design/media/wear/customlayout.png
Binary files differ
diff --git a/docs/html/design/media/wear/five_seconds.gif b/docs/html/design/media/wear/five_seconds.gif
new file mode 100644
index 0000000..199ceb9
--- /dev/null
+++ b/docs/html/design/media/wear/five_seconds.gif
Binary files differ
diff --git a/docs/html/design/media/wear/gross_gestures.png b/docs/html/design/media/wear/gross_gestures.png
new file mode 100644
index 0000000..1faad9a
--- /dev/null
+++ b/docs/html/design/media/wear/gross_gestures.png
Binary files differ
diff --git a/docs/html/design/media/wear/peek-card.png b/docs/html/design/media/wear/peek-card.png
new file mode 100644
index 0000000..916f157
--- /dev/null
+++ b/docs/html/design/media/wear/peek-card.png
Binary files differ
diff --git a/docs/html/design/media/wear/peek_card.png b/docs/html/design/media/wear/peek_card.png
deleted file mode 100644
index 2b12297..0000000
--- a/docs/html/design/media/wear/peek_card.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/design/media/wear/round_noframe.png b/docs/html/design/media/wear/round_noframe.png
new file mode 100644
index 0000000..7a9759b
--- /dev/null
+++ b/docs/html/design/media/wear/round_noframe.png
Binary files differ
diff --git a/docs/html/design/media/wear/separate-info-cards.png b/docs/html/design/media/wear/separate-info-cards.png
new file mode 100644
index 0000000..59ee084
--- /dev/null
+++ b/docs/html/design/media/wear/separate-info-cards.png
Binary files differ
diff --git a/docs/html/design/media/wear/vision_music.png b/docs/html/design/media/wear/vision_music.png
new file mode 100644
index 0000000..b676d20
--- /dev/null
+++ b/docs/html/design/media/wear/vision_music.png
Binary files differ
diff --git a/docs/html/design/media/wear/vision_navigation.png b/docs/html/design/media/wear/vision_navigation.png
new file mode 100644
index 0000000..ef56977
--- /dev/null
+++ b/docs/html/design/media/wear/vision_navigation.png
Binary files differ
diff --git a/docs/html/design/media/wear/vision_traffic.png b/docs/html/design/media/wear/vision_traffic.png
new file mode 100644
index 0000000..2affa22
--- /dev/null
+++ b/docs/html/design/media/wear/vision_traffic.png
Binary files differ
diff --git a/docs/html/design/media/wear/vision_voice.png b/docs/html/design/media/wear/vision_voice.png
new file mode 100644
index 0000000..25fd49e
--- /dev/null
+++ b/docs/html/design/media/wear/vision_voice.png
Binary files differ
diff --git a/docs/html/design/media/wear/wear_checkin.png b/docs/html/design/media/wear/wear_checkin.png
new file mode 100644
index 0000000..9aeb267
--- /dev/null
+++ b/docs/html/design/media/wear/wear_checkin.png
Binary files differ
diff --git a/docs/html/design/tv/index.jd b/docs/html/design/tv/index.jd
index 5534724..d144ff0 100644
--- a/docs/html/design/tv/index.jd
+++ b/docs/html/design/tv/index.jd
@@ -1,9 +1,9 @@
-page.title=TV
+page.title=Android TV
 @jd:body
 
 
-<img src="{@docRoot}preview/tv/design/images/atv-home.jpg"
-  width="460" height="283" style="float:right;margin:0 0 40px 40px" /> 
+<img src="{@docRoot}design/media/android-tv.png"
+  width="460" style="float:right;margin:0 0 40px 40px" /> 
 
 
 <p>Android TV is <strong>coming soon</strong> and lets you engage your users in a new, shared environment.</p>
diff --git a/docs/html/design/wear/creative-vision.jd b/docs/html/design/wear/creative-vision.jd
index 4530744..aee115c 100644
--- a/docs/html/design/wear/creative-vision.jd
+++ b/docs/html/design/wear/creative-vision.jd
@@ -1,34 +1,54 @@
-page.title=Creative Vision for Wear
+page.title=Creative Vision for Android Wear
 @jd:body
 
+<style>
+div.span-13 {
+  margin:10px 0;
+}
+div.span-13 img {
+  float:left;
+  margin:2px 20px 40px 0;
+}
+div.span-13 p {
+  margin-left:167px;
+}
+div.span-13 h2 {
+  margin-top:0;
+  }
+</style>
 
 <p>Android Wear devices provide just the right information at just the right time,
 allowing users to be more connected to both the virtual world and the real world. Great Android
 Wear experiences are:</p>
 
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-    <h4>Launched automatically</h4>
+  <div class="layout-content-col span-13">
+    <img src="{@docRoot}design/media/wear/vision_traffic.png" width="147" height="147" />
+
+    <h2 id="Launched">Launched automatically</h2>
     <p>Most people are used to launching apps by clicking an icon. Android Wear is different. Wearable apps are aware of the user’s context - time, location, physical activity, and so on. The apps use this information to insert cards into the stream when they become relevant. This makes Android Wear timely, relevant and very specific.</p>
   </div>
-  <div class="layout-content-col span-6" style="margin-left:75px">
-  <h4>Glanceable</h4>
-  <p>A classic wrist watch is designed to let you see the time in a split second and get on with what you were doing. Designing for Android Wear is no different. The less time it takes to use your software, the more time the user can be present in whatever they are doing. Android wear is fast, sharp and immediate.</p>
-  </div>
-</div>
 
+  <div class="layout-content-col span-13">
+    <img src="{@docRoot}design/media/wear/vision_navigation.png" width="147" height="147" />
 
-<div class="layout-content-row">
-  <div class="layout-content-col span-6">
-  <h4>Zero or low interaction</h4>
-  <p>Staying true to the strengths afforded by a smaller form factor, Android Wear focuses on simple interactions, only requiring input by the user when absolutely necessary. Most inputs are based around touch swipes or voice, and inputs requiring fine-grained finger movements are avoided. Android Wear is gestural, simple, and fast.</p>
+    <h2 id="Glanceable">Glanceable</h2>
+    <p>A classic wrist watch is designed to let you see the time in a split second and get on with what you were doing. Designing for Android Wear is no different. The less time it takes to use your software, the more time the user can be present in whatever they are doing. Android wear is fast, sharp and immediate.</p>
   </div>
-  <div class="layout-content-col span-6" style="margin-left:75px">
-  <h4>All about suggest and demand</h4>
-  <p>Android Wear is like a great personal assistant: it knows you and your preferences, it only interrupts you when absolutely necessary, and it’s always on hand to provide a ready answer. Android Wear is helpful, respectful, and responsive.</p>
+
+  <div class="layout-content-col span-13">
+    <img src="{@docRoot}design/media/wear/vision_voice.png" width="147" height="147" style="border: 1px solid #ddd;" />
+
+    <h2 id="SuggestDemand">All about suggest and demand</h2>
+    <p>Android Wear is like a great personal assistant: it knows you and your preferences, it only interrupts you when absolutely necessary, and it’s always on hand to provide a ready answer. Android Wear is helpful, respectful, and responsive.</p>
   </div>
-</div>
+
+  <div class="layout-content-col span-13">
+    <img src="{@docRoot}design/media/wear/vision_music.png" width="147" height="147" />
+
+    <h2 id="Interaction">Zero or low interaction</h2>
+    <p>Staying true to the strengths afforded by a smaller form factor, Android Wear focuses on simple interactions, only requiring input by the user when absolutely necessary. Most inputs are based around touch swipes or voice, and inputs requiring fine-grained finger movements are avoided. Android Wear is gestural, simple, and fast.</p>
+  </div>
 
 <p>By providing a smart connection to the rest of the world while respecting the user’s attention, Android Wear feels personal and global, simple and smart, unobtrusive and ever-ready. Applications that represent these principles will feel most at home in the overall Android Wear experience.</p>
 
diff --git a/docs/html/design/wear/index.jd b/docs/html/design/wear/index.jd
index 3536445..d6202d1 100644
--- a/docs/html/design/wear/index.jd
+++ b/docs/html/design/wear/index.jd
@@ -1,9 +1,9 @@
-page.title=Wear
+page.title=Android Wear
 @jd:body
 
 
 
-<p>Designing apps for wearables powered by Android Wear
+<p>Designing apps for wearable devices powered by Android Wear
 is substantially different than designing for phones or
 tablets: different strengths and weaknesses, different use cases, different ergonomics.
 To get started, you should understand the overall vision for the Android Wear experience,
@@ -26,7 +26,9 @@
 
 <p>This UI model ensures that users don’t have to launch many different applications to check for updates; they can simply glance at their stream for a brief update on what’s important to them.</p>
 
-<p>Cards in the stream are more than simple notifications. They can be swiped horizontally to reveal additional pages. Further horizontal swiping may reveal buttons, allowing the user to take action on the notification. Cards can also be dismissed by swiping left to right, removing them from the stream until the next time the app has useful information to display.</p>
+<p>Cards in the stream are more than simple notifications. They can be swiped horizontally to reveal additional
+<a href="{@docRoot}design/wear/patterns.html#Pages">pages</a>. Further horizontal swiping may reveal
+<a href="{@docRoot}design/wear/patterns.html#Actions">buttons</a>, allowing the user to take action on the notification. Cards can also be dismissed by swiping left to right, removing them from the stream until the next time the app has useful information to display.</p>
 
 
 
diff --git a/docs/html/design/wear/patterns.jd b/docs/html/design/wear/patterns.jd
index 8f4698c..274b62f 100644
--- a/docs/html/design/wear/patterns.jd
+++ b/docs/html/design/wear/patterns.jd
@@ -1,26 +1,22 @@
-page.title=UI Patterns for Wear
+page.title=UI Patterns for Android Wear
 @jd:body
 
 
 
 <p>Android Wear is used for micro-interactions, and so adhering to consistent design patterns that users are already accustomed to is paramount.</p>
 
-<h2>Cards</h2>
+<h2 id="Cards">Cards</h2>
 
 <p>Cards in the stream can take slightly different forms:</p>
 
-<div class="framed-wear-square-small" style="float:left;margin:0 20px 20px 0">
-  <img src="{@docRoot}design/media/wear/Bluebird.png">
-</div>
+  <img src="{@docRoot}design/media/wear/Bluebird.png" width="147" height="147" style="float:left;margin:0 0 20px 0px">
 
-<div class="framed-wear-square-small" style="float:left;margin:0 20px 20px 0">
-  <img src="{@docRoot}design/media/wear/single_action_controls.jpg">
-</div>
 
-<div class="framed-wear-square-small" style="float:left;margin:0 20px 20px 0">
-  <img src="{@docRoot}design/media/wear/expandable_stacks.png">
-</div>
-                
+  <img src="{@docRoot}design/media/wear/single_action_controls.jpg" width="147" height="147" style="float:left;margin:0 0 20px 40px">
+
+
+  <img src="{@docRoot}design/media/wear/expandable_stacks.png" width="147" height="147" style="float:left;margin:0 0 20px 40px">
+
 <ul style="clear:both">
 <li>Standard cards for displaying information from a notification</li>
 <li>Single-action controls (such as a play/pause toggle)</li>
@@ -28,28 +24,27 @@
 </ul>
 
 
-<h2>App icons</h2>
+<h2 id="Icons">App icons</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 60px">
-  <img src="{@docRoot}design/media/wear/clear_bold_type.jpg">
-</div>
+  <img src="{@docRoot}design/media/wear/clear_bold_type.jpg" width="147" height="147" style="float:right;margin:0 0 20px 40px">
 
 <p>App icons appear in a fixed position overhanging the edge at the top right of the card by default for all notifications in the Context Stream. This is an opportunity for cards to be recognized as coming from a specific source. Photo backgrounds should be used only to convey information, not to brand a card. App icons are necessary only on the leftmost card; it is not necessary to add the app icon to pages.</p>
 
-<h2 style="clear:both">Pages</h2>
+<h2 id="Pages" style="clear:both">Pages</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/separate_info_cards_2.jpg">
-</div>
-
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/separate_info_cards_1.jpg">
-</div>
+  <img src="{@docRoot}design/media/wear/separate-info-cards.png" height="147" style="float:right;margin:0 0 20px 40px">
 
 <p>Supplementary information should be displayed on additional cards to the right of a main Context Stream card. In most cases one additional detail card should be sufficient. For example, a weather card might show the weather for the current location today, with subsequent days listed in an additional card to the right. Keep the number of detail cards as low as possible. Actions (see below) should always come after pages; don’t change the order or interleave them.</p>
 
 
-<h2 style="clear:both">Dismissing cards</h2>
+<a class="notice-developers left" href="{@docRoot}training/wearables/notifications/pages.html">
+  <div>
+    <h3>Developer Docs</h3>
+    <p>Adding Pages to a Notification</p>
+  </div>
+</a>
+
+<h2 id="Dismissing" style="clear:both">Dismissing cards</h2>
 
   <img src="{@docRoot}design/media/wear/dismiss_cards.png" height="147">
 
@@ -57,24 +52,20 @@
 
 
 
-<h2 style="clear:both">Action buttons</h2>
+<h2 id="Actions" style="clear:both">Action buttons</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/action_button.png">
-</div>
+  <img src="{@docRoot}design/media/wear/action_button.png" width="147" height="147" style="float:right;margin:0 0 20px 40px">
 
 <p>Where the user may need to take action on the information shown in a notification, you can provide action buttons. These are system-rendered buttons that appear to the right of detail cards. They consist of a white icon set on a blue system-rendered circular button and a short caption with a verb. Actions should be limited to three for a single card row.</p>
 
-<p>Tapping on an action button can cause an action to be executed; or an action to be continued on the companion handheld; or a full screen activity to be invoked for further input (see “2D Picker” section below).</p>
+<p>Tapping on an action button can cause an action to be executed; or an action to be continued on the companion handheld; or a full screen activity to be invoked for further input (see the <a href="#2DPicker">2D Picker</a> section below).</p>
 
-<p>Refer to the UI Toolkit provided in the Downloads section for detailed specs regarding action icons.</p>
+<p>Refer to the UI Toolkit provided in the <a href="{@docRoot}design/downloads/index.html#Wear">Downloads</a> page for detailed specs regarding action icons.</p>
 
 
-<h2 style="clear:both">Action countdown and confirmation</h2>
+<h2 id="Countdown" style="clear:both">Action countdown and confirmation</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/countdown.png">
-</div>
+  <img src="{@docRoot}design/media/wear/countdown.png" width="149" height="149" style="float:right;margin:0 0 20px 40px">
 
 <p>Where tapping on an action button results in an action being executed, one of the following can happen:</p>
 
@@ -86,20 +77,16 @@
 </ol>
 
 
-<h2 style="clear:both">Continuing activities on phone</h2>
+<h2 id="Continuing" style="clear:both">Continuing activities on phone</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/continue_phone.png">
-</div>
+  <img src="{@docRoot}design/media/wear/continue_phone.png" width="147" height="147" style="float:right;margin:0 0 20px 40px">
 
 <p>Developers should attempt to perform actions on the wearable device wherever possible. In cases where the phone must be used, a generic animation should be played once the action button has been tapped and the corresponding Android app will open on the phone.</p>
 
 
-<h2 style="clear:both">Actions on cards (such as media controls)</h2>
+<h2 id="ActionOnCard" style="clear:both">Actions on cards (such as media controls)</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/action_on_card.png">
-</div>
+  <img src="{@docRoot}design/media/wear/action_on_card.png" width="147" height="147" style="float:right;margin:0 0 20px 40px">
 
 <p>Some cards may benefit from having tappable actions directly on a card. Some guidance on when to use this pattern versus using an action button:</p>
 
@@ -113,14 +100,20 @@
 <p>Good examples of using an action on card include: play / pause music; toggle light switch on and off; navigate to an address; call a phone number.</p>
 
 
-<h2 style="clear:both">Card stacks</h2>
-<img src="/wear/images/11_bundles_B.png" height="200" width="169" style="float:right;margin:0 0 20px 40px" alt="">
-<img src="/wear/images/11_bundles_A.png" height="200" width="169" style="float:right;margin:0 0 20px 40px" alt="">
+<h2 id="Stacks" style="clear:both">Card stacks</h2>
+  <img src="{@docRoot}design/media/wear/expandable_stacks.png" width="147" height="147" style="float:right;margin:0 0 20px 40px">
 <p>Card stacks group related cards together and allow them to be progressively expanded vertically in the stream. A tap on a stack fans the cards out so that the top edge of each card can be seen. A subsequent tap on a fanned card reveals that card fully. Stacks of cards revert to a fully collapsed state once the user has swiped away from them.</p>
 
 
+<a class="notice-developers left" style="clear:none" href="{@docRoot}training/wearables/notifications/stacks.html">
+  <div>
+    <h3>Developer Docs</h3>
+    <p>Stacking Notifications</p>
+  </div>
+</a>
 
-<h2 style="clear:both">2D Picker</h2>
+
+<h2 id="2DPicker" style="clear:both">2D Picker</h2>
 
 <p>A 2D Picker component in your app can be invoked from the cue card or from an action button. It allows users to choose from a list of items, and optionally select an attribute of each item. For example, in response to a voice action to “buy tickets to a movie tonight,” you could show a 2D Picker with a vertical list of movies playing, with each movie having a horizontal list of showtimes.</p>
 
@@ -128,23 +121,29 @@
 
 <p>In some instances, further information may be required. In these cases, the most probable default values for these choices should be chosen on the user’s behalf with the option to edit before completing the action. This pattern is in keeping with Android Wear’s core design principle of minimizing interactions required.</p>
 
+<p>More information about how to use the 2D Picker pattern is provided in the <a href="{@docRoot}design/wear/structure.html#2DPicker">App Structure</a> guide.</p>
 
-<h2 style="clear:both">Voice commands</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/voice_commands.png">
-</div>
+<h2 id="Voice" style="clear:both">Voice commands</h2>
+
+  <img src="{@docRoot}design/media/wear/voice_commands.png" width="147" height="147" style="float:right;margin:0 0 20px 40px">
 
 <p>It is possible for apps to take action in response to Android voice commands that invoke intents. For example, an app can register for the “Take a note” intent and capture the subsequent voice input for processing. In the case where multiple apps registered for the same intent, user preference will be captured once and saved. Users can edit their intent preferences in the Android Wear app on their handheld.</p>
 
-
-<h2 style="clear:both">Selection List</h2>
-
-<div class="framed-wear-square-small" style="float:right;margin:0 0 20px 40px">
-  <img src="{@docRoot}design/media/wear/selection_list.png">
-</div>
-
-<p>Choosing an item from a list is a common interaction. The Selection List pattern (available as the WearableListView component) creates a simple list optimized for ease of use on a small screen: the focused item snaps to the center of the screen, and a single tap selects. This widget is recommended as a common pattern for selecting items. It is used throughout the system UI, including in the list that can be accessed by swiping up on the cue card.</p>
+<a class="notice-developers left" style="clear:none" href="{@docRoot}training/wearables/apps/voice.html">
+  <div>
+    <h3>Developer Docs</h3>
+    <p>Adding Voice Capabilities</p>
+  </div>
+</a>
 
 
-<p>Of course, it is possible for Android Wear apps to extend themselves beyond the familiarities of these patterns. For a deeper look at the options available, see the section on App Structure.</p>
+<h2 id="Selection" style="clear:both">Selection List</h2>
+
+  <img src="{@docRoot}design/media/wear/selection_list.png" width="147" height="147" style="float:right;margin:0 0 20px 40px;border:1px solid #ddd">
+
+<p>Choosing an item from a list is a common interaction. The Selection List pattern (available as the <a
+href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary"><code>WearableListView</code></a> component) creates a simple list optimized for ease of use on a small screen: the focused item snaps to the center of the screen, and a single tap selects. This widget is recommended as a common pattern for selecting items. It is used throughout the system UI, including in the list that can be accessed by swiping up on the cue card.</p>
+
+
+<p>Of course, it is possible for Android Wear apps to extend themselves beyond the familiarities of these patterns. For a deeper look at the options available, see the <a href="{@docRoot}design/wear/structure.html">App Structure</a> guide.</p>
diff --git a/docs/html/design/wear/principles.jd b/docs/html/design/wear/principles.jd
index a214435..6286a92 100644
--- a/docs/html/design/wear/principles.jd
+++ b/docs/html/design/wear/principles.jd
@@ -1,10 +1,18 @@
-page.title=Design Principles for Wear
+page.title=Design Principles for Android Wear
 @jd:body
 
 <style>
 p.try {
-  background:#e4e4e4;
-  padding:10px;
+  color:#888;
+}
+p.try b {
+font-size: 22px;
+font-weight: 200;
+padding: 0 0 5px;
+display: block;
+}
+h2 {
+  margin-top:50px;
 }
 </style>
 
@@ -13,40 +21,55 @@
 
 
 <h2>Focus on not stopping the user and all else will follow</h2>
+
+<img src="{@docRoot}design/media/wear/five_seconds.gif" height="147" style="float:right;margin:10px 0 0 40px" />
+<p class="img-caption" style="width:315px;float:right;clear:right;margin:5px 0 30px 40px">
+The time required for each action on the left is 5 seconds.</p>
+
 <p>A watch is a perfect form factor for a device that you can use while doing something else, such as cooking, eating, walking, running, or even having a conversation. If using your wearable app causes the user to stop whatever they’re doing, it’s a good occasion to consider how to improve it using the principles in this section.</p>
 
-<p class="try"><strong>Try this:</strong> Time a typical use of your Wear app. If using it takes more than 5 seconds, you should think about making your app more focused. Also try using your app while you’re having a conversation, and see how it affects your train of thought and eye contact.</p>
+<p class="try" ><b>Try this:</b> Time a typical use of your Wear app. If using it takes more than 5 seconds, you should think about making your app more focused. Also try using your app while you’re having a conversation, and see how it affects your train of thought and eye contact.</p>
 
 
-<h2>Design for big gestures</h2>
+<h2 id="BigGestures">Design for big gestures</h2>
+
+<img src="{@docRoot}design/media/wear/biggesture.png" alt="" height="147" style="float:right;margin:10px 0 0 40px" />
+<p class="img-caption" style="width:315px;float:right;clear:right;margin:5px 0 30px 40px">
+Use few and large touch targets.</p>
 
 <p>When you swipe through photos on your phone you’re using a large area of the display, and you don’t have to be precise at all. That’s the best kind of interaction for a wearable device. Your users are going to use your app in all sorts of situations, the least frequent one might actually be sitting down at their desk.</p>
 
-<p class="try"><strong>Try this:</strong> Use your app in various everyday situations, such as walking, eating, talking to people, or ordering coffee. If you have to slow down while walking or stop the conversation to be precise, you should consider how your gestures could be bigger.</p>
+<p class="try"><b>Try this:</b> Use your app in various everyday situations, such as walking, eating, talking to people, or ordering coffee. If you have to slow down while walking or stop the conversation to be precise, you should consider how your gestures could be bigger.</p>
 
-<h2>Think about stream cards first</h2>
+
+<h2 id="CardsFirst">Think about stream cards first</h2>
+
+<p class="img-caption" style="width:150px;float:right;clear:right;margin:10px 0 30px 25px">An app that offers to check in users could appear in the stream suggesting the most likely place nearby, after a certain amount of time.</p>
+
+<img src="{@docRoot}design/media/wear/wear_checkin.png" style="float:right;margin:10px 0 40px 40px" width="147" height="147">
+
 <p>The best experience on a wearable device is when the right content is there just when the user needs it. You can figure out when to show your cards with sensors, or events happening in the cloud. For the cases where it’s impossible to know when the user needs your app, you can rely on a voice action or touch.</p>
 
-<p class="try"><strong>Try this:</strong> Make a list of all the situations a user would find your app useful. What do they have in common? Same location? Time of day? Certain physical activities? You will most likely come up with several different situations - that’s a good sign, because it means that you can specialize your cards to those situations. Remember that the user always has the option of completely muting your stream cards if they feel they aren’t relevant enough.</p>
+<p class="try"><b>Try this:</b> Make a list of all the situations a user would find your app useful. What do they have in common? Same location? Time of day? Certain physical activities? You will most likely come up with several different situations - that’s a good sign, because it means that you can specialize your cards to those situations. Remember that the user always has the option of completely muting your stream cards if they feel they aren’t relevant enough.</p>
 
 
-<p>[image] </p>
-<p class="img-caption">An app that offers to check in users could appear in the stream suggesting the most likely place nearby, after a certain amount of time.</p>
 
+<h2 id="Fast">Do one thing, really fast</h2>
 
-<h2>Do one thing, really fast</h2>
 <p>While users will engage with your app for only a few seconds at time, they'll use it many times throughout the day. A well-designed stream card carries one bit of information and potentially offers a few action buttons when the user swipes over.</p>
 
-<p class="try"><strong>Try this:</strong> How many bits of information is there in your design? Is everything absolutely necessary, or could you split it up into separate cards? If you’re designing a card, don’t forget that you can use multiple pages.</p>
+<p class="try"><b>Try this:</b> How many bits of information is there in your design? Is everything absolutely necessary, or could you split it up into separate cards? If you’re designing a card, don’t forget that you can use multiple pages.</p>
 
 
-<h2>Design for the corner of the eye</h2>
+<h2 id="CornerOfEye">Design for the corner of the eye</h2>
+
 <p>The longer the user is looking at your app, the more you are pulling them out of the real world. Thinking about how to design your app for glanceability can vastly help the user get full value from your app and quickly go back to what they were doing.</p>
 
-<p class="try"><strong>Try this:</strong> To view your app with your peripheral vision, try focusing on your knuckles while your watch is displaying the app. Do you get a sense of what it is trying to do? Is it distinguishable from other apps? Does the background image help conveying the message? Does it use photos or a distinct shape and color?</p>
+<p class="try"><b>Try this:</b> To view your app with your peripheral vision, try focusing on your knuckles while your watch is displaying the app. Do you get a sense of what it is trying to do? Is it distinguishable from other apps? Does the background image help conveying the message? Does it use photos or a distinct shape and color?</p>
 
-<h2>
-Don’t be a constant shoulder tapper</h2>
+
+<h2 id="Tapper">Don’t be a constant shoulder tapper</h2>
+
 <p>A watch constantly touches the user’s skin. Being this intimate, you want to buzz the watch fewer times than you’re used to on the phone.</p>
 
-<p class="try"><strong>Try this:</strong> Next time you’re in a conversation, imagine someone tapping you your shoulder, interrupting you with the information you want your app to deliver. If the information delivered did not justify suspending a conversation, you should not make the notification interruptive.</p>
\ No newline at end of file
+<p class="try"><b>Try this:</b> Next time you’re in a conversation, imagine someone tapping you your shoulder, interrupting you with the information you want your app to deliver. If the information delivered did not justify suspending a conversation, you should not make the notification interruptive.</p>
\ No newline at end of file
diff --git a/docs/html/design/wear/structure.jd b/docs/html/design/wear/structure.jd
index caeb119..f5ed49d 100644
--- a/docs/html/design/wear/structure.jd
+++ b/docs/html/design/wear/structure.jd
@@ -1,78 +1,69 @@
-page.title=App Structure for Wear
+page.title=App Structure for Android Wear
 @jd:body
 
 
-<p>As outlined in the <a href="{@docRoot}design/wear/creative-vision.html">Creative Vision</a>,
-Android Wear apps do not adhere to the traditional mobile app model of touching an icon to launch into a self-contained experience. Rather, it is useful to think about the different spaces in the Android Wear UI and how your app might present itself across these spaces. For example, a typical app might begin by showing a notification card in the stream at a contextually relevant moment, then jump into a custom full screen UI for a micro-interaction, or maybe open the cue card to capture voice input that is then relayed back to the in-stream card.</p>
+<p>Users are used to tapping icons to launch apps. Android Wear is different. A typical Wear app adds a card to the stream at a contextually relevant moment. It might have a button that opens a full screen view for a fast micro interaction, like below, but it just as well might not.
+</p>
 
-<p>It’s important to make some fundamental decisions about how your users will interact with your app. There are a number of ways that functionality can manifest itself in Android Wear, and it is important to choose the places that provide maximum value and ease of use.</p>
+<img src="{@docRoot}design/media/wear/appstructuresample.png" alt="" />
 
-<p>For example, application functionality might show up in the following ways:</p>
+<p>These are the building blocks, ordered by simplicity. You can use one of them or some of them, but we strongly recommend not building apps the user has to launch and quit before thinking really hard about how you could react to a specific location, activity, time of day, or something happening in the cloud.</p>
+
 
 <ul>
-  <li>As a <strong>card in the main context stream</strong>:
+  <li><strong>Contextual card in the stream</strong>:
   <ul>
-    <li><strong>Bridged notifications</strong> are pushed to the wearable from the connected handheld (a phone or tablet) using the standard Android notifications framework. In general, bridged notifications mirror what’s happening on the handheld and use one of a predefined layout templates. Example: new message notification.
-    <li><strong>Contextual notifications</strong> are like smart notifications. They are generated locally on the wearable and appear at contextually relevant moments specificed by the app developer. Contextual notifications allow more freedom of control, allowing for custom layouts and dynamic updating of card contents. Example: live updating exercise stats.
+    <li><a href="#Bridged"><strong>Bridged notifications</strong></a> are pushed to the wearable from the connected handheld such as new message notifications, using standard Android notifications. These require little or no code on the wearable.
+    <li><a href="#Contextual"><strong>Contextual notifications</strong></a> are generated locally on the wearable and appear at contextually relevant moments such as an exercise card that appears when you’re going on a run. You can do more with this kind of card than with a notification bridged from the handheld.
   </ul>
   </li>
-  <li>As a <strong>full screen UI</strong> that temporarily overlays on top of the context stream:
+  <li><strong>Full screen UI app</strong>:
   <ul>
-    <li>The <strong>2D Picker</strong> is a simple design pattern (available in the SDK as a prebuilt component) aimed at asking the user to select from a set of items. This is a common interaction and a familiar pattern, so use of the familiar 2D Picker pattern is encouraged wherever possible. Example: choose from a set of artists and albums to play.
-    <li><strong>Custom layouts</strong> are also possible where apps need to extend beyond the basic card/stream metaphor. These apps should be distinctly separate from the core user experience in both appearance and interaction.</li>
+    <li><a href="#2DPicker"><strong>2D Picker</strong></a> is design pattern that allows the user to select from a set of items, such as choosing artists and then albums. We recommend using this pre-built component from the SDK whenever relevant.
+    <li><a href="#Custom"><strong>Custom layouts</strong></a> are also possible where apps need to extend beyond the basic card/stream metaphor.</li>
   </ul>
   </li>
 </ul>
 
-
-<p>Apps can also open the cue card to capture voice input.</p>
-
-<p>Note that the different approaches above are listed in order of complexity. When designing your interactions, try to achieve them with the simplest approach possible. If your needs are more involved, move to the next level of complexity.</p>
-
 <p>Many applications will consist of a combination of these views, possibly with connections between them. For example, a contextual card may have an action that launches a more immersive experience. Inversely, an immersive experience may result in a card being added to the stream.</p>
 
-<p>Think of these different components as building blocks that can be snapped together into a single user flow. Avoid single monolithic full screen UIs that need to be launched and quit. Place simple notifications and ongoing information in the stream, and jump in and out of simple full screen activities to complete quick tasks before returning to the stream.</p>
-
-<p>In this section we will look at these different approaches and how combine them to create the best experience for your users.</p>
-
 
 <h2 id="Bridged">Bridged Notifications</h2>
 
-<div class="framed-wear-square-small" style="float:right;margin:0 -22px 60px 40px">
-  <img src="{@docRoot}design/media/wear/bridgednotifications.jpg">
-</div>
+<img src="{@docRoot}design/media/wear/bridgednotifications.jpg" height="147" style="float:right;margin:0 0 20px 20px" alt="">
+<img src="{@docRoot}design/media/wear/Bluebird.png" height="147" style="float:right;margin:0 0 20px 40px" alt="">
 
-<p>Bridged notifications are the simplest way of having content appear on an Android wearable. Since cards in the Android Wear stream are synced from the notifications on your connected handheld, any notifications created there automatically appear on Android Wear. Where appropriate, make sure to use the new APIs in the support library that enhance your app's notifications with features such as voice replies and notification pages.</p>
+<p>This is the simplest way to get on Android Wear. In fact, your app already does this if it uses notifications. You can add Wear-specific features like extra pages and voice replies by using the new notification APIs. </p>
+
+<a class="notice-developers left" style="clear:none" href="{@docRoot}training/wearables/notifications/creating.html">
+  <div>
+    <h3>Developer Docs</h3>
+    <p>Creating a Notification</p>
+  </div>
+</a>
+
+
+<h2 id="Contextual" style="clear:both">Contextual Notifications</h2>
+
+
+<img src="{@docRoot}design/media/wear/context_workout.png" width="323" height="147" style="float:right;margin:0 0 20px 40px;clear:right" alt="" />
+<img src="{@docRoot}design/media/wear/context_lights.png" width="323" height="147" style="float:right;margin:0 0 20px 40px;clear:right" alt="" />
+
+<p>This is what Android Wear does best; showing users information just when they need it.</p>
+
+<p>Here’s how it works: Your app knows when it is relevant for the user, and when it happens, you trigger a contextual notification. Maybe you’re building a running app that’s relevant when the user is running. Maybe it’s a museum guide that’s relevant when the user is visiting a particular museum. Check out the design principles for more on thinking about your app contextually. </p>
+
+<p>Getting contextual triggering right is one of the most impactful things you can do to craft a great user experience. </p>
+
+<p>The easiest way to do this is to use standard templates for Android notifications. If you decide to make your own ActivityView, we strongly recommend you take a look at the <a href="{@docRoot}design/wear/style.html">Style</a> guide to make sure you stay consistent with the rest of the device. </p>
+
+<p>Don’t forget to test your triggering thoroughly. Triggering too often can be so annoying that users might end up blocking all your notifications. </p>
 
 
 
-<h2 id="Contextual">Contextual Notifications</h2>
+<h2 id="2DPicker">2D Picker</h2>
 
-<p>Displaying information on contextual cards is at the core of the Android Wear user experience. Cards with focused trigger criteria appear at just the right time, delighting and assisting the user with timely, useful content. Refer to the Design principles section for details on how to think about triggering cards, and the UI overview section for a breakdown of the familiar system UI components that make up an entry in the context stream.</p>
-
-<p>An important aspect of creating contextual notifications is defining trigger conditions: what is the specific scenario in which your notification should appear? Think about using all sensor information available to you -- time, location, movement, identity, user habits and patterns, interaction with nearby devices, and more -- and describe the specific combination of sensor readings that should result in your app presenting itself.</p>
-
-
-<img src="{@docRoot}design/media/wear/contextualnotification.png" width="500" alt="" />
-
-
-<p>For example, imagine you were building a running app. If the user is standing at the beginning of their regular running trail, at the time that they often go for a run, and we detect a running activity... they are probably going for a run! This would be a great time to present a contextual card that offers to track their run.</p>
-
-<p>Putting effort into getting your contextual triggering just right is one of the most impactful things you can do to create a delightful experience for your users.</p>
-
-<p>You may use the standard Android notifications framework to create cards using a range of provided templates, or draw your own ActivityView inside cards for a custom card layout. Make sure to refer to the Style section to make sure your custom ActivityView layouts are sympathetic to the overall design of cards in the stream. Use ActivityViews to create custom card layouts that are stylistically consistent with neighboring cards in the stream; do not invent entirely new or conflicting UI patterns inside cards.</p>
-
-<p>Contextual cards are ideal for situations where it may be useful to push information to the user, when the information may be useful on an ongoing basis or referred back to, or when context strongly indicates that the information is useful. Refer to the section on Respecting Users Attention in the Design Principles section for details on targeted triggering. Triggering too often or in unsuitable contexts will result in users being annoyed by your app.</p>
-
-
-
-<h2 id="Picker">2D Picker</h2>
-
-<p>The 2D Picker design pattern (available as the GridViewPager component) is useful for showing a range of options or asking a user to make a quick selection. Google search results on Android Wear are a great example of the GridViewPager pattern in action.</p>
-
-<p>A 2D Picker is called up as an overlay on the main UI by tapping a card or button, or through a voice action. It preserves the same look and feel as the main context stream, giving users a familiar and predictable set of interaction patterns to rely on.</p>
-
-<p>On Android Wear, the basic hierarchy is vertical-then-horizontal, never horizontal-then-vertical, with a recommended vertical limit of five cards. Each vertical slot may consist of one card, as in the Google results case, or multiple cards which may be swiped horizontally.</p>
+<p>The 2D Picker design pattern (available as the <a href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary">GridViewPager component</a>) is useful for showing a range of options or asking a user to make a quick selection. Google search results on Android Wear are a great example of the GridViewPager pattern in action.</p>
 
 <img src="{@docRoot}design/media/wear/1D_picker.png" alt="" width="499px" />
 <p class="img-caption">This pattern can be used to present a single vertical list, or a “1D Picker”</p>
@@ -80,37 +71,60 @@
 <img src="{@docRoot}design/media/wear/2D_picker.png" alt="" width:760px" />
 <p class="img-caption">It can also be used as a 2D matrix of options, as a way of presenting categorized options.</p>
 
-<p>This flexibility means that developers can choose to present a one or two-dimensional set of options. For example, a music app could use a vertical list to present a list of albums by a given artist (one dimension of options), and it could additionally allow each album slot to be horizontally swipeable to also choose a song from each album (a second dimension of options).</p>
 
-<p>Do not add buttons or pages to horizontal 2D Picker rows; rows should only be used to present a list or grid of similar options in this context. Provide a clear call to action on the card using the Action cards pattern detailed in the <a href="{@docRoot}design/wear/patterns.html">UI Patterns</a> guide.</p>
+<img src="{@docRoot}design/media/wear/2d_picker_indicated.png" alt="" width="760px" />
+<p class="img-caption">Navigation should be vertical-then-horizontal, not horizontal-then-vertical, and limit the the vertical set to around five cards.</p>
 
+
+<h3>Actions</h3>
+<p>For actions on each cards, use the <a href="{@docRoot}design/wear/patterns.html#Actions">Action cards pattern</a>.</p>
+
+
+<h3>Exiting</h3>
 <p>2D Picker should be automatically dismissed when a selection is made. It may also be exited by swiping back down on the first card, or by swiping left to right on a leftmost card.</p>
 
-<p>The simplicity of individual cards within a 2D Picker is a feature. Remember that in many cases the user may be on the go or attempting to complete a task as quickly as possible. As such, micro-interactions and familiar input mechanism are paramount, and using the already-familiar pattern of vertically-then-horizontally oriented cards gives users exactly what they want with as little fuss as possible. Strive to minimize the number of results or options that you present. Show the most popular or repeatedly-used options at the top of the list of cards to avoid scrolling. Learn the user's preferences and use context detection to put the most likely option for any given situation at the top. In general, optimize for fast task completion over excessive customization.</p>
+<h3>Making it fast</h3>
+<p>A few of our favorite tips on how to make the 2D picker really fast for your users:</p>
+<ul>
+<li>Minimize the number of cards</li>
+<li>Show the most popular card at the top </li>
+<li>Keep the cards extremely simple</li>
+<li>Optimize for speed over customization</li>
+
+</ul>
 
 
 
-<h2 id="Custom">Custom Layouts</h2>
+<h2 id="Custom">Breaking out of the card (with custom layouts)</h2>
 
-<p>Some interactions may require a broader range of input mechanisms than is possible within the limitations of a card-based UI. For example, an app that allows for location selection may require the user to swipe in many directions before tapping to drop a pin. In cases like this, it is recommended to momentarily launch out of the context stream UI and present an immersive, full screen app with a custom layout.</p>
-
-<p>Custom full screen apps provides the benefit of flexibility: you can launch your own Android activity that takes up the entire screen, and capture all touch events, making a wide range of UIs possible.</p>
-
-<img src="{@docRoot}design/media/wear/customlayout.jpg" alt="" width="760px" />
+<p>There are some things you can’t do on a card. Swiping in many directions on a map or a joystick are a few examples. In those cases it might be good idea to momentarily go full screen.</p>
 
 
-<p>However, be cautious of making this the default way of accessing your app’s functionality. Users will thank you for presenting your content in the familiar, simple environment of the context stream if it is possible to do so. Only enter full screen mode when the interactions required are not possible using the card UI. Full screen is a modal state to be entered for the purpose of achieving a specific task, and in most cases should be easily and quickly exited. You should use full screen apps to achieve a single, quick task within a broader user flow that hinges off the Context Stream. A great full screen experience will present itself quickly, ask for some user input, and then self-quit back to the stream.</p>
+<a class="notice-developers" href="{@docRoot}training/wearables/apps/index.html">
+  <div>
+    <h3>Developer Docs</h3>
+    <p>Creating Wearable Apps</p>
+  </div>
+</a>
 
-<p>To avoid confusion, avoid using the specific styles and idioms of the context stream when designing immersive experiences. If you find yourself replicating the structure of the card layout, your should probably be using a 2D Picker. Make your immersive experience visually distinct. However, still adhere to the <a href="{@docRoot}design/wear/principles.html">Design Principles</a>, which apply universally to Android Wear interfaces.</p>
+<img src="{@docRoot}design/media/wear/customlayout.png" alt="" width="760px" />
 
-<p>Because Android wearables do not feature a home or back button, exiting the application at the appropriate time is the responsibility of the app developer. Exiting always leads back to the context stream. Where possible, exit automatically or present the option to exit at logical break points using acknowledge/cancel buttons. For example:</p>
+<h3>When to go full screen</h3>
+<p>We highly recommend only going full screen when you can’t do what you want on a card, and quickly exit back to the stream the moment you’re done. That way your app will feel like an integrated part of the system.</p>
 
-<ol>
-<li>A map view that allows the user to slide a map to drop a pin on a location should automatically exit when the pin has been placed.</li>
-<li>A short game should automatically exit back to the stream at the end of each game.</li>
-<li>A drawing app should display the option to exit after 5 seconds of inactivity.</li>
-</ol>
+<h3>Be distinct</h3>
+<p>Your full screen design shouldn’t look too much like the card stream or it could confuse users. The 2D picker is always available if you need a card-like UI.</p>
 
-<p>Even with logical exit points like these, some cases may exist where the user may want to immediately initiate an exit. This may be particularly common in apps of longer duration. In all cases, the developer should <strong>present the option to quit the app on long press</strong> using DismissOverlayView. Your design should long press for the sole purpose of prompting to quit.</p>
+<h3>Automatically exiting</h3>
+<p>Many devices don’t have back or home buttons, so exiting is your responsibility as the app designer. Here’s a few examples of natural exits:</p>
+<ul>
+  <li>A map that asks the user to drop a pin should exit when it happens</li>
+  <li>A short game can exit when the game finishes</li>
+  <li>A drawing app can finish after 5 seconds of inactivity.</li>
+</ul>
 
-<p>Seamlessly and fluidly moving between the context stream and immersive mode makes your app feel like an integrated part of the Android Wear experience.</p>
\ No newline at end of file
+<h3>Manually exiting</h3>
+<p>Even with logical exit points like these, some cases may exist where the user may want to immediately exit. This may be common in apps that are used for a longer while. In all cases, the developer should present the option to quit the app on long press using 
+<a href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary"><code>DismissOverlayView</code></a>. Your design should reserve long press for the sole purpose of prompting to quit.</p>
+
+
diff --git a/docs/html/design/wear/style.jd b/docs/html/design/wear/style.jd
index ed39bd6..948b934 100644
--- a/docs/html/design/wear/style.jd
+++ b/docs/html/design/wear/style.jd
@@ -1,57 +1,69 @@
-page.title=Style for Wear
+page.title=Style for Android Wear
 @jd:body
 
 
 <p>Here are a number of design considerations to bear in mind that are particular to Android Wear.</p>
 
-<h2 id="ScreenSize">Screen Size</h2>
+
 
 <img src="{@docRoot}design/media/wear/circle_message2.png" height="200"
-   style="float:right;margin:0 0 20px 60px">
+   style="float:right;margin:32px 0 50px 40px;">
 
 <img src="{@docRoot}design/media/wear/fitness.png" height="200"
-  style="float:right;margin:0 0 20px 60px">
+  style="float:right;margin:32px 0 50px 40px;">
+
+<h2 id="ScreenSize">Screen Size</h2>
 
 <p>Be mindful of different device sizes and shapes. Wearable devices are a form of fashion and expression for their owners, and so Android Wear supports  a variety of forms. Most of the complexities of supporting these different devices is taken care of at a system level, but bear in mind different screen types when designing custom full screen apps.</p>
 
-<p>Use the Android Wear emulator to test both square and round devices, and note that <code>WatchViewStub</code> is available to activities to detect whether a square or round device is being used.</p>
+<p>Use the Android Wear emulator to test both square and round devices, and note that <a
+href="{@docRoot}training/wearables/apps/layouts.html#UiLibrary"><code>WatchViewStub</code></a> is available to activities to detect whether a square or round device is being used.</p>
 
 
 
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
 
-<h2 id="Assets" style="clear:both">Specific Assets Required</h2>
+  <img src="{@docRoot}design/media/wear/assets_specifics.png" width="300"
+    style="margin:32px 0 20px;">
+  </div>
+  <div class="layout-content-col span-7">
+  <h2 id="Assets" style="clear:both">Specific Assets Required</h2>
 
-<img src="{@docRoot}design/media/wear/assets_specifics.png" width="300"
-  style="float:left;margin:0 60px 20px 0">
-
-<p>A core set of standard assets may need to be provided depending on your card design: app icon, background image or images, action icons, actions confirmation animation. Of course, your specific design may necessitate other assets. Background image should be provided in landscape format at least 600px width for notifications that include pages of cards, since the system automatically adds a parallaxing effect.</p>
-
-
-
-<h2 id="PeekCard" style="clear:both">Peek Card Readability</h2>
-
-<img src="{@docRoot}design/media/wear/peek_card.png" width="300"
-  style="float:left;margin:0 60px 20px 0">
-
-<p>Test your card layout to ensure that useful information is conveyed in the peek state on the Home screen. The main message of the card should be readable in the peek state, particularly for contextual cards. Content that requires an interaction to be read, for example a long message, should be cropped appropriately to provide an affordance to the user to swipe the card to read more.</p>
-
-
-
-<h2 id="InfoDensity" style="clear:both">Low Information Density</h2>
-
-<div class="framed-wear-square-small" style="float:right;margin:0 0 40px 60px">
-  <img src="{@docRoot}design/media/wear/low_info_card.png">
+  <p>A core set of standard assets may need to be provided depending on your card design: app icon, background image or images, action icons, actions confirmation animation. Of course, your specific design may necessitate other assets. Background image should be provided in landscape format at least 600px width for notifications that include pages of cards, since the system automatically adds a parallaxing effect.</p>
+  </div>
 </div>
 
+<div class="layout-content-row">
+  <div class="layout-content-col span-6">
+  <h2 id="PeekCard" style="clear:both">Peek Card Readability</h2>
+
+  <p>Test your card layout to ensure that useful information is conveyed in the peek state on the Home screen. The main message of the card should be readable in the peek state, particularly for contextual cards. Content that requires an interaction to be read, for example a long message, should be cropped appropriately to provide an affordance to the user to swipe the card to read more.</p>
+  </div>
+  <div class="layout-content-col span-6">
+
+  <img src="{@docRoot}design/media/wear/peek-card.png" width="300"
+    style="margin:12px 0 0 20px">
+  </div>
+</div>
+
+
+
+  <img src="{@docRoot}design/media/wear/low_info_card.png" width="147" height="147"
+  style="float:right;margin:29px 0 20px 40px">
+
+<h2 id="InfoDensity" style="margin-top:0" >Low Information Density</h2>
+
 <p>Cards should be designed to be glanceable in a split second, just like reading the time on a traditional watch. In most cases a pairing of an icon and value, or a title and short caption should be enough to convey a meaningful message. Note that the background photo should also be used to convey information; backgrounds that change to reflect and support the primary message in the card work great. For example, in the case illustrated above a suitable background image is chosen to reflect severity of the current traffic conditions. This is not just a nice piece of attention to detail; the background actually reinforces the message and makes the content more glanceable.</p>
 
 
-<h2 id="Chunks" style="clear:both">Separate Information into Chunks</h2>
+<img src="{@docRoot}design/media/wear/separate_info_cards.jpg" height="147"
+  style="float:right;margin:29px 0 20px 40px">
 
-<img src="{@docRoot}design/media/wear/separate_info_cards.jpg" width="400"
-  style="float:left;margin:0 60px 20px 0">
+<h2 id="Chunks">Separate Information into Chunks</h2>
 
-<p>In cases where additional information is absolutely necessary, don’t crowd out a card layout to the point where glanceability is affected. Instead, add an additional page (or multiple pages, if needed) to the right of the main card in the stream to which the user can swipe for more information. See also “Continuing activities on phone”, below.</p>
+<p>In cases where additional information is absolutely necessary, don’t crowd out a card layout to the point where glanceability is affected. Instead, add an additional <a href="{@docRoot}design/wear/patterns.html#Pages">page</a> (or multiple pages, if needed) to the right of the main card in the stream to which the user can swipe for more information. See also <a
+href="{@docRoot}design/wear/patterns.html#Continuing">Continuing activities on phone</a>.</p>
 
 
 <h2 id="KeepMinimum" style="clear:both">Keep Notifications to a Minimum</h2>
@@ -59,39 +71,39 @@
 <p>Don’t abuse the user’s attention. Active notifications (that is, those that cause the device to vibrate) should only be used in cases that are both timely and involve a contact, for example receiving a message from a friend. Non-urgent notifications should be silently added to the Context Stream. See also the general Android Notifications Guidelines.</p>
 
 
-<h2 id="Typography" style="clear:both">Use Clear, Bold Typography</h2>
-
-<div class="framed-wear-square-small" style="float:right;margin:0 0 60px 40px">
-  <img src="{@docRoot}design/media/wear/clear_bold_type.jpg">
-</div>
-
-<p>The system font is Roboto Condensed, with Regular and Light variants. Text should adhere to the size and color recommendations (see the UI Toolkit in the Downloads section). In general, text should be displayed as large as possible. Your goal should be to convey maximum information with minimum fuss.</p>
 
 
-<h2 id="Branding" >Use Consistent Branding and Color</h2>
+<img src="{@docRoot}design/media/wear/clear_bold_type.jpg" height="147"
+  style="float:left;margin:19px 40px 20px 0">
+
+<h2 id="Typography" >Use Clear, Bold Typography</h2>
+
+<p>The system font is Roboto Condensed, with Regular and Light variants. Text should adhere to the size and color recommendations (see the UI Toolkit in the <a href="{@docRoot}design/downloads/index.html#Wear">Downloads</a> page). In general, text should be displayed as large as possible. Your goal should be to convey maximum information with minimum fuss.</p>
+
+
+<h2 id="Branding" style="clear:both" >Use Consistent Branding and Color</h2>
 
 <p>The app icon is used to identify and brand your application. The icon is optional but when present always appears in the same location, overhanging the top edge of the card at the right. Note that app icons or branding should not be displayed in the background photo, which is reserved to display an image relevant to the information on the card.</p>
 
 
-<h2 id="Copywrite" style="clear:both">Copywrite Sparingly</h2>
+<img src="{@docRoot}design/media/wear/copywrite.png" height="147"
+  style="float:left;margin:19px 40px 20px 0">
 
-<div class="framed-wear-square-small" style="float:right;margin:0 0 60px 40px">
-  <img src="{@docRoot}design/media/wear/copywrite.png">
-</div>
+<h2 id="Copywrite" >Copywrite Sparingly</h2>
 
 <p>Omit needless text. Design for glanceability, not reading. Use words and phrases, not sentences. Use icons paired with values instead of text wherever possible. Text strings should be as concise as possible, and long pieces of text will be truncated to fit on a single card.</p>
 
 
-<h2 id="BeDiscreet" >Be Discreet if Necessary</h2>
+<h2 id="BeDiscreet" style="clear:both" >Be Discreet if Necessary</h2>
 
 <p>Wearables are personal devices by nature, but they are not completely private. If your notification serves content that may be particularly sensitive or embarrassing (such as notifications from a dating app or a medical status report), consider not displaying all of the information in a peek card. A notification could place the sensitive information on a second page that must be swiped to, or an application could show different amounts of detail in peek and focused card positions.</p>
 
 
-<h2 id="ConfirmAnim" style="clear:both">Confirmation Animations</h2>
+  <img src="{@docRoot}design/media/wear/confirmation.png" height="147"
+  style="float:left;margin:29px 40px 20px 0">
 
-<div class="framed-wear-square-small" style="float:left;margin:0 40px 40px 0 ">
-  <img src="{@docRoot}design/media/wear/confirmation.png">
-</div>
+
+<h2 id="ConfirmAnim">Confirmation Animations</h2>
 
 <p>If your app allows the user to perform an action, it is necessary to provide positive feedback. Show a generic confirmation animation or create your own. A confirmation animation is an opportunity to express your app’s character and insert a moment of delight for your user. Keep animations short (less than 1000ms) and simple. Animating the confirmation icon is an effective way of transitions the user to a new state after completing an action.</p>
 
@@ -100,3 +112,4 @@
 
 
 
+
diff --git a/docs/html/images/material.png b/docs/html/images/material.png
new file mode 100644
index 0000000..981359b
--- /dev/null
+++ b/docs/html/images/material.png
Binary files differ
diff --git a/docs/html/images/resource-card-android-studio.png b/docs/html/images/resource-card-android-studio.png
new file mode 100644
index 0000000..0f483df
--- /dev/null
+++ b/docs/html/images/resource-card-android-studio.png
Binary files differ
diff --git a/docs/html/index.jd b/docs/html/index.jd
index f101ad2..253a7a5 100644
--- a/docs/html/index.jd
+++ b/docs/html/index.jd
@@ -6,43 +6,37 @@
 
 @jd:body
 
-<!-- Top full-bleed carousel -->
-<div class="home-new-carousel-1" style="margin-top:40px">
+<div class="home-new-carousel-1">
   <div class="fullscreen-carousel-content">
     <div class="vcenter">
       <div class="wrap clearfix">
 
         <div class="static resource-flow-layout wrap col-16">
           <div class="resource resource-card resource-card-18x6">
-            <div class="card-bg" style="background-image: url('/preview/images/l-dev-prev.png');"></div>
-            <div class="card-info">
-              <div class="section"></div>
-              <div class="title">Android L Developer Preview</div>
-              <div class="description ellipsis" style="height: 285px;">
-                <div class="text" style="height: auto;">
-                  <p style="font-size:16px;">Get an early look at the next Android release and
-                    start using new APIs so your apps are ready when the platform officially launches.</p>
-                  <p>
-                  <a href="{@docRoot}preview/index.html" class="landing-button landing-secondary">Learn more</a></p>
-                </div>
-              </div>
+
+      <div class="landing-section-header">
+            <div class="col-10"><img src="{@docRoot}preview/images/l-dev-prev.png"
+            style="margin:40px 60px 0 20px"></div>
+            <div class="col-5" style=" margin-top:70px ">
+            <h3 stye="font-weight:300;">L Developer Preview</h3>
+            <p>The L Developer Preview lets you design and develop against the next major
+            release of Android. Take the time to test and build your app before the platform
+            officially launches. </p>
+            <a href="{@docRoot}preview/index.html" class="landing-button landing-primary">Learn More</a>
             </div>
           </div>
+          </div>
         </div>
-
-        <div class="resource-widget resource-flow-layout wrap col-16 no-section"
-          data-query="collection:index/primary"
-          data-resourceStyle="card"
-          data-sortOrder="-timestamp"
-          data-maxResults="3"
-          data-cardSizes="6x2,6x2,6x2">
-        </div> <!-- end .resource-widget -->
+       <h2>&nbsp;</h2>
+        <div style="margin-top:20px" class="resource-widget resource-flow-layout wrap col-16
+        no-section" data-query="collection:index/primary" data-resourcestyle="card"
+        data-sortorder="-timestamp" data-maxresults="3" data-cardsizes="6x2,6x2,6x2"></div> <!-- end .resource-widget -->
       </div> <!-- end .wrap -->
     </div> <!-- end .vcenter -->
   </div> <!-- end .fullscreen-carousel-content -->
 </div> <!-- end .fullscreen-carousel -->
 
-<div class="actions-bar" style="margin-top:30px">
+<div class="actions-bar" style="margin-top:20px">
   <div class="wrap">
     <div class="actions">
       <div><a href="{@docRoot}sdk/index.html">Get the SDK</a></div>
@@ -59,16 +53,17 @@
   <div class="landing-section">
     <div class="wrap">
       <div class="landing-section-header">
-        <div class="landing-h1">Develop for Multiple Form Factors</div>
+        
+            <div class="landing-h1" style="margin-top:0px">Build for a Multi-Screen World</div>
         <div class="landing-subhead" style="margin-top: 20px;">
-          Android runs on hundreds of millions of handheld devices around the world, <br />
+          Android runs on hundreds of millions of handheld devices around the world, <br>
           and it now supports these exciting, new form-factors.
         </div>
       </div>
       <div class="landing-body" style="margin-top: 50px;">
         <div class="landing-breakout cols">
           <div class="col-3-wide">
-              <img src="{@docRoot}images/home/wear-wordmark.png" />
+              <img src="{@docRoot}images/home/wear-wordmark.png">
               <img src="{@docRoot}images/home/wear.png">
               <p class="landing-small">
                 Provide information on-the-go for your users, whenever they need it.
@@ -78,9 +73,9 @@
             </p>
           </div>
           <div class="col-3-wide">
-              <img src="{@docRoot}images/home/tv-wordmark.png" />
+              <img src="{@docRoot}images/home/tv-wordmark.png">
              <img src="{@docRoot}images/home/tv.png">
-              <p class="landing-small" >
+              <p class="landing-small">
                 Build your apps for the big screen and bring your content to life.
               </p>
             <p class="landing-small">
@@ -89,7 +84,7 @@
             </p>
           </div>
           <div class="col-3-wide">
-              <img src="{@docRoot}images/home/auto-wordmark.png" />
+              <img src="{@docRoot}images/home/auto-wordmark.png">
               <img src="{@docRoot}images/home/auto.png">
               <p class="landing-small">
                 Extend your music apps to automobile
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
index a92236e..cd49ace 100644
--- a/docs/html/jd_collections.js
+++ b/docs/html/jd_collections.js
@@ -2,9 +2,9 @@
   "index/primary": {
     "title": "",
     "resources": [
-      "distribute/essentials/quality/tablets.html",
-      "distribute/engage/game-services.html",
-      "distribute/googleplay/edu/about.html" 
+      "training/building-wearables.html",
+      "preview/material/index.html",
+      "sdk/installing/studio.html" 
     ]
   },
   "index/devices": {
diff --git a/docs/html/jd_extras.js b/docs/html/jd_extras.js
index 03bbea1..605af52 100644
--- a/docs/html/jd_extras.js
+++ b/docs/html/jd_extras.js
@@ -15,17 +15,6 @@
 
 DISTRIBUTE_RESOURCES = DISTRIBUTE_RESOURCES.concat([
   {
-    "title":"Android L Developer Preview",
-    "titleFriendly":"",
-    "summary":"<p style='font-size:18px;'>Get an early look at the next release and get your apps ready when the platform officially launches.</p>",
-    "url":"preview/index.html",
-    "group":"",
-    "keywords": [],
-    "tags": [],
-    "image":"preview/images/l-dev-prev.png",
-    "type":""
-  },
-  {
     "title":"Developer Registration",
     "titleFriendly":"",
     "summary":"Additional information about the registration process.",
@@ -1192,4 +1181,4 @@
     "type": "",
     "titleFriendly": ""
   }
-]);
\ No newline at end of file
+]);
diff --git a/docs/html/preview/google-play-services-wear.html b/docs/html/preview/google-play-services-wear.html
index 31ae25b..ff43757 100644
--- a/docs/html/preview/google-play-services-wear.html
+++ b/docs/html/preview/google-play-services-wear.html
@@ -35,17 +35,19 @@
 
 <h2 style="margin-bottom: 0px;">1. Get Whitelisted for the Preview</h2><hr>
 
-<p>If you attended Google I/O, your registered Google  account is automatically whitelisted for
-these preview resources. If you didn't attend Google I/O or want to use a different account:</p>
+<p>If you attended Google I/O, your registered Google account is automatically whitelisted for
+these preview resources. You're done! Head to Step 2.</p>
 
-<a href="https://groups.google.com/forum/?hl=en#!forum/io14androidweardev">Join the Google Group</a>
-to get whitelisted.
+<p><stong><em>If you didn't attend Google I/O</em></strong> or want to use a different account,
+click following link to
+<a href="https://groups.google.com/group/io14androidweardev/subscribe" target="_blank">join
+the Google Group</a> and get whitelisted.</p>
 
 <h2 style="margin-bottom: 0px;">2. Download Required Apps</h2><hr>
 <p>You'll need the following apps to get the most out of Android Wear:</p>
 
 <ul>
-<li><a href="https://play.google.com/apps/testing/com.google.android.gms">Google Play services</a>: 
+<li><a href="https://play.google.com/apps/testing/com.google.android.gms">Google Play services</a>:
 Allows your Android Wear device to communicate with your handheld device. This is required to
 use the Android Wear app and other apps listed below.</li>
   <li><a href="https://play.google.com/apps/testing/com.google.android.wearable.app">Android Wear
@@ -73,11 +75,32 @@
 <img style="margin-top:40px" src="/preview/images/opt-in.png"></li>
 </ol>
 <h2 style="margin-bottom: 0px;">3. Start Building</h2><hr>
-<p>Check out the <a href="/training/building-wearables">Building Apps for Wearables</a>
+
+<p>The Google Play services SDK is required if you want to sync and send data between wearable
+and handheld devices. To get the new SDK that is compatible with the Google Play services
+APK that you just installed, follow these steps: </p>
+
+<p class="note"><b>Note:</b> Android Studio is required for Wear development.</p>
+<ol>
+  <li>Start AVD Manager.</li>
+  <li>Update the Android SDK Tools and Platform-tools to versions 23 and 20 respectively.</li>
+  <li>Click <b>Tools > Manage Add-on Sites > User Defined Sites</b>.</li>
+  <li>Click <b>New</b>, enter
+  <code>https://dl-ssl.google.com/android/repository/addon-play-services-5.xml</code> into the
+  text field, and click <b>OK</b>.</li>
+  <li>Click Close. You should now see new emulator images that support this preview
+  release of Google Play services and the Google Play services client libraries you need to
+  start developing.</li>
+  <li><a href="{@docRoot}preview/google-play-services-preview.zip">Download</a> the Google Play
+  services reference documentation for this preview release.</li>.
+</ol>
+
+<p>When you're done here, check out the <a href="{@docRoot}training/building-wearables">Building Apps for Wearables</a>
 training classes for information on how to build for Wear.</p>
+
     </div>
 </div> <!-- end jd-content -->
 </div><!-- end doc-content -->
-</div> <!-- end body-content --> 
+</div> <!-- end body-content -->
 </body>
 </html>
\ No newline at end of file
diff --git a/docs/html/preview/images/hero.jpg b/docs/html/preview/images/hero.jpg
deleted file mode 100644
index 1c52989..0000000
--- a/docs/html/preview/images/hero.jpg
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/material.png b/docs/html/preview/images/material.png
deleted file mode 100644
index 2d807d4..0000000
--- a/docs/html/preview/images/material.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications.png b/docs/html/preview/images/notifications.png
deleted file mode 100644
index 2fb2fea..0000000
--- a/docs/html/preview/images/notifications.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Action.png b/docs/html/preview/images/notifications/Action.png
new file mode 100644
index 0000000..de584a3
--- /dev/null
+++ b/docs/html/preview/images/notifications/Action.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/AntiSample1.png b/docs/html/preview/images/notifications/AntiSample1.png
new file mode 100644
index 0000000..2cb5411
--- /dev/null
+++ b/docs/html/preview/images/notifications/AntiSample1.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/AntiSample3.png b/docs/html/preview/images/notifications/AntiSample3.png
new file mode 100644
index 0000000..5780583
--- /dev/null
+++ b/docs/html/preview/images/notifications/AntiSample3.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Basic.png b/docs/html/preview/images/notifications/Basic.png
new file mode 100644
index 0000000..4ce21c48
--- /dev/null
+++ b/docs/html/preview/images/notifications/Basic.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Expanded.png b/docs/html/preview/images/notifications/Expanded.png
new file mode 100644
index 0000000..9ca260b
--- /dev/null
+++ b/docs/html/preview/images/notifications/Expanded.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/ExpandedImage.png b/docs/html/preview/images/notifications/ExpandedImage.png
new file mode 100644
index 0000000..7e58881
--- /dev/null
+++ b/docs/html/preview/images/notifications/ExpandedImage.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/ExpandedText.png b/docs/html/preview/images/notifications/ExpandedText.png
new file mode 100644
index 0000000..0361695
--- /dev/null
+++ b/docs/html/preview/images/notifications/ExpandedText.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Headsup.png b/docs/html/preview/images/notifications/Headsup.png
new file mode 100644
index 0000000..03015b1
--- /dev/null
+++ b/docs/html/preview/images/notifications/Headsup.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Largelogo.png b/docs/html/preview/images/notifications/Largelogo.png
new file mode 100644
index 0000000..e222422
--- /dev/null
+++ b/docs/html/preview/images/notifications/Largelogo.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/LockScreen.png b/docs/html/preview/images/notifications/LockScreen.png
new file mode 100644
index 0000000..083e646
--- /dev/null
+++ b/docs/html/preview/images/notifications/LockScreen.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/MusicPlayback.png b/docs/html/preview/images/notifications/MusicPlayback.png
new file mode 100644
index 0000000..58f3d0b
--- /dev/null
+++ b/docs/html/preview/images/notifications/MusicPlayback.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/ProductIcons.png b/docs/html/preview/images/notifications/ProductIcons.png
new file mode 100644
index 0000000..227c8ab
--- /dev/null
+++ b/docs/html/preview/images/notifications/ProductIcons.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Productlogos.png b/docs/html/preview/images/notifications/Productlogos.png
new file mode 100644
index 0000000..baed5ac
--- /dev/null
+++ b/docs/html/preview/images/notifications/Productlogos.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/ReplyAction.png b/docs/html/preview/images/notifications/ReplyAction.png
new file mode 100644
index 0000000..73c9fc6
--- /dev/null
+++ b/docs/html/preview/images/notifications/ReplyAction.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Stack.png b/docs/html/preview/images/notifications/Stack.png
new file mode 100644
index 0000000..90c6c4a
--- /dev/null
+++ b/docs/html/preview/images/notifications/Stack.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Summarise_Do.png b/docs/html/preview/images/notifications/Summarise_Do.png
new file mode 100644
index 0000000..4daaa4d
--- /dev/null
+++ b/docs/html/preview/images/notifications/Summarise_Do.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Summarise_Dont.png b/docs/html/preview/images/notifications/Summarise_Dont.png
new file mode 100644
index 0000000..4094d73
--- /dev/null
+++ b/docs/html/preview/images/notifications/Summarise_Dont.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Summary.png b/docs/html/preview/images/notifications/Summary.png
new file mode 100644
index 0000000..135de83
--- /dev/null
+++ b/docs/html/preview/images/notifications/Summary.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Summary_Do.png b/docs/html/preview/images/notifications/Summary_Do.png
new file mode 100644
index 0000000..c48bfd3
--- /dev/null
+++ b/docs/html/preview/images/notifications/Summary_Do.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/TimeSensitive.png b/docs/html/preview/images/notifications/TimeSensitive.png
new file mode 100644
index 0000000..55a9e59
--- /dev/null
+++ b/docs/html/preview/images/notifications/TimeSensitive.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/Triggered.png b/docs/html/preview/images/notifications/Triggered.png
new file mode 100644
index 0000000..c327ed2
--- /dev/null
+++ b/docs/html/preview/images/notifications/Triggered.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/WearBasic.png b/docs/html/preview/images/notifications/WearBasic.png
new file mode 100644
index 0000000..881f1e5
--- /dev/null
+++ b/docs/html/preview/images/notifications/WearBasic.png
Binary files differ
diff --git a/docs/html/preview/images/notifications/notifications_pattern_priority.png b/docs/html/preview/images/notifications/notifications_pattern_priority.png
new file mode 100644
index 0000000..137a83fa
--- /dev/null
+++ b/docs/html/preview/images/notifications/notifications_pattern_priority.png
Binary files differ
diff --git a/docs/html/preview/images/volta.png b/docs/html/preview/images/volta.png
deleted file mode 100644
index 9125081..0000000
--- a/docs/html/preview/images/volta.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/material/index.jd b/docs/html/preview/material/index.jd
index d9a276f..9628e3a 100644
--- a/docs/html/preview/material/index.jd
+++ b/docs/html/preview/material/index.jd
@@ -1,5 +1,7 @@
 page.title=Material Design
 page.type=design
+page.image=images/material.png
+page.metaDescription=Learn how to apply material design to your apps.
 
 @jd:body
 
diff --git a/docs/html/preview/notifications.jd b/docs/html/preview/notifications.jd
new file mode 100644
index 0000000..2b75651
--- /dev/null
+++ b/docs/html/preview/notifications.jd
@@ -0,0 +1,626 @@
+page.title=Design for Notifications
+page.tags="notifications","design","L"
+@jd:body
+
+
+<p>The notification system allows users to keep informed about relevant and timely
+events in your app, such as new chat messages from a friend or a calendar event.
+Think of notifications as a news channel that alerts the user to important events as
+they happen or a log that chronicles events while the user is not paying attention -
+and one that is synced as appropriate across all their Android devices.</p>
+
+<h4 id="New"><strong>New in L</strong></h4>
+
+<p>In L, notifications receive an important structural visual and functional update:</p>
+
+<ul>
+  <li> Visual changes to notifications as part of material design</li>
+  <li> Notifications are now available on the device lockscreen, yet sensitive content can still
+  be hidden behind it</li>
+   <li> A new presentation format called Heads-up for receiving high priority notifications while
+  using the device</li>
+  <li> Cloud-synced notifications - act on a notification on your Android tablet and it is also
+  dismissed on your phone.</li>
+  <li> And starting now (in Android 4.4W, API Level 20, the platform release for Android Wear),
+  your notifications will bridge to Android Wear devices. You can extend the functionality of
+  notifications on Wear in two different ways. First, you can add speech input and canned responses
+  to Actions on Wear, allowing users to complete tasks from their wrists. Second, you can write
+  Wear apps that hook into your notifications to go even further in terms of creating interactive
+  experiences for users.</li>
+</ul>
+
+<h2 id="Anatomy">Anatomy of a notification</h2>
+
+
+<h4 id="BaseLayout"><strong>Base Layout</strong></h4>
+
+<p>At a minimum, all notifications consist of a base layout, including:</p>
+
+<ul>
+  <li> The notification's <strong>icon</strong>, symbolizing the originating app, and also potentially the kind of notification if the app has several substantially different sorts of notifications it can post</li>
+  <li> A notification <strong>title</strong> and additional <strong>text</strong></li>
+  <li> A <strong>timestamp</strong></li>
+</ul>
+<div class="figure" style="width:376px">
+  <img src="{@docRoot}preview/images/notifications/Basic.png"
+    alt="" width="376" height="281" id="figure1" />
+  <p class="img-caption">
+    <strong>Figure 1.</strong> Base layout of a handset notification
+  </p>
+</div>
+
+<div class="figure" style="width:164px">
+  <img src="{@docRoot}preview/images/notifications/WearBasic.png"
+    alt="" width="164" height="164" id="figure2" />
+  <p class="img-caption">
+    <strong>Figure 2.</strong> The same notification on Wear, with a user photo and a
+    notification icon
+  </p>
+</div>
+<p>Notifications created with {@code Notification.Builder} for versions of Android earlier than L will look and work the same in L, with only minor stylistic changes that the system handles for you.</p>
+
+
+
+<h4 id="ExpandedLayouts">Expanded layouts</h4>
+
+<p>You have the option to provide more details on notifications. You can use this to show the first few lines of a message or show a larger image preview. This provides the user with additional context, and - in some cases - may allow the user to read a message in its entirety. The user can pinch-zoom or perform a single-finger glide in order to toggle between compact and expanded layouts. For single event notifications, Android provides three expanded layout templates (text, inbox, and image) for you to re-use in your application.</p>
+
+<div class="figure" style="width:201px">
+  <img src="{@docRoot}preview/images/notifications/ExpandedText.png"
+    alt="" width="201" height="182" id="figure3" />
+</div>
+
+<div class="figure" style="width:272px">
+  <img src="{@docRoot}preview/images/notifications/Expanded.png"
+    alt="" width="272" height="121" id="figure4" />
+</div>
+
+<div class="figure" style="width:202px">
+  <img src="{@docRoot}preview/images/notifications/Stack.png"
+    alt="" width="202" height="169" id="figure5" />
+</div>
+
+<div class="figure" style="width:285px">
+  <img src="{@docRoot}preview/images/notifications/figure6.png"
+    alt="" width="285" height="124" id="figure6" />
+</div>
+
+<div class="figure" style="width:196px">
+  <img src="{@docRoot}preview/images/notifications/ExpandedImage.png"
+    alt="" width="196" height="277" id="figure7" />
+  <p class="img-caption">
+    <strong>Figure 3.</strong> A text-focused notification, an inbox notification, and a photo-centric notification, shown expanded and contracted, and with Wear equivalents for the first two.
+  </p>
+</div>
+
+<h4 id="actions"><strong>Actions</strong></h4>
+
+<p>Android has supported optional actions that are displayed at the bottom of the notification, as far back as Jelly Bean. With actions, users can handle the most common tasks for a particular notification from within the notification shade without having to open the originating application. This speeds up interaction and, in conjunction with "swipe-to-dismiss", helps users to streamline their notification triaging experience.</p>
+
+<p>Be judicious with how many actions you include with a notification. The more actions you include, the more cognitive complexity you create. Limit yourself to the fewest number of actions possible by only including the most imminently important and meaningful ones.</p>
+
+<p>Good candidates for actions on notifications are actions that:</p>
+
+<ul>
+  <li> Are essential, frequent and typical for the content type you're displaying
+  <li> Allow the user to accomplish tasks quickly
+</ul>
+
+<p>Avoid actions that are:</p>
+
+<ul>
+  <li> Ambiguous
+  <li> Duplicative of the default action of the notification (such as "Read" or "Open")
+</ul>
+
+<div class="figure" style="width:340px">
+  <img src="{@docRoot}preview/images/notifications/Action.png"
+    alt="" width="340" height="169" id="figure8" />
+  <p class="img-caption">
+    <strong>Figure 4.</strong> Calendar reminder notification with two actions
+  </p>
+</div>
+
+<div class="figure" style="width:154px">
+  <img src="{@docRoot}preview/images/notifications/ReplyAction.png"
+    alt="" width="154" height="154" id="figure8_1" />
+  <p class="img-caption">
+    <strong>Figure 5.</strong> Gmail new message notification - the actions appear to the right of the main card on Wear devices
+  </p>
+</div>
+
+<p>You can specify a maximum of three actions, each consisting of an action icon and an action name. Adding actions to a simple base layout will make the notification expandable, even if the notification doesn't have an expanded layout. Since actions are only shown for expanded notifications and are otherwise hidden, you must make sure that any action a user can invoke from a notification is available from within the associated application as well.</p>
+
+<h4 id="notifications_on_android_wear"><strong>Notifications on Android Wear</strong></h4>
+
+<p>Additionally, notifications and their actions are bridged over to Wear devices by default. Developers have control to control which notifications from bridging from the phone to the watch and vice versa. And developers can control which actions bridge as well. If your app includes actions that can't be accomplished with a single tap, either hide these actions on your Wear notification or consider hooking them up to a Wear app to allow the user to finish the action on their watch.</p>
+
+<p><strong>Bridging notifications</strong></p>
+
+<p><strong>Notifications that should be bridged</strong></p>
+
+<ul>
+  <li> New instant messages
+</ul>
+
+<p><strong>Don't bridge</strong></p>
+
+<ul>
+  <li> If a podcasting app has new episodes available for download, keep this notification on the phone.
+</ul>
+
+<p><strong>Bridging actions </strong></p>
+
+<p><strong>Actions to bridge</strong></p>
+
+<ul>
+  <li> Single tap actions such as +1, Like, Heart
+</ul>
+
+<p><strong>Actions not to bridge</strong></p>
+
+<ul>
+  <li> Actions that map to features that aren't possible on the watch
+</ul>
+
+<p><strong>Unique actions to define for Wear</strong></p>
+
+<ul>
+  <li> Quick lists of canned responses such as "Be right back"
+  <li> Open on phone
+  <li> A "Comment" or "Reply" action that brings up the speech input screen
+  <li> Actions that can launch Wear-specific apps
+</ul>
+
+<p>[Asset needed: show one or more sample Wear notifications]</p>
+
+<p><strong>Heads-up Notification</strong></p>
+
+<p>When notifications with priority set to High (see below) arrives, it is presented to users for a short period of time on the device with an expanded layout with its actions exposed. After this period of time, it retreats back to the Notification shade. If a notification is flagged as High or Max or a full-screen takeover, it gets a HUN in L.</p>
+
+
+<div class="figure" style="width:262px">
+  <img src="{@docRoot}preview/images/notifications/Headsup.png"
+    alt="" width="262" height="513" id="figure9" />
+  <p class="img-caption">
+    <strong>Figure 6.</strong> Example of a Heads-up notification (incoming phone call, high priority) coming in on top of an immersive app
+  </p>
+</div>
+
+<p><strong>Good examples of Heads-up notifications</strong></p>
+
+<ul>
+  <li> Incoming phone call when using device
+  <li> Alarm when using device
+  <li> New SMS message
+  <li> Low battery
+</ul>
+
+<h2 id="guidelines">Guidelines</h2>
+
+
+<div class="figure" style="width:366px">
+  <img src="{@docRoot}preview/images/notifications/Triggered.png"
+    alt="" width="366" height="142" id="figure10" />
+  <p class="img-caption">
+    <strong>Figure 7.</strong> Notification that shows the person who triggered it and the content they are sending you
+  </p>
+</div>
+
+<h4 id="make_it_personal"><strong>Make it personal</strong></h4>
+
+<p>For notifications of items sent by another person (such as a message or status update), include that person's image using setLargeIcon. Also attach information about the person to the notification's metadata (see EXTRA_PEOPLE).</p>
+
+<p>Your notification's main icon will still be shown, so the user can associate it with the icon visible in the status bar.</p>
+
+<h4 id="navigate_to_the_right_place"><strong>Navigate to the right place</strong></h4>
+
+<p>When the user touches the body of a notification (outside of the action buttons), open your app to the place where the user can view and act upon the data referenced in the notification. In most cases this will be the detail view of a single data item such as a message, but it might also be a summary view if the notification is stacked (see <em>Stacked notifications</em> below) and references multiple items. If in any of those cases the user is taken to a hierarchy level below your app's top-level, insert navigation into your app's back stack to allow them to navigate to your app's top level using the system back button. For more information, see the chapter on <em>System-to-app navigation</em> in the <a href="{@docRoot}design/patterns/navigation.html">Navigation</a> design pattern.</p>
+
+<h4 id="correctly_set_and_manage_notification_priority"><strong>Correctly set and manage notification priority</strong></h4>
+
+<p>Starting with Jelly Bean, Android supported a priority flag for notifications. It allows you to influence where your notification will appear in comparison to other notifications and help to make sure that users always see their most important notifications first. You can choose from the following priority levels when posting a notification:</p>
+<table>
+ <tr>
+    <td class="tab0">
+<p><strong>Priority</strong></p>
+</td>
+    <td class="tab0">
+<p><strong>Use</strong></p>
+</td>
+ </tr>
+ <tr>
+    <td class="tab1">
+<p>{@code MAX}</p>
+</td>
+    <td class="tab1">
+<p>Use for critical and urgent notifications that alert the user to a condition that is time-critical or needs to be resolved before they can continue with a particular task.</p>
+</td>
+ </tr>
+ <tr>
+    <td class="tab1">
+<p>{@code HIGH}</p>
+</td>
+    <td class="tab1">
+<p>Use high priority notifications primarily for important communication, such as message or chat events with content that is particularly interesting for the user. High priority notifications will get the Heads-Up Notification display starting in L.</p>
+</td>
+ </tr>
+ <tr>
+    <td class="tab1">
+<p>{@code DEFAULT}</p>
+</td>
+    <td class="tab1">
+<p>The default priority. Keep all notifications that don't fall into any of the other categories at this priority level.</p>
+</td>
+ </tr>
+ <tr>
+    <td class="tab1">
+<p>{@code LOW}</p>
+</td>
+    <td class="tab1">
+<p>Use for notifications that you still want the user to be informed about, but that rate low in urgency. LOW notifications will tend to show up at the bottom of the list, which makes them a good choice for things like pubic/undirected social updates: the user has asked to be notified about them, but they should never take precedence over urgent or direct communication.</p>
+</td>
+ </tr>
+ <tr>
+    <td class="tab1">
+<p>{@code MIN}</p>
+</td>
+    <td class="tab1">
+<p>Contextual/background information (e.g. weather information, contextual location information). Minimum priority notifications will not show in the status bar. The user will only discover them when they expand the notification shade.</p>
+</td>
+ </tr>
+</table>
+
+
+<h4 id="how_to_choose_an_appropriate_priority"><strong>How to choose an appropriate priority</strong></h4>
+
+<p>Default, High, and Max priority are interruptive priority levels and risk interrupting the user from what they are doing. This should not not be taken lightly, so these levels should be  reserved for notifications that:</p>
+
+<ul>
+  <li> Involve another person
+  <li> Are time-sensitive
+  <li> Might immediately change the user's behavior in the real world
+</ul>
+
+<p>Notifications set to Low and Min can still be very valuable for the user. Many if not most notifications just don't need to command the user's immediate attention, or vibrate the user's wrist, yet contain information that they will find valuable when they choose to look for notifications. Criteria for Low and Min priority notifications:</p>
+
+<ul>
+  <li> Don't involve other people
+  <li> Aren't time sensitive
+  <li> Is content the user might be interested in but could choose to browse at their leisure
+</ul>
+
+<div class="figure" style="width:624px">
+  <img src="{@docRoot}preview/images/notifications/notifications_pattern_priority.png"
+    alt="" width="624" height="210" id="figure11">
+</div>
+
+<h4 id="set_a_notification_category"><strong>Set a notification category</strong></h4>
+
+<p>If your notification falls into one of the predefined categories (see below), assign it accordingly.  Aspects of the system UI such as the notification shade (or any other notification listener) may use this information to make ranking and filtering decisions.</p>
+<table>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_CALL}</p>
+</td>
+    <td>
+<p>Incoming call (voice or video) or similar synchronous communication request</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_MESSAGE}</p>
+</td>
+    <td>
+<p>Incoming direct message (SMS, instant message, etc.)</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_EMAIL}</p>
+</td>
+    <td>
+<p>Asynchronous bulk message (email)</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_EVENT}</p>
+</td>
+    <td>
+<p>Calendar event</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_PROMO}</p>
+</td>
+    <td>
+<p>Promotion or advertisement</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_ALARM}</p>
+</td>
+    <td>
+<p>Alarm or timer</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_PROGRESS}</p>
+</td>
+    <td>
+<p>Progress of a long-running background operation</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_SOCIAL}</p>
+</td>
+    <td>
+<p>Social network or sharing update</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_ERROR}</p>
+</td>
+    <td>
+<p>Error in background operation or authentication status</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_TRANSPORT}</p>
+</td>
+    <td>
+<p>Media transport control for playback</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_SYSTEM}</p>
+</td>
+    <td>
+<p>System or device status update.  Reserved for system use.</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_SERVICE}</p>
+</td>
+    <td>
+<p>Indication of running background service</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_RECOMMENDATION}</p>
+</td>
+    <td>
+<p>A specific, timely recommendation for a single thing.  For example, a news app might want to recommend a news story it believes the user will want to read next.</p>
+</td>
+ </tr>
+ <tr>
+    <td>
+<p>{@code Notification.CATEGORY_STATUS}</p>
+</td>
+    <td>
+<p>Ongoing information about device or contextual status</p>
+</td>
+ </tr>
+</table>
+
+
+<p> </p>
+
+<h4 id="summarize_your_notifications"><strong>Summarize your notifications</strong></h4>
+
+<p>If your app creates a notification while another of the same type is still pending, avoid creating an altogether new notification object. Instead, turn it into a summary notification for the app.</p>
+
+<p>A summary notification builds a summary description and allows the user to understand how many notifications of a particular kind are pending.</p>
+
+<p><strong>Don't</strong>:</p>
+
+<div class="figure" style="width:325px">
+  <img src="{@docRoot}preview/images/notifications/Summarise_Dont.png"
+    alt="" width="325" height="361" id="figure12" />
+</div>
+
+<p><strong>Do</strong>:</p>
+
+<div class="figure" style="width:318px">
+  <img src="{@docRoot}preview/images/notifications/Summarise_Do.png"
+    alt="" width="318" height="293" id="figure13" />
+</div>
+
+<p>You can provide more detail about the individual notifications that make up a  summary by using the expanded digest layout. This allows users to gain a better sense of which notifications are pending and if they are interesting enough to be read in detail within the associated app.</p>
+
+<div class="figure" style="width:370px">
+  <img src="{@docRoot}preview/images/notifications/ExpandedText.png"
+    alt="" width="370" height="309" id="figure14" />
+  <p class="img-caption">
+    <strong>Figure 8.</strong> Expanded and contracted notification that is a summary (using InboxStyle)
+  </p>
+</div>
+
+<h4 id="make_notifications_optional"><strong>Make notifications optional</strong></h4>
+
+<p>Users should always be in control of notifications. Allow the user to disable your app's notifications or change their alert properties, such as alert sound and whether to use vibration, by adding a notification settings item to your application settings.</p>
+
+<h4 id="use_distinct_icons"><strong>Use distinct icons</strong></h4>
+
+<p>By glancing at the notification area, the user should be able to discern what kinds of notifications are currently pending.</p>
+
+<p><strong>Do</strong></p>
+
+<p>Look at the notification icons Android apps already provide and create notification icons for your app that are sufficiently distinct in appearance.</p>
+
+<p>[asset: include some sample visuals of notification icons]</p>
+
+<div class="figure" style="width:405px">
+  <img src="{@docRoot}preview/images/notifications/figure15.png"
+    alt="" width="405" height="80" id="figure15" />
+</div>
+
+<p><strong>Do</strong></p>
+
+<p>Use the proper <a href="{@docRoot}design/style/iconography.html#notification">notification icon style</a> for small icons, and the Material Light <a href="{@docRoot}design/style/iconography.html#action-bar">action bar icon style</a> for your action icons. Do not place any additional alpha (dimming or fading) into your small icons and action icons; they can have anti-aliased edges, but because L uses these icons as masks (that is, only the alpha channel is used), the image should generally be drawn at full opacity.</p>
+
+<p>[asset: show a zoomed example of how this should look]</p>
+
+<div class="figure" style="width:348px">
+  <img src="{@docRoot}preview/images/notifications/figure16.png"
+    alt="" width="348" height="300" id="figure16" />
+</div>
+
+<p><strong>Do</strong></p>
+
+<p>Keep your icons visually simple and avoid excessive detail that is hard to discern.</p>
+
+<p><strong>Don't</strong></p>
+
+<p>Use color to distinguish your app from others. Notification icons should only be a white-on-transparent background image.</p>
+
+<h4 id=pulse_the_notification_led_appropriately><strong>Pulse the notification LED appropriately</strong></h4>
+
+<p>Many Android devices contain a notification LED, which is used to keep the user informed about events while the screen is off. Notifications with a priority level of MAX, HIGH, or DEFAULT should cause the LED to glow, while those with lower priority (LOW and MIN) should not.</p>
+
+<p>The user's control over notifications should extend to the LED. When you use DEFAULT_LIGHTS, the LED will glow with a white color. Your notifications shouldn't use a different color unless the user has explicitly customized it.</p>
+
+<h2 id=building_notifications_that_users_care_about>Building notifications that users care about</h2>
+
+<p>To create an app that users love, it is important to design your notifications carefully.  Notifications embody your app's voice, and contribute to your app's personality. Unwanted or unimportant notifications can annoy the user or make them resent how much attention the app wants from them, so use notifications judiciously.</p>
+
+<h4 id=when_to_display_a_notification><strong>When to display a notification</strong></h4>
+
+<p>To create an application that people enjoy using, it's important to recognize that the user's attention and focus is a resource that must be protected. While Android's notification system has been designed to minimize the impact of notifications on the user's attention, it is nonetheless still important to be aware of the fact that notifications are interrupting the user's task flow. As you plan your notifications, ask yourself if they are important enough to warrant an interruption. If you are unsure, allow the user to opt into a notification using your apps notification settings or adjust the notifications priority flag to Low or Min to avoid distracting the user while they are doing something else.</p>
+
+<p>While well behaved apps generally only speak when spoken to, there are some limited cases where an app actually should interrupt the user with an unprompted notification.</p>
+
+<p>Notifications should be used primarily for <strong>time sensitive events</strong>, and especially if these synchronous events <strong>involve other people</strong>. For instance, an incoming chat is a real time and synchronous form of communication: there is another user actively waiting on you to respond. Calendar events are another good example of when to use a notification and grab the user's attention, because the event is imminent, and calendar events often involve other people.</p>
+
+<div class="figure" style="width:624px">
+  <img src="{@docRoot}preview/images/notifications/figure17.png"
+    alt="" width="624" height="232" id="figure17" />
+  <p class="img-caption">
+    <strong>Figure 8.</strong> Time sensitive notification examples
+  </p>
+</div>
+
+<p> </p>
+
+<h4 id=when_not_to_display_a_notification><strong>When not to display a notification</strong></h4>
+
+<p>There are however many other cases where notifications should not be used:</p>
+
+<ul>
+  <li> Avoid notifying the user of information that is not directed specifically at them, or information that is not truly time sensitive. For instance the asynchronous and undirected updates flowing through a social network generally do not warrant a real time interruption. For the users that do care about them, allow them to opt-in.
+  <li> Don't create a notification if the relevant new information is currently on screen. Instead, use the UI of the application itself to notify the user of new information directly in context. For instance, a chat application should not create system notifications while the user is actively chatting with another user.
+  <li> Don't interrupt the user for low level technical operations, like saving or syncing information, or updating an application, if it is possible for the system to simply take care of itself without involving the user.
+  <li> Don't interrupt the user to inform them of an error if it is possible for the application to recover from the error on its own without the user taking any action.
+  <li> Don't create notifications that have no true notification content and merely  advertise your app. A notification should provide useful, timely, new information and should not be used to merely launch an app.
+  <li> Don't create superfluous notifications just to get your brand in front of users. Such notifications will only frustrate and likely alienate your audience. The best way to provide the user with a small amount of updated information and to keep them engaged with your application is to develop a widget that they can choose to place on their home screen.
+</ul>
+
+<div class="figure" style="width:373px">
+  <img src="{@docRoot}preview/images/notifications/figure18.png"
+    alt="" width="373" height="734" id="figure18" />
+  <p class="img-caption">
+    <strong>Figure 9.</strong> Anti-examples of notifications
+  </p>
+</div>
+
+<h2 id=interacting_with_notifications>Interacting With Notifications</h2>
+
+<div class="figure" style="width:444px">
+  <img src="{@docRoot}preview/images/notifications/AntiSample1.png"
+    alt="" width="444" height="188" id="figure19" />
+</div>
+
+<p>Notifications are indicated by icons in the status bar and can be accessed by opening the notification drawer.</p>
+
+<p>Touching a notification opens the associated app to detailed content matching the notification. Swiping left or right on a notification removes it from the list.</p>
+
+<h4 id=ongoing_notifications><strong>Ongoing notifications</strong></h4>
+
+<p>Ongoing notifications keep users informed about an ongoing process in the background. For example, music players announce the currently playing track in the notification system and continue to do so until the user stops the playback. They can also be used to show the user feedback for longer tasks like downloading a file, or encoding a video. Ongoing notifications cannot be manually removed from the notification drawer.</p>
+
+<div class="figure" style="width:337px">
+  <img src="{@docRoot}preview/images/notifications/MusicPlayback.png"
+    alt="" width="337" height="196" id="figure20" />
+      <p class="img-caption">
+    <strong>Figure 10.</strong> Ongoing notification due to music playback
+  </p>
+</div>
+
+<p>The L lockscreen doesn't show transport controls for RCC (RemoteControlClient)s anymore. But the lockscreen <em>does</em> show notifications, so each app's playback notification is now the primary way for users to control playback from a locked state. This gives apps more control over which buttons to show and in what way, while providing a consistent experience for the user whether on the lockscreen or unlocked.</p>
+
+<h4 id=dialogs_and_toasts_are_for_feedback_not_notification><strong>Dialogs and toasts are for feedback not notification</strong></h4>
+
+<p>Your app should not create a dialog or toast if it is not currently on screen. Dialogs and Toasts should only be displayed as the immediate response to the user taking an action inside of your app. For further guidance on the use of dialogs and toasts, refer to <a href="{@docRoot}design/patterns/confirming-acknowledging.html">Confirming & Acknowledging</a>.</p>
+
+<p><strong>Ranking and ordering</strong></p>
+
+<p>Notifications are "news" and so they are essentially shown in reverse-chronological order, with special consideration given to the app's stated notification priority.</p>
+
+<p>In L, notifications are now a key part of the lockscreen, and are featured prominently every time the device display comes on. Because space on the lockscreen is tight, it is more important than ever to identify the most urgent or relevant notifications.</p>
+
+<p>Therefore, L has a more sophisticated sorting algorithm for notifications, taking into account:</p>
+
+<ul>
+  <li> The timestamp and application's stated priority, as before.
+  <li> Whether the notification has recently disturbed the user with sound or vibration. (That is, if the phone just made noise, and the user wants to know "what just happened?" the lockscreen should answer that at a glance.)
+  <li> Any people that are attached to the notification using {@code EXTRA_PEOPLE}, and in particular whether those are starred contacts.
+</ul>
+
+<p>To best take advantage of this sorting, developers should focus on the user experience they want to create rather than aiming for any particular spot on the list.</p>
+
+<p>An example:</p>
+
+<div class="figure" style="width:624px">
+  <img src="{@docRoot}preview/images/notifications/AntiSample3.png"
+    alt="" width="624" height="334" id="figure21" />
+      <p class="img-caption">
+    <strong>Figure 11.</strong> Gmail notifications are default priority, so they normally sort below messages from an instant messaging app like Hangouts, but Gmail will get a temporary bump when new messages come in.
+  </p>
+</div>
+
+<p>Give the user choices: about whether to have notifications at all, whether they should vibrate or make sound.</p>
+
+<p><strong>On the lockscreen</strong></p>
+
+<p>Starting in L, notifications are visible on the lockscreen, and so we must consider the user's privacy. Notifications often contain sensitive information, and we must take care when showing it to anyone who picks up the device and turns on the display.</p>
+
+<ul>
+  <li> For devices without a secure lockscreen, a simple slide gesture unlocks the whole device. Therefore, Android will always show the complete contents of all notifications on insecure lockscreens.
+  <li> When a device has a secure lockscreen (PIN, pattern, or password), however, it divides the interface into two spheres: "public", the things that are displayed atop a secure lockscreen and can therefore be seen by anyone; and "private", the world behind that lockscreen, which can only be accessed by supplying the correct authentication.
+</ul>
+
+<div class="figure" style="width:249px">
+  <img src="{@docRoot}preview/images/notifications/LockScreen.png"
+    alt="" width="249" height="482" id="figure22" />
+      <p class="img-caption">
+    <strong>Figure 12.</strong> Notifications on the lockscreen followed by the Pattern Unlock when the user attempts to unlock the phone.
+  </p>
+</div>
+
+<p><strong>The user decides what shows on the secure lockscreen</strong></p>
+
+<p>When setting up a secure lockscreen, the user can choose to conceal sensitive details from atop the secure lockscreen. In this case the SystemUI considers the notification's <em>visibility level</em> to figure out what can safely be shown.</p>
+
+<p>To control the visibility level, call {@code android.app.Notification.Builder.setVisibility()} and specify one of these values:</p>
+
+<ul>
+  <li>{@code android.app.Notification.VISIBILITY_PUBLIC}. Shows the notification's full content. This is the system default if visibility is left unspecified.
+  <li>{@code android.app.Notification.VISIBILITY_PRIVATE}. The lockscreen will reveal basic information about the existence of this notification, including its icon and the name of the app that posted it. The rest of the notification's details, however, are not displayed.
+  <ul>
+    <li> If you want to provide a different public version of your notification for the system to display on a secure lockscreen, supply a replacement Notification object in the {@code android.app.Notification.publicVersion} field.
+    <li> This is an app's opportunity to create a redacted version of the content that is still useful but does not reveal personal information.
+    <li> <strong>Example: </strong>An SMS app whose notifications include the text of the SMS and the sender's name and contact icon. This notification should be {@code VISIBILITY_PRIVATE}, but the {@code publicVersion} could still contain useful information like "3 new messages" without any other identifying details.
+  </ul>
+  <li>{@code android.app.Notification.VISIBILITY_SECRET}. Shows only the most minimal information, excluding even the notification's icon.
+</ul>
+
diff --git a/docs/html/preview/preview_toc.cs b/docs/html/preview/preview_toc.cs
index a292146..a505905 100644
--- a/docs/html/preview/preview_toc.cs
+++ b/docs/html/preview/preview_toc.cs
@@ -24,6 +24,12 @@
   </li>
 
   <li class="nav-section">
+    <div class="nav-section-header empty">
+    <a href="<?cs var:toroot ?>preview/notifications.html">Notification Design</a></div>
+  </li>
+
+
+  <li class="nav-section">
     <div class="nav-section-header">
       <a href="<?cs var:toroot ?>preview/tv/index.html">TV</a>
       </div>
@@ -93,9 +99,9 @@
       <a href="<?cs var:toroot ?>preview/license.html">License Agreement</a>
       </div>
   </li>
-  <li class="nav-section" style="margin: 20px 0 0 3px;">
-    <div class="nav-section-header paging-links empty">
-      <a href="<?cs var:toroot ?>index.html" class="prev-page-link">Developer Home</a>
+  <li class="nav-section" style="margin: 20px 0 0 -10px;">
+    <div class="nav-section-header empty">
+      <a href="<?cs var:toroot ?>index.html" class="back-link">Developer Home</a>
       </div>
   </li>
 </ul>
diff --git a/docs/html/preview/samples.jd b/docs/html/preview/samples.jd
index e4e1674..155ae21 100644
--- a/docs/html/preview/samples.jd
+++ b/docs/html/preview/samples.jd
@@ -15,7 +15,7 @@
 <h3 id="BasicManagedProfile">BasicManagedProfile</h3>
 <div class="figure" style="width:220px">
   <img src="{@docRoot}preview/images/BasicManagedProfile.png"
-     srcset="{@docRoot}preview/images/hun-BasicManagedProfile@2x.png 2x"
+     srcset="{@docRoot}preview/images/BasicManagedProfile@2x.png 2x"
      alt="" height="375" />
   <p class="img-caption">
     <strong>Figure 1.</strong> The BasicManagedProfile sample app.
@@ -33,6 +33,8 @@
 <p class="note"><strong>Note:</strong> There can be only one managed profile on
   a device at a time.</p>
 
+<p><a href="http://github.com/googlesamples/android-BasicManagedProfile">Get it on GitHub</a></p>
+
 <h3 id="Camera2Basic">Camera2Basic</h3>
 
 <!--
@@ -47,6 +49,7 @@
 <p>This sample demonstrates the basic use of the Camera2 API. The sample code
 demonstrates how you can display camera preview and take pictures.</p>
 
+<p><a href="http://github.com/googlesamples/android-Camera2Basic">Get it on GitHub</a></p>
 
 
 <h3 id="Camera2Video">Camera2Video</h3>
@@ -58,8 +61,11 @@
   </p>
 </div>
 -->
+
 <p>This sample demonstrates how to record video using the Camera2 API.</p>
 
+<p><a href="http://github.com/googlesamples/android-Camera2Video">Get it on GitHub</a></p>
+
 <h3 id="ActivitySceneTransitionBasic">ActivitySceneTransitionBasic</h3>
 <div class="figure" style="width:220px">
   <img src="{@docRoot}preview/images/ActivitySceneTransitionBasic.png"
@@ -75,6 +81,7 @@
 of <code>moveImage</code> and <code>changeBounds</code> to nicely transition
 from a grid of images to an activity with a large image and detail text. </p>
 
+<p><a href="http://github.com/googlesamples/android-ActivitySceneTransition">Get it on GitHub</a></p>
 
 <h3 id="ElevationBasic">ElevationBasic</h3>
 <!--
@@ -85,6 +92,7 @@
   </p>
 </div>
 -->
+
 <p>
 This sample demonstrates two alternative ways to move a view in the z-axis:</p>
 
@@ -94,7 +102,7 @@
       <code>setTranslationZ()</code>.</li>
 </ul>
 
-
+<p><a href="http://github.com/googlesamples/android-ElevationBasic">Get it on GitHub</a></p>
 
 <h3 id="ElevationDrag">ElevationDrag</h3>
 <!--
@@ -110,6 +118,7 @@
 Elevation and z-translation are used to render the shadows. The views are
 clipped using different outlines.</p>
 
+<p><a href="http://github.com/googlesamples/android-ElevationDrag">Get it on GitHub</a></p>
 
 
 <h3 id="ClippingBasic">ClippingBasic</h3>
@@ -121,10 +130,12 @@
   </p>
 </div>
 -->
+
 <p>
 This sample demonstrates clipping on a {@link android.view.View}.
 </p>
 
+<p><a href="http://github.com/googlesamples/android-ClippingBasic">Get it on GitHub</a></p>
 
 <div class="figure" style="width:220px">
   <img src="{@docRoot}preview/images/JobSchedulerSample.png"
@@ -144,11 +155,13 @@
   </p>
 </div>
 -->
+
 <p>
 This sample implements a multi-player game, demonstrating game controller input
 handling.
 </p>
 
+<p><a href="http://github.com/googlesamples/androidtv-GameController">Get it on GitHub</a></p>
 
 
 <h3 id="Visual-Game-Controller">Visual-Game-Controller</h3>
@@ -160,11 +173,12 @@
   </p>
 </div>
 -->
+
 <p>
 This sample displays events received from a game controller shown on the screen.
 </p>
 
-
+<p><a href="http://github.com/googlesamples/androidtv-VisualGameController">Get it on GitHub</a></p>
 
 <h3 id="AndroidTVLeanbackSample">AndroidTVLeanbackSample</h3>
 <!--
@@ -175,21 +189,21 @@
   </p>
 </div>
 -->
+
 <p>
 This sample demonstrates use of the Android TV Leanback Support Library.
 </p>
 
-
+<p><a href="http://github.com/googlesamples/androidtv-Leanback">Get it on GitHub</a></p>
 
 <h3 id="JobSchedulerSample">JobSchedulerSample</h3>
 
-
 <p>
 This sample app allows the user to schedule jobs through the UI, and shows
 visual cues when the jobs are executed.
 </p>
 
-
+<p><a href="http://github.com/googlesamples/android-JobScheduler">Get it on GitHub</a></p>
 
 <h3 id="NavigationDrawerSample">NavigationDrawerSample</h3>
 <!--
@@ -200,12 +214,13 @@
   </p>
 </div>
 -->
+
 <p>
 This sample illustrates a common usage of the Android support library's
 {@link android.support.v4.widget.DrawerLayout} widget.
 </p>
 
-
+<p><a href="http://github.com/googlesamples/android-NavigationDrawer">Get it on GitHub</a></p>
 <!--
 <h3 id="">SampleName</h3>
 
diff --git a/docs/html/preview/setup-sdk.jd b/docs/html/preview/setup-sdk.jd
index 876b348..af466ab 100644
--- a/docs/html/preview/setup-sdk.jd
+++ b/docs/html/preview/setup-sdk.jd
@@ -1,6 +1,174 @@
 page.title=Setting Up the Preview SDK
 @jd:body
 
+
+
+
+
+
+
+<div style="position:relative; min-height:600px">
+
+  <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;">
+
+    <p class="sdk-terms-intro">Before installing the Android SDK, you must agree to the following terms and conditions.</p>
+
+      <h2 class="norule">Terms and Conditions</h2>
+    <div class="sdk-terms" onfocus="this.blur()" style="width:678px">
+This is the Android SDK Preview License Agreement (the “License Agreement”).
+
+1. Introduction
+
+1.1 The Android SDK Preview (referred to in the License Agreement as the “Preview” and specifically including the Android system files, packaged APIs, and Preview library files, if and when they are made available) is licensed to you subject to the terms of the License Agreement. The License Agreement forms a legally binding contract between you and Google in relation to your use of the Preview.
+
+1.2 "Android" means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
+
+1.3 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
+
+2. Accepting the License Agreement
+
+2.1 In order to use the Preview, you must first agree to the License Agreement. You may not use the Preview if you do not accept the License Agreement.
+
+2.2 By clicking to accept and/or using the Preview, you hereby agree to the terms of the License Agreement.
+
+2.3 You may not use the Preview and may not accept the License Agreement if you are a person barred from receiving the Preview under the laws of the United States or other countries including the country in which you are resident or from which you use the Preview.
+
+2.4 If you will use the Preview internally within your company or organization you agree to be bound by the License Agreement on behalf of your employer or other entity, and you represent and warrant that you have full legal authority to bind your employer or such entity to the License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the Preview on behalf of your employer or other entity.
+
+3. Preview License from Google
+
+3.1 Subject to the terms of the License Agreement, Google grants you a royalty-free, non-assignable, non-exclusive, non-sublicensable, limited, revocable license to use the Preview, personally or internally within your company or organization, solely to develop applications to run on the Android platform.
+
+3.2 You agree that Google or third parties owns all legal right, title and interest in and to the Preview, including any Intellectual Property Rights that subsist in the Preview. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
+
+3.3 You may not use the Preview for any purpose not expressly permitted by the License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Preview or any part of the Preview; or (b) load any part of the Preview onto a mobile handset or any other hardware device except a personal computer, combine any part of the Preview with other software, or distribute any software or device incorporating a part of the Preview.
+
+3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the Preview.
+
+3.5 Use, reproduction and distribution of components of the Preview licensed under an open source software license are governed solely by the terms of that open source software license and not the License Agreement. You agree to remain a licensee in good standing in regard to such open source software licenses under all the rights granted and to refrain from any actions that may terminate, suspend, or breach such rights.
+
+3.6 You agree that the form and nature of the Preview that Google provides may change without prior notice to you and that future versions of the Preview may be incompatible with applications developed on previous versions of the Preview. You agree that Google may stop (permanently or temporarily) providing the Preview (or any features within the Preview) to you or to users generally at Google's sole discretion, without prior notice to you.
+
+3.7 Nothing in the License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
+
+3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the Preview.
+
+4. Use of the Preview by You
+
+4.1 Google agrees that nothing in the License Agreement gives Google any right, title or interest from you (or your licensors) under the License Agreement in or to any software applications that you develop using the Preview, including any intellectual property rights that subsist in those applications.
+
+4.2 You agree to use the Preview and write applications only for purposes that are permitted by (a) the License Agreement, and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
+
+4.3 You agree that if you use the Preview to develop applications, you will protect the privacy and legal rights of users. If users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If users provide you with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, each user has given you permission to do so.
+
+4.4 You agree that you will not engage in any activity with the Preview, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of Google or any third party.
+
+4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
+
+4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under the License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
+
+4.7 The Preview is in development, and your testing and feedback are an important part of the development process. By using the Preview, you acknowledge that implementation of some features are still under development and that you should not rely on the Preview having the full functionality of a stable release. You agree not to publicly distribute or ship any application using this Preview as this Preview will no longer be supported after the official Android SDK is released.
+
+5. Your Developer Credentials
+
+5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
+
+6. Privacy and Information
+
+6.1 In order to continually innovate and improve the Preview, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the Preview are being used and how they are being used. Before any of this information is collected, the Preview will notify you and seek your consent. If you withhold consent, the information will not be collected.
+
+6.2 The data collected is examined in the aggregate to improve the Preview and is maintained in accordance with Google's Privacy Policy located at http://www.google.com/policies/privacy/.
+
+7. Third Party Applications
+
+7.1 If you use the Preview to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
+
+7.2 You should be aware the data, content, and resources presented to you through such a third party application may be protected by intellectual property rights which are owned by the providers (or by other persons or companies on their behalf). You may not modify, rent, lease, loan, sell, distribute or create derivative works based on these data, content, or resources (either in whole or in part) unless you have been specifically given permission to do so by the relevant owners.
+
+7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party.
+
+8. Using Google APIs
+
+8.1 Google APIs
+
+8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
+
+8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
+
+9. Terminating the License Agreement
+
+9.1 the License Agreement will continue to apply until terminated by either you or Google as set out below.
+
+9.2 If you want to terminate the License Agreement, you may do so by ceasing your use of the Preview and any relevant developer credentials.
+
+9.3 Google may at any time, terminate the License Agreement, with or without cause, upon notice to you.
+
+9.4 The License Agreement will automatically terminate without notice or other action upon the earlier of:
+(A) when Google ceases to provide the Preview or certain parts of the Preview to users in the country in which you are resident or from which you use the service; and
+(B) Google issues a final release version of the Android SDK.
+
+9.5 When the License Agreement is terminated, the license granted to you in the License Agreement will terminate, you will immediately cease all use of the Preview, and the provisions of paragraphs 10, 11, 12 and 14 shall survive indefinitely.
+
+10. DISCLAIMERS
+
+10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE PREVIEW IS AT YOUR SOLE RISK AND THAT THE PREVIEW IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
+
+10.2 YOUR USE OF THE PREVIEW AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE PREVIEW IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE. WITHOUT LIMITING THE FOREGOING, YOU UNDERSTAND THAT THE PREVIEW IS NOT A STABLE RELEASE AND MAY CONTAIN ERRORS, DEFECTS AND SECURITY VULNERABILITIES THAT CAN RESULT IN SIGNIFICANT DAMAGE, INCLUDING THE COMPLETE, IRRECOVERABLE LOSS OF USE OF YOUR COMPUTER SYSTEM OR OTHER DEVICE.
+
+10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+
+11. LIMITATION OF LIABILITY
+
+11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
+
+12. Indemnification
+
+12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys’ fees) arising out of or accruing from (a) your use of the Preview, (b) any application you develop on the Preview that infringes any Intellectual Property Rights of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you of the License Agreement.
+
+13. Changes to the License Agreement
+
+13.1 Google may make changes to the License Agreement as it distributes new versions of the Preview. When these changes are made, Google will make a new version of the License Agreement available on the website where the Preview is made available.
+
+14. General Legal Terms
+
+14.1 the License Agreement constitutes the whole legal agreement between you and Google and governs your use of the Preview (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the Preview.
+
+14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in the License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
+
+14.3 If any court of law, having the jurisdiction to decide on this matter, rules that any provision of the License Agreement is invalid, then that provision will be removed from the License Agreement without affecting the rest of the License Agreement. The remaining provisions of the License Agreement will continue to be valid and enforceable.
+
+14.4 You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to the License Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of the License Agreement that confers a benefit on (or rights in favor of) them. Other than this, no other person or company shall be third party beneficiaries to the License Agreement.
+
+14.5 EXPORT RESTRICTIONS. THE PREVIEW IS SUBJECT TO UNITED STATES EXPORT LAWS AND REGULATIONS. YOU MUST COMPLY WITH ALL DOMESTIC AND INTERNATIONAL EXPORT LAWS AND REGULATIONS THAT APPLY TO THE PREVIEW. THESE LAWS INCLUDE RESTRICTIONS ON DESTINATIONS, END USERS AND END USE.
+
+14.6 The License Agreement may not be assigned or transferred by you without the prior written approval of Google, and any attempted assignment without such approval will be void. You shall not delegate your responsibilities or obligations under the License Agreement without the prior written approval of Google.
+
+14.7 The License Agreement, and your relationship with Google under the License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from the License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
+    </div><!-- sdk terms -->
+
+
+
+    <div id="sdk-terms-form">
+      <p>
+        <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" />
+        <label id="agreeLabel" for="agree">I have read and agree with the above terms and conditions</label>
+      </p>
+      <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p>
+    </div>
+
+
+  </div><!-- end TOS -->
+
+
+
+
+
+
+
+
+
+  <div id="landing">
+
 <p>The Preview SDK is available from the Android SDK Manager. <!-- Not yet! -->
 This document assumes that you are familiar with Android app development, such
 as using the Android SDK Manager and creating projects. If you're new to
@@ -52,26 +220,25 @@
 
 <ol>
   <li>Download and uncompress the Android Developer Preview package.
-    <p class="table-caption" id="table1">
-      <strong>Table 1.</strong> L Developer Preview system images.</p>
-    <table>
+    <table style="width:860px">
       <tr>
         <th scope="col">Device</th>
         <th scope="col">Download</th>
-        <th scope="col">MD5 Checksum</th>
-        <th scope="col">SHA-1 Checksum</th>
+        <th scope="col">Checksum</th>
       </tr>
       <tr id="hammerhead">
-        <td>Nexus 5 (GSM/LTE) "hammerhead"</td>
-        <td><!-- TODO --></td>
-        <td><code>5a6ae77217978cb7b958a240c2e80b57</code></td>
-        <td><code>ac1d8a8e4f4a1dca5864dc733caa940bffc28616</code></td>
+        <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td>
+        <td><a href="#top" onclick="onDownload(this)"
+          >hammerhead-lpv79-preview-ac1d8a8e.tgz</a></td>
+        <td>MD5: <code>5a6ae77217978cb7b958a240c2e80b57</code>
+        <br>SHA-1: <code>ac1d8a8e4f4a1dca5864dc733caa940bffc28616</code></td>
       </tr>
       <tr id="razor">
-        <td>Nexus 7 (Wifi) "razor"</td>
-        <td><!-- TODO --></td>
-        <td><code>b293a5d3a4e07beabebcc0be85ad68a2</code></td>
-        <td><code>d0ddf8ce733ba2a34279cdff8827fd604762c2342d</code></td>
+        <td>Nexus 7 (Wifi) <br>"razor"</td>
+        <td><a href="#top" onclick="onDownload(this)"
+          >razor-lpv79-preview-d0ddf8ce.tgz</a></td>
+        <td>MD5: <code>b293a5d3a4e07beabebcc0be85ad68a2</code>
+        <br><nobr>SHA-1: <code>d0ddf8ce733ba2a34279cdff8827fd604762c2342d</nobr></td>
       </tr>
     </table>
   </li>
@@ -142,3 +309,56 @@
     &lt;/style>
 &lt;/resources>
 </pre>
+
+  </div><!-- landing -->
+
+</div><!-- relative wrapper -->
+
+
+
+<script>
+  var urlRoot = "http://storage.googleapis.com/androiddevelopers/preview/";
+  function onDownload(link) {
+
+    $("#downloadForRealz").html("Download " + $(link).text());
+    $("#downloadForRealz").attr('href', urlRoot + $(link).text());
+
+    $("#tos").fadeIn('fast');
+    $("#landing").fadeOut('fast');
+
+    return true;
+  }
+
+
+  function onAgreeChecked() {
+    /* verify that the TOS is agreed */
+    if ($("input#agree").is(":checked")) {
+      /* reveal the download button */
+      $("a#downloadForRealz").removeClass('disabled');
+    } else {
+      $("a#downloadForRealz").addClass('disabled');
+    }
+  }
+
+  function onDownloadForRealz(link) {
+    if ($("input#agree").is(':checked')) {
+      $("#tos").fadeOut('fast');
+      $("#landing").fadeIn('fast');
+      _gaq.push(['_trackEvent', 'L Preview', 'System Image', $("#downloadForRealz").html()]);
+      location.hash = "";
+      return true;
+    } else {
+      $("label#agreeLabel").parent().stop().animate({color: "#258AAF"}, 200,
+        function() {$("label#agreeLabel").parent().stop().animate({color: "#222"}, 200)}
+      );
+      return false;
+    }
+  }
+
+  $(window).hashchange( function(){
+    if (location.hash == "") {
+      location.reload();
+    }
+  });
+
+</script>
\ No newline at end of file
diff --git a/docs/html/preview/tv/games/index.jd b/docs/html/preview/tv/games/index.jd
index b9de3a4..763eada 100644
--- a/docs/html/preview/tv/games/index.jd
+++ b/docs/html/preview/tv/games/index.jd
@@ -1,70 +1,152 @@
-page.title=Games on TV
+ikpage.title=Games on TV
 page.tags="controller"
 
 @jd:body
 
-<p>This section complements the [larger best-practices guidance for designing for Android TV](TODO, use formal name of referenced doc, and add link). It assumes that you have read that guidance, and seeks to minimize repetition.</p>
+<div id="qv-wrapper">
+<div id="qv">
+  <h2>In this document</h2>
+  <ol>
+    <li><a href="#display">Display</li></a></li>
+    <li><a href="#control">Input Devices</li></a></li>
+    <li><a href="#manifest">Manifest</li></a></li>
+    <li><a href="#gpgs">Google Play Game Services</li></a></li>
+    <li><a href="#web">Web</a></li>
+  </ol>
+</div>
+</div>
 
-<h2>Overview</h2>
-<p>Because of factors including its large size, its control scheme, and its nature as a shared display, the television screen presents a number of considerations that may be new to mobile developers. This document breaks these considerations down into five sections:</p>
+<p>The television screen presents a number of considerations that may be new to mobile-game
+developers. These areas include its large size, its control scheme, and the fact that all
+players are viewing it simultaneously.</p>
+
+
+<h2 id=display>Display</h2>
+<p>The two main things to keep in mind when developing games for the TV screen are its nature as a
+shared display and the need to design your game for a landscape orientation.</p>
+<h3>Shared display</h3>
+<p>A living-room TV poses design challenges for multiplayer games, in that all players can see
+everything. This issue is especially relevant to games (such as card games or strategy games) that
+rely on each player’s possession of hidden information.</p>
+<p>Some mechanisms you can implement to address the problem of one player’s eavesdropping
+on another’s information are:</p>
 <ul>
-<li>Display</li>
-<li>Control</li>
-<li>Manifest</li>
-<li>Google Play Game Services</li>
-<li>Web</li>
+<li>A blinder on the screen to help conceal information. For example, in a
+turn-based game like a word or card game, one player at a time might view the display. When the
+player finishes a move, the game allows him or her to cover the screen with a blinder that
+blocks anyone from viewing secret information. When the next player begins a turn, the blinder
+opens to reveal his or her own information.</li>
+<li>A companion app, running on a phone or tablet, can enable a player to conceal
+information.</li>
 </ul>
-<h2>Display</h2>
-<p>Large and centrally situated, the television screen imposes limitations, but also opens up new opportunities for immersive gameplay.</p>
-<h3>A shared display</h3>
-<p>A living-room TV poses design challenges for multiplayer games, in that all players can see everything. This issue is especially germane to games (such as card games or strategy games) that rely on each player’s possession of hidden information.</p>
-<p>Some mechanisms you can implement to address the problem of one player’s “eavesdropping” on another’s information are:</p>
-<ul>
-<li>A player might place a "blinder" on the screen to help conceal information. For example, in a turn-based game like a word or card game, one player at a time might view the display. When the player finishes a move, the game allows him or her to cover the screen with a “blinder” that blocks anyone from viewing secret information. When the next player begins a turn, the blinder opens to reveal his or her own information.</li>
-<li>A second screen, such as a handset or larger device, can enable a player to conceal information. For information on implementing second-screen support, see <a href="http://developer.android.com/reference/android/app/Presentation.html">Presentation</a> on the Android developer site.</li>
-</ul>
-<h3>No touch interface</h3>
-<p>A television does not have a touch interface. Your game design, therefore, need not take into account the possibility that a player’s controlling fingers might block the on-screen action. You can assume constant visibility of the entire viewing area.</p>
-<p>See the <a href=#control>Control</a> section in this document and in [Design for TV](TODO, use formal name of referenced doc, and add link) for more implications of the lack of touch interface.</p>
 <h3>Landscape display</h3>
-<p>In mobile-device terms, a TV is always “sideways.” You can’t turn it, and there is no portrait orientation. You should always be designing your TV games to be displayed in landscape mode.</p>
-<a id=control><h2>Control</h2>
-<p>Without a touch interface, it's even more important than usual to get your controls right, so that players find them intuitive and fun to use. The separation of controller from device also introduces some other issues to pay attention to, like keeping track of multiple players' controllers, and handling disconnects gracefully.</p>
+<p>A TV is always sideways: You can’t turn it, and there is no
+portrait orientation. Always design your TV games to be displayed in landscape
+mode.</p>
+
+<h2 id="control">Input Devices</h2>
+<p>TVs don't have touch interfaces, so it's even more important to get your controls right and make
+ sure that players find them intuitive and fun to use. The separation of controller from device also
+introduces some other issues to pay attention to, like keeping track of multiple players'
+controllers, and handling disconnects gracefully.</p>
 <h3>D-pad</h3>
-<p>Because of the lack of touch interface, you should be planning your control scheme based on a D-pad. Some key points to keep in mind include:</p>
-<p>The player needs to use the gamepad in all aspects of the game&ndash;not just controlling core gameplay, but also navigating menus and ads. For this reason, you should also ensure that your Android TV game does not refer to a touch interface: for example, an Android TV game cannot tell a player to "Tap to skip".</p>
-<p>You can avoid unhappy surprises (and resulting low ratings) by using your Play Store description to communicate to the player any expectations about controllers. If a game is better suited to a gamepad with a joystick than one with only a D-pad, you should make this clear. A player who uses an ill-suited controller for a game is likely to have a subpar experience&ndash;and penalize your game in the ratings.</p>
-<p>You can also help ensure a good player experience by ensuring that button mapping is intuitive and flexible. For example, you can adhere to accepted custom by using the A button to <code>Accept</code>, and the B button to <code>Cancel</code>. You can also offer flexibility in the form of remappability. For more information on button mapping, see <a href="http://developer.android.com/training/game-controllers/controller-input.html">Handling Controller Actions</a>.</p>
-<p>Your game can also contribute to a good match between controller and game by querying the controller about its capabilities. For example, you may intend for a player to steer an object by waving the controller in the air. If a player's controller lacks accelerometer and gyroscope hardware, however, waving will not work. But when your game queries the controller and discovers that motion detection is not supported, it can switch over to an alternative, available control scheme.</p>
-<p>For more information on querying controller capabilities, see <a href="http://developer.android.com/training/game-controllers/compatibility.html">Supporting Controllers Across Android Versions</a>.</p>
+<p>Plan your control scheme around a directional pad (D-pad) control, since this control set is the
+default for Android TV devices. The player needs to be able to use a D-Pad in all aspects of the
+game&ndash;not just controlling core
+gameplay, but also navigating menus and ads. For this reason, you should also ensure that your
+Android TV game does not refer to a touch interface: for example, an Android TV game cannot tell a
+player to <strong>Tap to skip</strong>.</p>
+<p>How you shape the player's interaction with the controller can be key to achieving a great user
+experience:
+  <ul>
+  <p><li><strong>Communicate Controller Requirements up Front</strong> - Use your Play Store description to communicate to the player any expectations about
+controllers. If a game is better suited to a gamepad with a joystick than one with only a D-pad,
+make this fact clear. A player who uses an ill-suited controller for a game is likely to have a
+subpar experience&ndash;and penalize your game in the ratings.</p>
+  <p><li><strong>Use Consistent Button Mapping</strong> - Intuitive and flexible button mapping is key to a good user experience. For example,
+you can adhere to accepted custom by using the A button to <code>Accept</code>, and the B button to
+<code>Cancel</code>. You can also offer flexibility in the form of remappability. For more
+information on button mapping, see <a
+href="http://developer.android.com/training/game-controllers/controller-input.html">Handling
+Controller Actions</a>.</p>
+  <p><li><strong>Detect Controller Capabilities and Adjust Accordingly</strong> - Query the controller about its capabilities in order to optimize the match between
+controller and game. For example, you may intend for a player to steer an object by waving the
+controller in the air. If a player's controller lacks accelerometer and gyroscope hardware, however,
+waving will not work. When, however, your game queries the controller and discovers that motion detection
+is not supported, it can switch over to an alternative, available control scheme.
+For more information on querying controller capabilities, see <a
+href="http://developer.android.com/training/game-controllers/compatibility.html">Supporting
+Controllers Across Android Versions</a>.</p>
+  </ul>
 <h3>Back-button behavior</h3>
-<p>The Back button should never act as a toggle. For example, do not use it to both open and close a menu. Its behavior should only be linear. For example: Game play &gt; Game pause screen &gt; Game main screen &gt; Android home screen.</p>
-<p>With this principle of "linear navigation" in mind, you <b>may</b> use the back button to leave an in-game menu (opened by a different button) and return to gameplay.</p>
+<p>The Back button should never act as a toggle. For example, do not use it to both open and close
+a menu. It should only navigate backward, breadcrumb-style, through the previous screens the player has
+been on. For example: Game play &gt; Game pause screen &gt; Game
+main screen &gt; Android home screen.</p>
+<p>Since the Back button should only perform linear (backward) navigation, you may use the
+back button to leave an in-game menu (opened by a different button) and return to gameplay. For
+more information about design for navigation, see <a
+href="http://developer.android.com/design/patterns/navigation.html">Navigation with Back and
+Up</a>. To learn about implementation, refer to <a
+href="http://developer.android.com/training/implementing-navigation/temporal.html">Providing Proper
+Back Navigation</a>. </p>
 <h3>Handling multiple controllers</h3>
-<p>When multiple players are playing a game, each with his or her own controller, it is important to map each player-controller pair. For information on how to implement controller-number identification, see <a href="http://developer.android.com/reference/android/view/InputDevice.html#getControllerNumber(">Input Devices</a>) on the Android developer site.</p>
+<p>When multiple players are playing a game, each with his or her own controller, it is important
+to map each player-controller pair. For information on how to implement controller-number
+identification, see <a href="http://developer.android.com/reference/android/view/InputDevice.html
+#getControllerNumber(">Input Devices</a>) on the Android developer site.</p>
 <h3>Handling disconnects</h3>
-<p>When a controller is disconnected in the middle of gameplay, the game should pause, and a dialog should appear prompting the disconnected player to reconnect his or her controller.</p>
-<p>The dialog should also offer troubleshooting tips (e.g., "Check your Bluetooth connection").</p>
-<h2>Manifest</h2>
-<p>Games are displayed in a separate row from regular apps in the launcher. Android TV uses the <code>android:isGame</code> flag to differentiate games from non-game apps. You can assign it a value of either <code>true</code> or <code>false</code>. For example:</p>
+<p>When a controller is disconnected in the middle of gameplay, the game should pause, and a dialog
+should appear prompting the disconnected player to reconnect his or her controller.</p>
+<p>The dialog should also offer troubleshooting tips (for example, a pop-up dialog telling the player to
+"Check your Bluetooth connection"). For more information on implementing input-device support, see <a
+href="http://developer.android.com/training/game-controllers/controller-input.html">Supporting Game
+Controllers"</a>. Specific information about Bluetooth connections is at <a
+href="http://developer.android.com/guide/topics/connectivity/bluetooth.html">Bluetooth</a>.</p>
+
+<h2 id="manifest">Manifest</h2>
+<p>Games are displayed in a separate row from regular apps in the launcher. Android TV uses the
+<code>android:isGame</code> flag to differentiate games from non-game apps. You can assign it a
+value of either <code>true</code> or <code>false</code>. For example:</p>
 <pre class="fragment">&lt;application&gt;
- . . .
- &lt;meta-data android:name="isGame" android:value=["true" | "false"]/&gt;
-android:isGame=["true" | "false"] &gt;
- . . .
-&lt;/application&gt;
-</pre><h2>Google Play Game Services</h2>
-<p>If your game integrates Google Play Game Services, you should keep in mind a number of considerations pertaining to achievements, sign-on, saving games, and multiplayer play.</p>
+ ...
+&lt; android:isGame=["true" | "false"] &gt;
+ ...
+&lt;/application&gt;</pre>
+
+<h2 id="gpgs">Google Play Game Services</h2>
+<p>If your game integrates Google Play Game Services, you should keep in mind a number of
+considerations pertaining to achievements, sign-on, saving games, and multiplayer play.</p>
 <h3>Achievements</h3>
-<p>Your game should include at least five (earnable) achievements. Only a user controlling gameplay from a supported input device should be able to earn achievements.</p>
-<h3>Sign-on</h3>
-<p>Your game should attempt to sign the user in on launch. If the player declines sign-in several times in a row, your game should stop asking.</p>
+<p>Your game should include at least five (earnable) achievements. Only a user controlling gameplay
+from a supported input device should be able to earn achievements. For more information on
+Achievements and how to implement them, see <a
+href="https://developers.google.com/games/services/android/achievements">Achievements in
+Android</a>.</p>
+<h3>Sign-in</h3>
+<p>Your game should attempt to sign the user in on launch. If the player declines sign-in several
+times in a row, your game should stop asking. Learn more about sign-in at <a
+href="https://developers.google.com/games/services/training/signin">Implementing Sign-in on
+Android</a>.</p>
 <h3>Saving</h3>
-<p>We highly recommend using Play Services cloud save to store your game save. Your game should bind game saves to a specific Google account, so as to be uniquely identifiable even across devices: Whether the player is using a handset or a TV, the game should be able to pull the same game-save information from his or her account.</p>
-<p>You should also provide an option in your game's UI to prompt the player to destroy save data. You might put the option in the game's <code>Settings</code> screen.</p>
+<p>We highly recommend using Play Services <a
+href="https://developers.google.com/games/services/common/concepts/cloudsave">Cloud Save</a> to
+store your game save. Your game should bind game saves to a specific Google account, so as to be
+uniquely identifiable even across devices: Whether the player is using a handset or a TV, the game
+should be able to pull the same game-save information from his or her account.</p>
+<p>You should also provide an option in your game's UI to allow the player to delete locally and
+cloud-stored data. You might put the option in the game's <code>Settings</code> screen. For
+specifics on implementing Cloud Save, see <a
+href="https://developers.google.com/games/services/android/cloudsave">Cloud Save in Android</a>.</p>
 <h3>Multiplayer experience</h3>
-<p>A game offering a multiplayer experience must allow at least two players to enter a room.</p>
-<h2>Web</h2>
-<p>Android TV games do not support a full web browser. You should therefore avoid using generic URLs in your game.</p>
-<p>Webviews will work for logins to services like Google+ and Facebook. </p>
+<p>A game offering a multiplayer experience must allow at least two players to enter a room. For
+further information on multiplayer games in Android, see the <a
+href="https://developers.google.com/games/services/android/realtimeMultiplayer">Real-time
+Multiplayer</a> and <a href="">Turn-based Multiplayer</a> documentation on the Android developer
+site.</p>
+
+<h2 id="web">Web</h2>
+<p>We discourage including web browsing in games for Android TV. The television set is not well-suited for browsing,, either in terms of display or control scheme.</p>
+<p class="note"><strong>Note:</strong> You can use the {@link android.webkit.WebView} class for logins to services like Google+ and
+Facebook. </p>
 
diff --git a/docs/html/sdk/index.jd b/docs/html/sdk/index.jd
index aa4fd68..9c4563e 100644
--- a/docs/html/sdk/index.jd
+++ b/docs/html/sdk/index.jd
@@ -4,45 +4,45 @@
 header.hide=1
 page.metaDescription=Download the official Android SDK to develop apps for Android-powered devices.
 
-sdk.version=22.6.2
+sdk.version=23.0.0
 
-sdk.linux32_bundle_download=adt-bundle-linux-x86-20140321.zip
-sdk.linux32_bundle_bytes=527971926
-sdk.linux32_bundle_checksum=943ae4d28fe7c79108c8bf2aafd5e6d2
+sdk.linux32_bundle_download=adt-bundle-linux-x86-20140624.zip
+sdk.linux32_bundle_bytes=378659422
+sdk.linux32_bundle_checksum=692e6135ed459f1e8a10498363f19f67
 
-sdk.linux64_bundle_download=adt-bundle-linux-x86_64-20140321.zip
-sdk.linux64_bundle_bytes=528187678
-sdk.linux64_bundle_checksum=f2a2153b5c7dbaeb86b550bf4f770c36
+sdk.linux64_bundle_download=adt-bundle-linux-x86_64-20140624.zip
+sdk.linux64_bundle_bytes=378966059
+sdk.linux64_bundle_checksum=0f14b4aed1eb1feed778ad6ed76ba01c
 
-sdk.mac64_bundle_download=adt-bundle-mac-x86_64-20140321.zip
-sdk.mac64_bundle_bytes=501955296
-sdk.mac64_bundle_checksum=4a08649cea9b098cdf7349f452294014
+sdk.mac64_bundle_download=adt-bundle-mac-x86_64-20140624.zip
+sdk.mac64_bundle_bytes=327367424
+sdk.mac64_bundle_checksum=7d16e83263259882901f12055a8fe3f2
 
-sdk.win32_bundle_download=adt-bundle-windows-x86-20140321.zip
-sdk.win32_bundle_bytes=535085536
-sdk.win32_bundle_checksum=b61495a6bf591cc374c31bce4fc46ec0
+sdk.win32_bundle_download=adt-bundle-windows-x86-20140624.zip
+sdk.win32_bundle_bytes=377325518
+sdk.win32_bundle_checksum=5655cd8be53c4b27c5242d81943c5a25
 
-sdk.win64_bundle_download=adt-bundle-windows-x86_64-20140321.zip
-sdk.win64_bundle_bytes=535287324
-sdk.win64_bundle_checksum=a6f4699bbdc5a29b371ed60610535651
+sdk.win64_bundle_download=adt-bundle-windows-x86_64-20140624.zip
+sdk.win64_bundle_bytes=377477237
+sdk.win64_bundle_checksum=0f1fa29a0f229e36ba0fb87bb7ee68d4
 
 
 
-sdk.linux_download=android-sdk_r22.6.2-linux.tgz
-sdk.linux_bytes=101050024
-sdk.linux_checksum=ff1541418a44d894bedc5cef10622220
+sdk.linux_download=android-sdk_r23-linux.tgz
+sdk.linux_bytes=137880976
+sdk.linux_checksum=fd768c56423e398b3e4aa8895c393bf5
 
-sdk.mac_download=android-sdk_r22.6.2-macosx.zip
-sdk.mac_bytes=74639394
-sdk.mac_checksum=2a319c862dd1dcf450bfe2a6b3d9c608
+sdk.mac_download=android-sdk_r23-macosx.zip
+sdk.mac_bytes=88015023
+sdk.mac_checksum=3869e5b9de8d69f90509568686fb7ce8
 
-sdk.win_download=android-sdk_r22.6.2-windows.zip
-sdk.win_bytes=108917505
-sdk.win_checksum=6e5bfdb7b9c1d231ed6ec78b31551cbf
+sdk.win_download=android-sdk_r23-windows.zip
+sdk.win_bytes=138459944
+sdk.win_checksum=9daba72b3a15a6154fe6ca1ada817553
 
-sdk.win_installer=installer_r22.6.2-windows.exe
-sdk.win_installer_bytes=87383126
-sdk.win_installer_checksum=2a68b8b22ecd0aba779b1581a914b395
+sdk.win_installer=installer_r23-windows.exe
+sdk.win_installer_bytes=90065639
+sdk.win_installer_checksum=4564d1f1b30c001c78a22eec40444e5f
 
 
 
diff --git a/docs/html/sdk/installing/installing-adt.jd b/docs/html/sdk/installing/installing-adt.jd
index 1e87cd8..b13983b 100644
--- a/docs/html/sdk/installing/installing-adt.jd
+++ b/docs/html/sdk/installing/installing-adt.jd
@@ -1,8 +1,8 @@
 page.title=Installing the Eclipse Plugin
-adt.zip.version=22.6.3
-adt.zip.download=ADT-22.6.3.zip
-adt.zip.bytes=14590813
-adt.zip.checksum=3982259fd2cc81e53bbbe05dcd6529a7
+adt.zip.version=23.0.0
+adt.zip.download=ADT-23.0.0.zip
+adt.zip.bytes=104001830
+adt.zip.checksum=a1bc9b15b69b43bda358ea09a2feb5f7
 
 @jd:body
 
@@ -84,7 +84,7 @@
 <div class="sidebox-wrapper">
 <div class="sidebox">
 <h2>App Translations in Google Play</h2>
-<p>Google Play <a href="{@docRoot}distribute/tools/localization-checklist.html#gp-trans">App 
+<p>Google Play <a href="{@docRoot}distribute/tools/localization-checklist.html#gp-trans">App
 Translation Service</a> is available in the Developer Console to help you
 localize your app for a global user base. You can browse qualified vendors, get
 estimates, upload strings for translation, and then import the translations directly
diff --git a/docs/html/sdk/installing/studio.jd b/docs/html/sdk/installing/studio.jd
index 894514a..3b7a7da 100644
--- a/docs/html/sdk/installing/studio.jd
+++ b/docs/html/sdk/installing/studio.jd
@@ -1,5 +1,7 @@
 page.title=Android Studio
 page.tags="studio"
+page.image=images/resource-card-android-studio.png
+page.metaDescription=Learn about the new features in the beta release of our new IDE.
 @jd:body
 
 
@@ -249,36 +251,36 @@
     <td>Windows</td>
     <td>
   <a onclick="return onDownload(this)" id="win-studio"
-      href="http://dl.google.com/android/studio/install/0.5.2/android-studio-bundle-135.1078000-windows.exe">
-      android-studio-bundle-135.1078000-windows.exe
+      href="http://dl.google.com/android/studio/install/0.8.0/android-studio-bundle-135.1245622-windows.exe">
+      android-studio-bundle-135.1245622-windows.exe
       </a>
     </td>
-    <td>519082997 bytes</td>
-    <td>ac69889210c4d02ee3ccc1c0f3c5cf3c</td>
+    <td>380000036 bytes</td>
+    <td>5720baef7d492f2df7398a38dae2fa92</td>
   </tr>
 
   <tr>
     <td><nobr>Mac OS X</nobr></td>
     <td>
   <a onclick="return onDownload(this)" id="mac-studio"
-    href="http://dl.google.com/android/studio/install/0.5.2/android-studio-bundle-135.1078000-mac.dmg">
-    android-studio-bundle-135.1078000-mac.dmg
+    href="http://dl.google.com/android/studio/install/0.8.0/android-studio-bundle-135.1245622-mac.dmg">
+    android-studio-bundle-135.1245622-mac.dmg
     </a>
     </td>
-    <td>495989974 bytes</td>
-    <td>8c7b1ef376b8ca206c99823d9e8fd54d</td>
+    <td>368451923 bytes</td>
+    <td>fa9da3625db44687576c5c4e8f96280e</td>
   </tr>
 
   <tr>
     <td>Linux</td>
     <td>
   <a onclick="return onDownload(this)" id="linux-studio"
-    href="http://dl.google.com/android/studio/install/0.5.2/android-studio-bundle-135.1078000-linux.tgz">
-    android-studio-bundle-135.1078000-linux.tgz
+    href="http://dl.google.com/android/studio/install/0.8.0/android-studio-bundle-135.1245622-linux.tgz">
+    android-studio-bundle-135.1245622-linux.tgz
     </a>
     </td>
-    <td>520523870 bytes</td>
-    <td>689238d5e632fd236b13f9c6d49f0cb4</td>
+    <td>417756987 bytes</td>
+    <td>c70dd2e4035484b84f0ad0046a34f136</td>
   </tr>
   </table>
 
@@ -396,6 +398,18 @@
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+      alt=""/>Android Studio v0.8.0</a> <em>(June 2014)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+    <p>Added support for Android Wear projects.</p>
+    <p>See <a href="http://tools.android.com/recent">tools.android.com</a> for a full list of changes.</p>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
       alt=""/>Android Studio v0.5.2</a> <em>(May 2014)</em>
   </p>
 
@@ -570,7 +584,7 @@
   if (os) {
     /* set up primary ACE download button */
     $('#download-ide-button').show();
-    $('#download-ide-button').append("Download Android Studio Beta <span class='small'>v0.5.2</span>"
+    $('#download-ide-button').append("Download Android Studio Beta <span class='small'>v0.8.0</span>"
         + "<br/> <span class='small'>with the Android SDK for " + os + "</span>");
     $('#download-ide-button').click(function() {return onDownload(this,true);}).attr('href', bundlename);
 
diff --git a/docs/html/tools/revisions/build-tools.jd b/docs/html/tools/revisions/build-tools.jd
index d8abab0..0abec2e 100644
--- a/docs/html/tools/revisions/build-tools.jd
+++ b/docs/html/tools/revisions/build-tools.jd
@@ -77,6 +77,25 @@
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+      alt=""/>Build Tools, Revision 20.0.0</a> <em>(June 2014)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+
+    <dl>
+      <dt>General Notes:</dt>
+      <dd>
+        <ul>
+          <li>Added support for Android Wear.</li>
+        </ul>
+      </dd>
+    </dl>
+
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
       alt=""/>Build Tools, Revision 19.1.0</a> <em>(May 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
diff --git a/docs/html/tools/revisions/platforms.jd b/docs/html/tools/revisions/platforms.jd
index 5d1d13b..b5495c2 100644
--- a/docs/html/tools/revisions/platforms.jd
+++ b/docs/html/tools/revisions/platforms.jd
@@ -47,6 +47,34 @@
 components will not be available for download.</p>
 
 
+<h2 id="4.4">Android 4.4W</h2>
+
+<div class="toggle-content opened">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-opened.png"
+class="toggle-content-img" alt="" />Revision 1</a> <em>(June 2014)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <p>Initial release for Android Wear.</p>
+    <p>Dependencies:</p>
+    <ul>
+      <li>Android SDK Platform-tools r20 or higher is required.</li>
+      <li>Android SDK Tools 23.0 or higher is required.</li>
+    </ul>
+  </div>
+
+  <h3>Device Definitions</h3>
+
+  <p>The platform includes the following device definitions for use in creating Android Virtual
+  Devices in the <a href="{@docRoot}tools/help/avd-manager.html">AVD Manager</a>:</p>
+
+  <ul>
+    <li>Android Wear Round (320 x 320, hdpi)</li>
+    <li>Android Wear Square (320 x 320, hdpi)</li>
+  </ul>
+</div>
 
 <h2 id="4.4">Android 4.4</h2>
 
diff --git a/docs/html/tools/sdk/eclipse-adt.jd b/docs/html/tools/sdk/eclipse-adt.jd
index 124e58d..8826ce3e 100644
--- a/docs/html/tools/sdk/eclipse-adt.jd
+++ b/docs/html/tools/sdk/eclipse-adt.jd
@@ -56,6 +56,38 @@
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+      alt=""/>ADT 23.0.0</a> <em>(June 2014)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+<dl>
+  <dt>Dependencies:</dt>
+
+  <dd>
+    <ul>
+      <li>Java 7 or higher is required if you are targeting the L Developer Preview.</li>
+      <li>Java 1.6 or higher is required if you are targeting other releases.</li>
+      <li>Eclipse Indigo (Version 3.7.2) or higher is required.</li>
+      <li>This version of ADT is designed for use with
+        <a href="{@docRoot}tools/sdk/tools-notes.html">SDK Tools r23.0.0</a>.
+        If you haven't already installed SDK Tools r23.0.0 into your SDK, use the
+        Android SDK Manager to do so.</li>
+    </ul>
+  </dd>
+
+  <dt>General Notes:</dt>
+  <dd>
+    <ul>
+      <li>Added the Android Wear tools and system images.</li>
+    </ul>
+  </dd>
+</dl>
+</div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
       alt=""/>ADT 22.6.3</a> <em>(April 2014)</em>
   </p>
 
diff --git a/docs/html/tools/sdk/tools-notes.jd b/docs/html/tools/sdk/tools-notes.jd
index f490053..6c74a71 100644
--- a/docs/html/tools/sdk/tools-notes.jd
+++ b/docs/html/tools/sdk/tools-notes.jd
@@ -28,6 +28,37 @@
 <div class="toggle-content opened">
   <p><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img"
+      alt=""/>SDK Tools, Revision 23.0.0</a> <em>(June 2014)</em>
+  </p>
+
+  <div class="toggle-content-toggleme">
+
+    <dl>
+    <dt>Dependencies:</dt>
+
+    <dd>
+      <ul>
+        <li>Android SDK Platform-tools revision 19 or later.</li>
+        <li>If you are developing in Eclipse with ADT, note that this version of SDK Tools is
+          designed for use with ADT 23.0.0 and later. If you haven't already, update your
+        <a href="{@docRoot}tools/sdk/eclipse-adt.html">ADT Plugin</a> to 23.0.0.</li>
+        <li>If you are developing outside Eclipse, you must have
+          <a href="http://ant.apache.org/">Apache Ant</a> 1.8 or later.</li>
+      </ul>
+    </dd>
+
+    <dt>General Notes:</dt>
+    <dd>
+      <ul>
+        <li>Added the Android Wear tools and system images.</li>
+      </ul>
+    </dd>
+  </div>
+</div>
+
+<div class="toggle-content closed">
+  <p><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img"
       alt=""/>SDK Tools, Revision 22.6.4</a> <em>(June 2014)</em>
   </p>
 
diff --git a/docs/html/training/building-wearables.jd b/docs/html/training/building-wearables.jd
index 4fda10e..0745c93 100644
--- a/docs/html/training/building-wearables.jd
+++ b/docs/html/training/building-wearables.jd
@@ -1,5 +1,7 @@
 page.title=Building Apps for Wearables
 page.trainingcourse=true
+page.image=wear/images/notifications.png
+page.metaDescription=Learn how to build notifications, send and sync data, and use voice actions.
 
 @jd:body
 
diff --git a/docs/html/training/wearables/apps/creating.jd b/docs/html/training/wearables/apps/creating.jd
index 145aed8..841f24a 100644
--- a/docs/html/training/wearables/apps/creating.jd
+++ b/docs/html/training/wearables/apps/creating.jd
@@ -13,7 +13,7 @@
 </ol>
 <h2>Dependencies and Prerequisites</h2>
   <ul>
-    <li>Android Studio 0.8 or later and Gradle 1.12 or later</li>
+    <li>Android Studio 0.8 or later and Gradle 0.12 or later</li>
   </ul>
 </div>
 </div>
diff --git a/docs/html/training/wearables/apps/index.jd b/docs/html/training/wearables/apps/index.jd
index c2c7f39..3a4eb70 100644
--- a/docs/html/training/wearables/apps/index.jd
+++ b/docs/html/training/wearables/apps/index.jd
@@ -1,11 +1,13 @@
 page.title=Creating Wearable Apps
+page.image=wear/images/notifications.png
+
 @jd:body
 
 <div id="tb-wrapper">
 <div id="tb">
   <h2>Dependencies and Prerequisites</h2>
   <ul>
-    <li>Android Studio 0.8 or later and Gradle 1.12 or later</li>
+    <li>Android Studio 0.8 or later and Gradle 0.12 or later</li>
   </ul>
 </div>
 </div>
diff --git a/docs/html/training/wearables/apps/layouts.jd b/docs/html/training/wearables/apps/layouts.jd
index 983c359..4bf9cde 100644
--- a/docs/html/training/wearables/apps/layouts.jd
+++ b/docs/html/training/wearables/apps/layouts.jd
@@ -56,13 +56,16 @@
 }
 </pre>
   </li>
-  <li>Set the activity's <code>allowEmbedded</code> property to <code>true</code>
-  in the wearable app's Android manifest. This allows an activity that you create in your wearable
-  app to be displayed by the wearable's context stream process.</li>
+  <li>Define necessary properties for the activity in the Android manifest to allow
+  the activity to be displayed in the wearable's context stream process. You need to declare the
+  activity to be exportable, be embeddable, and have an empty task affinity. We also recommend
+  setting the theme to <code>Theme.DeviceDefault.Light</code>. For example:</li>
 <pre>
-&lt;activity android:allowEmbedded="true" ... &gt;
-...
-&lt;/activity&gt;
+&lt;activity android:name="com.example.MyDisplayActivity"
+     android:exported="true"
+     android:allowEmbedded="true"
+     android:taskAffinity=""
+     android:theme="@android:style/Theme.DeviceDefault.Light" /&gt;
 </pre>
   </li>
   <li>Create a {@link android.app.PendingIntent} for the activity that you want to display.
diff --git a/docs/html/training/wearables/notifications/pages.jd b/docs/html/training/wearables/notifications/pages.jd
index 1026774..d74c8ea 100644
--- a/docs/html/training/wearables/notifications/pages.jd
+++ b/docs/html/training/wearables/notifications/pages.jd
@@ -65,7 +65,7 @@
                 .build();
 
 // Issue the notification
-    notificationManager =
-            NotificationManagerCompat.from(this);
-    notificationManager.notify(notificationId, twoPageNotification);
+notificationManager =
+        NotificationManagerCompat.from(this);
+notificationManager.notify(notificationId, twoPageNotification);
 </pre>
\ No newline at end of file
diff --git a/docs/html/tv/index.jd b/docs/html/tv/index.jd
index e3f3855..ff70977 100644
--- a/docs/html/tv/index.jd
+++ b/docs/html/tv/index.jd
@@ -73,7 +73,7 @@
               effort.
             </p>
             <p class="landing-small">
-              <a href="/design/tv/index.html">Learn about design for TV</a>
+              <a href="{@docRoot}preview/tv/design/index.html">Learn about design for TV</a>
             </p>
           </div>
 
diff --git a/docs/html/wear/images/notifications.png b/docs/html/wear/images/notifications.png
new file mode 100644
index 0000000..8b1cb0b
--- /dev/null
+++ b/docs/html/wear/images/notifications.png
Binary files differ
diff --git a/docs/html/wear/images/steps.png b/docs/html/wear/images/steps.png
new file mode 100644
index 0000000..965f382
--- /dev/null
+++ b/docs/html/wear/images/steps.png
Binary files differ
diff --git a/docs/html/wear/images/voicecommands.png b/docs/html/wear/images/voicecommands.png
new file mode 100644
index 0000000..9839ed8
--- /dev/null
+++ b/docs/html/wear/images/voicecommands.png
Binary files differ
diff --git a/docs/html/wear/index.jd b/docs/html/wear/index.jd
index 10e7d29..c9b8ba8 100644
--- a/docs/html/wear/index.jd
+++ b/docs/html/wear/index.jd
@@ -83,33 +83,35 @@
           <div class="landing-body">
             <div class="landing-breakout cols">
               <div class="col-3-wide">
-
-                <div class="framed-wear-square">
-                  <img src="{@docRoot}wear/images/screens/reservation_animated.gif">
+              <div class="framed-wear-square">
+                <img src="{@docRoot}wear/images/notifications.png" itemprop="image" alt="">
                 </div>
-
-                <p class="landing-small">
-                  Say “Ok Google” to ask questions and get stuff done.
-                </p>
-              </div>
-              <div class="col-3-wide">
-                <img src="{@docRoot}wear/images/screens/circle_message2.png" itemprop="image" alt="">
+                <br />
                 <p class="landing-small">
                   Get glanceable, actionable information at just the right time with notifications
                   that are synced from your handheld device.
-
                 </p>
               </div>
               <div class="col-3-wide">
-                <img src="{@docRoot}wear/images/screens/fitness-24.png" alt="">
+                <div class="framed-wear-square">
+                  <img src="{@docRoot}wear/images/voicecommands.png">
+                </div>
+                <br />
+                <p class="landing-small">
+                  Say “Ok Google” to send messages, ask questions, and get stuff done.
+                </p>
+              </div>
+              <div class="col-3-wide">
+              <div class="framed-wear-square">
+                <img src="{@docRoot}wear/images/steps.png" alt="">
+                </div>
+                <br />
                 <p class="landing-small">
                   Design apps that can access a wide range of sensors and other hardware
                    directly on the wearable.
-
                 </p>
               </div>
             </div>
-
             <p>
               Before you start building, check out the
               <a href="{@docRoot}design/wear/index.html">Android Wear Design Principles</a>
@@ -126,7 +128,7 @@
             <div class="landing-subhead">
              The Android Wear APIs are delivered in the Android Support Library and Google Play
              services. When using these libraries, handheld devices running Android 4.3
-             (API Level 18) or later can communicate with wearables.</div>
+             or later can communicate with wearables.</div>
           </div>
 
           <div class="landing-body">
@@ -166,7 +168,7 @@
               </div>
               <div class="col-4">
                 <img src="{@docRoot}wear/images/features/send-data.png" alt="">
-                <p>Synced Data</p>
+                <p>Send Data</p>
                 <p class="landing-small">
                   Send data and actions between handhelds and wearables with
                   data replication APIs and RPCs.
diff --git a/packages/Keyguard/res/values-ca/strings.xml b/packages/Keyguard/res/values-ca/strings.xml
index 8b81086..1aa98517 100644
--- a/packages/Keyguard/res/values-ca/strings.xml
+++ b/packages/Keyguard/res/values-ca/strings.xml
@@ -58,7 +58,7 @@
     <string name="keyguard_accessibility_widget_reorder_start" msgid="8736853615588828197">"S\'ha iniciat la reorganització del widget."</string>
     <string name="keyguard_accessibility_widget_reorder_end" msgid="7170190950870468320">"Ha finalitzat la reorganització del widget."</string>
     <string name="keyguard_accessibility_widget_deleted" msgid="4426204263929224434">"S\'ha suprimit el widget de <xliff:g id="WIDGET_INDEX">%1$s</xliff:g>."</string>
-    <string name="keyguard_accessibility_expand_lock_area" msgid="519859720934178024">"Amplia l\'àrea de desbloqueig."</string>
+    <string name="keyguard_accessibility_expand_lock_area" msgid="519859720934178024">"Desplega l\'àrea de desbloqueig."</string>
     <string name="keyguard_accessibility_slide_unlock" msgid="2959928478764697254">"Desbloqueig lliscant el dit"</string>
     <string name="keyguard_accessibility_pattern_unlock" msgid="1490840706075246612">"Desbloqueig mitjançant patró"</string>
     <string name="keyguard_accessibility_face_unlock" msgid="4817282543351718535">"Desbloqueig facial"</string>
diff --git a/packages/Keyguard/res/values-da/strings.xml b/packages/Keyguard/res/values-da/strings.xml
index f8f0a6f..f9dd5f9 100644
--- a/packages/Keyguard/res/values-da/strings.xml
+++ b/packages/Keyguard/res/values-da/strings.xml
@@ -84,7 +84,7 @@
     <string name="keyboardview_keycode_alt" msgid="4856868820040051939">"Alt"</string>
     <string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"Annuller"</string>
     <string name="keyboardview_keycode_delete" msgid="3337914833206635744">"Slet"</string>
-    <string name="keyboardview_keycode_done" msgid="1992571118466679775">"Udført"</string>
+    <string name="keyboardview_keycode_done" msgid="1992571118466679775">"Udfør"</string>
     <string name="keyboardview_keycode_mode_change" msgid="4547387741906537519">"Ændring af tilstand"</string>
     <string name="keyboardview_keycode_shift" msgid="2270748814315147690">"Shift"</string>
     <string name="keyboardview_keycode_enter" msgid="2985864015076059467">"Angiv"</string>
diff --git a/packages/Keyguard/res/values-hi/strings.xml b/packages/Keyguard/res/values-hi/strings.xml
index 8c94eb3..1445f8e 100644
--- a/packages/Keyguard/res/values-hi/strings.xml
+++ b/packages/Keyguard/res/values-hi/strings.xml
@@ -30,7 +30,7 @@
     <string name="keyguard_password_wrong_pin_code" msgid="2422225591006134936">"गलत पिन कोड."</string>
     <string name="keyguard_label_text" msgid="861796461028298424">"अनलॉक करने के लिए, मेनू दबाएं और फिर 0 दबाएं."</string>
     <string name="faceunlock_multiple_failures" msgid="754137583022792429">"फेस अनलॉक के अधिकतम प्रयासों की सीमा पार हो गई"</string>
-    <string name="keyguard_charged" msgid="3272223906073492454">"चार्ज हो गई"</string>
+    <string name="keyguard_charged" msgid="3272223906073492454">"चार्ज हो गई है"</string>
     <string name="keyguard_plugged_in" msgid="8117572000639998388">"चार्ज हो रही है, <xliff:g id="NUMBER">%d</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string>
     <string name="keyguard_low_battery" msgid="8143808018719173859">"अपना चार्जर कनेक्‍ट करें."</string>
     <string name="keyguard_instructions_when_pattern_disabled" msgid="1332288268600329841">"अनलॉक करने के लिए मेनू दबाएं."</string>
diff --git a/packages/Keyguard/res/values-km-rKH/strings.xml b/packages/Keyguard/res/values-km-rKH/strings.xml
index f78b93d..b09c749 100644
--- a/packages/Keyguard/res/values-km-rKH/strings.xml
+++ b/packages/Keyguard/res/values-km-rKH/strings.xml
@@ -82,7 +82,7 @@
     <string name="password_keyboard_label_alpha_key" msgid="8001096175167485649">"ABC"</string>
     <string name="password_keyboard_label_alt_key" msgid="1284820942620288678">"ALT"</string>
     <string name="keyboardview_keycode_alt" msgid="4856868820040051939">"Alt"</string>
-    <string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"បោះ​បង់​"</string>
+    <string name="keyboardview_keycode_cancel" msgid="1203984017245783244">"បោះ​បង់"</string>
     <string name="keyboardview_keycode_delete" msgid="3337914833206635744">"លុប"</string>
     <string name="keyboardview_keycode_done" msgid="1992571118466679775">"រួចរាល់"</string>
     <string name="keyboardview_keycode_mode_change" msgid="4547387741906537519">"ប្ដូរ​របៀប"</string>
@@ -119,7 +119,7 @@
     <string name="kg_login_too_many_attempts" msgid="6486842094005698475">"ព្យាយាម​លំនាំ​ច្រើន​ពេក"</string>
     <string name="kg_login_instructions" msgid="1100551261265506448">"ដើម្បី​ដោះ​សោ ចូល​ក្នុង​គណនី Google ។"</string>
     <string name="kg_login_username_hint" msgid="5718534272070920364">"ឈ្មោះ​អ្នក​ប្រើ (អ៊ី​ម៉ែ​ល​)"</string>
-    <string name="kg_login_password_hint" msgid="9057289103827298549">"ពាក្យសម្ងាត់​"</string>
+    <string name="kg_login_password_hint" msgid="9057289103827298549">"ពាក្យសម្ងាត់"</string>
     <string name="kg_login_submit_button" msgid="5355904582674054702">"ចូល"</string>
     <string name="kg_login_invalid_input" msgid="5754664119319872197">"ឈ្មោះ​អ្នកប្រើ ឬ​ពាក្យ​សម្ងាត់​មិន​ត្រឹមត្រូវ។"</string>
     <string name="kg_login_account_recovery_hint" msgid="5690709132841752974">"ភ្លេច​ឈ្មោះ​អ្នកប្រើ ឬ​ពាក្យ​សម្ងាត់​របស់​អ្នក?\nមើល "<b>"google.com/accounts/recovery"</b>" ។"</string>
diff --git a/packages/Keyguard/res/values-sr/strings.xml b/packages/Keyguard/res/values-sr/strings.xml
index 89df5b9..e8daabe 100644
--- a/packages/Keyguard/res/values-sr/strings.xml
+++ b/packages/Keyguard/res/values-sr/strings.xml
@@ -127,8 +127,8 @@
     <string name="kg_too_many_failed_pin_attempts_dialog_message" msgid="8276745642049502550">"Унели сте PIN неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. \n\nПокушајте поново за <xliff:g id="NUMBER_1">%d</xliff:g> секунде(и)."</string>
     <string name="kg_too_many_failed_password_attempts_dialog_message" msgid="7813713389422226531">"Унели сте лозинку неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. \n\nПокушајте поново за <xliff:g id="NUMBER_1">%d</xliff:g> секунде(и)."</string>
     <string name="kg_too_many_failed_pattern_attempts_dialog_message" msgid="74089475965050805">"Нацртали сте шаблон за откључавање неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. \n\nПокушајте поново за <xliff:g id="NUMBER_1">%d</xliff:g> секунде(и)."</string>
-    <string name="kg_failed_attempts_almost_at_wipe" product="tablet" msgid="1575557200627128949">"Покушали сте да откључате таблет неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. Након још <xliff:g id="NUMBER_1">%d</xliff:g> неуспешна(их) покушаја таблет ће бити враћен на подразумевана фабричка подешавања и сви кориснички подаци ће бити изгубљени."</string>
-    <string name="kg_failed_attempts_almost_at_wipe" product="default" msgid="4051015943038199910">"Покушали сте да откључате телефон неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. После још <xliff:g id="NUMBER_1">%d</xliff:g> неуспешна(их) покушаја телефон ће бити враћен на подразумевана фабричка подешавања и сви кориснички подаци ће бити изгубљени."</string>
+    <string name="kg_failed_attempts_almost_at_wipe" product="tablet" msgid="1575557200627128949">"Покушали сте да откључате таблет неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. Након још <xliff:g id="NUMBER_1">%d</xliff:g> неуспешна(их) покушаја таблет ће бити ресетован на фабричка подешавања и сви кориснички подаци ће бити изгубљени."</string>
+    <string name="kg_failed_attempts_almost_at_wipe" product="default" msgid="4051015943038199910">"Покушали сте да откључате телефон неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. После још <xliff:g id="NUMBER_1">%d</xliff:g> неуспешна(их) покушаја телефон ће бити ресетован на фабричка подешавања и сви кориснички подаци ће бити изгубљени."</string>
     <string name="kg_failed_attempts_now_wiping" product="tablet" msgid="2072996269148483637">"Покушали сте да откључате таблет неисправно <xliff:g id="NUMBER">%d</xliff:g> пута. Таблет ће сада бити враћен на подразумевана фабричка подешавања."</string>
     <string name="kg_failed_attempts_now_wiping" product="default" msgid="4817627474419471518">"Покушали сте да откључате телефон неисправно <xliff:g id="NUMBER">%d</xliff:g> пута. Телефон ће сада бити враћен на подразумевана фабричка подешавања."</string>
     <string name="kg_failed_attempts_almost_at_login" product="tablet" msgid="3253575572118914370">"Нацртали сте шаблон за откључавање неисправно <xliff:g id="NUMBER_0">%d</xliff:g> пута. После још <xliff:g id="NUMBER_1">%d</xliff:g> неуспешна(их) покушаја, од вас ће бити затражено да откључате таблет помоћу налога е-поште.\n\nПокушајте поново за <xliff:g id="NUMBER_2">%d</xliff:g> секунде(и)."</string>
diff --git a/packages/PrintSpooler/res/values-km-rKH/strings.xml b/packages/PrintSpooler/res/values-km-rKH/strings.xml
index ba3c042..c89f9bf 100644
--- a/packages/PrintSpooler/res/values-km-rKH/strings.xml
+++ b/packages/PrintSpooler/res/values-km-rKH/strings.xml
@@ -60,7 +60,7 @@
   </plurals>
     <string name="cancel" msgid="4373674107267141885">"បោះបង់"</string>
     <string name="restart" msgid="2472034227037808749">"ចាប់ផ្ដើម​ឡើងវិញ"</string>
-    <string name="no_connection_to_printer" msgid="2159246915977282728">"គ្មាន​​​ការ​ភ្ជាប់​ទៅ​ម៉ាស៊ីន​បោះពុម្ព​"</string>
+    <string name="no_connection_to_printer" msgid="2159246915977282728">"គ្មាន​​​ការ​ភ្ជាប់​ទៅ​ម៉ាស៊ីន​បោះពុម្ព"</string>
     <string name="reason_unknown" msgid="5507940196503246139">"មិន​ស្គាល់"</string>
     <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – មិន​អាច​ប្រើ​បាន"</string>
     <string name="print_error_default_message" msgid="8568506918983980567">"មិន​អាច​បង្កើត​ការ​ងារ​បោះពុម្ព"</string>
diff --git a/packages/SystemUI/res/values-km-rKH/strings.xml b/packages/SystemUI/res/values-km-rKH/strings.xml
index 32a5fa0..b1da3b2 100644
--- a/packages/SystemUI/res/values-km-rKH/strings.xml
+++ b/packages/SystemUI/res/values-km-rKH/strings.xml
@@ -64,7 +64,7 @@
     <string name="screenshot_saving_ticker" msgid="7403652894056693515">"កំពុង​រក្សាទុក​រូបថត​អេក្រង់…"</string>
     <string name="screenshot_saving_title" msgid="8242282144535555697">"កំពុង​រក្សាទុក​រូបថត​អេក្រង់..."</string>
     <string name="screenshot_saving_text" msgid="2419718443411738818">"រូបថត​អេក្រង់​កំពុង​ត្រូវ​បាន​រក្សាទុក។"</string>
-    <string name="screenshot_saved_title" msgid="6461865960961414961">"បាន​ចាប់​យក​រូបថត​អេក្រង់។​"</string>
+    <string name="screenshot_saved_title" msgid="6461865960961414961">"បាន​ចាប់​យក​រូបថត​អេក្រង់។"</string>
     <string name="screenshot_saved_text" msgid="1152839647677558815">"ប៉ះ ​ដើម្បី​មើល​រូបថត​អេក្រង់​របស់​អ្នក​។"</string>
     <string name="screenshot_failed_title" msgid="705781116746922771">"មិន​អាច​ចាប់​យក​រូប​ថត​អេក្រង់​។"</string>
     <string name="screenshot_failed_text" msgid="8134011269572415402">"មិន​អាច​រក្សាទុក​រូបថត​អេក្រង់​។ ឧបករណ៍​ផ្ទុក​អាច​កំពុង​ប្រើ​​។"</string>
@@ -139,7 +139,7 @@
     <string name="accessibility_remove_notification" msgid="3603099514902182350">"សម្អាត​ការ​ជូន​ដំណឹង។"</string>
     <string name="accessibility_gps_enabled" msgid="3511469499240123019">"បាន​បើក GPS ។"</string>
     <string name="accessibility_gps_acquiring" msgid="8959333351058967158">"ទទួល​​ GPS ។"</string>
-    <string name="accessibility_tty_enabled" msgid="4613200365379426561">"បាន​បើក​ម៉ាស៊ីន​អង្គុលីលេខ​"</string>
+    <string name="accessibility_tty_enabled" msgid="4613200365379426561">"បាន​បើក​ម៉ាស៊ីន​អង្គុលីលេខ"</string>
     <string name="accessibility_ringer_vibrate" msgid="666585363364155055">"កម្មវិធី​រោទ៍​ញ័រ។"</string>
     <string name="accessibility_ringer_silent" msgid="9061243307939135383">"កម្មវិធី​រោទ៍​ស្ងាត់។"</string>
     <string name="accessibility_recents_item_dismissed" msgid="6803574935084867070">"<xliff:g id="APP">%s</xliff:g> បដិសេធ។"</string>
@@ -184,7 +184,7 @@
     <string name="quick_settings_rotation_unlocked_label" msgid="336054930362580584">"បង្វិល​​ស្វ័យ​ប្រវត្តិ"</string>
     <string name="quick_settings_rotation_locked_label" msgid="8058646447242565486">"បាន​ចាក់​សោ​ការ​បង្វិល"</string>
     <string name="quick_settings_ime_label" msgid="7073463064369468429">"វិធីសាស្ត្រ​បញ្ចូល"</string>
-    <string name="quick_settings_location_label" msgid="5011327048748762257">"ទី​តាំង​"</string>
+    <string name="quick_settings_location_label" msgid="5011327048748762257">"ទី​តាំង"</string>
     <string name="quick_settings_location_off_label" msgid="7464544086507331459">"ទីតាំង​បាន​បិទ"</string>
     <string name="quick_settings_media_device_label" msgid="1302906836372603762">"ឧបករណ៍​មេឌៀ"</string>
     <string name="quick_settings_rssi_label" msgid="7725671335550695589">"RSSI"</string>
@@ -199,5 +199,5 @@
     <string name="quick_settings_remote_display_no_connection_label" msgid="372107699274391290">"ចាត់​ថ្នាក់​អេក្រង់"</string>
     <string name="quick_settings_brightness_dialog_title" msgid="8599674057673605368">"ពន្លឺ"</string>
     <string name="quick_settings_brightness_dialog_auto_brightness_label" msgid="5064982743784071218">"ស្វ័យប្រវត្តិ"</string>
-    <string name="ssl_ca_cert_warning" msgid="9005954106902053641">"បណ្ដាញ​អាច​\nត្រូវ​បាន​ត្រួតពិនិត្យ​"</string>
+    <string name="ssl_ca_cert_warning" msgid="9005954106902053641">"បណ្ដាញ​អាច​\nត្រូវ​បាន​ត្រួតពិនិត្យ"</string>
 </resources>
diff --git a/packages/SystemUI/res/values-ro/strings.xml b/packages/SystemUI/res/values-ro/strings.xml
index 168369d..13016d1 100644
--- a/packages/SystemUI/res/values-ro/strings.xml
+++ b/packages/SystemUI/res/values-ro/strings.xml
@@ -196,7 +196,7 @@
     <string name="quick_settings_wifi_not_connected" msgid="7171904845345573431">"Neconectat"</string>
     <string name="quick_settings_wifi_no_network" msgid="2221993077220856376">"Nicio reţea"</string>
     <string name="quick_settings_wifi_off_label" msgid="7558778100843885864">"Wi-Fi deconectat"</string>
-    <string name="quick_settings_remote_display_no_connection_label" msgid="372107699274391290">"Ecran de afișare a transmisiunii"</string>
+    <string name="quick_settings_remote_display_no_connection_label" msgid="372107699274391290">"Proiectați ecranul"</string>
     <string name="quick_settings_brightness_dialog_title" msgid="8599674057673605368">"Luminozitate"</string>
     <string name="quick_settings_brightness_dialog_auto_brightness_label" msgid="5064982743784071218">"AUTOMAT"</string>
     <string name="ssl_ca_cert_warning" msgid="9005954106902053641">"Rețeaua poate\nfi monitorizată"</string>