diff --git a/pdk/docs/guide/audio.jd b/pdk/docs/guide/audio.jd
index ae97e21..0467d89 100755
--- a/pdk/docs/guide/audio.jd
+++ b/pdk/docs/guide/audio.jd
@@ -7,14 +7,12 @@
 <h2>In this document</h2>
 <a name="toc"/>
 <ul>
-<li><a href="#androidAudioSubSystemIntroduction">Introduction</a></li>
 <li><a href="#androidAudioBuildingDriver">Building an Audio Library</a></li>
 <li><a href="#androidAudioInterface">Interface</a></li>
 </ul>
 </div>
 </div>
 
-<a name="androidAudioSubSystemIntroduction"></a><h2>Introduction</h2>
 
 <p>AudioHardwareInterface serves as the glue between proprietary audio drivers and the Android AudioFlinger service, the core audio service that handles all audio-related requests from applications.</p>
 <p><img src="images/android_audio_architecture.gif"></p>
@@ -23,7 +21,7 @@
 
 
 
-<a name="androidAudioBuildingDriver"></a><h2>Building an Audio Library</h2>
+<a name="androidAudioBuildingDriver"></a><h3>Building an Audio Library</h3>
 
 <p>To implement an audio driver, create a shared library that implements the interface defined in <code>AudioHardwareInterface.h</code>. You must name your shared library <code>libaudio.so</code> so that it will get loaded from <code>/system/lib</code> at runtime.  Place libaudio sources and <code>Android.mk</code> in <code>partner/acme/chipset_or_board/libaudio/</code>.</p>
 <p>The following stub <code>Android.mk</code> file ensures that <code>libaudio</code> compiles and links to the appropriate libraries:</p>
@@ -52,7 +50,7 @@
 </pre>
 
 
-<a name="androidAudioInterface"></a><h2>Interface</h2>
+<a name="androidAudioInterface"></a><h3>Interface</h3>
 
 
 
diff --git a/pdk/docs/guide/bluetooth.jd b/pdk/docs/guide/bluetooth.jd
index 5d5e806..e514ef0 100755
--- a/pdk/docs/guide/bluetooth.jd
+++ b/pdk/docs/guide/bluetooth.jd
@@ -2,20 +2,19 @@
 pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidBluetoothIntro">Introduction</a><br/>
-<a href="#androidBluetoothPorting">Porting</a><br/><div style="padding-left:40px">
-
-<a href="#androidBluetoothPortingDriver">UART Driver</a><br/>
-<a href="#androidBluetoothPortingPowerOnOff">Bluetooth Power On / Off</a><br/></div>
-<a href="#androidBluetoothCompiling">Compiling</a><br/>
-<a href="#androidBluetoothTroubleshooting">Troubleshooting</a><br/>
-<a href="#androidBluetoothTools">Tools</a><br/>
-<a href="#androidBluetoothFeatures">Feature Support</a><br/>
+<ul>
+<li><a href="#androidBluetoothPorting">Porting</a></li>
+<li><a href="#androidBluetoothCompiling">Compiling</a></li>
+<li><a href="#androidBluetoothTroubleshooting">Troubleshooting</a></li>
+<li><a href="#androidBluetoothTools">Tools</a></li>
+<li><a href="#androidBluetoothFeatures">Feature Support</a></li>
+</ul>
 </div>
-
-<a name="androidBluetoothIntro"></a><h2>Introduction</h2>
+</div>
 
 <p>Android's Bluetooth stack uses BlueZ version 3.36 for GAP, SDP, and RFCOMM profiles, and is a SIG-qualified Bluetooth 2.0 + EDR host stack.</p>
 
@@ -31,7 +30,7 @@
 
 
 
-<a name="androidBluetoothPorting"></a><h2>Porting</h2>
+<a name="androidBluetoothPorting"></a><h3>Porting</h3>
 
 <p>BlueZ is Bluetooth 2.0 compatible and should work with any 2.0 chipset. There are two integration points:</p>
 <p><ul>
@@ -41,13 +40,13 @@
 </p>
 
 
-<a name="androidBluetoothPortingDriver"></a><h3>UART Driver</h3>
+<a name="androidBluetoothPortingDriver"></a><h4>UART Driver</h4>
 
 <p>The BlueZ kernel sub-system attaches to your hardware-specific UART driver using the <code>hciattach</code> daemon.</p>
 <p>For example, for MSM7201A, this is <code>drivers/serial/msm_serial.c</code>. You may also need to edit command line options to <code>hciattach</code> via <code>init.rc</code>.</p>
 
 
-<a name="androidBluetoothPortingPowerOnOff"></a><h3>Bluetooth Power On / Off</h3>
+<a name="androidBluetoothPortingPowerOnOff"></a><h4>Bluetooth Power On / Off</h4>
 
 <p>The method for powering on and off your bluetooth chip varies from Android V 1.0 to post 1.0.</p>
 
@@ -58,14 +57,14 @@
 </ul>
 </p>
 
-<a name="androidBluetoothCompiling">Compiling</a><h3>Compiling</h3>
+<a name="androidBluetoothCompiling"></a><h4>Compiling</h4>
 
 <p>To compile Android with Bluetooth support enabled, add the following line to <code>BoardConfig.mk</code>.
 <pre>
 BOARD_HAVE_BLUETOOTH := true
 </pre>
 
-<a name="androidBluetoothTroubleshooting"></a><h2>Troubleshooting</h2>
+<a name="androidBluetoothTroubleshooting"></a><h3>Troubleshooting</h3>
 <p><strong>Debugging</strong></p>
 <p>To debug your bluetooth implementation, start by reading the logs (<code>adb logcat</code>) and look for ERRROR and WARNING messages regarding Bluetooth. 
   Andoird uses Bluez, which comes with some useful debugging tools. The snippet below provides examples in a suggested order:</p>
@@ -82,7 +81,7 @@
 <p><strong>hciconfig -a and hcitool</strong></p>
 <p>If you compile your own system.img for Android, and <code>hciconfig -a</code> works but <code>hcitool</code> scan doesn't, try installing the firmware for the Bluetooth chipset. This firmware isn't yet available in the open source codebase, but you can <code>adb pull</code> and then <code>adb push</code>it from a stock T-Mobile G1 (located in <code>/etc/firmware/brf6300.bin</code>).<br />
   <a name="androidBluetoothTools"></a></p>
-<h2>Tools</h2>
+<h3>Tools</h3>
 
 <p>BlueZ provides a rich set of command line tools for debugging and interacting with the Bluetooth sub-system, including:</p>
 <p><ul>
@@ -96,7 +95,7 @@
 </p>
 
 <a name="androidBluetoothFeatures"></a>
-<h2>Feature Support</h2>
+<h3>Feature Support</h3>
 <p>This section provides a change history of Bluetooth features added in each Android release and provides some rough guidance as to future features. </p>
 <h4>Android 1.0 release</h4>
 <h5>Platform features</h5>
diff --git a/pdk/docs/guide/build_cookbook.jd b/pdk/docs/guide/build_cookbook.jd
index b9d9f7c..fc34132 100755
--- a/pdk/docs/guide/build_cookbook.jd
+++ b/pdk/docs/guide/build_cookbook.jd
@@ -1,19 +1,26 @@
-page.title=<my_page_title>
-pdk.version=<current_PDK_version>
+page.title=Build Cookbook
+pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="http://wiki.corp.google.com/twiki/bin/view/Main/AndroidBuildCookbook#Building_a_simple_APK">Building a simple APK</a><br>
-    <a href="http://wiki.corp.google.com/twiki/bin/view/Main/AndroidBuildCookbook#Building_a_APK_that_depends_on_a">Building a APK that depends on a static .jar file</a><br>
-    <a href="http://wiki.corp.google.com/twiki/bin/view/Main/AndroidBuildCookbook#Building_a_APK_that_should_be_si">Building a APK that should be signed with the platform key</a><br>
-    <a href="http://wiki.corp.google.com/twiki/bin/view/Main/AndroidBuildCookbook#Building_a_APK_that_should_be_si">Building a APK that should be signed with a specific vendor key</a><br>
-    <a href="http://wiki.corp.google.com/twiki/bin/view/Main/AndroidBuildCookbook#Adding_a_prebuilt_APK">Adding a prebuilt APK</a><br>
-    <a href="http://wiki.corp.google.com/twiki/bin/view/Main/AndroidBuildCookbook#Adding_a_Static_Java_Library">Adding a Static Java Library</a><br>
-  </div>
-  
+<ul>
+<li><a href="#simpleAPK">Simple APK</a></li>
+<li><a href="#APKJar">APK Dependent on static .jar file</a></li>
+    <li><a href="#APKPlatform">APK signed with the platform key</a></li>
+    <li><a href="#APKVendor">APK that signed with vendor key</a></li>
+    <li><a href="#prebuiltAPK">Prebuilt APK</a></li>
+    <li><a href="#staticJava">Adding a Static Java Library</a></li>
+    <li><a href="#mkVars">Android.mk variables</a></li>
+</ul>
+</div>
+</div>
+
+
 <p>The Android Build Cookbook offers code snippets to help you quickly implement some common build tasks. For additional instruction, please see the other build documents in this section.</p>  
-<h2><a name="Building_a_simple_APK" id="Building_a_simple_APK"></a>Building a simple APK</h2>
+<h3><a name="simpleAPK"></a>Building a simple APK</h3>
 <pre>
   LOCAL_PATH := $(call my-dir)
   include $(CLEAR_VARS)
@@ -27,7 +34,7 @@
   # Tell it to build an APK
   include $(BUILD_PACKAGE)
 </pre>
-<h2><a name="Building_a_APK_that_depends_on_a" id="Building_a_APK_that_depends_on_a"></a>Building a APK that depends on a static .jar file</h2>
+<h3><a name="APKJar"></a>Building a APK that depends on a static .jar file</h3>
 <pre>
   LOCAL_PATH := $(call my-dir)
   include $(CLEAR_VARS)
@@ -44,7 +51,7 @@
   # Tell it to build an APK
   include $(BUILD_PACKAGE)
 </pre>
-<h2><a name="Building_a_APK_that_should_be_si" id="Building_a_APK_that_should_be_si">Building a APK that should be signed with the platform key</a></h2>
+<h3><a name="APKPlatform"></a>Building a APK that should be signed with the platform key</h3>
 <pre>
   LOCAL_PATH := $(call my-dir)
   include $(CLEAR_VARS)
@@ -60,7 +67,7 @@
   # Tell it to build an APK
   include $(BUILD_PACKAGE)
 </pre>
-<h2>Building a APK that should be signed with a specific vendor key</h2>
+<h3><a name="APKVendor"></a>Building a APK that should be signed with a specific vendor key</h3>
 <pre>
   LOCAL_PATH := $(call my-dir)
   include $(CLEAR_VARS)
@@ -76,7 +83,7 @@
   # Tell it to build an APK
   include $(BUILD_PACKAGE)
 </pre>
-<h2><a name="Adding_a_prebuilt_APK" id="Adding_a_prebuilt_APK"></a>Adding a prebuilt APK</h2>
+<h3><a name="prebuiltAPK"></a>Adding a prebuilt APK</h3>
 <pre>
   LOCAL_PATH := $(call my-dir)
   include $(CLEAR_VARS)
@@ -89,7 +96,7 @@
   &nbsp;
   include $(BUILD_PREBUILT)
 </pre>
-<h2><a name="Adding_a_Static_Java_Library" id="Adding_a_Static_Java_Library"></a>Adding a Static Java Library</h2>
+<h3><a name="staticJava"></a>Adding a Static Java Library</h3>
 <pre>
   LOCAL_PATH := $(call my-dir)
   include $(CLEAR_VARS)
@@ -106,7 +113,7 @@
   # Build a static jar file.
   include $(BUILD_STATIC_JAVA_LIBRARY)
 </pre>
-<h2><a name="Android_mk_variables" id="Android_mk_variables"></a>Android.mk Variables</h2>
+<h3><a name="mkVars"></a>Android.mk Variables</h3>
 
 <p>These are the variables that you'll commonly see in Android.mk files, listed
 alphabetically. First, a note on the variable naming: </p> 
diff --git a/pdk/docs/guide/build_new_device.jd b/pdk/docs/guide/build_new_device.jd
index d914ebe..b21371d 100755
--- a/pdk/docs/guide/build_new_device.jd
+++ b/pdk/docs/guide/build_new_device.jd
@@ -1,15 +1,22 @@
-page.title=Building Android for a new Mobile Device
+page.title=Building Android for a new Device
 pdk.version=1.0
 @jd:body
 
 
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidOHDPortingDeviceBuildingProcess">Detailed Instructions</a><br/>
-<a href="#androidBuildNewFileTree">New Product File Tree</a><br/></div></font></div>
+<ul>
+<li><a href="#androidOHDPortingDeviceBuildingProcess">Detailed Instructions</a></li>
+<li><a href="#androidBuildNewFileTree">New Product File Tree</a></li>
+</ul>
+</div>
+</div>
 
-<a name="androidOHDPortingDeviceBuildingProcess"></a><h2>Detailed Instructions</h2>
+
+<a name="androidOHDPortingDeviceBuildingProcess"></a><h3>Detailed Instructions</h3>
 
 <p>The directions below describe how to configure make files for new mobile devices and products.</p>
 <ol>
@@ -104,7 +111,7 @@
 <p>You should find new build binaries located in <code>/out/target/product/&lt;board_name&gt;</code>.
 
 
-<a name="androidBuildNewFileTree"></a><h2>New Product File Tree</h2>
+<a name="androidBuildNewFileTree"></a><h3>New Product File Tree</h3>
 
 <p>The file tree below illustrates what your own system should look like after completing the steps above.</p>
 <p>
@@ -127,7 +134,7 @@
 </ul>
 </p>
 
-<a name="androidBuildSystemProductDefFiles"></a><h2>Product Definition Files</h2>
+<a name="androidBuildSystemProductDefFiles"></a><h3>Product Definition Files</h3>
 
 <p>Product-specific variables are defined in product definition files. A product definition file can inherit from other product definition files, thus reducing the need to copy and simplifying maintenance.</p>
 <p>Variables maintained in a product definition files include:</p>
@@ -244,7 +251,7 @@
 
 </pre>
 
-<a name="androidBuildVariants"></a><h2>Build Variants</h2>
+<a name="androidBuildVariants"></a><h3>Build Variants</h3>
 
 <p> 
 When building for a particular product, it's often useful to have minor
diff --git a/pdk/docs/guide/build_system.jd b/pdk/docs/guide/build_system.jd
index 36936aa..64216d8 100755
--- a/pdk/docs/guide/build_system.jd
+++ b/pdk/docs/guide/build_system.jd
@@ -3,34 +3,26 @@
 @jd:body
 
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidBuildSystemIntroduction">Introduction</a><br/>
-<a href="#androidBuildSystemUnderstanding">Understanding Android's Build System</a><br/><div style="padding-left:40px">
-
-<a href="#androidBuildSystemOverview">Understanding the makefile</a><br/>
-<a href="#androidBuildSystemLayers">Layers</a><br/>
-<a href="#androidSourceSetupBuildingCodeBase">Building the Android Platform</a><br/><div style="padding-left:40px">
-
-<a href="#androidSourceSetupBuildingDeviceCodeBase">Device Code</a><br/>
-<a href="#androidBuildingCleaning">Cleaning Up</a><br/>
-<a href="#androidBuildingSpeeding">Speeding Up Rebuilds</a><br/>
-<a href="#androidBuildingTroubleshooting">Troubleshooting</a><br/></div>
-<a href="#androidSourceSetupBuildingKernel">Building the Android Kernel</a><br/><div style="padding-left:40px">
-
-<a href="#androidSourceSetupBuildingKernelCheckingBranch">Checking Out a Branch</a><br/>
-<a href="#androidSourceSetupBuildingKernelBranchLocation">Verifying Location</a><br/>
-<a href="#androidSourceSetupBuildingKernelBuild">Building the Kernel</a><br/></div></div></div>
-
-<a name="androidBuildSystemIntroduction"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidBuildSystemOverview">Understanding the makefile</a></li>
+<li><a href="#androidBuildSystemLayers">Layers</a></li>
+<li><a href="#androidSourceSetupBuildingCodeBase">Building the Android Platform</a></li>
+<li><a href="#androidSourceSetupBuildingKernel">Building the Android Kernel</a></li>
+</ul>
+</div>
+</div>
 
 <p>Android uses a custom build system to generate tools, binaries, and documentation. This document provides an overview of Android's build system and instructions for doing a simple build. </p>
 <p>Android's build system is make based and requires a recent version of GNU Make (note that Android uses advanced features of GNU Make that may not yet appear on the GNU Make web site). Before continuing, check your version of make by running <code>% make -v</code>. If you don't have version 3.80 or greater, you need to <a href="http://www.gnu.org/software/make/">upgrade your version of make</a>. </p>
 
 
-<a name="androidBuildSystemUnderstanding"></a><h2>Understanding Android's Build System</h2>
 
-<a name="androidBuildSystemOverview"></a><h3>Understanding the makefile</h3>
+
+<a name="androidBuildSystemOverview"></a><h4>Understanding the makefile</h4>
 
 <p>A makefile defines how to build a particular application. Makefiles typically include all of the following elements:</p>
 <ol>
@@ -58,7 +50,7 @@
 <p>The snippet above includes artificial line breaks to maintain a print-friendly document.</p>
 
 
-<a name="androidBuildSystemLayers"></a><h3>Layers</h3>
+<a name="androidBuildSystemLayers"></a><h4>Layers</h4>
 
 <p>The build hierarchy includes the abstraction layers described in the table below.</p>
 
@@ -92,12 +84,12 @@
   </tr>
 </table>
 
-<a name="androidSourceSetupBuildingCodeBase"></a><h2>Building the Android Platform</h2>
+<a name="androidSourceSetupBuildingCodeBase"></a><h3>Building the Android Platform</h3>
 
 <p>This section describes how to build the default version of Android. Once you are comfortable with a generic build, then you can begin to modify Android for your own target device.</p>
 
 
-<a name="androidSourceSetupBuildingDeviceCodeBase"></a><h3>Device Code</h3>
+<a name="androidSourceSetupBuildingDeviceCodeBase"></a><h4>Device Code</h4>
 
 <p>To do a generic build of android, source <code>build/envsetup.sh</code>, which contains necessary variable and function definitions, as described below.</p>
 <pre class="prettyprint">
@@ -117,12 +109,12 @@
 </pre>
 
 
-<a name="androidBuildingCleaning"></a><h3>Cleaning Up</h3>
+<a name="androidBuildingCleaning"></a><h4>Cleaning Up</h4>
 
 <p>Execute <code>% m clean</code> to clean up the binaries you just created. You can also execute <code>% m clobber</code> to get rid of the binaries of all combos. <code>% m clobber</code> is equivalent to removing the <code>//out/</code> directory where all generated files are stored.</p>
 
 
-<a name="androidBuildingSpeeding"></a><h3>Speeding Up Rebuilds</h3>
+<a name="androidBuildingSpeeding"></a><h4>Speeding Up Rebuilds</h4>
 
 <p> The binaries of each combo are stored as distinct sub-directories of <code>//out/</code>, making it possible to quickly switch between combos without having to recompile all sources each time. </p>
 <p> However, performing a clean rebuild is necessary if the build system doesn't catch changes to environment variables or makefiles. If this happens often, you should define the <code>USE_CCACHE</code> environment variable as shown below: </p>
@@ -134,7 +126,7 @@
 <p><code>ccache</code> binaries are provided in <code>//prebuilt/...</code> and don't need to get installed on your system.</p>
 
 
-<a name="androidBuildingTroubleshooting"></a><h3>Troubleshooting</h3>
+<a name="androidBuildingTroubleshooting"></a><h4>Troubleshooting</h4>
 
 <p>The following error is likely caused by running an outdated version of Java.</p>
 <pre class="prettyprint">
@@ -155,7 +147,7 @@
 <p>If you do have Java 1.5 or later and your receive this error, verify that you have properly updated your <code>PATH</code> variable.</p>
 
 
-<a name="androidSourceSetupBuildingKernel"></a><h2>Building the Android Kernel</h2>
+<a name="androidSourceSetupBuildingKernel"></a><h3>Building the Android Kernel</h3>
 
 <p>This section describes how to build Android's default kernel. Once you are comfortable with a generic build, then you can begin to modify Android drivers for your own target device.</p>
 
@@ -168,7 +160,7 @@
 <p>Then switch to the kernel directory <code>/home/joe/android/kernel</code>.
 
 
-<a name="androidSourceSetupBuildingKernelCheckingBranch"></a><h3>Checking Out a Branch</h3>
+<a name="androidSourceSetupBuildingKernelCheckingBranch"></a><h4>Checking Out a Branch</h4>
 
 <p>The default branch is always <code>android</code>. To check out a different branch, execute the following:</p>
 
@@ -182,7 +174,7 @@
 <p>To simplify code management, give your local branch the same name as the remote branch it is tracking (as illustrated in the snippet above). Switch between branches by executing <code>% git checkout &lt;branchname&gt;</code>.</p>
 
 
-<a name="androidSourceSetupBuildingKernelBranchLocation"></a><h3>Verifying Location</h3>
+<a name="androidSourceSetupBuildingKernelBranchLocation"></a><h4>Verifying Location</h4>
 
 <p>Find out which branches exist (both locally and remotely) and which one is active (marked with an asterisk) by executing the following:</p>
 <pre class="prettyprint">
@@ -197,7 +189,7 @@
 <p>To only see local branches, omit the <code>-a</code> flag.</p> 
 
 
-<a name="androidSourceSetupBuildingKernelBuild"></a><h3>Building the Kernel</h3>
+<a name="androidSourceSetupBuildingKernelBuild"></a><h4>Building the Kernel</h4>
 
 <p>To build the kernel, execute:</p>
 <pre class="prettyprint">
diff --git a/pdk/docs/guide/camera.jd b/pdk/docs/guide/camera.jd
index 204c070..f4c9c85 100755
--- a/pdk/docs/guide/camera.jd
+++ b/pdk/docs/guide/camera.jd
@@ -2,24 +2,24 @@
 pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidCameraIntroduction">Introduction</a><br/>
-<a href="#androidCameraBuildingDriver">Building a Camera Library</a><br/>
-<a href="#androidCameraSequenceDiagrams">Sequence Diagrams</a><br/><div style="padding-left:40px">
-
-<a href="#androidCameraSequenceDiagramsPreview">Preview</a><br/>
-<a href="#androidCameraSequenceDiagramsTakePic">Taking a Picture</a><br/></div>
-<a href="#androidCameraInterfaceIntro">Interface</a><br/></div></font></div>
-
-<a name="androidCameraIntroduction"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidCameraBuildingDriver">Building a Camera Library</a></li>
+<li><a href="#androidCameraSequenceDiagrams">Sequence Diagrams</a></li>
+<li><a href="#androidCameraInterfaceIntro">Interface</a></li>
+</ul>
+</div>
+</div>
 
 <p>Android's camera subsystem connects the camera application to the application framework and user space libraries, which in turn communicate with the camera hardware layer that operates the physical camera.</p>
 <p>The diagram below illustrates the structure of the camera subsystem.</p>
 <p><img src="images/androidCameraArchitecture.gif"></p>
 
 
-<a name="androidCameraBuildingDriver"></a><h2>Building a Camera Library</h2>
+<a name="androidCameraBuildingDriver"></a><h3>Building a Camera Library</h3>
 
 <p>To implement a camera driver, create a shared library that implements the interface defined in <code>CameraHardwareInterface.h</code>. You must name your shared library <code>libcamera.so</code> so that it will get loaded from <code>/system/lib</code> at runtime.  Place libcamera sources and <code>Android.mk</code> in <code>partner/acme/chipset_or_board/libcamera/</code>.</p>
 <p>The following stub <code>Android.mk</code> file ensures that <code>libcamera</code> compiles and links to the appropriate libraries:</p>
@@ -49,23 +49,23 @@
 </pre>
 
 
-<a name="androidCameraSequenceDiagrams"></a><h2>Sequence Diagrams</h2>
+<a name="androidCameraSequenceDiagrams"></a><h3>Sequence Diagrams</h3>
 
 
 
-<a name="androidCameraSequenceDiagramsPreview"></a><h3>Preview</h3>
+<a name="androidCameraSequenceDiagramsPreview"></a><h4>Preview</h4>
 
 <p>The following diagram illustrates the sequence of function calls and actions necessary for your camera to preview.</p>
 <img src="images/cameraPreview.jpg">
 
 
-<a name="androidCameraSequenceDiagramsTakePic"></a><h3>Taking a Picture</h3>
+<a name="androidCameraSequenceDiagramsTakePic"></a><h4>Taking a Picture</h4>
 
 <p>The following diagram illustrates the sequence of function calls and actions necessary for your camera to take a picture.</p>
 <img src="images/cameraTakePicture.jpg">
 
 
-<a name="androidCameraInterfaceIntro"></a><h2>Interface</h2>
+<a name="androidCameraInterfaceIntro"></a><h3>Interface</h3>
 
 
 
diff --git a/pdk/docs/guide/customization.jd b/pdk/docs/guide/customization.jd
index a405113..9c39cd7 100755
--- a/pdk/docs/guide/customization.jd
+++ b/pdk/docs/guide/customization.jd
@@ -2,21 +2,22 @@
 pdk.version=1.0
 @jd:body
 
-<a name="toc"/> 
-<div style="padding:10px"> 
-<a href="#androidBootScreenCustomization">Boot Screen Customization</a><br/> 
-<a href="#androidNetCustPlat">Network Customization Platform</a><br/><div style="padding-left:40px"> 
- 
-<a href="#androidNetCustPlatNetworkConfig">Network Configuration</a><br/> 
-<a href="#androidNetCustPlatAPNConfig">Build-time APN configuration</a><br/> 
-<a href="#androidNetCustPlatAPNRunTime">APN configuration at run time</a><br/></div> 
-<a href="#androidCustomizingPre-LoadedApps">Customizing pre-loaded applications</a><br/> 
-<a href="#androidBrowserBookmarks">Customizing browser bookmarks</a><br/> 
-<a href="#androidEmailProviderCustomization">Email Provider Customization</a><br/> 
-<a href="#androidThemes">Platform Themes</a><br/><div style="padding-left:40px"> 
- 
-<a href="#androidThemesStyles">Themes and Styles</a><br/> 
-<a href="#androidThemesAnimations">Animations</a><br/></div></div></font></div> 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
+<a name="toc"/>
+<ul>
+<li><a href="#androidBootScreenCustomization">Boot Screen Customization</a></li>
+<li><a href="#androidNetCustPlat">Network Customization Platform</a></li>
+<li><a href="#androidCustomizingPre-LoadedApps">Customizing pre-loaded applications</a></li> 
+<li><a href="#androidBrowserBookmarks">Customizing browser bookmarks</a></li> 
+<li><a href="#androidEmailProviderCustomization">Email Provider Customization</a></li>
+<li><a href="#androidThemes">Platform Themes</a></li>
+</ul>
+</div>
+</div>
+
+
  
 <a name="androidBootScreenCustomization"></a><h3>Boot Screen Customization</h3> 
  
diff --git a/pdk/docs/guide/dalvik.jd b/pdk/docs/guide/dalvik.jd
index 30c92ef..948496a 100755
--- a/pdk/docs/guide/dalvik.jd
+++ b/pdk/docs/guide/dalvik.jd
@@ -1,16 +1,19 @@
 page.title=Dalvik
 pdk.version=1.0
 @jd:body
- 
-<a name="toc"/> 
-<div style="padding:10px"> 
-<a href="#androidDalvikIntroduction">Introduction</a><br/> 
-<a href="#dalvikCoreLibraries">Core Libraries</a><br/>
-<a href="#dalvikJNICallBridge">JNI Call Bridge</a><br/>
-<a href="#dalvikInterpreter">Interpreter</a><br/></div></font>
- 
-<a name="androidDalvikIntroduction"></a><h2>Introduction</h2> 
- 
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
+<a name="toc"/>
+<ul>
+<li><a href="#dalvikCoreLibraries">Core Libraries</a></li>
+<li><a href="#dalvikJNICallBridge">JNI Call Bridge</a></li>
+<li><a href="#dalvikInterpreter">Interpreter</a></li>
+</ul>
+</div>
+</div>
+
 <p> 
 The Dalvik virtual machine is intended to run on a variety of platforms.
 The baseline system is expected to be a variant of UNIX (Linux, BSD, Mac
@@ -23,7 +26,7 @@
 </p>
  
  
-<a name="dalvikCoreLibraries"></a><h2>Core Libraries</h2> 
+<a name="dalvikCoreLibraries"></a><h3>Core Libraries</h3> 
  
 <p> 
 The native code in the core libraries (chiefly <code>dalvik/libcore</code>,
@@ -37,7 +40,7 @@
 </p> 
  
  
-<a name="dalvikJNICallBridge"></a><h2>JNI Call Bridge</h2> 
+<a name="dalvikJNICallBridge"></a><h3>JNI Call Bridge</h3> 
  
 <p> 
 Most of the Dalvik VM runtime is written in portable C.  The one
@@ -82,7 +85,7 @@
 or inter-argument 64-bit alignment restrictions.
 </p> 
  
-<a name="dalvikInterpreter"></a><h2>Interpreter</h2> 
+<a name="dalvikInterpreter"></a><h3>Interpreter</h3> 
  
 <p> 
 The Dalvik runtime includes two interpreters, labeled "portable" and "fast".
diff --git a/pdk/docs/guide/debugging_gdb.jd b/pdk/docs/guide/debugging_gdb.jd
index fe63307..9717cf3 100755
--- a/pdk/docs/guide/debugging_gdb.jd
+++ b/pdk/docs/guide/debugging_gdb.jd
@@ -2,21 +2,23 @@
 pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px"> <a href="#intro">Introduction</a><br/>
-  <a href="#gdb">Running gdb on the desktop</a><br/>
-  <div style="padding-left:40px"> <a href="#gdbShort">Short Instructions</a><br/>
-    <a href="#gdbDetailed">Detailed Instructions</a><br/>
-  </div>
-  <a href="#justInTime">Just-In-Time Debug Feature</a><br/>
+<ul>
+<li><a href="#gdb">Debugging</a></li>
+  <li><a href="#justInTime">Just-In-Time Debug Feature</a></li>
+</ul>
 </div>
-<a name="intro"></a>
-<h3>Introduction</h3>
-<p>The current version of <code>envsetup.sh</code> has a <code>gdbclient</code> command that handles much of the setup.  For example, to attach to the
+</div>
+
+<p>The current version of <code>envsetup.sh</code> has a <code>gdbclient</code> command that handles much of the setup.  For example, to attach the
   already-running <code>globaltime</code> application, execute the following, making sure that: 1) you do this from the same window used to build the software on the device you are debugging and 2) verify that the symbols in the object files in the build tree match up with what is installed on the device or emulator.</p>
 <pre class="prettify">
 gdbclient app_process :5039 globaltime
 </pre>
+<a name="gdb"></a><h3>Debugging</h3>
 <a name="gdbShort"></a>
 <h4>Short Instructions</h4>
 <p>Android runs <code>gdbserver</code> on the device and an ARM aware <code>gdb</code>, named <code>arm-eabi-gdb</code>, on the desktop machine.</p>
diff --git a/pdk/docs/guide/debugging_native.jd b/pdk/docs/guide/debugging_native.jd
index 435048b..5f9f0f7 100755
--- a/pdk/docs/guide/debugging_native.jd
+++ b/pdk/docs/guide/debugging_native.jd
@@ -3,18 +3,18 @@
 @jd:body
 
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-  <a href="#Capturing_logs">Capturing logs</a><br/>
-  <a href="#Debug_Scenarios">Debug Scenarios</a><br/>
-  <div style="padding-left:40px"> 
-    <a href="#Crash_but_no_exit_stuck">Crash but no exit...stuck</a><br/>
-    <a href="#Blocked_in_a_syscall">Blocked in a syscall</a><br/>
-    <a href="#Crash_in_C_C_code">Crash in C / C++ code</a>
-  </div>
+<ul>
+<li><a href="#Capturing_logs">Capturing logs</a></li>
+<li><a href="#Debug_Scenarios">Debug Scenarios</a></li>
+</ul>
+</div>
 </div>
 
-<a name="Capturing_logs"></a><h2>Capturing logs</h2>
+<a name="Capturing_logs"></a><h3>Capturing logs</h3>
 
 <p>To capture log output:</p>
 <ol>
@@ -24,7 +24,7 @@
 
 </ol>
 
-<a name="Debug_Scenarios"></a><h2>Debug Scenarios</h2>
+<a name="Debug_Scenarios"></a><h3>Debug Scenarios</h3>
 <pre class="prettify">
   # command to device shell (via adb)
   % command to host pc shell
@@ -32,7 +32,7 @@
 <p>
 </p>
 
-<a name="Crash_but_no_exit_stuck"></a><h3>Crash but no exit...stuck</h3>
+<a name="Crash_but_no_exit_stuck"></a><h4>Crash but no exit...stuck</h4>
 
 <p>In this scenario, the GTalk app crashed but did not actually exit or seems stuck. Check the debug logs to see if there is anything unusual: </p>
 
@@ -237,7 +237,7 @@
 #2  0x6b022c2c in shell (args=0x51b58) at extlibs/jamvm-1.4.1/src/thread.c:629
 </pre>
 
-<a name="Crash_in_C_C_code"></a><h3>Crash in C / C++ code</h3>
+<a name="Crash_in_C_C_code"></a><h4>Crash in C / C++ code</h4>
 <p>If it crashes, connect with <code>aproto</code> and run <code>logcat</code> on the device. You should see output like this:</p>
 
 <pre class="prettify">
diff --git a/pdk/docs/guide/display_drivers.jd b/pdk/docs/guide/display_drivers.jd
index 94d5467..ac41c55 100755
--- a/pdk/docs/guide/display_drivers.jd
+++ b/pdk/docs/guide/display_drivers.jd
@@ -4,20 +4,23 @@
 
 
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidDisplayDriverIntroduction">Introduction</a><br/>
-<a href="#androidDisplayDriverFunctionality">Functionality</a><br/>
-<a href="#androidDisplayDriversSourceTemplate">Implementing Your Own Driver (Driver Template)</a><br/>
-<a href="#androidDisplayDriversTroubleshooting">Troubleshooting</a><br/></div></font></div>
-
-<a name="androidDisplayDriverIntroduction"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidDisplayDriverFunctionality">Functionality</a></li>
+<li><a href="#androidDisplayDriversSourceTemplate">Implementing Your Own Driver (Driver Template)</a></li>
+<li><a href="#androidDisplayDriversTroubleshooting">Troubleshooting</a></li>
+</ul>
+</div>
+</div>
 
 <p>This section describes how the display driver functions and offers a functional template designed to help you build your own device-specific driver.</p>
 <p>Android relies on the standard frame buffer device (<code>/dev/fb0</code> or <code>/dev/graphics/fb0</code>) and driver as described in the <code>linux/fb.h</code> kernel header file. For more information regarding the standard Linux frame buffer, please see <a href="http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.24.y.git;a=blob;f=Documentation/fb/framebuffer.txt">The Frame Buffer Device</a> at <a href="http://kernel.org">http://kernel.org</a>.
 
 
-<a name="androidDisplayDriverFunctionality"></a><h2>Functionality</h2>
+<a name="androidDisplayDriverFunctionality"></a><h3>Functionality</h3>
 
 <p>In Android, every window gets implemented with an underlying Surface object, an object that gets placed on the framebuffer by SurfaceFlinger, the system-wide screen composer. Each Surface is double-buffered. The back buffer is where drawing takes place and the front buffer is used for composition. </p>
 <p> When <code>unlockCanvas()</code> is called, the back buffer is posted, which 
@@ -32,7 +35,7 @@
 <p>To maintain adequate performance, framebuffer memory should be cacheable. If you use write-back, flush the cache before the frame buffer is written from DMA to the LCD. If that isn't possible, you may use write-through. As a last resort, you can also use uncached memory with the write-bugger enabled, but performance will suffer.</p>
 
 
-<a name="androidDisplayDriversSourceTemplate"></a><h2>Implementing Your Own Driver (Driver Template)</h2>
+<a name="androidDisplayDriversSourceTemplate"></a><h3>Implementing Your Own Driver (Driver Template)</h3>
 
 <p>The following sample driver offers a functional example to help you build your own display driver. Modify <code>PGUIDE_FB...</code> macros as desired to match the requirements of your own device hardware.</p>
 <pre class="prettyprint">
@@ -330,7 +333,7 @@
 </pre>
 
 
-<a name="androidDisplayDriversTroubleshooting"></a><h2>Troubleshooting</h2>
+<a name="androidDisplayDriversTroubleshooting"></a><h3>Troubleshooting</h3>
 
 <p>Both of the following problems have a similar cause:</p>
 <ul>
diff --git a/pdk/docs/guide/gps.jd b/pdk/docs/guide/gps.jd
index da57bef..3af7d7d 100755
--- a/pdk/docs/guide/gps.jd
+++ b/pdk/docs/guide/gps.jd
@@ -2,18 +2,21 @@
 pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidGpsIntroduction">Introduction</a><br/>
-<a href="#androidGPSBuildingDriver">Building a GPS Library</a><br/>
-<a href="#androidGPSInterface">Interface</a><br/></div></font></div>
-
-<a name="androidGpsIntroduction"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidGPSBuildingDriver">Building a GPS Library</a></li>
+<li><a href="#androidGPSInterface">Interface</a></li>
+</ul>
+</div>
+</div>
 
 <p>Android defines a user space C abstraction interface for GPS hardware. The interface header is defined in <code>include/hardware/gps.h</code>. In order to integate GPS with Android, you need to build a shared library that implements this interface. </p>
 
 
-<a name="androidGPSBuildingDriver"></a><h2>Building a GPS Library</h2>
+<a name="androidGPSBuildingDriver"></a><h3>Building a GPS Library</h3>
 
 <p>To implement a GPS driver, create a shared library that implements the interface defined in <code>gps.h</code>. You must name your shared library <code>libgps.so</code> so that it will get loaded from <code>/system/lib</code> at runtime. Place GPS sources and Android.mk in <code>partner/acme/chipset_or_board/gps/</code> (where "acme" is your product name and "chipset_or_board" is your hardware target).</p>
 
@@ -44,11 +47,11 @@
 </pre>
 
 
-<a name="androidGPSInterface"></a><h2>Interface</h2>
+<a name="androidGPSInterface"></a><h3>Interface</h3>
 
 
 
-<p><span class="lh2"><a name="androidDoxygenNote"></a></span>
+<p><span class="lh3"><a name="androidDoxygenNote"></a></span>
 
 <p class="note"><strong>Note</strong>: This document relies on some Doxygen-generated content that appears in an iFrame below. To return to the Doxygen default content for this page, <a href="gps.html">click here</a>.</p>
 
diff --git a/pdk/docs/guide/instrumentation_testing.jd b/pdk/docs/guide/instrumentation_testing.jd
index 1302217..00c8248 100755
--- a/pdk/docs/guide/instrumentation_testing.jd
+++ b/pdk/docs/guide/instrumentation_testing.jd
@@ -2,37 +2,19 @@
 pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidInstrumentationFrameworkIntro">Introduction</a><br/>
-<a href="#androidInstrumentationTestingFramework">Instrumentation Framework</a><br/><div style="padding-left:40px">
-
-<a href="#androidInstrumentationTestingClasses">Classes</a><br/>
-<a href="#androidInstrumentationFrameworkamCommand">Understanding the am Command</a><br/></div>
-<a href="#androidInstrumentationFrameworkPlatform">Platform Test Suites</a><br/><div style="padding-left:40px">
-
-<a href="#androidTestingPlatformFramework">Framework Tests</a><br/>
-<a href="#androidTestingPlatformCoreLibrary">Core Library</a><br/></div>
-<a href="#androidInstrumentationFrameworkWritingRunning">Running Tests</a><br/><div style="padding-left:40px">
-
-<a href="#androidInstrumentationTestingRunningAll">All Tests with Default TestRunner behavior</a><br/>
-<a href="#androidTestingTestSinglePakcage">Running all Tests Under Single Package</a><br/>
-<a href="#androidTestingSingleTestSuite">Running a Single Test Suite</a><br/>
-<a href="#androidInstrumentationTestingRunningSingleTestCase">A Single Test Case</a><br/>
-<a href="#androidInstrumentationTestingRunningSingleTest">A Single Test</a><br/>
-<a href="#androidTestingDebugging">Attaching a debugger to your test</a><br/></div>
-<a href="#androidInstrumentationTestingCreating">Writing Tests</a><br/><div style="padding-left:40px">
-
-<a href="#androidTestingLocationFiles">Location of Files</a><br/>
-<a href="#androidTestingContentMakefile">Contents of makefile</a><br/>
-<a href="#androidTestingContentManifest">Content of Manifest</a><br/>
-<a href="#androidInstrumentationTestingCreatingTestRunner">New Instrumentation TestRunner</a><br/>
-<a href="#androidInstrumentationTestingCreatingTestCase">New InstrumentationTestCase</a><br/>
-<a href="#androidInstrumentationFrameworkTestCase">Exploring a Test Case</a><br/>
-<a href="#androidTestingKindsofTests">Deciding Kinds of Tests to Write</a><br/></div>
-<a href="#androidInstrumentationFrameworkTroubleshooting">Troubleshooting</a><br/></div>
-
-<a name="androidInstrumentationFrameworkIntro"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidInstrumentationTestingFramework">Instrumentation Framework</a></li>
+<li><a href="#androidInstrumentationFrameworkPlatform">Platform Test Suites</a></li>
+<li><a href="#androidInstrumentationFrameworkWritingRunning">Running Tests</a></li>
+<li><a href="#androidInstrumentationTestingCreating">Writing Tests</a></li>
+<li><a href="#troubleshooting">Troubleshooting</a></li>
+</ul>
+</div>
+</div>
 
 <p>This document describes how to use the Instrumentation Framework to write test cases. Instrumentation testing allows you to verify a particular feature or behavior with an automated JUnit TestCase. You can launch activities and providers within an application, send key events, and make assertions about various UI elements. </p>
 <p>You should have a working knowledge of the following:</p>
@@ -45,11 +27,11 @@
 <p> Each Android application runs in its own process. Instrumentation kills the application process and  restarts the process with Instrumentation. Instrumentation gives a handle to the application context used to poke around the application to validate test assertions, allowing you to write test cases to test applications at a much lower level than UI screen shot tests. Note that Instrumentation cannot catch UI bugs. </p>
 
 
-<a name="androidInstrumentationTestingFramework"></a><h2>Instrumentation Framework</h2>
+<a name="androidInstrumentationTestingFramework"></a><h3>Instrumentation Framework</h3>
 
 
 
-<a name="androidInstrumentationTestingClasses"></a><h3>Classes</h3>
+<a name="androidInstrumentationTestingClasses"></a><h4>Classes</h4>
 
 <p> The following classes help glue together <code>Instrumentation</code> with JUnit testing. </p>
 <table>
@@ -95,7 +77,7 @@
 </table>
 
 
-<a name="androidInstrumentationFrameworkamCommand"></a><h3>Understanding the am Command</h3>
+<a name="androidInstrumentationFrameworkamCommand"></a><h4>Understanding the am Command</h4>
 
 <p>The am command is a command-line interface to the ActivityManager (see <a href="http://code.google.com/android/reference/android/app/ActivityManager.html">http://code.google.com/android/reference/android/app/ActivityManager.html</a> for details). <code>am</code> is used to start and instrument activities using the adb shell command, as shown in the snippet below:</p>
 <pre class="prettify">
@@ -112,22 +94,22 @@
 </pre>
 
 
-<a name="androidInstrumentationFrameworkPlatform"></a><h2>Platform Test Suites</h2>
+<a name="androidInstrumentationFrameworkPlatform"></a><h3>Platform Test Suites</h3>
 
 <p>This section provides an overview for various unit and functional test cases that can be executed through the instrumentation framework.</p>
 
 
-<a name="androidTestingPlatformFramework"></a><h3>Framework Tests</h3>
+<a name="androidTestingPlatformFramework"></a><h4>Framework Tests</h4>
 
 <p>Framework test cases test the Android application framework or specific Android application functionality that requires an Android runtime context.  These tests can be found in <code>//device/tests</code> and <code>//device/apps/AndroidTests</code>.</p>
 
 
-<a name="androidTestingPlatformCoreLibrary"></a><h3>Core Library</h3>
+<a name="androidTestingPlatformCoreLibrary"></a><h4>Core Library</h4>
 
 <p>Core library test cases test the Android library functionality that does not require an Android runtime context.  These tests are split into Android library (android.* package space) tests at <code>//device/java/tests</code> and Java library (java.*, javax.*, etc. packages) tests at <code>//device/dalvik/libcore/.../tests</code>.</p>
 
 
-<a name="androidInstrumentationFrameworkWritingRunning"></a><h2>Running Tests</h2>
+<a name="androidInstrumentationFrameworkWritingRunning"></a><h3>Running Tests</h3>
 
 <p>Each instrumentation test case is similar to an Android application with the distinction that it starts another application. For example, have a look in the <code>tests/Contacts</code> directory. </p>
 <ul>
@@ -165,7 +147,7 @@
 </pre>
 
 
-<a name="androidInstrumentationTestingRunningAll"></a><h3>All Tests with Default TestRunner behavior</h3>
+<a name="androidInstrumentationTestingRunningAll"></a><h4>All Tests with Default TestRunner behavior</h4>
 
 <p>If no class or package is passed in to run, InstrumentationTestRunner will automatically find and run all tests under the package of the test application (as defined by the <code>android:targetPackage</code> attribute of the instrumentation defined in its manifest file).
 </p> 
@@ -183,7 +165,7 @@
 </pre>
 
 
-<a name="androidTestingTestSinglePakcage"></a><h3>Running all Tests Under Single Package</h3>
+<a name="androidTestingTestSinglePakcage"></a><h4>Running all Tests Under Single Package</h4>
 
 <p>If you have many tests under one package, use the <code>-e package &lt;packagename&gt;</code> option to run all tests under that package without having to manually create a test suite.</p> 
 <pre> 
@@ -197,7 +179,7 @@
 </pre>  
 
 
-<a name="androidTestingSingleTestSuite"></a><h3>Running a Single Test Suite</h3>
+<a name="androidTestingSingleTestSuite"></a><h4>Running a Single Test Suite</h4>
 
 <p>If you prefer to explicitly state which tests comprise all of your tests, you can define a test suite and run that directly. By convention, all test packages in your system should have at least one suite called <code>AllTests</code> (see <code>AllTests.java</code>).  To run all of the tests using the <code>AllTests</code> suite for the api demos test app:</p>
 
@@ -216,7 +198,7 @@
 </pre> 
 
 
-<a name="androidInstrumentationTestingRunningSingleTestCase"></a><h3>A Single Test Case</h3>
+<a name="androidInstrumentationTestingRunningSingleTestCase"></a><h4>A Single Test Case</h4>
 
 <pre> 
 $ adb shell am instrument -w \
@@ -233,7 +215,7 @@
 </pre> 
 
 
-<a name="androidInstrumentationTestingRunningSingleTest"></a><h3>A Single Test</h3>
+<a name="androidInstrumentationTestingRunningSingleTest"></a><h4>A Single Test</h4>
 
 <pre> 
 $ adb shell am instrument -w \
@@ -250,7 +232,7 @@
 </pre> 
 
 
-<a name="androidTestingDebugging"></a><h3>Attaching a debugger to your test</h3>
+<a name="androidTestingDebugging"></a><h4>Attaching a debugger to your test</h4>
 
 <p>In order to debug your test code, instruct the controller to stop and wait for the debugger by adding <code>-e debug true</code> to your
 command line.  This causes the test runner to stop and wait for the debugger just before calling your <code>setUp()</code> method.  For example,</p> 
@@ -262,12 +244,12 @@
 </pre> 
 
 
-<a name="androidInstrumentationTestingCreating"></a><h2>Writing Tests</h2>
+<a name="androidInstrumentationTestingCreating"></a><h3>Writing Tests</h3>
 
 <p>When writing tests, refer to the ApiDemos tests as models (located at <code>//device/samples/ApiDemos</code>). This section provides an overview of the test structure with ApiDemos.</p>
 
 
-<a name="androidTestingLocationFiles"></a><h3>Location of Files</h3>
+<a name="androidTestingLocationFiles"></a><h4>Location of Files</h4>
 
 <p>Test packages should use the following structure and include <code>Android.mk</code>, <code>AndroidManifest.xml</code>, <code>AllTests.java</code>, and a src directory that mirrors the src directory of the tested application.</p> 
 <p>Files are located within a <code>tests</code> directory found in the root directory:</p> 
@@ -291,7 +273,7 @@
 </pre>
 
 
-<a name="androidTestingContentMakefile"></a><h3>Contents of makefile</h3>
+<a name="androidTestingContentMakefile"></a><h4>Contents of makefile</h4>
 
 <p>The contents of the makefile are similar to a normal application with the addition of a <code>LOCAL_INSTRUMENTATION_FOR</code> declaration.<p /> 
 <pre> 
@@ -317,7 +299,7 @@
 </pre>
 
 
-<a name="androidTestingContentManifest"></a><h3>Content of Manifest</h3>
+<a name="androidTestingContentManifest"></a><h4>Content of Manifest</h4>
 
 <p>Use the following example to create an <code>AndroidManifest.xml</code> file that declares the instrumentation. Specify that the framework supplied Instrumentation TestRunner targest the package of your application, allowing the tests that are run with the instrumentation to get access to all of the classes of your application without having to build the source into the test app. The name of the test application is typically the same as your target application with <code>.tests</code> appended. </p>
 <pre> 
@@ -346,7 +328,7 @@
 </pre> 
 
 
-<a name="androidInstrumentationTestingCreatingTestRunner"></a><h3>New Instrumentation TestRunner</h3>
+<a name="androidInstrumentationTestingCreatingTestRunner"></a><h4>New Instrumentation TestRunner</h4>
 
 <p>Create a class that derives from this class. You must override two abstract methods; one that returns the class loader of the target package, and another that defines all of the tests within the package. For example, the snippet below displays the test runner for the framework tests.</p>
 <pre class="prettify">
@@ -378,7 +360,7 @@
 </pre>		
 
 
-<a name="androidInstrumentationTestingCreatingTestCase"></a><h3>New InstrumentationTestCase</h3>
+<a name="androidInstrumentationTestingCreatingTestCase"></a><h4>New InstrumentationTestCase</h4>
 
 <p> To create a new test case, write a class that extends <code>InstrumentationTestCase</code> in the same application as your test runner.  The following snippet illustrates an example <code>ActivityTestCase</code> that tests an activity named <code>MyActivity</code>.</p>
 <pre class="prettify">
@@ -409,7 +391,7 @@
 </pre>
 
 
-<a name="androidInstrumentationFrameworkTestCase"></a><h3>Exploring a Test Case</h3>
+<a name="androidInstrumentationFrameworkTestCase"></a><h4>Exploring a Test Case</h4>
 
 <p> The test case described in this section adds and tests a new Contact. Note that you can send intents, register intent receivers, etc. </p>
 <p><code>Instrumentation.java</code> has helper functions that send key events and strings, for example: </p>
@@ -481,7 +463,7 @@
 	</pre>
 
 
-<a name="androidTestingKindsofTests"></a><h3>Deciding Kinds of Tests to Write</h3>
+<a name="androidTestingKindsofTests"></a><h4>Deciding Kinds of Tests to Write</h4>
 
 <p>Once you are bootstrapped with your test application, you can start writing tests.  There are three of types of tests you may wish to write:</p> 
 <p><ul> 
@@ -498,7 +480,7 @@
 </p>
 
 
-<a name="androidInstrumentationFrameworkTroubleshooting"></a><h2>Troubleshooting</h2>
+<a name="troubleshooting"></a><h3>Troubleshooting</h3>
 
 <p>If you run your test cases and nothing appears to happen, have a look at <code>adb logcat</code>. The following is a common problem:</p>
 <pre class="prettify">
diff --git a/pdk/docs/guide/keymaps_keyboard_input.jd b/pdk/docs/guide/keymaps_keyboard_input.jd
index a71b5e9..e53149a 100755
--- a/pdk/docs/guide/keymaps_keyboard_input.jd
+++ b/pdk/docs/guide/keymaps_keyboard_input.jd
@@ -3,25 +3,19 @@
 @jd:body
 
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidKeymapIntro">Introduction</a><br/>
-<a href="#androidKeymapFunctionality">Functionality</a><br/>
-<a href="#androidKeymapKeyLayoutMapTitle">Key Layout Map</a><br/><div style="padding-left:40px">
-
-<a href="#androidKeymapKeyLayoutMapSelection">Selection of a Key Layout Map</a><br/>
-<a href="#androidKeymapKeyLayoutMapFileFormat">File Format</a><br/>
-<a href="#androidKeymapKeyLayoutMapExample">Example of a Key Layout Map File</a><br/></div>
-<a href="#androidKeymapKeyCharMap">Key Character Map</a><br/><div style="padding-left:40px">
-
-<a href="#androidKeymapKeyCharMapSelection">Selection of a Key Character Map</a><br/>
-<a href="#androidKeymapKeyCharMapFileFormat">File Format</a><br/>
-<a href="#androidKeymapKeyCharMapExample">Example of a Key Character Map File</a><br/>
-<a href="#androidKeymapKeyCharMapResourceBinaryFileFormat">Resource Binary File Format</a><br/></div>
-<a href="#androidKeymapDriverTemplate">Implementing Your Own Driver (Driver Template)</a><br/>
-<a href="#androidKeymapKeyCharMapSampleImplementation">Sample Implementation</a><br/></div></font></div>
-
-<a name="androidKeymapIntro"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidKeymapFunctionality">Functionality</a></li>
+<li><a href="#androidKeymapKeyLayoutMapTitle">Key Layout Map</a></li>
+<li><a href="#androidKeymapKeyCharMap">Key Character Map</a></li>
+<li><a href="#androidKeymapDriverTemplate">Implementing Your Own Driver (Driver Template)</a></li>
+<li><a href="#androidKeymapKeyCharMapSampleImplementation">Sample Implementation</a></li>
+</ul>
+</div>
+</div>
 
 <p>This document describes how keyboard input gets translated into Android actions and how you can customize key layout and key character maps to match the needs of your own device. </p>
 <p>Android uses the standard Linux input event device (<code>/dev/event0</code>) and driver as described in the <code>linux/input.h</code> kernel header file. For more information regarding standard Linux input drivers, please see <a href="http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.24.y.git;a=blob;f=Documentation/input/input.txt">Linux Input drivers</a> at <a href="http://kernel.org">http://kernel.org</a>.</p>
@@ -29,7 +23,7 @@
 
 
 
-<a name="androidKeymapFunctionality"></a><h2>Functionality</h2>
+<a name="androidKeymapFunctionality"></a><h3>Functionality</h3>
 
 <p>Android's input event device is structured around an interrupt or polling routine that captures the device-specific scancode and converts it to a standard form acceptable to Linux (as defined in <code>input.h</code>) before passing it to the kernel with <code>input_event()</code>.</p>
 <p>The keymap driver's other primary function is to establish a probe function that sets up the interrupt or polling function, handles hardware initialization, and attaches the driver to the input subsystem with <code>input_register_device()</code>.</p>
@@ -60,17 +54,17 @@
 </table>
 
 
-<a name="androidKeymapKeyLayoutMapTitle"></a><h2>Key Layout Map</h2>
+<a name="androidKeymapKeyLayoutMapTitle"></a><h3>Key Layout Map</h3>
 
 
 
-<a name="androidKeymapKeyLayoutMapSelection"></a><h3>Selection of a Key Layout Map</h3>
+<a name="androidKeymapKeyLayoutMapSelection"></a><h4>Selection of a Key Layout Map</h4>
 
 <p>Key layout maps are installed in <code>/system/usr/keylayout</code> and <code>/data/usr/keylayout</code>.</p>
 <p>For each keyboard device xxx, set the <code>android.keylayout.xxx</code> system property (see <a href="build_new_device.html">Building New Device</a> for help setting system properties). If you don't specify a keylayout file, Android will default to <code>/system/usr/keylayout/qwerty.kl</code>.</p>
 
 
-<a name="androidKeymapKeyLayoutMapFileFormat"></a><h3>File Format</h3>
+<a name="androidKeymapKeyLayoutMapFileFormat"></a><h4>File Format</h4>
 
 <p>Key layout maps are stored on the device as UTF-8 text files and have the following characteristics:</p>
 <p><ul>
@@ -88,7 +82,7 @@
 </p>
 
 
-<a name="androidKeymapKeyLayoutMapExample"></a><h3>Example of a Key Layout Map File</h3>
+<a name="androidKeymapKeyLayoutMapExample"></a><h4>Example of a Key Layout Map File</h4>
 
 <p>The following code comes from  <code>android/src/device/product/generic/tuttle2.kl</code> and is an example of a complete key layout file:</p>
 <pre class="prettify">
@@ -171,17 +165,17 @@
 </pre>
 
 
-<a name="androidKeymapKeyCharMap"></a><h2>Key Character Map</h2>
+<a name="androidKeymapKeyCharMap"></a><h3>Key Character Map</h3>
 
 
 
-<a name="androidKeymapKeyCharMapSelection"></a><h3>Selection of a Key Character Map</h3>
+<a name="androidKeymapKeyCharMapSelection"></a><h4>Selection of a Key Character Map</h4>
 
 <p>Key character maps are installed in <code>/system/usr/keychars</code> and <code>/data/usr/keychars</code>.</p>
 <p>For each keyboard device xxx, set the <code>android.keychar.xxx</code> system property to the full path of the desired keychar file. If you don't specify a keychar file, Android will default to <code>/system/usr/keychar/qwerty.kl</code>.
 
 
-<a name="androidKeymapKeyCharMapFileFormat"></a><h3>File Format</h3>
+<a name="androidKeymapKeyCharMapFileFormat"></a><h4>File Format</h4>
 
 <p>Key character maps are stored on the device as binary resources in order to reduce loading time. Key character maps have the following characteristics:</p>
 <p><ul>
@@ -220,7 +214,7 @@
 </ul></p>
 
 
-<a name="androidKeymapKeyCharMapExample"></a><h3>Example of a Key Character Map File</h3>
+<a name="androidKeymapKeyCharMapExample"></a><h4>Example of a Key Character Map File</h4>
 
 <p>The following code comes from <code>android/src/device/product/generic/tuttle2.kcm</code> and represents a complete key character file:</p>
 <p>The type line indicates what kind of keyboard your device implements. Possible types include:</p>
@@ -299,7 +293,7 @@
 </pre>
 
 
-<a name="androidKeymapKeyCharMapResourceBinaryFileFormat"></a><h3>Resource Binary File Format</h3>
+<a name="androidKeymapKeyCharMapResourceBinaryFileFormat"></a><h4>Resource Binary File Format</h4>
 
 <p>The file snippet above gets converted to the following by the <code>makekcharmap</code> tool as part of the build process. You can <code>mmap</code> this file in and share the approximately 4k of memory that it uses between processes to minimize load time.</p>
 <table>
@@ -359,7 +353,7 @@
 </tbody></table>
 
 
-<a name="androidKeymapDriverTemplate"></a><h2>Implementing Your Own Driver (Driver Template)</h2>
+<a name="androidKeymapDriverTemplate"></a><h3>Implementing Your Own Driver (Driver Template)</h3>
 
 <p>The following file, <code>pguide_events.c</code>, illustrates how to implement an Android keymap driver.</p>
 <pre class="prettyprint">
@@ -485,7 +479,7 @@
 </pre>
 
 
-<a name="androidKeymapKeyCharMapSampleImplementation"></a><h2>Sample Implementation</h2>
+<a name="androidKeymapKeyCharMapSampleImplementation"></a><h3>Sample Implementation</h3>
 
 <p>Assume the following for the setup of a new keypad device:</p>
 <pre class="prettify">
diff --git a/pdk/docs/guide/lights.jd b/pdk/docs/guide/lights.jd
index 5437e63..4f19c5d 100755
--- a/pdk/docs/guide/lights.jd
+++ b/pdk/docs/guide/lights.jd
@@ -1,15 +1,18 @@
 page.title=Lights
 pdk.version=1.0
 @jd:body
- 
-<a name="toc"/> 
-<div style="padding:10px"> 
-<a href="#androidLightsIntroduction">Introduction</a><br/> 
-<a href="#androidLightsBuildingDriver">Building a Lights Library</a><br/> 
-<a href="#androidLightsInterface">Interface</a><br/></div></font></div> 
- 
-<a name="androidLightsIntroduction"></a><h2>Introduction</h2> 
- 
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
+<a name="toc"/>
+<ul>
+<li><a href="#androidLightsBuildingDriver">Building a Lights Library</a></li>
+<li><a href="#androidLightsInterface">Interface</a></li>
+</ul>
+</div>
+</div>
+
 <p>Android defines a user space C abstraction interface for LED hardware. The interface header is defined in 
 <code>hardware/libhardware/include/hardware/lights.h</code>.
 In order to integrate LEDs with Android you need to build a shared library that implements this interface. 
@@ -25,17 +28,17 @@
 </ul>
 </p> 
  
-<a name="androidLightsBuildingDriver"></a><h2>Building a Lights Library</h2>
+<a name="androidLightsBuildingDriver"></a><h3>Building a Lights Library</h3>
 <p> To implement a Lights driver, create a shared library that implements the interface defined in <code>lights.h</code>. You must name your shared library 
 <code>liblights.so</code> so that it will get loaded from <code>/system/lib</code> at runtime. 
 </p
 
  
-<a name="androidLightsInterface"></a><h2>Interface</h2> 
+<a name="androidLightsInterface"></a><h3>Interface</h3> 
  
  
  
-<p><span class="lh2"><a name="androidDoxygenNote"></a></span> 
+<p><span class="lh3"><a name="androidDoxygenNote"></a></span> 
  
 <p class="note"><strong>Note</strong>: This document relies on some Doxygen-generated content that appears in an iFrame below. To return to the Doxygen default content for this page, <a href="lights.html">click here</a>.</p> 
  
diff --git a/pdk/docs/guide/pdk_toc.cs b/pdk/docs/guide/pdk_toc.cs
index 3b79cef..f98f194 100644
--- a/pdk/docs/guide/pdk_toc.cs
+++ b/pdk/docs/guide/pdk_toc.cs
@@ -34,7 +34,7 @@
       <li><a href="<?cs var:toroot ?>guide/wifi.html">Wi-Fi</a></li>
     </ul>
   </li>
- 
+
   <li><a href="<?cs var:toroot ?>guide/display_drivers.html">Display Drivers</a></li>
   <li class="toggle-list"> 
     <div><a href="javascript:nothing()">Input Devices</a></div>
@@ -42,7 +42,7 @@
       <li><a href="<?cs var:toroot ?>guide/keymaps_keyboard_input.html">Keymaps and Keyboard</a></li>
     </ul>
   </li>
-  <li><a href="<?cs var:toroot ?>guide/lights.html">LED</a></li>
+  <li><a href="<?cs var:toroot ?>guide/lights.html">Lights</a></li>
   <li class="toggle-list">
     <div><a href="javascript:nothing()">Multimedia</a></div>
     <ul>
@@ -66,13 +66,6 @@
     </ul>
   </li>
 
-  <li class="toggle-list">
-    <div><a href="javascript:nothing()">Misc</a></div>
-    <ul>
-      <li><a href="<?cs var:toroot ?>guide/lights.html">LEDs</a></li>
-    </ul>
-  </li>
-
 </ul>
 </li>
 
diff --git a/pdk/docs/guide/release_keys.jd b/pdk/docs/guide/release_keys.jd
index aa3a44b..a57cb10 100755
--- a/pdk/docs/guide/release_keys.jd
+++ b/pdk/docs/guide/release_keys.jd
@@ -2,7 +2,9 @@
 pdk.version=1.0
 @jd:body
 <div id="qv-wrapper">
-  <div id ="qv"> <a name="toc"/>
+  <div id ="qv"> 
+<h2>In this document</h2>
+<a name="toc"/>
     <ul>
       <li><a href="#intro">Introduction</a></li>
       <li><a href="#generatingKeys">Generating keys</a></li>
diff --git a/pdk/docs/guide/sensors.jd b/pdk/docs/guide/sensors.jd
index 4463a95..79a2ad3 100755
--- a/pdk/docs/guide/sensors.jd
+++ b/pdk/docs/guide/sensors.jd
@@ -1,14 +1,17 @@
 page.title=Sensors
 pdk.version=1.0
 @jd:body
- 
-<a name="toc"/> 
-<div style="padding:10px"> 
-<a href="#androidSensorsIntroduction">Introduction</a><br/> 
-<a href="#androidSensorsInterface">Interface</a><br/></div></font></div> 
- 
-<a name="androidSensorsIntroduction"></a><h2>Introduction</h2> 
- 
+
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
+<a name="toc"/>
+<ul>
+<li><a href="#androidSensorsInterface">Interface</a></li>
+</ul>
+</div>
+</div>
+
 <p>Android defines a user space C abstraction interface for sensor hardware. The interface header is defined in 
 <code>hardware/libhardware/include/hardware/sensors.h</code>.
 In order to integrate sensors with Android you need to build a shared library that implements this interface. 
@@ -26,17 +29,17 @@
 </ul>
 </p> 
  
-<a name="androidSensorBuildingDriver"></a><h2>Building a Sensor Library</h2>
+<a name="androidSensorBuildingDriver"></a><h3>Building a Sensor Library</h3>
 <p> To implement a Sensors driver, create a shared library that implements the interface defined in <code>sensors.h</code>. You must name your shared library 
 <code>libsensors.so</code> so that it will get loaded from <code>/system/lib</code> at runtime. 
 </p
 
  
-<a name="androidSensorsInterface"></a><h2>Interface</h2> 
+<a name="androidSensorsInterface"></a><h3>Interface</h3> 
  
  
  
-<p><span class="lh2"><a name="androidDoxygenNote"></a></span> 
+<p><span class="lh3"><a name="androidDoxygenNote"></a></span> 
  
 <p class="note"><strong>Note</strong>: This document relies on some Doxygen-generated content that appears in an iFrame below. To return to the Doxygen default content for this page, <a href="sensors.html">click here</a>.</p> 
  
diff --git a/pdk/docs/guide/stk.jd b/pdk/docs/guide/stk.jd
index 32f165c..0ce0b4a 100755
--- a/pdk/docs/guide/stk.jd
+++ b/pdk/docs/guide/stk.jd
@@ -2,26 +2,20 @@
 pdk.version=1.0
 @jd:body
 
-<a name="toc"/> 
-<div style="padding:10px"> 
-<a href="#androidSTKIntro">Introduction</a><br/>
-<a href="#androidSTKRILRilUp">Communication from the RIL up</a><br/><div style="padding-left:40px">
-<a href="#androidSTKRILRilUpUnsol">RIL_UNSOL_STK_PROACTIVE_COMMAND</a><br/>
-<a href="#androidSTKRILRilUpEvent">RIL_UNSOL_STK_EVENT_NOTIFY</a><br/> 
-<a href="#androidSTKRILRilUpUnsolSim">RIL_UNSOL_SIM_REFRESH</a><br/> 
-<a href="#androidSTKRILRilUpRefresh">REFRESH (6.4.7)</a><br/> 
-<a href="#androidSTKRILRilUpRilUnsol">RIL_UNSOL_STK_SESSION_END</a><br/></div>
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
+<a name="toc"/>
+<ul>
+<li><a href="#androidSTKRILRilUp">Communication from the RIL up</a></li>
+<li><a href="#androidSTKRILApplciationDown">Communication from the application down</a></li>
+<li><a href="#androidSTKTelephony">Telephony</a></li>
+<li><a href="#androidSTKFeatureList">Feature List</a></li>
+</ul>
+</div>
+</div>
 
-<a href="#androidSTKRILApplciationDown">Communication from the application down</a><br/><div style="padding-left:40px"> 
- 
-<a href="#androidSTKRILApplciationDownTerminal">RIL_REQUEST_STK_SEND_TERMINAL_REPSONSE</a><br/> 
-<a href="#androidSTKRILApplciationDownEnvelope">RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND</a><br/> 
-<a href="#androidSTKRILApplciationDownFromSim">RIL_REQUEST_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM</a><br/></div>
-<a href="#androidSTKTelephony">Telephony</a><br/> 
-<a href="#androidSTKFeatureList">Feature List</a><br/></div>
- 
-<a name="androidSTKIntro"></a><h2>Introduction</h2> 
- 
+
 <p>This document offers a high-level overview of the SIM Toolkit Application for Android 1.0 and is primarily of interest for implementors of the Radio Interface Layer (RIL). The STK is  R96 compatible (3GPP TS 11.14 v5.9.0) and complies partially with R99 (3GPP TS 101.267 v8.17.0). See the <a href="androidSTKFeatureList">STK Feature List</a> for the complete feature list. </p> 
 <p>The Android STK implementation includes three layers:</p> 
 <ul> 
@@ -42,7 +36,7 @@
 <p>See the <a href="http://pdk-docs.prom.corp.google.com/docs/telephony.html">Android Platform Development Kit</a> for details.</p> 
  
  
-<a name="androidSTKRILRilUp"></a><h3>Communication from the RIL up</h3> 
+<a name="androidSTKRILRilUp"></a><h4>Communication from the RIL up</h4> 
  
 <p>Communication to the upper layers is done using the <code>RIL_UNSOL_xxx</code> family of commands defined in <code>/hardware/ril/include/ril.h</code>. The payload for each command is encoded using BER-TLV. As stated above, it is not necessary to remove extraneous fields. This allows the SIM to pass a complete command to the upper layers and simplifies STK RIL code. Below is the mapping from RIL_UNSOL_xxx commands to the SIM commands.</p> 
  
@@ -182,7 +176,7 @@
 <p>Sent by SIM to signal end of session. No content and no response.</p> 
  
  
-<a name="androidSTKRILApplciationDown"></a><h3>Communication from the application down</h3> 
+<a name="androidSTKRILApplciationDown"></a><h4>Communication from the application down</h4> 
  
 <p>Communication from the upper layers to the RIL uses the commands below (defined in <code>ril.h</code>):</p> 
  
@@ -218,13 +212,13 @@
 <p> This should cause the terminal response to be sent to the SIM.</p> 
  
  
-<a name="androidSTKTelephony"></a><h2>Telephony</h2> 
+<a name="androidSTKTelephony"></a><h3>Telephony</h3> 
  
 <p>STK Telephony is a protocol translation layer used to convert messages from BERL-TLV format to Application messages and back. </p> 
 <p>On the STK RIL side, STK Telphony receives raw buffer messages from RIL I/F and decodes them into a command parameters container before passing them on to the application. On the Application side, this layer receives application responses for commands and encodes them into raw buffer messages, which then get sent over the RIL I/F back to the SIM card.</p> 
  
  
-<a name="androidSTKFeatureList"></a><h2>Feature List</h2> 
+<a name="androidSTKFeatureList"></a><h3>Feature List</h3> 
  
 <table border="1" cellspacing="2" cellpadding="2"> 
   <tr> 
diff --git a/pdk/docs/guide/telephony.jd b/pdk/docs/guide/telephony.jd
index 647a33b..0fe5221 100755
--- a/pdk/docs/guide/telephony.jd
+++ b/pdk/docs/guide/telephony.jd
@@ -2,23 +2,18 @@
 pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidTelephonyIntro">Introduction</a><br/>
-<a href="#androidTelephonyRILInitialization">RIL Initialization</a><br/>
-<a href="#androidTelephonyRILIntro">RIL Interaction</a><br/><div style="padding-left:40px">
-
-<a href="#androidTelephonyRILSolicited">Solicited</a><br/>
-<a href="#androidTelephonyRILUnsolicited">Unsolicited</a><br/></div>
-<a href="#androidTelephonyRILImplementing">Implementing the RIL</a><br/><div style="padding-left:40px">
-
-<a href="#androidTelephonyRILInit">RIL_Init</a><br/></div>
-<a href="#androidTelephonyRILFunctions">RIL Functions</a><br/><div style="padding-left:40px">
-
-<a href="#androidRilFunctionsSolicited">RIL Solicited Command Requests</a><br/>
-<a href="#androidRilFunctionsUnsolicited">RIL Unsolicited Commands</a><br/></div></div></font></div>
-
-<a name="androidTelephonyIntro"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidTelephonyRILInitialization">RIL Initialization</a></li>
+<li><a href="#androidTelephonyRILIntro">RIL Interaction</a></li>
+<li><a href="#androidTelephonyRILImplementing">Implementing the RIL</a></li>
+<li><a href="#androidTelephonyRILFunctions">RIL Functions</a></li>
+</ul>
+</div>
+</div>
 
 <p>Android's Radio Interface Layer (RIL) provides an abstraction layer between Android telephony services (<a href="http://code.google.com/android/reference/android/telephony/package-descr.html">android.telephony</a>) and radio hardware. The RIL is radio agnostic, and includes support for Global System for Mobile communication (GSM)-based radios.&nbsp;</P>
 
@@ -36,7 +31,7 @@
 </p>
 
 
-<a name="androidTelephonyRILInitialization"></a><h2>RIL Initialization</h2>
+<a name="androidTelephonyRILInitialization"></a><h3>RIL Initialization</h3>
 
 <p>Android initializes the telephony stack and the Vendor RIL at startup as described in the sequence below:</p>
 <p><ol>
@@ -57,7 +52,7 @@
 <li><code>ro.ril.enable.3g.prefix=1</code>: adds the 3G prefix to the operator name.</li>
 </ul></p>
 
-<a name="androidTelephonyRILIntro"></a><h2>RIL Interaction</h2>
+<a name="androidTelephonyRILIntro"></a><h3>RIL Interaction</h3>
 
 <p>There are two forms of communication that the RIL handles:</p>
 <ul>
@@ -66,7 +61,7 @@
 </ul>
 
 
-<a name="androidTelephonyRILSolicited"></a><h3>Solicited</h3>
+<a name="androidTelephonyRILSolicited"></a><h4>Solicited</h4>
 
 <p>The following snippet illustrates the interface for solicited commands:</p>
 <pre class="prettify">
@@ -92,7 +87,7 @@
 <p><img src="images/telephony_solicted_example.gif"></p>
 
 
-<a name="androidTelephonyRILUnsolicited"></a><h3>Unsolicited</h3>
+<a name="androidTelephonyRILUnsolicited"></a><h4>Unsolicited</h4>
 
 <p>The following snippet illustrates the interface for unsolicited commands:</p>
 <pre class="prettify">
@@ -111,7 +106,7 @@
 <p><img src="images/telephony_unsolicted_example.gif"></p>
 
 
-<a name="androidTelephonyRILImplementing"></a><h2>Implementing the RIL</h2>
+<a name="androidTelephonyRILImplementing"></a><h3>Implementing the RIL</h3>
 
 <p>To implement a radio-specific RIL, create a shared library that implements a set of functions required by Android to process radio requests. The required functions are defined in the RIL header (<code>/include/telephony/ril.h</code>).</p>
 <p>The Android radio interface is radio-agnostic and the Vendor RIL can use any protocol to communicate with the radio.&nbsp;Android provides a reference Vendor RIL, using the Hayes AT command set, that you can use as a quick start for telephony testing and a guide for commercial vendor RILs. The source code for the reference RIL is found at <code>/commands/reference-ril/</code>.</p>
@@ -125,7 +120,7 @@
 </p>
 
 
-<a name="androidTelephonyRILInit"></a><h3>RIL_Init</h3>
+<a name="androidTelephonyRILInit"></a><h4>RIL_Init</h4>
 
 <p>Your Vendor RIL must define a RIL_Init function that provides a handle to the functions which will process all radio requests.  RIL_Init will be called by the Android RIL Daemon at boot time to initialize the RIL.</p>
 
@@ -147,12 +142,12 @@
 </pre>
 
 
-<a name="androidTelephonyRILFunctions"></a><h2>RIL Functions</h2>
+<a name="androidTelephonyRILFunctions"></a><h3>RIL Functions</h3>
 
 <p><code>ril.h</code> defines RIL states and variables, such as <code>RIL_UNSOL_STK_CALL_SETUP</code>, <code>RIL_SIM_READY</code>, <code>RIL_SIM_NOT_READY</code>, as well as the functions described in the tables below. Skim the header file (<code>/device/include/telephony/ril.h</code>) for details.</p>
 
 
-<a name="androidRilFunctionsSolicited"></a><h3>RIL Solicited Command Requests</h3>
+<a name="androidRilFunctionsSolicited"></a><h4>RIL Solicited Command Requests</h4>
 
 <p>The vendor RIL must provide the functions described in the table below to handle solicited commands. The RIL solicited command request types are defined in <code>ril.h</code> with the <code>RIL_REQUEST_</code> prefix. Check the header file for details.</p>
 <p><table>
@@ -214,7 +209,7 @@
 </table></p>
 
 
-<a name="androidRilFunctionsUnsolicited"></a><h3>RIL Unsolicited Commands</h3>
+<a name="androidRilFunctionsUnsolicited"></a><h4>RIL Unsolicited Commands</h4>
 
 <p>The functions listed in the table below are call-back functions used by the Vendor RIL to invoke unsolicited commands on the Android platform. See <code>ril.h</code> for details. </p>
 <p>
diff --git a/pdk/docs/guide/wakelock.jd b/pdk/docs/guide/wakelock.jd
index 1d8b425..ee59053 100755
--- a/pdk/docs/guide/wakelock.jd
+++ b/pdk/docs/guide/wakelock.jd
@@ -3,14 +3,17 @@
 @jd:body
 
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-  <a href="#intro">Introduction</a><BR>
-  <a href="#driverAPI">Driver API</a><br/>
-  <a href="#userspaceAPI">User Space API</a><br/>
+<ul>
+<li><a href="#driverAPI">Driver API</a></li>
+<li><a href="#userspaceAPI">User Space API</a></li>
+</ul>
+</div>
 </div>
 
-  <a name="userspaceAPI"></a><h2>Introduction</h2>
 <p>A locked wakelock, depending on its type, prevents the system from entering suspend or other low-power states. This document describes how to employ wakelocks. </p>
 <p>There are two settings for a wakelock:</p>
 <ul>
@@ -45,9 +48,9 @@
       process-input-events 		            +++ 	    +++
       </pre>
 
-<a name="driverAPI"></a><h2>Driver API</h2>
+<a name="driverAPI"></a><h3>Driver API</h3>
 <p>A driver can use the wakelock API by adding a wakelock variable to its state and calling <code>wake_lock_init</code>, as illustrated in the snippet below:</p>
-<pre class="prettify">
+<pre>
   struct state {
   struct wakelock wakelock;
   }
@@ -60,18 +63,18 @@
   }
   </pre>
 <p> When the driver determines that it needs to run (usually in an interrupt handler), it calls <code>wake_lock</code>:</p>
-<pre class="prettify">
+<pre>
   wake_lock(&amp;state-&gt;wakelock);
   </pre>
 <p>When it no longer needs to run, it calls <code>wake_unlock</code>:</p>
-<pre class="prettify">
+<pre>
   wake_unlock(&amp;state-&gt;wakelock);
   </pre>
 <p> It can also call <code>wake_lock_timeout</code> to release the wakelock after a delay:</p>
-<pre class="prettify">
+<pre>
   wake_lock_timeout(&amp;state-&gt;wakelock, HZ);
 </pre>
 <p> This works whether or not the wakelock is already held. It is useful if the driver woke up other parts of the system that do not use wakelocks but still need to run. Avoid this when possible, since it will waste power if the timeout is long or may fail to finish needed work if the timeout is short.</p>
-<a name="userspaceAPI"></a><h2>User-space API</h2>
+<a name="userspaceAPI"></a><h3>User-space API</h3>
 <p>Write <code>lockname</code> or <code>lockname timeout</code> to <code>/sys/power/wake_lock</code> lock and, if needed, create a wakelock. The timeout here is specified in nanoseconds. Write <code>lockname</code> to <code>/sys/power/wake_unlock</code> to unlock a user wakelock.</p>
 <p> Do not use randomly generated wakelock names as there is no API to free a user-space wakelock.</p>
\ No newline at end of file
diff --git a/pdk/docs/guide/wifi.jd b/pdk/docs/guide/wifi.jd
index aaf0ace..5341954 100755
--- a/pdk/docs/guide/wifi.jd
+++ b/pdk/docs/guide/wifi.jd
@@ -2,18 +2,21 @@
 pdk.version=1.0
 @jd:body
 
+<div id="qv-wrapper">
+<div id="qv">
+<h2>In this document</h2>
 <a name="toc"/>
-<div style="padding:10px">
-<a href="#androidWifiIntroduction">Introduction</a><br/>
-<a href="#androidWifiBuildingDriver">Building a Wi-Fi Library</a><br/>
-<a href="#androidWifiInterface">Interface</a><br/></div>
-
-<a name="androidWifiIntroduction"></a><h2>Introduction</h2>
+<ul>
+<li><a href="#androidWifiBuildingDriver">Building a Wi-Fi Library</a></li>
+<li><a href="#androidWifiInterface">Interface</a></li>
+</ul>
+</div>
+</div>
 
 <p>Android uses wpa_supplicant as the platform interface to the Wi-Fi device. Your Wi-Fi driver must be compatible with the standard wpa_supplicant in addition to extensions added to the supplicant (specifically, the "DRIVER" commands described in <code>wifi.h/wifi_command()</code>).</p>
 
 
-<a name="androidWifiBuildingDriver"></a><h2>Building a Wi-Fi Library</h2>
+<a name="androidWifiBuildingDriver"></a><h3>Building a Wi-Fi Library</h3>
 
 <p>To create a Wi-Fi driver for Android:</p>
 <p><ul>
@@ -37,7 +40,7 @@
 </pre>
 
 
-<a name="androidWifiInterface"></a><h2>Interface</h2>
+<a name="androidWifiInterface"></a><h3>Interface</h3>
 
 
 
