diff --git a/src/compatibility/4.0/android-4.0-cdd.pdf b/src/compatibility/4.0/android-4.0-cdd.pdf
index 389d5aa..f6c06a5 100755
--- a/src/compatibility/4.0/android-4.0-cdd.pdf
+++ b/src/compatibility/4.0/android-4.0-cdd.pdf
Binary files differ
diff --git a/src/compatibility/android-4.0-cdd.pdf b/src/compatibility/android-4.0-cdd.pdf
old mode 100755
new mode 100644
index 389d5aa..f6c06a5
--- a/src/compatibility/android-4.0-cdd.pdf
+++ b/src/compatibility/android-4.0-cdd.pdf
Binary files differ
diff --git a/src/compatibility/android-cts-manual-r4.pdf b/src/compatibility/android-cts-manual-r4.pdf
index b990531..a5861ac 100644
--- a/src/compatibility/android-cts-manual-r4.pdf
+++ b/src/compatibility/android-cts-manual-r4.pdf
Binary files differ
diff --git a/src/compatibility/cts-intro.md b/src/compatibility/cts-intro.md
index c9550df..0f62b84 100644
--- a/src/compatibility/cts-intro.md
+++ b/src/compatibility/cts-intro.md
@@ -32,7 +32,7 @@
 
 ## Workflow ##
 
-1. [Download](downloads.html) the CTS.
+1. [Download](downloads.html) the CTS and CTS media files.
 
 1. Attach at least one device (or emulator) to your machine.
 
@@ -48,6 +48,12 @@
 
     2. On the device, enable all the android.deviceadmin.cts.* device administrators under Settings > Location & security > Select device administrators
 
+1. For CTS 2.3 R12 and beyond, the CTS media files must be copied to the device's external storage. Check section 4.2 of the latest CTS manual for further details on copying these files:
+
+    2. Unzip the CTS Media zip file.
+
+    2. Run copy_media.sh [720x480|1280x720|1920x1080|all] [-s serial]. If no resolution is specified, the default maximum resolution of 480x360 is assumed.
+
 1. Launch the CTS. The CTS test harness loads the test plan onto the attached devices. For each test in the test harness:
 
     - The test harness pushes a .apk file to each device, executes the test through instrumentation, and records test results.
diff --git a/src/compatibility/downloads.md b/src/compatibility/downloads.md
index 5894e5c..045dbcd 100644
--- a/src/compatibility/downloads.md
+++ b/src/compatibility/downloads.md
@@ -26,7 +26,7 @@
 Android 4.0.3 is found in the 'android-4.0.3_r1' branch in the open-source tree.
 
 - [Android 4.0 Compatibility Definition Document (CDD)](4.0/android-4.0-cdd.pdf)
-- [Android 4.0.3 R1 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-4.0.3_r1-linux_x86-arm.zip)
+- [Android 4.0.3 R2 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-4.0.3_r2-linux_x86-arm.zip)
 - [Android 4.0.3 R1 CTS Verifier](http://dl.google.com/dl/android/cts/android-cts-verifier-4.0.3_r1-linux_x86-arm.zip)
 
 ## Android 2.3 ##
@@ -36,7 +36,7 @@
 the open-source tree.
 
 - [Android 2.3 Compatibility Definition Document (CDD)](2.3/android-2.3.3-cdd.pdf)
-- [Android 2.3 R11 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-2.3_r11-linux_x86-arm.zip)
+- [Android 2.3 R12 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-2.3_r12-linux_x86-arm.zip)
 - [Android 2.3 R2 CTS Verifier](http://dl.google.com/dl/android/cts/android-cts-verifier-2.3_r2-linux_x86-armv5.zip)
 
 ## Android 2.2 ##
@@ -74,6 +74,11 @@
 
 - [Compatibility Test Suite (CTS) User Manual](android-cts-manual-r4.pdf)
 
+## CTS Media Files ##
+These media files are required for the CTS media stress tests.
+
+- [CTS Media 1.0](http://dl.google.com/dl/android/cts/android-cts-media-1.0.zip)
+
 ## Older Android Versions ##
 
 There is no Compatibility Program for older versions of Android, such as Android
diff --git a/src/source/build-numbers.md b/src/source/build-numbers.md
index d61961d..3c54f0c 100644
--- a/src/source/build-numbers.md
+++ b/src/source/build-numbers.md
@@ -108,7 +108,8 @@
 ITL41D | android-4.0.1_r1.1 | Galaxy Nexus
 ITL41F | android-4.0.1_r1.2 | Galaxy Nexus
 ICL53F | android-4.0.2_r1   | Galaxy Nexus
-IML74K | android-4.0.3_r1   | latest IceCreamSandwich version, Nexus S
+IML74K | android-4.0.3_r1   | Nexus S
+IML77  |                    | latest IceCreamSandwich version
 
 The branches froyo, gingerbread, ics-mr0, ics-mr1, represent development
 branches that do not exactly match configurations that were tested
diff --git a/src/source/building-devices.md b/src/source/building-devices.md
index 3d48951..5ab3409 100644
--- a/src/source/building-devices.md
+++ b/src/source/building-devices.md
@@ -22,15 +22,13 @@
 The supported devices with the current release are the Galaxy Nexus, Motorola
 Xoom, and Nexus S.
 
-Galaxy Nexus is supported both in GSM/HSPA+ configuration "maguro" and in
-CDMA/LTE configuration "toro". The GSM/HSPA+ configuration is only supported
+Galaxy Nexus is supported only in GSM/HSPA+ configuration "maguro" and only
 if it was originally sold with a "yakju" operating system.
 
-The Motorola Xoom is supported in the configurations sold in the USA,
-in both variants: Wi-Fi only "wingray" and CDMA or CDMA/LTE "stingray".
+The Motorola Xoom is supported in the Wi-fi configuration "wingray"
+sold in the USA.
 
-Nexus S is supported, both in the GSM configuration "crespo" and in the
-CDMA/WiMAX configuration "crespo4g".
+Nexus S is supported in the GSM configuration "crespo".
 
 In addition, [PandaBoard](http://pandaboard.org) a.k.a. "panda" is supported
 in the master branch only, but is currently considered experimental.
@@ -45,6 +43,8 @@
 obsolete, were experimental and unsupported in froyo, and can't be used with
 newer versions of the Android Open-Source Project.
 
+No CDMA devices are supported in the Android Open-Source Project.
+
 ## Building fastboot and adb ##
 
 If you don't already have those tools, fastboot and adb can be built with
@@ -61,12 +61,9 @@
 Device   | Keys
 ---------|------
 maguro   | Press and hold both *Volume Up* and *Volume Down*, then press and hold *Power*
-toro     | Press and hold both *Volume Up* and *Volume Down*, then press and hold *Power*
 panda    | Press and hold *Input*, then press *Power*
 wingray  | Press and hold *Volume Down*, then press and hold *Power*
-stingray | Press and hold *Volume Down*, then press and hold *Power*
 crespo   | Press and hold *Volume Up*, then press and hold *Power*
-crespo4g | Press and hold *Volume Up*, then press and hold *Power*
 passion  | Press and hold the trackball, then press *Power*
 sapphire | Press and hold *Back*, then press *Power*
 dream    | Press and hold *Back*, then press *Power*
@@ -81,7 +78,7 @@
 
 This is the default setup on ADP1 and ADP2.
 
-On Nexus One, Nexus S, Nexus S 4G, Xoom, and Galaxy Nexus,
+On Nexus One, Nexus S, Xoom, and Galaxy Nexus,
 the bootloader is locked by default. With the device in fastboot mode, the
 bootloader is unlocked with
 
@@ -90,7 +87,7 @@
 The procedure must be confirmed on-screen, and deletes the user data for
 privacy reasons. It only needs to be run once.
 
-Note that on the Nexus S, Nexus S 4G, Motorola Xoom and on Galaxy Nexus,
+Note that on the Nexus S, Motorola Xoom and on Galaxy Nexus,
 all data on the phone is erased, i.e. both the applications' private data
 and the shared data that is accessible over USB, including photos and
 movies. Be sure to make a backup of any precious files you have before
@@ -98,7 +95,7 @@
 
 On Nexus One, the operation voids the warranty and is irreversible.
 
-On Nexus S, Nexus S 4G, Xoom, and Galaxy Nexus,
+On Nexus S, Xoom, and Galaxy Nexus,
 the bootloader can be locked back with
 
     $ fastboot oem lock
@@ -111,7 +108,7 @@
 from pure source code only, and requires additional hardware-related proprietary
 libraries to run, specifically for hardware graphics acceleration.
 
-Official binaries for Nexus S, Nexus S 4G, Galaxy Nexus, and PandaBoard can be
+Official binaries for Nexus S, Galaxy Nexus, and PandaBoard can be
 downloaded from
 [Google's Nexus driver page](http://code.google.com/android/nexus/drivers.html),
 which add access to additional hardware capabilities with non-Open-Source code.
@@ -126,14 +123,6 @@
 enclosed license agreement, and the binaries and their matching makefiles
 will get installed in the `vendor/` hierarchy of the source tree.
 
-There's an additional step on Nexus S 4G. Build the signapk tool with
-
-    $ make signapk
-
-Then reassemble the proprietary applicatons with
-
-    $ vendor/samsung/crespo4g/reassemble-apks.sh
-
 ### Cleaning up when adding proprietary binaries ###
 
 In order to make sure that the newly installed binaries are properly
@@ -153,15 +142,12 @@
 Device   | Branch           | Build configuration
 ---------|------------------|------------------------
 maguro   | android-4.0.3_r1 | full_maguro-userdebug
-toro     | android-4.0.3_r1 | full_toro-userdebug
 panda    | master           | full_panda-userdebug
 wingray  | android-4.0.3_r1 | full_wingray-userdebug
-stingray | android-4.0.3_r1 | full_stingray-userdebug
 crespo   | android-4.0.3_r1 | full_crespo-userdebug
-crespo4g | android-4.0.3_r1 | full_crespo4g-userdebug
 passion  | android-2.3.6_r1 | full_passion-userdebug
-sapphire | android-2.2.2_r1 | full_sapphire-userdebug
-dream    | android-2.2.2_r1 | full_dream-userdebug
+sapphire | android-2.2.3_r1 | full_sapphire-userdebug
+dream    | android-2.2.3_r1 | full_dream-userdebug
 
 ## Flashing a device ##
 
@@ -193,9 +179,9 @@
 Once in recovery, open the menu (press Power + Volume Up), wipe the cache
 partition, then wipe data.
 
-### Nexus S, Nexus S 4G and Galaxy Nexus Bootloader and Cell Radio compatibility ###
+### Nexus S and Galaxy Nexus Bootloader and Cell Radio compatibility ###
 
-On Nexus S, Nexus S 4G, and Galaxy Nexus, each version of Android has only
+On Nexus S, and Galaxy Nexus, each version of Android has only
 been thoroughly tested with on specific version of the underlying bootloader
 and cell radio software.
 However, no compatibility issues are expected when running newer systems
@@ -235,16 +221,6 @@
 2.3.6 (GRK39F)  | I9020XXKA3           | M200KRKC1       | All previous versions
 4.0.3 (IML74K)  | I9020XXKL1           | M200KRKC1       | All previous versions
 
-Nexus S 4G:
-
-Android Version | Preferred Bootloader | Preferred Radio | Also possible
-----------------|----------------------|-----------------|--------------
-2.3.4 (GRJ06D)  | D720SPRKC5           | D720SPRKC9
-2.3.4 (GRJ22)   | D720SPRKC5           | D720SPRKD8      | All previous versions
-2.3.5 (GRJ90)   | D720SPRKC5           | D720SPRKE5      | All previous versions
-2.3.7 (GWK74)   | D720SPRKE1 (*)       | D720SPRKH1      | All previous versions
-4.0.3 (IML74K)  | D720SPRKE1 (*)       | D720SPRKL1      | All previous versions
-
 Galaxy Nexus (GSM/HSPA+):
 
 Android Version | Preferred Bootloader | Preferred Radio | Also possible
@@ -253,40 +229,17 @@
 4.0.2 (ICL53F)  | PRIMEKK15            | I9250XXKK6      | All previous versions
 4.0.3 (IML74K)  | PRIMEKL01            | I9250XXKK6      | All previous versions
 
-Galaxy Nexus (CDMA/LTE):
-
-Android Version | Preferred Bootloader | Preferred Radio | Preferred CDMA Radio | Also possible
-----------------|----------------------|-----------------|----------------------|--------------
-4.0.1 (ITL41D)  | PRIMEKJ10            | I515.EK02       | I515.EK01
-4.0.2 (ICL53F)  | PRIMEKK15            | I515.EK02       | I515.EK05            | All previous versions
-4.0.3 (IML74K)  | PRIMEKL01            | I515.EK04       | I515.EK06            | All previous versions
-
-If you're building a new version of Android, if your Nexus S, Nexus S 4G or
+If you're building a new version of Android, if your Nexus S or
 Galaxy Nexus has
 an older bootloader and radio image that is marked as being also possible in
 the table above but is not recognized by fastboot, you can locally
 delete the `version-bootloader` and `version-baseband` lines in
 `device/samsung/crespo/board-info.txt` or
-`device/samsung/crespo4g/board-info.txt` or
-`device/samsung/maguro/board-info.txt` or
-`device/samsung/toro/board-info.txt`
-
-(*) As a note, bootloader version D720SPRKE1 for Nexus S 4G erroneously
-reports version D720SPRKE1 as the baseband version instead of the true baseband
-version after flashing a new baseband firmware. To make it report the proper
-version again, the phone needs to be powered down, then booted all the way to
-Android, then rebooted to the bootloader.
-
-## Activating the CDMA radio ##
-
-On the CDMA variant of the Motorola Xoom, the CDMA radio needs to be
-manually re-activated after each factory reset.
-
-    $ adb shell su root radiooptions 8 *22899
+`device/samsung/maguro/board-info.txt`
 
 ## Restoring a device to its original factory state ##
 
-Factory images for Galaxy Nexus are available from
+Factory images for Galaxy Nexus (GSM/HSPA+) are available from
 [Google's factory image page](http://code.google.com/android/nexus/images.html).
 
 Factory images for the Motorola Xoom are distributed directly by Motorola.
diff --git a/src/source/cla-individual.md b/src/source/cla-individual.md
index d51ad83..34a1c28 100644
--- a/src/source/cla-individual.md
+++ b/src/source/cla-individual.md
@@ -16,7 +16,7 @@
 
 # Contributor License Agreement for Individuals #
 
-*Please visit the [code review tool](https://review.source.android.com/#settings,new-agreement)
+*Please visit the [code review tool](https://android-review.googlesource.com/#/settings/new-agreement)
 to execute the grant online.This page provides the text of the Individual Contributor License Grant for your quick review.*
 
 In order to clarify the intellectual property license granted with Contributions from any person or entity, the Android Open Source Project (the "Project") must have a Contributor License Grant ("Grant") on file that has been signed by each Contributor, indicating agreement to the license terms below. This license is for your protection as a Contributor as well as the protection of the Project and the Android Open Source Project Leads (the "Project Leads"); it does not change your rights to use your own Contributions for any other purpose. If you have not already done so, please complete and send an original signed Grant to
@@ -30,7 +30,9 @@
  U.S.A.
 </blockquote>
 
-Scanned agreements may also be emailed in PDF form to cla-submissions@google.com, sent by facsimile to (650) 887-1625, or [signed electronically](https://review.source.android.com/#settings,new-agreement).
+Scanned agreements may also be emailed in PDF form to
+cla-submissions@google.com, sent by facsimile to (650) 887-1625, or
+[signed electronically](https://android-review.googlesource.com/#/settings/new-agreement).
 
 Please read this document carefully before signing and keep a copy for your records.
 
diff --git a/src/source/licenses.md b/src/source/licenses.md
index 74979f9..9d5bc1f 100644
--- a/src/source/licenses.md
+++ b/src/source/licenses.md
@@ -35,7 +35,7 @@
 only on their own behalf) of ideas, code, or documentation to the Android Open
 Source Project will be required to complete, sign, and submit an [Individual
 Contributor License Grant](cla-individual.html). The grant can be executed online through the
-[code review tool](https://review.source.android.com/#settings,agreements). 
+[code review tool](https://android-review.googlesource.com/#/settings/agreements).
 The grant clearly defines the terms under which intellectual
 property has been contributed to the Android Open Source Project. This license
 is for your protection as a contributor as well as the protection of the
diff --git a/src/source/report-bugs.md b/src/source/report-bugs.md
index c660b34..5433126 100644
--- a/src/source/report-bugs.md
+++ b/src/source/report-bugs.md
@@ -22,10 +22,10 @@
 First, though: if you think you've found a security vulnerability,
 *please don't use the forms below*. Using the public forms below may
 allow anyone to see your report, which may put users at risk until the bug is
-fixed. Instead, please report security bugs to our security team by emailing
-<a href="mailto:security@android.com">security@android.com</a>.  We believe in
-responsible disclosure of security vulnerabilities, and will give you proper
-attribution for any issues you report.
+fixed. Please visit
+<a href="https://developer.android.com/resources/faq/security.html#issue">our
+security faq</a> for more information on reporting security vulnerabilities
+to the Android security team.
 
 Here's how to report non-security bugs:
 
diff --git a/src/source/submit-patches.md b/src/source/submit-patches.md
index 2ea9c83..11d3579 100644
--- a/src/source/submit-patches.md
+++ b/src/source/submit-patches.md
@@ -75,7 +75,10 @@
 
 If you have started multiple branches in the same repository, you will be prompted to select which one(s) to upload.
 
-After a successful upload, repo will provide you the URL of a new page on [r.android.com](http://review.source.android.com). Visit this link to view your patch on the review server, add comments, or request specific reviewers for your patch. 
+After a successful upload, repo will provide you the URL of a new page on
+[Gerrit](https://android-review.googlesource.com/). Visit this link to view
+your patch on the review server, add comments, or request specific reviewers
+for your patch.
 
 ## Uploading a replacement patch ##
 
@@ -147,7 +150,7 @@
     $ repo download TARGET CHANGE
 
 where TARGET is the local directory into which the change should be downloaded and CHANGE is the 
-change number as listed in [Gerrit](https://review.source.android.com/). For more information, 
+change number as listed in [Gerrit](https://android-review.googlesource.com/). For more information,
 see the [Repo reference](/source/using-repo.html).
 
 ## How do I become a Verifier or Approver? ##
diff --git a/src/source/using-eclipse.md b/src/source/using-eclipse.md
index 5af32a8..94e24cf 100644
--- a/src/source/using-eclipse.md
+++ b/src/source/using-eclipse.md
@@ -42,7 +42,7 @@
 
 ### Increase Eclipse's Memory Settings ###
 
-The Android project is large enough that Eclipse's Java VM sometimes runs out of memory while compiling it. Avoid this problem by editing the the `eclipse.ini` file. On Apple OSX the eclipse.ini file is located at 
+The Android project is large enough that Eclipse's Java VM sometimes runs out of memory while compiling it. Avoid this problem by editing the `eclipse.ini` file. On Apple OSX the eclipse.ini file is located at
 
     /Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse.ini
 
diff --git a/src/source/using-repo.md b/src/source/using-repo.md
index f343639..b3bf9bb 100644
--- a/src/source/using-repo.md
+++ b/src/source/using-repo.md
@@ -84,9 +84,16 @@
 
 For the specified projects, Repo compares the local branches to the remote branches updated during the last repo sync. Repo will prompt you to select one or more of the branches that have not yet been uploaded for review.
 
-After you select one or more branches, all commits on the selected branches are transmitted to Gerrit over an SSH connection.You will need to configure an SSH key to enable upload authorization. Visit [SSH Keys](http://review.source.android.com/Gerrit#settings,ssh-keys) within the user settings panel to register your public keys with Gerrit. To enable password-less uploads, consider using ssh-agent on your client system.
+After you select one or more branches, all commits on the selected branches
+are transmitted to Gerrit over an HTTPS connection. You will need to
+configure an HTTPS password to enable upload authorization. Visit the
+[Password Generator](https://android-review.googlesource.com/new-password)
+to generate a new username/password pair to use over HTTPS.
 
-When Gerrit receives the object data over its SSH server, it will turn each commit into a change so that reviewers can comment on each commit individually. To combine several "checkpoint" commits together into a single commit, use git rebase -i before you run repo upload.
+When Gerrit receives the object data over its server, it will turn each
+commit into a change so that reviewers can comment on each commit
+individually. To combine several "checkpoint" commits together into a
+single commit, use git rebase -i before you run repo upload.
 
 If you run repo upload without any arguments, it will search all the projects for changes to upload.
 
@@ -121,13 +128,16 @@
 
 Downloads the specified change from the review system and makes it available in your project's local working directory.
 
-For example, to download [change 1241](http://review.source.android.com/1241) into your platform/frameworks/base directory:
+For example, to download [change 23823](https://android-review.googlesource.com/23823) into your platform/frameworks/base directory:
 
-    $ repo download platform/frameworks/base 1241
+    $ repo download platform/build 23823
 
 A `repo sync` should effectively remove any commits retrieved via `repo download`. Or, you can check out the remote branch; e.g., `git checkout m/master`.
 
-*Note: There is a slight mirroring lag between when a change is visible on the web in [Gerrit](http://review.source.android.com) and when `repo download` will be able to find it, because changes are actually downloaded off the git://android.git.kernel.org/ mirror farm. Hence there will always be a lag of approximately 5 minutes before Gerrit pushes newly uploaded changes out to the mirror farm.*
+*Note: There is a slight mirroring lag between when a change is visible on
+the web in [Gerrit](https://android-review.googlesource.com/) and when
+`repo download` will be able to find it for all users, because of replication
+delays to all servers worldwide.
 
 
 ## forall ##
diff --git a/src/source/version-control.md b/src/source/version-control.md
index 110048a..302fb68 100644
--- a/src/source/version-control.md
+++ b/src/source/version-control.md
@@ -20,7 +20,16 @@
 
 **Git** is an open-source version-control system designed to handle very large projects that are distributed over multiple repositories. In the context of Android, we use Git for local operations such as local branching, commits, diffs, and edits.  One of the challenges in setting up the Android project was figuring out how to best support the outside community--from the hobbiest community to large OEMs building mass-market consumer devices. We wanted components to be replaceable, and we wanted interesting components to be able to grow a life of their own outside of Android. We first chose a distributed revision control system, then further narrowed it down to Git.
 
-**Repo** is a repository management tool that we built on top of Git. Repo unifies the many Git repositories when necessary, does the uploads to our [revision control system](http://review.source.android.com/), and automates parts of the Android development workflow. Repo is not meant to replace Git, only to make it easier to work with Git in the context of Android. The repo command is an executable Python script that you can put anywhere in your path. In working with the Android source files, you will use Repo for across-network operations. For example, with a single Repo command you can download files from multiple repositories into your local working directory.
+**Repo** is a repository management tool that we built on top of Git. Repo
+unifies the many Git repositories when necessary, does the uploads to our
+[revision control system](https://android-review.googlesource.com/), and
+automates parts of the Android development workflow. Repo is not meant to
+replace Git, only to make it easier to work with Git in the context of
+Android. The repo command is an executable Python script that you can put
+anywhere in your path. In working with the Android source files, you will
+use Repo for across-network operations. For example, with a single Repo
+command you can download files from multiple repositories into your local
+working directory.
 
 **Gerrit** is a web-based code review system for projects that use git. Gerrit encourages more centralized use of Git by allowing all authorized users to submit changes, which are automatically merged if they pass code review. In addition, Gerrit makes reviewing easier by displaying changes side by side in-browser and enabling inline comments. 
 
diff --git a/src/tech/input/keyboard-devices.md b/src/tech/input/keyboard-devices.md
index 76564d9..955d579 100644
--- a/src/tech/input/keyboard-devices.md
+++ b/src/tech/input/keyboard-devices.md
@@ -566,7 +566,7 @@
 | 0x07 0x00f8 |                                  | 0x008e | KEY_SLEEP                        |         |        |                                  |       |
 | 0x07 0x00f9 |                                  | 0x0098 | KEY_COFFEE                       | 4.0     | 0x001a | KEYCODE_POWER                    |       |
 | 0x07 0x00fa |                                  | 0x00ad | KEY_REFRESH                      |         |        |                                  |       |
-| 0x07 0x00fb |                                  | 0x008c | KEY_CALC                         |         |        |                                  |       |
+| 0x07 0x00fb |                                  | 0x008c | KEY_CALC                         | 4.0.3   | 0x00d2 | KEYCODE_CALCULATOR               |       |
 
 ### HID Generic Desktop Page (0x01) ###
 
@@ -693,7 +693,7 @@
 | 0x0c 0x00ea | Volume Decrement                 | 0x0072 | KEY_VOLUMEDOWN                   | 1.6     | 0x0019 | KEYCODE_VOLUME_DOWN              |       |
 | 0x0c 0x0181 | AL Launch Button Config. Tool    |        |                                  |         |        |                                  |       |
 | 0x0c 0x0182 | AL Programmable Button Config.   | 0x009c | KEY_BOOKMARKS                    | 3.0     | 0x00ae | KEYCODE_BOOKMARK                 |       |
-| 0x0c 0x0183 | AL Consumer Control Config.      | 0x00ab | KEY_CONFIG                       |         |        |                                  |       |
+| 0x0c 0x0183 | AL Consumer Control Config.      | 0x00ab | KEY_CONFIG                       | 4.0.3   | 0x00d1 | KEYCODE_MUSIC                    |       |
 | 0x0c 0x0184 | AL Word Processor                | 0x01a5 | KEY_WORDPROCESSOR                |         |        |                                  |       |
 | 0x0c 0x0185 | AL Text Editor                   | 0x01a6 | KEY_EDITOR                       |         |        |                                  |       |
 | 0x0c 0x0186 | AL Spreadsheet                   | 0x01a7 | KEY_SPREADSHEET                  |         |        |                                  |       |
@@ -703,12 +703,12 @@
 | 0x0c 0x018a | AL Email Reader                  | 0x009b | KEY_MAIL                         | 1.6     | 0x0041 | KEYCODE_ENVELOPE                 |       |
 | 0x0c 0x018b | AL Newsreader                    | 0x01ab | KEY_NEWS                         |         |        |                                  |       |
 | 0x0c 0x018c | AL Voicemail                     | 0x01ac | KEY_VOICEMAIL                    |         |        |                                  |       |
-| 0x0c 0x018d | AL Contacts / Address Book       | 0x01ad | KEY_ADDRESSBOOK                  |         |        |                                  |       |
-| 0x0c 0x018e | AL Calendar / Schedule           | 0x018d | KEY_CALENDAR                     |         |        |                                  |       |
+| 0x0c 0x018d | AL Contacts / Address Book       | 0x01ad | KEY_ADDRESSBOOK                  | 4.0.3   | 0x00cf | KEYCODE_CONTACTS                 |       |
+| 0x0c 0x018e | AL Calendar / Schedule           | 0x018d | KEY_CALENDAR                     | 4.0.3   | 0x00d0 | KEYCODE_CALENDAR                 |       |
 | 0x0c 0x018f | AL Task / Project Manager        |        |                                  |         |        |                                  |       |
 | 0x0c 0x0190 | AL Log / Journal / Timecard      |        |                                  |         |        |                                  |       |
 | 0x0c 0x0191 | AL Checkbook / Finance           | 0x00db | KEY_FINANCE                      |         |        |                                  |       |
-| 0x0c 0x0192 | AL Calculator                    | 0x008c | KEY_CALC                         |         |        |                                  |       |
+| 0x0c 0x0192 | AL Calculator                    | 0x008c | KEY_CALC                         | 4.0.3   | 0x00d2 | KEYCODE_CALCULATOR               |       |
 | 0x0c 0x0193 | AL A/V Capture / Playback        |        |                                  |         |        |                                  |       |
 | 0x0c 0x0194 | AL Local Machine Browser         | 0x0090 | KEY_FILE                         |         |        |                                  |       |
 | 0x0c 0x0195 | AL LAN/WAN Browser               |        |                                  |         |        |                                  |       |
@@ -744,8 +744,8 @@
 | 0x0c 0x01b3 | AL Clock                         |        |                                  |         |        |                                  |       |
 | 0x0c 0x01b4 | AL File Browser                  |        |                                  |         |        |                                  |       |
 | 0x0c 0x01b5 | AL Power Status                  |        |                                  |         |        |                                  |       |
-| 0x0c 0x01b6 | AL Image Browser                 | 0x00e2 | KEY_MEDIA                        |         |        |                                  |       |
-| 0x0c 0x01b7 | AL Audio Browser                 | 0x00d5 | KEY_SOUND                        |         |        |                                  |       |
+| 0x0c 0x01b6 | AL Image Browser                 | 0x00e2 | KEY_MEDIA                        | 3.0     | 0x004f | KEYCODE_HEADSETHOOK              |       |
+| 0x0c 0x01b7 | AL Audio Browser                 | 0x00d5 | KEY_SOUND                        | 4.0.3   | 0x00d1 | KEYCODE_MUSIC                    |       |
 | 0x0c 0x01b8 | AL Movie Browser                 |        |                                  |         |        |                                  |       |
 | 0x0c 0x01b9 | AL Digital Rights Manager        |        |                                  |         |        |                                  |       |
 | 0x0c 0x01ba | AL Digital Wallet                |        |                                  |         |        |                                  |       |
diff --git a/templates/footer b/templates/footer
index 9e4f297..4bf07fc 100644
--- a/templates/footer
+++ b/templates/footer
@@ -4,8 +4,7 @@
  
   <div id="footerLeft">     
     <p> 
-      <a href="http://www.android.com/terms.html">Site Terms of Service</a> -
-      <a href="http://www.android.com/privacy.html">Privacy Policy</a> 
+      <a href="http://www.google.com/intl/en/policies/">Privacy &amp; Terms</a>
     </p> 
   </div>
 
